Fix TLS callback issue (addesses are absolute). Rebuild blobs.

This commit is contained in:
Nick Landers
2019-10-10 15:07:26 -06:00
parent 0bc9238e4d
commit 94236228b7
7 changed files with 93 additions and 13 deletions
+2 -2
View File
@@ -424,9 +424,9 @@ ULONG_PTR LoadDLL(PBYTE dllData, DWORD dwFunctionHash, LPVOID lpUserData, DWORD
if (dataDir->Size)
{
tlsDir = RVA(PIMAGE_TLS_DIRECTORY, baseAddress, dataDir->VirtualAddress);
callback = RVA(PIMAGE_TLS_CALLBACK *, baseAddress, tlsDir->AddressOfCallBacks);
callback = (PIMAGE_TLS_CALLBACK *)(tlsDir->AddressOfCallBacks);
for (; callback; callback++) {
for (; *callback; callback++) {
(*callback)((LPVOID)baseAddress, DLL_PROCESS_ATTACH, NULL);
}
}