From ce00eec29c0c8a6b88f308cf1cfe636cf9b5de8e Mon Sep 17 00:00:00 2001 From: Vauff Date: Fri, 19 Sep 2025 01:40:49 -0400 Subject: [PATCH] Update patches for recent CS2 updates --- MovementUnlocker.cpp | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/MovementUnlocker.cpp b/MovementUnlocker.cpp index 666d1a9..90acbb3 100644 --- a/MovementUnlocker.cpp +++ b/MovementUnlocker.cpp @@ -29,12 +29,12 @@ MovementUnlocker g_MovementUnlocker; #ifdef _WIN32 -const unsigned char *pPatchSignature = (unsigned char *)"\x76\x2A\xF2\x0F\x10\x4E\x2A\x41\x0F\x28\xD2\x0F\x28\xC1"; -const char *pPatchPattern = "x?xxxx?xxxxxxx"; -int PatchLen = 1; +const unsigned char *pPatchSignature = (unsigned char *)"\x0F\x86\xB8\x2A\x2A\x2A\xF3\x0F\x58\xD4"; +const char *pPatchPattern = "xxx???xxxx"; +int PatchLen = 6; #elif __linux__ -const unsigned char * pPatchSignature = (unsigned char *)"\x0F\x87\x2A\x2A\x2A\x2A\x49\x8B\x7C\x24\x2A\x48\x85\xFF"; -const char* pPatchPattern = "xx????xxxx?xxx"; +const unsigned char * pPatchSignature = (unsigned char *)"\x0F\x87\x2A\x2A\x2A\x2A\xF3\x0F\x10\x3D\x2A\x2A\x2A\x2A\xF3\x0F\x11\xBD"; +const char* pPatchPattern = "xx????xxxx????xxxx"; int PatchLen = 6; #endif @@ -113,7 +113,10 @@ bool MovementUnlocker::Load(PluginId id, ISmmAPI *ismm, char *error, size_t maxl SourceHook::SetMemAccess((void*)pPatchAddress, PatchLen, SH_MEM_READ | SH_MEM_WRITE | SH_MEM_EXEC); #ifdef _WIN32 - *(unsigned char*)(pPatchAddress) = ((unsigned char*)"\xEB")[0]; + const char* patchBytes[] = {"\xE9", "\xB9", "\x00", "\x00", "\x00", "\x90"}; + + for (int i = 0; i < PatchLen; i++) + *(unsigned char*)(pPatchAddress + i) = ((unsigned char*)patchBytes[i])[0]; #elif __linux__ for (int i = 0; i < PatchLen; i++) *(unsigned char*)(pPatchAddress + i) = ((unsigned char*)"\x90")[0]; @@ -151,7 +154,7 @@ const char *MovementUnlocker::GetLicense() const char *MovementUnlocker::GetVersion() { - return "1.5"; + return "1.6"; } const char *MovementUnlocker::GetDate()