From 33001e9d59eb542d6a7380fe309f226bbd46363e Mon Sep 17 00:00:00 2001 From: Emmanuel AYME Date: Wed, 20 Aug 2025 10:53:58 +0200 Subject: [PATCH] Changed AOB scan function name --- Days Gone/dllmain.cpp | 6 +- Dead Space 2023/dllmain.cpp | 2 +- Echoes Of The End/dllmain.cpp | 12 +-- Empire Of The Ants/dllmain.cpp | 6 +- FNAF_SOTM/dllmain.cpp | 8 +- HellIsUs/dllmain.cpp | 12 +-- .../dllmain.cpp | 6 +- Metro Exodus/dllmain.cpp | 8 +- Mindseye/dllmain.cpp | 4 +- Robocop UB/dllmain.cpp | 6 +- South Of Midnight/dllmain.cpp | 4 +- SpiritOfTheNorth/dllmain.cpp | 4 +- Starfield/dllmain.cpp | 8 +- TLOU/dllmain.cpp | 6 +- TLOU2/dllmain.cpp | 6 +- Uncharted LOTC/dllmain.cpp | 16 ++-- WuchangFF/dllmain.cpp | 76 ++++++++++++++++--- 17 files changed, 123 insertions(+), 67 deletions(-) diff --git a/Days Gone/dllmain.cpp b/Days Gone/dllmain.cpp index 70b099a..126c901 100644 --- a/Days Gone/dllmain.cpp +++ b/Days Gone/dllmain.cpp @@ -58,7 +58,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) logger->info("--------------- AOB scan started ---------------"); if (FOVaddress == nullptr) { constexpr auto FOVStringObfuscated = make_obfuscated<0x4A>("F3 0F ?? ?? ?? 48 8D ?? ?? E8 ?? ?? ?? ?? 90 48 ?? ?? 48"); - FOVaddress = Memory::aob_scan(gameExecutable, FOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + FOVaddress = Memory::AOBScan(gameExecutable, FOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); //DaysGone.exe + 46CC96 - 48 8B CB - mov rcx, rbx //DaysGone.exe + 46CC99 - FF 90 80 03 00 00 - call qword ptr[rax + 00000380] @@ -74,7 +74,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) if (FOVfactorAddress == nullptr) { constexpr auto FOVFactorStringObfuscated = make_obfuscated<0x4A>("CC 48 8B ?? ?? F3 0F 10 80 ?? ?? ?? ?? F3 0F"); - FOVfactorAddress = Memory::aob_scan(gameExecutable, FOVFactorStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + FOVfactorAddress = Memory::AOBScan(gameExecutable, FOVFactorStringObfuscated.decrypt(), PAGE_EXECUTE_READ); //DaysGone.exe + 4554E0 - 48 8B 41 28 - mov rax, [rcx + 28] //DaysGone.exe + 4554E4 - F3 0F 10 80 68 03 00 00 - movss xmm0, [rax + 00000368] //DaysGone.exe + 4554EC - F3 0F 59 41 4C - mulss xmm0, [rcx + 4C] @@ -90,7 +90,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) if (HUDaddress == nullptr) { constexpr auto AspectStringObfuscated = make_obfuscated<0x4A>("48 ?? ?? 48 ?? ?? 66 48 ?? ?? ?? FF ?? 48 8B ?? ?? ?? 0F ?? ??"); - HUDaddress = Memory::aob_scan(gameExecutable, AspectStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + HUDaddress = Memory::AOBScan(gameExecutable, AspectStringObfuscated.decrypt(), PAGE_EXECUTE_READ); //DaysGone.exe + 1FBA9E3 - 0F 10 00 - movups xmm0, [rax] //DaysGone.exe + 1FBA9E6 - 48 8B C7 - mov rax, rdi diff --git a/Dead Space 2023/dllmain.cpp b/Dead Space 2023/dllmain.cpp index acf9518..723fb45 100644 --- a/Dead Space 2023/dllmain.cpp +++ b/Dead Space 2023/dllmain.cpp @@ -40,7 +40,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) if (g_fix_enabled && !AOBScanDone) { logger->info("--------------- AOB scan started ---------------"); constexpr auto FOVStringObfuscated = make_obfuscated<0x4A>("F3 0F ?? ?? ?? ?? ?? ?? 0F 2F ?? ?? ?? ?? ?? 77 ?? 48 8B ?? ?? ?? ?? ?? F3 0F ?? ?? ?? F3 0F ?? ?? ?? ?? ?? ??"); - FOVaddress = Memory::aob_scan(gameExecutable, FOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + FOVaddress = Memory::AOBScan(gameExecutable, FOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); //Dead Space.exe + 1ACB628 - 48 8B 83 10 03 00 00 - mov rax, [rbx + 00000310] //Dead Space.exe + 1ACB62F - F3 0F 10 40 6C - movss xmm0, [rax + 6C] diff --git a/Echoes Of The End/dllmain.cpp b/Echoes Of The End/dllmain.cpp index c011c81..7547103 100644 --- a/Echoes Of The End/dllmain.cpp +++ b/Echoes Of The End/dllmain.cpp @@ -67,7 +67,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) logger->info("--------------- AOB scan started ---------------"); if (WorldFOVaddress == nullptr) { constexpr auto FOVStringObfuscated = make_obfuscated<0x4A>("77 ?? 48 ?? ?? FF ?? ?? ?? ?? ?? F3 0F ?? ?? ?? 48"); - WorldFOVaddress = Memory::aob_scan(gameExecutable, FOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + WorldFOVaddress = Memory::AOBScan(gameExecutable, FOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); //"TheDarken-Win64-Shipping.exe" + 3C86F14 - 48 8B 01 - mov rax, [rcx] //"TheDarken-Win64-Shipping.exe" + 3C86F17 - FF 90 60 07 00 00 - call qword ptr[rax + 00000760] //"TheDarken-Win64-Shipping.exe" + 3C86F1D - F3 0F 10 40 30 - movss xmm0, [rax + 30] @@ -84,7 +84,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) if (FOVaddress == nullptr) { constexpr auto FOVStringObfuscated = make_obfuscated<0x4A>("EB ?? F3 0F ?? ?? ?? ?? ?? ?? F3 0F ?? ?? ?? 8B 83 ?? ?? ?? ?? 89"); - FOVaddress = Memory::aob_scan(gameExecutable, FOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + FOVaddress = Memory::AOBScan(gameExecutable, FOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); //"TheDarken-Win64-Shipping.exe" + 365E250 - EB 08 - jmp "TheDarken-Win64-Shipping.exe" + 365E25A //"TheDarken-Win64-Shipping.exe" + 365E252 - F3 0F 10 83 30 02 00 00 - movss xmm0, [rbx + 00000230] //"TheDarken-Win64-Shipping.exe" + 365E25A - F3 0F 11 47 30 - movss[rdi + 30], xmm0 @@ -105,7 +105,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) if (DOFaddress == nullptr) { constexpr auto DOFStringObfuscated = make_obfuscated<0x4A>("75 ?? BF 04 ?? ?? ?? 8B ?? ?? 48 ?? ?? E8"); - DOFaddress = Memory::aob_scan(gameExecutable, DOFStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + DOFaddress = Memory::AOBScan(gameExecutable, DOFStringObfuscated.decrypt(), PAGE_EXECUTE_READ); //"TheDarken-Win64-Shipping.exe" + 26E89B2 - 75 05 - jne "TheDarken-Win64-Shipping.exe" + 26E89B9 //"TheDarken-Win64-Shipping.exe" + 26E89B4 - BF 04 00 00 00 - mov edi, "Echoes Of The End._Init_thread_epoch" //"TheDarken-Win64-Shipping.exe" + 26E89B9 - 8B 3C 37 - mov edi, [rdi + rsi] @@ -122,7 +122,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) if (CAaddress == nullptr) { constexpr auto CAStringObfuscated = make_obfuscated<0x4A>("7F ?? 44 89 ?? ?? ?? ?? ?? 43 ?? ?? ?? 39 05"); - CAaddress = Memory::aob_scan(gameExecutable, CAStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + CAaddress = Memory::AOBScan(gameExecutable, CAStringObfuscated.decrypt(), PAGE_EXECUTE_READ); //"TheDarken-Win64-Shipping.exe" + 3D6D452 - 48 8B 05 67 F0 32 06 - mov rax, ["TheDarken-Win64-Shipping.exe" + A09C4C0] //"TheDarken-Win64-Shipping.exe" + 3D6D459 - 44 39 38 - cmp[rax], r15d //"TheDarken-Win64-Shipping.exe" + 3D6D45C - 7F 07 - jg "TheDarken-Win64-Shipping.exe" + 3D6D465 @@ -138,7 +138,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) if (Vignettingaddress == nullptr) { constexpr auto VignettingStringObfuscated = make_obfuscated<0x4A>("8B ?? 83 ?? ?? 7D ?? 44 89"); - Vignettingaddress = Memory::aob_scan(gameExecutable, VignettingStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + Vignettingaddress = Memory::AOBScan(gameExecutable, VignettingStringObfuscated.decrypt(), PAGE_EXECUTE_READ); //"TheDarken-Win64-Shipping.exe" + 3D6D4E6 - 44 89 BB 24 20 00 00 - mov[rbx + 00002024], r15d //"TheDarken-Win64-Shipping.exe" + 3D6D4ED - 48 8B 05 3C D9 32 06 - mov rax, ["TheDarken-Win64-Shipping.exe" + A09AE30] //"TheDarken-Win64-Shipping.exe" + 3D6D4F4 - 8B 08 - mov ecx, [rax] @@ -154,7 +154,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) if (Fogaddress == nullptr) { constexpr auto FogStringObfuscated = make_obfuscated<0x4A>("74 ?? 48 8B ?? ?? ?? ?? ?? 83 ?? ?? ?? 75 ?? 40 ?? ?? EB ?? 40 ?? ?? 48"); - Fogaddress = Memory::aob_scan(gameExecutable, FogStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + Fogaddress = Memory::AOBScan(gameExecutable, FogStringObfuscated.decrypt(), PAGE_EXECUTE_READ); //"TheDarken-Win64-Shipping.exe" + 22FCE21 - 48 8B 05 F8 9C C7 07 - mov rax, ["TheDarken-Win64-Shipping.exe" + 9F76B20] //"TheDarken-Win64-Shipping.exe" + 22FCE28 - 83 78 04 01 - cmp dword ptr[rax + 04], 01 //"TheDarken-Win64-Shipping.exe" + 22FCE2C - 75 05 - jne "TheDarken-Win64-Shipping.exe" + 22FCE33 diff --git a/Empire Of The Ants/dllmain.cpp b/Empire Of The Ants/dllmain.cpp index 004fc6d..02ae882 100644 --- a/Empire Of The Ants/dllmain.cpp +++ b/Empire Of The Ants/dllmain.cpp @@ -54,7 +54,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) logger->info("--------------- AOB scan started ---------------"); if (FOVaddress == nullptr) { constexpr auto FOVStringObfuscated = make_obfuscated<0x4A>("77 ?? 48 ?? ?? FF 90 ?? ?? ?? ?? F3 0F ?? ?? ?? 48 83"); - FOVaddress = Memory::aob_scan(gameExecutable, FOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + FOVaddress = Memory::AOBScan(gameExecutable, FOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); if (!FOVaddress) logger->warn("FOV signature not found. Maybe your game has been updated and is no more compatible with this plugin."); @@ -65,7 +65,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) } if (Aspectaddress == nullptr) { constexpr auto AspectStringObfuscated = make_obfuscated<0x4A>("F3 0F ?? ?? ?? ?? ?? ?? 76 ?? F3 0F ?? ?? ?? ?? ?? ?? 48 83 ?? ?? 5B"); - Aspectaddress = Memory::aob_scan(gameExecutable, AspectStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + Aspectaddress = Memory::AOBScan(gameExecutable, AspectStringObfuscated.decrypt(), PAGE_EXECUTE_READ); if (!Aspectaddress) logger->warn("Aspect ratio signature not found. Maybe your game has been updated and is no more compatible with this plugin."); @@ -75,7 +75,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) } if (DOFaddress == nullptr) { constexpr auto DOFStringObfuscated = make_obfuscated<0x4A>("8B ?? ?? 48 ?? ?? E8 ?? ?? ?? ?? 0F ?? ?? 48 6B ?? ?? 48 8D"); - DOFaddress = Memory::aob_scan(gameExecutable, DOFStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + DOFaddress = Memory::AOBScan(gameExecutable, DOFStringObfuscated.decrypt(), PAGE_EXECUTE_READ); if (!DOFaddress) logger->warn("DOF signature not found. Maybe your game has been updated and is no more compatible with this plugin."); diff --git a/FNAF_SOTM/dllmain.cpp b/FNAF_SOTM/dllmain.cpp index 4cbfd24..a78dcad 100644 --- a/FNAF_SOTM/dllmain.cpp +++ b/FNAF_SOTM/dllmain.cpp @@ -49,7 +49,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) logger->info("--------------- AOB scan started ---------------"); if (FOVaddress == nullptr) { constexpr auto FOVStringObfuscated = make_obfuscated<0x4A>("EB ?? F3 0F ?? ?? ?? ?? ?? ?? F3 0F ?? ?? ?? 8B 83 ?? ?? ?? ?? 89"); - FOVaddress = Memory::aob_scan(gameExecutable, FOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + FOVaddress = Memory::AOBScan(gameExecutable, FOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); //"FNAF_SOTM-Win64-Shipping.exe" + 2BC96B0 - EB 08 - jmp "FNAF_SOTM-Win64-Shipping.exe" + 2BC96BA //"FNAF_SOTM-Win64-Shipping.exe" + 2BC96B2 - F3 0F 10 83 F8 01 00 00 - movss xmm0, [rbx + 000001F8] //"FNAF_SOTM-Win64-Shipping.exe" + 2BC96BA - F3 0F 11 47 18 - movss[rdi + 18], xmm0 @@ -65,7 +65,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) } if (HORPLUSaddress == nullptr) { constexpr auto HORPLUSStringObfuscated = make_obfuscated<0x4A>("41 0F ?? ?? ?? ?? ?? ?? 48 8D ?? ?? ?? ?? ?? 4C ?? ?? 4D ?? ?? E8"); - HORPLUSaddress = Memory::aob_scan(gameExecutable, HORPLUSStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + HORPLUSaddress = Memory::AOBScan(gameExecutable, HORPLUSStringObfuscated.decrypt(), PAGE_EXECUTE_READ); //"FNAF_SOTM-Win64-Shipping.exe" + 2E2D3F3 - 0F 11 56 40 - movups[rsi + 40], xmm2 //"FNAF_SOTM-Win64-Shipping.exe" + 2E2D3F7 - 0F 85 95 00 00 00 - jne "FNAF_SOTM-Win64-Shipping.exe" + 2E2D492 //"FNAF_SOTM-Win64-Shipping.exe" + 2E2D3FD - 41 0F B6 96 94 00 00 00 - movzx edx,byte ptr [r14+00000094] @@ -79,7 +79,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) } if (DOFaddress == nullptr) { constexpr auto DOFStringObfuscated = make_obfuscated<0x4A>("8B ?? ?? E8 ?? ?? ?? ?? 8B ?? E8 ?? ?? ?? ?? 84 ?? 74 ?? 48"); - DOFaddress = Memory::aob_scan(gameExecutable, DOFStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + DOFaddress = Memory::AOBScan(gameExecutable, DOFStringObfuscated.decrypt(), PAGE_EXECUTE_READ); //"FNAF_SOTM-Win64-Shipping.exe" + 1BBE160 - 48 8B 05 D1 73 AF 03 - mov rax, ["FNAF_SOTM-Win64-Shipping.exe" + 56B5538] //"FNAF_SOTM-Win64-Shipping.exe" + 1BBE167 - 48 8B CB - mov rcx, rbx //"FNAF_SOTM-Win64-Shipping.exe" + 1BBE16A - 8B 78 04 - mov edi, [rax + 04] @@ -94,7 +94,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) } if (FPSaddress == nullptr) { constexpr auto FPSStringObfuscated = make_obfuscated<0x4A>("F3 0F ?? ?? ?? EB ?? 0F ?? ?? 48 8B ?? ?? ?? 0F"); - FPSaddress = Memory::aob_scan(gameExecutable, FPSStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + FPSaddress = Memory::AOBScan(gameExecutable, FPSStringObfuscated.decrypt(), PAGE_EXECUTE_READ); //"FNAF_SOTM-Win64-Shipping.exe" + 314F2E4 - 3B 05 EE B7 45 02 - cmp eax, ["FNAF_SOTM-Win64-Shipping.exe" + 55AAAD8] //"FNAF_SOTM-Win64-Shipping.exe" + 314F2EA - 0F 95 C3 - setne bl //"FNAF_SOTM-Win64-Shipping.exe" + 314F2ED - F3 0F 10 04 9F - movss xmm0, [rdi + rbx * 4] diff --git a/HellIsUs/dllmain.cpp b/HellIsUs/dllmain.cpp index 6baaf18..62ddffe 100644 --- a/HellIsUs/dllmain.cpp +++ b/HellIsUs/dllmain.cpp @@ -68,7 +68,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) logger->info("--------------- AOB scan started ---------------"); if (FOVaddress == nullptr) { constexpr auto FOVStringObfuscated = make_obfuscated<0x4A>("77 ?? 48 ?? ?? FF ?? ?? ?? ?? ?? F3 0F ?? ?? ?? 48"); - FOVaddress = Memory::aob_scan(gameExecutable, FOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + FOVaddress = Memory::AOBScan(gameExecutable, FOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); //"HellIsUs-Win64-Shipping.exe" + 3C8E924 - 48 8B 01 - mov rax, [rcx] //"HellIsUs-Win64-Shipping.exe" + 3C8E927 - FF 90 60 07 00 00 - call qword ptr[rax + 00000760] //"HellIsUs-Win64-Shipping.exe" + 3C8E92D - F3 0F 10 40 30 - movss xmm0, [rax + 30] @@ -85,7 +85,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) if (Aspectaddress == nullptr) { constexpr auto AspectStringObfuscated = make_obfuscated<0x4A>("E9 ?? ?? ?? ?? CC CC CC CC CC CC 48 89 ?? ?? ?? 57 48 83 ?? ?? 0F ?? ?? 48 ?? ?? 48"); - Aspectaddress = Memory::aob_scan(gameExecutable, AspectStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + Aspectaddress = Memory::AOBScan(gameExecutable, AspectStringObfuscated.decrypt(), PAGE_EXECUTE_READ); //"HellIsUs-Win64-Shipping.exe" + 3453EBA - 89 41 58 - mov[rcx + 58], eax //"HellIsUs-Win64-Shipping.exe" + 3453EBD - 8B 42 5C - mov eax, [rdx + 5C] //"HellIsUs-Win64-Shipping.exe" + 3453EC0 - 89 41 5C - mov[rcx + 5C], eax <<= Aspect ratio @@ -102,7 +102,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) if (DOFaddress == nullptr) { constexpr auto DOFStringObfuscated = make_obfuscated<0x4A>("74 ?? 48 ?? ?? 8B ?? ?? 48 ?? ?? E8"); - DOFaddress = Memory::aob_scan(gameExecutable, DOFStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + DOFaddress = Memory::AOBScan(gameExecutable, DOFStringObfuscated.decrypt(), PAGE_EXECUTE_READ); //"HellIsUs-Win64-Shipping.exe" + 26ABA27 - 74 03 - je "HellIsUs-Win64-Shipping.exe" + 26ABA2C //"HellIsUs-Win64-Shipping.exe" + 26ABA29 - 48 8B C3 - mov rax, rbx //"HellIsUs-Win64-Shipping.exe" + 26ABA2C - 8B 34 30 - mov esi, [rax + rsi] @@ -119,7 +119,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) if (CAaddress == nullptr) { constexpr auto CAStringObfuscated = make_obfuscated<0x4A>("7F ?? 44 89 ?? ?? ?? ?? ?? 43 ?? ?? ?? 39 05"); - CAaddress = Memory::aob_scan(gameExecutable, CAStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + CAaddress = Memory::AOBScan(gameExecutable, CAStringObfuscated.decrypt(), PAGE_EXECUTE_READ); //"HellIsUs-Win64-Shipping.exe" + 3D73BC2 - 48 8B 05 D7 F7 6E 05 - mov rax, ["HellIsUs-Win64-Shipping.exe" + 94633A0] //"HellIsUs-Win64-Shipping.exe" + 3D73BC9 - 44 39 38 - cmp[rax], r15d //"HellIsUs-Win64-Shipping.exe" + 3D73BCC - 7F 07 - jg "HellIsUs-Win64-Shipping.exe" + 3D73BD5 @@ -135,7 +135,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) if (Vignettingaddress == nullptr) { constexpr auto VignettingStringObfuscated = make_obfuscated<0x4A>("8B ?? 83 ?? ?? 7D ?? 44 89"); - Vignettingaddress = Memory::aob_scan(gameExecutable, VignettingStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + Vignettingaddress = Memory::AOBScan(gameExecutable, VignettingStringObfuscated.decrypt(), PAGE_EXECUTE_READ); //"HellIsUs-Win64-Shipping.exe" + 3D73C64 - 8B 08 - mov ecx, [rax] //"HellIsUs-Win64-Shipping.exe" + 3D73C66 - 83 F9 02 - cmp ecx, 02 //"HellIsUs-Win64-Shipping.exe" + 3D73C69 - 7D 09 - jnl "HellIsUs-Win64-Shipping.exe" + 3D73C74 @@ -152,7 +152,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) if (Fogaddress == nullptr) { constexpr auto FogStringObfuscated = make_obfuscated<0x4A>("F6 ?? ?? ?? ?? 74 ?? 48 8B ?? ?? ?? ?? ?? 83 78 ?? ?? 75 ?? B3"); - Fogaddress = Memory::aob_scan(gameExecutable, FogStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + Fogaddress = Memory::AOBScan(gameExecutable, FogStringObfuscated.decrypt(), PAGE_EXECUTE_READ); //"HellIsUs-Win64-Shipping.exe" + 22B77C8 - 74 11 - je "HellIsUs-Win64-Shipping.exe" + 22B77DB //"HellIsUs-Win64-Shipping.exe" + 22B77CA - 48 8B 05 8F 23 08 07 - mov rax, ["HellIsUs-Win64-Shipping.exe" + 9339B60] //"HellIsUs-Win64-Shipping.exe" + 22B77D1 - 83 78 04 01 - cmp dword ptr[rax + 04], 01 diff --git a/Indiana Jones And The Great Circle/dllmain.cpp b/Indiana Jones And The Great Circle/dllmain.cpp index 5e5419f..628c236 100644 --- a/Indiana Jones And The Great Circle/dllmain.cpp +++ b/Indiana Jones And The Great Circle/dllmain.cpp @@ -58,7 +58,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) logger->info("--------------- AOB scan started ---------------"); if (FOVaddress == nullptr) { constexpr auto FOVStringObfuscated = make_obfuscated<0x4A>("F3 44 ?? ?? ?? ?? 48 8B ?? ?? ?? 4C ?? ?? 49 0F ?? ?? ?? ?? ?? ?? 4C 8D"); - FOVaddress = Memory::aob_scan(gameExecutable, FOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + FOVaddress = Memory::AOBScan(gameExecutable, FOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); if (!FOVaddress) logger->warn("FOV signature not found. Maybe your game has been updated and is no more compatible with this plugin."); @@ -69,7 +69,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) } if (CinematicsFOVaddress == nullptr) { constexpr auto CinematicsFOVStringObfuscated = make_obfuscated<0x4A>("F3 0F ?? ?? F3 0F ?? ?? ?? ?? ?? ?? 0F ?? ?? E8 ?? ?? ?? ?? F3 0F ?? ?? E8"); - CinematicsFOVaddress = Memory::aob_scan(gameExecutable, CinematicsFOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + CinematicsFOVaddress = Memory::AOBScan(gameExecutable, CinematicsFOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); if (!CinematicsFOVaddress) logger->warn("Cinematics FOV signature not found. Maybe your game has been updated and is no more compatible with this plugin."); @@ -79,7 +79,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) } if (CinematicsFTaddress == nullptr) { constexpr auto FTStringObfuscated = make_obfuscated<0x4A>("75 ?? 48 8B ?? ?? ?? ?? ?? 48 ?? ?? 74 ?? 39 ?? ?? 77"); - CinematicsFTaddress = Memory::aob_scan(gameExecutable, FTStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + CinematicsFTaddress = Memory::AOBScan(gameExecutable, FTStringObfuscated.decrypt(), PAGE_EXECUTE_READ); if (!CinematicsFTaddress) logger->warn("Cinematics frametime signature not found. Maybe your game has been updated and is no more compatible with this plugin."); diff --git a/Metro Exodus/dllmain.cpp b/Metro Exodus/dllmain.cpp index 325f633..620d6ed 100644 --- a/Metro Exodus/dllmain.cpp +++ b/Metro Exodus/dllmain.cpp @@ -55,7 +55,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) logger->info("--------------- AOB scan started ---------------"); if (FOVaddress == nullptr) { constexpr auto FOVStringObfuscated = make_obfuscated<0x4A>("3C ?? 0F 86 ?? ?? ?? ?? F3 0F"); - FOVaddress = Memory::aob_scan(gameExecutable, FOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + FOVaddress = Memory::AOBScan(gameExecutable, FOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); if (!FOVaddress) logger->warn("FOV signature not found. Maybe your game has been updated and is no more compatible with this plugin."); @@ -66,7 +66,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) } if (CutscenesFOVaddress == nullptr) { constexpr auto CutscenesFOVStringObfuscated = make_obfuscated<0x4A>("F3 0F ?? ?? ?? ?? ?? ?? E9 96 ?? ?? ?? 48 8B"); - CutscenesFOVaddress = Memory::aob_scan(gameExecutable, CutscenesFOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + CutscenesFOVaddress = Memory::AOBScan(gameExecutable, CutscenesFOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); if (!CutscenesFOVaddress) logger->warn("Cutscenes FOV signature not found. Maybe your game has been updated and is no more compatible with this plugin."); @@ -77,7 +77,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) } if (Aspectaddress_1 == nullptr) { constexpr auto AspectRatioStringObfuscated_1 = make_obfuscated<0x4A>("F3 0F ?? ?? ?? ?? ?? ?? F3 0F ?? ?? ?? ?? ?? ?? 89 84 ?? ?? ?? ?? ?? 8B"); - Aspectaddress_1 = Memory::aob_scan(gameExecutable, AspectRatioStringObfuscated_1.decrypt(), PAGE_EXECUTE_READ); + Aspectaddress_1 = Memory::AOBScan(gameExecutable, AspectRatioStringObfuscated_1.decrypt(), PAGE_EXECUTE_READ); if (!Aspectaddress_1) logger->warn("1st aspect ratio signature not found. Maybe your game has been updated and is no more compatible with this plugin."); @@ -88,7 +88,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) } if (Aspectaddress_2 == nullptr) { constexpr auto AspectRatioStringObfuscated_2 = make_obfuscated<0x4A>("F3 0F ?? ?? ?? ?? ?? ?? 0F ?? ?? 48 8D ?? ?? ?? ?? ?? F3 48 ?? ?? ?? 49 8D"); - Aspectaddress_2 = Memory::aob_scan(gameExecutable, AspectRatioStringObfuscated_2.decrypt(), PAGE_EXECUTE_READ); + Aspectaddress_2 = Memory::AOBScan(gameExecutable, AspectRatioStringObfuscated_2.decrypt(), PAGE_EXECUTE_READ); if (!Aspectaddress_2) logger->warn("2nd aspect ratio signature not found. Maybe your game has been updated and is no more compatible with this plugin."); diff --git a/Mindseye/dllmain.cpp b/Mindseye/dllmain.cpp index 81aa60c..78601a4 100644 --- a/Mindseye/dllmain.cpp +++ b/Mindseye/dllmain.cpp @@ -54,7 +54,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) logger->info("--------------- AOB scan started ---------------"); if (FOVaddress == nullptr) { constexpr auto FOVStringObfuscated = make_obfuscated<0x4A>("EB ?? F3 0F ?? ?? ?? ?? ?? ?? F3 0F ?? ?? ?? 8B 83 ?? ?? ?? ?? 89 ?? ?? 0F B6 8B"); - FOVaddress = Memory::aob_scan(gameExecutable, FOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + FOVaddress = Memory::AOBScan(gameExecutable, FOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); if (!FOVaddress) logger->warn("FOV signature not found. Maybe your game has been updated and is no more compatible with this plugin."); @@ -71,7 +71,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) } if (DOFaddress == nullptr) { constexpr auto DOFStringObfuscated = make_obfuscated<0x4A>("8B ?? ?? 48 ?? ?? E8 ?? ?? ?? ?? 0F ?? ?? 48 6B ?? ?? 48 8D"); - DOFaddress = Memory::aob_scan(gameExecutable, DOFStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + DOFaddress = Memory::AOBScan(gameExecutable, DOFStringObfuscated.decrypt(), PAGE_EXECUTE_READ); if (!DOFaddress) logger->warn("DOF signature not found. Maybe your game has been updated and is no more compatible with this plugin."); diff --git a/Robocop UB/dllmain.cpp b/Robocop UB/dllmain.cpp index 4baad22..de30057 100644 --- a/Robocop UB/dllmain.cpp +++ b/Robocop UB/dllmain.cpp @@ -54,7 +54,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) logger->info("--------------- AOB scan started ---------------"); if (FOVaddress == nullptr) { constexpr auto FOVStringObfuscated = make_obfuscated<0x4A>("F3 0F ?? ?? ?? 48 8B ?? 48 8B ?? 4C 8D ?? ?? 48 8B"); - FOVaddress = Memory::aob_scan(gameExecutable, FOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + FOVaddress = Memory::AOBScan(gameExecutable, FOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); if (!FOVaddress) logger->warn("FOV signature not found. Maybe your game has been updated and is no more compatible with this plugin."); @@ -64,7 +64,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) } if (Aspectaddress == nullptr) { constexpr auto AspectStringObfuscated = make_obfuscated<0x4A>("EB ?? F3 0F ?? ?? ?? ?? ?? ?? F3 0F ?? ?? ?? 8B 83 ?? ?? ?? ?? 89"); - Aspectaddress = Memory::aob_scan(gameExecutable, AspectStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + Aspectaddress = Memory::AOBScan(gameExecutable, AspectStringObfuscated.decrypt(), PAGE_EXECUTE_READ); if (!Aspectaddress) logger->info("Aspect ratio signature not found. Maybe your game has been updated and is no more compatible with this plugin."); @@ -75,7 +75,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) } if (DOFaddress == nullptr) { constexpr auto DOFStringObfuscated = make_obfuscated<0x4A>("8B ?? ?? 48 8B ?? E8 ?? ?? ?? ?? 0F ?? ?? 48 6B ?? ?? 48"); - DOFaddress = Memory::aob_scan(gameExecutable, DOFStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + DOFaddress = Memory::AOBScan(gameExecutable, DOFStringObfuscated.decrypt(), PAGE_EXECUTE_READ); if (!DOFaddress) logger->warn("DOF signature not found. Maybe your game has been updated and is no more compatible with this plugin."); diff --git a/South Of Midnight/dllmain.cpp b/South Of Midnight/dllmain.cpp index 78c64df..1f4c1f7 100644 --- a/South Of Midnight/dllmain.cpp +++ b/South Of Midnight/dllmain.cpp @@ -52,7 +52,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) logger->info("--------------- AOB scan started ---------------"); if (FOVaddress == nullptr) { constexpr auto FOVStringObfuscated = make_obfuscated<0x4A>("90 0F ?? ?? 48 8B 8C ?? ?? ?? ?? ?? 48 ?? ?? E8 ?? ?? ?? ?? 0F 28"); - FOVaddress = Memory::aob_scan(gameExecutable, FOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + FOVaddress = Memory::AOBScan(gameExecutable, FOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); //SouthOfMidnight.exe + 357E051 - E8 5A 4A ED FD - call SouthOfMidnight.exe + 1452AB0 //SouthOfMidnight.exe + 357E056 - 90 - nop @@ -68,7 +68,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) } if (Aspectaddress == nullptr) { constexpr auto AspectStringObfuscated = make_obfuscated<0x4A>("EB ?? F3 0F ?? ?? ?? ?? ?? ?? F3 0F ?? ?? ?? 8B 87 ?? ?? ?? ?? 89 ?? ?? 0F B6"); - Aspectaddress = Memory::aob_scan(gameExecutable, AspectStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + Aspectaddress = Memory::AOBScan(gameExecutable, AspectStringObfuscated.decrypt(), PAGE_EXECUTE_READ); //SouthOfMidnight.exe + 3161AB4 - F3 0F 10 87 F8 01 00 00 - movss xmm0, [rdi + 000001F8] //SouthOfMidnight.exe + 3161ABC - F3 0F 11 46 18 - movss[rsi + 18], xmm0 diff --git a/SpiritOfTheNorth/dllmain.cpp b/SpiritOfTheNorth/dllmain.cpp index f169935..3a64739 100644 --- a/SpiritOfTheNorth/dllmain.cpp +++ b/SpiritOfTheNorth/dllmain.cpp @@ -54,7 +54,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) logger->info("--------------- AOB scan started ---------------"); if (FOVaddress == nullptr) { constexpr auto FOVStringObfuscated = make_obfuscated<0x4A>("EB ?? F3 0F ?? ?? ?? ?? ?? ?? F3 0F ?? ?? ?? 8B 83 ?? ?? ?? ?? 89"); - FOVaddress = Memory::aob_scan(gameExecutable, FOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + FOVaddress = Memory::AOBScan(gameExecutable, FOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); if (!FOVaddress) logger->warn("FOV signature not found. Maybe your game has been updated and is no more compatible with this plugin."); @@ -71,7 +71,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) } if (DOFaddress == nullptr) { constexpr auto DOFStringObfuscated = make_obfuscated<0x4A>("8B ?? ?? E8 ?? ?? ?? ?? 8B ?? E8 ?? ?? ?? ?? 84 ?? 74 ?? 48"); - DOFaddress = Memory::aob_scan(gameExecutable, DOFStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + DOFaddress = Memory::AOBScan(gameExecutable, DOFStringObfuscated.decrypt(), PAGE_EXECUTE_READ); if (!DOFaddress) logger->warn("DOF signature not found. Maybe your game has been updated and is no more compatible with this plugin."); diff --git a/Starfield/dllmain.cpp b/Starfield/dllmain.cpp index 5ffb615..5e9595b 100644 --- a/Starfield/dllmain.cpp +++ b/Starfield/dllmain.cpp @@ -62,7 +62,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) // === AOB Scans === if (!DialogFOVAddress) { constexpr auto DialogFOVPattern = make_obfuscated<0x4A>("E9 ?? ?? ?? ?? 49 ?? ?? E8 ?? ?? ?? ?? 84 ?? 0F 84 ?? ?? ?? ?? 48 8B ?? ?? ?? ?? ?? 48 89"); - DialogFOVAddress = Memory::aob_scan(gameExecutable, DialogFOVPattern.decrypt(), PAGE_EXECUTE_READ); + DialogFOVAddress = Memory::AOBScan(gameExecutable, DialogFOVPattern.decrypt(), PAGE_EXECUTE_READ); //Starfield.exe + BBA13E - A8 01 - test al, 01 //Starfield.exe + BBA140 - 74 0D - je Starfield.exe + BBA14F //Starfield.exe + BBA142 - C5 FA 10 35 FE 15 23 05 - vmovss xmm6, [Starfield.exe + 5DEB748] @@ -76,7 +76,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) } if (!WeaponFOVAddress) { constexpr auto WeaponFOVPattern = make_obfuscated<0x4A>("C5 FA ?? ?? ?? ?? ?? ?? 80 3D ?? ?? ?? ?? ?? 48 8B ?? ?? ?? ?? ?? 74"); - WeaponFOVAddress = Memory::aob_scan(gameExecutable, WeaponFOVPattern.decrypt(), PAGE_EXECUTE_READ); + WeaponFOVAddress = Memory::AOBScan(gameExecutable, WeaponFOVPattern.decrypt(), PAGE_EXECUTE_READ); //Starfield.exe + 12D9F27 - C5 F8 28 C2 - vmovaps xmm0, xmm2 //Starfield.exe + 12D9F2B - 48 8B 05 5E C4 BD 04 - mov rax, [Starfield.exe + 5EB6390] //Starfield.exe + 12D9F32 - C5 FA 11 80 E0 02 00 00 - vmovss[rax + 000002E0], xmm0 @@ -90,7 +90,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) } if (!HUDAddress) { constexpr auto HUDPattern = make_obfuscated<0x4A>("C4 61 ?? ?? ?? ?? ?? ?? ?? C4 61 ?? ?? ?? ?? ?? ?? ?? 45 ?? ?? 74"); - HUDAddress = Memory::aob_scan(gameExecutable, HUDPattern.decrypt(), PAGE_EXECUTE_READ); + HUDAddress = Memory::AOBScan(gameExecutable, HUDPattern.decrypt(), PAGE_EXECUTE_READ); //Starfield.exe + 24D6D3B - C4 61 FA 2C 05 3C 28 38 03 - vcvttss2si r8, [Starfield.exe + 5859580] //Starfield.exe + 24D6D44 - C4 61 FA 2C 0D 13 28 38 03 - vcvttss2si r9, [Starfield.exe + 5859560] //Starfield.exe + 24D6D4D - 45 84 DB - test r11b, r11b @@ -105,7 +105,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) } if (!PhotomodeAddress) { constexpr auto PhotomodePattern = make_obfuscated<0x4A>("74 ?? 0F BA ?? ?? 89 87 ?? ?? ?? ?? C6 87 ?? ?? ?? ?? ?? E8"); - PhotomodeAddress = Memory::aob_scan(gameExecutable, PhotomodePattern.decrypt(), PAGE_EXECUTE_READ); + PhotomodeAddress = Memory::AOBScan(gameExecutable, PhotomodePattern.decrypt(), PAGE_EXECUTE_READ); //Starfield.exe + 159D76C - C6 87 D2 00 00 00 01 - mov byte ptr[rdi + 000000D2], 01 //Starfield.exe + 159D773 - 40 38 35 96 1F 87 04 - cmp[Starfield.exe + 5E0F710], sil //Starfield.exe + 159D77A - 74 11 - je Starfield.exe + 159D78D diff --git a/TLOU/dllmain.cpp b/TLOU/dllmain.cpp index 1bcf064..68ce7d1 100644 --- a/TLOU/dllmain.cpp +++ b/TLOU/dllmain.cpp @@ -56,7 +56,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) // === AOB Scans === if (!FOVAddress) { constexpr auto FOVPattern = make_obfuscated<0x4A>("E8 ?? ?? ?? ?? C5 FA ?? ?? ?? ?? ?? ?? C5 F8 ?? ?? E8 ?? ?? ?? ?? C5 7A"); - FOVAddress = Memory::aob_scan(gameExecutable, FOVPattern.decrypt(), PAGE_EXECUTE_READ); + FOVAddress = Memory::AOBScan(gameExecutable, FOVPattern.decrypt(), PAGE_EXECUTE_READ); //"tlou-i.exe" + 48A5B5 - C5 F8 11 41 10 - vmovups[rcx + 10], xmm0 //"tlou-i.exe" + 48A5BA - 48 8B CA - mov rcx, rdx //"tlou-i.exe" + 48A5BD - E8 BE 0D 0B 00 - call "tlou-i.exe" + 53B380 @@ -71,7 +71,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) } if (!CameraAddress) { constexpr auto CameraPattern = make_obfuscated<0x4A>("C5 FA ?? ?? ?? ?? ?? ?? C5 FA ?? ?? ?? C5 22 ?? ?? ?? C4 C1 ?? ?? ?? C5 FA ?? ?? ?? C5 7A"); - CameraAddress = Memory::aob_scan(gameExecutable, CameraPattern.decrypt(), PAGE_EXECUTE_READ); + CameraAddress = Memory::AOBScan(gameExecutable, CameraPattern.decrypt(), PAGE_EXECUTE_READ); //"tlou-i.exe" + 693727 - C5 FA 11 56 0C - vmovss[rsi + 0C], xmm2 //"tlou-i.exe" + 69372C - 48 8B 07 - mov rax, [rdi] //"tlou-i.exe" + 69372F - C5 FA 10 05 95 5E EC 02 - vmovss xmm0, ["tlou-i.exe" + 35595CC] @@ -86,7 +86,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) } if (!SharpnessAddress) { constexpr auto SharpnessPattern = make_obfuscated<0x4A>("C5 FA ?? ?? ?? ?? ?? ?? 8B 86 ?? ?? ?? ?? 89 87 ?? ?? ?? ?? 0F B6 ?? ?? ?? ?? ?? 89"); - SharpnessAddress = Memory::aob_scan(gameExecutable, SharpnessPattern.decrypt(), PAGE_EXECUTE_READ); + SharpnessAddress = Memory::AOBScan(gameExecutable, SharpnessPattern.decrypt(), PAGE_EXECUTE_READ); //"tlou-i.exe" + 1F6B4CF - 75 04 - jne "tlou-i.exe" + 1F6B4D5 //"tlou-i.exe" + 1F6B4D1 - C5 C8 57 F6 - vxorps xmm6, xmm6, xmm6 //"tlou-i.exe" + 1F6B4D5 - C5 FA 11 B7 C4 02 00 00 - vmovss[rdi + 000002C4], xmm6 diff --git a/TLOU2/dllmain.cpp b/TLOU2/dllmain.cpp index 209582f..227d416 100644 --- a/TLOU2/dllmain.cpp +++ b/TLOU2/dllmain.cpp @@ -56,7 +56,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) // === AOB Scans === if (!FOVAddress) { constexpr auto FOVPattern = make_obfuscated<0x4A>("E8 ?? ?? ?? ?? C5 FA ?? ?? ?? ?? ?? ?? C5 F8 ?? ?? E8 ?? ?? ?? ?? C5 7A"); - FOVAddress = Memory::aob_scan(gameExecutable, FOVPattern.decrypt(), PAGE_EXECUTE_READ); + FOVAddress = Memory::AOBScan(gameExecutable, FOVPattern.decrypt(), PAGE_EXECUTE_READ); if (FOVAddress) { logger->info("FOV signature found at address: 0x{:X}.", reinterpret_cast(FOVAddress)); @@ -66,7 +66,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) } if (!CameraAddress) { constexpr auto CameraPattern = make_obfuscated<0x4A>("C5 FA ?? ?? ?? ?? ?? ?? C5 FA ?? ?? ?? C5 22 ?? ?? ?? C4 C1 ?? ?? ?? C5 FA ?? ?? ?? C5 7A"); - CameraAddress = Memory::aob_scan(gameExecutable, CameraPattern.decrypt(), PAGE_EXECUTE_READ); + CameraAddress = Memory::AOBScan(gameExecutable, CameraPattern.decrypt(), PAGE_EXECUTE_READ); if (CameraAddress) { logger->info("Camera signature found at address: 0x{:X}.", reinterpret_cast(CameraAddress)); @@ -76,7 +76,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) } if (!SharpnessAddress) { constexpr auto SharpnessPattern = make_obfuscated<0x4A>("C5 FA ?? ?? ?? ?? ?? ?? 8B 86 ?? ?? ?? ?? 89 87 ?? ?? ?? ?? 0F B6 ?? ?? ?? ?? ?? 89"); - SharpnessAddress = Memory::aob_scan(gameExecutable, SharpnessPattern.decrypt(), PAGE_EXECUTE_READ); + SharpnessAddress = Memory::AOBScan(gameExecutable, SharpnessPattern.decrypt(), PAGE_EXECUTE_READ); if (SharpnessAddress) { logger->info("Sharpness signature found at address: 0x{:X}.", reinterpret_cast(SharpnessAddress)); diff --git a/Uncharted LOTC/dllmain.cpp b/Uncharted LOTC/dllmain.cpp index a064a4f..f120537 100644 --- a/Uncharted LOTC/dllmain.cpp +++ b/Uncharted LOTC/dllmain.cpp @@ -80,11 +80,11 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled, bool init) if (FOVaddress == nullptr) { if (gameExecutable == "u4.exe") { auto FOVStringObfuscated = make_obfuscated<0x4A>("C5 FA ?? ?? ?? ?? ?? ?? C5 F2 ?? ?? ?? ?? ?? ?? C5 7A ?? ?? ?? ?? ?? ?? C5 7A"); - FOVaddress = Memory::aob_scan(gameExecutable, FOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + FOVaddress = Memory::AOBScan(gameExecutable, FOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); } else { auto FOVStringObfuscated = make_obfuscated<0x4A>("C5 FA ?? ?? ?? ?? ?? ?? C5 F2 ?? ?? ?? ?? ?? ?? E8 ?? ?? ?? ?? C5 92"); - FOVaddress = Memory::aob_scan(gameExecutable, FOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + FOVaddress = Memory::AOBScan(gameExecutable, FOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); } if (!FOVaddress) @@ -95,7 +95,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled, bool init) } if (PHOTOaddress == nullptr) { auto PhotoFOVStringObfuscated = make_obfuscated<0x4A>("C5 FA ?? ?? ?? ?? ?? ?? C5 FA ?? ?? ?? ?? ?? ?? 41 ?? ?? ?? ?? ?? 48 8B ?? ?? ?? ?? ?? 48 83"); - PHOTOaddress = Memory::aob_scan(gameExecutable, PhotoFOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + PHOTOaddress = Memory::AOBScan(gameExecutable, PhotoFOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); if (!PHOTOaddress) logger->warn("Photo FOV signature not found. Maybe your game has been updated and is no more compatible with this plugin."); @@ -106,7 +106,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled, bool init) } if (CINEMATICSASPECTaddress == nullptr) { constexpr auto CinematicsAspectStringObfuscated = make_obfuscated<0x4A>("48 8B ?? ?? ?? ?? ?? 4C 8B ?? ?? ?? ?? ?? ?? 4C 8B ?? 49 C1"); - CINEMATICSASPECTaddress = Memory::aob_scan(gameExecutable, CinematicsAspectStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + CINEMATICSASPECTaddress = Memory::AOBScan(gameExecutable, CinematicsAspectStringObfuscated.decrypt(), PAGE_EXECUTE_READ); if (!CINEMATICSASPECTaddress) logger->warn("Cinematics aspect ratio signature not found. Maybe your game has been updated and is no more compatible with this plugin."); @@ -116,7 +116,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled, bool init) } if (Aspectaddress == nullptr) { constexpr auto AspectStringObfuscated = make_obfuscated<0x4A>("44 8B ?? ?? ?? ?? ?? 48 ?? ?? 48 89 ?? ?? ?? ?? ?? E8 ?? ?? ?? ?? C5"); - Aspectaddress = Memory::aob_scan(gameExecutable, AspectStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + Aspectaddress = Memory::AOBScan(gameExecutable, AspectStringObfuscated.decrypt(), PAGE_EXECUTE_READ); if (!Aspectaddress) logger->warn("Aspect ratio signature not found. Maybe your game has been updated and is no more compatible with this plugin."); @@ -127,7 +127,7 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled, bool init) } if (DOFaddress == nullptr) { constexpr auto DOFStringObfuscated = make_obfuscated<0x4A>("41 8B 87 ?? ?? ?? ?? 41 89 86 ?? ?? ?? ?? 41 C7 86"); - DOFaddress = Memory::aob_scan(gameExecutable, DOFStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + DOFaddress = Memory::AOBScan(gameExecutable, DOFStringObfuscated.decrypt(), PAGE_EXECUTE_READ); if (!DOFaddress) logger->warn("DOF signature not found. Maybe your game has been updated and is no more compatible with this plugin."); @@ -138,11 +138,11 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled, bool init) if (EFFECTSaddress == nullptr) { if (gameExecutable == "u4.exe") { auto EffectsStringObfuscated = make_obfuscated<0x4A>("41 8B 86 ?? ?? ?? ?? 89 86 ?? ?? ?? ?? 41 8B 86 ?? ?? ?? ?? 89 86 ?? ?? ?? ?? 41 8B 86 ?? ?? ?? ?? 89 86 ?? ?? ?? ?? 41 8B 87"); - EFFECTSaddress = Memory::aob_scan(gameExecutable, EffectsStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + EFFECTSaddress = Memory::AOBScan(gameExecutable, EffectsStringObfuscated.decrypt(), PAGE_EXECUTE_READ); } else { auto EffectsStringObfuscated = make_obfuscated<0x4A>("41 8B 87 ?? ?? ?? ?? 89 86 ?? ?? ?? ?? 41 8B 87 ?? ?? ?? ?? 89 86 ?? ?? ?? ?? 41 8B 87 ?? ?? ?? ?? 89 86 ?? ?? ?? ?? 41 8B 86"); - EFFECTSaddress = Memory::aob_scan(gameExecutable, EffectsStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + EFFECTSaddress = Memory::AOBScan(gameExecutable, EffectsStringObfuscated.decrypt(), PAGE_EXECUTE_READ); } if (!EFFECTSaddress) diff --git a/WuchangFF/dllmain.cpp b/WuchangFF/dllmain.cpp index 2ff21b2..aa548a1 100644 --- a/WuchangFF/dllmain.cpp +++ b/WuchangFF/dllmain.cpp @@ -40,19 +40,65 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) g_fix_enabled = enabled; if (g_fix_enabled && !AOBScanDone) { logger->info("--------------- AOB scan started ---------------"); - if (HORPLUSaddress == nullptr) { - constexpr auto HORPLUSStringObfuscated = make_obfuscated<0x4A>("41 0F ?? ?? ?? ?? ?? ?? 48 8D ?? ?? ?? ?? ?? 4C ?? ?? 4D ?? ?? E8"); - HORPLUSaddress = Memory::aob_scan(gameExecutable, HORPLUSStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + if (FOVaddress == nullptr) { + constexpr auto FOVStringObfuscated = make_obfuscated<0x4A>("EB ?? F3 0F ?? ?? ?? ?? ?? ?? F3 0F ?? ?? ?? 0F ?? ?? 8B"); + FOVaddress = Memory::AOBScan(gameExecutable, FOVStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + //"Project_Plague-Win64-Shipping.exe" + 3E1037A - EB 08 - jmp "Project_Plague-Win64-Shipping.exe" + 3E10384 + //"Project_Plague-Win64-Shipping.exe" + 3E1037C - F3 0F 10 83 E0 02 00 00 - movss xmm0, [rbx + 000002E0] + //"Project_Plague-Win64-Shipping.exe" + 3E10384 - F3 0F 11 47 30 - movss[rdi + 30], xmm0 + //"Project_Plague-Win64-Shipping.exe" + 3E10389 - 0F 57 C0 - xorps xmm0, xmm0 + //"Project_Plague-Win64-Shipping.exe" + 3E1038C - 8B 83 F0 02 00 00 - mov eax, [rbx + 000002F0] - if (!HORPLUSaddress) - logger->warn("HOR+ signature not found. Maybe your game has been updated and is no more compatible with this plugin."); - else - logger->info("HOR+ signature found at address: 0x{:X}.", reinterpret_cast(HORPLUSaddress)); + if (!FOVaddress) + logger->warn("FOV signature not found. Maybe your game has been updated and is no more compatible with this plugin."); + else { + logger->info("FOV signature found at address: 0x{:X}.", reinterpret_cast(FOVaddress)); + FOVaddress += 0xa; // Offset for the target opcode + } + } + + if (Aspectaddress_1 == nullptr) { + constexpr auto AspectStringObfuscated = make_obfuscated<0x4A>("C3 CC CC CC CC CC CC CC CC 48 89 ?? ?? ?? 57 48 ?? ?? ?? 0F ?? ?? 48 ?? ?? 48 ?? ?? 0F ?? ?? ?? 0F ?? ?? ?? F2 0F"); + Aspectaddress_1 = Memory::AOBScan(gameExecutable, AspectStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + //"Project_Plague-Win64-Shipping.exe" + 10A7443 - 89 41 44 - mov[rcx + 44], eax + //"Project_Plague-Win64-Shipping.exe" + 10A7446 - 8B 42 48 - mov eax, [rdx + 48] + //"Project_Plague-Win64-Shipping.exe" + 10A7449 - 89 41 48 - mov[rcx + 48], eax + //"Project_Plague-Win64-Shipping.exe" + 10A744C - 8B 49 4C - mov ecx, [rcx + 4C] + //"Project_Plague-Win64-Shipping.exe" + 10A744F - 33 4A 4C - xor ecx, [rdx + 4C] + + if (!Aspectaddress_1) + logger->warn("Aspect ratio #1 signature not found. Maybe your game has been updated and is no more compatible with this plugin."); + else { + logger->info("Aspect ratio #1 signature found at address: 0x{:X}.", reinterpret_cast(Aspectaddress_1)); + Aspectaddress_1 += 0x62; + } + } + + if (Aspectaddress_2 == nullptr) { + constexpr auto AspectStringObfuscated = make_obfuscated<0x4A>("C3 CC CC CC CC CC 48 89 ?? ?? ?? 57 48 ?? ?? ?? 0F ?? ?? 48 ?? ?? 48 ?? ?? 0F ?? ?? ?? 0F ?? ?? ?? F2 0F"); + Aspectaddress_2 = Memory::AOBScan(gameExecutable, AspectStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + //"Project_Plague-Win64-Shipping.exe" + 1914483 - 89 41 44 - mov[rcx + 44], eax + //"Project_Plague-Win64-Shipping.exe" + 1914486 - 8B 42 48 - mov eax, [rdx + 48] + //"Project_Plague-Win64-Shipping.exe" + 1914489 - 89 41 48 - mov[rcx + 48], eax + //"Project_Plague-Win64-Shipping.exe" + 191448C - 8B 49 4C - mov ecx, [rcx + 4C] + //"Project_Plague-Win64-Shipping.exe" + 191448F - 33 4A 4C - xor ecx, [rdx + 4C] + + if (!Aspectaddress_2) + logger->warn("Aspect ratio #2 signature not found. Maybe your game has been updated and is no more compatible with this plugin."); + else { + logger->info("Aspect ratio #2 signature found at address: 0x{:X}.", reinterpret_cast(Aspectaddress_2)); + Aspectaddress_2 += 0x5F; + } } if (DOFaddress == nullptr) { constexpr auto DOFStringObfuscated = make_obfuscated<0x4A>("48 ?? ?? 8B ?? ?? E8 ?? ?? ?? ?? 48 ?? ?? 48 6B ?? ?? 48 8D"); - DOFaddress = Memory::aob_scan(gameExecutable, DOFStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + DOFaddress = Memory::AOBScan(gameExecutable, DOFStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + //"Project_Plague-Win64-Shipping.exe" + 2BD06A4 - 48 8B 05 1D 15 9D 05 - mov rax, ["Project_Plague-Win64-Shipping.exe" + 85A1BC8] + //"Project_Plague-Win64-Shipping.exe" + 2BD06AB - 48 8B CB - mov rcx, rbx + //"Project_Plague-Win64-Shipping.exe" + 2BD06AE - 8B 78 04 - mov edi, [rax + 04] + //"Project_Plague-Win64-Shipping.exe" + 2BD06B1 - E8 AA 5F 8A 01 - call "Project_Plague-Win64-Shipping.exe" + 4476660 + //"Project_Plague-Win64-Shipping.exe" + 2BD06B6 - 48 63 C8 - movsxd rcx, eax if (!DOFaddress) logger->warn("DOF signature not found. Maybe your game has been updated and is no more compatible with this plugin."); @@ -64,7 +110,12 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) if (Vignettingaddress == nullptr) { constexpr auto VignettingStringObfuscated = make_obfuscated<0x4A>("8B ?? 83 ?? ?? 7D ?? 89 B3 ?? ?? ?? ?? EB"); - Vignettingaddress = Memory::aob_scan(gameExecutable, VignettingStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + Vignettingaddress = Memory::AOBScan(gameExecutable, VignettingStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + //"Project_Plague-Win64-Shipping.exe" + 4474088 - C7 83 B0 1F 00 00 00 00 80 3F - mov[rbx + 00001FB0], 3F800000 + //"Project_Plague-Win64-Shipping.exe" + 4474092 - 48 8B 05 87 FE 1F 04 - mov rax, ["Project_Plague-Win64-Shipping.exe" + 8673F20] + //"Project_Plague-Win64-Shipping.exe" + 4474099 - 8B 08 - mov ecx, [rax] + //"Project_Plague-Win64-Shipping.exe" + 447409B - 83 F9 02 - cmp ecx, 02 + //"Project_Plague-Win64-Shipping.exe" + 447409E - 7D 08 - jnl "Project_Plague-Win64-Shipping.exe" + 44740A8 if (!Vignettingaddress) logger->warn("Vignetting signature not found. Maybe your game has been updated and is no more compatible with this plugin."); @@ -75,7 +126,12 @@ extern "C" __declspec(dllexport) void SetFixEnabled(bool enabled) if (Fogaddress == nullptr) { constexpr auto FogStringObfuscated = make_obfuscated<0x4A>("75 ?? B3 ?? EB ?? 32 ?? 48 8B ?? ?? ?? 48 ?? ?? 74 ?? E8 ?? ?? ?? ?? 0F ?? ?? 48 8B"); - Fogaddress = Memory::aob_scan(gameExecutable, FogStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + Fogaddress = Memory::AOBScan(gameExecutable, FogStringObfuscated.decrypt(), PAGE_EXECUTE_READ); + //"Project_Plague-Win64-Shipping.exe" + 28E27FD - 48 8B 05 54 9A C6 05 - mov rax, ["Project_Plague-Win64-Shipping.exe" + 854C258] + //"Project_Plague-Win64-Shipping.exe" + 28E2804 - 83 78 04 01 - cmp dword ptr[rax + 04], 01 + //"Project_Plague-Win64-Shipping.exe" + 28E2808 - 75 04 - jne "Project_Plague-Win64-Shipping.exe" + 28E280E + //"Project_Plague-Win64-Shipping.exe" + 28E280A - B3 01 - mov bl, 01 + //"Project_Plague-Win64-Shipping.exe" + 28E280C - EB 02 - jmp "Project_Plague-Win64-Shipping.exe" + 28E2810 if (!Fogaddress) logger->warn("Fog signature not found. Maybe your game has been updated and is no more compatible with this plugin.");