Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <Windows.h>
- typedef int(__thiscall *createGameObject)(void* sObj1);
- createGameObject createEmptyObject = (createGameObject)0xA09C62;
- VOID(__cdecl* spawnCode_o)(void*, DWORD, DWORD, DWORD);
- VOID __cdecl spawnCode(void* a1, DWORD a2, DWORD a3, DWORD a4)
- {
- cScriptObject* scriptDataObject = (cScriptObject*)a4;
- cArmAString* aString = (cArmAString*)scriptDataObject->cDataPointer->scriptData; ) // 0x0] -> 0x4] -> 0x12
- if (!aString)
- return spawnCode_o(a1, a2, a3, a4);
- char* foundStr = strstr(aString->szFinalString, "PVAHR");
- if (foundStr != NULL)
- {
- createEmptyObject(a1);
- }
- else
- {
- return spawnCode_o(a1, a2, a3, a4);
- }
- }
- bool WINAPI DllMain(HINSTANCE hinstDLL, DWORD Reason, LPVOID lpReserved)
- {
- if (Reason == DLL_PROCESS_ATTACH)
- {
- DWORD dwOld = 0;
- spawnCode_o = (VOID(__cdecl*)(void*, DWORD, DWORD, DWORD))DetourFunc((BYTE*)0x7A411E, (BYTE*)spawnCode, 5);
- VirtualProtect(spawnCode_o, 2, PAGE_EXECUTE_READWRITE, &dwOld);
- }
- return true;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement