Advertisement
Guest User

newpe

a guest
Jun 5th, 2015
163
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. .text:008E4C60 processevent    proc near               ; CODE XREF: sub_8E3E70+A40p
  2. .text:008E4C60
  3. .text:008E4C60 var_80          = byte ptr -80h
  4. .text:008E4C60 var_78          = dword ptr -78h
  5. .text:008E4C60 var_74          = dword ptr -74h
  6. .text:008E4C60 var_70          = dword ptr -70h
  7. .text:008E4C60 var_6C          = dword ptr -6Ch
  8. .text:008E4C60 var_68          = dword ptr -68h
  9. .text:008E4C60 var_64          = dword ptr -64h
  10. .text:008E4C60 var_60          = dword ptr -60h
  11. .text:008E4C60 var_5C          = dword ptr -5Ch
  12. .text:008E4C60 var_58          = dword ptr -58h
  13. .text:008E4C60 var_54          = dword ptr -54h
  14. .text:008E4C60 var_50          = dword ptr -50h
  15. .text:008E4C60 var_4C          = dword ptr -4Ch
  16. .text:008E4C60 var_48          = dword ptr -48h
  17. .text:008E4C60 var_44          = dword ptr -44h
  18. .text:008E4C60 Src             = dword ptr -40h
  19. .text:008E4C60 var_3C          = dword ptr -3Ch
  20. .text:008E4C60 var_38          = dword ptr -38h
  21. .text:008E4C60 var_24          = dword ptr -24h
  22. .text:008E4C60 var_20          = dword ptr -20h
  23. .text:008E4C60 var_1C          = dword ptr -1Ch
  24. .text:008E4C60 var_18          = dword ptr -18h
  25. .text:008E4C60 var_14          = dword ptr -14h
  26. .text:008E4C60 var_10          = dword ptr -10h
  27. .text:008E4C60 var_C           = dword ptr -0Ch
  28. .text:008E4C60 var_4           = dword ptr -4
  29. .text:008E4C60
  30. .text:008E4C60                 push    ebp
  31. .text:008E4C61                 mov     ebp, esp
  32. .text:008E4C63                 push    0FFFFFFFFh
  33. .text:008E4C65                 push    offset sub_19051AE
  34. .text:008E4C6A                 mov     eax, large fs:0
  35. .text:008E4C70                 push    eax
  36. .text:008E4C71                 sub     esp, 7Ch
  37. .text:008E4C74                 mov     eax, ___security_cookie
  38. .text:008E4C79                 xor     eax, ebp
  39. .text:008E4C7B                 mov     [ebp+var_10], eax
  40. .text:008E4C7E                 push    ebx
  41. .text:008E4C7F                 push    esi
  42. .text:008E4C80                 push    edi
  43. .text:008E4C81                 push    eax
  44. .text:008E4C82                 lea     eax, [ebp+var_C]
  45. .text:008E4C85                 mov     large fs:0, eax
  46. .text:008E4C8B                 mov     ebx, ecx
  47. .text:008E4C8D                 mov     [ebp+var_58], ebx
  48. .text:008E4C90                 mov     [ebp+Src], 0
  49. .text:008E4C97                 mov     [ebp+var_3C], 0
  50. .text:008E4C9E                 mov     [ebp+var_38], 0
  51. .text:008E4CA5                 mov     [ebp+var_24], 0
  52. .text:008E4CAC                 mov     [ebp+var_1C], 0
  53. .text:008E4CB3                 mov     [ebp+var_20], 0
  54. .text:008E4CBA                 mov     [ebp+var_18], 0
  55. .text:008E4CC1                 mov     [ebp+var_14], 0
  56. .text:008E4CC8                 mov     eax, [ebx+4]
  57. .text:008E4CCB                 lea     ecx, [ebp+Src]
  58. .text:008E4CCE                 sub     eax, [ebx+2Ch]
  59. .text:008E4CD1                 push    eax
  60. .text:008E4CD2                 mov     [ebp+var_4], 2
  61. .text:008E4CD9                 call    sub_9EAF50
  62. .text:008E4CDE                 push    0
  63. .text:008E4CE0                 lea     eax, [ebx+0Ch]
  64. .text:008E4CE3                 mov     [ebp+var_74], ebx
  65. .text:008E4CE6                 push    eax
  66. .text:008E4CE7                 lea     ecx, [ebp+var_70]
  67. .text:008E4CEA                 call    sub_8D1E40
  68. .text:008E4CEF                 mov     eax, [ebp+var_68]
  69. .text:008E4CF2                 mov     edi, [ebp+var_60]
  70. .text:008E4CF5                 cmp     edi, [eax+14h]
  71. .text:008E4CF8                 jge     loc_8E4E4D
  72. .text:008E4CFE                 mov     eax, [ebp+var_64]
  73. .text:008E4D01                 mov     ebx, [ebp+var_5C]
  74. .text:008E4D04                 mov     esi, [ebp+var_70]
  75. .text:008E4D07                 mov     [ebp+var_44], eax
  76. .text:008E4D0A                 mov     eax, [ebp+var_6C]
  77. .text:008E4D0D                 mov     [ebp+var_54], 0
  78. .text:008E4D14                 mov     [ebp+var_4C], eax
  79. .text:008E4D17
  80. .text:008E4D17 loc_8E4D17:                             ; CODE XREF: processevent+1E4j
  81. .text:008E4D17                 lea     eax, [ebp+var_80]
  82. .text:008E4D1A                 push    eax
  83. .text:008E4D1B                 lea     ecx, [ebp+Src]
  84. .text:008E4D1E                 call    sub_1314D40
  85. .text:008E4D23                 mov     edx, [eax+4]
  86. .text:008E4D26                 mov     [ebp+var_48], edx
  87. .text:008E4D29                 test    edx, edx
  88. .text:008E4D2B                 jz      loc_8E4DB2
  89. .text:008E4D31                 mov     eax, [ebp+var_74]
  90. .text:008E4D34                 mov     ecx, [eax]
  91. .text:008E4D36                 lea     eax, ds:0[edi*8]
  92. .text:008E4D3D                 sub     eax, edi
  93. .text:008E4D3F                 lea     edi, [edx+8]
  94. .text:008E4D42                 mov     [ebp+var_78], edi
  95. .text:008E4D45                 lea     ecx, [ecx+eax*4]
  96. .text:008E4D48                 mov     eax, [ecx]
  97. .text:008E4D4A                 mov     [edx], eax
  98. .text:008E4D4C                 mov     eax, [ecx+4]
  99. .text:008E4D4F                 mov     [edx+4], eax
  100. .text:008E4D52                 mov     eax, [ecx+0Ch]
  101. .text:008E4D55                 mov     [ebp+var_50], ecx
  102. .text:008E4D58                 mov     dword ptr [edi], 0
  103. .text:008E4D5E                 mov     [edi+4], eax
  104. .text:008E4D61                 mov     [edi+8], eax
  105. .text:008E4D64                 mov     edx, [edi]
  106. .text:008E4D66                 mov     byte ptr [ebp+var_4], 3
  107. .text:008E4D6A                 test    edx, edx
  108. .text:008E4D6C                 jnz     short loc_8E4D72
  109. .text:008E4D6E                 test    eax, eax
  110. .text:008E4D70                 jz      short loc_8E4D85
  111. .text:008E4D72
  112. .text:008E4D72 loc_8E4D72:                             ; CODE XREF: processevent+10Cj
  113. .text:008E4D72                 push    8
  114. .text:008E4D74                 add     eax, eax
  115. .text:008E4D76                 push    eax
  116. .text:008E4D77                 push    edx
  117. .text:008E4D78                 call    sub_9160F0
  118. .text:008E4D7D                 mov     ecx, [ebp+var_50]
  119. .text:008E4D80                 add     esp, 0Ch
  120. .text:008E4D83                 mov     [edi], eax
  121. .text:008E4D85
  122. .text:008E4D85 loc_8E4D85:                             ; CODE XREF: processevent+110j
  123. .text:008E4D85                 mov     eax, [edi+4]
  124. .text:008E4D88                 mov     byte ptr [ebp+var_4], 2
  125. .text:008E4D8C                 test    eax, eax
  126. .text:008E4D8E                 jz      short loc_8E4DA0
  127. .text:008E4D90                 add     eax, eax
  128. .text:008E4D92                 push    eax             ; Size
  129. .text:008E4D93                 push    dword ptr [ecx+8] ; Src
  130. .text:008E4D96                 push    dword ptr [edi] ; Dst
  131. .text:008E4D98                 call    memcpy
  132. .text:008E4D9D                 add     esp, 0Ch
  133. .text:008E4DA0
  134. .text:008E4DA0 loc_8E4DA0:                             ; CODE XREF: processevent+12Ej
  135. .text:008E4DA0                 mov     edx, [ebp+var_50]
  136. .text:008E4DA3                 mov     ecx, [ebp+var_48]
  137. .text:008E4DA6                 mov     eax, [edx+14h]
  138. .text:008E4DA9                 mov     [ecx+14h], eax
  139. .text:008E4DAC                 mov     eax, [edx+18h]
  140. .text:008E4DAF                 mov     [ecx+18h], eax
  141. .text:008E4DB2
  142. .text:008E4DB2 loc_8E4DB2:                             ; CODE XREF: processevent+CBj
  143. .text:008E4DB2                 mov     edx, [ebp+var_68]
  144. .text:008E4DB5                 mov     eax, [ebp+var_4C]
  145. .text:008E4DB8                 mov     edi, [ebp+var_44]
  146. .text:008E4DBB                 not     eax
  147. .text:008E4DBD                 and     edi, eax
  148. .text:008E4DBF                 xor     eax, eax
  149. .text:008E4DC1                 mov     ecx, [edx+10h]
  150. .text:008E4DC4                 test    ecx, ecx
  151. .text:008E4DC6                 mov     [ebp+var_44], edi
  152. .text:008E4DC9                 setz    al
  153. .text:008E4DCC                 neg     eax
  154. .text:008E4DCE                 and     edx, eax
  155. .text:008E4DD0                 lea     eax, [ebp+var_54]
  156. .text:008E4DD3                 or      edx, ecx
  157. .text:008E4DD5                 mov     ecx, 0
  158. .text:008E4DDA                 setz    cl
  159. .text:008E4DDD                 neg     ecx
  160. .text:008E4DDF                 and     ecx, eax
  161. .text:008E4DE1                 or      ecx, edx
  162. .text:008E4DE3                 mov     eax, [ecx+esi*4]
  163. .text:008E4DE6                 and     eax, edi
  164. .text:008E4DE8                 jnz     short loc_8E4E16
  165. .text:008E4DEA                 mov     eax, [ebp+var_68]
  166. .text:008E4DED                 mov     edi, [eax+14h]
  167. .text:008E4DF0                 lea     eax, [edi-1]
  168. .text:008E4DF3                 cdq
  169. .text:008E4DF4                 and     edx, 1Fh
  170. .text:008E4DF7                 add     edx, eax
  171. .text:008E4DF9                 sar     edx, 5
  172. .text:008E4DFC                 lea     esp, [esp+0]
  173. .text:008E4E00
  174. .text:008E4E00 loc_8E4E00:                             ; CODE XREF: processevent+1B4j
  175. .text:008E4E00                 inc     esi
  176. .text:008E4E01                 add     ebx, 20h
  177. .text:008E4E04                 cmp     esi, edx
  178. .text:008E4E06                 jg      short loc_8E4E3E
  179. .text:008E4E08                 mov     eax, [ecx+esi*4]
  180. .text:008E4E0B                 mov     [ebp+var_44], 0FFFFFFFFh
  181. .text:008E4E12                 test    eax, eax
  182. .text:008E4E14                 jz      short loc_8E4E00
  183. .text:008E4E16
  184. .text:008E4E16 loc_8E4E16:                             ; CODE XREF: processevent+188j
  185. .text:008E4E16                 lea     ecx, [eax-1]
  186. .text:008E4E19                 and     ecx, eax
  187. .text:008E4E1B                 xor     ecx, eax
  188. .text:008E4E1D                 mov     [ebp+var_4C], ecx
  189. .text:008E4E20                 jnz     short loc_8E4E29
  190. .text:008E4E22                 mov     eax, 20h
  191. .text:008E4E27                 jmp     short loc_8E4E37
  192. .text:008E4E29 ; ---------------------------------------------------------------------------
  193. .text:008E4E29
  194. .text:008E4E29 loc_8E4E29:                             ; CODE XREF: processevent+1C0j
  195. .text:008E4E29                 bsr     eax, ecx
  196. .text:008E4E2C                 mov     [ebp+var_48], eax
  197. .text:008E4E2F                 mov     eax, 1Fh
  198. .text:008E4E34                 sub     eax, [ebp+var_48]
  199. .text:008E4E37
  200. .text:008E4E37 loc_8E4E37:                             ; CODE XREF: processevent+1C7j
  201. .text:008E4E37                 mov     edi, ebx
  202. .text:008E4E39                 sub     edi, eax
  203. .text:008E4E3B                 add     edi, 1Fh
  204. .text:008E4E3E
  205. .text:008E4E3E loc_8E4E3E:                             ; CODE XREF: processevent+1A6j
  206. .text:008E4E3E                 mov     eax, [ebp+var_68]
  207. .text:008E4E41                 cmp     edi, [eax+14h]
  208. .text:008E4E44                 jl      loc_8E4D17
  209. .text:008E4E4A                 mov     ebx, [ebp+var_58]
  210. .text:008E4E4D
  211. .text:008E4E4D loc_8E4E4D:                             ; CODE XREF: processevent+98j
  212. .text:008E4E4D                 mov     eax, 30h
  213. .text:008E4E52                 call    sub_1900220
  214. .text:008E4E57                 mov     esi, esp
  215. .text:008E4E59                 push    30h             ; Size
  216. .text:008E4E5B                 push    ebx             ; Src
  217. .text:008E4E5C                 push    esi             ; Dst
  218. .text:008E4E5D                 call    memcpy
  219. .text:008E4E62                 push    30h             ; Size
  220. .text:008E4E64                 lea     eax, [ebp+Src]
  221. .text:008E4E67                 push    eax             ; Src
  222. .text:008E4E68                 push    ebx             ; Dst
  223. .text:008E4E69                 call    memcpy
  224. .text:008E4E6E                 push    30h             ; Size
  225. .text:008E4E70                 lea     eax, [ebp+Src]
  226. .text:008E4E73                 push    esi             ; Src
  227. .text:008E4E74                 push    eax             ; Dst
  228. .text:008E4E75                 call    memcpy
  229. .text:008E4E7A                 add     esp, 24h
  230. .text:008E4E7D                 push    0
  231. .text:008E4E7F                 lea     ecx, [ebp+Src]
  232. .text:008E4E82                 mov     [ebp+var_4], 5
  233. .text:008E4E89                 call    sub_9EAF50
  234. .text:008E4E8E                 mov     eax, [ebp+var_24]
  235. .text:008E4E91                 mov     byte ptr [ebp+var_4], 4
  236. .text:008E4E95                 test    eax, eax
  237. .text:008E4E97                 jz      short loc_8E4EA9
  238. .text:008E4E99                 push    eax
  239. .text:008E4E9A                 call    sub_915C70
  240. .text:008E4E9F                 add     esp, 4
  241. .text:008E4EA2                 mov     [ebp+var_24], 0
  242. .text:008E4EA9
  243. .text:008E4EA9 loc_8E4EA9:                             ; CODE XREF: processevent+237j
  244. .text:008E4EA9                 mov     eax, [ebp+Src]
  245. .text:008E4EAC                 mov     [ebp+var_38], 0
  246. .text:008E4EB3                 mov     [ebp+var_3C], 0
  247. .text:008E4EBA                 mov     [ebp+var_4], 0FFFFFFFFh
  248. .text:008E4EC1                 test    eax, eax
  249. .text:008E4EC3                 jz      short loc_8E4ECE
  250. .text:008E4EC5                 push    eax
  251. .text:008E4EC6                 call    sub_915C70
  252. .text:008E4ECB                 add     esp, 4
  253. .text:008E4ECE
  254. .text:008E4ECE loc_8E4ECE:                             ; CODE XREF: processevent+263j
  255. .text:008E4ECE                 lea     esp, [ebp-98h]
  256. .text:008E4ED4                 mov     ecx, [ebp+var_C]
  257. .text:008E4ED7                 mov     large fs:0, ecx
  258. .text:008E4EDE                 pop     ecx
  259. .text:008E4EDF                 pop     edi
  260. .text:008E4EE0                 pop     esi
  261. .text:008E4EE1                 pop     ebx
  262. .text:008E4EE2                 mov     ecx, [ebp+var_10]
  263. .text:008E4EE5                 xor     ecx, ebp
  264. .text:008E4EE7                 call    sub_1900196
  265. .text:008E4EEC                 mov     esp, ebp
  266. .text:008E4EEE                 pop     ebp
  267. .text:008E4EEF                 retn
  268. .text:008E4EEF processevent    endp
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement