mirror of
https://github.com/baldurk/renderdoc.git
synced 2026-05-29 13:20:54 +00:00
Hook LoadLibrary/GetProcAddress variants in 'libraryloader' API sets
This commit is contained in:
@@ -728,6 +728,23 @@ void Win32_IAT_BeginHooks()
|
||||
s_HookData->DllHooks["kernel32.dll"].FunctionHooks.push_back(
|
||||
FunctionHook("GetProcAddress", NULL, &Hooked_GetProcAddress));
|
||||
|
||||
for(const char *apiset :
|
||||
{"api-ms-win-core-libraryloader-l1-1-0.dll", "api-ms-win-core-libraryloader-l1-1-1.dll",
|
||||
"api-ms-win-core-libraryloader-l1-1-2.dll", "api-ms-win-core-libraryloader-l1-2-0.dll",
|
||||
"api-ms-win-core-libraryloader-l1-2-1.dll"})
|
||||
{
|
||||
s_HookData->DllHooks[apiset].FunctionHooks.push_back(
|
||||
FunctionHook("LoadLibraryA", NULL, &Hooked_LoadLibraryA));
|
||||
s_HookData->DllHooks[apiset].FunctionHooks.push_back(
|
||||
FunctionHook("LoadLibraryW", NULL, &Hooked_LoadLibraryW));
|
||||
s_HookData->DllHooks[apiset].FunctionHooks.push_back(
|
||||
FunctionHook("LoadLibraryExA", NULL, &Hooked_LoadLibraryExA));
|
||||
s_HookData->DllHooks[apiset].FunctionHooks.push_back(
|
||||
FunctionHook("LoadLibraryExW", NULL, &Hooked_LoadLibraryExW));
|
||||
s_HookData->DllHooks[apiset].FunctionHooks.push_back(
|
||||
FunctionHook("GetProcAddress", NULL, &Hooked_GetProcAddress));
|
||||
}
|
||||
|
||||
GetModuleHandleEx(
|
||||
GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS | GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT,
|
||||
(LPCTSTR)&s_HookData, &s_HookData->ownmodule);
|
||||
|
||||
Reference in New Issue
Block a user