Advertisement
Guest User

Untitled

a guest
Mar 31st, 2020
119
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 9.13 KB | None | 0 0
  1. struct s2 {
  2.     signed char[8] pad8;
  3.     int32_t f8;
  4. };
  5.  
  6. struct s1 {
  7.     signed char[48] pad48;
  8.     struct s2** f48;
  9.     int32_t f56;
  10. };
  11.  
  12. struct s0 {
  13.     signed char[16] pad16;
  14.     struct s1* f16;
  15. };
  16.  
  17. struct s3 {
  18.     signed char[408] pad408;
  19.     struct s0** f408;
  20. };
  21.  
  22. struct s5 {
  23.     signed char[8] pad8;
  24.     int32_t f8;
  25. };
  26.  
  27. struct s4 {
  28.     signed char[48] pad48;
  29.     struct s5** f48;
  30. };
  31.  
  32. void* sub_7FF6F9A52EA0();
  33.  
  34. struct s6 {
  35.     struct s5** f0;
  36.     signed char[4] pad8;
  37.     int32_t f8;
  38. };
  39.  
  40. struct s7 {
  41.     struct s0** f0;
  42.     signed char[8] pad16;
  43.     struct s5** f16;
  44.     signed char[20] pad40;
  45.     uint32_t f40;
  46. };
  47.  
  48. struct s8 {
  49.     struct s5** f0;
  50.     uint32_t f4;
  51.     signed char[8] pad16;
  52.     struct s8* f16;
  53. };
  54.  
  55. struct s9 {
  56.     uint32_t f0;
  57.     signed char[12] pad16;
  58.     struct s9* f16;
  59. };
  60.  
  61. void sub_7FF6F5AEBF70(void* rcx);
  62.  
  63. struct s0* playernamesnig1(struct s3* rcx, struct s4* rdx) {
  64.     void* rbp3;
  65.     void* rax4;
  66.     struct s5* rdx5;
  67.     int64_t rax6;
  68.     struct s6* rdi7;
  69.     struct s0* rax8;
  70.     int64_t rcx9;
  71.     struct s7* r14_10;
  72.     int64_t r9_11;
  73.     struct s8* rsi12;
  74.     int32_t r8d13;
  75.     struct s8* r10_14;
  76.     int64_t rax15;
  77.     int64_t rdx16;
  78.     int64_t rdx17;
  79.     int32_t ebx18;
  80.     int32_t eax19;
  81.     int64_t r8_20;
  82.     uint32_t edx21;
  83.     uint32_t ecx22;
  84.     uint64_t v23;
  85.     uint32_t r15d24;
  86.     int32_t r8d25;
  87.     uint32_t ecx26;
  88.     struct s2* rdi27;
  89.     struct s9* rsi28;
  90.     struct s9* r10_29;
  91.     int64_t rax30;
  92.     int64_t rdx31;
  93.     int32_t ebx32;
  94.     int64_t rdx33;
  95.     uint32_t r11d34;
  96.     int64_t rcx35;
  97.     uint32_t eax36;
  98.     uint64_t rbx37;
  99.     int64_t rcx38;
  100.     int32_t v39;
  101.     struct s9* v40;
  102.     signed char al41;
  103.     struct s7* v42;
  104.     signed char al43;
  105.     int64_t rcx44;
  106.     int64_t rax45;
  107.     int64_t rax46;
  108.  
  109.     rbp3 = reinterpret_cast<void*>(reinterpret_cast<int64_t>(__zero_stack_offset()) - 8 - 8 - 8 - 71);
  110.     if (!rdx || (rax4 = sub_7FF6F9A52EA0(), rax4 == 0)) {
  111.         return 0;
  112.     }
  113.     rdx5 = reinterpret_cast<struct s5*>(reinterpret_cast<int64_t>(rax4) + 48);
  114.     rax6 = rdx5->f8;
  115.     rdi7 = reinterpret_cast<struct s6*>(&rdx->f48);
  116.     if (*reinterpret_cast<int32_t*>(&rax6) > rdi7->f8 || *reinterpret_cast<struct s5**>(rdi7->f0 + rax6) != rdx5) {
  117.         *reinterpret_cast<int32_t*>(&rax8) = 0;
  118.         *reinterpret_cast<int32_t*>(reinterpret_cast<int64_t>(&rax8) + 4) = 0;
  119.     } else {
  120.         *reinterpret_cast<int32_t*>(&rcx9) = 0;
  121.         r14_10 = reinterpret_cast<struct s7*>(&rcx->f408);
  122.         *reinterpret_cast<uint32_t*>(&r9_11) = r14_10->f40;
  123.         *reinterpret_cast<int32_t*>(reinterpret_cast<int64_t>(&r9_11) + 4) = 0;
  124.         rsi12 = reinterpret_cast<struct s8*>(&r14_10->f16);
  125.         r8d13 = 0;
  126.         if (!*reinterpret_cast<uint32_t*>(&r9_11))
  127.             goto addr_7ff6f930cc32_6;
  128.         r10_14 = rsi12;
  129.         if (rsi12->f16) {
  130.             r10_14 = rsi12->f16;
  131.         }
  132.         *reinterpret_cast<int32_t*>(&rax15) = static_cast<int32_t>(r9_11 - 1);
  133.         *reinterpret_cast<int32_t*>(reinterpret_cast<int64_t>(&rax15) + 4) = 0;
  134.         __asm__("cdq ");
  135.         *reinterpret_cast<uint32_t*>(&rdx16) = *reinterpret_cast<uint32_t*>(&rdx5) & 31;
  136.         *reinterpret_cast<int32_t*>(reinterpret_cast<int64_t>(&rdx16) + 4) = 0;
  137.         *reinterpret_cast<struct s5***>(&rdx17) = r10_14->f0;
  138.         *reinterpret_cast<int32_t*>(reinterpret_cast<int64_t>(&rdx17) + 4) = 0;
  139.         ebx18 = static_cast<int32_t>(rdx16 + rax15) >> 5;
  140.         if (*reinterpret_cast<struct s5***>(&rdx17))
  141.             goto addr_7ff6f930cc04_10; else
  142.             goto addr_7ff6f930cbd7_11;
  143.     }
  144.     addr_7ff6f930cd76_12:
  145.     return rax8;
  146.     addr_7ff6f930cc04_10:
  147.     __asm__("bsr ecx, eax");
  148.     if (!(static_cast<uint32_t>(rdx17 - 1) & reinterpret_cast<uint32_t>(*reinterpret_cast<struct s5***>(&rdx17)) ^ reinterpret_cast<uint32_t>(*reinterpret_cast<struct s5***>(&rdx17)))) {
  149.         eax19 = 32;
  150.     } else {
  151.         eax19 = 31 - *reinterpret_cast<int32_t*>(&rcx9);
  152.     }
  153.     *reinterpret_cast<int32_t*>(&r8_20) = r8d13 - eax19;
  154.     *reinterpret_cast<int32_t*>(reinterpret_cast<int64_t>(&r8_20) + 4) = 0;
  155.     if (reinterpret_cast<int32_t>(static_cast<uint32_t>(r8_20 + 31)) <= *reinterpret_cast<int32_t*>(&r9_11)) {
  156.         addr_7ff6f930cc32_6:
  157.         edx21 = r14_10->f40;
  158.         __asm__("movups xmm2, [rbp-0x19]");
  159.         __asm__("movups xmm0, [rbp-0x29]");
  160.         ecx22 = edx21 & 31;
  161.         *reinterpret_cast<uint32_t*>(reinterpret_cast<int64_t>(&v23) + 4) = edx21;
  162.         r15d24 = 0xffffffff << *reinterpret_cast<unsigned char*>(&ecx22);
  163.         __asm__("movups [rbp+0x27], xmm0");
  164.         r8d25 = reinterpret_cast<int32_t>(edx21) >> 5;
  165.         __asm__("movups xmm0, [rbp+0x1f]");
  166.         ecx26 = edx21 & 0xffffffe0;
  167.         *reinterpret_cast<uint32_t*>(&v23) = r15d24;
  168.         __asm__("movups [rbp+0x37], xmm2");
  169.         __asm__("unpckhpd xmm2, xmm2");
  170.     } else {
  171.         addr_7ff6f930cc2e_16:
  172.         goto addr_7ff6f930cc32_6;
  173.     }
  174.     rdi7->f0 = rsi12->f0;
  175.     rdi27 = reinterpret_cast<struct s2*>(&rdi7->pad8);
  176.     rsi28 = reinterpret_cast<struct s9*>(&rsi12->f4);
  177.     __asm__("movups xmm1, [rbp+0x2f]");
  178.     __asm__("movups [rbp-0x9], xmm0");
  179.     __asm__("movups [rbp+0x7], xmm1");
  180.     if (edx21 == *reinterpret_cast<uint32_t*>(&r9_11))
  181.         goto addr_7ff6f930ccf7_20;
  182.     r10_29 = rsi28;
  183.     if (rsi28->f16) {
  184.         r10_29 = rsi28->f16;
  185.     }
  186.     *reinterpret_cast<int32_t*>(&rax30) = static_cast<int32_t>(r9_11 - 1);
  187.     *reinterpret_cast<int32_t*>(reinterpret_cast<int64_t>(&rax30) + 4) = 0;
  188.     __asm__("cdq ");
  189.     *reinterpret_cast<uint32_t*>(&rdx31) = edx21 & 31;
  190.     *reinterpret_cast<int32_t*>(reinterpret_cast<int64_t>(&rdx31) + 4) = 0;
  191.     ebx32 = static_cast<int32_t>(rdx31 + rax30) >> 5;
  192.     *reinterpret_cast<uint32_t*>(&rdx33) = *reinterpret_cast<uint32_t*>(reinterpret_cast<int64_t>(r10_29) + r8d25 * 4) & r15d24;
  193.     *reinterpret_cast<int32_t*>(reinterpret_cast<int64_t>(&rdx33) + 4) = 0;
  194.     if (!*reinterpret_cast<uint32_t*>(&rdx33))
  195.         goto addr_7ff6f930ccb1_24;
  196.     addr_7ff6f930ccce_25:
  197.     __asm__("bsr edx, eax");
  198.     if (!(static_cast<uint32_t>(rdx33 - 1) & *reinterpret_cast<uint32_t*>(&rdx33) ^ *reinterpret_cast<uint32_t*>(&rdx33))) {
  199.         r11d34 = 32;
  200.     } else {
  201.         r11d34 = 31 - *reinterpret_cast<uint32_t*>(&rdx33);
  202.     }
  203.     *reinterpret_cast<uint32_t*>(&rcx35) = ecx26 - r11d34;
  204.     *reinterpret_cast<int32_t*>(reinterpret_cast<int64_t>(&rcx35) + 4) = 0;
  205.     eax36 = static_cast<uint32_t>(rcx35 + 31);
  206.     *reinterpret_cast<uint32_t*>(reinterpret_cast<int64_t>(&v23) + 4) = eax36;
  207.     if (reinterpret_cast<int32_t>(eax36) <= *reinterpret_cast<int32_t*>(&r9_11)) {
  208.         addr_7ff6f930ccf7_20:
  209.         rbx37 = v23 >> 32;
  210.     } else {
  211.         addr_7ff6f930ccf3_29:
  212.         *reinterpret_cast<uint32_t*>(reinterpret_cast<int64_t>(&v23) + 4) = *reinterpret_cast<uint32_t*>(&r9_11);
  213.         goto addr_7ff6f930ccf7_20;
  214.     }
  215.     while (1) {
  216.         rcx38 = v39;
  217.         if (*reinterpret_cast<int32_t*>(&rcx38) != *reinterpret_cast<int32_t*>(&rbx37) || v40 != rsi28) {
  218.             al41 = 0;
  219.         } else {
  220.             al41 = 1;
  221.         }
  222.         if (!al41 || v42 != r14_10) {
  223.             al43 = 1;
  224.         } else {
  225.             al43 = 0;
  226.         }
  227.         if (!al43)
  228.             break;
  229.         if (!v42->f0[rcx38 + rcx38])
  230.             goto addr_7ff6f930cd58_38;
  231.         rcx44 = rdi27->f8;
  232.         if (*reinterpret_cast<int32_t*>(&rcx44) > (v42->f0[rcx38 + rcx38])->f16->f56)
  233.             goto addr_7ff6f930cd58_38;
  234.         if ((v42->f0[rcx38 + rcx38])->f16->f48[rcx44] == rdi27)
  235.             goto addr_7ff6f930cd6b_41;
  236.         addr_7ff6f930cd58_38:
  237.         sub_7FF6F5AEBF70(reinterpret_cast<int64_t>(rbp3) - 1);
  238.     }
  239.     *reinterpret_cast<int32_t*>(&rax8) = 0;
  240.     *reinterpret_cast<int32_t*>(reinterpret_cast<int64_t>(&rax8) + 4) = 0;
  241.     addr_7ff6f930cd6e_43:
  242.     goto addr_7ff6f930cd76_12;
  243.     addr_7ff6f930cd6b_41:
  244.     rax8 = v42->f0[rcx38 + rcx38];
  245.     goto addr_7ff6f930cd6e_43;
  246.     do {
  247.         addr_7ff6f930ccb1_24:
  248.         rax45 = r8d25;
  249.         ecx26 = ecx26 + 32;
  250.         ++r8d25;
  251.         if (*reinterpret_cast<int32_t*>(&rax45) >= ebx32)
  252.             goto addr_7ff6f930ccf3_29;
  253.         *reinterpret_cast<uint32_t*>(&rdx33) = *reinterpret_cast<uint32_t*>(reinterpret_cast<int64_t>(r10_29) + rax45 * 4 + 4);
  254.         *reinterpret_cast<int32_t*>(reinterpret_cast<int64_t>(&rdx33) + 4) = 0;
  255.         *reinterpret_cast<uint32_t*>(&v23) = 0xffffffff;
  256.     } while (!*reinterpret_cast<uint32_t*>(&rdx33));
  257.     goto addr_7ff6f930ccce_25;
  258.     addr_7ff6f930cbd7_11:
  259.     do {
  260.         rax46 = *reinterpret_cast<int32_t*>(&rcx9);
  261.         r8d13 = r8d13 + 32;
  262.         *reinterpret_cast<int32_t*>(&rcx9) = *reinterpret_cast<int32_t*>(&rcx9) + 1;
  263.         if (*reinterpret_cast<int32_t*>(&rax46) >= ebx18)
  264.             goto addr_7ff6f930cc2e_16;
  265.         *reinterpret_cast<struct s5***>(&rdx17) = *reinterpret_cast<struct s5***>(reinterpret_cast<int64_t>(r10_14) + rax46 * 4 + 4);
  266.         *reinterpret_cast<int32_t*>(reinterpret_cast<int64_t>(&rdx17) + 4) = 0;
  267.     } while (!*reinterpret_cast<struct s5***>(&rdx17));
  268.     goto addr_7ff6f930cc04_10;
  269. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement