1. public const ulong BonesBasePos = 0x95434;
    2. public const ulong BonesEncryptedPtr = 0x155A7FE8;
    3. public const ulong BonesSizeStruct = 0x150;
    4. public const ulong CameraOffset = 0x14417F80;
    5. public const ulong CameraPos = 0x1D8;
    6. public const ulong ClientBase_Dead1 = 0x36F0;
    7. public const ulong ClientBase_Dead2 = 0x39B8;
    8. public const ulong ClientBase_PosPtr = 0x448;
    9. public const ulong ClientBase_Size = 0x3AA8;
    10. public const ulong ClientBase_Stance = 0x2F6C;
    11. public const ulong ClientBase_TeamId = 0x2DF4;
    12. public const ulong ClientBase_Valid = 0x488;
    13. public const ulong ClientBase_WeaponIndex = 0x3D8;
    14. public const ulong ClientBaseEncryptedPtr = 0x9DBF8;
    15. public const ulong ClientInfoEncryptedPtr = 0x17219218;
    16. public const ulong LocalIndexOffset = 0x38C00;
    17. public const ulong NameArrayOffset = 0x17226E58;
    18. public const ulong NameListOffset = 0x4C70;
    19. public const ulong NoRecoilOffset = 0x24CEC;
    20. public const ulong RefDefEncryptedPtr = 0x1721BBB0;
    21. public const ulong Weapon_Definition = 0x144EB300;
    1. uint64_t DecryptClientInfo(uint64_t enc_client)
    2. {
    3. uint64_t rax, rbx, rcx, rdx, r8, rbp = 0;
    4. rbx = enc_client;
    5. if (!rbx)
    6. return 0;
    7. r8 = No_Define::BaseAddress;
    8. rcx = No_Define::PEB;
    9. rcx = ~rcx;
    10. rax = driver::read<uint64_t>(rbp + 0xf8); if (!rax) rax = No_Define::BaseAddress;
    11. rdx = No_Define::BaseAddress + 0xF45;
    12. rax -= rdx;
    13. rdx = 0x6D70CEFD9593A4F9;
    14. rax = 0;
    15. rax <<= 0x10;
    16. rax ^= driver::read<uint64_t>(No_Define::BaseAddress + 0x660310D);
    17. rax = _byteswap_uint64(rax);
    18. rbx *= driver::read<uint64_t>(rax + 0x17);
    19. rax = rbx;
    20. rax >>= 0x24;
    21. rbx ^= rax;
    22. rax = 0x3938DE18C6D75C93;
    23. rbx *= rdx;
    24. rbx += rax;
    25. rbx ^= rcx;
    26. rbx ^= r8;
    27. return rbx;
    28. }
    29. uint64_t DecryptClientBase(uint64_t encrypted_clientbase)
    30. {
    31. uint64_t rax, rbx, rcx, rdx, r8, rdi, r9, r10, r11, r12, r13, r14, r15, rsi, rsp, rbp = 0;
    32. rax = encrypted_clientbase;
    33. if (!rax)
    34. return 0;
    35. rbx = No_Define::PEB;
    36. rcx = rbx;
    37. rcx >>= 0xF;
    38. rcx &= 0xF;
    39. switch (rcx)
    40. {
    41. case 0:
    42. {
    43. rdi = (No_Define::BaseAddress + 0x2A1);
    44. r14 = (No_Define::BaseAddress + 0x3C431634);
    45. r10 = driver::read<uint64_t>(No_Define::BaseAddress + 0x6603146);
    46. rcx = 0x2C52EE7E5CA1CE96;
    47. rax -= rcx;
    48. rcx = driver::read<uint64_t>(rbp + 0xf8); if (!rcx) rcx = No_Define::BaseAddress;
    49. rcx -= rdi;
    50. rcx = 0;
    51. rcx <<= 0x10;
    52. rcx ^= r10;
    53. rcx = (~rcx);
    54. rax *= driver::read<uint64_t>(rcx + 0x9);
    55. rcx = rbx;
    56. rcx ^= r14;
    57. rax -= rcx;
    58. rax += rbx;
    59. rcx = rax;
    60. rcx >>= 0x14;
    61. rax ^= rcx;
    62. rcx = rax;
    63. rcx >>= 0x28;
    64. rax ^= rcx;
    65. rax += rbx;
    66. rcx = 0x9C83A6ED81709013;
    67. rax *= rcx;
    68. rcx = 0x709DC8ADED0BA319;
    69. rax += rcx;
    70. return rax;
    71. }
    72. case 1:
    73. {
    74. rdi = (No_Define::BaseAddress + 0x2A1);
    75. r9 = driver::read<uint64_t>(No_Define::BaseAddress + 0x6603146);
    76. rcx = 0x1A69AD46E3A25C75;
    77. rax -= rcx;
    78. rcx = rax;
    79. rcx >>= 0xC;
    80. rax ^= rcx;
    81. rcx = rax;
    82. rcx >>= 0x18;
    83. rax ^= rcx;
    84. rcx = rax;
    85. rcx >>= 0x30;
    86. rcx ^= rbx;
    87. rax ^= rcx;
    88. rcx = 0x6ECEBD9C03D02936;
    89. rax -= rcx;
    90. rcx = No_Define::BaseAddress;
    91. rax += rcx;
    92. rcx = driver::read<uint64_t>(rbp + 0xf8); if (!rcx) rcx = No_Define::BaseAddress;
    93. rcx -= rdi;
    94. rcx = 0;
    95. rcx <<= 0x10;
    96. rcx ^= r9;
    97. rcx = (~rcx);
    98. rcx = driver::read<uint64_t>(rcx + 0x9);
    99. rcx *= 0x3CE1F452114BE5D;
    100. rax *= rcx;
    101. rax += rbx;
    102. return rax;
    103. }
    104. case 2:
    105. {
    106. rdi = (No_Define::BaseAddress + 0x2A1);
    107. r11 = (No_Define::BaseAddress + 0xAE07);
    108. rdx = driver::read<uint64_t>(No_Define::BaseAddress + 0x6603146);
    109. rax += rbx;
    110. rcx = rax;
    111. rcx >>= 0x13;
    112. rax ^= rcx;
    113. rcx = rax;
    114. rcx >>= 0x26;
    115. rax ^= rcx;
    116. rcx = 0x337FEE03C131D861;
    117. rax ^= rcx;
    118. rcx = 0xBCA9BFAF51DA6757;
    119. rax *= rcx;
    120. rcx = 0x5434E82D28CC28F9;
    121. rax -= rcx;
    122. rcx = driver::read<uint64_t>(rbp + 0xf8); if (!rcx) rcx = No_Define::BaseAddress;
    123. rcx -= rdi;
    124. rcx = 0;
    125. rcx <<= 0x10;
    126. rcx ^= rdx;
    127. rcx = (~rcx);
    128. rax *= driver::read<uint64_t>(rcx + 0x9);
    129. rcx = No_Define::BaseAddress;
    130. rax -= rcx;
    131. rax += 0xFFFFFFFFE2253F2C;
    132. rax += rbx;
    133. rcx = r11;
    134. rcx = (~rcx);
    135. rcx += rbx;
    136. rax ^= rcx;
    137. return rax;
    138. }
    139. case 3:
    140. {
    141. r10 = driver::read<uint64_t>(No_Define::BaseAddress + 0x6603146);
    142. rdi = (No_Define::BaseAddress + 0x2A1);
    143. r15 = (No_Define::BaseAddress + 0x576A2168);
    144. rcx = driver::read<uint64_t>(rbp + 0xf8); if (!rcx) rcx = No_Define::BaseAddress;
    145. rcx -= rdi;
    146. rcx = 0;
    147. rcx <<= 0x10;
    148. rcx ^= r10;
    149. rcx = (~rcx);
    150. rcx = driver::read<uint64_t>(rcx + 0x9);
    151. rcx *= 0x8035B07E6320667D;
    152. rax *= rcx;
    153. rcx = rbx;
    154. rcx *= r15;
    155. rcx ^= rbx;
    156. rax ^= rcx;
    157. rcx = No_Define::BaseAddress;
    158. rax -= rbx;
    159. rax -= rcx;
    160. rax -= 0x31E8;
    161. rcx = rax;
    162. rcx >>= 0x1;
    163. rax ^= rcx;
    164. rcx = rax;
    165. rcx >>= 0x2;
    166. rax ^= rcx;
    167. rcx = rax;
    168. rcx >>= 0x4;
    169. rax ^= rcx;
    170. rcx = rax;
    171. rcx >>= 0x8;
    172. rax ^= rcx;
    173. rcx = rax;
    174. rcx >>= 0x10;
    175. rax ^= rcx;
    176. rcx = rax;
    177. rcx >>= 0x20;
    178. rax ^= rcx;
    179. rcx = rax;
    180. rcx >>= 0x4;
    181. rax ^= rcx;
    182. rcx = rax;
    183. rcx >>= 0x8;
    184. rax ^= rcx;
    185. rcx = rax;
    186. rcx >>= 0x10;
    187. rax ^= rcx;
    188. rcx = rax;
    189. rcx >>= 0x20;
    190. rax ^= rcx;
    191. rcx = rax;
    192. rcx >>= 0x1E;
    193. rax ^= rcx;
    194. rcx = rax;
    195. rcx >>= 0x3C;
    196. rax ^= rcx;
    197. return rax;
    198. }
    199. case 4:
    200. {
    201. rdi = (No_Define::BaseAddress + 0x2A1);
    202. r9 = driver::read<uint64_t>(No_Define::BaseAddress + 0x6603146);
    203. rcx = No_Define::BaseAddress;
    204. rcx += 0x281F;
    205. rcx += rbx;
    206. rax ^= rcx;
    207. rcx = 0xDF286BBF83F616D1;
    208. rax *= rcx;
    209. rcx = rax;
    210. rcx >>= 0x8;
    211. rax ^= rcx;
    212. rcx = rax;
    213. rcx >>= 0x10;
    214. rax ^= rcx;
    215. rcx = rax;
    216. rcx >>= 0x20;
    217. rax ^= rcx;
    218. rcx = No_Define::BaseAddress;
    219. rax ^= rcx;
    220. rax -= rcx;
    221. rax += 0xFFFFFFFFE4385B97;
    222. rax += rbx;
    223. rcx = driver::read<uint64_t>(rbp + 0xf8); if (!rcx) rcx = No_Define::BaseAddress;
    224. rcx -= rdi;
    225. rcx = 0;
    226. rcx <<= 0x10;
    227. rcx ^= r9;
    228. rcx = (~rcx);
    229. rax *= driver::read<uint64_t>(rcx + 0x9);
    230. rcx = 0x4A4FFCF706C23293;
    231. rax -= rcx;
    232. rcx = rax;
    233. rcx >>= 0x22;
    234. rax ^= rcx;
    235. return rax;
    236. }
    237. case 5:
    238. {
    239. r10 = driver::read<uint64_t>(No_Define::BaseAddress + 0x6603146);
    240. rdi = (No_Define::BaseAddress + 0x2A1);
    241. rcx = (No_Define::BaseAddress + 0x9128);
    242. rcx -= rbx;
    243. rax += rcx;
    244. rdx = driver::read<uint64_t>(rbp + 0xf8); if (!rdx) rdx = No_Define::BaseAddress;
    245. rdx -= rdi;
    246. rcx = rax;
    247. rcx >>= 0x26;
    248. rdx = 0;
    249. rcx ^= rax;
    250. rdx <<= 0x10;
    251. rcx -= rbx;
    252. rdx ^= r10;
    253. rdx = (~rdx);
    254. rax = driver::read<uint64_t>(rdx + 0x9);
    255. rax *= rcx;
    256. rcx = 0x347EE6669F93372E;
    257. rax -= rcx;
    258. rcx = 0xCC4AC21D5E07EAFD;
    259. rax *= rcx;
    260. rcx = No_Define::BaseAddress;
    261. rax -= rcx;
    262. rax += 0xFFFFFFFFC0A98326;
    263. rax += rbx;
    264. rcx = 0x25D8C69821A4B1C1;
    265. rax *= rcx;
    266. return rax;
    267. }
    268. case 6:
    269. {
    270. r10 = driver::read<uint64_t>(No_Define::BaseAddress + 0x6603146);
    271. rdi = (No_Define::BaseAddress + 0x2A1);
    272. rcx = No_Define::BaseAddress;
    273. rax -= rcx;
    274. rax += 0xFFFFFFFFFFFF0A85;
    275. rax += rbx;
    276. rcx = 0xDD3029A8BCE8D4D;
    277. rax *= rcx;
    278. rdx = driver::read<uint64_t>(rbp + 0xf8); if (!rdx) rdx = No_Define::BaseAddress;
    279. rdx -= rdi;
    280. rdx = 0;
    281. rdx <<= 0x10;
    282. rcx = 0xFCFBF307C71E86A5;
    283. rax ^= rcx;
    284. rdx ^= r10;
    285. rcx = No_Define::BaseAddress;
    286. rdx = (~rdx);
    287. rax -= rcx;
    288. rcx = rbx + 0xffffffffffff06ff;
    289. rcx += rax;
    290. rax = (No_Define::BaseAddress + 0x48A8C848);
    291. rax = (~rax);
    292. rax *= rbx;
    293. rcx ^= rax;
    294. rax = driver::read<uint64_t>(rdx + 0x9);
    295. rax *= rcx;
    296. rcx = rax;
    297. rcx >>= 0x24;
    298. rax ^= rcx;
    299. rcx = 0x2F5690490931B637;
    300. rax *= rcx;
    301. return rax;
    302. }
    303. case 7:
    304. {
    305. rdi = (No_Define::BaseAddress + 0x2A1);
    306. r14 = (No_Define::BaseAddress + 0x2491D7D9);
    307. r9 = driver::read<uint64_t>(No_Define::BaseAddress + 0x6603146);
    308. rcx = 0x635E4B2FC3D0A10D;
    309. rax *= rcx;
    310. rcx = r14;
    311. rcx = (~rcx);
    312. rcx ^= rbx;
    313. rax += rcx;
    314. rcx = 0x51256D5DC16562EC;
    315. rax ^= rcx;
    316. rcx = rax;
    317. rcx >>= 0x6;
    318. rax ^= rcx;
    319. rcx = rax;
    320. rcx >>= 0xC;
    321. rax ^= rcx;
    322. rcx = rax;
    323. rcx >>= 0x18;
    324. rax ^= rcx;
    325. rcx = rax;
    326. rcx >>= 0x30;
    327. rax ^= rcx;
    328. rcx = rbx;
    329. rcx *= No_Define::BaseAddress + 0x5E98C991;
    330. rax += rcx;
    331. rcx = No_Define::BaseAddress;
    332. rax -= rcx;
    333. rcx = rax;
    334. rcx >>= 0xC;
    335. rax ^= rcx;
    336. rcx = rax;
    337. rcx >>= 0x18;
    338. rax ^= rcx;
    339. rcx = rax;
    340. rcx >>= 0x30;
    341. rax ^= rcx;
    342. rcx = driver::read<uint64_t>(rbp + 0xf8); if (!rcx) rcx = No_Define::BaseAddress;
    343. rcx -= rdi;
    344. rcx = 0;
    345. rcx <<= 0x10;
    346. rcx ^= r9;
    347. rcx = (~rcx);
    348. rax *= driver::read<uint64_t>(rcx + 0x9);
    349. return rax;
    350. }
    351. case 8:
    352. {
    353. r10 = driver::read<uint64_t>(No_Define::BaseAddress + 0x6603146);
    354. rdi = (No_Define::BaseAddress + 0x2A1);
    355. rdx = driver::read<uint64_t>(rbp + 0xf8); if (!rdx) rdx = No_Define::BaseAddress;
    356. rdx -= rdi;
    357. rdx = 0;
    358. rdx <<= 0x10;
    359. rdx ^= r10;
    360. rcx = 0xF9180DCDF5F228B4;
    361. rcx += rax;
    362. rdx = (~rdx);
    363. rax = driver::read<uint64_t>(rdx + 0x9);
    364. rax *= rcx;
    365. rax += rbx;
    366. rcx = rax;
    367. rcx >>= 0x5;
    368. rax ^= rcx;
    369. rcx = rax;
    370. rcx >>= 0xA;
    371. rax ^= rcx;
    372. rcx = rax;
    373. rcx >>= 0x14;
    374. rax ^= rcx;
    375. rcx = rax;
    376. rcx >>= 0x28;
    377. rax ^= rcx;
    378. rcx = No_Define::BaseAddress;
    379. rax ^= rcx;
    380. rcx = 0xEE1131A827DCAA68;
    381. rax -= rbx;
    382. rax ^= rcx;
    383. rcx = 0xB6B2FC7C21D1D489;
    384. rax *= rcx;
    385. return rax;
    386. }
    387. case 9:
    388. {
    389. rdi = (No_Define::BaseAddress + 0x2A1);
    390. r15 = (No_Define::BaseAddress + 0x74E0B964);
    391. r10 = driver::read<uint64_t>(No_Define::BaseAddress + 0x6603146);
    392. rax += rbx;
    393. rcx = (No_Define::BaseAddress + 0x2E0E6E37);
    394. rax += rcx;
    395. rcx = 0xFA547910F03B3987;
    396. rax *= rcx;
    397. rcx = (No_Define::BaseAddress + 0x91DC);
    398. rcx = (~rcx);
    399. rcx *= rbx;
    400. rax ^= rcx;
    401. rcx = rax;
    402. rcx >>= 0x2;
    403. rax ^= rcx;
    404. rcx = rax;
    405. rcx >>= 0x4;
    406. rax ^= rcx;
    407. rcx = rax;
    408. rcx >>= 0x8;
    409. rax ^= rcx;
    410. rcx = rax;
    411. rcx >>= 0x10;
    412. rax ^= rcx;
    413. rcx = rax;
    414. rcx >>= 0x20;
    415. rax ^= rcx;
    416. rcx = rax;
    417. rcx >>= 0xB;
    418. rax ^= rcx;
    419. rcx = rax;
    420. rcx >>= 0x16;
    421. rax ^= rcx;
    422. rcx = rax;
    423. rcx >>= 0x2C;
    424. rax ^= rcx;
    425. rcx = No_Define::BaseAddress;
    426. rax ^= rcx;
    427. rcx = driver::read<uint64_t>(rbp + 0xf8); if (!rcx) rcx = No_Define::BaseAddress;
    428. rcx -= rdi;
    429. rcx = 0;
    430. rcx <<= 0x10;
    431. rcx ^= r10;
    432. rcx = (~rcx);
    433. rax *= driver::read<uint64_t>(rcx + 0x9);
    434. rcx = r15;
    435. rcx = (~rcx);
    436. rcx ^= rbx;
    437. rax += rcx;
    438. return rax;
    439. }
    440. case 10:
    441. {
    442. rdi = (No_Define::BaseAddress + 0x2A1);
    443. r10 = driver::read<uint64_t>(No_Define::BaseAddress + 0x6603146);
    444. rcx = rax;
    445. rcx >>= 0x1B;
    446. rax ^= rcx;
    447. rcx = rax;
    448. rcx >>= 0x36;
    449. rax ^= rcx;
    450. rcx = rax;
    451. rcx >>= 0x22;
    452. rcx ^= rbx;
    453. rax ^= rcx;
    454. rcx = rax;
    455. rcx >>= 0x15;
    456. rax ^= rcx;
    457. rcx = rax;
    458. rcx >>= 0x2A;
    459. rax ^= rcx;
    460. rcx = driver::read<uint64_t>(rbp + 0xf8); if (!rcx) rcx = No_Define::BaseAddress;
    461. rcx -= rdi;
    462. rcx = 0;
    463. rcx <<= 0x10;
    464. rcx ^= r10;
    465. rcx = (~rcx);
    466. rax *= driver::read<uint64_t>(rcx + 0x9);
    467. rcx = 0x5D93FBAC7F625877;
    468. rax *= rcx;
    469. rcx = 0x52B757443CDBD28B;
    470. rax += rcx;
    471. rcx = 0x5E17A54EAA80B6A5;
    472. rax *= rcx;
    473. return rax;
    474. }
    475. case 11:
    476. {
    477. r10 = driver::read<uint64_t>(No_Define::BaseAddress + 0x6603146);
    478. rdi = (No_Define::BaseAddress + 0x2A1);
    479. rcx = 0x4041D2698092818B;
    480. rax *= rcx;
    481. rcx = 0x6E7B1B11ABDFF2FA;
    482. rax ^= rcx;
    483. rdx = driver::read<uint64_t>(rbp + 0xf8); if (!rdx) rdx = No_Define::BaseAddress;
    484. rdx -= rdi;
    485. rdx = 0;
    486. rdx <<= 0x10;
    487. rcx = rbx + rax;
    488. rdx ^= r10;
    489. rdx = (~rdx);
    490. rax = driver::read<uint64_t>(rdx + 0x9);
    491. rax *= rcx;
    492. rcx = rax;
    493. rcx >>= 0x14;
    494. rax ^= rcx;
    495. rcx = rax;
    496. rcx >>= 0x28;
    497. rax ^= rcx;
    498. rcx = rax;
    499. rcx >>= 0x6;
    500. rax ^= rcx;
    501. rcx = rax;
    502. rcx >>= 0xC;
    503. rax ^= rcx;
    504. rcx = rax;
    505. rcx >>= 0x18;
    506. rax ^= rcx;
    507. rcx = rax;
    508. rcx >>= 0x30;
    509. rax ^= rcx;
    510. rcx = 0x40077D00487E24C2;
    511. rax += rcx;
    512. rax -= rbx;
    513. return rax;
    514. }
    515. case 12:
    516. {
    517. r9 = driver::read<uint64_t>(No_Define::BaseAddress + 0x6603146);
    518. rdi = (No_Define::BaseAddress + 0x2A1);
    519. r11 = (No_Define::BaseAddress + 0x1263);
    520. rcx = 0xA8101149FD4CA7C3;
    521. rax *= rcx;
    522. r15 = 0x4EC0B4781CB32BBF;
    523. rcx = rbx;
    524. rcx = (~rcx);
    525. rcx *= r11;
    526. rcx += r15;
    527. rax += rcx;
    528. rcx = driver::read<uint64_t>(rbp + 0xf8); if (!rcx) rcx = No_Define::BaseAddress;
    529. rcx -= rdi;
    530. rcx = 0;
    531. rcx <<= 0x10;
    532. rcx ^= r9;
    533. rcx = (~rcx);
    534. rax *= driver::read<uint64_t>(rcx + 0x9);
    535. rcx = rax;
    536. rcx >>= 0x1E;
    537. rax ^= rcx;
    538. rcx = rax;
    539. rcx >>= 0x3C;
    540. rax ^= rcx;
    541. rax ^= rbx;
    542. rcx = 0x4E80F1A0C98C468;
    543. rax += rcx;
    544. rax -= rbx;
    545. return rax;
    546. }
    547. case 13:
    548. {
    549. r10 = driver::read<uint64_t>(No_Define::BaseAddress + 0x6603146);
    550. rdi = (No_Define::BaseAddress + 0x2A1);
    551. r11 = (No_Define::BaseAddress + 0x6267F8D9);
    552. rcx = driver::read<uint64_t>(rbp + 0xf8); if (!rcx) rcx = No_Define::BaseAddress;
    553. rcx -= rdi;
    554. rcx = 0;
    555. rcx <<= 0x10;
    556. rcx ^= r10;
    557. rcx = (~rcx);
    558. rcx = driver::read<uint64_t>(rcx + 0x9);
    559. rax *= rcx;
    560. rcx = 0x87FBBF81F585A7F5;
    561. rax *= rcx;
    562. rcx = No_Define::BaseAddress;
    563. rax += rcx;
    564. rcx = rbx + rax;
    565. rax = 0xE2DF381128AD7D;
    566. rcx ^= rax;
    567. rax = rcx;
    568. rax >>= 0x15;
    569. rcx ^= rax;
    570. rax = rcx;
    571. rax >>= 0x2A;
    572. rax ^= rcx;
    573. rcx = r11;
    574. rcx = (~rcx);
    575. rax -= rbx;
    576. rax += rcx;
    577. rcx = No_Define::BaseAddress;
    578. rax -= rcx;
    579. return rax;
    580. }
    581. case 14:
    582. {
    583. rdi = (No_Define::BaseAddress + 0x2A1);
    584. r11 = driver::read<uint64_t>(No_Define::BaseAddress + 0x6603146);
    585. rdx = (No_Define::BaseAddress + 0xB8FD);
    586. rcx = rbx;
    587. r8 = driver::read<uint64_t>(rbp + 0xf8); if (!r8) r8 = No_Define::BaseAddress;
    588. rcx *= rdx;
    589. r8 -= rdi;
    590. r8 = 0;
    591. r8 <<= 0x10;
    592. r8 ^= r11;
    593. rdx = rax + rcx * 0x2;
    594. r8 = (~r8);
    595. rax = (No_Define::BaseAddress + 0x3DA2C48A);
    596. rdx += rax;
    597. rax = driver::read<uint64_t>(r8 + 0x9);
    598. rax *= rdx;
    599. rcx = rax;
    600. rcx >>= 0x15;
    601. rax ^= rcx;
    602. rcx = rax;
    603. rcx >>= 0x2A;
    604. rax ^= rcx;
    605. rcx = 0x63F739E7ACE8DEFA;
    606. rax -= rcx;
    607. rcx = 0xECA41A7D230C65B;
    608. rax *= rcx;
    609. return rax;
    610. }
    611. case 15:
    612. {
    613. rdi = (No_Define::BaseAddress + 0x2A1);
    614. r15 = (No_Define::BaseAddress + 0x4A2);
    615. r10 = driver::read<uint64_t>(No_Define::BaseAddress + 0x6603146);
    616. rcx = No_Define::BaseAddress;
    617. rax -= rcx;
    618. rcx = rax;
    619. rcx >>= 0x15;
    620. rax ^= rcx;
    621. rcx = rax;
    622. rdx = driver::read<uint64_t>(rbp + 0xf8); if (!rdx) rdx = No_Define::BaseAddress;
    623. rdx -= rdi;
    624. rcx >>= 0x2A;
    625. rdx = 0;
    626. rcx ^= rax;
    627. rdx <<= 0x10;
    628. rdx ^= r10;
    629. rdx = (~rdx);
    630. rax = driver::read<uint64_t>(rdx + 0x9);
    631. rax *= rcx;
    632. rax += rbx;
    633. rcx = 0xC3EBCF9689C9BEB;
    634. rax *= rcx;
    635. rcx = 0x7631FAD984D70CD9;
    636. rax *= rcx;
    637. rcx = 0x2D351ADE4F41F93F;
    638. rax += rcx;
    639. rax ^= rbx;
    640. rax ^= r15;
    641. return rax;
    642. }
    643. }
    644. return 0;
    645. }