diff --git a/TitanEngine/3rdparty-definitions.h b/TitanEngine/3rdparty-definitions.h index 3279df0..86148d7 100644 --- a/TitanEngine/3rdparty-definitions.h +++ b/TitanEngine/3rdparty-definitions.h @@ -11,7 +11,7 @@ const BYTE SCY_ERROR_IATNOTFOUND = -4; extern "C" { #endif /*__cplusplus*/ int scylla_searchIAT(DWORD pid, DWORD_PTR &iatStart, DWORD &iatSize, DWORD_PTR searchStart, bool advancedSearch); -int scylla_getImports(DWORD_PTR iatAddr, DWORD iatSize, DWORD pid); +int scylla_getImports(DWORD_PTR iatAddr, DWORD iatSize, DWORD pid, LPVOID invalidImportCallback = NULL); bool scylla_importsValid(); int scylla_fixDump(WCHAR* dumpFile, WCHAR* iatFixFile, WCHAR* sectionName = L".scy"); int scylla_fixMappedDump(DWORD_PTR iatVA, DWORD_PTR FileMapVA, HANDLE hFileMap); diff --git a/TitanEngine/TitanEngine.cpp b/TitanEngine/TitanEngine.cpp index 5f7929f..2fa4916 100644 --- a/TitanEngine/TitanEngine.cpp +++ b/TitanEngine/TitanEngine.cpp @@ -19592,7 +19592,7 @@ __declspec(dllexport) long TITCALL ImporterAutoFixIATExW(DWORD ProcessId, wchar_ } } - scylla_getImports(iatStart, iatSize, ProcessId); + scylla_getImports(iatStart, iatSize, ProcessId, UnknownPointerFixCallback); if(!scylla_importsValid()) { //TODO call UnknownPointerFixCallback for every bad import, scylla_wrapper needs to be enhanced tho diff --git a/TitanEngine/scylla_wrapper_x86.lib b/TitanEngine/scylla_wrapper_x86.lib index 1183fd7..e703b17 100644 Binary files a/TitanEngine/scylla_wrapper_x86.lib and b/TitanEngine/scylla_wrapper_x86.lib differ diff --git a/TitanEngine/scylla_wrapperd_x86.lib b/TitanEngine/scylla_wrapperd_x86.lib index ae0ec8b..cddbe7f 100644 Binary files a/TitanEngine/scylla_wrapperd_x86.lib and b/TitanEngine/scylla_wrapperd_x86.lib differ