Advertisement
Guest User

Untitled

a guest
Jul 23rd, 2019
57
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.96 KB | None | 0 0
  1. unsigned int __cdecl sub_10EDE10(int a1, int a2, int a3)
  2. {
  3. int v3; // ebx
  4. unsigned __int16 v4; // ax
  5. int v5; // edx
  6. int v6; // esi
  7. int v7; // ecx
  8. signed int v8; // eax
  9. int v9; // edx
  10. int v10; // edi
  11. int v11; // edx
  12. unsigned int v12; // ecx
  13. unsigned int v13; // ST1C_4
  14. unsigned int v14; // ecx
  15. int v15; // edi
  16. int v16; // eax
  17. int v17; // ecx
  18. unsigned int result; // eax
  19. int v19; // [esp+4h] [ebp-10h]
  20. int v20; // [esp+10h] [ebp-4h]
  21. int savedregs; // [esp+14h] [ebp+0h]
  22. int v22; // [esp+1Ch] [ebp+8h]
  23.  
  24. v3 = a1;
  25. ++*(_WORD *)(v3 + 52);
  26. v4 = *(_WORD *)(a1 + 52);
  27. if ( v4 >= 0xC8u )
  28. {
  29. if ( v4 == 200 )
  30. sub_10EF200(a1, (char *)&unk_2B959A8 - 5992704);
  31. if ( v4 >= 0xE1u )
  32. sub_10EE920(a1, 5);
  33. }
  34. if ( *(_BYTE *)(a1 + *(_DWORD *)(a1 + 12) + 12) )
  35. {
  36. if ( !sub_147C690(a1, a2, a3) )
  37. sub_14784A0((int)&savedregs, (_DWORD *)a1, 1);
  38. }
  39. else if ( !sub_10EE3B0(a1, a2, a3) )
  40. {
  41. v5 = ***(_DWORD ***)(a1 + 16) + 20 - *(_DWORD *)(***(_DWORD ***)(a1 + 16) + 20);
  42. v19 = v5;
  43. v6 = *(_DWORD *)(v5 + 40);
  44. v22 = (a1 + *(_DWORD *)(a1 + 12) + 44) ^ *(_DWORD *)(a1 + *(_DWORD *)(a1 + 12) + 44);
  45. v7 = *(unsigned __int8 *)(v5 + 80)
  46. + ((*(unsigned __int8 *)(v5 + 83) + ((*(unsigned __int8 *)(v5 + 82) + (*(unsigned __int8 *)(v5 + 81) << 8)) << 8)) << 8);
  47. v8 = *(_DWORD *)(v5 + 52);
  48. v9 = *(_DWORD *)(v5 + 60);
  49. v10 = -1395309893 * v6 - 1838748549 * v7 - 1993746777 * v9 - 1125194579 * v8;
  50. v20 = -1395309893 * v6 - 1838748549 * v7 - 1993746777 * v9 - 1125194579 * v8;
  51. v11 = 476035360 * v6 + -2088292391 * v7 - 706264423 * v8 + 1546808719 * v9;
  52. if ( v8 <= 8 )
  53. {
  54. v15 = v11 ^ v10;
  55. }
  56. else
  57. {
  58. v12 = *(_DWORD *)(v19 + 36) + 4 * ((v20 + 4) % (unsigned int)(v8 - 4));
  59. v13 = ((unsigned int)(v22 * *(_DWORD *)(v19 + 36 + v12 + 4)) >> 26)
  60. + ((unsigned int)(v22 * *(_DWORD *)(v19 + 36 + v12 + 8)) >> 26)
  61. + ((unsigned int)(v22 * *(_DWORD *)(v12 + v19 + 36 + 12)) >> 26)
  62. + v20
  63. + ((unsigned int)(v22 * *(_DWORD *)(v19 + 36 + v12)) >> 26);
  64. v14 = *(_DWORD *)(v19 + 36) + 4 * ((v11 + 4) % (unsigned int)(v8 - 4));
  65. v15 = v13;
  66. v11 += ((unsigned int)(v22 * *(_DWORD *)(v19 + 36 + v14)) >> 26)
  67. + ((unsigned int)(v22 * *(_DWORD *)(v19 + 36 + v14 + 4)) >> 26)
  68. + ((unsigned int)(v22 * *(_DWORD *)(v14 + v19 + 36 + 8)) >> 26)
  69. + ((unsigned int)(v22 * *(_DWORD *)(v14 + v19 + 36 + 12)) >> 26);
  70. }
  71. if ( v15 != (*(_DWORD *)(v19 + 72) * (v11 | 1) ^ __ROR4__(*(_DWORD *)(v19 + 72) * (v11 | 1), 7) ^ __ROL4__(*(_DWORD *)(v19 + 72) * (v11 | 1), 11)) )
  72. *(_DWORD *)&aTpldxokn6lgc[-8] |= 0x200u;
  73. sub_10F21A0((int)&savedregs, v3, 1);
  74. }
  75. --*(_WORD *)(v3 + 52);
  76. v16 = *(_DWORD *)(v3 + 12);
  77. v17 = v16;
  78. result = *(_DWORD *)(v16 + v3 + 104);
  79. if ( result >= *(_DWORD *)(v17 + v3 + 88) )
  80. result = sub_10EDCB0(v3);
  81. return result;
  82. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement