|
|
|
@@ -11,8 +11,236 @@ using FnGetVersion = int (*)();
|
|
|
|
|
using FnLocalSaves = bool (*)();
|
|
|
|
|
using FnBattlEyeBypass = bool (*)();
|
|
|
|
|
|
|
|
|
|
#define RESTORE_DESTROYED_FUNCTIONS true
|
|
|
|
|
|
|
|
|
|
namespace YimMenu
|
|
|
|
|
{
|
|
|
|
|
static void ApplyPatch(uintptr_t base, uintptr_t offset, std::span<std::uint8_t const> const values)
|
|
|
|
|
{
|
|
|
|
|
memcpy(reinterpret_cast<void*>(base + offset), values.data(), values.size());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static void PatchEncryptedFunctions(uintptr_t base)
|
|
|
|
|
{
|
|
|
|
|
ApplyPatch(base, 0x14F20B0, std::to_array<uint8_t>({0x41, 0x57, 0x41, 0x56, 0x41, 0x55, 0x41, 0x54, 0x56, 0x57, 0x55, 0x53, 0x48, 0x83, 0xEC, 0x38, 0x4C, 0x89, 0xC7, 0x49, 0x89, 0xCC, 0x48, 0x8B, 0x2, 0x48, 0x89, 0x54, 0x24, 0x30, 0x48, 0x89, 0xD1, 0xFF, 0x50, 0x68, 0x84, 0xC0, 0xF, 0x85, 0x19, 0x2, 0x0, 0x0, 0xF, 0xB7, 0x47, 0xA, 0xC1, 0xE0, 0x10, 0x3D, 0x0, 0x0, 0xFF, 0x0, 0xF, 0x85, 0x7, 0x2, 0x0, 0x0, 0xE8, 0x1D, 0xF3, 0xF1, 0xFF, 0x89, 0xC6, 0xE8, 0x76, 0xF3, 0xF1, 0xFF, 0x85, 0xF6, 0xF, 0x84, 0xF3, 0x1, 0x0, 0x0, 0x49, 0x89, 0xC7, 0x89, 0xF5, 0xB0, 0x1, 0x45, 0x31, 0xF6, 0xEB, 0x11}));
|
|
|
|
|
ApplyPatch(base, 0x14F2110, std::to_array<uint8_t>({0x49, 0xFF, 0xC6, 0x49, 0x39, 0xEE, 0xF, 0x92, 0xC0, 0xF, 0x84, 0xD6, 0x1, 0x0, 0x0, 0x88, 0x44, 0x24, 0x2F, 0x4B, 0x8B, 0x4, 0xF7, 0xF, 0xB6, 0x40, 0x61, 0x48, 0xC1, 0xE0, 0x4, 0x4D, 0x8B, 0x6C, 0x4, 0x8, 0xEB, 0xE}));
|
|
|
|
|
ApplyPatch(base, 0x14F2140, std::to_array<uint8_t>({0x4D, 0x8B, 0x6D, 0x10, 0x4D, 0x85, 0xED, 0x74, 0xC7, 0x49, 0x8B, 0x5D, 0x8, 0x48, 0x85, 0xDB, 0x74, 0xEE, 0x48, 0x8B, 0x3, 0x48, 0x89, 0xD9, 0xFF, 0x50, 0x68, 0x84, 0xC0, 0x74, 0xE1, 0x48, 0x8B, 0x3, 0x48, 0x89, 0xD9, 0x31, 0xD2, 0xFF, 0x90, 0x68, 0x2, 0x0, 0x0, 0x84, 0xC0, 0x74, 0xCF, 0x48, 0x8B, 0x3, 0x48, 0x89, 0xD9, 0xFF, 0x90, 0x0, 0x1, 0x0, 0x0, 0x48, 0x85, 0xC0, 0x74, 0xBE, 0x48, 0x89, 0xC6, 0x48, 0x8B, 0x0, 0x48, 0x89, 0xF1, 0x48, 0x89, 0xFA, 0xFF, 0x50, 0x20, 0x84, 0xC0, 0x74, 0xAB, 0xF, 0xB7, 0x46, 0xC, 0x66, 0x3B, 0x47, 0xC, 0x76, 0x33, 0xE8, 0x5C, 0x70, 0xB5, 0xFE, 0x48, 0x89, 0xC6, 0x48, 0x8B, 0x3, 0x48, 0x89, 0xD9, 0xFF, 0x90, 0x98, 0x0, 0x0, 0x0, 0x48, 0x8B, 0x2E, 0x48, 0x8D, 0x15, 0x11, 0xE8, 0x31, 0x1, 0x4C, 0x8D, 0x5, 0x33, 0x9C, 0x33, 0x1, 0x48, 0x89, 0xF1, 0x49, 0x89, 0xC1, 0xFF, 0x55, 0x30, 0xE9, 0xE9, 0x0, 0x0, 0x0, 0x80, 0x7B, 0x4B, 0x0, 0xF, 0x85, 0x99, 0x0, 0x0, 0x0, 0x48, 0x8B, 0x3, 0x48, 0x89, 0xD9, 0x31, 0xD2, 0xFF, 0x90, 0x88, 0x1, 0x0, 0x0, 0x84, 0xC0, 0xF, 0x84, 0x83, 0x0, 0x0, 0x0, 0x48, 0x8B, 0x6, 0x48, 0x89, 0xF1, 0xFF, 0x50, 0x8, 0x48, 0x8B, 0x10, 0x48, 0x89, 0xC1, 0xFF, 0x52, 0x28, 0x48, 0x8B, 0x35, 0x45, 0xBE, 0x23, 0x3, 0x48, 0x8B, 0x3, 0x48, 0x89, 0xD9, 0xFF, 0x90, 0x98, 0x0, 0x0, 0x0, 0x48, 0x8B, 0x2E, 0x48, 0x8D, 0x15, 0x66, 0x9F, 0x2F, 0x1, 0x48, 0x89, 0xF1, 0x49, 0x89, 0xC0, 0xFF, 0x55, 0x30, 0x48, 0x8B, 0x35, 0x1F, 0xBE, 0x23, 0x3, 0x48, 0x8B, 0x4C, 0x24, 0x30, 0x48, 0x8B, 0x1, 0xFF, 0x90, 0x98, 0x0, 0x0, 0x0, 0x48, 0x8B, 0x2E, 0x48, 0x8D, 0x15, 0xE9, 0x2E, 0x2E, 0x1, 0x48, 0x89, 0xF1, 0x49, 0x89, 0xC0, 0xFF, 0x55, 0x30, 0xE8, 0x19, 0xF9, 0xF1, 0xFF, 0x48, 0x8B, 0x28, 0xC6, 0x44, 0x24, 0x20, 0x1, 0x48, 0x89, 0xC1, 0x48, 0x89, 0xDA, 0x41, 0xB8, 0xB, 0x0, 0x0, 0x0, 0x45, 0x31, 0xC9, 0xFF, 0x55, 0x30, 0xB0, 0x1, 0xEB, 0x76, 0xE8, 0x86, 0x6F, 0xB5, 0xFE, 0x48, 0x89, 0xC6, 0x48, 0x8B, 0x3, 0x48, 0x89, 0xD9, 0xFF, 0x90, 0x98, 0x0, 0x0, 0x0, 0x48, 0x8B, 0x2E, 0x48, 0x8D, 0x15, 0x3B, 0xE7, 0x31, 0x1, 0x4C, 0x8D, 0x5, 0x49, 0x9C, 0x33, 0x1, 0x48, 0x89, 0xF1, 0x49, 0x89, 0xC1, 0xFF, 0x55, 0x30, 0x48, 0x8B, 0x3, 0x48, 0x89, 0xD9, 0xFF, 0x90, 0xC0, 0x0, 0x0, 0x0, 0x48, 0x85, 0xC0, 0x74, 0x7, 0xC6, 0x83, 0xD0, 0x0, 0x0, 0x0, 0x3C, 0x48, 0x8B, 0x7, 0x48, 0x89, 0xF9, 0xFF, 0x50, 0x8, 0x48, 0x89, 0xC1, 0xE8, 0xE4, 0x29, 0xC6, 0xFE, 0x48, 0x85, 0xC0, 0x74, 0x18, 0x48, 0x89, 0xC1, 0xE8, 0x7, 0x6D, 0xF2, 0xFF, 0x84, 0xC0, 0x74, 0xC, 0x48, 0x8B, 0x4C, 0x24, 0x30, 0xB2, 0x1, 0xE8, 0x57, 0xF0, 0xE9, 0xFF, 0x31, 0xC0, 0xF, 0xB6, 0x4C, 0x24, 0x2F, 0xF6, 0xC1, 0x1, 0x75, 0x2, 0xB0, 0x1, 0x48, 0x83, 0xC4, 0x38, 0x5B, 0x5D, 0x5F, 0x5E, 0x41, 0x5C, 0x41, 0x5D, 0x41, 0x5E, 0x41, 0x5F, 0xC3}));
|
|
|
|
|
ApplyPatch(base, 0x14FC600, std::to_array<uint8_t>({0x48, 0x8B, 0x5, 0xC1, 0x9, 0xF8, 0x0, 0x48, 0x8B, 0x80, 0xF0, 0x0, 0x0, 0x0, 0x8B, 0x80, 0xF8, 0x0, 0x0, 0x0, 0x83, 0xF8, 0x9, 0x77, 0x1D, 0x44, 0x8B, 0x8A, 0xF8, 0x0, 0x0, 0x0, 0x41, 0x83, 0xF9, 0x9, 0x77, 0x10, 0x41, 0x39, 0xC1, 0x75, 0xB, 0x80, 0x7A, 0x61, 0xFF, 0x74, 0x14, 0xE9, 0x2A, 0x85, 0xF2, 0xFF, 0x4D, 0x85, 0xC0, 0x74, 0x16, 0x41, 0xC7, 0x0, 0x5, 0x0, 0x0, 0x0, 0x31, 0xC0, 0xC3, 0x4D, 0x85, 0xC0, 0x74, 0x7, 0x41, 0xC7, 0x0, 0x6, 0x0, 0x0, 0x0, 0x31, 0xC0, 0xC3}));
|
|
|
|
|
ApplyPatch(base, 0x14FC660, std::to_array<uint8_t>({0x41, 0x57, 0x41, 0x56, 0x41, 0x54, 0x56, 0x57, 0x53, 0x48, 0x83, 0xEC, 0x28, 0x4D, 0x89, 0xCE, 0x44, 0x89, 0xC3, 0x49, 0x89, 0xD7, 0x48, 0x89, 0xCF, 0x48, 0x8B, 0x1, 0xFF, 0x50, 0x68, 0x84, 0xC0, 0x75, 0x14, 0x48, 0x8B, 0x7, 0x48, 0x89, 0xF9, 0xFF, 0x90, 0x98, 0x1, 0x0, 0x0, 0x84, 0xC0, 0xF, 0x84, 0xD6, 0x0, 0x0, 0x0, 0x48, 0x89, 0xF9, 0x4C, 0x89, 0xFA, 0x41, 0x89, 0xD8, 0x4D, 0x89, 0xF1, 0xE8, 0xA8, 0x7C, 0xF2, 0xFF, 0x84, 0xC0, 0xF, 0x84, 0xCA, 0x0, 0x0, 0x0, 0x83, 0xFB, 0x1, 0x7F, 0x3C, 0x48, 0x8B, 0x7, 0x48, 0x89, 0xF9, 0xFF, 0x50, 0x48, 0x48, 0x85, 0xC0, 0x74, 0x2E, 0x48, 0x8B, 0x7, 0x48, 0x89, 0xF9, 0xFF, 0x50, 0x48, 0x48, 0x8B, 0xD, 0xF5, 0x8, 0xF8, 0x0, 0x8B, 0x89, 0x98, 0x8, 0x0, 0x0, 0x85, 0x48, 0x10, 0x74, 0x13, 0xB8, 0x24, 0x0, 0x0, 0x0, 0x4D, 0x85, 0xF6, 0xF, 0x85, 0x8B, 0x0, 0x0, 0x0, 0xE9, 0x89, 0x0, 0x0, 0x0, 0x48, 0x8B, 0x7, 0x48, 0x89, 0xF9, 0xFF, 0x90, 0x0, 0x1, 0x0, 0x0, 0x48, 0x85, 0xC0, 0x74, 0x47, 0x48, 0x8B, 0x7, 0x48, 0x89, 0xF9, 0xFF, 0x90, 0x10, 0x1, 0x0, 0x0, 0x48, 0x85, 0xC0, 0x74, 0x36, 0x49, 0x89, 0xC4, 0x48, 0x8B, 0x0, 0x4C, 0x89, 0xE1, 0xFF, 0x50, 0x38, 0x48, 0x85, 0xC0, 0x74, 0x25, 0x48, 0x89, 0xC6, 0x48, 0x8B, 0x0, 0x48, 0x89, 0xF1, 0xFF, 0x50, 0x30, 0x84, 0xC0, 0x74, 0x15, 0x48, 0x89, 0xF1, 0x4C, 0x89, 0xE2, 0x4D, 0x89, 0xF8, 0x41, 0x89, 0xD9, 0xE8, 0x5B, 0x13, 0xEF, 0xFF, 0x84, 0xC0, 0x74, 0x43, 0x40, 0xB6, 0x1, 0x85, 0xDB, 0x75, 0x2C, 0x48, 0x89, 0xF9, 0xBA, 0x0, 0x80, 0x0, 0x0, 0xE8, 0x3, 0x71, 0xF2, 0xFF, 0x84, 0xC0, 0x74, 0x1B, 0xB8, 0x2F, 0x0, 0x0, 0x0, 0x4D, 0x85, 0xF6, 0x75, 0xC, 0xEB, 0xD, 0xB8, 0x9, 0x0, 0x0, 0x0, 0x4D, 0x85, 0xF6, 0x74, 0x3, 0x41, 0x89, 0x6, 0x31, 0xF6, 0x89, 0xF0, 0x48, 0x83, 0xC4, 0x28, 0x5B, 0x5F, 0x5E, 0x41, 0x5C, 0x41, 0x5E, 0x41, 0x5F, 0xC3, 0xB8, 0xB, 0x0, 0x0, 0x0, 0x4D, 0x85, 0xF6, 0x75, 0xE1, 0xEB, 0xE2}));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static void PatchDestroyedFunctions(uintptr_t base)
|
|
|
|
|
{
|
|
|
|
|
ApplyPatch(base, 0xA8B26, std::to_array<uint8_t>({0x89, 0x43, 0x8, 0x89, 0xC7, 0xE9, 0x3E, 0x43, 0x38, 0x1}));
|
|
|
|
|
ApplyPatch(base, 0x1095A5, std::to_array<uint8_t>({0x49, 0x8B, 0x7, 0x4C, 0x89, 0xF9, 0xE9, 0x21, 0x36, 0x32, 0x1}));
|
|
|
|
|
ApplyPatch(base, 0x10EC63, std::to_array<uint8_t>({0x53, 0x48, 0x8D, 0x1D, 0x60, 0xE5, 0x31, 0x1, 0x48, 0x87, 0x1C, 0x24, 0xC3}));
|
|
|
|
|
ApplyPatch(base, 0x2A5689, std::to_array<uint8_t>({0x31, 0xFF, 0xE9, 0x3B, 0x7B, 0x18, 0x1}));
|
|
|
|
|
ApplyPatch(base, 0x2B43A2, std::to_array<uint8_t>({0x83, 0xF8, 0x3, 0xF, 0x85, 0x2A, 0x33, 0x1D, 0x1, 0xE9, 0x65, 0xA2, 0xAB, 0x1}));
|
|
|
|
|
ApplyPatch(base, 0x426835, std::to_array<uint8_t>({0x49, 0x8B, 0x7, 0x4C, 0x89, 0xF9, 0xE9, 0x4, 0x67, 0x0, 0x1}));
|
|
|
|
|
ApplyPatch(base, 0x5102C5, std::to_array<uint8_t>({0x49, 0x8B, 0x7, 0x4C, 0x89, 0xF9, 0xE9, 0x86, 0xCC, 0xF1, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0x586874, std::to_array<uint8_t>({0x48, 0x8B, 0x8E, 0x38, 0xAA, 0x0, 0x0, 0xE9, 0x27, 0xF, 0xF0, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0x61AF85, std::to_array<uint8_t>({0x49, 0x8B, 0x7, 0x4C, 0x89, 0xF9, 0xE9, 0x47, 0x20, 0xE1, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0x6E8F75, std::to_array<uint8_t>({0x45, 0x89, 0xC4, 0x44, 0x89, 0xCE, 0xE9, 0x1B, 0x3F, 0xD4, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0x6E9043, std::to_array<uint8_t>({0x85, 0xC0, 0xF, 0x85, 0xC7, 0x3C, 0xD4, 0x0, 0xE9, 0x55, 0x5, 0xA2, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x736C92, std::to_array<uint8_t>({0xFF, 0xC3, 0x48, 0x8B, 0x45, 0x0, 0x48, 0x89, 0xE9, 0xE9, 0x2A, 0x63, 0xCF, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0x9A61E6, std::to_array<uint8_t>({0x89, 0xC6, 0x48, 0x89, 0xF9, 0xE9, 0x11, 0x6C, 0xA8, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0xB20B15, std::to_array<uint8_t>({0xFF, 0x83, 0x68, 0x3, 0x0, 0x0, 0xE9, 0x2D, 0xC2, 0x90, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0xB9FDE5, std::to_array<uint8_t>({0xFF, 0x80, 0x68, 0x3, 0x0, 0x0, 0xE9, 0x17, 0xD4, 0x88, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0xC1A441, std::to_array<uint8_t>({0x4D, 0x8B, 0xA6, 0x88, 0x7B, 0x0, 0x0, 0x48, 0x89, 0xF9, 0xE9, 0xA7, 0x29, 0x81, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0xD910E5, std::to_array<uint8_t>({0x49, 0x8B, 0x7, 0x4C, 0x89, 0xF9, 0xE9, 0x9F, 0xBA, 0x69, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0xF78005, std::to_array<uint8_t>({0x49, 0x8B, 0x7, 0x4C, 0x89, 0xF9, 0xE9, 0xC0, 0x4C, 0x4B, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0x11C0385, std::to_array<uint8_t>({0x48, 0x8B, 0x6, 0x48, 0x89, 0xF1, 0xE9, 0x60, 0xCF, 0x26, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0x123C559, std::to_array<uint8_t>({0x41, 0x54, 0x4C, 0x8D, 0x25, 0x50, 0x7, 0x1F, 0x0, 0x4C, 0x87, 0x24, 0x24, 0xC3}));
|
|
|
|
|
ApplyPatch(base, 0x1257F13, std::to_array<uint8_t>({0x49, 0x8B, 0x7, 0x4C, 0x89, 0xF9, 0xE9, 0x42, 0x4D, 0x1D, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0x125BC41, std::to_array<uint8_t>({0x41, 0xF, 0xB7, 0x4F, 0x4E, 0x41, 0x55, 0x4C, 0x8D, 0x2D, 0x63, 0x42, 0x74, 0x4, 0x4C, 0x87, 0x2C, 0x24, 0xC3}));
|
|
|
|
|
ApplyPatch(base, 0x127E828, std::to_array<uint8_t>({0x48, 0x8B, 0x1, 0xE9, 0x30, 0xE5, 0x1A, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0x142CB30, std::to_array<uint8_t>({0xE9, 0x89, 0x1, 0xE7, 0x3}));
|
|
|
|
|
ApplyPatch(base, 0x142CB3E, std::to_array<uint8_t>({0xE9, 0x45, 0x18, 0xE0, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0x142CB62, std::to_array<uint8_t>({0xFF, 0x90, 0x68, 0x1, 0x0, 0x0, 0x90, 0xE9, 0x2B, 0x33, 0x55, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x142CB8F, std::to_array<uint8_t>({0xFF, 0x90, 0x98, 0x0, 0x0, 0x0, 0x90, 0xE9, 0xB5, 0x7F, 0x94, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0x142CBB8, std::to_array<uint8_t>({0xFF, 0x50, 0x30, 0x90, 0xEB, 0x80, 0xE8, 0xCD, 0x3A, 0xCC, 0xFE, 0x90, 0xE9, 0x7A, 0xC4, 0x2B, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x142CBD1, std::to_array<uint8_t>({0xFF, 0x90, 0xE0, 0x0, 0x0, 0x0, 0x89, 0xC6, 0xE8, 0xA2, 0xFC, 0xCF, 0xFE, 0x90, 0xE9, 0x65, 0xE8, 0x5C, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x142CC05, std::to_array<uint8_t>({0xE9, 0x0, 0x80, 0xA, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x142CC1E, std::to_array<uint8_t>({0xFF, 0x50, 0x50, 0x90, 0xE9, 0x98, 0x72, 0x54, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x142CC30, std::to_array<uint8_t>({0xFF, 0x52, 0x60, 0x90, 0xE9, 0xE2, 0x7C, 0x33, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x142CC3C, std::to_array<uint8_t>({0xFF, 0x90, 0xE0, 0x0, 0x0, 0x0, 0x90, 0xE9, 0x6F, 0x1C, 0x15, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x142CC53, std::to_array<uint8_t>({0xE8, 0x58, 0xEA, 0xFF, 0xFF, 0xEB, 0x70, 0xE9, 0xB4, 0xB2, 0xE2, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x142CC60, std::to_array<uint8_t>({0xFF, 0x90, 0x98, 0x0, 0x0, 0x0, 0x90, 0xE9, 0x30, 0x34, 0x8D, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0x142CC74, std::to_array<uint8_t>({0xFF, 0x50, 0x48, 0x90, 0xE9, 0x6A, 0xF, 0x8D, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0x142CC91, std::to_array<uint8_t>({0xFF, 0x55, 0x30, 0x90, 0xE9, 0xA0, 0x39, 0x3, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x142CCAF, std::to_array<uint8_t>({0xFF, 0x50, 0x30, 0x90, 0xE9, 0xB9, 0xCF, 0x3C, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x142CCC4, std::to_array<uint8_t>({0xFF, 0x92, 0x58, 0x1, 0x0, 0x0, 0x90, 0xE9, 0x35, 0xB3, 0xB4, 0xFF, 0xFF, 0x50, 0x60, 0x90, 0xE9, 0xA4, 0x7E, 0x29, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x142CD0F, std::to_array<uint8_t>({0xFF, 0x53, 0x8, 0x90, 0xE9, 0x59, 0x33, 0x62, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x142CD1C, std::to_array<uint8_t>({0xE8, 0x6F, 0x39, 0xCC, 0xFE, 0x90, 0xE9, 0xB7, 0x5F, 0xFC, 0x3}));
|
|
|
|
|
ApplyPatch(base, 0x142CD4D, std::to_array<uint8_t>({0xE9, 0xE0, 0x3E, 0x40, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x142CD60, std::to_array<uint8_t>({0xFF, 0x50, 0x8, 0x90, 0xE9, 0x1D, 0xE8, 0x3E, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x142CD7F, std::to_array<uint8_t>({0xFF, 0x50, 0x30, 0x90, 0xE9, 0x6, 0x6, 0x19, 0x4, 0xE9, 0x59, 0x94, 0x57, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x142CDA7, std::to_array<uint8_t>({0xE9, 0xFD, 0x68, 0xC3, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0x142CDED, std::to_array<uint8_t>({0xE9, 0x4F, 0xD6, 0x7E, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x142CDF7, std::to_array<uint8_t>({0xE8, 0x94, 0x38, 0xCC, 0xFE, 0x90, 0xEB, 0x89}));
|
|
|
|
|
ApplyPatch(base, 0x142CE01, std::to_array<uint8_t>({0xE8, 0x9A, 0xA0, 0x67, 0xFF, 0x90, 0xE9, 0xF8, 0xD5, 0x1F, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x142CE25, std::to_array<uint8_t>({0xEB, 0x80, 0xE9, 0x15, 0xEE, 0xE2, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x142CE69, std::to_array<uint8_t>({0xE9, 0xB8, 0xBC, 0xC7, 0xFE, 0xE9, 0x7E, 0x63, 0x55, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x142CE9B, std::to_array<uint8_t>({0xE8, 0xE0, 0xA3, 0xFF, 0xFF, 0x90, 0xE9, 0x26, 0xAA, 0x26, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x142CEB9, std::to_array<uint8_t>({0xE9, 0x1C, 0x5F, 0xEA, 0x3}));
|
|
|
|
|
ApplyPatch(base, 0x142CED0, std::to_array<uint8_t>({0xE8, 0x2B, 0x22, 0x0, 0x0, 0x90, 0xE9, 0xDE, 0xCA, 0xFB, 0x3}));
|
|
|
|
|
ApplyPatch(base, 0x142CEFC, std::to_array<uint8_t>({0xE8, 0x7F, 0xA3, 0xFF, 0xFF, 0x90, 0xE9, 0xD1, 0x83, 0x41, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x142CF0D, std::to_array<uint8_t>({0xE9, 0x7F, 0xA5, 0x57, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x142CF2E, std::to_array<uint8_t>({0xE9, 0x7F, 0xF2, 0x8E, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0x142CF3E, std::to_array<uint8_t>({0xE9, 0xF2, 0x98, 0xFF, 0xFE}));
|
|
|
|
|
ApplyPatch(base, 0x142CF44, std::to_array<uint8_t>({0xFF, 0x50, 0x50, 0x90, 0xE9, 0x6A, 0xBC, 0x5C, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x142CF50, std::to_array<uint8_t>({0xE9, 0x65, 0xEF, 0x4D, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x142CF56, std::to_array<uint8_t>({0xFF, 0x50, 0x50, 0x90, 0xE9, 0x3B, 0xCB, 0xFA, 0x3}));
|
|
|
|
|
ApplyPatch(base, 0x142CF87, std::to_array<uint8_t>({0xFF, 0x50, 0x20, 0x90, 0xEB, 0x80}));
|
|
|
|
|
ApplyPatch(base, 0x142CF90, std::to_array<uint8_t>({0xE9, 0x8C, 0x1, 0x7C, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0x142CF9B, std::to_array<uint8_t>({0xE8, 0x20, 0xA7, 0xFE, 0xFF, 0x90, 0xE9, 0xD2, 0xAA, 0x5C, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x142CFA9, std::to_array<uint8_t>({0xFF, 0x50, 0x40, 0x90, 0xE9, 0x2B, 0xB, 0xF3, 0x3}));
|
|
|
|
|
ApplyPatch(base, 0x142CFBD, std::to_array<uint8_t>({0xFF, 0x54, 0xC6, 0x70, 0x90, 0xE9, 0xCB, 0x9C, 0x30, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x142CFCA, std::to_array<uint8_t>({0xFF, 0x50, 0x20, 0x90, 0xEB, 0x80}));
|
|
|
|
|
ApplyPatch(base, 0x142CFD1, std::to_array<uint8_t>({0xE9, 0xAF, 0xDF, 0x1E, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x142CFD7, std::to_array<uint8_t>({0xFF, 0x50, 0x60, 0x90, 0xE9, 0x85, 0xA6, 0x7B, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0x142CFE8, std::to_array<uint8_t>({0xE8, 0x53, 0x0, 0x0, 0x0, 0x90, 0xE9, 0x53, 0xE4, 0x47, 0x4, 0xE9, 0x61, 0xF5, 0xE0, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x142CFFE, std::to_array<uint8_t>({0xFF, 0x90, 0x38, 0x2, 0x0, 0x0, 0x90, 0xEB, 0xEC}));
|
|
|
|
|
ApplyPatch(base, 0x142D009, std::to_array<uint8_t>({0xE9, 0xA6, 0xB0, 0x24, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0x142D010, std::to_array<uint8_t>({0xE8, 0xA7, 0xD5, 0xFE, 0x0, 0x90, 0xE9, 0xEC, 0x58, 0x29, 0x4, 0xE9, 0x1F, 0x32, 0x48, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x142D02F, std::to_array<uint8_t>({0xE8, 0xF0, 0xD5, 0xFE, 0x0, 0x90, 0xEB, 0xE4}));
|
|
|
|
|
ApplyPatch(base, 0x142D190, std::to_array<uint8_t>({0xE9, 0x87, 0x20, 0x61, 0x4, 0xE9, 0xEF, 0x84, 0xE7, 0xFE}));
|
|
|
|
|
ApplyPatch(base, 0x142D1BE, std::to_array<uint8_t>({0xE9, 0x50, 0x50, 0xE0, 0x0, 0xE9, 0x5A, 0xE8, 0x4E, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x142D1C9, std::to_array<uint8_t>({0xEB, 0xCA, 0xE9, 0xAC, 0x68, 0xE9, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0x142D1DE, std::to_array<uint8_t>({0xE9, 0x9F, 0xE8, 0x69, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0x142D1E4, std::to_array<uint8_t>({0xE9, 0x27, 0x62, 0x24, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x142D207, std::to_array<uint8_t>({0xE9, 0x65, 0xDE, 0x16, 0x4, 0xE9, 0x8F, 0x48, 0xFC, 0x3}));
|
|
|
|
|
ApplyPatch(base, 0x142D23A, std::to_array<uint8_t>({0xEB, 0x82}));
|
|
|
|
|
ApplyPatch(base, 0x142D23D, std::to_array<uint8_t>({0xE9, 0x70, 0x38, 0x18, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x142D25C, std::to_array<uint8_t>({0xE8, 0x6F, 0xA3, 0xFF, 0xFF, 0x90, 0xEB, 0x80}));
|
|
|
|
|
ApplyPatch(base, 0x142D272, std::to_array<uint8_t>({0xE8, 0x89, 0x1E, 0x0, 0x0, 0x90, 0xE9, 0x43, 0x9A, 0x8, 0x4, 0xE9, 0xE1, 0x19, 0xCE, 0xFE}));
|
|
|
|
|
ApplyPatch(base, 0x142D28E, std::to_array<uint8_t>({0xE8, 0x3D, 0xA3, 0xFF, 0xFF, 0x90, 0xE9, 0x3A, 0x14, 0xFB, 0x3}));
|
|
|
|
|
ApplyPatch(base, 0x142D2D5, std::to_array<uint8_t>({0xE9, 0xCE, 0xA1, 0x17, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x142D2F0, std::to_array<uint8_t>({0xFF, 0x90, 0x98, 0x0, 0x0, 0x0, 0x90, 0xEB, 0x84}));
|
|
|
|
|
ApplyPatch(base, 0x142FB71, std::to_array<uint8_t>({0xB8, 0x1, 0x0, 0x0, 0x0, 0xD3, 0xE0, 0x9, 0x46, 0x78, 0xE9, 0x55, 0xD7, 0xFF, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x1487620, std::to_array<uint8_t>({0xE9, 0x34, 0x77, 0xF6, 0x3}));
|
|
|
|
|
ApplyPatch(base, 0x1487644, std::to_array<uint8_t>({0xE8, 0x57, 0xC4, 0x0, 0x0, 0x90, 0xE9, 0xC9, 0xF6, 0x1, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x1487664, std::to_array<uint8_t>({0xE8, 0xB7, 0xEE, 0xFF, 0xFF, 0x90, 0xE9, 0x5F, 0x87, 0xE4, 0x3}));
|
|
|
|
|
ApplyPatch(base, 0x1487675, std::to_array<uint8_t>({0xE9, 0xD8, 0x33, 0x4D, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x1487682, std::to_array<uint8_t>({0xE8, 0xF9, 0x51, 0xCA, 0xFE, 0x90, 0xE9, 0xFD, 0xE, 0x89, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0x14876B4, std::to_array<uint8_t>({0xE8, 0x67, 0xEE, 0xFF, 0xFF, 0x90, 0xE9, 0xC0, 0x4A, 0xED, 0x3}));
|
|
|
|
|
ApplyPatch(base, 0x14876D5, std::to_array<uint8_t>({0xE9, 0x34, 0x51, 0x49, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x148770C, std::to_array<uint8_t>({0xE8, 0x9F, 0x30, 0x27, 0xFF, 0x90, 0xE9, 0x68, 0xAA, 0x49, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x148772F, std::to_array<uint8_t>({0xE9, 0x59, 0x4E, 0x41, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x1487738, std::to_array<uint8_t>({0xE9, 0x5E, 0x98, 0x4B, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x1487749, std::to_array<uint8_t>({0xE8, 0xD2, 0x94, 0x0, 0x0, 0xEB, 0x60, 0xE9, 0x64, 0xA5, 0x1A, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x148775B, std::to_array<uint8_t>({0xE9, 0xCA, 0x7, 0x75, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0x1487762, std::to_array<uint8_t>({0xE8, 0x79, 0xF9, 0x7F, 0x0, 0x90, 0xE9, 0x85, 0xE0, 0x3B, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x148778E, std::to_array<uint8_t>({0xE8, 0xED, 0x50, 0xCA, 0xFE, 0x90, 0xE9, 0x23, 0xA7, 0x12, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x14877A7, std::to_array<uint8_t>({0xE8, 0x44, 0xAB, 0x7F, 0x0, 0x90, 0xEB, 0x80}));
|
|
|
|
|
ApplyPatch(base, 0x14877B0, std::to_array<uint8_t>({0xE9, 0x60, 0xCA, 0xB, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x14877B8, std::to_array<uint8_t>({0xE9, 0xFF, 0xB5, 0x40, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x14877C6, std::to_array<uint8_t>({0xE9, 0xAE, 0x7A, 0x15, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x14877D2, std::to_array<uint8_t>({0xE9, 0xD6, 0x2, 0x1E, 0x4}));
|
|
|
|
|
ApplyPatch(base, 0x14B6441, std::to_array<uint8_t>({0x23, 0x46, 0x74, 0xF, 0x85, 0x7F, 0x6D, 0xF7, 0xFF, 0xE9, 0x74, 0x6D, 0xF7, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x16780B4, std::to_array<uint8_t>({0x48, 0x8D, 0xD, 0x3D, 0xE9, 0xE, 0x3, 0xE9, 0x50, 0x4F, 0xDB, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x1ACBA82, std::to_array<uint8_t>({0x80, 0xF9, 0xFF, 0xF, 0x84, 0x7C, 0x17, 0x96, 0xFF, 0xE9, 0xF3, 0x87, 0xDC, 0x3}));
|
|
|
|
|
ApplyPatch(base, 0x1BD7F2A, std::to_array<uint8_t>({0x48, 0x8B, 0x8E, 0x38, 0xAA, 0x0, 0x0, 0xE9, 0x2C, 0xF8, 0x8A, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x1BE7665, std::to_array<uint8_t>({0x45, 0xF, 0xB6, 0x45, 0x61, 0x48, 0x89, 0xC1, 0x4C, 0x89, 0xFA, 0x45, 0x31, 0xC9, 0xE9, 0x70, 0x59, 0x84, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x1BED121, std::to_array<uint8_t>({0x48, 0x89, 0xE9, 0x89, 0xDA, 0x41, 0x89, 0xF8, 0x41, 0xB1, 0x1, 0xE9, 0x6A, 0xFE, 0x83, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x1BF26A5, std::to_array<uint8_t>({0x41, 0x80, 0x7D, 0x61, 0xFF, 0xF, 0x84, 0x2, 0xA6, 0x83, 0xFF, 0xE9, 0xF4, 0x1D, 0xD9, 0x3}));
|
|
|
|
|
ApplyPatch(base, 0x1CEF549, std::to_array<uint8_t>({0x31, 0xDB, 0xE9, 0x40, 0xDA, 0x73, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x1CFDBE7, std::to_array<uint8_t>({0x48, 0x8B, 0x2E, 0x48, 0x8D, 0x15, 0xB8, 0x23, 0xAE, 0x0, 0x48, 0x8D, 0x3D, 0xF, 0x8, 0xAE, 0x0, 0x48, 0x89, 0xF1, 0x49, 0x89, 0xF8, 0x49, 0x89, 0xC1, 0xE9, 0x8B, 0xF0, 0x72, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x1D0009C, std::to_array<uint8_t>({0x49, 0x8B, 0xB6, 0x10, 0x27, 0x0, 0x0, 0x49, 0x8B, 0x45, 0x0, 0x4C, 0x89, 0xE9, 0xE9, 0xC5, 0xCB, 0x72, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x1D1858A, std::to_array<uint8_t>({0x8B, 0x8E, 0x64, 0xB4, 0x0, 0x0, 0x85, 0xC9, 0xF, 0x84, 0xB8, 0xF1, 0x76, 0xFF, 0xE9, 0x71, 0x9C, 0x5C, 0x3}));
|
|
|
|
|
ApplyPatch(base, 0x1D1C1B2, std::to_array<uint8_t>({0x80, 0xF9, 0xFF, 0xF, 0x84, 0x83, 0xD, 0x71, 0xFF, 0xE9, 0x5B, 0xA6, 0x9E, 0x3}));
|
|
|
|
|
ApplyPatch(base, 0x1D6E615, std::to_array<uint8_t>({0x48, 0x89, 0xF1, 0xE9, 0x27, 0x90, 0x71, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x1D74B50, std::to_array<uint8_t>({0x49, 0x8B, 0x86, 0x88, 0x7B, 0x0, 0x0, 0x48, 0x8B, 0x48, 0x8, 0x44, 0x8B, 0xD, 0x8E, 0x1E, 0x9F, 0x2, 0x48, 0x8B, 0x1, 0x48, 0x8D, 0x15, 0xEF, 0xE1, 0xA6, 0x0, 0x4C, 0x8D, 0x5, 0x92, 0x71, 0xA8, 0x0, 0xE9, 0x40, 0x80, 0x6B, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x1FB7762, std::to_array<uint8_t>({0x41, 0x57, 0x4C, 0x8D, 0x3D, 0x45, 0x0, 0x4D, 0xFF, 0x4C, 0x87, 0x3C, 0x24, 0xC3}));
|
|
|
|
|
ApplyPatch(base, 0x20636A9, std::to_array<uint8_t>({0x31, 0xED, 0xE9, 0x77, 0x97, 0x3C, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x222E388, std::to_array<uint8_t>({0x48, 0x89, 0xF9, 0xE9, 0x2E, 0xE8, 0x1F, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x2232213, std::to_array<uint8_t>({0x45, 0x31, 0xE4, 0xE9, 0x22, 0xB0, 0x1F, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x22C3A7C, std::to_array<uint8_t>({0x89, 0xF8, 0x48, 0x83, 0xC4, 0x28, 0x5B, 0x5D, 0x5F, 0x5E, 0x41, 0x5C, 0x41, 0x5D, 0x41, 0x5E, 0x41, 0x5F, 0x48, 0x8D, 0x64, 0x24, 0x8, 0xFF, 0x64, 0x24, 0xF8}));
|
|
|
|
|
ApplyPatch(base, 0x22C7118, std::to_array<uint8_t>({0xD3, 0xC0, 0x21, 0x46, 0x74, 0xF, 0xB6, 0x4B, 0x61, 0x81, 0xF9, 0xFF, 0x0, 0x0, 0x0, 0xF, 0x84, 0xA8, 0x61, 0x16, 0xFF, 0xE9, 0x3F, 0x8A, 0x16, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x529CCBE, std::to_array<uint8_t>({0x41, 0x57, 0x41, 0x56, 0x41, 0x55, 0x41, 0x54, 0x56, 0x57, 0x55, 0x53, 0x48, 0x83, 0xEC, 0x68, 0x4C, 0x89, 0xCF, 0x4D, 0x89, 0xC5, 0x49, 0x89, 0xD7, 0x49, 0x89, 0xCE, 0xC7, 0x44, 0x24, 0x54, 0x0, 0x0, 0x0, 0x0, 0x48, 0x8B, 0x2, 0x4C, 0x8D, 0x44, 0x24, 0x54, 0x48, 0x89, 0xD1, 0x4C, 0x89, 0xEA, 0xE9, 0x6D, 0xFE, 0x18, 0xFC}));
|
|
|
|
|
ApplyPatch(base, 0x52C5875, std::to_array<uint8_t>({0x48, 0x8D, 0xC, 0x49, 0x3, 0x84, 0x8B, 0x10, 0x1, 0x0, 0x0, 0x3B, 0x84, 0x8B, 0x14, 0x1, 0x0, 0x0, 0xF, 0x86, 0x60, 0x75, 0x16, 0xFC, 0xE9, 0x83, 0xB2, 0x85, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x52CFDCE, std::to_array<uint8_t>({0xC6, 0x86, 0x5C, 0xB4, 0x0, 0x0, 0x0, 0x41, 0x54, 0x4C, 0x8D, 0x25, 0xD2, 0x79, 0x1B, 0xFC, 0x4C, 0x87, 0x24, 0x24, 0xC3}));
|
|
|
|
|
ApplyPatch(base, 0x52D2DDA, std::to_array<uint8_t>({0x66, 0x44, 0x89, 0x44, 0x24, 0x4A, 0x66, 0x44, 0x89, 0x4C, 0x24, 0x4C, 0x89, 0xCE, 0x4C, 0x89, 0xE1, 0x49, 0x89, 0xD4, 0x4C, 0x89, 0xEA, 0xE9, 0xDA, 0xA0, 0x15, 0xFC}));
|
|
|
|
|
ApplyPatch(base, 0x52E220E, std::to_array<uint8_t>({0x83, 0xC8, 0x1, 0x2B, 0x86, 0x60, 0xB4, 0x0, 0x0, 0x39, 0xC8, 0xF, 0x86, 0x31, 0x55, 0x1A, 0xFC, 0xE9, 0x6C, 0xE6, 0x3C, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0x53302A7, std::to_array<uint8_t>({0x0, 0xC3, 0x34, 0x1, 0x0, 0xC2, 0xC0, 0xE2, 0x4, 0x8, 0xDA, 0x41, 0x88, 0x94, 0xF, 0x8C, 0x0, 0x0, 0x0, 0x52, 0x48, 0x8D, 0x15, 0xF0, 0xC9, 0xF, 0xFC, 0x48, 0x87, 0x14, 0x24, 0xC3}));
|
|
|
|
|
ApplyPatch(base, 0x535C17F, std::to_array<uint8_t>({0xC6, 0x86, 0x5C, 0xB4, 0x0, 0x0, 0x0, 0x40, 0xB7, 0x1, 0x83, 0xBE, 0x4C, 0xB4, 0x0, 0x0, 0x0, 0xF, 0x85, 0xC5, 0xB5, 0x12, 0xFC, 0xE9, 0xC7, 0xB5, 0xC5, 0xFC}));
|
|
|
|
|
ApplyPatch(base, 0x535DADD, std::to_array<uint8_t>({0x34, 0x1, 0xF, 0xB6, 0xC0, 0x48, 0x8B, 0x75, 0x0, 0x48, 0x89, 0xE9, 0x89, 0xFA, 0x41, 0x89, 0xD8, 0xE9, 0xCA, 0xF4, 0xC, 0xFC}));
|
|
|
|
|
ApplyPatch(base, 0x538BD20, std::to_array<uint8_t>({0x89, 0x1D, 0xCE, 0xAC, 0x3D, 0xFF, 0x48, 0x8D, 0xD, 0xCB, 0xAC, 0x3D, 0xFF, 0xE9, 0xFD, 0x12, 0xA, 0xFC}));
|
|
|
|
|
ApplyPatch(base, 0x53D9A9A, std::to_array<uint8_t>({0x41, 0xF, 0xB6, 0x7D, 0x61, 0xBA, 0xFE, 0xFF, 0xFF, 0xFF, 0x89, 0xF9, 0xD3, 0xC2, 0x48, 0x89, 0xC5, 0xF3, 0xF, 0x7E, 0x40, 0x8, 0x66, 0xF, 0x6E, 0xCA, 0x66, 0xF, 0x70, 0xC9, 0x50, 0x66, 0xF, 0xDB, 0xC8, 0x66, 0xF, 0xD6, 0x48, 0x8, 0x48, 0x8B, 0x0, 0x48, 0x89, 0xE9, 0xE9, 0xBA, 0x34, 0x5, 0xFC}));
|
|
|
|
|
ApplyPatch(base, 0x53DE6D3, std::to_array<uint8_t>({0xF, 0xB6, 0x4B, 0x61, 0x81, 0xF9, 0xFF, 0x0, 0x0, 0x0, 0xF, 0x84, 0xF2, 0xEB, 0x4, 0xFC, 0xE9, 0x3E, 0x42, 0x2E, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0x53E07A5, std::to_array<uint8_t>({0x48, 0x8B, 0xD, 0x1C, 0x62, 0x38, 0xFF, 0x48, 0x8B, 0xAC, 0xC1, 0x88, 0x1, 0x0, 0x0, 0x57, 0x48, 0x8D, 0x3D, 0x6B, 0xC6, 0x4, 0xFC, 0x48, 0x87, 0x3C, 0x24, 0xC3}));
|
|
|
|
|
ApplyPatch(base, 0x53E99B9, std::to_array<uint8_t>({0x89, 0x7B, 0x8, 0x8B, 0x44, 0x24, 0x50, 0x89, 0x44, 0x24, 0x30, 0x4C, 0x89, 0x64, 0x24, 0x28, 0x66, 0x89, 0x74, 0x24, 0x20, 0x48, 0x89, 0xD9, 0x48, 0x89, 0xEA, 0x44, 0xF, 0xB7, 0x44, 0x24, 0x4A, 0x44, 0xF, 0xB7, 0x4C, 0x24, 0x4C, 0xE9, 0x17, 0x35, 0x4, 0xFC}));
|
|
|
|
|
ApplyPatch(base, 0x53EED59, std::to_array<uint8_t>({0x56, 0x57, 0x53, 0x48, 0x83, 0xEC, 0x30, 0x48, 0x89, 0xCE, 0x48, 0x8B, 0x81, 0x48, 0xAA, 0x0, 0x0, 0x8B, 0x0, 0x83, 0xF8, 0x1, 0xF, 0x84, 0x0, 0x89, 0x9, 0xFC, 0xE9, 0x28, 0x56, 0xEC, 0xFA}));
|
|
|
|
|
ApplyPatch(base, 0x53F1AA0, std::to_array<uint8_t>({0x48, 0x8B, 0xAF, 0x88, 0x7B, 0x0, 0x0, 0x44, 0x8B, 0xB6, 0x88, 0x0, 0x0, 0x0, 0x44, 0xF, 0xB7, 0x7E, 0xA, 0xF, 0xB6, 0x46, 0x49, 0x48, 0x83, 0xF8, 0x1F, 0xF, 0x87, 0x79, 0xB7, 0x3, 0xFC, 0xE9, 0x22, 0x97, 0x40, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0x53F2CDE, std::to_array<uint8_t>({0x41, 0xF, 0xB6, 0x4D, 0x61, 0x48, 0x81, 0xF9, 0xFF, 0x0, 0x0, 0x0, 0xF, 0x84, 0x5D, 0xA0, 0x3, 0xFC, 0xE9, 0x80, 0x2B, 0xED, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x53FB5A8, std::to_array<uint8_t>({0x53, 0x48, 0x83, 0xEC, 0x28, 0x4C, 0x89, 0xC3, 0x48, 0x89, 0xD6, 0x48, 0x89, 0xCF, 0x41, 0xF, 0xB6, 0x48, 0x61, 0xB8, 0x1, 0x0, 0x0, 0x0, 0xD3, 0xE0, 0x48, 0x81, 0xF9, 0xFF, 0x0, 0x0, 0x0, 0xF, 0x84, 0xF4, 0x1B, 0x3, 0xFC, 0xE9, 0x6D, 0xAE, 0xB, 0xFC}));
|
|
|
|
|
ApplyPatch(base, 0x54327B6, std::to_array<uint8_t>({0x41, 0xF, 0xB6, 0x45, 0x60, 0x48, 0x69, 0xC0, 0xF0, 0xE, 0x0, 0x0, 0x49, 0x8D, 0x1C, 0x4, 0x48, 0x81, 0xC3, 0x50, 0xC1, 0x0, 0x0, 0x41, 0x8B, 0xBC, 0x4, 0x58, 0xC1, 0x0, 0x0, 0x8B, 0x5, 0x15, 0x42, 0x33, 0xFF, 0x85, 0xFF, 0x89, 0x74, 0x24, 0x50, 0xF, 0x84, 0x82, 0xA6, 0xFF, 0xFB, 0xE9, 0x49, 0xC4, 0x60, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0x546063A, std::to_array<uint8_t>({0x49, 0x8B, 0x8E, 0x10, 0x27, 0x0, 0x0, 0x48, 0x8B, 0x1, 0x48, 0x8D, 0x15, 0x81, 0x3E, 0x38, 0xFD, 0x4C, 0x8D, 0xD, 0x4, 0xC0, 0x3C, 0xFD, 0x49, 0x89, 0xF8, 0xE9, 0x55, 0xC6, 0xFC, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x54A6D18, std::to_array<uint8_t>({0x80, 0xBE, 0x5C, 0xB4, 0x0, 0x0, 0x0, 0xF, 0x84, 0x8B, 0xA, 0xFE, 0xFB, 0xE9, 0xEE, 0xE9, 0x32, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0x54B6CC0, std::to_array<uint8_t>({0xF, 0xB6, 0x43, 0x60, 0x48, 0x69, 0xC8, 0xF0, 0xE, 0x0, 0x0, 0x4C, 0x1, 0xE9, 0x4C, 0x89, 0xE2, 0x45, 0x89, 0xF8, 0x45, 0x89, 0xF1, 0xE9, 0xB2, 0x65, 0xF7, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x54D4C0A, std::to_array<uint8_t>({0x8B, 0x2D, 0xE4, 0x1D, 0x29, 0xFF, 0x89, 0xE8, 0xF7, 0xD8, 0x39, 0xEB, 0xF7, 0xD5, 0xF, 0x43, 0xE8, 0x1, 0xDD, 0x49, 0x8B, 0x7, 0x4C, 0x89, 0xF9, 0xE9, 0xF6, 0x7F, 0xF5, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x54DA064, std::to_array<uint8_t>({0x48, 0x89, 0xC1, 0x48, 0xD1, 0xE9, 0x41, 0xF, 0xB6, 0x94, 0xF, 0x8C, 0x0, 0x0, 0x0, 0x89, 0xD3, 0x80, 0xE3, 0xF, 0xC0, 0xEA, 0x4, 0x31, 0xED, 0x80, 0xFB, 0xF, 0x40, 0xF, 0x95, 0xC5, 0x31, 0xFF, 0x80, 0xFA, 0xF, 0x40, 0xF, 0x95, 0xC7, 0x83, 0xE0, 0x1, 0xF, 0x44, 0xEF, 0x40, 0x80, 0xFD, 0x1, 0xF, 0x85, 0x15, 0x2C, 0xF5, 0xFB, 0xE9, 0x5, 0x62, 0xE5, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x54EA113, std::to_array<uint8_t>({0xBA, 0x1, 0x0, 0x0, 0x0, 0x41, 0x89, 0xF0, 0x4D, 0x89, 0xF9, 0xE9, 0xEC, 0x2B, 0xF4, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x5544215, std::to_array<uint8_t>({0x48, 0x83, 0xC4, 0x30, 0x5B, 0x5F, 0x5E, 0x48, 0x8D, 0x64, 0x24, 0x8, 0xFF, 0x64, 0x24, 0xF8}));
|
|
|
|
|
ApplyPatch(base, 0x555DDC8, std::to_array<uint8_t>({0x8D, 0x51, 0x1, 0x89, 0x96, 0x28, 0xE6, 0x2, 0x0, 0x48, 0x89, 0x84, 0xCE, 0xD8, 0xE5, 0x2, 0x0, 0xE9, 0x5A, 0x99, 0xF2, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x557E8B7, std::to_array<uint8_t>({0xC6, 0x44, 0x24, 0x20, 0x1, 0x48, 0x89, 0xD9, 0x4C, 0x89, 0xFA, 0x41, 0x89, 0xC0, 0x41, 0x89, 0xE9, 0xE9, 0x86, 0xE3, 0xEA, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x5589F12, std::to_array<uint8_t>({0x8B, 0x8E, 0x28, 0xE6, 0x2, 0x0, 0x48, 0x83, 0xF9, 0xE, 0xF, 0x87, 0x16, 0xD8, 0xEF, 0xFB, 0xE9, 0xA1, 0x3E, 0xFD, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x5598973, std::to_array<uint8_t>({0x48, 0x8B, 0x52, 0x8, 0x48, 0x8B, 0x18, 0x88, 0x4C, 0x24, 0x38, 0x48, 0x89, 0x54, 0x24, 0x30, 0x89, 0x6C, 0x24, 0x28, 0x48, 0x89, 0x7C, 0x24, 0x20, 0x48, 0xC7, 0x44, 0x24, 0x40, 0x0, 0x0, 0x0, 0x0, 0x48, 0x89, 0xC1, 0x57, 0x48, 0x8D, 0x3D, 0x73, 0x17, 0xF5, 0xFF, 0x48, 0x87, 0x3C, 0x24, 0xC3}));
|
|
|
|
|
ApplyPatch(base, 0x559B071, std::to_array<uint8_t>({0x45, 0x84, 0xC9, 0xF, 0x84, 0x4F, 0x21, 0xE9, 0xFB, 0xE9, 0x8D, 0x21, 0xE9, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x55A74A8, std::to_array<uint8_t>({0x48, 0x8B, 0x87, 0x88, 0x7B, 0x0, 0x0, 0x40, 0xB7, 0x1, 0x48, 0x83, 0x78, 0x8, 0x0, 0xF, 0x84, 0xE, 0x5D, 0xE8, 0xFB, 0xE9, 0xC3, 0x8E, 0xC1, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x55B0AB2, std::to_array<uint8_t>({0xF, 0xB6, 0x43, 0x60, 0x48, 0x69, 0xC0, 0xF0, 0xE, 0x0, 0x0, 0x48, 0x8D, 0xC, 0x28, 0x48, 0x81, 0xC1, 0x50, 0xC1, 0x0, 0x0, 0x4C, 0x89, 0xE2, 0x45, 0x89, 0xF8, 0x45, 0x89, 0xF1, 0xE9, 0x86, 0xC7, 0xE7, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x55B1EBC, std::to_array<uint8_t>({0x83, 0xC8, 0x1, 0x2B, 0x86, 0x54, 0xB4, 0x0, 0x0, 0x39, 0xD8, 0xF, 0x86, 0xE3, 0x58, 0xED, 0xFB, 0xE9, 0xA2, 0x49, 0xFD, 0xFA}));
|
|
|
|
|
ApplyPatch(base, 0x55BD38E, std::to_array<uint8_t>({0x66, 0x41, 0x83, 0x7F, 0xA, 0x0, 0xF, 0x84, 0x18, 0xF9, 0xE6, 0xFB, 0xE9, 0x54, 0xD6, 0x43, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0x55DF279, std::to_array<uint8_t>({0x48, 0x83, 0xC4, 0x30, 0x5B, 0x5F, 0x5E, 0x56, 0x48, 0x8D, 0x35, 0x98, 0x72, 0xEA, 0xFB, 0x48, 0x87, 0x34, 0x24, 0xC3}));
|
|
|
|
|
ApplyPatch(base, 0x562A404, std::to_array<uint8_t>({0x48, 0x89, 0xC2, 0x41, 0xF, 0xB6, 0x47, 0x49, 0x48, 0x83, 0xF8, 0x1F, 0xF, 0x87, 0xF, 0x2A, 0xE0, 0xFB, 0xE9, 0x8A, 0x63, 0xDB, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x5631CB9, std::to_array<uint8_t>({0x31, 0xFF, 0x83, 0xBE, 0x4C, 0xB4, 0x0, 0x0, 0x0, 0xF, 0x84, 0xE8, 0x5A, 0xE5, 0xFB, 0xE9, 0x8E, 0x5A, 0xE5, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x5662C13, std::to_array<uint8_t>({0x8B, 0x86, 0x5C, 0xB5, 0x2, 0x0, 0x48, 0x69, 0xC0, 0xD0, 0x4, 0x0, 0x0, 0x48, 0x8D, 0xC, 0x6, 0x48, 0x81, 0xC1, 0x38, 0xB6, 0x2, 0x0, 0x48, 0x8D, 0x54, 0x24, 0x28, 0xE9, 0xD7, 0x4A, 0xE2, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x5667AAD, std::to_array<uint8_t>({0x31, 0xC0, 0x80, 0xBE, 0xFC, 0xAC, 0x0, 0x0, 0x0, 0xF, 0x94, 0xC0, 0xB9, 0x0, 0x0, 0x50, 0x10, 0x41, 0xB8, 0x0, 0x50, 0x10, 0x10, 0x44, 0xF, 0x44, 0xC1, 0x8D, 0x14, 0xC5, 0x4, 0x0, 0x0, 0x0, 0x48, 0x89, 0xF1, 0x41, 0x52, 0x4C, 0x8D, 0x15, 0xEB, 0xFC, 0xE1, 0xFB, 0x4C, 0x87, 0x14, 0x24, 0xC3}));
|
|
|
|
|
ApplyPatch(base, 0x5673410, std::to_array<uint8_t>({0x84, 0xC0, 0xF, 0x85, 0x7B, 0x9E, 0xDB, 0xFB, 0xE9, 0xDD, 0x48, 0x0, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0x5677CFA, std::to_array<uint8_t>({0x4C, 0x8D, 0xAD, 0x50, 0xC1, 0x0, 0x0, 0x48, 0x89, 0xE9, 0x48, 0x89, 0xDA, 0xE9, 0x66, 0x55, 0xDB, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x56978CC, std::to_array<uint8_t>({0xF, 0xB7, 0x4C, 0x24, 0x4E, 0x45, 0x89, 0xE0, 0x41, 0x89, 0xF1, 0x48, 0x8B, 0x54, 0x24, 0x58, 0x4C, 0x8B, 0x64, 0x24, 0x60, 0x84, 0xC0, 0xF, 0x85, 0x18, 0x56, 0xD9, 0xFB, 0xE9, 0xCB, 0x55, 0xD9, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x56B0890, std::to_array<uint8_t>({0x48, 0x89, 0xF1, 0xBA, 0x6, 0x0, 0x0, 0x0, 0x41, 0xB8, 0x0, 0x30, 0x50, 0x10, 0xE9, 0x11, 0x6E, 0xDD, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x56C2907, std::to_array<uint8_t>({0x83, 0x3D, 0xEA, 0x40, 0xA, 0xFF, 0xFF, 0xF, 0x85, 0xF1, 0xA2, 0xD6, 0xFB, 0xE9, 0x7, 0x94, 0xCC, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x56C2926, std::to_array<uint8_t>({0xB8, 0xFE, 0xFF, 0xFF, 0xFF, 0xD3, 0xC0, 0x21, 0x46, 0x70, 0xB8, 0xFE, 0xFF, 0xFF, 0xFF, 0xF, 0xB6, 0x4B, 0x61, 0x81, 0xF9, 0xFF, 0x0, 0x0, 0x0, 0xF, 0x84, 0x90, 0xA9, 0xD6, 0xFB, 0xE9, 0xCE, 0x47, 0xC0, 0xFC}));
|
|
|
|
|
ApplyPatch(base, 0x56C4B7D, std::to_array<uint8_t>({0x41, 0xF, 0xB6, 0x4D, 0x61, 0x41, 0x54, 0x4C, 0x8D, 0x25, 0xB3, 0x45, 0x1D, 0x0, 0x4C, 0x87, 0x24, 0x24, 0xC3}));
|
|
|
|
|
ApplyPatch(base, 0x56CAB0E, std::to_array<uint8_t>({0x41, 0x55, 0x4C, 0x8D, 0x2D, 0xA2, 0x23, 0xD6, 0xFB, 0x4C, 0x87, 0x2C, 0x24, 0xC3}));
|
|
|
|
|
ApplyPatch(base, 0x570681B, std::to_array<uint8_t>({0xB8, 0x1, 0x0, 0x0, 0x0, 0xD3, 0xE0, 0x41, 0x9, 0x47, 0x74, 0xE9, 0x13, 0x67, 0xD2, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x576491B, std::to_array<uint8_t>({0x48, 0x89, 0xC3, 0x49, 0x8B, 0x7, 0x4C, 0x89, 0xF9, 0xE9, 0x13, 0x83, 0xCC, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x57D5718, std::to_array<uint8_t>({0x48, 0x89, 0xF1, 0xBA, 0x6, 0x0, 0x0, 0x0, 0x41, 0xB8, 0x0, 0x30, 0x50, 0x10, 0xE9, 0x39, 0x1F, 0xCB, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x57F9C71, std::to_array<uint8_t>({0x48, 0x83, 0xC4, 0x68, 0x5B, 0x5D, 0x5F, 0x5E, 0x41, 0x5C, 0x41, 0x5D, 0x41, 0x5E, 0x41, 0x5F, 0x48, 0x8D, 0x64, 0x24, 0x8, 0xFF, 0x64, 0x24, 0xF8}));
|
|
|
|
|
ApplyPatch(base, 0x57FB1E8, std::to_array<uint8_t>({0x48, 0x8B, 0xD, 0xD9, 0xB7, 0xF6, 0xFE, 0x4C, 0x8B, 0xA4, 0xC1, 0x88, 0x1, 0x0, 0x0, 0x41, 0x54, 0x4C, 0x8D, 0x25, 0x3D, 0x20, 0xC3, 0xFB, 0x4C, 0x87, 0x24, 0x24, 0xC3}));
|
|
|
|
|
ApplyPatch(base, 0x581B586, std::to_array<uint8_t>({0x49, 0x8B, 0x86, 0x88, 0x7B, 0x0, 0x0, 0x48, 0x8B, 0x48, 0x8, 0x48, 0x8B, 0x1, 0x48, 0x8D, 0x15, 0x46, 0xF6, 0xFF, 0xFC, 0x4C, 0x8D, 0x5, 0x5D, 0x1, 0xFD, 0xFC, 0xE9, 0xD8, 0x17, 0xC1, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x5830C32, std::to_array<uint8_t>({0x49, 0x8B, 0x86, 0x88, 0x7B, 0x0, 0x0, 0x48, 0x8B, 0x48, 0x8, 0x48, 0x85, 0xC9, 0xF, 0x84, 0x3C, 0xC1, 0xBF, 0xFB, 0xE9, 0xDD, 0xDB, 0xA4, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x58452D8, std::to_array<uint8_t>({0x41, 0xF, 0xB6, 0x4D, 0x61, 0x83, 0xF9, 0x1F, 0xF, 0x87, 0x48, 0x7C, 0xBE, 0xFB, 0xE9, 0x6F, 0xA9, 0x4, 0x0}));
|
|
|
|
|
ApplyPatch(base, 0x58457F2, std::to_array<uint8_t>({0x8B, 0x8E, 0x4C, 0xB4, 0x0, 0x0, 0xF3, 0x48, 0xF, 0x2A, 0xC1, 0xF3, 0xF, 0x59, 0x86, 0x50, 0xB4, 0x0, 0x0, 0xF3, 0x48, 0xF, 0x2C, 0xD8, 0x84, 0xC0, 0xF, 0x44, 0xD9, 0x85, 0xDB, 0xF, 0x94, 0xC0, 0x40, 0x8, 0xC7, 0xF, 0x85, 0x93, 0x1F, 0xC4, 0xFB, 0xE9, 0x6C, 0x1F, 0xC4, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x588FC5A, std::to_array<uint8_t>({0x48, 0x89, 0xC8, 0x48, 0xD1, 0xE8, 0xF6, 0xC1, 0x1, 0xB9, 0xF, 0x0, 0x0, 0x0, 0xBA, 0xF0, 0x0, 0x0, 0x0, 0xF, 0x44, 0xD1, 0x41, 0x20, 0x94, 0x7, 0x8C, 0x0, 0x0, 0x0, 0x41, 0xF, 0xB6, 0x4D, 0x61, 0xE9, 0xAC, 0xD2, 0xB9, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x5892DBC, std::to_array<uint8_t>({0x48, 0x89, 0xF1, 0xBA, 0x6, 0x0, 0x0, 0x0, 0x41, 0xB8, 0x0, 0x0, 0x30, 0x10, 0xE9, 0xF7, 0x49, 0xBF, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x5894283, std::to_array<uint8_t>({0x48, 0x8B, 0x87, 0x90, 0x7B, 0x0, 0x0, 0x48, 0x8D, 0xC, 0x49, 0x8B, 0x94, 0x88, 0x10, 0x1, 0x0, 0x0, 0x83, 0xC2, 0x12, 0x3B, 0x94, 0x88, 0x14, 0x1, 0x0, 0x0, 0xF, 0x86, 0x67, 0x8F, 0xB9, 0xFB, 0xE9, 0x3B, 0xBB, 0x30, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x589913E, std::to_array<uint8_t>({0x49, 0x8B, 0x96, 0x88, 0x7B, 0x0, 0x0, 0x41, 0x54, 0x4C, 0x8D, 0x25, 0x25, 0xF8, 0xCF, 0xFF, 0x4C, 0x87, 0x24, 0x24, 0xC3}));
|
|
|
|
|
ApplyPatch(base, 0x589C58D, std::to_array<uint8_t>({0x84, 0xC0, 0xF, 0x84, 0x3D, 0xB2, 0xBE, 0xFB, 0xE9, 0x16, 0xB2, 0xBE, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x58AB446, std::to_array<uint8_t>({0x49, 0x8B, 0x86, 0x88, 0x7B, 0x0, 0x0, 0x48, 0x8B, 0x50, 0x8, 0x49, 0x8B, 0x7, 0x4C, 0x89, 0xF9, 0xE9, 0xA2, 0x1B, 0xB8, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x58B023F, std::to_array<uint8_t>({0x51, 0x48, 0x8D, 0xD, 0xBE, 0xC9, 0xB7, 0xFB, 0x48, 0x87, 0xC, 0x24, 0xC3}));
|
|
|
|
|
ApplyPatch(base, 0x590BEBA, std::to_array<uint8_t>({0x39, 0xC3, 0xF, 0x82, 0xCE, 0x10, 0xB2, 0xFB, 0xE9, 0xA, 0x11, 0xB2, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x591BA22, std::to_array<uint8_t>({0x80, 0x7E, 0x4A, 0xFF, 0xF, 0x84, 0xB2, 0x17, 0xB1, 0xFB, 0xE9, 0x98, 0x17, 0xB1, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x591C80E, std::to_array<uint8_t>({0xF, 0xB6, 0x86, 0xFC, 0xAC, 0x0, 0x0, 0x89, 0xC1, 0x80, 0xF1, 0x1, 0x88, 0x8E, 0x8C, 0xE8, 0x1, 0x0, 0x84, 0xC0, 0xF, 0x84, 0x90, 0xAF, 0xB6, 0xFB, 0xE9, 0xE6, 0x63, 0xD4, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x592217F, std::to_array<uint8_t>({0x48, 0x8B, 0x44, 0x24, 0x28, 0x48, 0x85, 0xC0, 0xF, 0x84, 0xAB, 0x55, 0xB6, 0xFB, 0xE9, 0x80, 0x7D, 0xC6, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x5940F9B, std::to_array<uint8_t>({0x8B, 0x96, 0x5C, 0xB5, 0x2, 0x0, 0xFF, 0xC2, 0x89, 0x96, 0x5C, 0xB5, 0x2, 0x0, 0x48, 0x89, 0xF1, 0xE9, 0x98, 0x67, 0xB4, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x595AA52, std::to_array<uint8_t>({0x80, 0xBE, 0x5C, 0xB4, 0x0, 0x0, 0x0, 0xF, 0x84, 0xF1, 0xCC, 0xB2, 0xFB, 0xE9, 0x1E, 0xCC, 0xB2, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x5973EBF, std::to_array<uint8_t>({0x49, 0x8B, 0x17, 0x4C, 0x89, 0xF9, 0x48, 0x85, 0xC0, 0xF, 0x84, 0xF6, 0x8D, 0xAB, 0xFB, 0xE9, 0x5D, 0x8D, 0xAB, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x597FE99, std::to_array<uint8_t>({0x84, 0xC0, 0xF, 0x84, 0xB9, 0xCD, 0xAA, 0xFB, 0xE9, 0xFF, 0x27, 0x27, 0xFC}));
|
|
|
|
|
ApplyPatch(base, 0x59831F1, std::to_array<uint8_t>({0x8B, 0x44, 0x24, 0x50, 0x89, 0x44, 0x24, 0x30, 0x48, 0x89, 0x54, 0x24, 0x28, 0x66, 0x89, 0x4C, 0x24, 0x20, 0x66, 0x89, 0x4C, 0x24, 0x4E, 0x48, 0x89, 0xD9, 0x4C, 0x89, 0x64, 0x24, 0x60, 0x48, 0x89, 0x54, 0x24, 0x58, 0x48, 0x89, 0xEA, 0x56, 0x48, 0x8D, 0x35, 0x55, 0x5D, 0xD6, 0xFA, 0x48, 0x87, 0x34, 0x24, 0xC3}));
|
|
|
|
|
ApplyPatch(base, 0x59844A9, std::to_array<uint8_t>({0x49, 0x8B, 0x86, 0x88, 0x7B, 0x0, 0x0, 0x48, 0x83, 0x78, 0x8, 0x0, 0xF, 0x84, 0x0, 0x87, 0xAA, 0xFB, 0xE9, 0x25, 0xCC, 0x40, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x599FEB2, std::to_array<uint8_t>({0x45, 0xF, 0xB7, 0x47, 0x8, 0x45, 0xF, 0xB7, 0x4F, 0xA, 0x41, 0x55, 0x4C, 0x8D, 0x2D, 0xF1, 0x28, 0xA9, 0xFF, 0x4C, 0x87, 0x2C, 0x24, 0xC3}));
|
|
|
|
|
ApplyPatch(base, 0x59A7491, std::to_array<uint8_t>({0x85, 0xC0, 0xF, 0x84, 0x38, 0x5B, 0xA8, 0xFB, 0xE9, 0xAB, 0x80, 0x34, 0xFC}));
|
|
|
|
|
ApplyPatch(base, 0x59F7A78, std::to_array<uint8_t>({0x48, 0x8B, 0x45, 0x0, 0x48, 0x89, 0xE9, 0x89, 0xDA, 0xE9, 0x23, 0x55, 0xA3, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x59F8BB7, std::to_array<uint8_t>({0x48, 0x85, 0xC0, 0xF, 0x84, 0x2D, 0x44, 0xA3, 0xFB, 0xE9, 0x0, 0x77, 0xB1, 0xFA}));
|
|
|
|
|
ApplyPatch(base, 0x59FA9F3, std::to_array<uint8_t>({0x41, 0xF, 0xB6, 0x45, 0x61, 0x83, 0xF8, 0x1F, 0xF, 0x87, 0xB1, 0x22, 0xA3, 0xFB, 0xE9, 0x5E, 0xF6, 0xAD, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x59FB449, std::to_array<uint8_t>({0x89, 0xC3, 0x8B, 0x5, 0xA7, 0xB5, 0xD6, 0xFE, 0x8B, 0xD, 0xC1, 0xC0, 0x49, 0xFD, 0x65, 0x48, 0x8B, 0x14, 0x25, 0x58, 0x0, 0x0, 0x0, 0x48, 0x8B, 0xC, 0xCA, 0x3B, 0x81, 0x34, 0x6, 0x0, 0x0, 0xF, 0x8F, 0x99, 0x1B, 0xA3, 0xFB, 0xE9, 0x90, 0x17, 0xA3, 0xFB}));
|
|
|
|
|
ApplyPatch(base, 0x5A3EC35, std::to_array<uint8_t>({0x39, 0xC7, 0xF, 0x84, 0x31, 0xE2, 0x9E, 0xFB, 0xE9, 0xCC, 0xBE, 0xC8, 0xFF}));
|
|
|
|
|
ApplyPatch(base, 0x5A3F21C, std::to_array<uint8_t>({0x41, 0x57, 0x41, 0x56, 0x41, 0x55, 0x41, 0x54, 0x56, 0x57, 0x55, 0x41, 0x52, 0x4C, 0x8D, 0x15, 0x78, 0xC3, 0x9B, 0xFF, 0x4C, 0x87, 0x14, 0x24, 0xC3}));
|
|
|
|
|
ApplyPatch(base, 0x5A50071, std::to_array<uint8_t>({0x49, 0x8B, 0x9E, 0x90, 0x7B, 0x0, 0x0, 0x48, 0x89, 0xF9, 0xE9, 0x9C, 0xCC, 0x9D, 0xFB}));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static bool CheckForFSL()
|
|
|
|
|
{
|
|
|
|
|
int num_versions = 0;
|
|
|
|
@@ -95,16 +323,24 @@ namespace YimMenu
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
#if !RESTORE_DESTROYED_FUNCTIONS
|
|
|
|
|
LOGF(FATAL, "YimMenu requires FSL to be loaded. Please get it from UnknownCheats.me");
|
|
|
|
|
#endif
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (m_BattlEyeRunning)
|
|
|
|
|
LOGF(WARNING, "If you are not running an actual BattlEye bypass, exit the game immediately and ensure that BE is properly disabled");
|
|
|
|
|
|
|
|
|
|
#if 0
|
|
|
|
|
if (!m_FSLProvidesBEBypass && !m_BattlEyeRunning)
|
|
|
|
|
{
|
|
|
|
|
Pointers.BattlEyeStatusUpdatePatch->Apply();
|
|
|
|
|
|
|
|
|
|
#if RESTORE_DESTROYED_FUNCTIONS
|
|
|
|
|
uintptr_t base = ModuleMgr.Get("GTA5_Enhanced.exe"_J)->Base();
|
|
|
|
|
PatchEncryptedFunctions(base);
|
|
|
|
|
PatchDestroyedFunctions(base);
|
|
|
|
|
#endif
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
while (true)
|
|
|
|
|
{
|
|
|
|
|