Advertisement
Guest User

Untitled

a guest
Jan 3rd, 2015
242
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. .text:004D5A40
  2. .text:004D5A40 ; =============== S U B R O U T I N E =======================================
  3. .text:004D5A40
  4. .text:004D5A40
  5. .text:004D5A40 hash_block proc near ; CODE XREF: sub_4D5908+3Cp
  6. .text:004D5A40 ; sub_4D5994+3Cp
  7. .text:004D5A40
  8. .text:004D5A40 var_14 = word ptr -14h
  9. .text:004D5A40
  10. .text:004D5A40 push ebx
  11. .text:004D5A41 push esi
  12. .text:004D5A42 push edi
  13. .text:004D5A43 push ebp
  14. .text:004D5A44 push ecx
  15. .text:004D5A45 mov esi, ecx
  16. .text:004D5A47 and cx, 0FFFFh
  17. .text:004D5A4C mov ebx, edx
  18. .text:004D5A4E mov [esp+14h+var_14], cx
  19. .text:004D5A52 movzx ebp, [esp+14h+var_14]
  20. .text:004D5A56 and dx, 0FFFFh
  21. .text:004D5A5B movzx ecx, dx
  22. .text:004D5A5E shr esi, 10h
  23. .text:004D5A61 mov edi, ecx
  24. .text:004D5A63 and si, 0FFFFh
  25. .text:004D5A68 imul edi, ebp
  26. .text:004D5A6B movzx edx, si
  27. .text:004D5A6E imul ecx, edx
  28. .text:004D5A71 shr ebx, 10h
  29. .text:004D5A74 mov [eax], edi
  30. .text:004D5A76 and bx, 0FFFFh
  31. .text:004D5A7B movzx edx, bx
  32. .text:004D5A7E movzx edi, [esp+14h+var_14]
  33. .text:004D5A82 movzx esi, si
  34. .text:004D5A85 movzx ebx, bx
  35. .text:004D5A88 imul edx, edi
  36. .text:004D5A8B imul ebx, esi
  37. .text:004D5A8E add ecx, edx
  38. .text:004D5A90 mov [eax+4], ebx
  39. .text:004D5A93 cmp edx, ecx
  40. .text:004D5A95 jbe short loc_4D5A9E
  41. .text:004D5A97 add dword ptr [eax+4], 10000h
  42. .text:004D5A9E
  43. .text:004D5A9E loc_4D5A9E: ; CODE XREF: hash_block+55j
  44. .text:004D5A9E mov edx, ecx
  45. .text:004D5AA0 shl edx, 10h
  46. .text:004D5AA3 add [eax], edx
  47. .text:004D5AA5 mov ebx, [eax]
  48. .text:004D5AA7 cmp edx, ebx
  49. .text:004D5AA9 jbe short loc_4D5AAE
  50. .text:004D5AAB inc dword ptr [eax+4]
  51. .text:004D5AAE
  52. .text:004D5AAE loc_4D5AAE: ; CODE XREF: hash_block+69j
  53. .text:004D5AAE shr ecx, 10h
  54. .text:004D5AB1 and ecx, 0FFFFh
  55. .text:004D5AB7 add [eax+4], ecx
  56. .text:004D5ABA pop edx
  57. .text:004D5ABB pop ebp
  58. .text:004D5ABC pop edi
  59. .text:004D5ABD pop esi
  60. .text:004D5ABE pop ebx
  61. .text:004D5ABF retn
  62.  
  63.  
  64.  
  65. .text:004D5AC0 ; =============== S U B R O U T I N E =======================================
  66. .text:004D5AC0
  67. .text:004D5AC0
  68. .text:004D5AC0 sub_4D5AC0 proc near ; CODE XREF: sub_4D51C4+CFp
  69. .text:004D5AC0
  70. .text:004D5AC0 var_24 = dword ptr -24h
  71. .text:004D5AC0 var_20 = dword ptr -20h
  72. .text:004D5AC0 var_1C = dword ptr -1Ch
  73. .text:004D5AC0 var_18 = dword ptr -18h
  74. .text:004D5AC0 var_14 = dword ptr -14h
  75. .text:004D5AC0
  76. .text:004D5AC0 push ebx
  77. .text:004D5AC1 mov ebx, ecx
  78. .text:004D5AC3 push esi
  79. .text:004D5AC4 push edi
  80. .text:004D5AC5 shr ebx, 10h
  81. .text:004D5AC8 push ebp
  82. .text:004D5AC9 mov esi, ecx
  83. .text:004D5ACB add esp, 0FFFFFFECh
  84. .text:004D5ACE and si, 0FFFFh
  85. .text:004D5AD3 and bx, 0FFFFh
  86. .text:004D5AD8 mov [esp+24h+var_24], eax
  87. .text:004D5ADB mov eax, [edx]
  88. .text:004D5ADD cmp bx, 0FFFFh
  89. .text:004D5AE2 mov [esp+24h+var_20], eax
  90. .text:004D5AE6 mov edi, [edx+4]
  91. .text:004D5AE9 mov [esp+24h+var_1C], edi
  92. .text:004D5AED jnz short loc_4D5AF9
  93. .text:004D5AEF shr edi, 10h
  94. .text:004D5AF2 and di, 0FFFFh
  95. .text:004D5AF7 jmp short loc_4D5B09
  96. .text:004D5AF9 ; ---------------------------------------------------------------------------
  97. .text:004D5AF9
  98. .text:004D5AF9 loc_4D5AF9: ; CODE XREF: sub_4D5AC0+2Dj
  99. .text:004D5AF9 movzx eax, bx
  100. .text:004D5AFC inc eax
  101. .text:004D5AFD push eax
  102. .text:004D5AFE mov eax, edi
  103. .text:004D5B00 pop edx
  104. .text:004D5B01 mov edi, edx
  105. .text:004D5B03 xor edx, edx
  106. .text:004D5B05 div edi
  107. .text:004D5B07 mov edi, eax
  108. .text:004D5B09
  109. .text:004D5B09 loc_4D5B09: ; CODE XREF: sub_4D5AC0+37j
  110. .text:004D5B09 movzx eax, di
  111. .text:004D5B0C mov edx, eax
  112. .text:004D5B0E movzx ebp, si
  113. .text:004D5B11 imul edx, ebp
  114. .text:004D5B14 mov [esp+24h+var_18], edx
  115. .text:004D5B18 movzx edx, bx
  116. .text:004D5B1B imul edx
  117. .text:004D5B1D mov [esp+24h+var_14], eax
  118. .text:004D5B21 mov eax, [esp+24h+var_18]
  119. .text:004D5B25 shl eax, 10h
  120. .text:004D5B28 or edx, 0FFFFFFFFh
  121. .text:004D5B2B sub edx, eax
  122. .text:004D5B2D sub [esp+24h+var_20], eax
  123. .text:004D5B31 mov eax, [esp+24h+var_20]
  124. .text:004D5B35 cmp edx, eax
  125. .text:004D5B37 jnb short loc_4D5B3D
  126. .text:004D5B39 dec [esp+24h+var_1C]
  127. .text:004D5B3D
  128. .text:004D5B3D loc_4D5B3D: ; CODE XREF: sub_4D5AC0+77j
  129. .text:004D5B3D mov eax, [esp+24h+var_18]
  130. .text:004D5B41 shr eax, 10h
  131. .text:004D5B44 and eax, 0FFFFh
  132. .text:004D5B49 sub [esp+24h+var_1C], eax
  133. .text:004D5B4D mov edx, [esp+24h+var_14]
  134. .text:004D5B51 sub [esp+24h+var_1C], edx
  135. .text:004D5B55 jmp short loc_4D5B7A
  136. .text:004D5B57 ; ---------------------------------------------------------------------------
  137. .text:004D5B57
  138. .text:004D5B57 loc_4D5B57: ; CODE XREF: sub_4D5AC0+C3j
  139. .text:004D5B57 ; sub_4D5AC0+DCj
  140. .text:004D5B57 movzx eax, si
  141. .text:004D5B5A shl eax, 10h
  142. .text:004D5B5D or edx, 0FFFFFFFFh
  143. .text:004D5B60 sub edx, eax
  144. .text:004D5B62 sub [esp+24h+var_20], eax
  145. .text:004D5B66 mov eax, [esp+24h+var_20]
  146. .text:004D5B6A cmp edx, eax
  147. .text:004D5B6C jnb short loc_4D5B72
  148. .text:004D5B6E dec [esp+24h+var_1C]
  149. .text:004D5B72
  150. .text:004D5B72 loc_4D5B72: ; CODE XREF: sub_4D5AC0+ACj
  151. .text:004D5B72 movzx edx, bx
  152. .text:004D5B75 sub [esp+24h+var_1C], edx
  153. .text:004D5B79 inc edi
  154. .text:004D5B7A
  155. .text:004D5B7A loc_4D5B7A: ; CODE XREF: sub_4D5AC0+95j
  156. .text:004D5B7A movzx eax, bx
  157. .text:004D5B7D mov edx, [esp+24h+var_1C]
  158. .text:004D5B81 cmp eax, edx
  159. .text:004D5B83 jb short loc_4D5B57
  160. .text:004D5B85 movzx eax, bx
  161. .text:004D5B88 mov edx, [esp+24h+var_1C]
  162. .text:004D5B8C cmp eax, edx
  163. .text:004D5B8E jnz short loc_4D5B9E
  164. .text:004D5B90 movzx eax, si
  165. .text:004D5B93 shl eax, 10h
  166. .text:004D5B96 mov edx, [esp+24h+var_20]
  167. .text:004D5B9A cmp eax, edx
  168. .text:004D5B9C jbe short loc_4D5B57
  169. .text:004D5B9E
  170. .text:004D5B9E loc_4D5B9E: ; CODE XREF: sub_4D5AC0+CEj
  171. .text:004D5B9E cmp bx, 0FFFFh
  172. .text:004D5BA3 jnz short loc_4D5BB0
  173. .text:004D5BA5 mov ax, word ptr [esp+24h+var_1C]
  174. .text:004D5BAA and ax, 0FFFFh
  175. .text:004D5BAE jmp short loc_4D5BD0
  176. .text:004D5BB0 ; ---------------------------------------------------------------------------
  177. .text:004D5BB0
  178. .text:004D5BB0 loc_4D5BB0: ; CODE XREF: sub_4D5AC0+E3j
  179. .text:004D5BB0 mov edx, [esp+24h+var_20]
  180. .text:004D5BB4 mov eax, [esp+24h+var_1C]
  181. .text:004D5BB8 shr edx, 10h
  182. .text:004D5BBB shl eax, 10h
  183. .text:004D5BBE and edx, 0FFFFh
  184. .text:004D5BC4 add eax, edx
  185. .text:004D5BC6 movzx edx, bx
  186. .text:004D5BC9 inc edx
  187. .text:004D5BCA mov ebp, edx
  188. .text:004D5BCC xor edx, edx
  189. .text:004D5BCE div ebp
  190. .text:004D5BD0
  191. .text:004D5BD0 loc_4D5BD0: ; CODE XREF: sub_4D5AC0+EEj
  192. .text:004D5BD0 movzx edx, ax
  193. .text:004D5BD3 movzx esi, si
  194. .text:004D5BD6 imul edx, esi
  195. .text:004D5BD9 mov [esp+24h+var_18], edx
  196. .text:004D5BDD movzx edx, ax
  197. .text:004D5BE0 movzx ebx, bx
  198. .text:004D5BE3 imul edx, ebx
  199. .text:004D5BE6 mov [esp+24h+var_14], edx
  200. .text:004D5BEA or ebx, 0FFFFFFFFh
  201. .text:004D5BED mov edx, [esp+24h+var_18]
  202. .text:004D5BF1 sub [esp+24h+var_20], edx
  203. .text:004D5BF5 mov esi, [esp+24h+var_18]
  204. .text:004D5BF9 mov edx, [esp+24h+var_20]
  205. .text:004D5BFD sub ebx, esi
  206. .text:004D5BFF cmp edx, ebx
  207. .text:004D5C01 jbe short loc_4D5C07
  208. .text:004D5C03 dec [esp+24h+var_1C]
  209. .text:004D5C07
  210. .text:004D5C07 loc_4D5C07: ; CODE XREF: sub_4D5AC0+141j
  211. .text:004D5C07 mov edx, [esp+24h+var_14]
  212. .text:004D5C0B shl edx, 10h
  213. .text:004D5C0E or ebx, 0FFFFFFFFh
  214. .text:004D5C11 sub ebx, edx
  215. .text:004D5C13 sub [esp+24h+var_20], edx
  216. .text:004D5C17 mov edx, [esp+24h+var_20]
  217. .text:004D5C1B cmp ebx, edx
  218. .text:004D5C1D jnb short loc_4D5C23
  219. .text:004D5C1F dec [esp+24h+var_1C]
  220. .text:004D5C23
  221. .text:004D5C23 loc_4D5C23: ; CODE XREF: sub_4D5AC0+15Dj
  222. .text:004D5C23 mov edx, [esp+24h+var_14]
  223. .text:004D5C27 shr edx, 10h
  224. .text:004D5C2A and edx, 0FFFFh
  225. .text:004D5C30 sub [esp+24h+var_1C], edx
  226. .text:004D5C34 jmp short loc_4D5C4C
  227. .text:004D5C36 ; ---------------------------------------------------------------------------
  228. .text:004D5C36
  229. .text:004D5C36 loc_4D5C36: ; CODE XREF: sub_4D5AC0+192j
  230. .text:004D5C36 ; sub_4D5AC0+1A2j
  231. .text:004D5C36 sub [esp+24h+var_20], ecx
  232. .text:004D5C3A or ebx, 0FFFFFFFFh
  233. .text:004D5C3D sub ebx, ecx
  234. .text:004D5C3F mov edx, [esp+24h+var_20]
  235. .text:004D5C43 cmp edx, ebx
  236. .text:004D5C45 jbe short loc_4D5C4B
  237. .text:004D5C47 dec [esp+24h+var_1C]
  238. .text:004D5C4B
  239. .text:004D5C4B loc_4D5C4B: ; CODE XREF: sub_4D5AC0+185j
  240. .text:004D5C4B inc eax
  241. .text:004D5C4C
  242. .text:004D5C4C loc_4D5C4C: ; CODE XREF: sub_4D5AC0+174j
  243. .text:004D5C4C mov edx, [esp+24h+var_1C]
  244. .text:004D5C50 test edx, edx
  245. .text:004D5C52 ja short loc_4D5C36
  246. .text:004D5C54 mov edx, [esp+24h+var_1C]
  247. .text:004D5C58 test edx, edx
  248. .text:004D5C5A jnz short loc_4D5C64
  249. .text:004D5C5C mov edx, [esp+24h+var_20]
  250. .text:004D5C60 cmp ecx, edx
  251. .text:004D5C62 jbe short loc_4D5C36
  252. .text:004D5C64
  253. .text:004D5C64 loc_4D5C64: ; CODE XREF: sub_4D5AC0+19Aj
  254. .text:004D5C64 movzx ecx, di
  255. .text:004D5C67 shl ecx, 10h
  256. .text:004D5C6A movzx eax, ax
  257. .text:004D5C6D add ecx, eax
  258. .text:004D5C6F mov eax, [esp+24h+var_24]
  259. .text:004D5C72 mov [eax], ecx
  260. .text:004D5C74 add esp, 14h
  261. .text:004D5C77 pop ebp
  262. .text:004D5C78 pop edi
  263. .text:004D5C79 pop esi
  264. .text:004D5C7A pop ebx
  265. .text:004D5C7B retn
  266. .text:004D5C7B sub_4D5AC0 endp
  267. .text:004D5C7B
  268. .text:004D5C7C
Advertisement
RAW Paste Data Copied
Advertisement