]> git.proxmox.com Git - mirror_edk2.git/blame - CryptoPkg/Library/OpensslLib/IA32/crypto/sha/sha256-586.nasm
CryptoPkg/OpensslLib: Commit the auto-generated assembly files for IA32
[mirror_edk2.git] / CryptoPkg / Library / OpensslLib / IA32 / crypto / sha / sha256-586.nasm
CommitLineData
4102950a
CZ
1; WARNING: do not edit!\r
2; Generated from openssl/crypto/sha/asm/sha256-586.pl\r
3;\r
4; Copyright 2007-2020 The OpenSSL Project Authors. All Rights Reserved.\r
5;\r
6; Licensed under the OpenSSL license (the "License"). You may not use\r
7; this file except in compliance with the License. You can obtain a copy\r
8; in the file LICENSE in the source distribution or at\r
9; https://www.openssl.org/source/license.html\r
10\r
11%ifidn __OUTPUT_FORMAT__,obj\r
12section code use32 class=code align=64\r
13%elifidn __OUTPUT_FORMAT__,win32\r
14$@feat.00 equ 1\r
15section .text code align=64\r
16%else\r
17section .text code\r
18%endif\r
19;extern _OPENSSL_ia32cap_P\r
20global _sha256_block_data_order\r
21align 16\r
22_sha256_block_data_order:\r
23L$_sha256_block_data_order_begin:\r
24 push ebp\r
25 push ebx\r
26 push esi\r
27 push edi\r
28 mov esi,DWORD [20+esp]\r
29 mov edi,DWORD [24+esp]\r
30 mov eax,DWORD [28+esp]\r
31 mov ebx,esp\r
32 call L$000pic_point\r
33L$000pic_point:\r
34 pop ebp\r
35 lea ebp,[(L$001K256-L$000pic_point)+ebp]\r
36 sub esp,16\r
37 and esp,-64\r
38 shl eax,6\r
39 add eax,edi\r
40 mov DWORD [esp],esi\r
41 mov DWORD [4+esp],edi\r
42 mov DWORD [8+esp],eax\r
43 mov DWORD [12+esp],ebx\r
44 jmp NEAR L$002loop\r
45align 16\r
46L$002loop:\r
47 mov eax,DWORD [edi]\r
48 mov ebx,DWORD [4+edi]\r
49 mov ecx,DWORD [8+edi]\r
50 bswap eax\r
51 mov edx,DWORD [12+edi]\r
52 bswap ebx\r
53 push eax\r
54 bswap ecx\r
55 push ebx\r
56 bswap edx\r
57 push ecx\r
58 push edx\r
59 mov eax,DWORD [16+edi]\r
60 mov ebx,DWORD [20+edi]\r
61 mov ecx,DWORD [24+edi]\r
62 bswap eax\r
63 mov edx,DWORD [28+edi]\r
64 bswap ebx\r
65 push eax\r
66 bswap ecx\r
67 push ebx\r
68 bswap edx\r
69 push ecx\r
70 push edx\r
71 mov eax,DWORD [32+edi]\r
72 mov ebx,DWORD [36+edi]\r
73 mov ecx,DWORD [40+edi]\r
74 bswap eax\r
75 mov edx,DWORD [44+edi]\r
76 bswap ebx\r
77 push eax\r
78 bswap ecx\r
79 push ebx\r
80 bswap edx\r
81 push ecx\r
82 push edx\r
83 mov eax,DWORD [48+edi]\r
84 mov ebx,DWORD [52+edi]\r
85 mov ecx,DWORD [56+edi]\r
86 bswap eax\r
87 mov edx,DWORD [60+edi]\r
88 bswap ebx\r
89 push eax\r
90 bswap ecx\r
91 push ebx\r
92 bswap edx\r
93 push ecx\r
94 push edx\r
95 add edi,64\r
96 lea esp,[esp-36]\r
97 mov DWORD [104+esp],edi\r
98 mov eax,DWORD [esi]\r
99 mov ebx,DWORD [4+esi]\r
100 mov ecx,DWORD [8+esi]\r
101 mov edi,DWORD [12+esi]\r
102 mov DWORD [8+esp],ebx\r
103 xor ebx,ecx\r
104 mov DWORD [12+esp],ecx\r
105 mov DWORD [16+esp],edi\r
106 mov DWORD [esp],ebx\r
107 mov edx,DWORD [16+esi]\r
108 mov ebx,DWORD [20+esi]\r
109 mov ecx,DWORD [24+esi]\r
110 mov edi,DWORD [28+esi]\r
111 mov DWORD [24+esp],ebx\r
112 mov DWORD [28+esp],ecx\r
113 mov DWORD [32+esp],edi\r
114align 16\r
115L$00300_15:\r
116 mov ecx,edx\r
117 mov esi,DWORD [24+esp]\r
118 ror ecx,14\r
119 mov edi,DWORD [28+esp]\r
120 xor ecx,edx\r
121 xor esi,edi\r
122 mov ebx,DWORD [96+esp]\r
123 ror ecx,5\r
124 and esi,edx\r
125 mov DWORD [20+esp],edx\r
126 xor edx,ecx\r
127 add ebx,DWORD [32+esp]\r
128 xor esi,edi\r
129 ror edx,6\r
130 mov ecx,eax\r
131 add ebx,esi\r
132 ror ecx,9\r
133 add ebx,edx\r
134 mov edi,DWORD [8+esp]\r
135 xor ecx,eax\r
136 mov DWORD [4+esp],eax\r
137 lea esp,[esp-4]\r
138 ror ecx,11\r
139 mov esi,DWORD [ebp]\r
140 xor ecx,eax\r
141 mov edx,DWORD [20+esp]\r
142 xor eax,edi\r
143 ror ecx,2\r
144 add ebx,esi\r
145 mov DWORD [esp],eax\r
146 add edx,ebx\r
147 and eax,DWORD [4+esp]\r
148 add ebx,ecx\r
149 xor eax,edi\r
150 add ebp,4\r
151 add eax,ebx\r
152 cmp esi,3248222580\r
153 jne NEAR L$00300_15\r
154 mov ecx,DWORD [156+esp]\r
155 jmp NEAR L$00416_63\r
156align 16\r
157L$00416_63:\r
158 mov ebx,ecx\r
159 mov esi,DWORD [104+esp]\r
160 ror ecx,11\r
161 mov edi,esi\r
162 ror esi,2\r
163 xor ecx,ebx\r
164 shr ebx,3\r
165 ror ecx,7\r
166 xor esi,edi\r
167 xor ebx,ecx\r
168 ror esi,17\r
169 add ebx,DWORD [160+esp]\r
170 shr edi,10\r
171 add ebx,DWORD [124+esp]\r
172 mov ecx,edx\r
173 xor edi,esi\r
174 mov esi,DWORD [24+esp]\r
175 ror ecx,14\r
176 add ebx,edi\r
177 mov edi,DWORD [28+esp]\r
178 xor ecx,edx\r
179 xor esi,edi\r
180 mov DWORD [96+esp],ebx\r
181 ror ecx,5\r
182 and esi,edx\r
183 mov DWORD [20+esp],edx\r
184 xor edx,ecx\r
185 add ebx,DWORD [32+esp]\r
186 xor esi,edi\r
187 ror edx,6\r
188 mov ecx,eax\r
189 add ebx,esi\r
190 ror ecx,9\r
191 add ebx,edx\r
192 mov edi,DWORD [8+esp]\r
193 xor ecx,eax\r
194 mov DWORD [4+esp],eax\r
195 lea esp,[esp-4]\r
196 ror ecx,11\r
197 mov esi,DWORD [ebp]\r
198 xor ecx,eax\r
199 mov edx,DWORD [20+esp]\r
200 xor eax,edi\r
201 ror ecx,2\r
202 add ebx,esi\r
203 mov DWORD [esp],eax\r
204 add edx,ebx\r
205 and eax,DWORD [4+esp]\r
206 add ebx,ecx\r
207 xor eax,edi\r
208 mov ecx,DWORD [156+esp]\r
209 add ebp,4\r
210 add eax,ebx\r
211 cmp esi,3329325298\r
212 jne NEAR L$00416_63\r
213 mov esi,DWORD [356+esp]\r
214 mov ebx,DWORD [8+esp]\r
215 mov ecx,DWORD [16+esp]\r
216 add eax,DWORD [esi]\r
217 add ebx,DWORD [4+esi]\r
218 add edi,DWORD [8+esi]\r
219 add ecx,DWORD [12+esi]\r
220 mov DWORD [esi],eax\r
221 mov DWORD [4+esi],ebx\r
222 mov DWORD [8+esi],edi\r
223 mov DWORD [12+esi],ecx\r
224 mov eax,DWORD [24+esp]\r
225 mov ebx,DWORD [28+esp]\r
226 mov ecx,DWORD [32+esp]\r
227 mov edi,DWORD [360+esp]\r
228 add edx,DWORD [16+esi]\r
229 add eax,DWORD [20+esi]\r
230 add ebx,DWORD [24+esi]\r
231 add ecx,DWORD [28+esi]\r
232 mov DWORD [16+esi],edx\r
233 mov DWORD [20+esi],eax\r
234 mov DWORD [24+esi],ebx\r
235 mov DWORD [28+esi],ecx\r
236 lea esp,[356+esp]\r
237 sub ebp,256\r
238 cmp edi,DWORD [8+esp]\r
239 jb NEAR L$002loop\r
240 mov esp,DWORD [12+esp]\r
241 pop edi\r
242 pop esi\r
243 pop ebx\r
244 pop ebp\r
245 ret\r
246align 32\r
247L$005loop_shrd:\r
248 mov eax,DWORD [edi]\r
249 mov ebx,DWORD [4+edi]\r
250 mov ecx,DWORD [8+edi]\r
251 bswap eax\r
252 mov edx,DWORD [12+edi]\r
253 bswap ebx\r
254 push eax\r
255 bswap ecx\r
256 push ebx\r
257 bswap edx\r
258 push ecx\r
259 push edx\r
260 mov eax,DWORD [16+edi]\r
261 mov ebx,DWORD [20+edi]\r
262 mov ecx,DWORD [24+edi]\r
263 bswap eax\r
264 mov edx,DWORD [28+edi]\r
265 bswap ebx\r
266 push eax\r
267 bswap ecx\r
268 push ebx\r
269 bswap edx\r
270 push ecx\r
271 push edx\r
272 mov eax,DWORD [32+edi]\r
273 mov ebx,DWORD [36+edi]\r
274 mov ecx,DWORD [40+edi]\r
275 bswap eax\r
276 mov edx,DWORD [44+edi]\r
277 bswap ebx\r
278 push eax\r
279 bswap ecx\r
280 push ebx\r
281 bswap edx\r
282 push ecx\r
283 push edx\r
284 mov eax,DWORD [48+edi]\r
285 mov ebx,DWORD [52+edi]\r
286 mov ecx,DWORD [56+edi]\r
287 bswap eax\r
288 mov edx,DWORD [60+edi]\r
289 bswap ebx\r
290 push eax\r
291 bswap ecx\r
292 push ebx\r
293 bswap edx\r
294 push ecx\r
295 push edx\r
296 add edi,64\r
297 lea esp,[esp-36]\r
298 mov DWORD [104+esp],edi\r
299 mov eax,DWORD [esi]\r
300 mov ebx,DWORD [4+esi]\r
301 mov ecx,DWORD [8+esi]\r
302 mov edi,DWORD [12+esi]\r
303 mov DWORD [8+esp],ebx\r
304 xor ebx,ecx\r
305 mov DWORD [12+esp],ecx\r
306 mov DWORD [16+esp],edi\r
307 mov DWORD [esp],ebx\r
308 mov edx,DWORD [16+esi]\r
309 mov ebx,DWORD [20+esi]\r
310 mov ecx,DWORD [24+esi]\r
311 mov edi,DWORD [28+esi]\r
312 mov DWORD [24+esp],ebx\r
313 mov DWORD [28+esp],ecx\r
314 mov DWORD [32+esp],edi\r
315align 16\r
316L$00600_15_shrd:\r
317 mov ecx,edx\r
318 mov esi,DWORD [24+esp]\r
319 shrd ecx,ecx,14\r
320 mov edi,DWORD [28+esp]\r
321 xor ecx,edx\r
322 xor esi,edi\r
323 mov ebx,DWORD [96+esp]\r
324 shrd ecx,ecx,5\r
325 and esi,edx\r
326 mov DWORD [20+esp],edx\r
327 xor edx,ecx\r
328 add ebx,DWORD [32+esp]\r
329 xor esi,edi\r
330 shrd edx,edx,6\r
331 mov ecx,eax\r
332 add ebx,esi\r
333 shrd ecx,ecx,9\r
334 add ebx,edx\r
335 mov edi,DWORD [8+esp]\r
336 xor ecx,eax\r
337 mov DWORD [4+esp],eax\r
338 lea esp,[esp-4]\r
339 shrd ecx,ecx,11\r
340 mov esi,DWORD [ebp]\r
341 xor ecx,eax\r
342 mov edx,DWORD [20+esp]\r
343 xor eax,edi\r
344 shrd ecx,ecx,2\r
345 add ebx,esi\r
346 mov DWORD [esp],eax\r
347 add edx,ebx\r
348 and eax,DWORD [4+esp]\r
349 add ebx,ecx\r
350 xor eax,edi\r
351 add ebp,4\r
352 add eax,ebx\r
353 cmp esi,3248222580\r
354 jne NEAR L$00600_15_shrd\r
355 mov ecx,DWORD [156+esp]\r
356 jmp NEAR L$00716_63_shrd\r
357align 16\r
358L$00716_63_shrd:\r
359 mov ebx,ecx\r
360 mov esi,DWORD [104+esp]\r
361 shrd ecx,ecx,11\r
362 mov edi,esi\r
363 shrd esi,esi,2\r
364 xor ecx,ebx\r
365 shr ebx,3\r
366 shrd ecx,ecx,7\r
367 xor esi,edi\r
368 xor ebx,ecx\r
369 shrd esi,esi,17\r
370 add ebx,DWORD [160+esp]\r
371 shr edi,10\r
372 add ebx,DWORD [124+esp]\r
373 mov ecx,edx\r
374 xor edi,esi\r
375 mov esi,DWORD [24+esp]\r
376 shrd ecx,ecx,14\r
377 add ebx,edi\r
378 mov edi,DWORD [28+esp]\r
379 xor ecx,edx\r
380 xor esi,edi\r
381 mov DWORD [96+esp],ebx\r
382 shrd ecx,ecx,5\r
383 and esi,edx\r
384 mov DWORD [20+esp],edx\r
385 xor edx,ecx\r
386 add ebx,DWORD [32+esp]\r
387 xor esi,edi\r
388 shrd edx,edx,6\r
389 mov ecx,eax\r
390 add ebx,esi\r
391 shrd ecx,ecx,9\r
392 add ebx,edx\r
393 mov edi,DWORD [8+esp]\r
394 xor ecx,eax\r
395 mov DWORD [4+esp],eax\r
396 lea esp,[esp-4]\r
397 shrd ecx,ecx,11\r
398 mov esi,DWORD [ebp]\r
399 xor ecx,eax\r
400 mov edx,DWORD [20+esp]\r
401 xor eax,edi\r
402 shrd ecx,ecx,2\r
403 add ebx,esi\r
404 mov DWORD [esp],eax\r
405 add edx,ebx\r
406 and eax,DWORD [4+esp]\r
407 add ebx,ecx\r
408 xor eax,edi\r
409 mov ecx,DWORD [156+esp]\r
410 add ebp,4\r
411 add eax,ebx\r
412 cmp esi,3329325298\r
413 jne NEAR L$00716_63_shrd\r
414 mov esi,DWORD [356+esp]\r
415 mov ebx,DWORD [8+esp]\r
416 mov ecx,DWORD [16+esp]\r
417 add eax,DWORD [esi]\r
418 add ebx,DWORD [4+esi]\r
419 add edi,DWORD [8+esi]\r
420 add ecx,DWORD [12+esi]\r
421 mov DWORD [esi],eax\r
422 mov DWORD [4+esi],ebx\r
423 mov DWORD [8+esi],edi\r
424 mov DWORD [12+esi],ecx\r
425 mov eax,DWORD [24+esp]\r
426 mov ebx,DWORD [28+esp]\r
427 mov ecx,DWORD [32+esp]\r
428 mov edi,DWORD [360+esp]\r
429 add edx,DWORD [16+esi]\r
430 add eax,DWORD [20+esi]\r
431 add ebx,DWORD [24+esi]\r
432 add ecx,DWORD [28+esi]\r
433 mov DWORD [16+esi],edx\r
434 mov DWORD [20+esi],eax\r
435 mov DWORD [24+esi],ebx\r
436 mov DWORD [28+esi],ecx\r
437 lea esp,[356+esp]\r
438 sub ebp,256\r
439 cmp edi,DWORD [8+esp]\r
440 jb NEAR L$005loop_shrd\r
441 mov esp,DWORD [12+esp]\r
442 pop edi\r
443 pop esi\r
444 pop ebx\r
445 pop ebp\r
446 ret\r
447align 64\r
448L$001K256:\r
449dd 1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298\r
450dd 66051,67438087,134810123,202182159\r
451db 83,72,65,50,53,54,32,98,108,111,99,107,32,116,114,97\r
452db 110,115,102,111,114,109,32,102,111,114,32,120,56,54,44,32\r
453db 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97\r
454db 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103\r
455db 62,0\r
456align 16\r
457L$008unrolled:\r
458 lea esp,[esp-96]\r
459 mov eax,DWORD [esi]\r
460 mov ebp,DWORD [4+esi]\r
461 mov ecx,DWORD [8+esi]\r
462 mov ebx,DWORD [12+esi]\r
463 mov DWORD [4+esp],ebp\r
464 xor ebp,ecx\r
465 mov DWORD [8+esp],ecx\r
466 mov DWORD [12+esp],ebx\r
467 mov edx,DWORD [16+esi]\r
468 mov ebx,DWORD [20+esi]\r
469 mov ecx,DWORD [24+esi]\r
470 mov esi,DWORD [28+esi]\r
471 mov DWORD [20+esp],ebx\r
472 mov DWORD [24+esp],ecx\r
473 mov DWORD [28+esp],esi\r
474 jmp NEAR L$009grand_loop\r
475align 16\r
476L$009grand_loop:\r
477 mov ebx,DWORD [edi]\r
478 mov ecx,DWORD [4+edi]\r
479 bswap ebx\r
480 mov esi,DWORD [8+edi]\r
481 bswap ecx\r
482 mov DWORD [32+esp],ebx\r
483 bswap esi\r
484 mov DWORD [36+esp],ecx\r
485 mov DWORD [40+esp],esi\r
486 mov ebx,DWORD [12+edi]\r
487 mov ecx,DWORD [16+edi]\r
488 bswap ebx\r
489 mov esi,DWORD [20+edi]\r
490 bswap ecx\r
491 mov DWORD [44+esp],ebx\r
492 bswap esi\r
493 mov DWORD [48+esp],ecx\r
494 mov DWORD [52+esp],esi\r
495 mov ebx,DWORD [24+edi]\r
496 mov ecx,DWORD [28+edi]\r
497 bswap ebx\r
498 mov esi,DWORD [32+edi]\r
499 bswap ecx\r
500 mov DWORD [56+esp],ebx\r
501 bswap esi\r
502 mov DWORD [60+esp],ecx\r
503 mov DWORD [64+esp],esi\r
504 mov ebx,DWORD [36+edi]\r
505 mov ecx,DWORD [40+edi]\r
506 bswap ebx\r
507 mov esi,DWORD [44+edi]\r
508 bswap ecx\r
509 mov DWORD [68+esp],ebx\r
510 bswap esi\r
511 mov DWORD [72+esp],ecx\r
512 mov DWORD [76+esp],esi\r
513 mov ebx,DWORD [48+edi]\r
514 mov ecx,DWORD [52+edi]\r
515 bswap ebx\r
516 mov esi,DWORD [56+edi]\r
517 bswap ecx\r
518 mov DWORD [80+esp],ebx\r
519 bswap esi\r
520 mov DWORD [84+esp],ecx\r
521 mov DWORD [88+esp],esi\r
522 mov ebx,DWORD [60+edi]\r
523 add edi,64\r
524 bswap ebx\r
525 mov DWORD [100+esp],edi\r
526 mov DWORD [92+esp],ebx\r
527 mov ecx,edx\r
528 mov esi,DWORD [20+esp]\r
529 ror edx,14\r
530 mov edi,DWORD [24+esp]\r
531 xor edx,ecx\r
532 mov ebx,DWORD [32+esp]\r
533 xor esi,edi\r
534 ror edx,5\r
535 and esi,ecx\r
536 mov DWORD [16+esp],ecx\r
537 xor edx,ecx\r
538 add ebx,DWORD [28+esp]\r
539 xor edi,esi\r
540 ror edx,6\r
541 mov ecx,eax\r
542 add ebx,edi\r
543 ror ecx,9\r
544 mov esi,eax\r
545 mov edi,DWORD [4+esp]\r
546 xor ecx,eax\r
547 mov DWORD [esp],eax\r
548 xor eax,edi\r
549 ror ecx,11\r
550 and ebp,eax\r
551 lea edx,[1116352408+edx*1+ebx]\r
552 xor ecx,esi\r
553 xor ebp,edi\r
554 ror ecx,2\r
555 add ebp,edx\r
556 add edx,DWORD [12+esp]\r
557 add ebp,ecx\r
558 mov esi,edx\r
559 mov ecx,DWORD [16+esp]\r
560 ror edx,14\r
561 mov edi,DWORD [20+esp]\r
562 xor edx,esi\r
563 mov ebx,DWORD [36+esp]\r
564 xor ecx,edi\r
565 ror edx,5\r
566 and ecx,esi\r
567 mov DWORD [12+esp],esi\r
568 xor edx,esi\r
569 add ebx,DWORD [24+esp]\r
570 xor edi,ecx\r
571 ror edx,6\r
572 mov esi,ebp\r
573 add ebx,edi\r
574 ror esi,9\r
575 mov ecx,ebp\r
576 mov edi,DWORD [esp]\r
577 xor esi,ebp\r
578 mov DWORD [28+esp],ebp\r
579 xor ebp,edi\r
580 ror esi,11\r
581 and eax,ebp\r
582 lea edx,[1899447441+edx*1+ebx]\r
583 xor esi,ecx\r
584 xor eax,edi\r
585 ror esi,2\r
586 add eax,edx\r
587 add edx,DWORD [8+esp]\r
588 add eax,esi\r
589 mov ecx,edx\r
590 mov esi,DWORD [12+esp]\r
591 ror edx,14\r
592 mov edi,DWORD [16+esp]\r
593 xor edx,ecx\r
594 mov ebx,DWORD [40+esp]\r
595 xor esi,edi\r
596 ror edx,5\r
597 and esi,ecx\r
598 mov DWORD [8+esp],ecx\r
599 xor edx,ecx\r
600 add ebx,DWORD [20+esp]\r
601 xor edi,esi\r
602 ror edx,6\r
603 mov ecx,eax\r
604 add ebx,edi\r
605 ror ecx,9\r
606 mov esi,eax\r
607 mov edi,DWORD [28+esp]\r
608 xor ecx,eax\r
609 mov DWORD [24+esp],eax\r
610 xor eax,edi\r
611 ror ecx,11\r
612 and ebp,eax\r
613 lea edx,[3049323471+edx*1+ebx]\r
614 xor ecx,esi\r
615 xor ebp,edi\r
616 ror ecx,2\r
617 add ebp,edx\r
618 add edx,DWORD [4+esp]\r
619 add ebp,ecx\r
620 mov esi,edx\r
621 mov ecx,DWORD [8+esp]\r
622 ror edx,14\r
623 mov edi,DWORD [12+esp]\r
624 xor edx,esi\r
625 mov ebx,DWORD [44+esp]\r
626 xor ecx,edi\r
627 ror edx,5\r
628 and ecx,esi\r
629 mov DWORD [4+esp],esi\r
630 xor edx,esi\r
631 add ebx,DWORD [16+esp]\r
632 xor edi,ecx\r
633 ror edx,6\r
634 mov esi,ebp\r
635 add ebx,edi\r
636 ror esi,9\r
637 mov ecx,ebp\r
638 mov edi,DWORD [24+esp]\r
639 xor esi,ebp\r
640 mov DWORD [20+esp],ebp\r
641 xor ebp,edi\r
642 ror esi,11\r
643 and eax,ebp\r
644 lea edx,[3921009573+edx*1+ebx]\r
645 xor esi,ecx\r
646 xor eax,edi\r
647 ror esi,2\r
648 add eax,edx\r
649 add edx,DWORD [esp]\r
650 add eax,esi\r
651 mov ecx,edx\r
652 mov esi,DWORD [4+esp]\r
653 ror edx,14\r
654 mov edi,DWORD [8+esp]\r
655 xor edx,ecx\r
656 mov ebx,DWORD [48+esp]\r
657 xor esi,edi\r
658 ror edx,5\r
659 and esi,ecx\r
660 mov DWORD [esp],ecx\r
661 xor edx,ecx\r
662 add ebx,DWORD [12+esp]\r
663 xor edi,esi\r
664 ror edx,6\r
665 mov ecx,eax\r
666 add ebx,edi\r
667 ror ecx,9\r
668 mov esi,eax\r
669 mov edi,DWORD [20+esp]\r
670 xor ecx,eax\r
671 mov DWORD [16+esp],eax\r
672 xor eax,edi\r
673 ror ecx,11\r
674 and ebp,eax\r
675 lea edx,[961987163+edx*1+ebx]\r
676 xor ecx,esi\r
677 xor ebp,edi\r
678 ror ecx,2\r
679 add ebp,edx\r
680 add edx,DWORD [28+esp]\r
681 add ebp,ecx\r
682 mov esi,edx\r
683 mov ecx,DWORD [esp]\r
684 ror edx,14\r
685 mov edi,DWORD [4+esp]\r
686 xor edx,esi\r
687 mov ebx,DWORD [52+esp]\r
688 xor ecx,edi\r
689 ror edx,5\r
690 and ecx,esi\r
691 mov DWORD [28+esp],esi\r
692 xor edx,esi\r
693 add ebx,DWORD [8+esp]\r
694 xor edi,ecx\r
695 ror edx,6\r
696 mov esi,ebp\r
697 add ebx,edi\r
698 ror esi,9\r
699 mov ecx,ebp\r
700 mov edi,DWORD [16+esp]\r
701 xor esi,ebp\r
702 mov DWORD [12+esp],ebp\r
703 xor ebp,edi\r
704 ror esi,11\r
705 and eax,ebp\r
706 lea edx,[1508970993+edx*1+ebx]\r
707 xor esi,ecx\r
708 xor eax,edi\r
709 ror esi,2\r
710 add eax,edx\r
711 add edx,DWORD [24+esp]\r
712 add eax,esi\r
713 mov ecx,edx\r
714 mov esi,DWORD [28+esp]\r
715 ror edx,14\r
716 mov edi,DWORD [esp]\r
717 xor edx,ecx\r
718 mov ebx,DWORD [56+esp]\r
719 xor esi,edi\r
720 ror edx,5\r
721 and esi,ecx\r
722 mov DWORD [24+esp],ecx\r
723 xor edx,ecx\r
724 add ebx,DWORD [4+esp]\r
725 xor edi,esi\r
726 ror edx,6\r
727 mov ecx,eax\r
728 add ebx,edi\r
729 ror ecx,9\r
730 mov esi,eax\r
731 mov edi,DWORD [12+esp]\r
732 xor ecx,eax\r
733 mov DWORD [8+esp],eax\r
734 xor eax,edi\r
735 ror ecx,11\r
736 and ebp,eax\r
737 lea edx,[2453635748+edx*1+ebx]\r
738 xor ecx,esi\r
739 xor ebp,edi\r
740 ror ecx,2\r
741 add ebp,edx\r
742 add edx,DWORD [20+esp]\r
743 add ebp,ecx\r
744 mov esi,edx\r
745 mov ecx,DWORD [24+esp]\r
746 ror edx,14\r
747 mov edi,DWORD [28+esp]\r
748 xor edx,esi\r
749 mov ebx,DWORD [60+esp]\r
750 xor ecx,edi\r
751 ror edx,5\r
752 and ecx,esi\r
753 mov DWORD [20+esp],esi\r
754 xor edx,esi\r
755 add ebx,DWORD [esp]\r
756 xor edi,ecx\r
757 ror edx,6\r
758 mov esi,ebp\r
759 add ebx,edi\r
760 ror esi,9\r
761 mov ecx,ebp\r
762 mov edi,DWORD [8+esp]\r
763 xor esi,ebp\r
764 mov DWORD [4+esp],ebp\r
765 xor ebp,edi\r
766 ror esi,11\r
767 and eax,ebp\r
768 lea edx,[2870763221+edx*1+ebx]\r
769 xor esi,ecx\r
770 xor eax,edi\r
771 ror esi,2\r
772 add eax,edx\r
773 add edx,DWORD [16+esp]\r
774 add eax,esi\r
775 mov ecx,edx\r
776 mov esi,DWORD [20+esp]\r
777 ror edx,14\r
778 mov edi,DWORD [24+esp]\r
779 xor edx,ecx\r
780 mov ebx,DWORD [64+esp]\r
781 xor esi,edi\r
782 ror edx,5\r
783 and esi,ecx\r
784 mov DWORD [16+esp],ecx\r
785 xor edx,ecx\r
786 add ebx,DWORD [28+esp]\r
787 xor edi,esi\r
788 ror edx,6\r
789 mov ecx,eax\r
790 add ebx,edi\r
791 ror ecx,9\r
792 mov esi,eax\r
793 mov edi,DWORD [4+esp]\r
794 xor ecx,eax\r
795 mov DWORD [esp],eax\r
796 xor eax,edi\r
797 ror ecx,11\r
798 and ebp,eax\r
799 lea edx,[3624381080+edx*1+ebx]\r
800 xor ecx,esi\r
801 xor ebp,edi\r
802 ror ecx,2\r
803 add ebp,edx\r
804 add edx,DWORD [12+esp]\r
805 add ebp,ecx\r
806 mov esi,edx\r
807 mov ecx,DWORD [16+esp]\r
808 ror edx,14\r
809 mov edi,DWORD [20+esp]\r
810 xor edx,esi\r
811 mov ebx,DWORD [68+esp]\r
812 xor ecx,edi\r
813 ror edx,5\r
814 and ecx,esi\r
815 mov DWORD [12+esp],esi\r
816 xor edx,esi\r
817 add ebx,DWORD [24+esp]\r
818 xor edi,ecx\r
819 ror edx,6\r
820 mov esi,ebp\r
821 add ebx,edi\r
822 ror esi,9\r
823 mov ecx,ebp\r
824 mov edi,DWORD [esp]\r
825 xor esi,ebp\r
826 mov DWORD [28+esp],ebp\r
827 xor ebp,edi\r
828 ror esi,11\r
829 and eax,ebp\r
830 lea edx,[310598401+edx*1+ebx]\r
831 xor esi,ecx\r
832 xor eax,edi\r
833 ror esi,2\r
834 add eax,edx\r
835 add edx,DWORD [8+esp]\r
836 add eax,esi\r
837 mov ecx,edx\r
838 mov esi,DWORD [12+esp]\r
839 ror edx,14\r
840 mov edi,DWORD [16+esp]\r
841 xor edx,ecx\r
842 mov ebx,DWORD [72+esp]\r
843 xor esi,edi\r
844 ror edx,5\r
845 and esi,ecx\r
846 mov DWORD [8+esp],ecx\r
847 xor edx,ecx\r
848 add ebx,DWORD [20+esp]\r
849 xor edi,esi\r
850 ror edx,6\r
851 mov ecx,eax\r
852 add ebx,edi\r
853 ror ecx,9\r
854 mov esi,eax\r
855 mov edi,DWORD [28+esp]\r
856 xor ecx,eax\r
857 mov DWORD [24+esp],eax\r
858 xor eax,edi\r
859 ror ecx,11\r
860 and ebp,eax\r
861 lea edx,[607225278+edx*1+ebx]\r
862 xor ecx,esi\r
863 xor ebp,edi\r
864 ror ecx,2\r
865 add ebp,edx\r
866 add edx,DWORD [4+esp]\r
867 add ebp,ecx\r
868 mov esi,edx\r
869 mov ecx,DWORD [8+esp]\r
870 ror edx,14\r
871 mov edi,DWORD [12+esp]\r
872 xor edx,esi\r
873 mov ebx,DWORD [76+esp]\r
874 xor ecx,edi\r
875 ror edx,5\r
876 and ecx,esi\r
877 mov DWORD [4+esp],esi\r
878 xor edx,esi\r
879 add ebx,DWORD [16+esp]\r
880 xor edi,ecx\r
881 ror edx,6\r
882 mov esi,ebp\r
883 add ebx,edi\r
884 ror esi,9\r
885 mov ecx,ebp\r
886 mov edi,DWORD [24+esp]\r
887 xor esi,ebp\r
888 mov DWORD [20+esp],ebp\r
889 xor ebp,edi\r
890 ror esi,11\r
891 and eax,ebp\r
892 lea edx,[1426881987+edx*1+ebx]\r
893 xor esi,ecx\r
894 xor eax,edi\r
895 ror esi,2\r
896 add eax,edx\r
897 add edx,DWORD [esp]\r
898 add eax,esi\r
899 mov ecx,edx\r
900 mov esi,DWORD [4+esp]\r
901 ror edx,14\r
902 mov edi,DWORD [8+esp]\r
903 xor edx,ecx\r
904 mov ebx,DWORD [80+esp]\r
905 xor esi,edi\r
906 ror edx,5\r
907 and esi,ecx\r
908 mov DWORD [esp],ecx\r
909 xor edx,ecx\r
910 add ebx,DWORD [12+esp]\r
911 xor edi,esi\r
912 ror edx,6\r
913 mov ecx,eax\r
914 add ebx,edi\r
915 ror ecx,9\r
916 mov esi,eax\r
917 mov edi,DWORD [20+esp]\r
918 xor ecx,eax\r
919 mov DWORD [16+esp],eax\r
920 xor eax,edi\r
921 ror ecx,11\r
922 and ebp,eax\r
923 lea edx,[1925078388+edx*1+ebx]\r
924 xor ecx,esi\r
925 xor ebp,edi\r
926 ror ecx,2\r
927 add ebp,edx\r
928 add edx,DWORD [28+esp]\r
929 add ebp,ecx\r
930 mov esi,edx\r
931 mov ecx,DWORD [esp]\r
932 ror edx,14\r
933 mov edi,DWORD [4+esp]\r
934 xor edx,esi\r
935 mov ebx,DWORD [84+esp]\r
936 xor ecx,edi\r
937 ror edx,5\r
938 and ecx,esi\r
939 mov DWORD [28+esp],esi\r
940 xor edx,esi\r
941 add ebx,DWORD [8+esp]\r
942 xor edi,ecx\r
943 ror edx,6\r
944 mov esi,ebp\r
945 add ebx,edi\r
946 ror esi,9\r
947 mov ecx,ebp\r
948 mov edi,DWORD [16+esp]\r
949 xor esi,ebp\r
950 mov DWORD [12+esp],ebp\r
951 xor ebp,edi\r
952 ror esi,11\r
953 and eax,ebp\r
954 lea edx,[2162078206+edx*1+ebx]\r
955 xor esi,ecx\r
956 xor eax,edi\r
957 ror esi,2\r
958 add eax,edx\r
959 add edx,DWORD [24+esp]\r
960 add eax,esi\r
961 mov ecx,edx\r
962 mov esi,DWORD [28+esp]\r
963 ror edx,14\r
964 mov edi,DWORD [esp]\r
965 xor edx,ecx\r
966 mov ebx,DWORD [88+esp]\r
967 xor esi,edi\r
968 ror edx,5\r
969 and esi,ecx\r
970 mov DWORD [24+esp],ecx\r
971 xor edx,ecx\r
972 add ebx,DWORD [4+esp]\r
973 xor edi,esi\r
974 ror edx,6\r
975 mov ecx,eax\r
976 add ebx,edi\r
977 ror ecx,9\r
978 mov esi,eax\r
979 mov edi,DWORD [12+esp]\r
980 xor ecx,eax\r
981 mov DWORD [8+esp],eax\r
982 xor eax,edi\r
983 ror ecx,11\r
984 and ebp,eax\r
985 lea edx,[2614888103+edx*1+ebx]\r
986 xor ecx,esi\r
987 xor ebp,edi\r
988 ror ecx,2\r
989 add ebp,edx\r
990 add edx,DWORD [20+esp]\r
991 add ebp,ecx\r
992 mov esi,edx\r
993 mov ecx,DWORD [24+esp]\r
994 ror edx,14\r
995 mov edi,DWORD [28+esp]\r
996 xor edx,esi\r
997 mov ebx,DWORD [92+esp]\r
998 xor ecx,edi\r
999 ror edx,5\r
1000 and ecx,esi\r
1001 mov DWORD [20+esp],esi\r
1002 xor edx,esi\r
1003 add ebx,DWORD [esp]\r
1004 xor edi,ecx\r
1005 ror edx,6\r
1006 mov esi,ebp\r
1007 add ebx,edi\r
1008 ror esi,9\r
1009 mov ecx,ebp\r
1010 mov edi,DWORD [8+esp]\r
1011 xor esi,ebp\r
1012 mov DWORD [4+esp],ebp\r
1013 xor ebp,edi\r
1014 ror esi,11\r
1015 and eax,ebp\r
1016 lea edx,[3248222580+edx*1+ebx]\r
1017 xor esi,ecx\r
1018 xor eax,edi\r
1019 mov ecx,DWORD [36+esp]\r
1020 ror esi,2\r
1021 add eax,edx\r
1022 add edx,DWORD [16+esp]\r
1023 add eax,esi\r
1024 mov esi,DWORD [88+esp]\r
1025 mov ebx,ecx\r
1026 ror ecx,11\r
1027 mov edi,esi\r
1028 ror esi,2\r
1029 xor ecx,ebx\r
1030 shr ebx,3\r
1031 ror ecx,7\r
1032 xor esi,edi\r
1033 xor ebx,ecx\r
1034 ror esi,17\r
1035 add ebx,DWORD [32+esp]\r
1036 shr edi,10\r
1037 add ebx,DWORD [68+esp]\r
1038 mov ecx,edx\r
1039 xor edi,esi\r
1040 mov esi,DWORD [20+esp]\r
1041 ror edx,14\r
1042 add ebx,edi\r
1043 mov edi,DWORD [24+esp]\r
1044 xor edx,ecx\r
1045 mov DWORD [32+esp],ebx\r
1046 xor esi,edi\r
1047 ror edx,5\r
1048 and esi,ecx\r
1049 mov DWORD [16+esp],ecx\r
1050 xor edx,ecx\r
1051 add ebx,DWORD [28+esp]\r
1052 xor edi,esi\r
1053 ror edx,6\r
1054 mov ecx,eax\r
1055 add ebx,edi\r
1056 ror ecx,9\r
1057 mov esi,eax\r
1058 mov edi,DWORD [4+esp]\r
1059 xor ecx,eax\r
1060 mov DWORD [esp],eax\r
1061 xor eax,edi\r
1062 ror ecx,11\r
1063 and ebp,eax\r
1064 lea edx,[3835390401+edx*1+ebx]\r
1065 xor ecx,esi\r
1066 xor ebp,edi\r
1067 mov esi,DWORD [40+esp]\r
1068 ror ecx,2\r
1069 add ebp,edx\r
1070 add edx,DWORD [12+esp]\r
1071 add ebp,ecx\r
1072 mov ecx,DWORD [92+esp]\r
1073 mov ebx,esi\r
1074 ror esi,11\r
1075 mov edi,ecx\r
1076 ror ecx,2\r
1077 xor esi,ebx\r
1078 shr ebx,3\r
1079 ror esi,7\r
1080 xor ecx,edi\r
1081 xor ebx,esi\r
1082 ror ecx,17\r
1083 add ebx,DWORD [36+esp]\r
1084 shr edi,10\r
1085 add ebx,DWORD [72+esp]\r
1086 mov esi,edx\r
1087 xor edi,ecx\r
1088 mov ecx,DWORD [16+esp]\r
1089 ror edx,14\r
1090 add ebx,edi\r
1091 mov edi,DWORD [20+esp]\r
1092 xor edx,esi\r
1093 mov DWORD [36+esp],ebx\r
1094 xor ecx,edi\r
1095 ror edx,5\r
1096 and ecx,esi\r
1097 mov DWORD [12+esp],esi\r
1098 xor edx,esi\r
1099 add ebx,DWORD [24+esp]\r
1100 xor edi,ecx\r
1101 ror edx,6\r
1102 mov esi,ebp\r
1103 add ebx,edi\r
1104 ror esi,9\r
1105 mov ecx,ebp\r
1106 mov edi,DWORD [esp]\r
1107 xor esi,ebp\r
1108 mov DWORD [28+esp],ebp\r
1109 xor ebp,edi\r
1110 ror esi,11\r
1111 and eax,ebp\r
1112 lea edx,[4022224774+edx*1+ebx]\r
1113 xor esi,ecx\r
1114 xor eax,edi\r
1115 mov ecx,DWORD [44+esp]\r
1116 ror esi,2\r
1117 add eax,edx\r
1118 add edx,DWORD [8+esp]\r
1119 add eax,esi\r
1120 mov esi,DWORD [32+esp]\r
1121 mov ebx,ecx\r
1122 ror ecx,11\r
1123 mov edi,esi\r
1124 ror esi,2\r
1125 xor ecx,ebx\r
1126 shr ebx,3\r
1127 ror ecx,7\r
1128 xor esi,edi\r
1129 xor ebx,ecx\r
1130 ror esi,17\r
1131 add ebx,DWORD [40+esp]\r
1132 shr edi,10\r
1133 add ebx,DWORD [76+esp]\r
1134 mov ecx,edx\r
1135 xor edi,esi\r
1136 mov esi,DWORD [12+esp]\r
1137 ror edx,14\r
1138 add ebx,edi\r
1139 mov edi,DWORD [16+esp]\r
1140 xor edx,ecx\r
1141 mov DWORD [40+esp],ebx\r
1142 xor esi,edi\r
1143 ror edx,5\r
1144 and esi,ecx\r
1145 mov DWORD [8+esp],ecx\r
1146 xor edx,ecx\r
1147 add ebx,DWORD [20+esp]\r
1148 xor edi,esi\r
1149 ror edx,6\r
1150 mov ecx,eax\r
1151 add ebx,edi\r
1152 ror ecx,9\r
1153 mov esi,eax\r
1154 mov edi,DWORD [28+esp]\r
1155 xor ecx,eax\r
1156 mov DWORD [24+esp],eax\r
1157 xor eax,edi\r
1158 ror ecx,11\r
1159 and ebp,eax\r
1160 lea edx,[264347078+edx*1+ebx]\r
1161 xor ecx,esi\r
1162 xor ebp,edi\r
1163 mov esi,DWORD [48+esp]\r
1164 ror ecx,2\r
1165 add ebp,edx\r
1166 add edx,DWORD [4+esp]\r
1167 add ebp,ecx\r
1168 mov ecx,DWORD [36+esp]\r
1169 mov ebx,esi\r
1170 ror esi,11\r
1171 mov edi,ecx\r
1172 ror ecx,2\r
1173 xor esi,ebx\r
1174 shr ebx,3\r
1175 ror esi,7\r
1176 xor ecx,edi\r
1177 xor ebx,esi\r
1178 ror ecx,17\r
1179 add ebx,DWORD [44+esp]\r
1180 shr edi,10\r
1181 add ebx,DWORD [80+esp]\r
1182 mov esi,edx\r
1183 xor edi,ecx\r
1184 mov ecx,DWORD [8+esp]\r
1185 ror edx,14\r
1186 add ebx,edi\r
1187 mov edi,DWORD [12+esp]\r
1188 xor edx,esi\r
1189 mov DWORD [44+esp],ebx\r
1190 xor ecx,edi\r
1191 ror edx,5\r
1192 and ecx,esi\r
1193 mov DWORD [4+esp],esi\r
1194 xor edx,esi\r
1195 add ebx,DWORD [16+esp]\r
1196 xor edi,ecx\r
1197 ror edx,6\r
1198 mov esi,ebp\r
1199 add ebx,edi\r
1200 ror esi,9\r
1201 mov ecx,ebp\r
1202 mov edi,DWORD [24+esp]\r
1203 xor esi,ebp\r
1204 mov DWORD [20+esp],ebp\r
1205 xor ebp,edi\r
1206 ror esi,11\r
1207 and eax,ebp\r
1208 lea edx,[604807628+edx*1+ebx]\r
1209 xor esi,ecx\r
1210 xor eax,edi\r
1211 mov ecx,DWORD [52+esp]\r
1212 ror esi,2\r
1213 add eax,edx\r
1214 add edx,DWORD [esp]\r
1215 add eax,esi\r
1216 mov esi,DWORD [40+esp]\r
1217 mov ebx,ecx\r
1218 ror ecx,11\r
1219 mov edi,esi\r
1220 ror esi,2\r
1221 xor ecx,ebx\r
1222 shr ebx,3\r
1223 ror ecx,7\r
1224 xor esi,edi\r
1225 xor ebx,ecx\r
1226 ror esi,17\r
1227 add ebx,DWORD [48+esp]\r
1228 shr edi,10\r
1229 add ebx,DWORD [84+esp]\r
1230 mov ecx,edx\r
1231 xor edi,esi\r
1232 mov esi,DWORD [4+esp]\r
1233 ror edx,14\r
1234 add ebx,edi\r
1235 mov edi,DWORD [8+esp]\r
1236 xor edx,ecx\r
1237 mov DWORD [48+esp],ebx\r
1238 xor esi,edi\r
1239 ror edx,5\r
1240 and esi,ecx\r
1241 mov DWORD [esp],ecx\r
1242 xor edx,ecx\r
1243 add ebx,DWORD [12+esp]\r
1244 xor edi,esi\r
1245 ror edx,6\r
1246 mov ecx,eax\r
1247 add ebx,edi\r
1248 ror ecx,9\r
1249 mov esi,eax\r
1250 mov edi,DWORD [20+esp]\r
1251 xor ecx,eax\r
1252 mov DWORD [16+esp],eax\r
1253 xor eax,edi\r
1254 ror ecx,11\r
1255 and ebp,eax\r
1256 lea edx,[770255983+edx*1+ebx]\r
1257 xor ecx,esi\r
1258 xor ebp,edi\r
1259 mov esi,DWORD [56+esp]\r
1260 ror ecx,2\r
1261 add ebp,edx\r
1262 add edx,DWORD [28+esp]\r
1263 add ebp,ecx\r
1264 mov ecx,DWORD [44+esp]\r
1265 mov ebx,esi\r
1266 ror esi,11\r
1267 mov edi,ecx\r
1268 ror ecx,2\r
1269 xor esi,ebx\r
1270 shr ebx,3\r
1271 ror esi,7\r
1272 xor ecx,edi\r
1273 xor ebx,esi\r
1274 ror ecx,17\r
1275 add ebx,DWORD [52+esp]\r
1276 shr edi,10\r
1277 add ebx,DWORD [88+esp]\r
1278 mov esi,edx\r
1279 xor edi,ecx\r
1280 mov ecx,DWORD [esp]\r
1281 ror edx,14\r
1282 add ebx,edi\r
1283 mov edi,DWORD [4+esp]\r
1284 xor edx,esi\r
1285 mov DWORD [52+esp],ebx\r
1286 xor ecx,edi\r
1287 ror edx,5\r
1288 and ecx,esi\r
1289 mov DWORD [28+esp],esi\r
1290 xor edx,esi\r
1291 add ebx,DWORD [8+esp]\r
1292 xor edi,ecx\r
1293 ror edx,6\r
1294 mov esi,ebp\r
1295 add ebx,edi\r
1296 ror esi,9\r
1297 mov ecx,ebp\r
1298 mov edi,DWORD [16+esp]\r
1299 xor esi,ebp\r
1300 mov DWORD [12+esp],ebp\r
1301 xor ebp,edi\r
1302 ror esi,11\r
1303 and eax,ebp\r
1304 lea edx,[1249150122+edx*1+ebx]\r
1305 xor esi,ecx\r
1306 xor eax,edi\r
1307 mov ecx,DWORD [60+esp]\r
1308 ror esi,2\r
1309 add eax,edx\r
1310 add edx,DWORD [24+esp]\r
1311 add eax,esi\r
1312 mov esi,DWORD [48+esp]\r
1313 mov ebx,ecx\r
1314 ror ecx,11\r
1315 mov edi,esi\r
1316 ror esi,2\r
1317 xor ecx,ebx\r
1318 shr ebx,3\r
1319 ror ecx,7\r
1320 xor esi,edi\r
1321 xor ebx,ecx\r
1322 ror esi,17\r
1323 add ebx,DWORD [56+esp]\r
1324 shr edi,10\r
1325 add ebx,DWORD [92+esp]\r
1326 mov ecx,edx\r
1327 xor edi,esi\r
1328 mov esi,DWORD [28+esp]\r
1329 ror edx,14\r
1330 add ebx,edi\r
1331 mov edi,DWORD [esp]\r
1332 xor edx,ecx\r
1333 mov DWORD [56+esp],ebx\r
1334 xor esi,edi\r
1335 ror edx,5\r
1336 and esi,ecx\r
1337 mov DWORD [24+esp],ecx\r
1338 xor edx,ecx\r
1339 add ebx,DWORD [4+esp]\r
1340 xor edi,esi\r
1341 ror edx,6\r
1342 mov ecx,eax\r
1343 add ebx,edi\r
1344 ror ecx,9\r
1345 mov esi,eax\r
1346 mov edi,DWORD [12+esp]\r
1347 xor ecx,eax\r
1348 mov DWORD [8+esp],eax\r
1349 xor eax,edi\r
1350 ror ecx,11\r
1351 and ebp,eax\r
1352 lea edx,[1555081692+edx*1+ebx]\r
1353 xor ecx,esi\r
1354 xor ebp,edi\r
1355 mov esi,DWORD [64+esp]\r
1356 ror ecx,2\r
1357 add ebp,edx\r
1358 add edx,DWORD [20+esp]\r
1359 add ebp,ecx\r
1360 mov ecx,DWORD [52+esp]\r
1361 mov ebx,esi\r
1362 ror esi,11\r
1363 mov edi,ecx\r
1364 ror ecx,2\r
1365 xor esi,ebx\r
1366 shr ebx,3\r
1367 ror esi,7\r
1368 xor ecx,edi\r
1369 xor ebx,esi\r
1370 ror ecx,17\r
1371 add ebx,DWORD [60+esp]\r
1372 shr edi,10\r
1373 add ebx,DWORD [32+esp]\r
1374 mov esi,edx\r
1375 xor edi,ecx\r
1376 mov ecx,DWORD [24+esp]\r
1377 ror edx,14\r
1378 add ebx,edi\r
1379 mov edi,DWORD [28+esp]\r
1380 xor edx,esi\r
1381 mov DWORD [60+esp],ebx\r
1382 xor ecx,edi\r
1383 ror edx,5\r
1384 and ecx,esi\r
1385 mov DWORD [20+esp],esi\r
1386 xor edx,esi\r
1387 add ebx,DWORD [esp]\r
1388 xor edi,ecx\r
1389 ror edx,6\r
1390 mov esi,ebp\r
1391 add ebx,edi\r
1392 ror esi,9\r
1393 mov ecx,ebp\r
1394 mov edi,DWORD [8+esp]\r
1395 xor esi,ebp\r
1396 mov DWORD [4+esp],ebp\r
1397 xor ebp,edi\r
1398 ror esi,11\r
1399 and eax,ebp\r
1400 lea edx,[1996064986+edx*1+ebx]\r
1401 xor esi,ecx\r
1402 xor eax,edi\r
1403 mov ecx,DWORD [68+esp]\r
1404 ror esi,2\r
1405 add eax,edx\r
1406 add edx,DWORD [16+esp]\r
1407 add eax,esi\r
1408 mov esi,DWORD [56+esp]\r
1409 mov ebx,ecx\r
1410 ror ecx,11\r
1411 mov edi,esi\r
1412 ror esi,2\r
1413 xor ecx,ebx\r
1414 shr ebx,3\r
1415 ror ecx,7\r
1416 xor esi,edi\r
1417 xor ebx,ecx\r
1418 ror esi,17\r
1419 add ebx,DWORD [64+esp]\r
1420 shr edi,10\r
1421 add ebx,DWORD [36+esp]\r
1422 mov ecx,edx\r
1423 xor edi,esi\r
1424 mov esi,DWORD [20+esp]\r
1425 ror edx,14\r
1426 add ebx,edi\r
1427 mov edi,DWORD [24+esp]\r
1428 xor edx,ecx\r
1429 mov DWORD [64+esp],ebx\r
1430 xor esi,edi\r
1431 ror edx,5\r
1432 and esi,ecx\r
1433 mov DWORD [16+esp],ecx\r
1434 xor edx,ecx\r
1435 add ebx,DWORD [28+esp]\r
1436 xor edi,esi\r
1437 ror edx,6\r
1438 mov ecx,eax\r
1439 add ebx,edi\r
1440 ror ecx,9\r
1441 mov esi,eax\r
1442 mov edi,DWORD [4+esp]\r
1443 xor ecx,eax\r
1444 mov DWORD [esp],eax\r
1445 xor eax,edi\r
1446 ror ecx,11\r
1447 and ebp,eax\r
1448 lea edx,[2554220882+edx*1+ebx]\r
1449 xor ecx,esi\r
1450 xor ebp,edi\r
1451 mov esi,DWORD [72+esp]\r
1452 ror ecx,2\r
1453 add ebp,edx\r
1454 add edx,DWORD [12+esp]\r
1455 add ebp,ecx\r
1456 mov ecx,DWORD [60+esp]\r
1457 mov ebx,esi\r
1458 ror esi,11\r
1459 mov edi,ecx\r
1460 ror ecx,2\r
1461 xor esi,ebx\r
1462 shr ebx,3\r
1463 ror esi,7\r
1464 xor ecx,edi\r
1465 xor ebx,esi\r
1466 ror ecx,17\r
1467 add ebx,DWORD [68+esp]\r
1468 shr edi,10\r
1469 add ebx,DWORD [40+esp]\r
1470 mov esi,edx\r
1471 xor edi,ecx\r
1472 mov ecx,DWORD [16+esp]\r
1473 ror edx,14\r
1474 add ebx,edi\r
1475 mov edi,DWORD [20+esp]\r
1476 xor edx,esi\r
1477 mov DWORD [68+esp],ebx\r
1478 xor ecx,edi\r
1479 ror edx,5\r
1480 and ecx,esi\r
1481 mov DWORD [12+esp],esi\r
1482 xor edx,esi\r
1483 add ebx,DWORD [24+esp]\r
1484 xor edi,ecx\r
1485 ror edx,6\r
1486 mov esi,ebp\r
1487 add ebx,edi\r
1488 ror esi,9\r
1489 mov ecx,ebp\r
1490 mov edi,DWORD [esp]\r
1491 xor esi,ebp\r
1492 mov DWORD [28+esp],ebp\r
1493 xor ebp,edi\r
1494 ror esi,11\r
1495 and eax,ebp\r
1496 lea edx,[2821834349+edx*1+ebx]\r
1497 xor esi,ecx\r
1498 xor eax,edi\r
1499 mov ecx,DWORD [76+esp]\r
1500 ror esi,2\r
1501 add eax,edx\r
1502 add edx,DWORD [8+esp]\r
1503 add eax,esi\r
1504 mov esi,DWORD [64+esp]\r
1505 mov ebx,ecx\r
1506 ror ecx,11\r
1507 mov edi,esi\r
1508 ror esi,2\r
1509 xor ecx,ebx\r
1510 shr ebx,3\r
1511 ror ecx,7\r
1512 xor esi,edi\r
1513 xor ebx,ecx\r
1514 ror esi,17\r
1515 add ebx,DWORD [72+esp]\r
1516 shr edi,10\r
1517 add ebx,DWORD [44+esp]\r
1518 mov ecx,edx\r
1519 xor edi,esi\r
1520 mov esi,DWORD [12+esp]\r
1521 ror edx,14\r
1522 add ebx,edi\r
1523 mov edi,DWORD [16+esp]\r
1524 xor edx,ecx\r
1525 mov DWORD [72+esp],ebx\r
1526 xor esi,edi\r
1527 ror edx,5\r
1528 and esi,ecx\r
1529 mov DWORD [8+esp],ecx\r
1530 xor edx,ecx\r
1531 add ebx,DWORD [20+esp]\r
1532 xor edi,esi\r
1533 ror edx,6\r
1534 mov ecx,eax\r
1535 add ebx,edi\r
1536 ror ecx,9\r
1537 mov esi,eax\r
1538 mov edi,DWORD [28+esp]\r
1539 xor ecx,eax\r
1540 mov DWORD [24+esp],eax\r
1541 xor eax,edi\r
1542 ror ecx,11\r
1543 and ebp,eax\r
1544 lea edx,[2952996808+edx*1+ebx]\r
1545 xor ecx,esi\r
1546 xor ebp,edi\r
1547 mov esi,DWORD [80+esp]\r
1548 ror ecx,2\r
1549 add ebp,edx\r
1550 add edx,DWORD [4+esp]\r
1551 add ebp,ecx\r
1552 mov ecx,DWORD [68+esp]\r
1553 mov ebx,esi\r
1554 ror esi,11\r
1555 mov edi,ecx\r
1556 ror ecx,2\r
1557 xor esi,ebx\r
1558 shr ebx,3\r
1559 ror esi,7\r
1560 xor ecx,edi\r
1561 xor ebx,esi\r
1562 ror ecx,17\r
1563 add ebx,DWORD [76+esp]\r
1564 shr edi,10\r
1565 add ebx,DWORD [48+esp]\r
1566 mov esi,edx\r
1567 xor edi,ecx\r
1568 mov ecx,DWORD [8+esp]\r
1569 ror edx,14\r
1570 add ebx,edi\r
1571 mov edi,DWORD [12+esp]\r
1572 xor edx,esi\r
1573 mov DWORD [76+esp],ebx\r
1574 xor ecx,edi\r
1575 ror edx,5\r
1576 and ecx,esi\r
1577 mov DWORD [4+esp],esi\r
1578 xor edx,esi\r
1579 add ebx,DWORD [16+esp]\r
1580 xor edi,ecx\r
1581 ror edx,6\r
1582 mov esi,ebp\r
1583 add ebx,edi\r
1584 ror esi,9\r
1585 mov ecx,ebp\r
1586 mov edi,DWORD [24+esp]\r
1587 xor esi,ebp\r
1588 mov DWORD [20+esp],ebp\r
1589 xor ebp,edi\r
1590 ror esi,11\r
1591 and eax,ebp\r
1592 lea edx,[3210313671+edx*1+ebx]\r
1593 xor esi,ecx\r
1594 xor eax,edi\r
1595 mov ecx,DWORD [84+esp]\r
1596 ror esi,2\r
1597 add eax,edx\r
1598 add edx,DWORD [esp]\r
1599 add eax,esi\r
1600 mov esi,DWORD [72+esp]\r
1601 mov ebx,ecx\r
1602 ror ecx,11\r
1603 mov edi,esi\r
1604 ror esi,2\r
1605 xor ecx,ebx\r
1606 shr ebx,3\r
1607 ror ecx,7\r
1608 xor esi,edi\r
1609 xor ebx,ecx\r
1610 ror esi,17\r
1611 add ebx,DWORD [80+esp]\r
1612 shr edi,10\r
1613 add ebx,DWORD [52+esp]\r
1614 mov ecx,edx\r
1615 xor edi,esi\r
1616 mov esi,DWORD [4+esp]\r
1617 ror edx,14\r
1618 add ebx,edi\r
1619 mov edi,DWORD [8+esp]\r
1620 xor edx,ecx\r
1621 mov DWORD [80+esp],ebx\r
1622 xor esi,edi\r
1623 ror edx,5\r
1624 and esi,ecx\r
1625 mov DWORD [esp],ecx\r
1626 xor edx,ecx\r
1627 add ebx,DWORD [12+esp]\r
1628 xor edi,esi\r
1629 ror edx,6\r
1630 mov ecx,eax\r
1631 add ebx,edi\r
1632 ror ecx,9\r
1633 mov esi,eax\r
1634 mov edi,DWORD [20+esp]\r
1635 xor ecx,eax\r
1636 mov DWORD [16+esp],eax\r
1637 xor eax,edi\r
1638 ror ecx,11\r
1639 and ebp,eax\r
1640 lea edx,[3336571891+edx*1+ebx]\r
1641 xor ecx,esi\r
1642 xor ebp,edi\r
1643 mov esi,DWORD [88+esp]\r
1644 ror ecx,2\r
1645 add ebp,edx\r
1646 add edx,DWORD [28+esp]\r
1647 add ebp,ecx\r
1648 mov ecx,DWORD [76+esp]\r
1649 mov ebx,esi\r
1650 ror esi,11\r
1651 mov edi,ecx\r
1652 ror ecx,2\r
1653 xor esi,ebx\r
1654 shr ebx,3\r
1655 ror esi,7\r
1656 xor ecx,edi\r
1657 xor ebx,esi\r
1658 ror ecx,17\r
1659 add ebx,DWORD [84+esp]\r
1660 shr edi,10\r
1661 add ebx,DWORD [56+esp]\r
1662 mov esi,edx\r
1663 xor edi,ecx\r
1664 mov ecx,DWORD [esp]\r
1665 ror edx,14\r
1666 add ebx,edi\r
1667 mov edi,DWORD [4+esp]\r
1668 xor edx,esi\r
1669 mov DWORD [84+esp],ebx\r
1670 xor ecx,edi\r
1671 ror edx,5\r
1672 and ecx,esi\r
1673 mov DWORD [28+esp],esi\r
1674 xor edx,esi\r
1675 add ebx,DWORD [8+esp]\r
1676 xor edi,ecx\r
1677 ror edx,6\r
1678 mov esi,ebp\r
1679 add ebx,edi\r
1680 ror esi,9\r
1681 mov ecx,ebp\r
1682 mov edi,DWORD [16+esp]\r
1683 xor esi,ebp\r
1684 mov DWORD [12+esp],ebp\r
1685 xor ebp,edi\r
1686 ror esi,11\r
1687 and eax,ebp\r
1688 lea edx,[3584528711+edx*1+ebx]\r
1689 xor esi,ecx\r
1690 xor eax,edi\r
1691 mov ecx,DWORD [92+esp]\r
1692 ror esi,2\r
1693 add eax,edx\r
1694 add edx,DWORD [24+esp]\r
1695 add eax,esi\r
1696 mov esi,DWORD [80+esp]\r
1697 mov ebx,ecx\r
1698 ror ecx,11\r
1699 mov edi,esi\r
1700 ror esi,2\r
1701 xor ecx,ebx\r
1702 shr ebx,3\r
1703 ror ecx,7\r
1704 xor esi,edi\r
1705 xor ebx,ecx\r
1706 ror esi,17\r
1707 add ebx,DWORD [88+esp]\r
1708 shr edi,10\r
1709 add ebx,DWORD [60+esp]\r
1710 mov ecx,edx\r
1711 xor edi,esi\r
1712 mov esi,DWORD [28+esp]\r
1713 ror edx,14\r
1714 add ebx,edi\r
1715 mov edi,DWORD [esp]\r
1716 xor edx,ecx\r
1717 mov DWORD [88+esp],ebx\r
1718 xor esi,edi\r
1719 ror edx,5\r
1720 and esi,ecx\r
1721 mov DWORD [24+esp],ecx\r
1722 xor edx,ecx\r
1723 add ebx,DWORD [4+esp]\r
1724 xor edi,esi\r
1725 ror edx,6\r
1726 mov ecx,eax\r
1727 add ebx,edi\r
1728 ror ecx,9\r
1729 mov esi,eax\r
1730 mov edi,DWORD [12+esp]\r
1731 xor ecx,eax\r
1732 mov DWORD [8+esp],eax\r
1733 xor eax,edi\r
1734 ror ecx,11\r
1735 and ebp,eax\r
1736 lea edx,[113926993+edx*1+ebx]\r
1737 xor ecx,esi\r
1738 xor ebp,edi\r
1739 mov esi,DWORD [32+esp]\r
1740 ror ecx,2\r
1741 add ebp,edx\r
1742 add edx,DWORD [20+esp]\r
1743 add ebp,ecx\r
1744 mov ecx,DWORD [84+esp]\r
1745 mov ebx,esi\r
1746 ror esi,11\r
1747 mov edi,ecx\r
1748 ror ecx,2\r
1749 xor esi,ebx\r
1750 shr ebx,3\r
1751 ror esi,7\r
1752 xor ecx,edi\r
1753 xor ebx,esi\r
1754 ror ecx,17\r
1755 add ebx,DWORD [92+esp]\r
1756 shr edi,10\r
1757 add ebx,DWORD [64+esp]\r
1758 mov esi,edx\r
1759 xor edi,ecx\r
1760 mov ecx,DWORD [24+esp]\r
1761 ror edx,14\r
1762 add ebx,edi\r
1763 mov edi,DWORD [28+esp]\r
1764 xor edx,esi\r
1765 mov DWORD [92+esp],ebx\r
1766 xor ecx,edi\r
1767 ror edx,5\r
1768 and ecx,esi\r
1769 mov DWORD [20+esp],esi\r
1770 xor edx,esi\r
1771 add ebx,DWORD [esp]\r
1772 xor edi,ecx\r
1773 ror edx,6\r
1774 mov esi,ebp\r
1775 add ebx,edi\r
1776 ror esi,9\r
1777 mov ecx,ebp\r
1778 mov edi,DWORD [8+esp]\r
1779 xor esi,ebp\r
1780 mov DWORD [4+esp],ebp\r
1781 xor ebp,edi\r
1782 ror esi,11\r
1783 and eax,ebp\r
1784 lea edx,[338241895+edx*1+ebx]\r
1785 xor esi,ecx\r
1786 xor eax,edi\r
1787 mov ecx,DWORD [36+esp]\r
1788 ror esi,2\r
1789 add eax,edx\r
1790 add edx,DWORD [16+esp]\r
1791 add eax,esi\r
1792 mov esi,DWORD [88+esp]\r
1793 mov ebx,ecx\r
1794 ror ecx,11\r
1795 mov edi,esi\r
1796 ror esi,2\r
1797 xor ecx,ebx\r
1798 shr ebx,3\r
1799 ror ecx,7\r
1800 xor esi,edi\r
1801 xor ebx,ecx\r
1802 ror esi,17\r
1803 add ebx,DWORD [32+esp]\r
1804 shr edi,10\r
1805 add ebx,DWORD [68+esp]\r
1806 mov ecx,edx\r
1807 xor edi,esi\r
1808 mov esi,DWORD [20+esp]\r
1809 ror edx,14\r
1810 add ebx,edi\r
1811 mov edi,DWORD [24+esp]\r
1812 xor edx,ecx\r
1813 mov DWORD [32+esp],ebx\r
1814 xor esi,edi\r
1815 ror edx,5\r
1816 and esi,ecx\r
1817 mov DWORD [16+esp],ecx\r
1818 xor edx,ecx\r
1819 add ebx,DWORD [28+esp]\r
1820 xor edi,esi\r
1821 ror edx,6\r
1822 mov ecx,eax\r
1823 add ebx,edi\r
1824 ror ecx,9\r
1825 mov esi,eax\r
1826 mov edi,DWORD [4+esp]\r
1827 xor ecx,eax\r
1828 mov DWORD [esp],eax\r
1829 xor eax,edi\r
1830 ror ecx,11\r
1831 and ebp,eax\r
1832 lea edx,[666307205+edx*1+ebx]\r
1833 xor ecx,esi\r
1834 xor ebp,edi\r
1835 mov esi,DWORD [40+esp]\r
1836 ror ecx,2\r
1837 add ebp,edx\r
1838 add edx,DWORD [12+esp]\r
1839 add ebp,ecx\r
1840 mov ecx,DWORD [92+esp]\r
1841 mov ebx,esi\r
1842 ror esi,11\r
1843 mov edi,ecx\r
1844 ror ecx,2\r
1845 xor esi,ebx\r
1846 shr ebx,3\r
1847 ror esi,7\r
1848 xor ecx,edi\r
1849 xor ebx,esi\r
1850 ror ecx,17\r
1851 add ebx,DWORD [36+esp]\r
1852 shr edi,10\r
1853 add ebx,DWORD [72+esp]\r
1854 mov esi,edx\r
1855 xor edi,ecx\r
1856 mov ecx,DWORD [16+esp]\r
1857 ror edx,14\r
1858 add ebx,edi\r
1859 mov edi,DWORD [20+esp]\r
1860 xor edx,esi\r
1861 mov DWORD [36+esp],ebx\r
1862 xor ecx,edi\r
1863 ror edx,5\r
1864 and ecx,esi\r
1865 mov DWORD [12+esp],esi\r
1866 xor edx,esi\r
1867 add ebx,DWORD [24+esp]\r
1868 xor edi,ecx\r
1869 ror edx,6\r
1870 mov esi,ebp\r
1871 add ebx,edi\r
1872 ror esi,9\r
1873 mov ecx,ebp\r
1874 mov edi,DWORD [esp]\r
1875 xor esi,ebp\r
1876 mov DWORD [28+esp],ebp\r
1877 xor ebp,edi\r
1878 ror esi,11\r
1879 and eax,ebp\r
1880 lea edx,[773529912+edx*1+ebx]\r
1881 xor esi,ecx\r
1882 xor eax,edi\r
1883 mov ecx,DWORD [44+esp]\r
1884 ror esi,2\r
1885 add eax,edx\r
1886 add edx,DWORD [8+esp]\r
1887 add eax,esi\r
1888 mov esi,DWORD [32+esp]\r
1889 mov ebx,ecx\r
1890 ror ecx,11\r
1891 mov edi,esi\r
1892 ror esi,2\r
1893 xor ecx,ebx\r
1894 shr ebx,3\r
1895 ror ecx,7\r
1896 xor esi,edi\r
1897 xor ebx,ecx\r
1898 ror esi,17\r
1899 add ebx,DWORD [40+esp]\r
1900 shr edi,10\r
1901 add ebx,DWORD [76+esp]\r
1902 mov ecx,edx\r
1903 xor edi,esi\r
1904 mov esi,DWORD [12+esp]\r
1905 ror edx,14\r
1906 add ebx,edi\r
1907 mov edi,DWORD [16+esp]\r
1908 xor edx,ecx\r
1909 mov DWORD [40+esp],ebx\r
1910 xor esi,edi\r
1911 ror edx,5\r
1912 and esi,ecx\r
1913 mov DWORD [8+esp],ecx\r
1914 xor edx,ecx\r
1915 add ebx,DWORD [20+esp]\r
1916 xor edi,esi\r
1917 ror edx,6\r
1918 mov ecx,eax\r
1919 add ebx,edi\r
1920 ror ecx,9\r
1921 mov esi,eax\r
1922 mov edi,DWORD [28+esp]\r
1923 xor ecx,eax\r
1924 mov DWORD [24+esp],eax\r
1925 xor eax,edi\r
1926 ror ecx,11\r
1927 and ebp,eax\r
1928 lea edx,[1294757372+edx*1+ebx]\r
1929 xor ecx,esi\r
1930 xor ebp,edi\r
1931 mov esi,DWORD [48+esp]\r
1932 ror ecx,2\r
1933 add ebp,edx\r
1934 add edx,DWORD [4+esp]\r
1935 add ebp,ecx\r
1936 mov ecx,DWORD [36+esp]\r
1937 mov ebx,esi\r
1938 ror esi,11\r
1939 mov edi,ecx\r
1940 ror ecx,2\r
1941 xor esi,ebx\r
1942 shr ebx,3\r
1943 ror esi,7\r
1944 xor ecx,edi\r
1945 xor ebx,esi\r
1946 ror ecx,17\r
1947 add ebx,DWORD [44+esp]\r
1948 shr edi,10\r
1949 add ebx,DWORD [80+esp]\r
1950 mov esi,edx\r
1951 xor edi,ecx\r
1952 mov ecx,DWORD [8+esp]\r
1953 ror edx,14\r
1954 add ebx,edi\r
1955 mov edi,DWORD [12+esp]\r
1956 xor edx,esi\r
1957 mov DWORD [44+esp],ebx\r
1958 xor ecx,edi\r
1959 ror edx,5\r
1960 and ecx,esi\r
1961 mov DWORD [4+esp],esi\r
1962 xor edx,esi\r
1963 add ebx,DWORD [16+esp]\r
1964 xor edi,ecx\r
1965 ror edx,6\r
1966 mov esi,ebp\r
1967 add ebx,edi\r
1968 ror esi,9\r
1969 mov ecx,ebp\r
1970 mov edi,DWORD [24+esp]\r
1971 xor esi,ebp\r
1972 mov DWORD [20+esp],ebp\r
1973 xor ebp,edi\r
1974 ror esi,11\r
1975 and eax,ebp\r
1976 lea edx,[1396182291+edx*1+ebx]\r
1977 xor esi,ecx\r
1978 xor eax,edi\r
1979 mov ecx,DWORD [52+esp]\r
1980 ror esi,2\r
1981 add eax,edx\r
1982 add edx,DWORD [esp]\r
1983 add eax,esi\r
1984 mov esi,DWORD [40+esp]\r
1985 mov ebx,ecx\r
1986 ror ecx,11\r
1987 mov edi,esi\r
1988 ror esi,2\r
1989 xor ecx,ebx\r
1990 shr ebx,3\r
1991 ror ecx,7\r
1992 xor esi,edi\r
1993 xor ebx,ecx\r
1994 ror esi,17\r
1995 add ebx,DWORD [48+esp]\r
1996 shr edi,10\r
1997 add ebx,DWORD [84+esp]\r
1998 mov ecx,edx\r
1999 xor edi,esi\r
2000 mov esi,DWORD [4+esp]\r
2001 ror edx,14\r
2002 add ebx,edi\r
2003 mov edi,DWORD [8+esp]\r
2004 xor edx,ecx\r
2005 mov DWORD [48+esp],ebx\r
2006 xor esi,edi\r
2007 ror edx,5\r
2008 and esi,ecx\r
2009 mov DWORD [esp],ecx\r
2010 xor edx,ecx\r
2011 add ebx,DWORD [12+esp]\r
2012 xor edi,esi\r
2013 ror edx,6\r
2014 mov ecx,eax\r
2015 add ebx,edi\r
2016 ror ecx,9\r
2017 mov esi,eax\r
2018 mov edi,DWORD [20+esp]\r
2019 xor ecx,eax\r
2020 mov DWORD [16+esp],eax\r
2021 xor eax,edi\r
2022 ror ecx,11\r
2023 and ebp,eax\r
2024 lea edx,[1695183700+edx*1+ebx]\r
2025 xor ecx,esi\r
2026 xor ebp,edi\r
2027 mov esi,DWORD [56+esp]\r
2028 ror ecx,2\r
2029 add ebp,edx\r
2030 add edx,DWORD [28+esp]\r
2031 add ebp,ecx\r
2032 mov ecx,DWORD [44+esp]\r
2033 mov ebx,esi\r
2034 ror esi,11\r
2035 mov edi,ecx\r
2036 ror ecx,2\r
2037 xor esi,ebx\r
2038 shr ebx,3\r
2039 ror esi,7\r
2040 xor ecx,edi\r
2041 xor ebx,esi\r
2042 ror ecx,17\r
2043 add ebx,DWORD [52+esp]\r
2044 shr edi,10\r
2045 add ebx,DWORD [88+esp]\r
2046 mov esi,edx\r
2047 xor edi,ecx\r
2048 mov ecx,DWORD [esp]\r
2049 ror edx,14\r
2050 add ebx,edi\r
2051 mov edi,DWORD [4+esp]\r
2052 xor edx,esi\r
2053 mov DWORD [52+esp],ebx\r
2054 xor ecx,edi\r
2055 ror edx,5\r
2056 and ecx,esi\r
2057 mov DWORD [28+esp],esi\r
2058 xor edx,esi\r
2059 add ebx,DWORD [8+esp]\r
2060 xor edi,ecx\r
2061 ror edx,6\r
2062 mov esi,ebp\r
2063 add ebx,edi\r
2064 ror esi,9\r
2065 mov ecx,ebp\r
2066 mov edi,DWORD [16+esp]\r
2067 xor esi,ebp\r
2068 mov DWORD [12+esp],ebp\r
2069 xor ebp,edi\r
2070 ror esi,11\r
2071 and eax,ebp\r
2072 lea edx,[1986661051+edx*1+ebx]\r
2073 xor esi,ecx\r
2074 xor eax,edi\r
2075 mov ecx,DWORD [60+esp]\r
2076 ror esi,2\r
2077 add eax,edx\r
2078 add edx,DWORD [24+esp]\r
2079 add eax,esi\r
2080 mov esi,DWORD [48+esp]\r
2081 mov ebx,ecx\r
2082 ror ecx,11\r
2083 mov edi,esi\r
2084 ror esi,2\r
2085 xor ecx,ebx\r
2086 shr ebx,3\r
2087 ror ecx,7\r
2088 xor esi,edi\r
2089 xor ebx,ecx\r
2090 ror esi,17\r
2091 add ebx,DWORD [56+esp]\r
2092 shr edi,10\r
2093 add ebx,DWORD [92+esp]\r
2094 mov ecx,edx\r
2095 xor edi,esi\r
2096 mov esi,DWORD [28+esp]\r
2097 ror edx,14\r
2098 add ebx,edi\r
2099 mov edi,DWORD [esp]\r
2100 xor edx,ecx\r
2101 mov DWORD [56+esp],ebx\r
2102 xor esi,edi\r
2103 ror edx,5\r
2104 and esi,ecx\r
2105 mov DWORD [24+esp],ecx\r
2106 xor edx,ecx\r
2107 add ebx,DWORD [4+esp]\r
2108 xor edi,esi\r
2109 ror edx,6\r
2110 mov ecx,eax\r
2111 add ebx,edi\r
2112 ror ecx,9\r
2113 mov esi,eax\r
2114 mov edi,DWORD [12+esp]\r
2115 xor ecx,eax\r
2116 mov DWORD [8+esp],eax\r
2117 xor eax,edi\r
2118 ror ecx,11\r
2119 and ebp,eax\r
2120 lea edx,[2177026350+edx*1+ebx]\r
2121 xor ecx,esi\r
2122 xor ebp,edi\r
2123 mov esi,DWORD [64+esp]\r
2124 ror ecx,2\r
2125 add ebp,edx\r
2126 add edx,DWORD [20+esp]\r
2127 add ebp,ecx\r
2128 mov ecx,DWORD [52+esp]\r
2129 mov ebx,esi\r
2130 ror esi,11\r
2131 mov edi,ecx\r
2132 ror ecx,2\r
2133 xor esi,ebx\r
2134 shr ebx,3\r
2135 ror esi,7\r
2136 xor ecx,edi\r
2137 xor ebx,esi\r
2138 ror ecx,17\r
2139 add ebx,DWORD [60+esp]\r
2140 shr edi,10\r
2141 add ebx,DWORD [32+esp]\r
2142 mov esi,edx\r
2143 xor edi,ecx\r
2144 mov ecx,DWORD [24+esp]\r
2145 ror edx,14\r
2146 add ebx,edi\r
2147 mov edi,DWORD [28+esp]\r
2148 xor edx,esi\r
2149 mov DWORD [60+esp],ebx\r
2150 xor ecx,edi\r
2151 ror edx,5\r
2152 and ecx,esi\r
2153 mov DWORD [20+esp],esi\r
2154 xor edx,esi\r
2155 add ebx,DWORD [esp]\r
2156 xor edi,ecx\r
2157 ror edx,6\r
2158 mov esi,ebp\r
2159 add ebx,edi\r
2160 ror esi,9\r
2161 mov ecx,ebp\r
2162 mov edi,DWORD [8+esp]\r
2163 xor esi,ebp\r
2164 mov DWORD [4+esp],ebp\r
2165 xor ebp,edi\r
2166 ror esi,11\r
2167 and eax,ebp\r
2168 lea edx,[2456956037+edx*1+ebx]\r
2169 xor esi,ecx\r
2170 xor eax,edi\r
2171 mov ecx,DWORD [68+esp]\r
2172 ror esi,2\r
2173 add eax,edx\r
2174 add edx,DWORD [16+esp]\r
2175 add eax,esi\r
2176 mov esi,DWORD [56+esp]\r
2177 mov ebx,ecx\r
2178 ror ecx,11\r
2179 mov edi,esi\r
2180 ror esi,2\r
2181 xor ecx,ebx\r
2182 shr ebx,3\r
2183 ror ecx,7\r
2184 xor esi,edi\r
2185 xor ebx,ecx\r
2186 ror esi,17\r
2187 add ebx,DWORD [64+esp]\r
2188 shr edi,10\r
2189 add ebx,DWORD [36+esp]\r
2190 mov ecx,edx\r
2191 xor edi,esi\r
2192 mov esi,DWORD [20+esp]\r
2193 ror edx,14\r
2194 add ebx,edi\r
2195 mov edi,DWORD [24+esp]\r
2196 xor edx,ecx\r
2197 mov DWORD [64+esp],ebx\r
2198 xor esi,edi\r
2199 ror edx,5\r
2200 and esi,ecx\r
2201 mov DWORD [16+esp],ecx\r
2202 xor edx,ecx\r
2203 add ebx,DWORD [28+esp]\r
2204 xor edi,esi\r
2205 ror edx,6\r
2206 mov ecx,eax\r
2207 add ebx,edi\r
2208 ror ecx,9\r
2209 mov esi,eax\r
2210 mov edi,DWORD [4+esp]\r
2211 xor ecx,eax\r
2212 mov DWORD [esp],eax\r
2213 xor eax,edi\r
2214 ror ecx,11\r
2215 and ebp,eax\r
2216 lea edx,[2730485921+edx*1+ebx]\r
2217 xor ecx,esi\r
2218 xor ebp,edi\r
2219 mov esi,DWORD [72+esp]\r
2220 ror ecx,2\r
2221 add ebp,edx\r
2222 add edx,DWORD [12+esp]\r
2223 add ebp,ecx\r
2224 mov ecx,DWORD [60+esp]\r
2225 mov ebx,esi\r
2226 ror esi,11\r
2227 mov edi,ecx\r
2228 ror ecx,2\r
2229 xor esi,ebx\r
2230 shr ebx,3\r
2231 ror esi,7\r
2232 xor ecx,edi\r
2233 xor ebx,esi\r
2234 ror ecx,17\r
2235 add ebx,DWORD [68+esp]\r
2236 shr edi,10\r
2237 add ebx,DWORD [40+esp]\r
2238 mov esi,edx\r
2239 xor edi,ecx\r
2240 mov ecx,DWORD [16+esp]\r
2241 ror edx,14\r
2242 add ebx,edi\r
2243 mov edi,DWORD [20+esp]\r
2244 xor edx,esi\r
2245 mov DWORD [68+esp],ebx\r
2246 xor ecx,edi\r
2247 ror edx,5\r
2248 and ecx,esi\r
2249 mov DWORD [12+esp],esi\r
2250 xor edx,esi\r
2251 add ebx,DWORD [24+esp]\r
2252 xor edi,ecx\r
2253 ror edx,6\r
2254 mov esi,ebp\r
2255 add ebx,edi\r
2256 ror esi,9\r
2257 mov ecx,ebp\r
2258 mov edi,DWORD [esp]\r
2259 xor esi,ebp\r
2260 mov DWORD [28+esp],ebp\r
2261 xor ebp,edi\r
2262 ror esi,11\r
2263 and eax,ebp\r
2264 lea edx,[2820302411+edx*1+ebx]\r
2265 xor esi,ecx\r
2266 xor eax,edi\r
2267 mov ecx,DWORD [76+esp]\r
2268 ror esi,2\r
2269 add eax,edx\r
2270 add edx,DWORD [8+esp]\r
2271 add eax,esi\r
2272 mov esi,DWORD [64+esp]\r
2273 mov ebx,ecx\r
2274 ror ecx,11\r
2275 mov edi,esi\r
2276 ror esi,2\r
2277 xor ecx,ebx\r
2278 shr ebx,3\r
2279 ror ecx,7\r
2280 xor esi,edi\r
2281 xor ebx,ecx\r
2282 ror esi,17\r
2283 add ebx,DWORD [72+esp]\r
2284 shr edi,10\r
2285 add ebx,DWORD [44+esp]\r
2286 mov ecx,edx\r
2287 xor edi,esi\r
2288 mov esi,DWORD [12+esp]\r
2289 ror edx,14\r
2290 add ebx,edi\r
2291 mov edi,DWORD [16+esp]\r
2292 xor edx,ecx\r
2293 mov DWORD [72+esp],ebx\r
2294 xor esi,edi\r
2295 ror edx,5\r
2296 and esi,ecx\r
2297 mov DWORD [8+esp],ecx\r
2298 xor edx,ecx\r
2299 add ebx,DWORD [20+esp]\r
2300 xor edi,esi\r
2301 ror edx,6\r
2302 mov ecx,eax\r
2303 add ebx,edi\r
2304 ror ecx,9\r
2305 mov esi,eax\r
2306 mov edi,DWORD [28+esp]\r
2307 xor ecx,eax\r
2308 mov DWORD [24+esp],eax\r
2309 xor eax,edi\r
2310 ror ecx,11\r
2311 and ebp,eax\r
2312 lea edx,[3259730800+edx*1+ebx]\r
2313 xor ecx,esi\r
2314 xor ebp,edi\r
2315 mov esi,DWORD [80+esp]\r
2316 ror ecx,2\r
2317 add ebp,edx\r
2318 add edx,DWORD [4+esp]\r
2319 add ebp,ecx\r
2320 mov ecx,DWORD [68+esp]\r
2321 mov ebx,esi\r
2322 ror esi,11\r
2323 mov edi,ecx\r
2324 ror ecx,2\r
2325 xor esi,ebx\r
2326 shr ebx,3\r
2327 ror esi,7\r
2328 xor ecx,edi\r
2329 xor ebx,esi\r
2330 ror ecx,17\r
2331 add ebx,DWORD [76+esp]\r
2332 shr edi,10\r
2333 add ebx,DWORD [48+esp]\r
2334 mov esi,edx\r
2335 xor edi,ecx\r
2336 mov ecx,DWORD [8+esp]\r
2337 ror edx,14\r
2338 add ebx,edi\r
2339 mov edi,DWORD [12+esp]\r
2340 xor edx,esi\r
2341 mov DWORD [76+esp],ebx\r
2342 xor ecx,edi\r
2343 ror edx,5\r
2344 and ecx,esi\r
2345 mov DWORD [4+esp],esi\r
2346 xor edx,esi\r
2347 add ebx,DWORD [16+esp]\r
2348 xor edi,ecx\r
2349 ror edx,6\r
2350 mov esi,ebp\r
2351 add ebx,edi\r
2352 ror esi,9\r
2353 mov ecx,ebp\r
2354 mov edi,DWORD [24+esp]\r
2355 xor esi,ebp\r
2356 mov DWORD [20+esp],ebp\r
2357 xor ebp,edi\r
2358 ror esi,11\r
2359 and eax,ebp\r
2360 lea edx,[3345764771+edx*1+ebx]\r
2361 xor esi,ecx\r
2362 xor eax,edi\r
2363 mov ecx,DWORD [84+esp]\r
2364 ror esi,2\r
2365 add eax,edx\r
2366 add edx,DWORD [esp]\r
2367 add eax,esi\r
2368 mov esi,DWORD [72+esp]\r
2369 mov ebx,ecx\r
2370 ror ecx,11\r
2371 mov edi,esi\r
2372 ror esi,2\r
2373 xor ecx,ebx\r
2374 shr ebx,3\r
2375 ror ecx,7\r
2376 xor esi,edi\r
2377 xor ebx,ecx\r
2378 ror esi,17\r
2379 add ebx,DWORD [80+esp]\r
2380 shr edi,10\r
2381 add ebx,DWORD [52+esp]\r
2382 mov ecx,edx\r
2383 xor edi,esi\r
2384 mov esi,DWORD [4+esp]\r
2385 ror edx,14\r
2386 add ebx,edi\r
2387 mov edi,DWORD [8+esp]\r
2388 xor edx,ecx\r
2389 mov DWORD [80+esp],ebx\r
2390 xor esi,edi\r
2391 ror edx,5\r
2392 and esi,ecx\r
2393 mov DWORD [esp],ecx\r
2394 xor edx,ecx\r
2395 add ebx,DWORD [12+esp]\r
2396 xor edi,esi\r
2397 ror edx,6\r
2398 mov ecx,eax\r
2399 add ebx,edi\r
2400 ror ecx,9\r
2401 mov esi,eax\r
2402 mov edi,DWORD [20+esp]\r
2403 xor ecx,eax\r
2404 mov DWORD [16+esp],eax\r
2405 xor eax,edi\r
2406 ror ecx,11\r
2407 and ebp,eax\r
2408 lea edx,[3516065817+edx*1+ebx]\r
2409 xor ecx,esi\r
2410 xor ebp,edi\r
2411 mov esi,DWORD [88+esp]\r
2412 ror ecx,2\r
2413 add ebp,edx\r
2414 add edx,DWORD [28+esp]\r
2415 add ebp,ecx\r
2416 mov ecx,DWORD [76+esp]\r
2417 mov ebx,esi\r
2418 ror esi,11\r
2419 mov edi,ecx\r
2420 ror ecx,2\r
2421 xor esi,ebx\r
2422 shr ebx,3\r
2423 ror esi,7\r
2424 xor ecx,edi\r
2425 xor ebx,esi\r
2426 ror ecx,17\r
2427 add ebx,DWORD [84+esp]\r
2428 shr edi,10\r
2429 add ebx,DWORD [56+esp]\r
2430 mov esi,edx\r
2431 xor edi,ecx\r
2432 mov ecx,DWORD [esp]\r
2433 ror edx,14\r
2434 add ebx,edi\r
2435 mov edi,DWORD [4+esp]\r
2436 xor edx,esi\r
2437 mov DWORD [84+esp],ebx\r
2438 xor ecx,edi\r
2439 ror edx,5\r
2440 and ecx,esi\r
2441 mov DWORD [28+esp],esi\r
2442 xor edx,esi\r
2443 add ebx,DWORD [8+esp]\r
2444 xor edi,ecx\r
2445 ror edx,6\r
2446 mov esi,ebp\r
2447 add ebx,edi\r
2448 ror esi,9\r
2449 mov ecx,ebp\r
2450 mov edi,DWORD [16+esp]\r
2451 xor esi,ebp\r
2452 mov DWORD [12+esp],ebp\r
2453 xor ebp,edi\r
2454 ror esi,11\r
2455 and eax,ebp\r
2456 lea edx,[3600352804+edx*1+ebx]\r
2457 xor esi,ecx\r
2458 xor eax,edi\r
2459 mov ecx,DWORD [92+esp]\r
2460 ror esi,2\r
2461 add eax,edx\r
2462 add edx,DWORD [24+esp]\r
2463 add eax,esi\r
2464 mov esi,DWORD [80+esp]\r
2465 mov ebx,ecx\r
2466 ror ecx,11\r
2467 mov edi,esi\r
2468 ror esi,2\r
2469 xor ecx,ebx\r
2470 shr ebx,3\r
2471 ror ecx,7\r
2472 xor esi,edi\r
2473 xor ebx,ecx\r
2474 ror esi,17\r
2475 add ebx,DWORD [88+esp]\r
2476 shr edi,10\r
2477 add ebx,DWORD [60+esp]\r
2478 mov ecx,edx\r
2479 xor edi,esi\r
2480 mov esi,DWORD [28+esp]\r
2481 ror edx,14\r
2482 add ebx,edi\r
2483 mov edi,DWORD [esp]\r
2484 xor edx,ecx\r
2485 mov DWORD [88+esp],ebx\r
2486 xor esi,edi\r
2487 ror edx,5\r
2488 and esi,ecx\r
2489 mov DWORD [24+esp],ecx\r
2490 xor edx,ecx\r
2491 add ebx,DWORD [4+esp]\r
2492 xor edi,esi\r
2493 ror edx,6\r
2494 mov ecx,eax\r
2495 add ebx,edi\r
2496 ror ecx,9\r
2497 mov esi,eax\r
2498 mov edi,DWORD [12+esp]\r
2499 xor ecx,eax\r
2500 mov DWORD [8+esp],eax\r
2501 xor eax,edi\r
2502 ror ecx,11\r
2503 and ebp,eax\r
2504 lea edx,[4094571909+edx*1+ebx]\r
2505 xor ecx,esi\r
2506 xor ebp,edi\r
2507 mov esi,DWORD [32+esp]\r
2508 ror ecx,2\r
2509 add ebp,edx\r
2510 add edx,DWORD [20+esp]\r
2511 add ebp,ecx\r
2512 mov ecx,DWORD [84+esp]\r
2513 mov ebx,esi\r
2514 ror esi,11\r
2515 mov edi,ecx\r
2516 ror ecx,2\r
2517 xor esi,ebx\r
2518 shr ebx,3\r
2519 ror esi,7\r
2520 xor ecx,edi\r
2521 xor ebx,esi\r
2522 ror ecx,17\r
2523 add ebx,DWORD [92+esp]\r
2524 shr edi,10\r
2525 add ebx,DWORD [64+esp]\r
2526 mov esi,edx\r
2527 xor edi,ecx\r
2528 mov ecx,DWORD [24+esp]\r
2529 ror edx,14\r
2530 add ebx,edi\r
2531 mov edi,DWORD [28+esp]\r
2532 xor edx,esi\r
2533 mov DWORD [92+esp],ebx\r
2534 xor ecx,edi\r
2535 ror edx,5\r
2536 and ecx,esi\r
2537 mov DWORD [20+esp],esi\r
2538 xor edx,esi\r
2539 add ebx,DWORD [esp]\r
2540 xor edi,ecx\r
2541 ror edx,6\r
2542 mov esi,ebp\r
2543 add ebx,edi\r
2544 ror esi,9\r
2545 mov ecx,ebp\r
2546 mov edi,DWORD [8+esp]\r
2547 xor esi,ebp\r
2548 mov DWORD [4+esp],ebp\r
2549 xor ebp,edi\r
2550 ror esi,11\r
2551 and eax,ebp\r
2552 lea edx,[275423344+edx*1+ebx]\r
2553 xor esi,ecx\r
2554 xor eax,edi\r
2555 mov ecx,DWORD [36+esp]\r
2556 ror esi,2\r
2557 add eax,edx\r
2558 add edx,DWORD [16+esp]\r
2559 add eax,esi\r
2560 mov esi,DWORD [88+esp]\r
2561 mov ebx,ecx\r
2562 ror ecx,11\r
2563 mov edi,esi\r
2564 ror esi,2\r
2565 xor ecx,ebx\r
2566 shr ebx,3\r
2567 ror ecx,7\r
2568 xor esi,edi\r
2569 xor ebx,ecx\r
2570 ror esi,17\r
2571 add ebx,DWORD [32+esp]\r
2572 shr edi,10\r
2573 add ebx,DWORD [68+esp]\r
2574 mov ecx,edx\r
2575 xor edi,esi\r
2576 mov esi,DWORD [20+esp]\r
2577 ror edx,14\r
2578 add ebx,edi\r
2579 mov edi,DWORD [24+esp]\r
2580 xor edx,ecx\r
2581 mov DWORD [32+esp],ebx\r
2582 xor esi,edi\r
2583 ror edx,5\r
2584 and esi,ecx\r
2585 mov DWORD [16+esp],ecx\r
2586 xor edx,ecx\r
2587 add ebx,DWORD [28+esp]\r
2588 xor edi,esi\r
2589 ror edx,6\r
2590 mov ecx,eax\r
2591 add ebx,edi\r
2592 ror ecx,9\r
2593 mov esi,eax\r
2594 mov edi,DWORD [4+esp]\r
2595 xor ecx,eax\r
2596 mov DWORD [esp],eax\r
2597 xor eax,edi\r
2598 ror ecx,11\r
2599 and ebp,eax\r
2600 lea edx,[430227734+edx*1+ebx]\r
2601 xor ecx,esi\r
2602 xor ebp,edi\r
2603 mov esi,DWORD [40+esp]\r
2604 ror ecx,2\r
2605 add ebp,edx\r
2606 add edx,DWORD [12+esp]\r
2607 add ebp,ecx\r
2608 mov ecx,DWORD [92+esp]\r
2609 mov ebx,esi\r
2610 ror esi,11\r
2611 mov edi,ecx\r
2612 ror ecx,2\r
2613 xor esi,ebx\r
2614 shr ebx,3\r
2615 ror esi,7\r
2616 xor ecx,edi\r
2617 xor ebx,esi\r
2618 ror ecx,17\r
2619 add ebx,DWORD [36+esp]\r
2620 shr edi,10\r
2621 add ebx,DWORD [72+esp]\r
2622 mov esi,edx\r
2623 xor edi,ecx\r
2624 mov ecx,DWORD [16+esp]\r
2625 ror edx,14\r
2626 add ebx,edi\r
2627 mov edi,DWORD [20+esp]\r
2628 xor edx,esi\r
2629 mov DWORD [36+esp],ebx\r
2630 xor ecx,edi\r
2631 ror edx,5\r
2632 and ecx,esi\r
2633 mov DWORD [12+esp],esi\r
2634 xor edx,esi\r
2635 add ebx,DWORD [24+esp]\r
2636 xor edi,ecx\r
2637 ror edx,6\r
2638 mov esi,ebp\r
2639 add ebx,edi\r
2640 ror esi,9\r
2641 mov ecx,ebp\r
2642 mov edi,DWORD [esp]\r
2643 xor esi,ebp\r
2644 mov DWORD [28+esp],ebp\r
2645 xor ebp,edi\r
2646 ror esi,11\r
2647 and eax,ebp\r
2648 lea edx,[506948616+edx*1+ebx]\r
2649 xor esi,ecx\r
2650 xor eax,edi\r
2651 mov ecx,DWORD [44+esp]\r
2652 ror esi,2\r
2653 add eax,edx\r
2654 add edx,DWORD [8+esp]\r
2655 add eax,esi\r
2656 mov esi,DWORD [32+esp]\r
2657 mov ebx,ecx\r
2658 ror ecx,11\r
2659 mov edi,esi\r
2660 ror esi,2\r
2661 xor ecx,ebx\r
2662 shr ebx,3\r
2663 ror ecx,7\r
2664 xor esi,edi\r
2665 xor ebx,ecx\r
2666 ror esi,17\r
2667 add ebx,DWORD [40+esp]\r
2668 shr edi,10\r
2669 add ebx,DWORD [76+esp]\r
2670 mov ecx,edx\r
2671 xor edi,esi\r
2672 mov esi,DWORD [12+esp]\r
2673 ror edx,14\r
2674 add ebx,edi\r
2675 mov edi,DWORD [16+esp]\r
2676 xor edx,ecx\r
2677 mov DWORD [40+esp],ebx\r
2678 xor esi,edi\r
2679 ror edx,5\r
2680 and esi,ecx\r
2681 mov DWORD [8+esp],ecx\r
2682 xor edx,ecx\r
2683 add ebx,DWORD [20+esp]\r
2684 xor edi,esi\r
2685 ror edx,6\r
2686 mov ecx,eax\r
2687 add ebx,edi\r
2688 ror ecx,9\r
2689 mov esi,eax\r
2690 mov edi,DWORD [28+esp]\r
2691 xor ecx,eax\r
2692 mov DWORD [24+esp],eax\r
2693 xor eax,edi\r
2694 ror ecx,11\r
2695 and ebp,eax\r
2696 lea edx,[659060556+edx*1+ebx]\r
2697 xor ecx,esi\r
2698 xor ebp,edi\r
2699 mov esi,DWORD [48+esp]\r
2700 ror ecx,2\r
2701 add ebp,edx\r
2702 add edx,DWORD [4+esp]\r
2703 add ebp,ecx\r
2704 mov ecx,DWORD [36+esp]\r
2705 mov ebx,esi\r
2706 ror esi,11\r
2707 mov edi,ecx\r
2708 ror ecx,2\r
2709 xor esi,ebx\r
2710 shr ebx,3\r
2711 ror esi,7\r
2712 xor ecx,edi\r
2713 xor ebx,esi\r
2714 ror ecx,17\r
2715 add ebx,DWORD [44+esp]\r
2716 shr edi,10\r
2717 add ebx,DWORD [80+esp]\r
2718 mov esi,edx\r
2719 xor edi,ecx\r
2720 mov ecx,DWORD [8+esp]\r
2721 ror edx,14\r
2722 add ebx,edi\r
2723 mov edi,DWORD [12+esp]\r
2724 xor edx,esi\r
2725 mov DWORD [44+esp],ebx\r
2726 xor ecx,edi\r
2727 ror edx,5\r
2728 and ecx,esi\r
2729 mov DWORD [4+esp],esi\r
2730 xor edx,esi\r
2731 add ebx,DWORD [16+esp]\r
2732 xor edi,ecx\r
2733 ror edx,6\r
2734 mov esi,ebp\r
2735 add ebx,edi\r
2736 ror esi,9\r
2737 mov ecx,ebp\r
2738 mov edi,DWORD [24+esp]\r
2739 xor esi,ebp\r
2740 mov DWORD [20+esp],ebp\r
2741 xor ebp,edi\r
2742 ror esi,11\r
2743 and eax,ebp\r
2744 lea edx,[883997877+edx*1+ebx]\r
2745 xor esi,ecx\r
2746 xor eax,edi\r
2747 mov ecx,DWORD [52+esp]\r
2748 ror esi,2\r
2749 add eax,edx\r
2750 add edx,DWORD [esp]\r
2751 add eax,esi\r
2752 mov esi,DWORD [40+esp]\r
2753 mov ebx,ecx\r
2754 ror ecx,11\r
2755 mov edi,esi\r
2756 ror esi,2\r
2757 xor ecx,ebx\r
2758 shr ebx,3\r
2759 ror ecx,7\r
2760 xor esi,edi\r
2761 xor ebx,ecx\r
2762 ror esi,17\r
2763 add ebx,DWORD [48+esp]\r
2764 shr edi,10\r
2765 add ebx,DWORD [84+esp]\r
2766 mov ecx,edx\r
2767 xor edi,esi\r
2768 mov esi,DWORD [4+esp]\r
2769 ror edx,14\r
2770 add ebx,edi\r
2771 mov edi,DWORD [8+esp]\r
2772 xor edx,ecx\r
2773 mov DWORD [48+esp],ebx\r
2774 xor esi,edi\r
2775 ror edx,5\r
2776 and esi,ecx\r
2777 mov DWORD [esp],ecx\r
2778 xor edx,ecx\r
2779 add ebx,DWORD [12+esp]\r
2780 xor edi,esi\r
2781 ror edx,6\r
2782 mov ecx,eax\r
2783 add ebx,edi\r
2784 ror ecx,9\r
2785 mov esi,eax\r
2786 mov edi,DWORD [20+esp]\r
2787 xor ecx,eax\r
2788 mov DWORD [16+esp],eax\r
2789 xor eax,edi\r
2790 ror ecx,11\r
2791 and ebp,eax\r
2792 lea edx,[958139571+edx*1+ebx]\r
2793 xor ecx,esi\r
2794 xor ebp,edi\r
2795 mov esi,DWORD [56+esp]\r
2796 ror ecx,2\r
2797 add ebp,edx\r
2798 add edx,DWORD [28+esp]\r
2799 add ebp,ecx\r
2800 mov ecx,DWORD [44+esp]\r
2801 mov ebx,esi\r
2802 ror esi,11\r
2803 mov edi,ecx\r
2804 ror ecx,2\r
2805 xor esi,ebx\r
2806 shr ebx,3\r
2807 ror esi,7\r
2808 xor ecx,edi\r
2809 xor ebx,esi\r
2810 ror ecx,17\r
2811 add ebx,DWORD [52+esp]\r
2812 shr edi,10\r
2813 add ebx,DWORD [88+esp]\r
2814 mov esi,edx\r
2815 xor edi,ecx\r
2816 mov ecx,DWORD [esp]\r
2817 ror edx,14\r
2818 add ebx,edi\r
2819 mov edi,DWORD [4+esp]\r
2820 xor edx,esi\r
2821 mov DWORD [52+esp],ebx\r
2822 xor ecx,edi\r
2823 ror edx,5\r
2824 and ecx,esi\r
2825 mov DWORD [28+esp],esi\r
2826 xor edx,esi\r
2827 add ebx,DWORD [8+esp]\r
2828 xor edi,ecx\r
2829 ror edx,6\r
2830 mov esi,ebp\r
2831 add ebx,edi\r
2832 ror esi,9\r
2833 mov ecx,ebp\r
2834 mov edi,DWORD [16+esp]\r
2835 xor esi,ebp\r
2836 mov DWORD [12+esp],ebp\r
2837 xor ebp,edi\r
2838 ror esi,11\r
2839 and eax,ebp\r
2840 lea edx,[1322822218+edx*1+ebx]\r
2841 xor esi,ecx\r
2842 xor eax,edi\r
2843 mov ecx,DWORD [60+esp]\r
2844 ror esi,2\r
2845 add eax,edx\r
2846 add edx,DWORD [24+esp]\r
2847 add eax,esi\r
2848 mov esi,DWORD [48+esp]\r
2849 mov ebx,ecx\r
2850 ror ecx,11\r
2851 mov edi,esi\r
2852 ror esi,2\r
2853 xor ecx,ebx\r
2854 shr ebx,3\r
2855 ror ecx,7\r
2856 xor esi,edi\r
2857 xor ebx,ecx\r
2858 ror esi,17\r
2859 add ebx,DWORD [56+esp]\r
2860 shr edi,10\r
2861 add ebx,DWORD [92+esp]\r
2862 mov ecx,edx\r
2863 xor edi,esi\r
2864 mov esi,DWORD [28+esp]\r
2865 ror edx,14\r
2866 add ebx,edi\r
2867 mov edi,DWORD [esp]\r
2868 xor edx,ecx\r
2869 mov DWORD [56+esp],ebx\r
2870 xor esi,edi\r
2871 ror edx,5\r
2872 and esi,ecx\r
2873 mov DWORD [24+esp],ecx\r
2874 xor edx,ecx\r
2875 add ebx,DWORD [4+esp]\r
2876 xor edi,esi\r
2877 ror edx,6\r
2878 mov ecx,eax\r
2879 add ebx,edi\r
2880 ror ecx,9\r
2881 mov esi,eax\r
2882 mov edi,DWORD [12+esp]\r
2883 xor ecx,eax\r
2884 mov DWORD [8+esp],eax\r
2885 xor eax,edi\r
2886 ror ecx,11\r
2887 and ebp,eax\r
2888 lea edx,[1537002063+edx*1+ebx]\r
2889 xor ecx,esi\r
2890 xor ebp,edi\r
2891 mov esi,DWORD [64+esp]\r
2892 ror ecx,2\r
2893 add ebp,edx\r
2894 add edx,DWORD [20+esp]\r
2895 add ebp,ecx\r
2896 mov ecx,DWORD [52+esp]\r
2897 mov ebx,esi\r
2898 ror esi,11\r
2899 mov edi,ecx\r
2900 ror ecx,2\r
2901 xor esi,ebx\r
2902 shr ebx,3\r
2903 ror esi,7\r
2904 xor ecx,edi\r
2905 xor ebx,esi\r
2906 ror ecx,17\r
2907 add ebx,DWORD [60+esp]\r
2908 shr edi,10\r
2909 add ebx,DWORD [32+esp]\r
2910 mov esi,edx\r
2911 xor edi,ecx\r
2912 mov ecx,DWORD [24+esp]\r
2913 ror edx,14\r
2914 add ebx,edi\r
2915 mov edi,DWORD [28+esp]\r
2916 xor edx,esi\r
2917 mov DWORD [60+esp],ebx\r
2918 xor ecx,edi\r
2919 ror edx,5\r
2920 and ecx,esi\r
2921 mov DWORD [20+esp],esi\r
2922 xor edx,esi\r
2923 add ebx,DWORD [esp]\r
2924 xor edi,ecx\r
2925 ror edx,6\r
2926 mov esi,ebp\r
2927 add ebx,edi\r
2928 ror esi,9\r
2929 mov ecx,ebp\r
2930 mov edi,DWORD [8+esp]\r
2931 xor esi,ebp\r
2932 mov DWORD [4+esp],ebp\r
2933 xor ebp,edi\r
2934 ror esi,11\r
2935 and eax,ebp\r
2936 lea edx,[1747873779+edx*1+ebx]\r
2937 xor esi,ecx\r
2938 xor eax,edi\r
2939 mov ecx,DWORD [68+esp]\r
2940 ror esi,2\r
2941 add eax,edx\r
2942 add edx,DWORD [16+esp]\r
2943 add eax,esi\r
2944 mov esi,DWORD [56+esp]\r
2945 mov ebx,ecx\r
2946 ror ecx,11\r
2947 mov edi,esi\r
2948 ror esi,2\r
2949 xor ecx,ebx\r
2950 shr ebx,3\r
2951 ror ecx,7\r
2952 xor esi,edi\r
2953 xor ebx,ecx\r
2954 ror esi,17\r
2955 add ebx,DWORD [64+esp]\r
2956 shr edi,10\r
2957 add ebx,DWORD [36+esp]\r
2958 mov ecx,edx\r
2959 xor edi,esi\r
2960 mov esi,DWORD [20+esp]\r
2961 ror edx,14\r
2962 add ebx,edi\r
2963 mov edi,DWORD [24+esp]\r
2964 xor edx,ecx\r
2965 mov DWORD [64+esp],ebx\r
2966 xor esi,edi\r
2967 ror edx,5\r
2968 and esi,ecx\r
2969 mov DWORD [16+esp],ecx\r
2970 xor edx,ecx\r
2971 add ebx,DWORD [28+esp]\r
2972 xor edi,esi\r
2973 ror edx,6\r
2974 mov ecx,eax\r
2975 add ebx,edi\r
2976 ror ecx,9\r
2977 mov esi,eax\r
2978 mov edi,DWORD [4+esp]\r
2979 xor ecx,eax\r
2980 mov DWORD [esp],eax\r
2981 xor eax,edi\r
2982 ror ecx,11\r
2983 and ebp,eax\r
2984 lea edx,[1955562222+edx*1+ebx]\r
2985 xor ecx,esi\r
2986 xor ebp,edi\r
2987 mov esi,DWORD [72+esp]\r
2988 ror ecx,2\r
2989 add ebp,edx\r
2990 add edx,DWORD [12+esp]\r
2991 add ebp,ecx\r
2992 mov ecx,DWORD [60+esp]\r
2993 mov ebx,esi\r
2994 ror esi,11\r
2995 mov edi,ecx\r
2996 ror ecx,2\r
2997 xor esi,ebx\r
2998 shr ebx,3\r
2999 ror esi,7\r
3000 xor ecx,edi\r
3001 xor ebx,esi\r
3002 ror ecx,17\r
3003 add ebx,DWORD [68+esp]\r
3004 shr edi,10\r
3005 add ebx,DWORD [40+esp]\r
3006 mov esi,edx\r
3007 xor edi,ecx\r
3008 mov ecx,DWORD [16+esp]\r
3009 ror edx,14\r
3010 add ebx,edi\r
3011 mov edi,DWORD [20+esp]\r
3012 xor edx,esi\r
3013 mov DWORD [68+esp],ebx\r
3014 xor ecx,edi\r
3015 ror edx,5\r
3016 and ecx,esi\r
3017 mov DWORD [12+esp],esi\r
3018 xor edx,esi\r
3019 add ebx,DWORD [24+esp]\r
3020 xor edi,ecx\r
3021 ror edx,6\r
3022 mov esi,ebp\r
3023 add ebx,edi\r
3024 ror esi,9\r
3025 mov ecx,ebp\r
3026 mov edi,DWORD [esp]\r
3027 xor esi,ebp\r
3028 mov DWORD [28+esp],ebp\r
3029 xor ebp,edi\r
3030 ror esi,11\r
3031 and eax,ebp\r
3032 lea edx,[2024104815+edx*1+ebx]\r
3033 xor esi,ecx\r
3034 xor eax,edi\r
3035 mov ecx,DWORD [76+esp]\r
3036 ror esi,2\r
3037 add eax,edx\r
3038 add edx,DWORD [8+esp]\r
3039 add eax,esi\r
3040 mov esi,DWORD [64+esp]\r
3041 mov ebx,ecx\r
3042 ror ecx,11\r
3043 mov edi,esi\r
3044 ror esi,2\r
3045 xor ecx,ebx\r
3046 shr ebx,3\r
3047 ror ecx,7\r
3048 xor esi,edi\r
3049 xor ebx,ecx\r
3050 ror esi,17\r
3051 add ebx,DWORD [72+esp]\r
3052 shr edi,10\r
3053 add ebx,DWORD [44+esp]\r
3054 mov ecx,edx\r
3055 xor edi,esi\r
3056 mov esi,DWORD [12+esp]\r
3057 ror edx,14\r
3058 add ebx,edi\r
3059 mov edi,DWORD [16+esp]\r
3060 xor edx,ecx\r
3061 mov DWORD [72+esp],ebx\r
3062 xor esi,edi\r
3063 ror edx,5\r
3064 and esi,ecx\r
3065 mov DWORD [8+esp],ecx\r
3066 xor edx,ecx\r
3067 add ebx,DWORD [20+esp]\r
3068 xor edi,esi\r
3069 ror edx,6\r
3070 mov ecx,eax\r
3071 add ebx,edi\r
3072 ror ecx,9\r
3073 mov esi,eax\r
3074 mov edi,DWORD [28+esp]\r
3075 xor ecx,eax\r
3076 mov DWORD [24+esp],eax\r
3077 xor eax,edi\r
3078 ror ecx,11\r
3079 and ebp,eax\r
3080 lea edx,[2227730452+edx*1+ebx]\r
3081 xor ecx,esi\r
3082 xor ebp,edi\r
3083 mov esi,DWORD [80+esp]\r
3084 ror ecx,2\r
3085 add ebp,edx\r
3086 add edx,DWORD [4+esp]\r
3087 add ebp,ecx\r
3088 mov ecx,DWORD [68+esp]\r
3089 mov ebx,esi\r
3090 ror esi,11\r
3091 mov edi,ecx\r
3092 ror ecx,2\r
3093 xor esi,ebx\r
3094 shr ebx,3\r
3095 ror esi,7\r
3096 xor ecx,edi\r
3097 xor ebx,esi\r
3098 ror ecx,17\r
3099 add ebx,DWORD [76+esp]\r
3100 shr edi,10\r
3101 add ebx,DWORD [48+esp]\r
3102 mov esi,edx\r
3103 xor edi,ecx\r
3104 mov ecx,DWORD [8+esp]\r
3105 ror edx,14\r
3106 add ebx,edi\r
3107 mov edi,DWORD [12+esp]\r
3108 xor edx,esi\r
3109 mov DWORD [76+esp],ebx\r
3110 xor ecx,edi\r
3111 ror edx,5\r
3112 and ecx,esi\r
3113 mov DWORD [4+esp],esi\r
3114 xor edx,esi\r
3115 add ebx,DWORD [16+esp]\r
3116 xor edi,ecx\r
3117 ror edx,6\r
3118 mov esi,ebp\r
3119 add ebx,edi\r
3120 ror esi,9\r
3121 mov ecx,ebp\r
3122 mov edi,DWORD [24+esp]\r
3123 xor esi,ebp\r
3124 mov DWORD [20+esp],ebp\r
3125 xor ebp,edi\r
3126 ror esi,11\r
3127 and eax,ebp\r
3128 lea edx,[2361852424+edx*1+ebx]\r
3129 xor esi,ecx\r
3130 xor eax,edi\r
3131 mov ecx,DWORD [84+esp]\r
3132 ror esi,2\r
3133 add eax,edx\r
3134 add edx,DWORD [esp]\r
3135 add eax,esi\r
3136 mov esi,DWORD [72+esp]\r
3137 mov ebx,ecx\r
3138 ror ecx,11\r
3139 mov edi,esi\r
3140 ror esi,2\r
3141 xor ecx,ebx\r
3142 shr ebx,3\r
3143 ror ecx,7\r
3144 xor esi,edi\r
3145 xor ebx,ecx\r
3146 ror esi,17\r
3147 add ebx,DWORD [80+esp]\r
3148 shr edi,10\r
3149 add ebx,DWORD [52+esp]\r
3150 mov ecx,edx\r
3151 xor edi,esi\r
3152 mov esi,DWORD [4+esp]\r
3153 ror edx,14\r
3154 add ebx,edi\r
3155 mov edi,DWORD [8+esp]\r
3156 xor edx,ecx\r
3157 mov DWORD [80+esp],ebx\r
3158 xor esi,edi\r
3159 ror edx,5\r
3160 and esi,ecx\r
3161 mov DWORD [esp],ecx\r
3162 xor edx,ecx\r
3163 add ebx,DWORD [12+esp]\r
3164 xor edi,esi\r
3165 ror edx,6\r
3166 mov ecx,eax\r
3167 add ebx,edi\r
3168 ror ecx,9\r
3169 mov esi,eax\r
3170 mov edi,DWORD [20+esp]\r
3171 xor ecx,eax\r
3172 mov DWORD [16+esp],eax\r
3173 xor eax,edi\r
3174 ror ecx,11\r
3175 and ebp,eax\r
3176 lea edx,[2428436474+edx*1+ebx]\r
3177 xor ecx,esi\r
3178 xor ebp,edi\r
3179 mov esi,DWORD [88+esp]\r
3180 ror ecx,2\r
3181 add ebp,edx\r
3182 add edx,DWORD [28+esp]\r
3183 add ebp,ecx\r
3184 mov ecx,DWORD [76+esp]\r
3185 mov ebx,esi\r
3186 ror esi,11\r
3187 mov edi,ecx\r
3188 ror ecx,2\r
3189 xor esi,ebx\r
3190 shr ebx,3\r
3191 ror esi,7\r
3192 xor ecx,edi\r
3193 xor ebx,esi\r
3194 ror ecx,17\r
3195 add ebx,DWORD [84+esp]\r
3196 shr edi,10\r
3197 add ebx,DWORD [56+esp]\r
3198 mov esi,edx\r
3199 xor edi,ecx\r
3200 mov ecx,DWORD [esp]\r
3201 ror edx,14\r
3202 add ebx,edi\r
3203 mov edi,DWORD [4+esp]\r
3204 xor edx,esi\r
3205 mov DWORD [84+esp],ebx\r
3206 xor ecx,edi\r
3207 ror edx,5\r
3208 and ecx,esi\r
3209 mov DWORD [28+esp],esi\r
3210 xor edx,esi\r
3211 add ebx,DWORD [8+esp]\r
3212 xor edi,ecx\r
3213 ror edx,6\r
3214 mov esi,ebp\r
3215 add ebx,edi\r
3216 ror esi,9\r
3217 mov ecx,ebp\r
3218 mov edi,DWORD [16+esp]\r
3219 xor esi,ebp\r
3220 mov DWORD [12+esp],ebp\r
3221 xor ebp,edi\r
3222 ror esi,11\r
3223 and eax,ebp\r
3224 lea edx,[2756734187+edx*1+ebx]\r
3225 xor esi,ecx\r
3226 xor eax,edi\r
3227 mov ecx,DWORD [92+esp]\r
3228 ror esi,2\r
3229 add eax,edx\r
3230 add edx,DWORD [24+esp]\r
3231 add eax,esi\r
3232 mov esi,DWORD [80+esp]\r
3233 mov ebx,ecx\r
3234 ror ecx,11\r
3235 mov edi,esi\r
3236 ror esi,2\r
3237 xor ecx,ebx\r
3238 shr ebx,3\r
3239 ror ecx,7\r
3240 xor esi,edi\r
3241 xor ebx,ecx\r
3242 ror esi,17\r
3243 add ebx,DWORD [88+esp]\r
3244 shr edi,10\r
3245 add ebx,DWORD [60+esp]\r
3246 mov ecx,edx\r
3247 xor edi,esi\r
3248 mov esi,DWORD [28+esp]\r
3249 ror edx,14\r
3250 add ebx,edi\r
3251 mov edi,DWORD [esp]\r
3252 xor edx,ecx\r
3253 xor esi,edi\r
3254 ror edx,5\r
3255 and esi,ecx\r
3256 mov DWORD [24+esp],ecx\r
3257 xor edx,ecx\r
3258 add ebx,DWORD [4+esp]\r
3259 xor edi,esi\r
3260 ror edx,6\r
3261 mov ecx,eax\r
3262 add ebx,edi\r
3263 ror ecx,9\r
3264 mov esi,eax\r
3265 mov edi,DWORD [12+esp]\r
3266 xor ecx,eax\r
3267 mov DWORD [8+esp],eax\r
3268 xor eax,edi\r
3269 ror ecx,11\r
3270 and ebp,eax\r
3271 lea edx,[3204031479+edx*1+ebx]\r
3272 xor ecx,esi\r
3273 xor ebp,edi\r
3274 mov esi,DWORD [32+esp]\r
3275 ror ecx,2\r
3276 add ebp,edx\r
3277 add edx,DWORD [20+esp]\r
3278 add ebp,ecx\r
3279 mov ecx,DWORD [84+esp]\r
3280 mov ebx,esi\r
3281 ror esi,11\r
3282 mov edi,ecx\r
3283 ror ecx,2\r
3284 xor esi,ebx\r
3285 shr ebx,3\r
3286 ror esi,7\r
3287 xor ecx,edi\r
3288 xor ebx,esi\r
3289 ror ecx,17\r
3290 add ebx,DWORD [92+esp]\r
3291 shr edi,10\r
3292 add ebx,DWORD [64+esp]\r
3293 mov esi,edx\r
3294 xor edi,ecx\r
3295 mov ecx,DWORD [24+esp]\r
3296 ror edx,14\r
3297 add ebx,edi\r
3298 mov edi,DWORD [28+esp]\r
3299 xor edx,esi\r
3300 xor ecx,edi\r
3301 ror edx,5\r
3302 and ecx,esi\r
3303 mov DWORD [20+esp],esi\r
3304 xor edx,esi\r
3305 add ebx,DWORD [esp]\r
3306 xor edi,ecx\r
3307 ror edx,6\r
3308 mov esi,ebp\r
3309 add ebx,edi\r
3310 ror esi,9\r
3311 mov ecx,ebp\r
3312 mov edi,DWORD [8+esp]\r
3313 xor esi,ebp\r
3314 mov DWORD [4+esp],ebp\r
3315 xor ebp,edi\r
3316 ror esi,11\r
3317 and eax,ebp\r
3318 lea edx,[3329325298+edx*1+ebx]\r
3319 xor esi,ecx\r
3320 xor eax,edi\r
3321 ror esi,2\r
3322 add eax,edx\r
3323 add edx,DWORD [16+esp]\r
3324 add eax,esi\r
3325 mov esi,DWORD [96+esp]\r
3326 xor ebp,edi\r
3327 mov ecx,DWORD [12+esp]\r
3328 add eax,DWORD [esi]\r
3329 add ebp,DWORD [4+esi]\r
3330 add edi,DWORD [8+esi]\r
3331 add ecx,DWORD [12+esi]\r
3332 mov DWORD [esi],eax\r
3333 mov DWORD [4+esi],ebp\r
3334 mov DWORD [8+esi],edi\r
3335 mov DWORD [12+esi],ecx\r
3336 mov DWORD [4+esp],ebp\r
3337 xor ebp,edi\r
3338 mov DWORD [8+esp],edi\r
3339 mov DWORD [12+esp],ecx\r
3340 mov edi,DWORD [20+esp]\r
3341 mov ebx,DWORD [24+esp]\r
3342 mov ecx,DWORD [28+esp]\r
3343 add edx,DWORD [16+esi]\r
3344 add edi,DWORD [20+esi]\r
3345 add ebx,DWORD [24+esi]\r
3346 add ecx,DWORD [28+esi]\r
3347 mov DWORD [16+esi],edx\r
3348 mov DWORD [20+esi],edi\r
3349 mov DWORD [24+esi],ebx\r
3350 mov DWORD [28+esi],ecx\r
3351 mov DWORD [20+esp],edi\r
3352 mov edi,DWORD [100+esp]\r
3353 mov DWORD [24+esp],ebx\r
3354 mov DWORD [28+esp],ecx\r
3355 cmp edi,DWORD [104+esp]\r
3356 jb NEAR L$009grand_loop\r
3357 mov esp,DWORD [108+esp]\r
3358 pop edi\r
3359 pop esi\r
3360 pop ebx\r
3361 pop ebp\r
3362 ret\r
3363segment .bss\r
3364common _OPENSSL_ia32cap_P 16\r