Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- namespace offsets
- {
- DWORD WEAPONCOMPLETEDEFS_OFFSET = 0x12EC3870;
- DWORD GameMode_PTR_OFFSET = 0x15973AE8;
- DWORD NO_RECOIL_OFFSET = 0x877F4;
- namespace character
- {
- DWORD decrypt_client_PosInfo = 0x6C8;
- DWORD clientinfo_t_stance = 0xC08;
- DWORD clientinfo_t_weapon = 0xBCE;
- DWORD clientinfo_t_entitynum = 0xBF4;
- DWORD clientinfo_t_idead = 0xD28;
- DWORD clientinfo_t_team = 0x530;
- DWORD clientinfo_t_isvalid = 0x450;
- DWORD clientinfo_t_deadv1 = 0xA90;
- }
- namespace bone
- {
- DWORD ENCRYPT_PTR_OFFSET = 0x13D30808;
- DWORD REVERSED_ADDRESS = 0x5A681D1;
- DWORD LastKey_XOR = 0xb;
- DWORD INDEX_ARRAY_OFFSET = 0x5A72CA0; // CHECK
- DWORD BONE_BASE_POS = 0x3E57C;
- DWORD Bone_Size = 0x150;
- }
- namespace Character_Info
- {
- DWORD ENCRYPT_PTR_OFFSET = 0x15c53618;
- DWORD REVERSED_ADDRESS = 0x5A680DF;
- DWORD LastKey_XOR = 0x5;
- DWORD BASE_OFFSET = 0x97c88;
- DWORD BASE_REVERSED_ADDRESS = 0x5A6810E;
- DWORD BASE_LastKey_XOR = 0x19;
- DWORD LOCAL_INDEX_OFFSET = 0x15854;
- DWORD clientinfo_t_size = 0x3A88;
- }
- namespace visibility
- {
- DWORD FunctionDisTribute = 0x92F9000;
- DWORD AboutVisibleFunction = 0x4A91E30;
- DWORD ListHead = 0x108;
- }
- namespace camera
- {
- DWORD CAMERA_OFFSET = 0x12DC4FB0;
- DWORD CAMER_POS = 0x1D8;
- DWORD REFDEF_OFFSET_2 = 0x15C55F40; //0x523027E0
- }
- namespace name
- {
- DWORD NAME_ARRAY_OFFSET = 0x15C61068;
- DWORD NAME_LIST_OFFSET = 0x4C70; //
- }
- namespace direcX
- {
- DWORD command_queue = 0x17629BA8;
- }
- }
- QWORD DecryptClientInfo()
- {
- QWORD encrypted_address = Read<QWORD>(baseModuleAddr + offsets::Character_Info::ENCRYPT_PTR_OFFSET);
- if (encrypted_address)
- {
- QWORD rax, rbx = encrypted_address, rcx, r8, rdx, r9;
- QWORD reversedAddr = Read<QWORD>(baseModuleAddr + offsets::Character_Info::REVERSED_ADDRESS);
- QWORD LastKey = Read<QWORD>(_byteswap_uint64(reversedAddr) + offsets::Character_Info::LastKey_XOR);
- if (encrypted_address && LastKey)
- {
- QWORD rdx = Peb;
- rcx = (baseModuleAddr + 0xD5);
- rcx = LastKey;
- rax = 0xC79E1907DF695F2F;
- rcx *= rbx;
- rcx *= rax;
- rax = 0x65A04A8446991181;
- rcx -= baseModuleAddr;
- rcx ^= rax;
- rax = (baseModuleAddr + 0x3F85940E);
- rbx = rcx;
- rdx ^= rax;
- rbx >>= 0x28;
- rbx ^= rcx;
- rbx -= rdx;
- return rbx;
- }
- }
- return 0;
- }
- QWORD DecryptBaseIns()
- {
- QWORD encrypted_address;
- QWORD peb = Peb;
- encrypted_address = Read<QWORD>(Settings::ClientInfoPointer + offsets::Character_Info::BASE_OFFSET);
- if (encrypted_address)
- {
- QWORD reversedAddr = Read<QWORD>(baseModuleAddr + offsets::Character_Info::BASE_REVERSED_ADDRESS);
- QWORD last_key = Read<QWORD>(~(reversedAddr)+offsets::Character_Info::BASE_LastKey_XOR);
- if (encrypted_address && last_key)
- {
- auto rax = encrypted_address;
- QWORD rcx, rdx, rbx, rsi, r8, r9, r10, r11 = Peb, r12, r13, r14, r15 = 0;
- Settings::ClientBaseCase = _rotr64(peb, 0xe) & 0xF;
- switch (Settings::ClientBaseCase)
- {
- case 0:
- {
- rbx = (baseModuleAddr + 0xA1D);
- rax ^= r11;
- rcx = rax;
- rcx >>= 0x12;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x24;
- rax ^= rcx;
- rcx = baseModuleAddr;
- rax ^= rcx;
- rax ^= r11;
- rcx = 0x54EB1CB9B8FC9134;
- rax ^= rcx;
- rcx = 0xB1DCCBD569E5DEEB;
- rax *= rcx;
- rcx = 0x3D6BF46704D9020C;
- rax -= rcx;
- rax *= last_key;
- return rax;
- break;
- }
- case 1:
- {
- rbx = (baseModuleAddr + 0xA1D);
- rcx = rax;
- rcx >>= 0x1B;
- rax ^= rcx;
- rdx = rax;
- rdx >>= 0x36;
- rcx = (baseModuleAddr + 0x28DF);
- rdx ^= rax;
- rax = r11;
- rcx = (~rcx);
- rax = (~rax);
- rax += rdx;
- rdx = (baseModuleAddr + 0x5779DE6F);
- rax += rcx;
- rax *= last_key;
- rcx = r11;
- rcx *= rdx;
- rax += rcx;
- rcx = 0xE81D09195A37FDBB;
- rax *= rcx;
- rcx = 0x4C810B1C6A032987;
- rax -= rcx;
- rcx = rax;
- rcx >>= 0x1C;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x38;
- rax ^= rcx;
- rcx = 0x4B993D71F365D23E;
- rax -= rcx;
- return rax;
- break;
- }
- case 2:
- {
- rbx = (baseModuleAddr + 0xA1D);
- r14 = (baseModuleAddr + 0x4877DE69);
- r9 = Read<QWORD>(baseModuleAddr + 0x5A6810E);
- rcx = r14;
- rcx = (~rcx);
- rcx ^= r11;
- rax -= rcx;
- rcx = 0xEF069FF72852AEC3;
- rax *= rcx;
- rcx = 0xD7E5AE83AD4CF6B5;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0xF;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x1E;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x3C;
- rax ^= rcx;
- rcx = last_key;
- rcx *= 0x5F6ABA1EE90B3E0D;
- rax *= rcx;
- return rax;
- break;
- }
- case 3:
- {
- rbx = (baseModuleAddr + 0xA1D);
- rcx = r11;
- rcx = (~rcx);
- rax ^= rcx;
- rcx = r11;
- rcx ^= rax;
- rax = last_key;
- rax *= rcx;
- rcx = rax;
- rcx >>= 0x23;
- rax ^= rcx;
- rcx = 0xF0990856EAB1F26F;
- rax *= rcx;
- rcx = baseModuleAddr;
- rax -= rcx;
- rcx = rax;
- rcx >>= 0xB;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x16;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x2C;
- rax ^= rcx;
- return rax;
- break;
- }
- case 4:
- {
- rbx = (baseModuleAddr + 0xA1D);
- r9 = Read<QWORD>(baseModuleAddr + 0x5A6810E);
- rcx = baseModuleAddr;
- rax += rcx;
- rcx = rax;
- rcx >>= 0x23;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x1D;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x3A;
- rax ^= rcx;
- rax *= last_key;
- rax += r11;
- rcx = 0x1E6405474A6E726B;
- rax *= rcx;
- rcx = 0xDF76F6E890CF20E4;
- rax ^= rcx;
- rcx = 0x4390039F6C65BF8D;
- rax *= rcx;
- return rax;
- break;
- }
- case 5:
- {
- rbx = (baseModuleAddr + 0xA1D);
- rsi = (baseModuleAddr + 0x71BD);
- r9 = Read<QWORD>(baseModuleAddr + 0x5A6810E);
- rax *= last_key;
- rcx = r11;
- rcx ^= rsi;
- rax += rcx;
- rax ^= r11;
- rcx = 0x6E9743ADD6B5156B;
- rax *= rcx;
- rax -= r11;
- rcx = 0x99A03A07B36316B7;
- rax *= rcx;
- rcx = 0xC0FD419E20A7EBBB;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x16;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x2C;
- rax ^= rcx;
- return rax;
- break;
- }
- case 6:
- {
- rbx = (baseModuleAddr + 0xA1D);
- rdx = r11;
- rax *= last_key;
- rcx = (baseModuleAddr + 0x7DA2);
- rdx ^= rcx;
- rcx = rax;
- rax = baseModuleAddr;
- rax ^= rcx;
- rcx = baseModuleAddr;
- rax += rdx;
- rax -= rcx;
- rcx = 0xB248EE775179486F;
- rax *= rcx;
- rcx = rax;
- rcx >>= 0xD;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x1A;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x34;
- rax ^= rcx;
- rcx = 0xEBB4D600CF6B9EF1;
- rax *= rcx;
- rcx = 0xA8653D968B9E473C;
- rax ^= rcx;
- return rax;
- break;
- }
- case 7:
- {
- r10 = Read<QWORD>(baseModuleAddr + 0x5A6810E);
- rbx = (baseModuleAddr + 0xA1D);
- rcx = baseModuleAddr;
- rax -= rcx;
- rcx = rax;
- rcx >>= 0xC;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x18;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x30;
- rax ^= rcx;
- rcx = last_key;
- rax *= rcx;
- rcx = baseModuleAddr;
- rax += rcx;
- rcx = 0xE45933D7567921D;
- rax *= rcx;
- rdx = r11;
- rcx = (baseModuleAddr + 0x6293);
- rcx = (~rcx);
- rdx = (~rdx);
- rdx *= rcx;
- rcx = 0x31D2F7378F11ED19;
- rax += rdx;
- rax *= rcx;
- return rax;
- break;
- }
- case 8:
- {
- rbx = (baseModuleAddr + 0xA1D);
- rcx = (baseModuleAddr + 0x474B);
- rcx -= r11;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x5;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0xA;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x14;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x28;
- rax ^= rcx;
- rdx = r11;
- rcx = 0x632AEF1E85A30916;
- rdx *= rcx;
- rcx = rax;
- rax = 0x4E6A8870BD2E7B75;
- rax *= rcx;
- rax += rdx;
- rcx = rax;
- rax = 0xEA3A3F24269A44C5;
- rcx ^= rax;
- rax = last_key;
- rax *= rcx;
- rcx = 0x423CA6BD05DEBB27;
- rax *= rcx;
- return rax;
- break;
- }
- case 9:
- {
- r10 = Read<QWORD>(baseModuleAddr + 0x5A6810E);
- rbx = (baseModuleAddr + 0xA1D);
- rcx = baseModuleAddr;
- rax -= rcx;
- rax *= last_key;
- rcx = rax;
- rcx >>= 0x20;
- rax ^= rcx;
- rcx = baseModuleAddr;
- rax ^= rcx;
- rcx = 0xE02392C3D5C5EA19;
- rax ^= rcx;
- rcx = 0xB9AF2B37E4D46225;
- rax *= rcx;
- rsi = baseModuleAddr;
- rcx = 0xE9760871A7B870F7;
- rax += rcx;
- rax += rsi;
- return rax;
- break;
- }
- case 10:
- {
- rbx = (baseModuleAddr + 0xA1D);
- r10 = Read<QWORD>(baseModuleAddr + 0x5A6810E);
- rcx = baseModuleAddr;
- rax -= rcx;
- rcx = rax;
- rcx >>= 0x1C;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x38;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x6;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0xC;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x18;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x30;
- rax ^= rcx;
- rcx = 0x2D5ED98E884BBAB;
- rax *= rcx;
- rcx = rax;
- rcx >>= 0x1D;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x3A;
- rax ^= rcx;
- rcx = rax;
- rax = 0x61F9C894C00628E5;
- rcx ^= rax;
- rax = last_key;
- rax *= rcx;
- rcx = 0x5E0BBA5D7BBDB2D0;
- rax += rcx;
- return rax;
- break;
- }
- case 11:
- {
- rbx = (baseModuleAddr + 0xA1D);
- r10 = Read<QWORD>(baseModuleAddr + 0x5A6810E);
- rcx = rax;
- rcx >>= 0x5;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0xA;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x14;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x28;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x7;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0xE;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x1C;
- rax ^= rcx;
- rdx = rax;
- rdx >>= 0x38;
- rdx ^= rax;
- rax = (baseModuleAddr + 0x55C7AEFF);
- rax ^= r11;
- rax += rdx;
- rcx = (baseModuleAddr + 0xA53E);
- rcx = (~rcx);
- rcx *= r11;
- rax ^= rcx;
- rax *= last_key;
- rcx = baseModuleAddr;
- rax += rcx;
- rcx = rax;
- rcx >>= 0x27;
- rax ^= rcx;
- rcx = 0x8B69AF24CF2C048F;
- rax *= rcx;
- return rax;
- break;
- }
- case 12:
- {
- rbx = (baseModuleAddr + 0xA1D);
- rax *= last_key;
- rcx = rax;
- rcx >>= 0x28;
- rax ^= rcx;
- rcx = 0x542A3801F8234833;
- rax *= rcx;
- rcx = rax;
- rcx >>= 0x15;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x2A;
- rax ^= rcx;
- rcx = (baseModuleAddr + 0x323F9C6E);
- rax += r11;
- rax += rcx;
- rcx = rax;
- rcx >>= 0x2;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x4;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x8;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x10;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x20;
- rax ^= rcx;
- rcx = baseModuleAddr;
- rax += rcx;
- rcx = (baseModuleAddr + 0x4335);
- rcx = (~rcx);
- rax ^= rcx;
- rax ^= r11;
- return rax;
- break;
- }
- case 13:
- {
- rbx = (baseModuleAddr + 0xA1D);
- r9 = Read<QWORD>(baseModuleAddr + 0x5A6810E);
- rax *= last_key;
- rcx = rax;
- rcx >>= 0x8;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x10;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x20;
- rax ^= rcx;
- rax ^= r11;
- rcx = rax;
- rcx >>= 0x1C;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x38;
- rax ^= rcx;
- rcx = 0xF3D730CE7C958BE7;
- rax *= rcx;
- rax += r11;
- rax ^= r11;
- rcx = 0x772BADCF0F2129C0;
- rax ^= rcx;
- return rax;
- break;
- }
- case 14:
- {
- rbx = (baseModuleAddr + 0xA1D);
- rdx = (baseModuleAddr + 0xBF78);
- r10 = Read<QWORD>(baseModuleAddr + 0x5A6810E);
- rcx = rax;
- rcx >>= 0x10;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x20;
- rax ^= rcx;
- rcx = rdx;
- rcx = (~rcx);
- rcx *= r11;
- rax ^= rcx;
- rcx = 0x4E30AF313534F67C;
- rax -= rcx;
- rcx = rax;
- rcx >>= 0x18;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x30;
- rax ^= rcx;
- rax *= last_key;
- rcx = baseModuleAddr;
- rax ^= rcx;
- rcx = 0xE7E866292043EB56;
- rax ^= rcx;
- rcx = 0x7D0D23B3A4BD5345;
- rax *= rcx;
- return rax;
- break;
- }
- case 15:
- {
- rbx = (baseModuleAddr + 0xA1D);
- r10 = Read<QWORD>(baseModuleAddr + 0x5A6810E);
- rcx = rax;
- rcx >>= 0x1;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x2;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x4;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x8;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x10;
- rax ^= rcx;
- rcx = rax;
- rcx >>= 0x20;
- rax ^= rcx;
- rax += r11;
- rcx = rax;
- rcx >>= 0x24;
- rax ^= rcx;
- rcx = 0x75A6E1B45C7B5DD1;
- rax ^= rcx;
- rcx = last_key;
- rcx *= 0xC8116D78DA458B5;
- rax *= rcx;
- rcx = baseModuleAddr;
- rax -= rcx;
- rcx = 0x5EB55724B30DE7A;
- rax += rcx;
- return rax;
- break;
- }
- }
RAW Paste Data