Advertisement
Guest User

ASM func

a guest
Aug 4th, 2015
1,350
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. I am trying to understand how a HASH (or encrypted version of a code) is produced in some software.
  2. From now, i have identified the function responsible of generating a 128 bit value.
  3. My goal is to be able to create a software able to generate the same 128 bit value from an input string composed of 6 to 9 numbers
  4. I wonder if one of you might be able to, just by looking at the code, tells me if it is a "well known" hashing / crypting algorithm
  5. Any advice on how to be able to reuse the asm code into an autonomous program would also be appreciated (i guess it is a bit like creating a sort of keygen...)
  6. Thanks
  7. Here is the function call
  8.  
  9. ; Function Call :
  10. 0916532C | push ecx | ;&key = et_ _ _ _ts (65745f5f5f5f7473) <=== Always the same (supposed to be a constant key)
  11. 0916532D | push ebp | ;&Buffer_Result <=== the 128 bit resulting value is stored here
  12. 0916532E | push esi | ;&str_user_code (6 to 8 numbers) <== my input string
  13. 0916532F | call <sn0eup.091A1640> | ;Generate 128bit Value ($str_user_code, $Buffer_Result, $key)
  14. ; Function Begin
  15. 091A1640 | sub esp,10 |
  16. 091A1643 | push ebx |
  17. 091A1644 | mov ebx,dword ptr ss:[esp+18] |
  18. 091A1648 | push ebp |
  19. 091A1649 | push esi |
  20. 091A164A | mov eax,dword ptr ds:[ebx] |
  21. 091A164C | push edi |
  22. 091A164D | mov edi,dword ptr ss:[esp+2C] |
  23. 091A1651 | mov ecx,eax |
  24. 091A1653 | ror ecx,8 |
  25. 091A1656 | mov esi,dword ptr ds:[edi] |
  26. 091A1658 | and ecx,FF00FF00 |
  27. 091A165E | rol eax,8 |
  28. 091A1661 | and eax,FF00FF |
  29. 091A1666 | or ecx,eax |
  30. 091A1668 | mov eax,dword ptr ds:[ebx+4] |
  31. 091A166B | xor ecx,esi |
  32. 091A166D | mov esi,eax |
  33. 091A166F | ror esi,8 |
  34. 091A1672 | and esi,FF00FF00 |
  35. 091A1678 | mov dword ptr ss:[esp+1C],ecx |
  36. 091A167C | rol eax,8 |
  37. 091A167F | and eax,FF00FF |
  38. 091A1684 | or esi,eax |
  39. 091A1686 | mov eax,dword ptr ds:[edi+4] |
  40. 091A1689 | xor esi,eax |
  41. 091A168B | mov eax,dword ptr ds:[ebx+8] |
  42. 091A168E | mov edx,eax |
  43. 091A1690 | mov ebx,dword ptr ds:[ebx+C] |
  44. 091A1693 | ror edx,8 |
  45. 091A1696 | and edx,FF00FF00 |
  46. 091A169C | mov dword ptr ss:[esp+2C],esi |
  47. 091A16A0 | rol eax,8 |
  48. 091A16A3 | and eax,FF00FF |
  49. 091A16A8 | or edx,eax |
  50. 091A16AA | mov eax,dword ptr ds:[edi+8] |
  51. 091A16AD | xor edx,eax |
  52. 091A16AF | mov eax,ebx |
  53. 091A16B1 | ror eax,8 |
  54. 091A16B4 | and eax,FF00FF00 |
  55. 091A16B9 | mov dword ptr ss:[esp+10],edx |
  56. 091A16BD | rol ebx,8 |
  57. 091A16C0 | and ebx,FF00FF |
  58. 091A16C6 | or eax,ebx |
  59. 091A16C8 | mov ebx,dword ptr ds:[edi+C] |
  60. 091A16CB | xor eax,ebx |
  61. 091A16CD | xor ebx,ebx |
  62. 091A16CF | mov bl,dh |
  63. 091A16D1 | mov dword ptr ss:[esp+14],eax |
  64. 091A16D5 | shr esi,18 |
  65. 091A16D8 | mov edx,dword ptr ds:[ebx*4+92219E8] |
  66. 091A16DF | xor ebx,ebx |
  67. 091A16E1 | mov bl,byte ptr ss:[esp+2E] |
  68. 091A16E5 | mov ebp,dword ptr ds:[ebx*4+92215E8] |
  69. 091A16EC | mov ebx,ecx |
  70. 091A16EE | shr ebx,18 |
  71. 091A16F1 | xor edx,ebp |
  72. 091A16F3 | mov ebp,dword ptr ds:[ebx*4+92211E8] |
  73. 091A16FA | mov ebx,eax |
  74. 091A16FC | and ebx,FF |
  75. 091A1702 | xor edx,ebp |
  76. 091A1704 | mov ebp,dword ptr ds:[ebx*4+9221DE8] |
  77. 091A170B | xor ebx,ebx |
  78. 091A170D | mov bl,ah |
  79. 091A170F | xor edx,ebp |
  80. 091A1711 | mov ebp,dword ptr ds:[edi+10] |
  81. 091A1714 | xor eax,eax |
  82. 091A1716 | mov al,byte ptr ss:[esp+12] |
  83. 091A171A | xor edx,ebp |
  84. 091A171C | mov ebp,dword ptr ds:[ebx*4+92219E8] |
  85. 091A1723 | mov dword ptr ss:[esp+18],edx |
  86. 091A1727 | mov ebx,dword ptr ds:[eax*4+92215E8] |
  87. 091A172E | mov eax,ecx |
  88. 091A1730 | xor ebp,ebx |
  89. 091A1732 | mov ebx,dword ptr ds:[esi*4+92211E8] |
  90. 091A1739 | mov esi,dword ptr ds:[edi+14] |
  91. 091A173C | and eax,FF |
  92. 091A1741 | xor ebp,ebx |
  93. 091A1743 | xor ebp,dword ptr ds:[eax*4+9221DE8] |
  94. 091A174A | xor ebp,esi |
  95. 091A174C | mov dword ptr ss:[esp+24],ebp |
  96. 091A1750 | xor eax,eax |
  97. 091A1752 | xor ebx,ebx |
  98. 091A1754 | mov al,byte ptr ss:[esp+16] |
  99. 091A1758 | mov bl,ch |
  100. 091A175A | mov eax,dword ptr ds:[eax*4+92215E8] |
  101. 091A1761 | mov ecx,dword ptr ds:[ebx*4+92219E8] |
  102. 091A1768 | xor eax,ecx |
  103. 091A176A | mov ecx,dword ptr ss:[esp+10] |
  104. 091A176E | shr ecx,18 |
  105. 091A1771 | mov esi,dword ptr ds:[ecx*4+92211E8] |
  106. 091A1778 | mov ecx,dword ptr ss:[esp+2C] |
  107. 091A177C | xor eax,esi |
  108. 091A177E | mov esi,ecx |
  109. 091A1780 | and esi,FF |
  110. 091A1786 | mov ebx,dword ptr ds:[esi*4+9221DE8] |
  111. 091A178D | xor eax,ebx |
  112. 091A178F | mov ebx,dword ptr ds:[edi+18] |
  113. 091A1792 | xor eax,ebx |
  114. 091A1794 | xor ebx,ebx |
  115. 091A1796 | mov bl,ch |
  116. 091A1798 | mov dword ptr ss:[esp+2C],eax |
  117. 091A179C | mov ecx,dword ptr ds:[ebx*4+92219E8] |
  118. 091A17A3 | xor ebx,ebx |
  119. 091A17A5 | mov bl,byte ptr ss:[esp+1E] |
  120. 091A17A9 | mov esi,dword ptr ds:[ebx*4+92215E8] |
  121. 091A17B0 | xor ecx,esi |
  122. 091A17B2 | mov esi,dword ptr ss:[esp+14] |
  123. 091A17B6 | shr esi,18 |
  124. 091A17B9 | mov ebx,dword ptr ds:[esi*4+92211E8] |
  125. 091A17C0 | mov esi,dword ptr ss:[esp+10] |
  126. 091A17C4 | and esi,FF |
  127. 091A17CA | xor ecx,ebx |
  128. 091A17CC | mov ebx,dword ptr ds:[esi*4+9221DE8] |
  129. 091A17D3 | mov esi,dword ptr ds:[edi+1C] |
  130. 091A17D6 | xor ecx,ebx |
  131. 091A17D8 | xor ecx,esi |
  132. 091A17DA | lea esi,dword ptr ds:[edi+20] |
  133. 091A17DD | mov edi,dword ptr ds:[edi+F0] |
  134. 091A17E3 | mov dword ptr ss:[esp+14],ecx |
  135. 091A17E7 | sar edi,1 |
  136. 091A17E9 | dec edi |
  137. 091A17EA | je sn0eup.91A1A20 |
  138. 091A17F0 | mov ebp,edi |
  139. 091A17F2 | xor edx,edx |
  140. 091A17F4 | xor ebx,ebx |
  141. 091A17F6 | mov bl,byte ptr ss:[esp+26] |
  142. 091A17FA | mov dl,ah |
  143. 091A17FC | mov edi,dword ptr ds:[edx*4+92219E8] |
  144. 091A1803 | mov edx,dword ptr ds:[ebx*4+92215E8] |
  145. 091A180A | xor edi,edx |
  146. 091A180C | mov edx,dword ptr ss:[esp+18] |
  147. 091A1810 | mov ebx,edx |
  148. 091A1812 | shr ebx,18 |
  149. 091A1815 | xor edi,dword ptr ds:[ebx*4+92211E8] |
  150. 091A181C | mov ebx,ecx |
  151. 091A181E | and ebx,FF |
  152. 091A1824 | xor edi,dword ptr ds:[ebx*4+9221DE8] |
  153. 091A182B | mov ebx,dword ptr ds:[esi] |
  154. 091A182D | xor edi,ebx |
  155. 091A182F | xor ebx,ebx |
  156. 091A1831 | mov bl,ch |
  157. 091A1833 | mov dword ptr ss:[esp+1C],edi |
  158. 091A1837 | mov ecx,dword ptr ds:[ebx*4+92219E8] |
  159. 091A183E | xor ebx,ebx |
  160. 091A1840 | mov bl,byte ptr ss:[esp+2E] |
  161. 091A1844 | mov edi,dword ptr ds:[ebx*4+92215E8] |
  162. 091A184B | xor ecx,edi |
  163. 091A184D | mov edi,dword ptr ss:[esp+24] |
  164. 091A1851 | shr edi,18 |
  165. 091A1854 | mov ebx,dword ptr ds:[edi*4+92211E8] |
  166. 091A185B | mov edi,edx |
  167. 091A185D | and edi,FF |
  168. 091A1863 | xor ecx,ebx |
  169. 091A1865 | mov ebx,dword ptr ds:[edi*4+9221DE8] |
  170. 091A186C | mov edi,dword ptr ds:[esi+4] |
  171. 091A186F | xor ecx,ebx |
  172. 091A1871 | xor ebx,ebx |
  173. 091A1873 | xor ecx,edi |
  174. 091A1875 | mov bl,dh |
  175. 091A1877 | mov dword ptr ss:[esp+2C],ecx |
  176. 091A187B | xor ecx,ecx |
  177. 091A187D | mov cl,byte ptr ss:[esp+16] |
  178. 091A1881 | mov edx,dword ptr ds:[ebx*4+92219E8] |
  179. 091A1888 | mov ecx,dword ptr ds:[ecx*4+92215E8] |
  180. 091A188F | xor ecx,edx |
  181. 091A1891 | mov edx,eax |
  182. 091A1893 | shr edx,18 |
  183. 091A1896 | and eax,FF |
  184. 091A189B | mov edi,dword ptr ds:[edx*4+92211E8] |
  185. 091A18A2 | mov edx,dword ptr ss:[esp+24] |
  186. 091A18A6 | xor ecx,edi |
  187. 091A18A8 | mov edi,edx |
  188. 091A18AA | and edi,FF |
  189. 091A18B0 | mov ebx,dword ptr ds:[edi*4+9221DE8] |
  190. 091A18B7 | xor ecx,ebx |
  191. 091A18B9 | mov ebx,dword ptr ds:[esi+8] |
  192. 091A18BC | xor ecx,ebx |
  193. 091A18BE | xor ebx,ebx |
  194. 091A18C0 | mov bl,dh |
  195. 091A18C2 | mov dword ptr ss:[esp+10],ecx |
  196. 091A18C6 | mov edx,dword ptr ds:[ebx*4+92219E8] |
  197. 091A18CD | xor ebx,ebx |
  198. 091A18CF | mov bl,byte ptr ss:[esp+1A] |
  199. 091A18D3 | mov edi,dword ptr ds:[ebx*4+92215E8] |
  200. 091A18DA | xor edx,edi |
  201. 091A18DC | mov edi,dword ptr ss:[esp+14] |
  202. 091A18E0 | shr edi,18 |
  203. 091A18E3 | mov ebx,dword ptr ds:[edi*4+92211E8] |
  204. 091A18EA | mov edi,dword ptr ds:[esi+C] |
  205. 091A18ED | xor edx,ebx |
  206. 091A18EF | mov ebx,dword ptr ds:[eax*4+9221DE8] |
  207. 091A18F6 | xor edx,ebx |
  208. 091A18F8 | xor eax,eax |
  209. 091A18FA | xor ebx,ebx |
  210. 091A18FC | mov al,ch |
  211. 091A18FE | mov bl,byte ptr ss:[esp+2E] |
  212. 091A1902 | xor edx,edi |
  213. 091A1904 | mov edi,dword ptr ds:[eax*4+92219E8] |
  214. 091A190B | mov dword ptr ss:[esp+14],edx |
  215. 091A190F | mov eax,dword ptr ds:[ebx*4+92215E8] |
  216. 091A1916 | xor edi,eax |
  217. 091A1918 | mov eax,dword ptr ss:[esp+1C] |
  218. 091A191C | mov ebx,eax |
  219. 091A191E | shr ebx,18 |
  220. 091A1921 | xor edi,dword ptr ds:[ebx*4+92211E8] |
  221. 091A1928 | mov ebx,edx |
  222. 091A192A | and ebx,FF |
  223. 091A1930 | add esi,20 |
  224. 091A1933 | xor edi,dword ptr ds:[ebx*4+9221DE8] |
  225. 091A193A | mov ebx,dword ptr ds:[esi-10] |
  226. 091A193D | xor edi,ebx |
  227. 091A193F | xor ebx,ebx |
  228. 091A1941 | mov bl,dh |
  229. 091A1943 | xor edx,edx |
  230. 091A1945 | mov dl,byte ptr ss:[esp+12] |
  231. 091A1949 | mov dword ptr ss:[esp+18],edi |
  232. 091A194D | mov edi,dword ptr ds:[ebx*4+92219E8] |
  233. 091A1954 | mov ebx,dword ptr ds:[edx*4+92215E8] |
  234. 091A195B | mov edx,dword ptr ss:[esp+2C] |
  235. 091A195F | shr edx,18 |
  236. 091A1962 | xor edi,ebx |
  237. 091A1964 | mov ebx,dword ptr ds:[edx*4+92211E8] |
  238. 091A196B | mov edx,eax |
  239. 091A196D | and edx,FF |
  240. 091A1973 | xor edi,ebx |
  241. 091A1975 | mov ebx,dword ptr ds:[edx*4+9221DE8] |
  242. 091A197C | xor edx,edx |
  243. 091A197E | mov dl,byte ptr ss:[esp+16] |
  244. 091A1982 | xor edi,ebx |
  245. 091A1984 | mov ebx,dword ptr ds:[esi-C] |
  246. 091A1987 | xor edi,ebx |
  247. 091A1989 | xor ebx,ebx |
  248. 091A198B | mov bl,ah |
  249. 091A198D | mov eax,dword ptr ds:[edx*4+92215E8] |
  250. 091A1994 | mov dword ptr ss:[esp+24],edi |
  251. 091A1998 | mov edx,dword ptr ds:[ebx*4+92219E8] |
  252. 091A199F | xor eax,edx |
  253. 091A19A1 | mov edx,ecx |
  254. 091A19A3 | shr edx,18 |
  255. 091A19A6 | and ecx,FF |
  256. 091A19AC | mov edi,dword ptr ds:[edx*4+92211E8] |
  257. 091A19B3 | mov edx,dword ptr ss:[esp+2C] |
  258. 091A19B7 | xor eax,edi |
  259. 091A19B9 | mov edi,edx |
  260. 091A19BB | and edi,FF |
  261. 091A19C1 | mov ebx,dword ptr ds:[edi*4+9221DE8] |
  262. 091A19C8 | mov edi,dword ptr ds:[esi-8] |
  263. 091A19CB | xor eax,ebx |
  264. 091A19CD | xor ebx,ebx |
  265. 091A19CF | mov bl,dh |
  266. 091A19D1 | xor edx,edx |
  267. 091A19D3 | mov dl,byte ptr ss:[esp+1E] |
  268. 091A19D7 | xor eax,edi |
  269. 091A19D9 | mov edi,dword ptr ds:[ebx*4+92219E8] |
  270. 091A19E0 | mov dword ptr ss:[esp+2C],eax |
  271. 091A19E4 | mov ebx,dword ptr ds:[edx*4+92215E8] |
  272. 091A19EB | mov edx,dword ptr ss:[esp+14] |
  273. 091A19EF | shr edx,18 |
  274. 091A19F2 | xor edi,ebx |
  275. 091A19F4 | mov ebx,dword ptr ds:[edx*4+92211E8] |
  276. 091A19FB | mov edx,dword ptr ds:[ecx*4+9221DE8] |
  277. 091A1A02 | xor edi,ebx |
  278. 091A1A04 | mov ebx,dword ptr ds:[esi-4] |
  279. 091A1A07 | xor edi,edx |
  280. 091A1A09 | xor edi,ebx |
  281. 091A1A0B | dec ebp |
  282. 091A1A0C | mov ecx,edi |
  283. 091A1A0E | mov dword ptr ss:[esp+14],ecx |
  284. 091A1A12 | jnz sn0eup.91A17F2 |
  285. 091A1A18 | mov edx,dword ptr ss:[esp+18] |
  286. 091A1A1C | mov ebp,dword ptr ss:[esp+24] |
  287. 091A1A20 | xor ebx,ebx |
  288. 091A1A22 | mov bl,byte ptr ss:[esp+26] |
  289. 091A1A26 | shr ebp,18 |
  290. 091A1A29 | mov edi,dword ptr ds:[ebx*4+92221E8] |
  291. 091A1A30 | xor ebx,ebx |
  292. 091A1A32 | mov bl,ah |
  293. 091A1A34 | and edi,FF0000 |
  294. 091A1A3A | mov ebx,dword ptr ds:[ebx*4+92221E8] |
  295. 091A1A41 | and ebx,FF00 |
  296. 091A1A47 | xor edi,ebx |
  297. 091A1A49 | mov ebx,edx |
  298. 091A1A4B | shr ebx,18 |
  299. 091A1A4E | mov ebx,dword ptr ds:[ebx*4+92221E8] |
  300. 091A1A55 | and ebx,FF000000 |
  301. 091A1A5B | xor edi,ebx |
  302. 091A1A5D | mov ebx,ecx |
  303. 091A1A5F | and ebx,FF |
  304. 091A1A65 | mov ebx,dword ptr ds:[ebx*4+92221E8] |
  305. 091A1A6C | and ebx,FF |
  306. 091A1A72 | xor edi,ebx |
  307. 091A1A74 | mov ebx,dword ptr ds:[esi] |
  308. 091A1A76 | xor edi,ebx |
  309. 091A1A78 | mov ebx,edi |
  310. 091A1A7A | ror ebx,8 |
  311. 091A1A7D | and ebx,FF00FF00 |
  312. 091A1A83 | rol edi,8 |
  313. 091A1A86 | and edi,FF00FF |
  314. 091A1A8C | or ebx,edi |
  315. 091A1A8E | mov edi,dword ptr ss:[esp+28] | ;[esp+28]:Code2
  316. 091A1A92 | mov dword ptr ds:[edi],ebx |
  317. 091A1A94 | xor ebx,ebx |
  318. 091A1A96 | mov bl,byte ptr ss:[esp+2E] |
  319. 091A1A9A | mov edi,dword ptr ds:[ebx*4+92221E8] |
  320. 091A1AA1 | xor ebx,ebx |
  321. 091A1AA3 | mov bl,ch |
  322. 091A1AA5 | and edi,FF0000 |
  323. 091A1AAB | mov ebx,dword ptr ds:[ebx*4+92221E8] |
  324. 091A1AB2 | and ebx,FF00 |
  325. 091A1AB8 | xor edi,ebx |
  326. 091A1ABA | mov ebx,dword ptr ds:[ebp*4+92221E8] |
  327. 091A1AC1 | and ebx,FF000000 |
  328. 091A1AC7 | mov ebp,dword ptr ss:[esp+28] | ;[esp+28]:Code2
  329. 091A1ACB | xor edi,ebx |
  330. 091A1ACD | mov ebx,edx |
  331. 091A1ACF | and ebx,FF |
  332. 091A1AD5 | mov ebx,dword ptr ds:[ebx*4+92221E8] |
  333. 091A1ADC | and ebx,FF |
  334. 091A1AE2 | xor edi,ebx |
  335. 091A1AE4 | mov ebx,dword ptr ds:[esi+4] |
  336. 091A1AE7 | xor edi,ebx |
  337. 091A1AE9 | mov ebx,edi |
  338. 091A1AEB | ror ebx,8 |
  339. 091A1AEE | and ebx,FF00FF00 |
  340. 091A1AF4 | rol edi,8 |
  341. 091A1AF7 | and edi,FF00FF |
  342. 091A1AFD | or ebx,edi |
  343. 091A1AFF | mov dword ptr ss:[ebp+4],ebx |
  344. 091A1B02 | xor ebx,ebx |
  345. 091A1B04 | mov bl,byte ptr ss:[esp+16] |
  346. 091A1B08 | mov edi,dword ptr ds:[ebx*4+92221E8] |
  347. 091A1B0F | xor ebx,ebx |
  348. 091A1B11 | mov bl,dh |
  349. 091A1B13 | and edi,FF0000 |
  350. 091A1B19 | mov edx,dword ptr ds:[ebx*4+92221E8] |
  351. 091A1B20 | and edx,FF00 |
  352. 091A1B26 | xor edi,edx |
  353. 091A1B28 | mov edx,eax |
  354. 091A1B2A | shr edx,18 |
  355. 091A1B2D | mov edx,dword ptr ds:[edx*4+92221E8] |
  356. 091A1B34 | and edx,FF000000 |
  357. 091A1B3A | xor edi,edx |
  358. 091A1B3C | mov edx,dword ptr ss:[esp+24] |
  359. 091A1B40 | mov ebx,edx |
  360. 091A1B42 | and ebx,FF |
  361. 091A1B48 | mov ebx,dword ptr ds:[ebx*4+92221E8] |
  362. 091A1B4F | and ebx,FF |
  363. 091A1B55 | xor edi,ebx |
  364. 091A1B57 | mov ebx,dword ptr ds:[esi+8] |
  365. 091A1B5A | xor edi,ebx |
  366. 091A1B5C | mov ebx,edi |
  367. 091A1B5E | ror ebx,8 |
  368. 091A1B61 | and ebx,FF00FF00 |
  369. 091A1B67 | and eax,FF |
  370. 091A1B6C | rol edi,8 |
  371. 091A1B6F | and edi,FF00FF |
  372. 091A1B75 | or ebx,edi |
  373. 091A1B77 | mov dword ptr ss:[ebp+8],ebx |
  374. 091A1B7A | xor ebx,ebx |
  375. 091A1B7C | mov bl,byte ptr ss:[esp+1A] |
  376. 091A1B80 | shr ecx,18 |
  377. 091A1B83 | mov edi,dword ptr ds:[ebx*4+92221E8] |
  378. 091A1B8A | xor ebx,ebx |
  379. 091A1B8C | mov ecx,dword ptr ds:[ecx*4+92221E8] |
  380. 091A1B93 | mov bl,dh |
  381. 091A1B95 | and edi,FF0000 |
  382. 091A1B9B | and ecx,FF000000 |
  383. 091A1BA1 | mov edx,dword ptr ds:[ebx*4+92221E8] |
  384. 091A1BA8 | and edx,FF00 |
  385. 091A1BAE | xor edi,edx |
  386. 091A1BB0 | mov edx,dword ptr ds:[eax*4+92221E8] |
  387. 091A1BB7 | xor edi,ecx |
  388. 091A1BB9 | and edx,FF |
  389. 091A1BBF | xor edi,edx |
  390. 091A1BC1 | mov edx,dword ptr ds:[esi+C] |
  391. 091A1BC4 | xor edi,edx |
  392. 091A1BC6 | mov eax,edi |
  393. 091A1BC8 | ror eax,8 |
  394. 091A1BCB | and eax,FF00FF00 |
  395. 091A1BD0 | rol edi,8 |
  396. 091A1BD3 | and edi,FF00FF |
  397. 091A1BD9 | or eax,edi |
  398. 091A1BDB | pop edi |
  399. 091A1BDC | mov dword ptr ss:[ebp+C],eax |
  400. 091A1BDF | pop esi |
  401. 091A1BE0 | pop ebp |
  402. 091A1BE1 | pop ebx |
  403. 091A1BE2 | add esp,10 |
  404. 091A1BE5 | ret |
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement