Advertisement
icefreezer

Untitled

Aug 7th, 2018
123
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.49 KB | None | 0 0
  1. char __thiscall sub_14D3FB1(char *this, _DWORD *a2)
  2. {
  3. char *v2; // ebx
  4. char *v3; // esi
  5. signed int v4; // edi
  6. _BYTE *v5; // esi
  7. signed int v6; // edi
  8. unsigned int v7; // esi
  9. _BYTE *v8; // esi
  10. char v9; // al
  11. char v10; // al
  12. char v11; // al
  13. char v12; // al
  14. char v13; // al
  15. char v14; // al
  16. char result; // al
  17. unsigned int v16; // esi
  18. _DWORD *v17; // [esp+Ch] [ebp-Ch]
  19. __int16 v18; // [esp+10h] [ebp-8h]
  20. int v19; // [esp+14h] [ebp-4h]
  21.  
  22. v2 = this;
  23. v3 = this + 40;
  24. v4 = 19;
  25. do
  26. {
  27. CDataStore::WriteByte(a2, v3[1]);
  28. CDataStore::WriteByte(a2, *v3);
  29. v3 += 16;
  30. --v4;
  31. }
  32. while ( v4 );
  33. v18 = 0;
  34. v17 = a2;
  35. v5 = v2 + 33;
  36. v6 = 19;
  37. do
  38. {
  39. CDataStore::WriteBit(&v17, v5[2] != 0);
  40. CDataStore::WriteBit(&v17, *v5 != 0);
  41. CDataStore::WriteBit(&v17, v5[6] != 0);
  42. CDataStore::WriteBit(&v17, v5[3] != 0);
  43. CDataStore::WriteBit(&v17, v5[4] != 0);
  44. CDataStore::WriteBit(&v17, v5[5] != 0);
  45. CDataStore::WriteBit(&v17, *(v5 - 1) != 0);
  46. CDataStore::WriteBit(&v17, v5[1] != 0);
  47. v5 += 16;
  48. --v6;
  49. }
  50. while ( v6 );
  51. LOBYTE(v19) = 0;
  52. WriteBits2(&v17, *(v2 + 4), v19);
  53. v7 = 0;
  54. if ( *(v2 + 4) )
  55. {
  56. do
  57. {
  58. CDataStore::WriteBit(&v17, *(*(v2 + 5) + 2 * v7) == 0);
  59. CDataStore::WriteBit(&v17, *(*(v2 + 5) + 2 * v7++ + 1) == 0);
  60. }
  61. while ( v7 < *(v2 + 4) );
  62. }
  63. ResetBitsReader(&v17);
  64. v8 = v2 + 39;
  65. v19 = 19;
  66. do
  67. {
  68. v9 = *(v8 - 3);
  69. if ( v9 )
  70. CDataStore::WriteByte(a2, v9 ^ 1);
  71. if ( *v8 )
  72. CDataStore::WriteByte(a2, *v8 ^ 1);
  73. v10 = *(v8 - 7);
  74. if ( v10 )
  75. CDataStore::WriteByte(a2, v10 ^ 1);
  76. v11 = *(v8 - 4);
  77. if ( v11 )
  78. CDataStore::WriteByte(a2, v11 ^ 1);
  79. v12 = *(v8 - 5);
  80. if ( v12 )
  81. CDataStore::WriteByte(a2, v12 ^ 1);
  82. v13 = *(v8 - 2);
  83. if ( v13 )
  84. CDataStore::WriteByte(a2, v13 ^ 1);
  85. v14 = *(v8 - 6);
  86. if ( v14 )
  87. CDataStore::WriteByte(a2, v14 ^ 1);
  88. result = *(v8 - 1);
  89. if ( result )
  90. result = CDataStore::WriteByte(a2, result ^ 1);
  91. v8 += 16;
  92. --v19;
  93. }
  94. while ( v19 );
  95. v16 = 0;
  96. if ( *(v2 + 4) )
  97. {
  98. do
  99. {
  100. if ( *(*(v2 + 5) + 2 * v16) )
  101. CDataStore::WriteByte(a2, *(*(v2 + 5) + 2 * v16));
  102. result = *(*(v2 + 5) + 2 * v16 + 1);
  103. if ( result )
  104. result = CDataStore::WriteByte(a2, *(*(v2 + 5) + 2 * v16 + 1));
  105. ++v16;
  106. }
  107. while ( v16 < *(v2 + 4) );
  108. }
  109. return result;
  110. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement