Advertisement
dunkermex

Untitled

Jan 31st, 2018
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 6.72 KB | None | 0 0
  1.  fun_3959bbdc(__return_address());
  2.     eax11 = ebp12->f8;
  3.     v13 = ebx14;
  4.     v15 = esi16;
  5.     eax17 = eax11;
  6.     v18 = edi19;
  7.     esi20 = ecx;
  8.     if (!eax17) {
  9.         addr_0x39518977_2:
  10.         zf21 = (*(uint8_t*)&g395c6ed8 & 1) == 0;
  11.         if (zf21) {
  12.             g395c6ed8 = g395c6ed8 | 1;
  13.             eax22 = g395c0544;
  14.             eax23 = *eax22;
  15.             v24 = eax23->f0;
  16.             *(int32_t*)(ebp25 - 4) = 0;
  17.             fun_3951cf8f(0x395c67d8, v24, "Network:FrameStart", 19);
  18.             *(uint32_t*)(ebp26 - 4) = 0xffffffff;
  19.         }
  20.     } else {
  21.         eax27 = eax17 - 1;
  22.         if (eax27) {
  23.             if (eax27 - 1) {
  24.                 addr_0x39518a86_6:
  25.                 v28 = ebp29->f8;
  26.                 fun_39501199(esi20, v28);
  27.             } else {
  28.                 fun_39518baa(ecx);
  29.                 edi30 = &esi20->f892;
  30.                 *(int32_t**)(ebp31 - 28) = edi30;
  31.                 *(int32_t*)(ebp32 - 20) = (int32_t)esi20 + 0x128;
  32.                 while (1) {
  33.                     *edi30 = *edi30 + 1;
  34.                     *(int32_t*)(ebp33 - 4) = 5;
  35.                     *(int8_t*)(ebp34 - 13) = 0;
  36.                     fun_3950c204((int32_t)esi20 + 0xb0, 1, v18, v15, v13, v35, v36, v37);
  37.                     fun_39501199(esi20, 2);
  38.                     ebp38->f11 = static_cast<uint8_t>((uint1_t)(esi20->f152 == esi20->f156));
  39.                     if (!ebp39->f11) {
  40.                         al40 = fun_39518d25(esi20, 2);
  41.                         *(int8_t*)(ebp41 - 13) = al40;
  42.                     }
  43.                     fun_3950c204((int32_t)esi20 + 0xec, 1, 2, 1, v18, v15, v13, v42);
  44.                     ecx43 = (int32_t)esi20 + 0xb0;
  45.                     fun_3950c204(ecx43, 1, 1, 2, 1, v18, v15, v13);
  46.                     v44 = *(int32_t*)(ebp45 - 20);
  47.                     EnterCriticalSection(ecx43, v44, 1, 1, 2);
  48.                     ecx46 = (int32_t)esi20 + 0x144;
  49.                     *(int8_t*)(ebp47 - 4) = 6;
  50.                     fun_3950c204(ecx46, 1, v44, 1, 1, 2, 1, v18);
  51.                     v48 = *(int32_t*)(ebp49 - 20);
  52.                     *(int8_t*)(ebp50 - 4) = 5;
  53.                     LeaveCriticalSection(ecx46, v48, 1, v44, 1, 1, 2);
  54.                     if (ebp51->f11)
  55.                         break;
  56.                     if (!*(int8_t*)(ebp52 - 13))
  57.                         break;
  58.                     ebx53 = &esi20->f896;
  59.                     *ebx53 = *ebx53 + 1;
  60.                     ebp54->f8 = ebx53;
  61.                     zf55 = esi20->f1021 == 0;
  62.                     *(int8_t*)(ebp56 - 4) = 7;
  63.                     if (!zf55) {
  64.                         LeaveCriticalSection(ecx46, (int32_t)esi20 + 0x39c, v48, 1, v44, 1, 1, 2);
  65.                     }
  66.                     ecx57 = (int32_t)esi20 + 0x1f8;
  67.                     fun_3950c204(ecx57, 0, v48, 1, v44, 1, 1, 2);
  68.                     if (esi20->f1021) {
  69.                         EnterCriticalSection(ecx57, (int32_t)esi20 + 0x39c, 0, v48, 1, v44, 1, 1, 2);
  70.                     }
  71.                     fun_395560c2((int32_t)esi20 + 0x1bc, (int32_t)esi20 + 0x1f8, 0, v48, 1, v44, 1, 1, 2);
  72.                     *ebx53 = *ebx53 - 1;
  73.                     *(int8_t*)(ebp58 - 4) = 5;
  74.                     fun_39518737(esi20, 0, (int32_t)esi20 + 0x1f8, 0, v48, 1, v44, 1, 1, 2);
  75.                     fun_39518737(esi20, 1, (int32_t)esi20 + 0x1f8, 0, v48, 1, v44, 1, 1, 2);
  76.                     *edi30 = *edi30 - 1;
  77.                 }
  78.                 *edi30 = *edi30 - 1;
  79.             }
  80.             g0 = *(int32_t*)(ebp59 - 12);
  81.             goto ebp60->f4;
  82.         }
  83.         zf61 = (*(uint8_t*)&g395c6ed8 & 2) == 0;
  84.         if (zf61) {
  85.             g395c6ed8 = g395c6ed8 | 2;
  86.             *(uint32_t*)(ebp62 - 4) = 2;
  87.             eax63 = g395c0544;
  88.             eax64 = *eax63;
  89.             v65 = eax64->f0;
  90.             fun_3951cf8f(0x395c6b58, v65, "Network:FrameEnd", 19);
  91.             *(uint32_t*)(ebp66 - 4) = 0xffffffff;
  92.         }
  93.         eax67 = g395c0544;
  94.         asm("xorpd xmm0, xmm0");
  95.         asm("movlpd [ebp-0x40], xmm0");
  96.         asm("xorpd xmm0, xmm0");
  97.         asm("movlpd [ebp-0x38], xmm0");
  98.         *(int32_t*)(ebp68 - 48) = 0;
  99.         *(int32_t*)(ebp69 - 44) = 0;
  100.         ecx70 = *eax67;
  101.         if (ecx70->f151) {
  102.             *(int32_t*)(ebp71 - 48) = 0x395c6b58;
  103.             eax72 = *eax67;
  104.             eax72->f152();
  105.             ecx70 = (struct s0*)(ebp73 - 64);
  106.         }
  107.         *(int32_t*)(ebp74 - 4) = 3;
  108.         g395c58d0 = 0;
  109.         fun_39518baa(ecx70);
  110.         ecx75 = (int32_t)esi20 + 0xec;
  111.         fun_3950c204(ecx75, 1, v18, v15, v13, v76, v77, v78);
  112.         edi79 = (int32_t)esi20 + 0x128;
  113.         *(int32_t*)(ebp80 - 20) = edi79;
  114.         EnterCriticalSection(ecx75, edi79, 1);
  115.         ecx81 = (int32_t)esi20 + 0x144;
  116.         *(int8_t*)(ebp82 - 4) = 4;
  117.         fun_3950c204(ecx81, 1, edi79, 1, v18, v15, v13, v83);
  118.         *(int8_t*)(ebp84 - 4) = 3;
  119.         LeaveCriticalSection(ecx81, edi79, 1, edi79, 1);
  120.         zf85 = g395c9a24 == 0;
  121.         if (zf85)
  122.             goto addr_0x39518a6b_24; else
  123.             goto addr_0x39518957_25;
  124.     }
  125.     eax86 = g395c0544;
  126.     asm("xorpd xmm0, xmm0");
  127.     asm("movlpd [ebp-0x40], xmm0");
  128.     asm("xorpd xmm0, xmm0");
  129.     asm("movlpd [ebp-0x38], xmm0");
  130.     *(int32_t*)(ebp87 - 48) = 0;
  131.     *(int32_t*)(ebp88 - 44) = 0;
  132.     if ((*eax86)->f151) {
  133.         *(int32_t*)(ebp89 - 48) = 0x395c67d8;
  134.         eax90 = *eax86;
  135.         eax90->f152();
  136.         eax86 = g395c0544;
  137.     }
  138.     eax91 = *(*eax86)->f0;
  139.     *(int32_t*)(ebp92 - 4) = 1;
  140.     eax93 = (int32_t)eax91->f184();
  141.     eax94 = g395c0544;
  142.     eax95 = *(*eax94)->f20;
  143.     if (eax93 == 1) {
  144.         eax95->f44();
  145.         asm("fmul dword [0x395a6d40]");
  146.         eax96 = fun_3959c066();
  147.         *(int32_t*)(ebp97 - 32) = eax96;
  148.         v98 = ebp99 - 32;
  149.         *(int32_t*)(ebp100 - 28) = edx101;
  150.         eax102 = ebp103 - 24;
  151.     } else {
  152.         v98 = 0;
  153.         eax95->f36(ebp104 - 40, 0);
  154.         eax102 = ebp105 - 32;
  155.     }
  156.     ecx106 = (struct s0*)((int32_t)esi20 + 0x3f0);
  157.     fun_39523c09(ecx106, eax102, v98);
  158.     fun_39518baa(ecx106);
  159.     fun_3950c204((int32_t)esi20 + 0xb0, 1, eax102, v98, v18, v15, v13, v107);
  160.     if (!esi20->f896) {
  161.         fun_395560c2((int32_t)esi20 + 0x1bc, (int32_t)esi20 + 0x1f8, 1, eax102, v98, v18, v15, v13, v108);
  162.     }
  163.     addr_0x39518a6b_24:
  164.     *(uint32_t*)(ebp109 - 4) = 0xffffffff;
  165.     if (*(int32_t*)(ebp110 - 48)) {
  166.         eax111 = g395c0544;
  167.         eax112 = *eax111;
  168.         eax112->f156();
  169.         goto addr_0x39518a86_6;
  170.     }
  171.     addr_0x39518957_25:
  172.     eax113 = g395c0544;
  173.     eax114 = *(*eax113)->f28;
  174.     eax114->f148("SaveLevelStats", 0, 0, edi79, 1, edi79, 1);
  175.     _exit(0, "SaveLevelStats", 0, 0, edi79, 1, edi79, 1);
  176.     goto addr_0x39518977_2;
  177. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement