summaryrefslogtreecommitdiff
path: root/csgo-loader/csgo-client/Security/RuntimeSecurity.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'csgo-loader/csgo-client/Security/RuntimeSecurity.cpp')
-rw-r--r--csgo-loader/csgo-client/Security/RuntimeSecurity.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/csgo-loader/csgo-client/Security/RuntimeSecurity.cpp b/csgo-loader/csgo-client/Security/RuntimeSecurity.cpp
index 305a44f..bff53f8 100644
--- a/csgo-loader/csgo-client/Security/RuntimeSecurity.cpp
+++ b/csgo-loader/csgo-client/Security/RuntimeSecurity.cpp
@@ -9,9 +9,15 @@ namespace Security
decltype(&MessageBoxA) oMessageBox;
int __stdcall Hooked_MessageBox(HWND Window, char *Message, char *Caption, uint32_t Type)
{
+ // TODO: Replace this with a Syscall so we cannot get hooked.
MEMORY_BASIC_INFORMATION Query;
if(!VirtualQuery(_ReturnAddress(), &Query, sizeof MEMORY_BASIC_INFORMATION))
- ERROR_ASSERT("[00DF:00002C00] An integrity check failed.");
+ ExitProcess(0);
+
+ HMODULE ReturnModule = (HMODULE)Query.AllocationBase;
+
+ if (ReturnModule != GetModuleHandleA(0))
+ ExitProcess(0);
return oMessageBox(Window, Message, Caption, Type);
}