blob: 7f15397e151693094d8179f549ebbb325f9fa368 [file] [log] [blame]
Adam Langleyd9e397b2015-01-22 14:27:53 -08001#if defined(__i386__)
Adam Langleyd9e397b2015-01-22 14:27:53 -08002.text
3.globl _sha256_block_data_order
4.private_extern _sha256_block_data_order
5.align 4
6_sha256_block_data_order:
7L_sha256_block_data_order_begin:
8 pushl %ebp
9 pushl %ebx
10 pushl %esi
11 pushl %edi
12 movl 20(%esp),%esi
13 movl 24(%esp),%edi
14 movl 28(%esp),%eax
15 movl %esp,%ebx
16 call L000pic_point
17L000pic_point:
18 popl %ebp
19 leal L001K256-L000pic_point(%ebp),%ebp
20 subl $16,%esp
21 andl $-64,%esp
22 shll $6,%eax
23 addl %edi,%eax
24 movl %esi,(%esp)
25 movl %edi,4(%esp)
26 movl %eax,8(%esp)
27 movl %ebx,12(%esp)
Adam Langleye9ada862015-05-11 17:20:37 -070028 movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L001K256(%ebp),%edx
29 movl (%edx),%ecx
30 movl 4(%edx),%ebx
31 testl $1048576,%ecx
32 jnz L002loop
33 movl 8(%edx),%edx
34 testl $16777216,%ecx
35 jz L003no_xmm
36 andl $1073741824,%ecx
37 andl $268435968,%ebx
Adam Langleye9ada862015-05-11 17:20:37 -070038 orl %ebx,%ecx
39 andl $1342177280,%ecx
40 cmpl $1342177280,%ecx
Adam Langley4139edb2016-01-13 15:00:54 -080041 je L004AVX
Adam Langleye9ada862015-05-11 17:20:37 -070042 testl $512,%ebx
Adam Langley4139edb2016-01-13 15:00:54 -080043 jnz L005SSSE3
Adam Langleye9ada862015-05-11 17:20:37 -070044L003no_xmm:
45 subl %edi,%eax
46 cmpl $256,%eax
Adam Langley4139edb2016-01-13 15:00:54 -080047 jae L006unrolled
Adam Langleyd9e397b2015-01-22 14:27:53 -080048 jmp L002loop
49.align 4,0x90
50L002loop:
51 movl (%edi),%eax
52 movl 4(%edi),%ebx
53 movl 8(%edi),%ecx
54 bswap %eax
55 movl 12(%edi),%edx
56 bswap %ebx
57 pushl %eax
58 bswap %ecx
59 pushl %ebx
60 bswap %edx
61 pushl %ecx
62 pushl %edx
63 movl 16(%edi),%eax
64 movl 20(%edi),%ebx
65 movl 24(%edi),%ecx
66 bswap %eax
67 movl 28(%edi),%edx
68 bswap %ebx
69 pushl %eax
70 bswap %ecx
71 pushl %ebx
72 bswap %edx
73 pushl %ecx
74 pushl %edx
75 movl 32(%edi),%eax
76 movl 36(%edi),%ebx
77 movl 40(%edi),%ecx
78 bswap %eax
79 movl 44(%edi),%edx
80 bswap %ebx
81 pushl %eax
82 bswap %ecx
83 pushl %ebx
84 bswap %edx
85 pushl %ecx
86 pushl %edx
87 movl 48(%edi),%eax
88 movl 52(%edi),%ebx
89 movl 56(%edi),%ecx
90 bswap %eax
91 movl 60(%edi),%edx
92 bswap %ebx
93 pushl %eax
94 bswap %ecx
95 pushl %ebx
96 bswap %edx
97 pushl %ecx
98 pushl %edx
99 addl $64,%edi
100 leal -36(%esp),%esp
101 movl %edi,104(%esp)
102 movl (%esi),%eax
103 movl 4(%esi),%ebx
104 movl 8(%esi),%ecx
105 movl 12(%esi),%edi
106 movl %ebx,8(%esp)
107 xorl %ecx,%ebx
108 movl %ecx,12(%esp)
109 movl %edi,16(%esp)
110 movl %ebx,(%esp)
111 movl 16(%esi),%edx
112 movl 20(%esi),%ebx
113 movl 24(%esi),%ecx
114 movl 28(%esi),%edi
115 movl %ebx,24(%esp)
116 movl %ecx,28(%esp)
117 movl %edi,32(%esp)
118.align 4,0x90
Adam Langley4139edb2016-01-13 15:00:54 -0800119L00700_15:
Adam Langleyd9e397b2015-01-22 14:27:53 -0800120 movl %edx,%ecx
121 movl 24(%esp),%esi
122 rorl $14,%ecx
123 movl 28(%esp),%edi
124 xorl %edx,%ecx
125 xorl %edi,%esi
126 movl 96(%esp),%ebx
127 rorl $5,%ecx
128 andl %edx,%esi
129 movl %edx,20(%esp)
130 xorl %ecx,%edx
131 addl 32(%esp),%ebx
132 xorl %edi,%esi
133 rorl $6,%edx
134 movl %eax,%ecx
135 addl %esi,%ebx
136 rorl $9,%ecx
137 addl %edx,%ebx
138 movl 8(%esp),%edi
139 xorl %eax,%ecx
140 movl %eax,4(%esp)
141 leal -4(%esp),%esp
142 rorl $11,%ecx
143 movl (%ebp),%esi
144 xorl %eax,%ecx
145 movl 20(%esp),%edx
146 xorl %edi,%eax
147 rorl $2,%ecx
148 addl %esi,%ebx
149 movl %eax,(%esp)
150 addl %ebx,%edx
151 andl 4(%esp),%eax
152 addl %ecx,%ebx
153 xorl %edi,%eax
154 addl $4,%ebp
155 addl %ebx,%eax
156 cmpl $3248222580,%esi
Adam Langley4139edb2016-01-13 15:00:54 -0800157 jne L00700_15
Adam Langleyd9e397b2015-01-22 14:27:53 -0800158 movl 156(%esp),%ecx
Adam Langley4139edb2016-01-13 15:00:54 -0800159 jmp L00816_63
Adam Langleyd9e397b2015-01-22 14:27:53 -0800160.align 4,0x90
Adam Langley4139edb2016-01-13 15:00:54 -0800161L00816_63:
Adam Langleyd9e397b2015-01-22 14:27:53 -0800162 movl %ecx,%ebx
163 movl 104(%esp),%esi
164 rorl $11,%ecx
165 movl %esi,%edi
166 rorl $2,%esi
167 xorl %ebx,%ecx
168 shrl $3,%ebx
169 rorl $7,%ecx
170 xorl %edi,%esi
171 xorl %ecx,%ebx
172 rorl $17,%esi
173 addl 160(%esp),%ebx
174 shrl $10,%edi
175 addl 124(%esp),%ebx
176 movl %edx,%ecx
177 xorl %esi,%edi
178 movl 24(%esp),%esi
179 rorl $14,%ecx
180 addl %edi,%ebx
181 movl 28(%esp),%edi
182 xorl %edx,%ecx
183 xorl %edi,%esi
184 movl %ebx,96(%esp)
185 rorl $5,%ecx
186 andl %edx,%esi
187 movl %edx,20(%esp)
188 xorl %ecx,%edx
189 addl 32(%esp),%ebx
190 xorl %edi,%esi
191 rorl $6,%edx
192 movl %eax,%ecx
193 addl %esi,%ebx
194 rorl $9,%ecx
195 addl %edx,%ebx
196 movl 8(%esp),%edi
197 xorl %eax,%ecx
198 movl %eax,4(%esp)
199 leal -4(%esp),%esp
200 rorl $11,%ecx
201 movl (%ebp),%esi
202 xorl %eax,%ecx
203 movl 20(%esp),%edx
204 xorl %edi,%eax
205 rorl $2,%ecx
206 addl %esi,%ebx
207 movl %eax,(%esp)
208 addl %ebx,%edx
209 andl 4(%esp),%eax
210 addl %ecx,%ebx
211 xorl %edi,%eax
212 movl 156(%esp),%ecx
213 addl $4,%ebp
214 addl %ebx,%eax
215 cmpl $3329325298,%esi
Adam Langley4139edb2016-01-13 15:00:54 -0800216 jne L00816_63
Adam Langleyd9e397b2015-01-22 14:27:53 -0800217 movl 356(%esp),%esi
218 movl 8(%esp),%ebx
219 movl 16(%esp),%ecx
220 addl (%esi),%eax
221 addl 4(%esi),%ebx
222 addl 8(%esi),%edi
223 addl 12(%esi),%ecx
224 movl %eax,(%esi)
225 movl %ebx,4(%esi)
226 movl %edi,8(%esi)
227 movl %ecx,12(%esi)
228 movl 24(%esp),%eax
229 movl 28(%esp),%ebx
230 movl 32(%esp),%ecx
231 movl 360(%esp),%edi
232 addl 16(%esi),%edx
233 addl 20(%esi),%eax
234 addl 24(%esi),%ebx
235 addl 28(%esi),%ecx
236 movl %edx,16(%esi)
237 movl %eax,20(%esi)
238 movl %ebx,24(%esi)
239 movl %ecx,28(%esi)
240 leal 356(%esp),%esp
241 subl $256,%ebp
242 cmpl 8(%esp),%edi
243 jb L002loop
244 movl 12(%esp),%esp
245 popl %edi
246 popl %esi
247 popl %ebx
248 popl %ebp
249 ret
Adam Langleyd9e397b2015-01-22 14:27:53 -0800250.align 6,0x90
251L001K256:
252.long 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
253.long 66051,67438087,134810123,202182159
254.byte 83,72,65,50,53,54,32,98,108,111,99,107,32,116,114,97
255.byte 110,115,102,111,114,109,32,102,111,114,32,120,56,54,44,32
256.byte 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97
257.byte 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103
258.byte 62,0
259.align 4,0x90
Adam Langley4139edb2016-01-13 15:00:54 -0800260L006unrolled:
Adam Langleyd9e397b2015-01-22 14:27:53 -0800261 leal -96(%esp),%esp
262 movl (%esi),%eax
263 movl 4(%esi),%ebp
264 movl 8(%esi),%ecx
265 movl 12(%esi),%ebx
266 movl %ebp,4(%esp)
267 xorl %ecx,%ebp
268 movl %ecx,8(%esp)
269 movl %ebx,12(%esp)
270 movl 16(%esi),%edx
271 movl 20(%esi),%ebx
272 movl 24(%esi),%ecx
273 movl 28(%esi),%esi
274 movl %ebx,20(%esp)
275 movl %ecx,24(%esp)
276 movl %esi,28(%esp)
Adam Langley4139edb2016-01-13 15:00:54 -0800277 jmp L009grand_loop
Adam Langleyd9e397b2015-01-22 14:27:53 -0800278.align 4,0x90
Adam Langley4139edb2016-01-13 15:00:54 -0800279L009grand_loop:
Adam Langleyd9e397b2015-01-22 14:27:53 -0800280 movl (%edi),%ebx
281 movl 4(%edi),%ecx
282 bswap %ebx
283 movl 8(%edi),%esi
284 bswap %ecx
285 movl %ebx,32(%esp)
286 bswap %esi
287 movl %ecx,36(%esp)
288 movl %esi,40(%esp)
289 movl 12(%edi),%ebx
290 movl 16(%edi),%ecx
291 bswap %ebx
292 movl 20(%edi),%esi
293 bswap %ecx
294 movl %ebx,44(%esp)
295 bswap %esi
296 movl %ecx,48(%esp)
297 movl %esi,52(%esp)
298 movl 24(%edi),%ebx
299 movl 28(%edi),%ecx
300 bswap %ebx
301 movl 32(%edi),%esi
302 bswap %ecx
303 movl %ebx,56(%esp)
304 bswap %esi
305 movl %ecx,60(%esp)
306 movl %esi,64(%esp)
307 movl 36(%edi),%ebx
308 movl 40(%edi),%ecx
309 bswap %ebx
310 movl 44(%edi),%esi
311 bswap %ecx
312 movl %ebx,68(%esp)
313 bswap %esi
314 movl %ecx,72(%esp)
315 movl %esi,76(%esp)
316 movl 48(%edi),%ebx
317 movl 52(%edi),%ecx
318 bswap %ebx
319 movl 56(%edi),%esi
320 bswap %ecx
321 movl %ebx,80(%esp)
322 bswap %esi
323 movl %ecx,84(%esp)
324 movl %esi,88(%esp)
325 movl 60(%edi),%ebx
326 addl $64,%edi
327 bswap %ebx
328 movl %edi,100(%esp)
329 movl %ebx,92(%esp)
330 movl %edx,%ecx
331 movl 20(%esp),%esi
332 rorl $14,%edx
333 movl 24(%esp),%edi
334 xorl %ecx,%edx
335 movl 32(%esp),%ebx
336 xorl %edi,%esi
337 rorl $5,%edx
338 andl %ecx,%esi
339 movl %ecx,16(%esp)
340 xorl %ecx,%edx
341 addl 28(%esp),%ebx
342 xorl %esi,%edi
343 rorl $6,%edx
344 movl %eax,%ecx
345 addl %edi,%ebx
346 rorl $9,%ecx
347 movl %eax,%esi
348 movl 4(%esp),%edi
349 xorl %eax,%ecx
350 movl %eax,(%esp)
351 xorl %edi,%eax
352 rorl $11,%ecx
353 andl %eax,%ebp
354 leal 1116352408(%ebx,%edx,1),%edx
355 xorl %esi,%ecx
356 xorl %edi,%ebp
357 rorl $2,%ecx
358 addl %edx,%ebp
359 addl 12(%esp),%edx
360 addl %ecx,%ebp
361 movl %edx,%esi
362 movl 16(%esp),%ecx
363 rorl $14,%edx
364 movl 20(%esp),%edi
365 xorl %esi,%edx
366 movl 36(%esp),%ebx
367 xorl %edi,%ecx
368 rorl $5,%edx
369 andl %esi,%ecx
370 movl %esi,12(%esp)
371 xorl %esi,%edx
372 addl 24(%esp),%ebx
373 xorl %ecx,%edi
374 rorl $6,%edx
375 movl %ebp,%esi
376 addl %edi,%ebx
377 rorl $9,%esi
378 movl %ebp,%ecx
379 movl (%esp),%edi
380 xorl %ebp,%esi
381 movl %ebp,28(%esp)
382 xorl %edi,%ebp
383 rorl $11,%esi
384 andl %ebp,%eax
385 leal 1899447441(%ebx,%edx,1),%edx
386 xorl %ecx,%esi
387 xorl %edi,%eax
388 rorl $2,%esi
389 addl %edx,%eax
390 addl 8(%esp),%edx
391 addl %esi,%eax
392 movl %edx,%ecx
393 movl 12(%esp),%esi
394 rorl $14,%edx
395 movl 16(%esp),%edi
396 xorl %ecx,%edx
397 movl 40(%esp),%ebx
398 xorl %edi,%esi
399 rorl $5,%edx
400 andl %ecx,%esi
401 movl %ecx,8(%esp)
402 xorl %ecx,%edx
403 addl 20(%esp),%ebx
404 xorl %esi,%edi
405 rorl $6,%edx
406 movl %eax,%ecx
407 addl %edi,%ebx
408 rorl $9,%ecx
409 movl %eax,%esi
410 movl 28(%esp),%edi
411 xorl %eax,%ecx
412 movl %eax,24(%esp)
413 xorl %edi,%eax
414 rorl $11,%ecx
415 andl %eax,%ebp
416 leal 3049323471(%ebx,%edx,1),%edx
417 xorl %esi,%ecx
418 xorl %edi,%ebp
419 rorl $2,%ecx
420 addl %edx,%ebp
421 addl 4(%esp),%edx
422 addl %ecx,%ebp
423 movl %edx,%esi
424 movl 8(%esp),%ecx
425 rorl $14,%edx
426 movl 12(%esp),%edi
427 xorl %esi,%edx
428 movl 44(%esp),%ebx
429 xorl %edi,%ecx
430 rorl $5,%edx
431 andl %esi,%ecx
432 movl %esi,4(%esp)
433 xorl %esi,%edx
434 addl 16(%esp),%ebx
435 xorl %ecx,%edi
436 rorl $6,%edx
437 movl %ebp,%esi
438 addl %edi,%ebx
439 rorl $9,%esi
440 movl %ebp,%ecx
441 movl 24(%esp),%edi
442 xorl %ebp,%esi
443 movl %ebp,20(%esp)
444 xorl %edi,%ebp
445 rorl $11,%esi
446 andl %ebp,%eax
447 leal 3921009573(%ebx,%edx,1),%edx
448 xorl %ecx,%esi
449 xorl %edi,%eax
450 rorl $2,%esi
451 addl %edx,%eax
452 addl (%esp),%edx
453 addl %esi,%eax
454 movl %edx,%ecx
455 movl 4(%esp),%esi
456 rorl $14,%edx
457 movl 8(%esp),%edi
458 xorl %ecx,%edx
459 movl 48(%esp),%ebx
460 xorl %edi,%esi
461 rorl $5,%edx
462 andl %ecx,%esi
463 movl %ecx,(%esp)
464 xorl %ecx,%edx
465 addl 12(%esp),%ebx
466 xorl %esi,%edi
467 rorl $6,%edx
468 movl %eax,%ecx
469 addl %edi,%ebx
470 rorl $9,%ecx
471 movl %eax,%esi
472 movl 20(%esp),%edi
473 xorl %eax,%ecx
474 movl %eax,16(%esp)
475 xorl %edi,%eax
476 rorl $11,%ecx
477 andl %eax,%ebp
478 leal 961987163(%ebx,%edx,1),%edx
479 xorl %esi,%ecx
480 xorl %edi,%ebp
481 rorl $2,%ecx
482 addl %edx,%ebp
483 addl 28(%esp),%edx
484 addl %ecx,%ebp
485 movl %edx,%esi
486 movl (%esp),%ecx
487 rorl $14,%edx
488 movl 4(%esp),%edi
489 xorl %esi,%edx
490 movl 52(%esp),%ebx
491 xorl %edi,%ecx
492 rorl $5,%edx
493 andl %esi,%ecx
494 movl %esi,28(%esp)
495 xorl %esi,%edx
496 addl 8(%esp),%ebx
497 xorl %ecx,%edi
498 rorl $6,%edx
499 movl %ebp,%esi
500 addl %edi,%ebx
501 rorl $9,%esi
502 movl %ebp,%ecx
503 movl 16(%esp),%edi
504 xorl %ebp,%esi
505 movl %ebp,12(%esp)
506 xorl %edi,%ebp
507 rorl $11,%esi
508 andl %ebp,%eax
509 leal 1508970993(%ebx,%edx,1),%edx
510 xorl %ecx,%esi
511 xorl %edi,%eax
512 rorl $2,%esi
513 addl %edx,%eax
514 addl 24(%esp),%edx
515 addl %esi,%eax
516 movl %edx,%ecx
517 movl 28(%esp),%esi
518 rorl $14,%edx
519 movl (%esp),%edi
520 xorl %ecx,%edx
521 movl 56(%esp),%ebx
522 xorl %edi,%esi
523 rorl $5,%edx
524 andl %ecx,%esi
525 movl %ecx,24(%esp)
526 xorl %ecx,%edx
527 addl 4(%esp),%ebx
528 xorl %esi,%edi
529 rorl $6,%edx
530 movl %eax,%ecx
531 addl %edi,%ebx
532 rorl $9,%ecx
533 movl %eax,%esi
534 movl 12(%esp),%edi
535 xorl %eax,%ecx
536 movl %eax,8(%esp)
537 xorl %edi,%eax
538 rorl $11,%ecx
539 andl %eax,%ebp
540 leal 2453635748(%ebx,%edx,1),%edx
541 xorl %esi,%ecx
542 xorl %edi,%ebp
543 rorl $2,%ecx
544 addl %edx,%ebp
545 addl 20(%esp),%edx
546 addl %ecx,%ebp
547 movl %edx,%esi
548 movl 24(%esp),%ecx
549 rorl $14,%edx
550 movl 28(%esp),%edi
551 xorl %esi,%edx
552 movl 60(%esp),%ebx
553 xorl %edi,%ecx
554 rorl $5,%edx
555 andl %esi,%ecx
556 movl %esi,20(%esp)
557 xorl %esi,%edx
558 addl (%esp),%ebx
559 xorl %ecx,%edi
560 rorl $6,%edx
561 movl %ebp,%esi
562 addl %edi,%ebx
563 rorl $9,%esi
564 movl %ebp,%ecx
565 movl 8(%esp),%edi
566 xorl %ebp,%esi
567 movl %ebp,4(%esp)
568 xorl %edi,%ebp
569 rorl $11,%esi
570 andl %ebp,%eax
571 leal 2870763221(%ebx,%edx,1),%edx
572 xorl %ecx,%esi
573 xorl %edi,%eax
574 rorl $2,%esi
575 addl %edx,%eax
576 addl 16(%esp),%edx
577 addl %esi,%eax
578 movl %edx,%ecx
579 movl 20(%esp),%esi
580 rorl $14,%edx
581 movl 24(%esp),%edi
582 xorl %ecx,%edx
583 movl 64(%esp),%ebx
584 xorl %edi,%esi
585 rorl $5,%edx
586 andl %ecx,%esi
587 movl %ecx,16(%esp)
588 xorl %ecx,%edx
589 addl 28(%esp),%ebx
590 xorl %esi,%edi
591 rorl $6,%edx
592 movl %eax,%ecx
593 addl %edi,%ebx
594 rorl $9,%ecx
595 movl %eax,%esi
596 movl 4(%esp),%edi
597 xorl %eax,%ecx
598 movl %eax,(%esp)
599 xorl %edi,%eax
600 rorl $11,%ecx
601 andl %eax,%ebp
602 leal 3624381080(%ebx,%edx,1),%edx
603 xorl %esi,%ecx
604 xorl %edi,%ebp
605 rorl $2,%ecx
606 addl %edx,%ebp
607 addl 12(%esp),%edx
608 addl %ecx,%ebp
609 movl %edx,%esi
610 movl 16(%esp),%ecx
611 rorl $14,%edx
612 movl 20(%esp),%edi
613 xorl %esi,%edx
614 movl 68(%esp),%ebx
615 xorl %edi,%ecx
616 rorl $5,%edx
617 andl %esi,%ecx
618 movl %esi,12(%esp)
619 xorl %esi,%edx
620 addl 24(%esp),%ebx
621 xorl %ecx,%edi
622 rorl $6,%edx
623 movl %ebp,%esi
624 addl %edi,%ebx
625 rorl $9,%esi
626 movl %ebp,%ecx
627 movl (%esp),%edi
628 xorl %ebp,%esi
629 movl %ebp,28(%esp)
630 xorl %edi,%ebp
631 rorl $11,%esi
632 andl %ebp,%eax
633 leal 310598401(%ebx,%edx,1),%edx
634 xorl %ecx,%esi
635 xorl %edi,%eax
636 rorl $2,%esi
637 addl %edx,%eax
638 addl 8(%esp),%edx
639 addl %esi,%eax
640 movl %edx,%ecx
641 movl 12(%esp),%esi
642 rorl $14,%edx
643 movl 16(%esp),%edi
644 xorl %ecx,%edx
645 movl 72(%esp),%ebx
646 xorl %edi,%esi
647 rorl $5,%edx
648 andl %ecx,%esi
649 movl %ecx,8(%esp)
650 xorl %ecx,%edx
651 addl 20(%esp),%ebx
652 xorl %esi,%edi
653 rorl $6,%edx
654 movl %eax,%ecx
655 addl %edi,%ebx
656 rorl $9,%ecx
657 movl %eax,%esi
658 movl 28(%esp),%edi
659 xorl %eax,%ecx
660 movl %eax,24(%esp)
661 xorl %edi,%eax
662 rorl $11,%ecx
663 andl %eax,%ebp
664 leal 607225278(%ebx,%edx,1),%edx
665 xorl %esi,%ecx
666 xorl %edi,%ebp
667 rorl $2,%ecx
668 addl %edx,%ebp
669 addl 4(%esp),%edx
670 addl %ecx,%ebp
671 movl %edx,%esi
672 movl 8(%esp),%ecx
673 rorl $14,%edx
674 movl 12(%esp),%edi
675 xorl %esi,%edx
676 movl 76(%esp),%ebx
677 xorl %edi,%ecx
678 rorl $5,%edx
679 andl %esi,%ecx
680 movl %esi,4(%esp)
681 xorl %esi,%edx
682 addl 16(%esp),%ebx
683 xorl %ecx,%edi
684 rorl $6,%edx
685 movl %ebp,%esi
686 addl %edi,%ebx
687 rorl $9,%esi
688 movl %ebp,%ecx
689 movl 24(%esp),%edi
690 xorl %ebp,%esi
691 movl %ebp,20(%esp)
692 xorl %edi,%ebp
693 rorl $11,%esi
694 andl %ebp,%eax
695 leal 1426881987(%ebx,%edx,1),%edx
696 xorl %ecx,%esi
697 xorl %edi,%eax
698 rorl $2,%esi
699 addl %edx,%eax
700 addl (%esp),%edx
701 addl %esi,%eax
702 movl %edx,%ecx
703 movl 4(%esp),%esi
704 rorl $14,%edx
705 movl 8(%esp),%edi
706 xorl %ecx,%edx
707 movl 80(%esp),%ebx
708 xorl %edi,%esi
709 rorl $5,%edx
710 andl %ecx,%esi
711 movl %ecx,(%esp)
712 xorl %ecx,%edx
713 addl 12(%esp),%ebx
714 xorl %esi,%edi
715 rorl $6,%edx
716 movl %eax,%ecx
717 addl %edi,%ebx
718 rorl $9,%ecx
719 movl %eax,%esi
720 movl 20(%esp),%edi
721 xorl %eax,%ecx
722 movl %eax,16(%esp)
723 xorl %edi,%eax
724 rorl $11,%ecx
725 andl %eax,%ebp
726 leal 1925078388(%ebx,%edx,1),%edx
727 xorl %esi,%ecx
728 xorl %edi,%ebp
729 rorl $2,%ecx
730 addl %edx,%ebp
731 addl 28(%esp),%edx
732 addl %ecx,%ebp
733 movl %edx,%esi
734 movl (%esp),%ecx
735 rorl $14,%edx
736 movl 4(%esp),%edi
737 xorl %esi,%edx
738 movl 84(%esp),%ebx
739 xorl %edi,%ecx
740 rorl $5,%edx
741 andl %esi,%ecx
742 movl %esi,28(%esp)
743 xorl %esi,%edx
744 addl 8(%esp),%ebx
745 xorl %ecx,%edi
746 rorl $6,%edx
747 movl %ebp,%esi
748 addl %edi,%ebx
749 rorl $9,%esi
750 movl %ebp,%ecx
751 movl 16(%esp),%edi
752 xorl %ebp,%esi
753 movl %ebp,12(%esp)
754 xorl %edi,%ebp
755 rorl $11,%esi
756 andl %ebp,%eax
757 leal 2162078206(%ebx,%edx,1),%edx
758 xorl %ecx,%esi
759 xorl %edi,%eax
760 rorl $2,%esi
761 addl %edx,%eax
762 addl 24(%esp),%edx
763 addl %esi,%eax
764 movl %edx,%ecx
765 movl 28(%esp),%esi
766 rorl $14,%edx
767 movl (%esp),%edi
768 xorl %ecx,%edx
769 movl 88(%esp),%ebx
770 xorl %edi,%esi
771 rorl $5,%edx
772 andl %ecx,%esi
773 movl %ecx,24(%esp)
774 xorl %ecx,%edx
775 addl 4(%esp),%ebx
776 xorl %esi,%edi
777 rorl $6,%edx
778 movl %eax,%ecx
779 addl %edi,%ebx
780 rorl $9,%ecx
781 movl %eax,%esi
782 movl 12(%esp),%edi
783 xorl %eax,%ecx
784 movl %eax,8(%esp)
785 xorl %edi,%eax
786 rorl $11,%ecx
787 andl %eax,%ebp
788 leal 2614888103(%ebx,%edx,1),%edx
789 xorl %esi,%ecx
790 xorl %edi,%ebp
791 rorl $2,%ecx
792 addl %edx,%ebp
793 addl 20(%esp),%edx
794 addl %ecx,%ebp
795 movl %edx,%esi
796 movl 24(%esp),%ecx
797 rorl $14,%edx
798 movl 28(%esp),%edi
799 xorl %esi,%edx
800 movl 92(%esp),%ebx
801 xorl %edi,%ecx
802 rorl $5,%edx
803 andl %esi,%ecx
804 movl %esi,20(%esp)
805 xorl %esi,%edx
806 addl (%esp),%ebx
807 xorl %ecx,%edi
808 rorl $6,%edx
809 movl %ebp,%esi
810 addl %edi,%ebx
811 rorl $9,%esi
812 movl %ebp,%ecx
813 movl 8(%esp),%edi
814 xorl %ebp,%esi
815 movl %ebp,4(%esp)
816 xorl %edi,%ebp
817 rorl $11,%esi
818 andl %ebp,%eax
819 leal 3248222580(%ebx,%edx,1),%edx
820 xorl %ecx,%esi
821 xorl %edi,%eax
822 movl 36(%esp),%ecx
823 rorl $2,%esi
824 addl %edx,%eax
825 addl 16(%esp),%edx
826 addl %esi,%eax
827 movl 88(%esp),%esi
828 movl %ecx,%ebx
829 rorl $11,%ecx
830 movl %esi,%edi
831 rorl $2,%esi
832 xorl %ebx,%ecx
833 shrl $3,%ebx
834 rorl $7,%ecx
835 xorl %edi,%esi
836 xorl %ecx,%ebx
837 rorl $17,%esi
838 addl 32(%esp),%ebx
839 shrl $10,%edi
840 addl 68(%esp),%ebx
841 movl %edx,%ecx
842 xorl %esi,%edi
843 movl 20(%esp),%esi
844 rorl $14,%edx
845 addl %edi,%ebx
846 movl 24(%esp),%edi
847 xorl %ecx,%edx
848 movl %ebx,32(%esp)
849 xorl %edi,%esi
850 rorl $5,%edx
851 andl %ecx,%esi
852 movl %ecx,16(%esp)
853 xorl %ecx,%edx
854 addl 28(%esp),%ebx
855 xorl %esi,%edi
856 rorl $6,%edx
857 movl %eax,%ecx
858 addl %edi,%ebx
859 rorl $9,%ecx
860 movl %eax,%esi
861 movl 4(%esp),%edi
862 xorl %eax,%ecx
863 movl %eax,(%esp)
864 xorl %edi,%eax
865 rorl $11,%ecx
866 andl %eax,%ebp
867 leal 3835390401(%ebx,%edx,1),%edx
868 xorl %esi,%ecx
869 xorl %edi,%ebp
870 movl 40(%esp),%esi
871 rorl $2,%ecx
872 addl %edx,%ebp
873 addl 12(%esp),%edx
874 addl %ecx,%ebp
875 movl 92(%esp),%ecx
876 movl %esi,%ebx
877 rorl $11,%esi
878 movl %ecx,%edi
879 rorl $2,%ecx
880 xorl %ebx,%esi
881 shrl $3,%ebx
882 rorl $7,%esi
883 xorl %edi,%ecx
884 xorl %esi,%ebx
885 rorl $17,%ecx
886 addl 36(%esp),%ebx
887 shrl $10,%edi
888 addl 72(%esp),%ebx
889 movl %edx,%esi
890 xorl %ecx,%edi
891 movl 16(%esp),%ecx
892 rorl $14,%edx
893 addl %edi,%ebx
894 movl 20(%esp),%edi
895 xorl %esi,%edx
896 movl %ebx,36(%esp)
897 xorl %edi,%ecx
898 rorl $5,%edx
899 andl %esi,%ecx
900 movl %esi,12(%esp)
901 xorl %esi,%edx
902 addl 24(%esp),%ebx
903 xorl %ecx,%edi
904 rorl $6,%edx
905 movl %ebp,%esi
906 addl %edi,%ebx
907 rorl $9,%esi
908 movl %ebp,%ecx
909 movl (%esp),%edi
910 xorl %ebp,%esi
911 movl %ebp,28(%esp)
912 xorl %edi,%ebp
913 rorl $11,%esi
914 andl %ebp,%eax
915 leal 4022224774(%ebx,%edx,1),%edx
916 xorl %ecx,%esi
917 xorl %edi,%eax
918 movl 44(%esp),%ecx
919 rorl $2,%esi
920 addl %edx,%eax
921 addl 8(%esp),%edx
922 addl %esi,%eax
923 movl 32(%esp),%esi
924 movl %ecx,%ebx
925 rorl $11,%ecx
926 movl %esi,%edi
927 rorl $2,%esi
928 xorl %ebx,%ecx
929 shrl $3,%ebx
930 rorl $7,%ecx
931 xorl %edi,%esi
932 xorl %ecx,%ebx
933 rorl $17,%esi
934 addl 40(%esp),%ebx
935 shrl $10,%edi
936 addl 76(%esp),%ebx
937 movl %edx,%ecx
938 xorl %esi,%edi
939 movl 12(%esp),%esi
940 rorl $14,%edx
941 addl %edi,%ebx
942 movl 16(%esp),%edi
943 xorl %ecx,%edx
944 movl %ebx,40(%esp)
945 xorl %edi,%esi
946 rorl $5,%edx
947 andl %ecx,%esi
948 movl %ecx,8(%esp)
949 xorl %ecx,%edx
950 addl 20(%esp),%ebx
951 xorl %esi,%edi
952 rorl $6,%edx
953 movl %eax,%ecx
954 addl %edi,%ebx
955 rorl $9,%ecx
956 movl %eax,%esi
957 movl 28(%esp),%edi
958 xorl %eax,%ecx
959 movl %eax,24(%esp)
960 xorl %edi,%eax
961 rorl $11,%ecx
962 andl %eax,%ebp
963 leal 264347078(%ebx,%edx,1),%edx
964 xorl %esi,%ecx
965 xorl %edi,%ebp
966 movl 48(%esp),%esi
967 rorl $2,%ecx
968 addl %edx,%ebp
969 addl 4(%esp),%edx
970 addl %ecx,%ebp
971 movl 36(%esp),%ecx
972 movl %esi,%ebx
973 rorl $11,%esi
974 movl %ecx,%edi
975 rorl $2,%ecx
976 xorl %ebx,%esi
977 shrl $3,%ebx
978 rorl $7,%esi
979 xorl %edi,%ecx
980 xorl %esi,%ebx
981 rorl $17,%ecx
982 addl 44(%esp),%ebx
983 shrl $10,%edi
984 addl 80(%esp),%ebx
985 movl %edx,%esi
986 xorl %ecx,%edi
987 movl 8(%esp),%ecx
988 rorl $14,%edx
989 addl %edi,%ebx
990 movl 12(%esp),%edi
991 xorl %esi,%edx
992 movl %ebx,44(%esp)
993 xorl %edi,%ecx
994 rorl $5,%edx
995 andl %esi,%ecx
996 movl %esi,4(%esp)
997 xorl %esi,%edx
998 addl 16(%esp),%ebx
999 xorl %ecx,%edi
1000 rorl $6,%edx
1001 movl %ebp,%esi
1002 addl %edi,%ebx
1003 rorl $9,%esi
1004 movl %ebp,%ecx
1005 movl 24(%esp),%edi
1006 xorl %ebp,%esi
1007 movl %ebp,20(%esp)
1008 xorl %edi,%ebp
1009 rorl $11,%esi
1010 andl %ebp,%eax
1011 leal 604807628(%ebx,%edx,1),%edx
1012 xorl %ecx,%esi
1013 xorl %edi,%eax
1014 movl 52(%esp),%ecx
1015 rorl $2,%esi
1016 addl %edx,%eax
1017 addl (%esp),%edx
1018 addl %esi,%eax
1019 movl 40(%esp),%esi
1020 movl %ecx,%ebx
1021 rorl $11,%ecx
1022 movl %esi,%edi
1023 rorl $2,%esi
1024 xorl %ebx,%ecx
1025 shrl $3,%ebx
1026 rorl $7,%ecx
1027 xorl %edi,%esi
1028 xorl %ecx,%ebx
1029 rorl $17,%esi
1030 addl 48(%esp),%ebx
1031 shrl $10,%edi
1032 addl 84(%esp),%ebx
1033 movl %edx,%ecx
1034 xorl %esi,%edi
1035 movl 4(%esp),%esi
1036 rorl $14,%edx
1037 addl %edi,%ebx
1038 movl 8(%esp),%edi
1039 xorl %ecx,%edx
1040 movl %ebx,48(%esp)
1041 xorl %edi,%esi
1042 rorl $5,%edx
1043 andl %ecx,%esi
1044 movl %ecx,(%esp)
1045 xorl %ecx,%edx
1046 addl 12(%esp),%ebx
1047 xorl %esi,%edi
1048 rorl $6,%edx
1049 movl %eax,%ecx
1050 addl %edi,%ebx
1051 rorl $9,%ecx
1052 movl %eax,%esi
1053 movl 20(%esp),%edi
1054 xorl %eax,%ecx
1055 movl %eax,16(%esp)
1056 xorl %edi,%eax
1057 rorl $11,%ecx
1058 andl %eax,%ebp
1059 leal 770255983(%ebx,%edx,1),%edx
1060 xorl %esi,%ecx
1061 xorl %edi,%ebp
1062 movl 56(%esp),%esi
1063 rorl $2,%ecx
1064 addl %edx,%ebp
1065 addl 28(%esp),%edx
1066 addl %ecx,%ebp
1067 movl 44(%esp),%ecx
1068 movl %esi,%ebx
1069 rorl $11,%esi
1070 movl %ecx,%edi
1071 rorl $2,%ecx
1072 xorl %ebx,%esi
1073 shrl $3,%ebx
1074 rorl $7,%esi
1075 xorl %edi,%ecx
1076 xorl %esi,%ebx
1077 rorl $17,%ecx
1078 addl 52(%esp),%ebx
1079 shrl $10,%edi
1080 addl 88(%esp),%ebx
1081 movl %edx,%esi
1082 xorl %ecx,%edi
1083 movl (%esp),%ecx
1084 rorl $14,%edx
1085 addl %edi,%ebx
1086 movl 4(%esp),%edi
1087 xorl %esi,%edx
1088 movl %ebx,52(%esp)
1089 xorl %edi,%ecx
1090 rorl $5,%edx
1091 andl %esi,%ecx
1092 movl %esi,28(%esp)
1093 xorl %esi,%edx
1094 addl 8(%esp),%ebx
1095 xorl %ecx,%edi
1096 rorl $6,%edx
1097 movl %ebp,%esi
1098 addl %edi,%ebx
1099 rorl $9,%esi
1100 movl %ebp,%ecx
1101 movl 16(%esp),%edi
1102 xorl %ebp,%esi
1103 movl %ebp,12(%esp)
1104 xorl %edi,%ebp
1105 rorl $11,%esi
1106 andl %ebp,%eax
1107 leal 1249150122(%ebx,%edx,1),%edx
1108 xorl %ecx,%esi
1109 xorl %edi,%eax
1110 movl 60(%esp),%ecx
1111 rorl $2,%esi
1112 addl %edx,%eax
1113 addl 24(%esp),%edx
1114 addl %esi,%eax
1115 movl 48(%esp),%esi
1116 movl %ecx,%ebx
1117 rorl $11,%ecx
1118 movl %esi,%edi
1119 rorl $2,%esi
1120 xorl %ebx,%ecx
1121 shrl $3,%ebx
1122 rorl $7,%ecx
1123 xorl %edi,%esi
1124 xorl %ecx,%ebx
1125 rorl $17,%esi
1126 addl 56(%esp),%ebx
1127 shrl $10,%edi
1128 addl 92(%esp),%ebx
1129 movl %edx,%ecx
1130 xorl %esi,%edi
1131 movl 28(%esp),%esi
1132 rorl $14,%edx
1133 addl %edi,%ebx
1134 movl (%esp),%edi
1135 xorl %ecx,%edx
1136 movl %ebx,56(%esp)
1137 xorl %edi,%esi
1138 rorl $5,%edx
1139 andl %ecx,%esi
1140 movl %ecx,24(%esp)
1141 xorl %ecx,%edx
1142 addl 4(%esp),%ebx
1143 xorl %esi,%edi
1144 rorl $6,%edx
1145 movl %eax,%ecx
1146 addl %edi,%ebx
1147 rorl $9,%ecx
1148 movl %eax,%esi
1149 movl 12(%esp),%edi
1150 xorl %eax,%ecx
1151 movl %eax,8(%esp)
1152 xorl %edi,%eax
1153 rorl $11,%ecx
1154 andl %eax,%ebp
1155 leal 1555081692(%ebx,%edx,1),%edx
1156 xorl %esi,%ecx
1157 xorl %edi,%ebp
1158 movl 64(%esp),%esi
1159 rorl $2,%ecx
1160 addl %edx,%ebp
1161 addl 20(%esp),%edx
1162 addl %ecx,%ebp
1163 movl 52(%esp),%ecx
1164 movl %esi,%ebx
1165 rorl $11,%esi
1166 movl %ecx,%edi
1167 rorl $2,%ecx
1168 xorl %ebx,%esi
1169 shrl $3,%ebx
1170 rorl $7,%esi
1171 xorl %edi,%ecx
1172 xorl %esi,%ebx
1173 rorl $17,%ecx
1174 addl 60(%esp),%ebx
1175 shrl $10,%edi
1176 addl 32(%esp),%ebx
1177 movl %edx,%esi
1178 xorl %ecx,%edi
1179 movl 24(%esp),%ecx
1180 rorl $14,%edx
1181 addl %edi,%ebx
1182 movl 28(%esp),%edi
1183 xorl %esi,%edx
1184 movl %ebx,60(%esp)
1185 xorl %edi,%ecx
1186 rorl $5,%edx
1187 andl %esi,%ecx
1188 movl %esi,20(%esp)
1189 xorl %esi,%edx
1190 addl (%esp),%ebx
1191 xorl %ecx,%edi
1192 rorl $6,%edx
1193 movl %ebp,%esi
1194 addl %edi,%ebx
1195 rorl $9,%esi
1196 movl %ebp,%ecx
1197 movl 8(%esp),%edi
1198 xorl %ebp,%esi
1199 movl %ebp,4(%esp)
1200 xorl %edi,%ebp
1201 rorl $11,%esi
1202 andl %ebp,%eax
1203 leal 1996064986(%ebx,%edx,1),%edx
1204 xorl %ecx,%esi
1205 xorl %edi,%eax
1206 movl 68(%esp),%ecx
1207 rorl $2,%esi
1208 addl %edx,%eax
1209 addl 16(%esp),%edx
1210 addl %esi,%eax
1211 movl 56(%esp),%esi
1212 movl %ecx,%ebx
1213 rorl $11,%ecx
1214 movl %esi,%edi
1215 rorl $2,%esi
1216 xorl %ebx,%ecx
1217 shrl $3,%ebx
1218 rorl $7,%ecx
1219 xorl %edi,%esi
1220 xorl %ecx,%ebx
1221 rorl $17,%esi
1222 addl 64(%esp),%ebx
1223 shrl $10,%edi
1224 addl 36(%esp),%ebx
1225 movl %edx,%ecx
1226 xorl %esi,%edi
1227 movl 20(%esp),%esi
1228 rorl $14,%edx
1229 addl %edi,%ebx
1230 movl 24(%esp),%edi
1231 xorl %ecx,%edx
1232 movl %ebx,64(%esp)
1233 xorl %edi,%esi
1234 rorl $5,%edx
1235 andl %ecx,%esi
1236 movl %ecx,16(%esp)
1237 xorl %ecx,%edx
1238 addl 28(%esp),%ebx
1239 xorl %esi,%edi
1240 rorl $6,%edx
1241 movl %eax,%ecx
1242 addl %edi,%ebx
1243 rorl $9,%ecx
1244 movl %eax,%esi
1245 movl 4(%esp),%edi
1246 xorl %eax,%ecx
1247 movl %eax,(%esp)
1248 xorl %edi,%eax
1249 rorl $11,%ecx
1250 andl %eax,%ebp
1251 leal 2554220882(%ebx,%edx,1),%edx
1252 xorl %esi,%ecx
1253 xorl %edi,%ebp
1254 movl 72(%esp),%esi
1255 rorl $2,%ecx
1256 addl %edx,%ebp
1257 addl 12(%esp),%edx
1258 addl %ecx,%ebp
1259 movl 60(%esp),%ecx
1260 movl %esi,%ebx
1261 rorl $11,%esi
1262 movl %ecx,%edi
1263 rorl $2,%ecx
1264 xorl %ebx,%esi
1265 shrl $3,%ebx
1266 rorl $7,%esi
1267 xorl %edi,%ecx
1268 xorl %esi,%ebx
1269 rorl $17,%ecx
1270 addl 68(%esp),%ebx
1271 shrl $10,%edi
1272 addl 40(%esp),%ebx
1273 movl %edx,%esi
1274 xorl %ecx,%edi
1275 movl 16(%esp),%ecx
1276 rorl $14,%edx
1277 addl %edi,%ebx
1278 movl 20(%esp),%edi
1279 xorl %esi,%edx
1280 movl %ebx,68(%esp)
1281 xorl %edi,%ecx
1282 rorl $5,%edx
1283 andl %esi,%ecx
1284 movl %esi,12(%esp)
1285 xorl %esi,%edx
1286 addl 24(%esp),%ebx
1287 xorl %ecx,%edi
1288 rorl $6,%edx
1289 movl %ebp,%esi
1290 addl %edi,%ebx
1291 rorl $9,%esi
1292 movl %ebp,%ecx
1293 movl (%esp),%edi
1294 xorl %ebp,%esi
1295 movl %ebp,28(%esp)
1296 xorl %edi,%ebp
1297 rorl $11,%esi
1298 andl %ebp,%eax
1299 leal 2821834349(%ebx,%edx,1),%edx
1300 xorl %ecx,%esi
1301 xorl %edi,%eax
1302 movl 76(%esp),%ecx
1303 rorl $2,%esi
1304 addl %edx,%eax
1305 addl 8(%esp),%edx
1306 addl %esi,%eax
1307 movl 64(%esp),%esi
1308 movl %ecx,%ebx
1309 rorl $11,%ecx
1310 movl %esi,%edi
1311 rorl $2,%esi
1312 xorl %ebx,%ecx
1313 shrl $3,%ebx
1314 rorl $7,%ecx
1315 xorl %edi,%esi
1316 xorl %ecx,%ebx
1317 rorl $17,%esi
1318 addl 72(%esp),%ebx
1319 shrl $10,%edi
1320 addl 44(%esp),%ebx
1321 movl %edx,%ecx
1322 xorl %esi,%edi
1323 movl 12(%esp),%esi
1324 rorl $14,%edx
1325 addl %edi,%ebx
1326 movl 16(%esp),%edi
1327 xorl %ecx,%edx
1328 movl %ebx,72(%esp)
1329 xorl %edi,%esi
1330 rorl $5,%edx
1331 andl %ecx,%esi
1332 movl %ecx,8(%esp)
1333 xorl %ecx,%edx
1334 addl 20(%esp),%ebx
1335 xorl %esi,%edi
1336 rorl $6,%edx
1337 movl %eax,%ecx
1338 addl %edi,%ebx
1339 rorl $9,%ecx
1340 movl %eax,%esi
1341 movl 28(%esp),%edi
1342 xorl %eax,%ecx
1343 movl %eax,24(%esp)
1344 xorl %edi,%eax
1345 rorl $11,%ecx
1346 andl %eax,%ebp
1347 leal 2952996808(%ebx,%edx,1),%edx
1348 xorl %esi,%ecx
1349 xorl %edi,%ebp
1350 movl 80(%esp),%esi
1351 rorl $2,%ecx
1352 addl %edx,%ebp
1353 addl 4(%esp),%edx
1354 addl %ecx,%ebp
1355 movl 68(%esp),%ecx
1356 movl %esi,%ebx
1357 rorl $11,%esi
1358 movl %ecx,%edi
1359 rorl $2,%ecx
1360 xorl %ebx,%esi
1361 shrl $3,%ebx
1362 rorl $7,%esi
1363 xorl %edi,%ecx
1364 xorl %esi,%ebx
1365 rorl $17,%ecx
1366 addl 76(%esp),%ebx
1367 shrl $10,%edi
1368 addl 48(%esp),%ebx
1369 movl %edx,%esi
1370 xorl %ecx,%edi
1371 movl 8(%esp),%ecx
1372 rorl $14,%edx
1373 addl %edi,%ebx
1374 movl 12(%esp),%edi
1375 xorl %esi,%edx
1376 movl %ebx,76(%esp)
1377 xorl %edi,%ecx
1378 rorl $5,%edx
1379 andl %esi,%ecx
1380 movl %esi,4(%esp)
1381 xorl %esi,%edx
1382 addl 16(%esp),%ebx
1383 xorl %ecx,%edi
1384 rorl $6,%edx
1385 movl %ebp,%esi
1386 addl %edi,%ebx
1387 rorl $9,%esi
1388 movl %ebp,%ecx
1389 movl 24(%esp),%edi
1390 xorl %ebp,%esi
1391 movl %ebp,20(%esp)
1392 xorl %edi,%ebp
1393 rorl $11,%esi
1394 andl %ebp,%eax
1395 leal 3210313671(%ebx,%edx,1),%edx
1396 xorl %ecx,%esi
1397 xorl %edi,%eax
1398 movl 84(%esp),%ecx
1399 rorl $2,%esi
1400 addl %edx,%eax
1401 addl (%esp),%edx
1402 addl %esi,%eax
1403 movl 72(%esp),%esi
1404 movl %ecx,%ebx
1405 rorl $11,%ecx
1406 movl %esi,%edi
1407 rorl $2,%esi
1408 xorl %ebx,%ecx
1409 shrl $3,%ebx
1410 rorl $7,%ecx
1411 xorl %edi,%esi
1412 xorl %ecx,%ebx
1413 rorl $17,%esi
1414 addl 80(%esp),%ebx
1415 shrl $10,%edi
1416 addl 52(%esp),%ebx
1417 movl %edx,%ecx
1418 xorl %esi,%edi
1419 movl 4(%esp),%esi
1420 rorl $14,%edx
1421 addl %edi,%ebx
1422 movl 8(%esp),%edi
1423 xorl %ecx,%edx
1424 movl %ebx,80(%esp)
1425 xorl %edi,%esi
1426 rorl $5,%edx
1427 andl %ecx,%esi
1428 movl %ecx,(%esp)
1429 xorl %ecx,%edx
1430 addl 12(%esp),%ebx
1431 xorl %esi,%edi
1432 rorl $6,%edx
1433 movl %eax,%ecx
1434 addl %edi,%ebx
1435 rorl $9,%ecx
1436 movl %eax,%esi
1437 movl 20(%esp),%edi
1438 xorl %eax,%ecx
1439 movl %eax,16(%esp)
1440 xorl %edi,%eax
1441 rorl $11,%ecx
1442 andl %eax,%ebp
1443 leal 3336571891(%ebx,%edx,1),%edx
1444 xorl %esi,%ecx
1445 xorl %edi,%ebp
1446 movl 88(%esp),%esi
1447 rorl $2,%ecx
1448 addl %edx,%ebp
1449 addl 28(%esp),%edx
1450 addl %ecx,%ebp
1451 movl 76(%esp),%ecx
1452 movl %esi,%ebx
1453 rorl $11,%esi
1454 movl %ecx,%edi
1455 rorl $2,%ecx
1456 xorl %ebx,%esi
1457 shrl $3,%ebx
1458 rorl $7,%esi
1459 xorl %edi,%ecx
1460 xorl %esi,%ebx
1461 rorl $17,%ecx
1462 addl 84(%esp),%ebx
1463 shrl $10,%edi
1464 addl 56(%esp),%ebx
1465 movl %edx,%esi
1466 xorl %ecx,%edi
1467 movl (%esp),%ecx
1468 rorl $14,%edx
1469 addl %edi,%ebx
1470 movl 4(%esp),%edi
1471 xorl %esi,%edx
1472 movl %ebx,84(%esp)
1473 xorl %edi,%ecx
1474 rorl $5,%edx
1475 andl %esi,%ecx
1476 movl %esi,28(%esp)
1477 xorl %esi,%edx
1478 addl 8(%esp),%ebx
1479 xorl %ecx,%edi
1480 rorl $6,%edx
1481 movl %ebp,%esi
1482 addl %edi,%ebx
1483 rorl $9,%esi
1484 movl %ebp,%ecx
1485 movl 16(%esp),%edi
1486 xorl %ebp,%esi
1487 movl %ebp,12(%esp)
1488 xorl %edi,%ebp
1489 rorl $11,%esi
1490 andl %ebp,%eax
1491 leal 3584528711(%ebx,%edx,1),%edx
1492 xorl %ecx,%esi
1493 xorl %edi,%eax
1494 movl 92(%esp),%ecx
1495 rorl $2,%esi
1496 addl %edx,%eax
1497 addl 24(%esp),%edx
1498 addl %esi,%eax
1499 movl 80(%esp),%esi
1500 movl %ecx,%ebx
1501 rorl $11,%ecx
1502 movl %esi,%edi
1503 rorl $2,%esi
1504 xorl %ebx,%ecx
1505 shrl $3,%ebx
1506 rorl $7,%ecx
1507 xorl %edi,%esi
1508 xorl %ecx,%ebx
1509 rorl $17,%esi
1510 addl 88(%esp),%ebx
1511 shrl $10,%edi
1512 addl 60(%esp),%ebx
1513 movl %edx,%ecx
1514 xorl %esi,%edi
1515 movl 28(%esp),%esi
1516 rorl $14,%edx
1517 addl %edi,%ebx
1518 movl (%esp),%edi
1519 xorl %ecx,%edx
1520 movl %ebx,88(%esp)
1521 xorl %edi,%esi
1522 rorl $5,%edx
1523 andl %ecx,%esi
1524 movl %ecx,24(%esp)
1525 xorl %ecx,%edx
1526 addl 4(%esp),%ebx
1527 xorl %esi,%edi
1528 rorl $6,%edx
1529 movl %eax,%ecx
1530 addl %edi,%ebx
1531 rorl $9,%ecx
1532 movl %eax,%esi
1533 movl 12(%esp),%edi
1534 xorl %eax,%ecx
1535 movl %eax,8(%esp)
1536 xorl %edi,%eax
1537 rorl $11,%ecx
1538 andl %eax,%ebp
1539 leal 113926993(%ebx,%edx,1),%edx
1540 xorl %esi,%ecx
1541 xorl %edi,%ebp
1542 movl 32(%esp),%esi
1543 rorl $2,%ecx
1544 addl %edx,%ebp
1545 addl 20(%esp),%edx
1546 addl %ecx,%ebp
1547 movl 84(%esp),%ecx
1548 movl %esi,%ebx
1549 rorl $11,%esi
1550 movl %ecx,%edi
1551 rorl $2,%ecx
1552 xorl %ebx,%esi
1553 shrl $3,%ebx
1554 rorl $7,%esi
1555 xorl %edi,%ecx
1556 xorl %esi,%ebx
1557 rorl $17,%ecx
1558 addl 92(%esp),%ebx
1559 shrl $10,%edi
1560 addl 64(%esp),%ebx
1561 movl %edx,%esi
1562 xorl %ecx,%edi
1563 movl 24(%esp),%ecx
1564 rorl $14,%edx
1565 addl %edi,%ebx
1566 movl 28(%esp),%edi
1567 xorl %esi,%edx
1568 movl %ebx,92(%esp)
1569 xorl %edi,%ecx
1570 rorl $5,%edx
1571 andl %esi,%ecx
1572 movl %esi,20(%esp)
1573 xorl %esi,%edx
1574 addl (%esp),%ebx
1575 xorl %ecx,%edi
1576 rorl $6,%edx
1577 movl %ebp,%esi
1578 addl %edi,%ebx
1579 rorl $9,%esi
1580 movl %ebp,%ecx
1581 movl 8(%esp),%edi
1582 xorl %ebp,%esi
1583 movl %ebp,4(%esp)
1584 xorl %edi,%ebp
1585 rorl $11,%esi
1586 andl %ebp,%eax
1587 leal 338241895(%ebx,%edx,1),%edx
1588 xorl %ecx,%esi
1589 xorl %edi,%eax
1590 movl 36(%esp),%ecx
1591 rorl $2,%esi
1592 addl %edx,%eax
1593 addl 16(%esp),%edx
1594 addl %esi,%eax
1595 movl 88(%esp),%esi
1596 movl %ecx,%ebx
1597 rorl $11,%ecx
1598 movl %esi,%edi
1599 rorl $2,%esi
1600 xorl %ebx,%ecx
1601 shrl $3,%ebx
1602 rorl $7,%ecx
1603 xorl %edi,%esi
1604 xorl %ecx,%ebx
1605 rorl $17,%esi
1606 addl 32(%esp),%ebx
1607 shrl $10,%edi
1608 addl 68(%esp),%ebx
1609 movl %edx,%ecx
1610 xorl %esi,%edi
1611 movl 20(%esp),%esi
1612 rorl $14,%edx
1613 addl %edi,%ebx
1614 movl 24(%esp),%edi
1615 xorl %ecx,%edx
1616 movl %ebx,32(%esp)
1617 xorl %edi,%esi
1618 rorl $5,%edx
1619 andl %ecx,%esi
1620 movl %ecx,16(%esp)
1621 xorl %ecx,%edx
1622 addl 28(%esp),%ebx
1623 xorl %esi,%edi
1624 rorl $6,%edx
1625 movl %eax,%ecx
1626 addl %edi,%ebx
1627 rorl $9,%ecx
1628 movl %eax,%esi
1629 movl 4(%esp),%edi
1630 xorl %eax,%ecx
1631 movl %eax,(%esp)
1632 xorl %edi,%eax
1633 rorl $11,%ecx
1634 andl %eax,%ebp
1635 leal 666307205(%ebx,%edx,1),%edx
1636 xorl %esi,%ecx
1637 xorl %edi,%ebp
1638 movl 40(%esp),%esi
1639 rorl $2,%ecx
1640 addl %edx,%ebp
1641 addl 12(%esp),%edx
1642 addl %ecx,%ebp
1643 movl 92(%esp),%ecx
1644 movl %esi,%ebx
1645 rorl $11,%esi
1646 movl %ecx,%edi
1647 rorl $2,%ecx
1648 xorl %ebx,%esi
1649 shrl $3,%ebx
1650 rorl $7,%esi
1651 xorl %edi,%ecx
1652 xorl %esi,%ebx
1653 rorl $17,%ecx
1654 addl 36(%esp),%ebx
1655 shrl $10,%edi
1656 addl 72(%esp),%ebx
1657 movl %edx,%esi
1658 xorl %ecx,%edi
1659 movl 16(%esp),%ecx
1660 rorl $14,%edx
1661 addl %edi,%ebx
1662 movl 20(%esp),%edi
1663 xorl %esi,%edx
1664 movl %ebx,36(%esp)
1665 xorl %edi,%ecx
1666 rorl $5,%edx
1667 andl %esi,%ecx
1668 movl %esi,12(%esp)
1669 xorl %esi,%edx
1670 addl 24(%esp),%ebx
1671 xorl %ecx,%edi
1672 rorl $6,%edx
1673 movl %ebp,%esi
1674 addl %edi,%ebx
1675 rorl $9,%esi
1676 movl %ebp,%ecx
1677 movl (%esp),%edi
1678 xorl %ebp,%esi
1679 movl %ebp,28(%esp)
1680 xorl %edi,%ebp
1681 rorl $11,%esi
1682 andl %ebp,%eax
1683 leal 773529912(%ebx,%edx,1),%edx
1684 xorl %ecx,%esi
1685 xorl %edi,%eax
1686 movl 44(%esp),%ecx
1687 rorl $2,%esi
1688 addl %edx,%eax
1689 addl 8(%esp),%edx
1690 addl %esi,%eax
1691 movl 32(%esp),%esi
1692 movl %ecx,%ebx
1693 rorl $11,%ecx
1694 movl %esi,%edi
1695 rorl $2,%esi
1696 xorl %ebx,%ecx
1697 shrl $3,%ebx
1698 rorl $7,%ecx
1699 xorl %edi,%esi
1700 xorl %ecx,%ebx
1701 rorl $17,%esi
1702 addl 40(%esp),%ebx
1703 shrl $10,%edi
1704 addl 76(%esp),%ebx
1705 movl %edx,%ecx
1706 xorl %esi,%edi
1707 movl 12(%esp),%esi
1708 rorl $14,%edx
1709 addl %edi,%ebx
1710 movl 16(%esp),%edi
1711 xorl %ecx,%edx
1712 movl %ebx,40(%esp)
1713 xorl %edi,%esi
1714 rorl $5,%edx
1715 andl %ecx,%esi
1716 movl %ecx,8(%esp)
1717 xorl %ecx,%edx
1718 addl 20(%esp),%ebx
1719 xorl %esi,%edi
1720 rorl $6,%edx
1721 movl %eax,%ecx
1722 addl %edi,%ebx
1723 rorl $9,%ecx
1724 movl %eax,%esi
1725 movl 28(%esp),%edi
1726 xorl %eax,%ecx
1727 movl %eax,24(%esp)
1728 xorl %edi,%eax
1729 rorl $11,%ecx
1730 andl %eax,%ebp
1731 leal 1294757372(%ebx,%edx,1),%edx
1732 xorl %esi,%ecx
1733 xorl %edi,%ebp
1734 movl 48(%esp),%esi
1735 rorl $2,%ecx
1736 addl %edx,%ebp
1737 addl 4(%esp),%edx
1738 addl %ecx,%ebp
1739 movl 36(%esp),%ecx
1740 movl %esi,%ebx
1741 rorl $11,%esi
1742 movl %ecx,%edi
1743 rorl $2,%ecx
1744 xorl %ebx,%esi
1745 shrl $3,%ebx
1746 rorl $7,%esi
1747 xorl %edi,%ecx
1748 xorl %esi,%ebx
1749 rorl $17,%ecx
1750 addl 44(%esp),%ebx
1751 shrl $10,%edi
1752 addl 80(%esp),%ebx
1753 movl %edx,%esi
1754 xorl %ecx,%edi
1755 movl 8(%esp),%ecx
1756 rorl $14,%edx
1757 addl %edi,%ebx
1758 movl 12(%esp),%edi
1759 xorl %esi,%edx
1760 movl %ebx,44(%esp)
1761 xorl %edi,%ecx
1762 rorl $5,%edx
1763 andl %esi,%ecx
1764 movl %esi,4(%esp)
1765 xorl %esi,%edx
1766 addl 16(%esp),%ebx
1767 xorl %ecx,%edi
1768 rorl $6,%edx
1769 movl %ebp,%esi
1770 addl %edi,%ebx
1771 rorl $9,%esi
1772 movl %ebp,%ecx
1773 movl 24(%esp),%edi
1774 xorl %ebp,%esi
1775 movl %ebp,20(%esp)
1776 xorl %edi,%ebp
1777 rorl $11,%esi
1778 andl %ebp,%eax
1779 leal 1396182291(%ebx,%edx,1),%edx
1780 xorl %ecx,%esi
1781 xorl %edi,%eax
1782 movl 52(%esp),%ecx
1783 rorl $2,%esi
1784 addl %edx,%eax
1785 addl (%esp),%edx
1786 addl %esi,%eax
1787 movl 40(%esp),%esi
1788 movl %ecx,%ebx
1789 rorl $11,%ecx
1790 movl %esi,%edi
1791 rorl $2,%esi
1792 xorl %ebx,%ecx
1793 shrl $3,%ebx
1794 rorl $7,%ecx
1795 xorl %edi,%esi
1796 xorl %ecx,%ebx
1797 rorl $17,%esi
1798 addl 48(%esp),%ebx
1799 shrl $10,%edi
1800 addl 84(%esp),%ebx
1801 movl %edx,%ecx
1802 xorl %esi,%edi
1803 movl 4(%esp),%esi
1804 rorl $14,%edx
1805 addl %edi,%ebx
1806 movl 8(%esp),%edi
1807 xorl %ecx,%edx
1808 movl %ebx,48(%esp)
1809 xorl %edi,%esi
1810 rorl $5,%edx
1811 andl %ecx,%esi
1812 movl %ecx,(%esp)
1813 xorl %ecx,%edx
1814 addl 12(%esp),%ebx
1815 xorl %esi,%edi
1816 rorl $6,%edx
1817 movl %eax,%ecx
1818 addl %edi,%ebx
1819 rorl $9,%ecx
1820 movl %eax,%esi
1821 movl 20(%esp),%edi
1822 xorl %eax,%ecx
1823 movl %eax,16(%esp)
1824 xorl %edi,%eax
1825 rorl $11,%ecx
1826 andl %eax,%ebp
1827 leal 1695183700(%ebx,%edx,1),%edx
1828 xorl %esi,%ecx
1829 xorl %edi,%ebp
1830 movl 56(%esp),%esi
1831 rorl $2,%ecx
1832 addl %edx,%ebp
1833 addl 28(%esp),%edx
1834 addl %ecx,%ebp
1835 movl 44(%esp),%ecx
1836 movl %esi,%ebx
1837 rorl $11,%esi
1838 movl %ecx,%edi
1839 rorl $2,%ecx
1840 xorl %ebx,%esi
1841 shrl $3,%ebx
1842 rorl $7,%esi
1843 xorl %edi,%ecx
1844 xorl %esi,%ebx
1845 rorl $17,%ecx
1846 addl 52(%esp),%ebx
1847 shrl $10,%edi
1848 addl 88(%esp),%ebx
1849 movl %edx,%esi
1850 xorl %ecx,%edi
1851 movl (%esp),%ecx
1852 rorl $14,%edx
1853 addl %edi,%ebx
1854 movl 4(%esp),%edi
1855 xorl %esi,%edx
1856 movl %ebx,52(%esp)
1857 xorl %edi,%ecx
1858 rorl $5,%edx
1859 andl %esi,%ecx
1860 movl %esi,28(%esp)
1861 xorl %esi,%edx
1862 addl 8(%esp),%ebx
1863 xorl %ecx,%edi
1864 rorl $6,%edx
1865 movl %ebp,%esi
1866 addl %edi,%ebx
1867 rorl $9,%esi
1868 movl %ebp,%ecx
1869 movl 16(%esp),%edi
1870 xorl %ebp,%esi
1871 movl %ebp,12(%esp)
1872 xorl %edi,%ebp
1873 rorl $11,%esi
1874 andl %ebp,%eax
1875 leal 1986661051(%ebx,%edx,1),%edx
1876 xorl %ecx,%esi
1877 xorl %edi,%eax
1878 movl 60(%esp),%ecx
1879 rorl $2,%esi
1880 addl %edx,%eax
1881 addl 24(%esp),%edx
1882 addl %esi,%eax
1883 movl 48(%esp),%esi
1884 movl %ecx,%ebx
1885 rorl $11,%ecx
1886 movl %esi,%edi
1887 rorl $2,%esi
1888 xorl %ebx,%ecx
1889 shrl $3,%ebx
1890 rorl $7,%ecx
1891 xorl %edi,%esi
1892 xorl %ecx,%ebx
1893 rorl $17,%esi
1894 addl 56(%esp),%ebx
1895 shrl $10,%edi
1896 addl 92(%esp),%ebx
1897 movl %edx,%ecx
1898 xorl %esi,%edi
1899 movl 28(%esp),%esi
1900 rorl $14,%edx
1901 addl %edi,%ebx
1902 movl (%esp),%edi
1903 xorl %ecx,%edx
1904 movl %ebx,56(%esp)
1905 xorl %edi,%esi
1906 rorl $5,%edx
1907 andl %ecx,%esi
1908 movl %ecx,24(%esp)
1909 xorl %ecx,%edx
1910 addl 4(%esp),%ebx
1911 xorl %esi,%edi
1912 rorl $6,%edx
1913 movl %eax,%ecx
1914 addl %edi,%ebx
1915 rorl $9,%ecx
1916 movl %eax,%esi
1917 movl 12(%esp),%edi
1918 xorl %eax,%ecx
1919 movl %eax,8(%esp)
1920 xorl %edi,%eax
1921 rorl $11,%ecx
1922 andl %eax,%ebp
1923 leal 2177026350(%ebx,%edx,1),%edx
1924 xorl %esi,%ecx
1925 xorl %edi,%ebp
1926 movl 64(%esp),%esi
1927 rorl $2,%ecx
1928 addl %edx,%ebp
1929 addl 20(%esp),%edx
1930 addl %ecx,%ebp
1931 movl 52(%esp),%ecx
1932 movl %esi,%ebx
1933 rorl $11,%esi
1934 movl %ecx,%edi
1935 rorl $2,%ecx
1936 xorl %ebx,%esi
1937 shrl $3,%ebx
1938 rorl $7,%esi
1939 xorl %edi,%ecx
1940 xorl %esi,%ebx
1941 rorl $17,%ecx
1942 addl 60(%esp),%ebx
1943 shrl $10,%edi
1944 addl 32(%esp),%ebx
1945 movl %edx,%esi
1946 xorl %ecx,%edi
1947 movl 24(%esp),%ecx
1948 rorl $14,%edx
1949 addl %edi,%ebx
1950 movl 28(%esp),%edi
1951 xorl %esi,%edx
1952 movl %ebx,60(%esp)
1953 xorl %edi,%ecx
1954 rorl $5,%edx
1955 andl %esi,%ecx
1956 movl %esi,20(%esp)
1957 xorl %esi,%edx
1958 addl (%esp),%ebx
1959 xorl %ecx,%edi
1960 rorl $6,%edx
1961 movl %ebp,%esi
1962 addl %edi,%ebx
1963 rorl $9,%esi
1964 movl %ebp,%ecx
1965 movl 8(%esp),%edi
1966 xorl %ebp,%esi
1967 movl %ebp,4(%esp)
1968 xorl %edi,%ebp
1969 rorl $11,%esi
1970 andl %ebp,%eax
1971 leal 2456956037(%ebx,%edx,1),%edx
1972 xorl %ecx,%esi
1973 xorl %edi,%eax
1974 movl 68(%esp),%ecx
1975 rorl $2,%esi
1976 addl %edx,%eax
1977 addl 16(%esp),%edx
1978 addl %esi,%eax
1979 movl 56(%esp),%esi
1980 movl %ecx,%ebx
1981 rorl $11,%ecx
1982 movl %esi,%edi
1983 rorl $2,%esi
1984 xorl %ebx,%ecx
1985 shrl $3,%ebx
1986 rorl $7,%ecx
1987 xorl %edi,%esi
1988 xorl %ecx,%ebx
1989 rorl $17,%esi
1990 addl 64(%esp),%ebx
1991 shrl $10,%edi
1992 addl 36(%esp),%ebx
1993 movl %edx,%ecx
1994 xorl %esi,%edi
1995 movl 20(%esp),%esi
1996 rorl $14,%edx
1997 addl %edi,%ebx
1998 movl 24(%esp),%edi
1999 xorl %ecx,%edx
2000 movl %ebx,64(%esp)
2001 xorl %edi,%esi
2002 rorl $5,%edx
2003 andl %ecx,%esi
2004 movl %ecx,16(%esp)
2005 xorl %ecx,%edx
2006 addl 28(%esp),%ebx
2007 xorl %esi,%edi
2008 rorl $6,%edx
2009 movl %eax,%ecx
2010 addl %edi,%ebx
2011 rorl $9,%ecx
2012 movl %eax,%esi
2013 movl 4(%esp),%edi
2014 xorl %eax,%ecx
2015 movl %eax,(%esp)
2016 xorl %edi,%eax
2017 rorl $11,%ecx
2018 andl %eax,%ebp
2019 leal 2730485921(%ebx,%edx,1),%edx
2020 xorl %esi,%ecx
2021 xorl %edi,%ebp
2022 movl 72(%esp),%esi
2023 rorl $2,%ecx
2024 addl %edx,%ebp
2025 addl 12(%esp),%edx
2026 addl %ecx,%ebp
2027 movl 60(%esp),%ecx
2028 movl %esi,%ebx
2029 rorl $11,%esi
2030 movl %ecx,%edi
2031 rorl $2,%ecx
2032 xorl %ebx,%esi
2033 shrl $3,%ebx
2034 rorl $7,%esi
2035 xorl %edi,%ecx
2036 xorl %esi,%ebx
2037 rorl $17,%ecx
2038 addl 68(%esp),%ebx
2039 shrl $10,%edi
2040 addl 40(%esp),%ebx
2041 movl %edx,%esi
2042 xorl %ecx,%edi
2043 movl 16(%esp),%ecx
2044 rorl $14,%edx
2045 addl %edi,%ebx
2046 movl 20(%esp),%edi
2047 xorl %esi,%edx
2048 movl %ebx,68(%esp)
2049 xorl %edi,%ecx
2050 rorl $5,%edx
2051 andl %esi,%ecx
2052 movl %esi,12(%esp)
2053 xorl %esi,%edx
2054 addl 24(%esp),%ebx
2055 xorl %ecx,%edi
2056 rorl $6,%edx
2057 movl %ebp,%esi
2058 addl %edi,%ebx
2059 rorl $9,%esi
2060 movl %ebp,%ecx
2061 movl (%esp),%edi
2062 xorl %ebp,%esi
2063 movl %ebp,28(%esp)
2064 xorl %edi,%ebp
2065 rorl $11,%esi
2066 andl %ebp,%eax
2067 leal 2820302411(%ebx,%edx,1),%edx
2068 xorl %ecx,%esi
2069 xorl %edi,%eax
2070 movl 76(%esp),%ecx
2071 rorl $2,%esi
2072 addl %edx,%eax
2073 addl 8(%esp),%edx
2074 addl %esi,%eax
2075 movl 64(%esp),%esi
2076 movl %ecx,%ebx
2077 rorl $11,%ecx
2078 movl %esi,%edi
2079 rorl $2,%esi
2080 xorl %ebx,%ecx
2081 shrl $3,%ebx
2082 rorl $7,%ecx
2083 xorl %edi,%esi
2084 xorl %ecx,%ebx
2085 rorl $17,%esi
2086 addl 72(%esp),%ebx
2087 shrl $10,%edi
2088 addl 44(%esp),%ebx
2089 movl %edx,%ecx
2090 xorl %esi,%edi
2091 movl 12(%esp),%esi
2092 rorl $14,%edx
2093 addl %edi,%ebx
2094 movl 16(%esp),%edi
2095 xorl %ecx,%edx
2096 movl %ebx,72(%esp)
2097 xorl %edi,%esi
2098 rorl $5,%edx
2099 andl %ecx,%esi
2100 movl %ecx,8(%esp)
2101 xorl %ecx,%edx
2102 addl 20(%esp),%ebx
2103 xorl %esi,%edi
2104 rorl $6,%edx
2105 movl %eax,%ecx
2106 addl %edi,%ebx
2107 rorl $9,%ecx
2108 movl %eax,%esi
2109 movl 28(%esp),%edi
2110 xorl %eax,%ecx
2111 movl %eax,24(%esp)
2112 xorl %edi,%eax
2113 rorl $11,%ecx
2114 andl %eax,%ebp
2115 leal 3259730800(%ebx,%edx,1),%edx
2116 xorl %esi,%ecx
2117 xorl %edi,%ebp
2118 movl 80(%esp),%esi
2119 rorl $2,%ecx
2120 addl %edx,%ebp
2121 addl 4(%esp),%edx
2122 addl %ecx,%ebp
2123 movl 68(%esp),%ecx
2124 movl %esi,%ebx
2125 rorl $11,%esi
2126 movl %ecx,%edi
2127 rorl $2,%ecx
2128 xorl %ebx,%esi
2129 shrl $3,%ebx
2130 rorl $7,%esi
2131 xorl %edi,%ecx
2132 xorl %esi,%ebx
2133 rorl $17,%ecx
2134 addl 76(%esp),%ebx
2135 shrl $10,%edi
2136 addl 48(%esp),%ebx
2137 movl %edx,%esi
2138 xorl %ecx,%edi
2139 movl 8(%esp),%ecx
2140 rorl $14,%edx
2141 addl %edi,%ebx
2142 movl 12(%esp),%edi
2143 xorl %esi,%edx
2144 movl %ebx,76(%esp)
2145 xorl %edi,%ecx
2146 rorl $5,%edx
2147 andl %esi,%ecx
2148 movl %esi,4(%esp)
2149 xorl %esi,%edx
2150 addl 16(%esp),%ebx
2151 xorl %ecx,%edi
2152 rorl $6,%edx
2153 movl %ebp,%esi
2154 addl %edi,%ebx
2155 rorl $9,%esi
2156 movl %ebp,%ecx
2157 movl 24(%esp),%edi
2158 xorl %ebp,%esi
2159 movl %ebp,20(%esp)
2160 xorl %edi,%ebp
2161 rorl $11,%esi
2162 andl %ebp,%eax
2163 leal 3345764771(%ebx,%edx,1),%edx
2164 xorl %ecx,%esi
2165 xorl %edi,%eax
2166 movl 84(%esp),%ecx
2167 rorl $2,%esi
2168 addl %edx,%eax
2169 addl (%esp),%edx
2170 addl %esi,%eax
2171 movl 72(%esp),%esi
2172 movl %ecx,%ebx
2173 rorl $11,%ecx
2174 movl %esi,%edi
2175 rorl $2,%esi
2176 xorl %ebx,%ecx
2177 shrl $3,%ebx
2178 rorl $7,%ecx
2179 xorl %edi,%esi
2180 xorl %ecx,%ebx
2181 rorl $17,%esi
2182 addl 80(%esp),%ebx
2183 shrl $10,%edi
2184 addl 52(%esp),%ebx
2185 movl %edx,%ecx
2186 xorl %esi,%edi
2187 movl 4(%esp),%esi
2188 rorl $14,%edx
2189 addl %edi,%ebx
2190 movl 8(%esp),%edi
2191 xorl %ecx,%edx
2192 movl %ebx,80(%esp)
2193 xorl %edi,%esi
2194 rorl $5,%edx
2195 andl %ecx,%esi
2196 movl %ecx,(%esp)
2197 xorl %ecx,%edx
2198 addl 12(%esp),%ebx
2199 xorl %esi,%edi
2200 rorl $6,%edx
2201 movl %eax,%ecx
2202 addl %edi,%ebx
2203 rorl $9,%ecx
2204 movl %eax,%esi
2205 movl 20(%esp),%edi
2206 xorl %eax,%ecx
2207 movl %eax,16(%esp)
2208 xorl %edi,%eax
2209 rorl $11,%ecx
2210 andl %eax,%ebp
2211 leal 3516065817(%ebx,%edx,1),%edx
2212 xorl %esi,%ecx
2213 xorl %edi,%ebp
2214 movl 88(%esp),%esi
2215 rorl $2,%ecx
2216 addl %edx,%ebp
2217 addl 28(%esp),%edx
2218 addl %ecx,%ebp
2219 movl 76(%esp),%ecx
2220 movl %esi,%ebx
2221 rorl $11,%esi
2222 movl %ecx,%edi
2223 rorl $2,%ecx
2224 xorl %ebx,%esi
2225 shrl $3,%ebx
2226 rorl $7,%esi
2227 xorl %edi,%ecx
2228 xorl %esi,%ebx
2229 rorl $17,%ecx
2230 addl 84(%esp),%ebx
2231 shrl $10,%edi
2232 addl 56(%esp),%ebx
2233 movl %edx,%esi
2234 xorl %ecx,%edi
2235 movl (%esp),%ecx
2236 rorl $14,%edx
2237 addl %edi,%ebx
2238 movl 4(%esp),%edi
2239 xorl %esi,%edx
2240 movl %ebx,84(%esp)
2241 xorl %edi,%ecx
2242 rorl $5,%edx
2243 andl %esi,%ecx
2244 movl %esi,28(%esp)
2245 xorl %esi,%edx
2246 addl 8(%esp),%ebx
2247 xorl %ecx,%edi
2248 rorl $6,%edx
2249 movl %ebp,%esi
2250 addl %edi,%ebx
2251 rorl $9,%esi
2252 movl %ebp,%ecx
2253 movl 16(%esp),%edi
2254 xorl %ebp,%esi
2255 movl %ebp,12(%esp)
2256 xorl %edi,%ebp
2257 rorl $11,%esi
2258 andl %ebp,%eax
2259 leal 3600352804(%ebx,%edx,1),%edx
2260 xorl %ecx,%esi
2261 xorl %edi,%eax
2262 movl 92(%esp),%ecx
2263 rorl $2,%esi
2264 addl %edx,%eax
2265 addl 24(%esp),%edx
2266 addl %esi,%eax
2267 movl 80(%esp),%esi
2268 movl %ecx,%ebx
2269 rorl $11,%ecx
2270 movl %esi,%edi
2271 rorl $2,%esi
2272 xorl %ebx,%ecx
2273 shrl $3,%ebx
2274 rorl $7,%ecx
2275 xorl %edi,%esi
2276 xorl %ecx,%ebx
2277 rorl $17,%esi
2278 addl 88(%esp),%ebx
2279 shrl $10,%edi
2280 addl 60(%esp),%ebx
2281 movl %edx,%ecx
2282 xorl %esi,%edi
2283 movl 28(%esp),%esi
2284 rorl $14,%edx
2285 addl %edi,%ebx
2286 movl (%esp),%edi
2287 xorl %ecx,%edx
2288 movl %ebx,88(%esp)
2289 xorl %edi,%esi
2290 rorl $5,%edx
2291 andl %ecx,%esi
2292 movl %ecx,24(%esp)
2293 xorl %ecx,%edx
2294 addl 4(%esp),%ebx
2295 xorl %esi,%edi
2296 rorl $6,%edx
2297 movl %eax,%ecx
2298 addl %edi,%ebx
2299 rorl $9,%ecx
2300 movl %eax,%esi
2301 movl 12(%esp),%edi
2302 xorl %eax,%ecx
2303 movl %eax,8(%esp)
2304 xorl %edi,%eax
2305 rorl $11,%ecx
2306 andl %eax,%ebp
2307 leal 4094571909(%ebx,%edx,1),%edx
2308 xorl %esi,%ecx
2309 xorl %edi,%ebp
2310 movl 32(%esp),%esi
2311 rorl $2,%ecx
2312 addl %edx,%ebp
2313 addl 20(%esp),%edx
2314 addl %ecx,%ebp
2315 movl 84(%esp),%ecx
2316 movl %esi,%ebx
2317 rorl $11,%esi
2318 movl %ecx,%edi
2319 rorl $2,%ecx
2320 xorl %ebx,%esi
2321 shrl $3,%ebx
2322 rorl $7,%esi
2323 xorl %edi,%ecx
2324 xorl %esi,%ebx
2325 rorl $17,%ecx
2326 addl 92(%esp),%ebx
2327 shrl $10,%edi
2328 addl 64(%esp),%ebx
2329 movl %edx,%esi
2330 xorl %ecx,%edi
2331 movl 24(%esp),%ecx
2332 rorl $14,%edx
2333 addl %edi,%ebx
2334 movl 28(%esp),%edi
2335 xorl %esi,%edx
2336 movl %ebx,92(%esp)
2337 xorl %edi,%ecx
2338 rorl $5,%edx
2339 andl %esi,%ecx
2340 movl %esi,20(%esp)
2341 xorl %esi,%edx
2342 addl (%esp),%ebx
2343 xorl %ecx,%edi
2344 rorl $6,%edx
2345 movl %ebp,%esi
2346 addl %edi,%ebx
2347 rorl $9,%esi
2348 movl %ebp,%ecx
2349 movl 8(%esp),%edi
2350 xorl %ebp,%esi
2351 movl %ebp,4(%esp)
2352 xorl %edi,%ebp
2353 rorl $11,%esi
2354 andl %ebp,%eax
2355 leal 275423344(%ebx,%edx,1),%edx
2356 xorl %ecx,%esi
2357 xorl %edi,%eax
2358 movl 36(%esp),%ecx
2359 rorl $2,%esi
2360 addl %edx,%eax
2361 addl 16(%esp),%edx
2362 addl %esi,%eax
2363 movl 88(%esp),%esi
2364 movl %ecx,%ebx
2365 rorl $11,%ecx
2366 movl %esi,%edi
2367 rorl $2,%esi
2368 xorl %ebx,%ecx
2369 shrl $3,%ebx
2370 rorl $7,%ecx
2371 xorl %edi,%esi
2372 xorl %ecx,%ebx
2373 rorl $17,%esi
2374 addl 32(%esp),%ebx
2375 shrl $10,%edi
2376 addl 68(%esp),%ebx
2377 movl %edx,%ecx
2378 xorl %esi,%edi
2379 movl 20(%esp),%esi
2380 rorl $14,%edx
2381 addl %edi,%ebx
2382 movl 24(%esp),%edi
2383 xorl %ecx,%edx
2384 movl %ebx,32(%esp)
2385 xorl %edi,%esi
2386 rorl $5,%edx
2387 andl %ecx,%esi
2388 movl %ecx,16(%esp)
2389 xorl %ecx,%edx
2390 addl 28(%esp),%ebx
2391 xorl %esi,%edi
2392 rorl $6,%edx
2393 movl %eax,%ecx
2394 addl %edi,%ebx
2395 rorl $9,%ecx
2396 movl %eax,%esi
2397 movl 4(%esp),%edi
2398 xorl %eax,%ecx
2399 movl %eax,(%esp)
2400 xorl %edi,%eax
2401 rorl $11,%ecx
2402 andl %eax,%ebp
2403 leal 430227734(%ebx,%edx,1),%edx
2404 xorl %esi,%ecx
2405 xorl %edi,%ebp
2406 movl 40(%esp),%esi
2407 rorl $2,%ecx
2408 addl %edx,%ebp
2409 addl 12(%esp),%edx
2410 addl %ecx,%ebp
2411 movl 92(%esp),%ecx
2412 movl %esi,%ebx
2413 rorl $11,%esi
2414 movl %ecx,%edi
2415 rorl $2,%ecx
2416 xorl %ebx,%esi
2417 shrl $3,%ebx
2418 rorl $7,%esi
2419 xorl %edi,%ecx
2420 xorl %esi,%ebx
2421 rorl $17,%ecx
2422 addl 36(%esp),%ebx
2423 shrl $10,%edi
2424 addl 72(%esp),%ebx
2425 movl %edx,%esi
2426 xorl %ecx,%edi
2427 movl 16(%esp),%ecx
2428 rorl $14,%edx
2429 addl %edi,%ebx
2430 movl 20(%esp),%edi
2431 xorl %esi,%edx
2432 movl %ebx,36(%esp)
2433 xorl %edi,%ecx
2434 rorl $5,%edx
2435 andl %esi,%ecx
2436 movl %esi,12(%esp)
2437 xorl %esi,%edx
2438 addl 24(%esp),%ebx
2439 xorl %ecx,%edi
2440 rorl $6,%edx
2441 movl %ebp,%esi
2442 addl %edi,%ebx
2443 rorl $9,%esi
2444 movl %ebp,%ecx
2445 movl (%esp),%edi
2446 xorl %ebp,%esi
2447 movl %ebp,28(%esp)
2448 xorl %edi,%ebp
2449 rorl $11,%esi
2450 andl %ebp,%eax
2451 leal 506948616(%ebx,%edx,1),%edx
2452 xorl %ecx,%esi
2453 xorl %edi,%eax
2454 movl 44(%esp),%ecx
2455 rorl $2,%esi
2456 addl %edx,%eax
2457 addl 8(%esp),%edx
2458 addl %esi,%eax
2459 movl 32(%esp),%esi
2460 movl %ecx,%ebx
2461 rorl $11,%ecx
2462 movl %esi,%edi
2463 rorl $2,%esi
2464 xorl %ebx,%ecx
2465 shrl $3,%ebx
2466 rorl $7,%ecx
2467 xorl %edi,%esi
2468 xorl %ecx,%ebx
2469 rorl $17,%esi
2470 addl 40(%esp),%ebx
2471 shrl $10,%edi
2472 addl 76(%esp),%ebx
2473 movl %edx,%ecx
2474 xorl %esi,%edi
2475 movl 12(%esp),%esi
2476 rorl $14,%edx
2477 addl %edi,%ebx
2478 movl 16(%esp),%edi
2479 xorl %ecx,%edx
2480 movl %ebx,40(%esp)
2481 xorl %edi,%esi
2482 rorl $5,%edx
2483 andl %ecx,%esi
2484 movl %ecx,8(%esp)
2485 xorl %ecx,%edx
2486 addl 20(%esp),%ebx
2487 xorl %esi,%edi
2488 rorl $6,%edx
2489 movl %eax,%ecx
2490 addl %edi,%ebx
2491 rorl $9,%ecx
2492 movl %eax,%esi
2493 movl 28(%esp),%edi
2494 xorl %eax,%ecx
2495 movl %eax,24(%esp)
2496 xorl %edi,%eax
2497 rorl $11,%ecx
2498 andl %eax,%ebp
2499 leal 659060556(%ebx,%edx,1),%edx
2500 xorl %esi,%ecx
2501 xorl %edi,%ebp
2502 movl 48(%esp),%esi
2503 rorl $2,%ecx
2504 addl %edx,%ebp
2505 addl 4(%esp),%edx
2506 addl %ecx,%ebp
2507 movl 36(%esp),%ecx
2508 movl %esi,%ebx
2509 rorl $11,%esi
2510 movl %ecx,%edi
2511 rorl $2,%ecx
2512 xorl %ebx,%esi
2513 shrl $3,%ebx
2514 rorl $7,%esi
2515 xorl %edi,%ecx
2516 xorl %esi,%ebx
2517 rorl $17,%ecx
2518 addl 44(%esp),%ebx
2519 shrl $10,%edi
2520 addl 80(%esp),%ebx
2521 movl %edx,%esi
2522 xorl %ecx,%edi
2523 movl 8(%esp),%ecx
2524 rorl $14,%edx
2525 addl %edi,%ebx
2526 movl 12(%esp),%edi
2527 xorl %esi,%edx
2528 movl %ebx,44(%esp)
2529 xorl %edi,%ecx
2530 rorl $5,%edx
2531 andl %esi,%ecx
2532 movl %esi,4(%esp)
2533 xorl %esi,%edx
2534 addl 16(%esp),%ebx
2535 xorl %ecx,%edi
2536 rorl $6,%edx
2537 movl %ebp,%esi
2538 addl %edi,%ebx
2539 rorl $9,%esi
2540 movl %ebp,%ecx
2541 movl 24(%esp),%edi
2542 xorl %ebp,%esi
2543 movl %ebp,20(%esp)
2544 xorl %edi,%ebp
2545 rorl $11,%esi
2546 andl %ebp,%eax
2547 leal 883997877(%ebx,%edx,1),%edx
2548 xorl %ecx,%esi
2549 xorl %edi,%eax
2550 movl 52(%esp),%ecx
2551 rorl $2,%esi
2552 addl %edx,%eax
2553 addl (%esp),%edx
2554 addl %esi,%eax
2555 movl 40(%esp),%esi
2556 movl %ecx,%ebx
2557 rorl $11,%ecx
2558 movl %esi,%edi
2559 rorl $2,%esi
2560 xorl %ebx,%ecx
2561 shrl $3,%ebx
2562 rorl $7,%ecx
2563 xorl %edi,%esi
2564 xorl %ecx,%ebx
2565 rorl $17,%esi
2566 addl 48(%esp),%ebx
2567 shrl $10,%edi
2568 addl 84(%esp),%ebx
2569 movl %edx,%ecx
2570 xorl %esi,%edi
2571 movl 4(%esp),%esi
2572 rorl $14,%edx
2573 addl %edi,%ebx
2574 movl 8(%esp),%edi
2575 xorl %ecx,%edx
2576 movl %ebx,48(%esp)
2577 xorl %edi,%esi
2578 rorl $5,%edx
2579 andl %ecx,%esi
2580 movl %ecx,(%esp)
2581 xorl %ecx,%edx
2582 addl 12(%esp),%ebx
2583 xorl %esi,%edi
2584 rorl $6,%edx
2585 movl %eax,%ecx
2586 addl %edi,%ebx
2587 rorl $9,%ecx
2588 movl %eax,%esi
2589 movl 20(%esp),%edi
2590 xorl %eax,%ecx
2591 movl %eax,16(%esp)
2592 xorl %edi,%eax
2593 rorl $11,%ecx
2594 andl %eax,%ebp
2595 leal 958139571(%ebx,%edx,1),%edx
2596 xorl %esi,%ecx
2597 xorl %edi,%ebp
2598 movl 56(%esp),%esi
2599 rorl $2,%ecx
2600 addl %edx,%ebp
2601 addl 28(%esp),%edx
2602 addl %ecx,%ebp
2603 movl 44(%esp),%ecx
2604 movl %esi,%ebx
2605 rorl $11,%esi
2606 movl %ecx,%edi
2607 rorl $2,%ecx
2608 xorl %ebx,%esi
2609 shrl $3,%ebx
2610 rorl $7,%esi
2611 xorl %edi,%ecx
2612 xorl %esi,%ebx
2613 rorl $17,%ecx
2614 addl 52(%esp),%ebx
2615 shrl $10,%edi
2616 addl 88(%esp),%ebx
2617 movl %edx,%esi
2618 xorl %ecx,%edi
2619 movl (%esp),%ecx
2620 rorl $14,%edx
2621 addl %edi,%ebx
2622 movl 4(%esp),%edi
2623 xorl %esi,%edx
2624 movl %ebx,52(%esp)
2625 xorl %edi,%ecx
2626 rorl $5,%edx
2627 andl %esi,%ecx
2628 movl %esi,28(%esp)
2629 xorl %esi,%edx
2630 addl 8(%esp),%ebx
2631 xorl %ecx,%edi
2632 rorl $6,%edx
2633 movl %ebp,%esi
2634 addl %edi,%ebx
2635 rorl $9,%esi
2636 movl %ebp,%ecx
2637 movl 16(%esp),%edi
2638 xorl %ebp,%esi
2639 movl %ebp,12(%esp)
2640 xorl %edi,%ebp
2641 rorl $11,%esi
2642 andl %ebp,%eax
2643 leal 1322822218(%ebx,%edx,1),%edx
2644 xorl %ecx,%esi
2645 xorl %edi,%eax
2646 movl 60(%esp),%ecx
2647 rorl $2,%esi
2648 addl %edx,%eax
2649 addl 24(%esp),%edx
2650 addl %esi,%eax
2651 movl 48(%esp),%esi
2652 movl %ecx,%ebx
2653 rorl $11,%ecx
2654 movl %esi,%edi
2655 rorl $2,%esi
2656 xorl %ebx,%ecx
2657 shrl $3,%ebx
2658 rorl $7,%ecx
2659 xorl %edi,%esi
2660 xorl %ecx,%ebx
2661 rorl $17,%esi
2662 addl 56(%esp),%ebx
2663 shrl $10,%edi
2664 addl 92(%esp),%ebx
2665 movl %edx,%ecx
2666 xorl %esi,%edi
2667 movl 28(%esp),%esi
2668 rorl $14,%edx
2669 addl %edi,%ebx
2670 movl (%esp),%edi
2671 xorl %ecx,%edx
2672 movl %ebx,56(%esp)
2673 xorl %edi,%esi
2674 rorl $5,%edx
2675 andl %ecx,%esi
2676 movl %ecx,24(%esp)
2677 xorl %ecx,%edx
2678 addl 4(%esp),%ebx
2679 xorl %esi,%edi
2680 rorl $6,%edx
2681 movl %eax,%ecx
2682 addl %edi,%ebx
2683 rorl $9,%ecx
2684 movl %eax,%esi
2685 movl 12(%esp),%edi
2686 xorl %eax,%ecx
2687 movl %eax,8(%esp)
2688 xorl %edi,%eax
2689 rorl $11,%ecx
2690 andl %eax,%ebp
2691 leal 1537002063(%ebx,%edx,1),%edx
2692 xorl %esi,%ecx
2693 xorl %edi,%ebp
2694 movl 64(%esp),%esi
2695 rorl $2,%ecx
2696 addl %edx,%ebp
2697 addl 20(%esp),%edx
2698 addl %ecx,%ebp
2699 movl 52(%esp),%ecx
2700 movl %esi,%ebx
2701 rorl $11,%esi
2702 movl %ecx,%edi
2703 rorl $2,%ecx
2704 xorl %ebx,%esi
2705 shrl $3,%ebx
2706 rorl $7,%esi
2707 xorl %edi,%ecx
2708 xorl %esi,%ebx
2709 rorl $17,%ecx
2710 addl 60(%esp),%ebx
2711 shrl $10,%edi
2712 addl 32(%esp),%ebx
2713 movl %edx,%esi
2714 xorl %ecx,%edi
2715 movl 24(%esp),%ecx
2716 rorl $14,%edx
2717 addl %edi,%ebx
2718 movl 28(%esp),%edi
2719 xorl %esi,%edx
2720 movl %ebx,60(%esp)
2721 xorl %edi,%ecx
2722 rorl $5,%edx
2723 andl %esi,%ecx
2724 movl %esi,20(%esp)
2725 xorl %esi,%edx
2726 addl (%esp),%ebx
2727 xorl %ecx,%edi
2728 rorl $6,%edx
2729 movl %ebp,%esi
2730 addl %edi,%ebx
2731 rorl $9,%esi
2732 movl %ebp,%ecx
2733 movl 8(%esp),%edi
2734 xorl %ebp,%esi
2735 movl %ebp,4(%esp)
2736 xorl %edi,%ebp
2737 rorl $11,%esi
2738 andl %ebp,%eax
2739 leal 1747873779(%ebx,%edx,1),%edx
2740 xorl %ecx,%esi
2741 xorl %edi,%eax
2742 movl 68(%esp),%ecx
2743 rorl $2,%esi
2744 addl %edx,%eax
2745 addl 16(%esp),%edx
2746 addl %esi,%eax
2747 movl 56(%esp),%esi
2748 movl %ecx,%ebx
2749 rorl $11,%ecx
2750 movl %esi,%edi
2751 rorl $2,%esi
2752 xorl %ebx,%ecx
2753 shrl $3,%ebx
2754 rorl $7,%ecx
2755 xorl %edi,%esi
2756 xorl %ecx,%ebx
2757 rorl $17,%esi
2758 addl 64(%esp),%ebx
2759 shrl $10,%edi
2760 addl 36(%esp),%ebx
2761 movl %edx,%ecx
2762 xorl %esi,%edi
2763 movl 20(%esp),%esi
2764 rorl $14,%edx
2765 addl %edi,%ebx
2766 movl 24(%esp),%edi
2767 xorl %ecx,%edx
2768 movl %ebx,64(%esp)
2769 xorl %edi,%esi
2770 rorl $5,%edx
2771 andl %ecx,%esi
2772 movl %ecx,16(%esp)
2773 xorl %ecx,%edx
2774 addl 28(%esp),%ebx
2775 xorl %esi,%edi
2776 rorl $6,%edx
2777 movl %eax,%ecx
2778 addl %edi,%ebx
2779 rorl $9,%ecx
2780 movl %eax,%esi
2781 movl 4(%esp),%edi
2782 xorl %eax,%ecx
2783 movl %eax,(%esp)
2784 xorl %edi,%eax
2785 rorl $11,%ecx
2786 andl %eax,%ebp
2787 leal 1955562222(%ebx,%edx,1),%edx
2788 xorl %esi,%ecx
2789 xorl %edi,%ebp
2790 movl 72(%esp),%esi
2791 rorl $2,%ecx
2792 addl %edx,%ebp
2793 addl 12(%esp),%edx
2794 addl %ecx,%ebp
2795 movl 60(%esp),%ecx
2796 movl %esi,%ebx
2797 rorl $11,%esi
2798 movl %ecx,%edi
2799 rorl $2,%ecx
2800 xorl %ebx,%esi
2801 shrl $3,%ebx
2802 rorl $7,%esi
2803 xorl %edi,%ecx
2804 xorl %esi,%ebx
2805 rorl $17,%ecx
2806 addl 68(%esp),%ebx
2807 shrl $10,%edi
2808 addl 40(%esp),%ebx
2809 movl %edx,%esi
2810 xorl %ecx,%edi
2811 movl 16(%esp),%ecx
2812 rorl $14,%edx
2813 addl %edi,%ebx
2814 movl 20(%esp),%edi
2815 xorl %esi,%edx
2816 movl %ebx,68(%esp)
2817 xorl %edi,%ecx
2818 rorl $5,%edx
2819 andl %esi,%ecx
2820 movl %esi,12(%esp)
2821 xorl %esi,%edx
2822 addl 24(%esp),%ebx
2823 xorl %ecx,%edi
2824 rorl $6,%edx
2825 movl %ebp,%esi
2826 addl %edi,%ebx
2827 rorl $9,%esi
2828 movl %ebp,%ecx
2829 movl (%esp),%edi
2830 xorl %ebp,%esi
2831 movl %ebp,28(%esp)
2832 xorl %edi,%ebp
2833 rorl $11,%esi
2834 andl %ebp,%eax
2835 leal 2024104815(%ebx,%edx,1),%edx
2836 xorl %ecx,%esi
2837 xorl %edi,%eax
2838 movl 76(%esp),%ecx
2839 rorl $2,%esi
2840 addl %edx,%eax
2841 addl 8(%esp),%edx
2842 addl %esi,%eax
2843 movl 64(%esp),%esi
2844 movl %ecx,%ebx
2845 rorl $11,%ecx
2846 movl %esi,%edi
2847 rorl $2,%esi
2848 xorl %ebx,%ecx
2849 shrl $3,%ebx
2850 rorl $7,%ecx
2851 xorl %edi,%esi
2852 xorl %ecx,%ebx
2853 rorl $17,%esi
2854 addl 72(%esp),%ebx
2855 shrl $10,%edi
2856 addl 44(%esp),%ebx
2857 movl %edx,%ecx
2858 xorl %esi,%edi
2859 movl 12(%esp),%esi
2860 rorl $14,%edx
2861 addl %edi,%ebx
2862 movl 16(%esp),%edi
2863 xorl %ecx,%edx
2864 movl %ebx,72(%esp)
2865 xorl %edi,%esi
2866 rorl $5,%edx
2867 andl %ecx,%esi
2868 movl %ecx,8(%esp)
2869 xorl %ecx,%edx
2870 addl 20(%esp),%ebx
2871 xorl %esi,%edi
2872 rorl $6,%edx
2873 movl %eax,%ecx
2874 addl %edi,%ebx
2875 rorl $9,%ecx
2876 movl %eax,%esi
2877 movl 28(%esp),%edi
2878 xorl %eax,%ecx
2879 movl %eax,24(%esp)
2880 xorl %edi,%eax
2881 rorl $11,%ecx
2882 andl %eax,%ebp
2883 leal 2227730452(%ebx,%edx,1),%edx
2884 xorl %esi,%ecx
2885 xorl %edi,%ebp
2886 movl 80(%esp),%esi
2887 rorl $2,%ecx
2888 addl %edx,%ebp
2889 addl 4(%esp),%edx
2890 addl %ecx,%ebp
2891 movl 68(%esp),%ecx
2892 movl %esi,%ebx
2893 rorl $11,%esi
2894 movl %ecx,%edi
2895 rorl $2,%ecx
2896 xorl %ebx,%esi
2897 shrl $3,%ebx
2898 rorl $7,%esi
2899 xorl %edi,%ecx
2900 xorl %esi,%ebx
2901 rorl $17,%ecx
2902 addl 76(%esp),%ebx
2903 shrl $10,%edi
2904 addl 48(%esp),%ebx
2905 movl %edx,%esi
2906 xorl %ecx,%edi
2907 movl 8(%esp),%ecx
2908 rorl $14,%edx
2909 addl %edi,%ebx
2910 movl 12(%esp),%edi
2911 xorl %esi,%edx
2912 movl %ebx,76(%esp)
2913 xorl %edi,%ecx
2914 rorl $5,%edx
2915 andl %esi,%ecx
2916 movl %esi,4(%esp)
2917 xorl %esi,%edx
2918 addl 16(%esp),%ebx
2919 xorl %ecx,%edi
2920 rorl $6,%edx
2921 movl %ebp,%esi
2922 addl %edi,%ebx
2923 rorl $9,%esi
2924 movl %ebp,%ecx
2925 movl 24(%esp),%edi
2926 xorl %ebp,%esi
2927 movl %ebp,20(%esp)
2928 xorl %edi,%ebp
2929 rorl $11,%esi
2930 andl %ebp,%eax
2931 leal 2361852424(%ebx,%edx,1),%edx
2932 xorl %ecx,%esi
2933 xorl %edi,%eax
2934 movl 84(%esp),%ecx
2935 rorl $2,%esi
2936 addl %edx,%eax
2937 addl (%esp),%edx
2938 addl %esi,%eax
2939 movl 72(%esp),%esi
2940 movl %ecx,%ebx
2941 rorl $11,%ecx
2942 movl %esi,%edi
2943 rorl $2,%esi
2944 xorl %ebx,%ecx
2945 shrl $3,%ebx
2946 rorl $7,%ecx
2947 xorl %edi,%esi
2948 xorl %ecx,%ebx
2949 rorl $17,%esi
2950 addl 80(%esp),%ebx
2951 shrl $10,%edi
2952 addl 52(%esp),%ebx
2953 movl %edx,%ecx
2954 xorl %esi,%edi
2955 movl 4(%esp),%esi
2956 rorl $14,%edx
2957 addl %edi,%ebx
2958 movl 8(%esp),%edi
2959 xorl %ecx,%edx
2960 movl %ebx,80(%esp)
2961 xorl %edi,%esi
2962 rorl $5,%edx
2963 andl %ecx,%esi
2964 movl %ecx,(%esp)
2965 xorl %ecx,%edx
2966 addl 12(%esp),%ebx
2967 xorl %esi,%edi
2968 rorl $6,%edx
2969 movl %eax,%ecx
2970 addl %edi,%ebx
2971 rorl $9,%ecx
2972 movl %eax,%esi
2973 movl 20(%esp),%edi
2974 xorl %eax,%ecx
2975 movl %eax,16(%esp)
2976 xorl %edi,%eax
2977 rorl $11,%ecx
2978 andl %eax,%ebp
2979 leal 2428436474(%ebx,%edx,1),%edx
2980 xorl %esi,%ecx
2981 xorl %edi,%ebp
2982 movl 88(%esp),%esi
2983 rorl $2,%ecx
2984 addl %edx,%ebp
2985 addl 28(%esp),%edx
2986 addl %ecx,%ebp
2987 movl 76(%esp),%ecx
2988 movl %esi,%ebx
2989 rorl $11,%esi
2990 movl %ecx,%edi
2991 rorl $2,%ecx
2992 xorl %ebx,%esi
2993 shrl $3,%ebx
2994 rorl $7,%esi
2995 xorl %edi,%ecx
2996 xorl %esi,%ebx
2997 rorl $17,%ecx
2998 addl 84(%esp),%ebx
2999 shrl $10,%edi
3000 addl 56(%esp),%ebx
3001 movl %edx,%esi
3002 xorl %ecx,%edi
3003 movl (%esp),%ecx
3004 rorl $14,%edx
3005 addl %edi,%ebx
3006 movl 4(%esp),%edi
3007 xorl %esi,%edx
3008 movl %ebx,84(%esp)
3009 xorl %edi,%ecx
3010 rorl $5,%edx
3011 andl %esi,%ecx
3012 movl %esi,28(%esp)
3013 xorl %esi,%edx
3014 addl 8(%esp),%ebx
3015 xorl %ecx,%edi
3016 rorl $6,%edx
3017 movl %ebp,%esi
3018 addl %edi,%ebx
3019 rorl $9,%esi
3020 movl %ebp,%ecx
3021 movl 16(%esp),%edi
3022 xorl %ebp,%esi
3023 movl %ebp,12(%esp)
3024 xorl %edi,%ebp
3025 rorl $11,%esi
3026 andl %ebp,%eax
3027 leal 2756734187(%ebx,%edx,1),%edx
3028 xorl %ecx,%esi
3029 xorl %edi,%eax
3030 movl 92(%esp),%ecx
3031 rorl $2,%esi
3032 addl %edx,%eax
3033 addl 24(%esp),%edx
3034 addl %esi,%eax
3035 movl 80(%esp),%esi
3036 movl %ecx,%ebx
3037 rorl $11,%ecx
3038 movl %esi,%edi
3039 rorl $2,%esi
3040 xorl %ebx,%ecx
3041 shrl $3,%ebx
3042 rorl $7,%ecx
3043 xorl %edi,%esi
3044 xorl %ecx,%ebx
3045 rorl $17,%esi
3046 addl 88(%esp),%ebx
3047 shrl $10,%edi
3048 addl 60(%esp),%ebx
3049 movl %edx,%ecx
3050 xorl %esi,%edi
3051 movl 28(%esp),%esi
3052 rorl $14,%edx
3053 addl %edi,%ebx
3054 movl (%esp),%edi
3055 xorl %ecx,%edx
3056 xorl %edi,%esi
3057 rorl $5,%edx
3058 andl %ecx,%esi
3059 movl %ecx,24(%esp)
3060 xorl %ecx,%edx
3061 addl 4(%esp),%ebx
3062 xorl %esi,%edi
3063 rorl $6,%edx
3064 movl %eax,%ecx
3065 addl %edi,%ebx
3066 rorl $9,%ecx
3067 movl %eax,%esi
3068 movl 12(%esp),%edi
3069 xorl %eax,%ecx
3070 movl %eax,8(%esp)
3071 xorl %edi,%eax
3072 rorl $11,%ecx
3073 andl %eax,%ebp
3074 leal 3204031479(%ebx,%edx,1),%edx
3075 xorl %esi,%ecx
3076 xorl %edi,%ebp
3077 movl 32(%esp),%esi
3078 rorl $2,%ecx
3079 addl %edx,%ebp
3080 addl 20(%esp),%edx
3081 addl %ecx,%ebp
3082 movl 84(%esp),%ecx
3083 movl %esi,%ebx
3084 rorl $11,%esi
3085 movl %ecx,%edi
3086 rorl $2,%ecx
3087 xorl %ebx,%esi
3088 shrl $3,%ebx
3089 rorl $7,%esi
3090 xorl %edi,%ecx
3091 xorl %esi,%ebx
3092 rorl $17,%ecx
3093 addl 92(%esp),%ebx
3094 shrl $10,%edi
3095 addl 64(%esp),%ebx
3096 movl %edx,%esi
3097 xorl %ecx,%edi
3098 movl 24(%esp),%ecx
3099 rorl $14,%edx
3100 addl %edi,%ebx
3101 movl 28(%esp),%edi
3102 xorl %esi,%edx
3103 xorl %edi,%ecx
3104 rorl $5,%edx
3105 andl %esi,%ecx
3106 movl %esi,20(%esp)
3107 xorl %esi,%edx
3108 addl (%esp),%ebx
3109 xorl %ecx,%edi
3110 rorl $6,%edx
3111 movl %ebp,%esi
3112 addl %edi,%ebx
3113 rorl $9,%esi
3114 movl %ebp,%ecx
3115 movl 8(%esp),%edi
3116 xorl %ebp,%esi
3117 movl %ebp,4(%esp)
3118 xorl %edi,%ebp
3119 rorl $11,%esi
3120 andl %ebp,%eax
3121 leal 3329325298(%ebx,%edx,1),%edx
3122 xorl %ecx,%esi
3123 xorl %edi,%eax
3124 rorl $2,%esi
3125 addl %edx,%eax
3126 addl 16(%esp),%edx
3127 addl %esi,%eax
3128 movl 96(%esp),%esi
3129 xorl %edi,%ebp
3130 movl 12(%esp),%ecx
3131 addl (%esi),%eax
3132 addl 4(%esi),%ebp
3133 addl 8(%esi),%edi
3134 addl 12(%esi),%ecx
3135 movl %eax,(%esi)
3136 movl %ebp,4(%esi)
3137 movl %edi,8(%esi)
3138 movl %ecx,12(%esi)
3139 movl %ebp,4(%esp)
3140 xorl %edi,%ebp
3141 movl %edi,8(%esp)
3142 movl %ecx,12(%esp)
3143 movl 20(%esp),%edi
3144 movl 24(%esp),%ebx
3145 movl 28(%esp),%ecx
3146 addl 16(%esi),%edx
3147 addl 20(%esi),%edi
3148 addl 24(%esi),%ebx
3149 addl 28(%esi),%ecx
3150 movl %edx,16(%esi)
3151 movl %edi,20(%esi)
3152 movl %ebx,24(%esi)
3153 movl %ecx,28(%esi)
3154 movl %edi,20(%esp)
3155 movl 100(%esp),%edi
3156 movl %ebx,24(%esp)
3157 movl %ecx,28(%esp)
3158 cmpl 104(%esp),%edi
Adam Langley4139edb2016-01-13 15:00:54 -08003159 jb L009grand_loop
Adam Langleyd9e397b2015-01-22 14:27:53 -08003160 movl 108(%esp),%esp
3161 popl %edi
3162 popl %esi
3163 popl %ebx
3164 popl %ebp
3165 ret
Adam Langleye9ada862015-05-11 17:20:37 -07003166.align 5,0x90
Adam Langley4139edb2016-01-13 15:00:54 -08003167L005SSSE3:
Adam Langleye9ada862015-05-11 17:20:37 -07003168 leal -96(%esp),%esp
3169 movl (%esi),%eax
3170 movl 4(%esi),%ebx
3171 movl 8(%esi),%ecx
3172 movl 12(%esi),%edi
3173 movl %ebx,4(%esp)
3174 xorl %ecx,%ebx
3175 movl %ecx,8(%esp)
3176 movl %edi,12(%esp)
3177 movl 16(%esi),%edx
3178 movl 20(%esi),%edi
3179 movl 24(%esi),%ecx
3180 movl 28(%esi),%esi
3181 movl %edi,20(%esp)
3182 movl 100(%esp),%edi
3183 movl %ecx,24(%esp)
3184 movl %esi,28(%esp)
3185 movdqa 256(%ebp),%xmm7
Adam Langley4139edb2016-01-13 15:00:54 -08003186 jmp L010grand_ssse3
Adam Langleye9ada862015-05-11 17:20:37 -07003187.align 4,0x90
Adam Langley4139edb2016-01-13 15:00:54 -08003188L010grand_ssse3:
Adam Langleye9ada862015-05-11 17:20:37 -07003189 movdqu (%edi),%xmm0
3190 movdqu 16(%edi),%xmm1
3191 movdqu 32(%edi),%xmm2
3192 movdqu 48(%edi),%xmm3
3193 addl $64,%edi
3194.byte 102,15,56,0,199
3195 movl %edi,100(%esp)
3196.byte 102,15,56,0,207
3197 movdqa (%ebp),%xmm4
3198.byte 102,15,56,0,215
3199 movdqa 16(%ebp),%xmm5
3200 paddd %xmm0,%xmm4
3201.byte 102,15,56,0,223
3202 movdqa 32(%ebp),%xmm6
3203 paddd %xmm1,%xmm5
3204 movdqa 48(%ebp),%xmm7
3205 movdqa %xmm4,32(%esp)
3206 paddd %xmm2,%xmm6
3207 movdqa %xmm5,48(%esp)
3208 paddd %xmm3,%xmm7
3209 movdqa %xmm6,64(%esp)
3210 movdqa %xmm7,80(%esp)
Adam Langley4139edb2016-01-13 15:00:54 -08003211 jmp L011ssse3_00_47
Adam Langleye9ada862015-05-11 17:20:37 -07003212.align 4,0x90
Adam Langley4139edb2016-01-13 15:00:54 -08003213L011ssse3_00_47:
Adam Langleye9ada862015-05-11 17:20:37 -07003214 addl $64,%ebp
3215 movl %edx,%ecx
3216 movdqa %xmm1,%xmm4
3217 rorl $14,%edx
3218 movl 20(%esp),%esi
3219 movdqa %xmm3,%xmm7
3220 xorl %ecx,%edx
3221 movl 24(%esp),%edi
3222.byte 102,15,58,15,224,4
3223 xorl %edi,%esi
3224 rorl $5,%edx
3225 andl %ecx,%esi
3226.byte 102,15,58,15,250,4
3227 movl %ecx,16(%esp)
3228 xorl %ecx,%edx
3229 xorl %esi,%edi
3230 movdqa %xmm4,%xmm5
3231 rorl $6,%edx
3232 movl %eax,%ecx
3233 movdqa %xmm4,%xmm6
3234 addl %edi,%edx
3235 movl 4(%esp),%edi
3236 psrld $3,%xmm4
3237 movl %eax,%esi
3238 rorl $9,%ecx
3239 paddd %xmm7,%xmm0
3240 movl %eax,(%esp)
3241 xorl %eax,%ecx
3242 psrld $7,%xmm6
3243 xorl %edi,%eax
3244 addl 28(%esp),%edx
3245 rorl $11,%ecx
3246 andl %eax,%ebx
3247 pshufd $250,%xmm3,%xmm7
3248 xorl %esi,%ecx
3249 addl 32(%esp),%edx
3250 pslld $14,%xmm5
3251 xorl %edi,%ebx
3252 rorl $2,%ecx
3253 pxor %xmm6,%xmm4
3254 addl %edx,%ebx
3255 addl 12(%esp),%edx
3256 psrld $11,%xmm6
3257 addl %ecx,%ebx
3258 movl %edx,%ecx
3259 rorl $14,%edx
3260 pxor %xmm5,%xmm4
3261 movl 16(%esp),%esi
3262 xorl %ecx,%edx
3263 pslld $11,%xmm5
3264 movl 20(%esp),%edi
3265 xorl %edi,%esi
3266 rorl $5,%edx
3267 pxor %xmm6,%xmm4
3268 andl %ecx,%esi
3269 movl %ecx,12(%esp)
3270 movdqa %xmm7,%xmm6
3271 xorl %ecx,%edx
3272 xorl %esi,%edi
3273 rorl $6,%edx
3274 pxor %xmm5,%xmm4
3275 movl %ebx,%ecx
3276 addl %edi,%edx
3277 psrld $10,%xmm7
3278 movl (%esp),%edi
3279 movl %ebx,%esi
3280 rorl $9,%ecx
3281 paddd %xmm4,%xmm0
3282 movl %ebx,28(%esp)
3283 xorl %ebx,%ecx
3284 psrlq $17,%xmm6
3285 xorl %edi,%ebx
3286 addl 24(%esp),%edx
3287 rorl $11,%ecx
3288 pxor %xmm6,%xmm7
3289 andl %ebx,%eax
3290 xorl %esi,%ecx
3291 psrlq $2,%xmm6
3292 addl 36(%esp),%edx
3293 xorl %edi,%eax
3294 rorl $2,%ecx
3295 pxor %xmm6,%xmm7
3296 addl %edx,%eax
3297 addl 8(%esp),%edx
3298 pshufd $128,%xmm7,%xmm7
3299 addl %ecx,%eax
3300 movl %edx,%ecx
3301 rorl $14,%edx
3302 movl 12(%esp),%esi
3303 xorl %ecx,%edx
3304 movl 16(%esp),%edi
3305 xorl %edi,%esi
3306 rorl $5,%edx
3307 andl %ecx,%esi
3308 psrldq $8,%xmm7
3309 movl %ecx,8(%esp)
3310 xorl %ecx,%edx
3311 xorl %esi,%edi
3312 paddd %xmm7,%xmm0
3313 rorl $6,%edx
3314 movl %eax,%ecx
3315 addl %edi,%edx
3316 movl 28(%esp),%edi
3317 movl %eax,%esi
3318 rorl $9,%ecx
3319 movl %eax,24(%esp)
3320 pshufd $80,%xmm0,%xmm7
3321 xorl %eax,%ecx
3322 xorl %edi,%eax
3323 addl 20(%esp),%edx
3324 movdqa %xmm7,%xmm6
3325 rorl $11,%ecx
3326 psrld $10,%xmm7
3327 andl %eax,%ebx
3328 psrlq $17,%xmm6
3329 xorl %esi,%ecx
3330 addl 40(%esp),%edx
3331 xorl %edi,%ebx
3332 rorl $2,%ecx
3333 pxor %xmm6,%xmm7
3334 addl %edx,%ebx
3335 addl 4(%esp),%edx
3336 psrlq $2,%xmm6
3337 addl %ecx,%ebx
3338 movl %edx,%ecx
3339 rorl $14,%edx
3340 pxor %xmm6,%xmm7
3341 movl 8(%esp),%esi
3342 xorl %ecx,%edx
3343 movl 12(%esp),%edi
3344 pshufd $8,%xmm7,%xmm7
3345 xorl %edi,%esi
3346 rorl $5,%edx
3347 movdqa (%ebp),%xmm6
3348 andl %ecx,%esi
3349 movl %ecx,4(%esp)
3350 pslldq $8,%xmm7
3351 xorl %ecx,%edx
3352 xorl %esi,%edi
3353 rorl $6,%edx
3354 movl %ebx,%ecx
3355 addl %edi,%edx
3356 movl 24(%esp),%edi
3357 movl %ebx,%esi
3358 rorl $9,%ecx
3359 paddd %xmm7,%xmm0
3360 movl %ebx,20(%esp)
3361 xorl %ebx,%ecx
3362 xorl %edi,%ebx
3363 addl 16(%esp),%edx
3364 paddd %xmm0,%xmm6
3365 rorl $11,%ecx
3366 andl %ebx,%eax
3367 xorl %esi,%ecx
3368 addl 44(%esp),%edx
3369 xorl %edi,%eax
3370 rorl $2,%ecx
3371 addl %edx,%eax
3372 addl (%esp),%edx
3373 addl %ecx,%eax
3374 movdqa %xmm6,32(%esp)
3375 movl %edx,%ecx
3376 movdqa %xmm2,%xmm4
3377 rorl $14,%edx
3378 movl 4(%esp),%esi
3379 movdqa %xmm0,%xmm7
3380 xorl %ecx,%edx
3381 movl 8(%esp),%edi
3382.byte 102,15,58,15,225,4
3383 xorl %edi,%esi
3384 rorl $5,%edx
3385 andl %ecx,%esi
3386.byte 102,15,58,15,251,4
3387 movl %ecx,(%esp)
3388 xorl %ecx,%edx
3389 xorl %esi,%edi
3390 movdqa %xmm4,%xmm5
3391 rorl $6,%edx
3392 movl %eax,%ecx
3393 movdqa %xmm4,%xmm6
3394 addl %edi,%edx
3395 movl 20(%esp),%edi
3396 psrld $3,%xmm4
3397 movl %eax,%esi
3398 rorl $9,%ecx
3399 paddd %xmm7,%xmm1
3400 movl %eax,16(%esp)
3401 xorl %eax,%ecx
3402 psrld $7,%xmm6
3403 xorl %edi,%eax
3404 addl 12(%esp),%edx
3405 rorl $11,%ecx
3406 andl %eax,%ebx
3407 pshufd $250,%xmm0,%xmm7
3408 xorl %esi,%ecx
3409 addl 48(%esp),%edx
3410 pslld $14,%xmm5
3411 xorl %edi,%ebx
3412 rorl $2,%ecx
3413 pxor %xmm6,%xmm4
3414 addl %edx,%ebx
3415 addl 28(%esp),%edx
3416 psrld $11,%xmm6
3417 addl %ecx,%ebx
3418 movl %edx,%ecx
3419 rorl $14,%edx
3420 pxor %xmm5,%xmm4
3421 movl (%esp),%esi
3422 xorl %ecx,%edx
3423 pslld $11,%xmm5
3424 movl 4(%esp),%edi
3425 xorl %edi,%esi
3426 rorl $5,%edx
3427 pxor %xmm6,%xmm4
3428 andl %ecx,%esi
3429 movl %ecx,28(%esp)
3430 movdqa %xmm7,%xmm6
3431 xorl %ecx,%edx
3432 xorl %esi,%edi
3433 rorl $6,%edx
3434 pxor %xmm5,%xmm4
3435 movl %ebx,%ecx
3436 addl %edi,%edx
3437 psrld $10,%xmm7
3438 movl 16(%esp),%edi
3439 movl %ebx,%esi
3440 rorl $9,%ecx
3441 paddd %xmm4,%xmm1
3442 movl %ebx,12(%esp)
3443 xorl %ebx,%ecx
3444 psrlq $17,%xmm6
3445 xorl %edi,%ebx
3446 addl 8(%esp),%edx
3447 rorl $11,%ecx
3448 pxor %xmm6,%xmm7
3449 andl %ebx,%eax
3450 xorl %esi,%ecx
3451 psrlq $2,%xmm6
3452 addl 52(%esp),%edx
3453 xorl %edi,%eax
3454 rorl $2,%ecx
3455 pxor %xmm6,%xmm7
3456 addl %edx,%eax
3457 addl 24(%esp),%edx
3458 pshufd $128,%xmm7,%xmm7
3459 addl %ecx,%eax
3460 movl %edx,%ecx
3461 rorl $14,%edx
3462 movl 28(%esp),%esi
3463 xorl %ecx,%edx
3464 movl (%esp),%edi
3465 xorl %edi,%esi
3466 rorl $5,%edx
3467 andl %ecx,%esi
3468 psrldq $8,%xmm7
3469 movl %ecx,24(%esp)
3470 xorl %ecx,%edx
3471 xorl %esi,%edi
3472 paddd %xmm7,%xmm1
3473 rorl $6,%edx
3474 movl %eax,%ecx
3475 addl %edi,%edx
3476 movl 12(%esp),%edi
3477 movl %eax,%esi
3478 rorl $9,%ecx
3479 movl %eax,8(%esp)
3480 pshufd $80,%xmm1,%xmm7
3481 xorl %eax,%ecx
3482 xorl %edi,%eax
3483 addl 4(%esp),%edx
3484 movdqa %xmm7,%xmm6
3485 rorl $11,%ecx
3486 psrld $10,%xmm7
3487 andl %eax,%ebx
3488 psrlq $17,%xmm6
3489 xorl %esi,%ecx
3490 addl 56(%esp),%edx
3491 xorl %edi,%ebx
3492 rorl $2,%ecx
3493 pxor %xmm6,%xmm7
3494 addl %edx,%ebx
3495 addl 20(%esp),%edx
3496 psrlq $2,%xmm6
3497 addl %ecx,%ebx
3498 movl %edx,%ecx
3499 rorl $14,%edx
3500 pxor %xmm6,%xmm7
3501 movl 24(%esp),%esi
3502 xorl %ecx,%edx
3503 movl 28(%esp),%edi
3504 pshufd $8,%xmm7,%xmm7
3505 xorl %edi,%esi
3506 rorl $5,%edx
3507 movdqa 16(%ebp),%xmm6
3508 andl %ecx,%esi
3509 movl %ecx,20(%esp)
3510 pslldq $8,%xmm7
3511 xorl %ecx,%edx
3512 xorl %esi,%edi
3513 rorl $6,%edx
3514 movl %ebx,%ecx
3515 addl %edi,%edx
3516 movl 8(%esp),%edi
3517 movl %ebx,%esi
3518 rorl $9,%ecx
3519 paddd %xmm7,%xmm1
3520 movl %ebx,4(%esp)
3521 xorl %ebx,%ecx
3522 xorl %edi,%ebx
3523 addl (%esp),%edx
3524 paddd %xmm1,%xmm6
3525 rorl $11,%ecx
3526 andl %ebx,%eax
3527 xorl %esi,%ecx
3528 addl 60(%esp),%edx
3529 xorl %edi,%eax
3530 rorl $2,%ecx
3531 addl %edx,%eax
3532 addl 16(%esp),%edx
3533 addl %ecx,%eax
3534 movdqa %xmm6,48(%esp)
3535 movl %edx,%ecx
3536 movdqa %xmm3,%xmm4
3537 rorl $14,%edx
3538 movl 20(%esp),%esi
3539 movdqa %xmm1,%xmm7
3540 xorl %ecx,%edx
3541 movl 24(%esp),%edi
3542.byte 102,15,58,15,226,4
3543 xorl %edi,%esi
3544 rorl $5,%edx
3545 andl %ecx,%esi
3546.byte 102,15,58,15,248,4
3547 movl %ecx,16(%esp)
3548 xorl %ecx,%edx
3549 xorl %esi,%edi
3550 movdqa %xmm4,%xmm5
3551 rorl $6,%edx
3552 movl %eax,%ecx
3553 movdqa %xmm4,%xmm6
3554 addl %edi,%edx
3555 movl 4(%esp),%edi
3556 psrld $3,%xmm4
3557 movl %eax,%esi
3558 rorl $9,%ecx
3559 paddd %xmm7,%xmm2
3560 movl %eax,(%esp)
3561 xorl %eax,%ecx
3562 psrld $7,%xmm6
3563 xorl %edi,%eax
3564 addl 28(%esp),%edx
3565 rorl $11,%ecx
3566 andl %eax,%ebx
3567 pshufd $250,%xmm1,%xmm7
3568 xorl %esi,%ecx
3569 addl 64(%esp),%edx
3570 pslld $14,%xmm5
3571 xorl %edi,%ebx
3572 rorl $2,%ecx
3573 pxor %xmm6,%xmm4
3574 addl %edx,%ebx
3575 addl 12(%esp),%edx
3576 psrld $11,%xmm6
3577 addl %ecx,%ebx
3578 movl %edx,%ecx
3579 rorl $14,%edx
3580 pxor %xmm5,%xmm4
3581 movl 16(%esp),%esi
3582 xorl %ecx,%edx
3583 pslld $11,%xmm5
3584 movl 20(%esp),%edi
3585 xorl %edi,%esi
3586 rorl $5,%edx
3587 pxor %xmm6,%xmm4
3588 andl %ecx,%esi
3589 movl %ecx,12(%esp)
3590 movdqa %xmm7,%xmm6
3591 xorl %ecx,%edx
3592 xorl %esi,%edi
3593 rorl $6,%edx
3594 pxor %xmm5,%xmm4
3595 movl %ebx,%ecx
3596 addl %edi,%edx
3597 psrld $10,%xmm7
3598 movl (%esp),%edi
3599 movl %ebx,%esi
3600 rorl $9,%ecx
3601 paddd %xmm4,%xmm2
3602 movl %ebx,28(%esp)
3603 xorl %ebx,%ecx
3604 psrlq $17,%xmm6
3605 xorl %edi,%ebx
3606 addl 24(%esp),%edx
3607 rorl $11,%ecx
3608 pxor %xmm6,%xmm7
3609 andl %ebx,%eax
3610 xorl %esi,%ecx
3611 psrlq $2,%xmm6
3612 addl 68(%esp),%edx
3613 xorl %edi,%eax
3614 rorl $2,%ecx
3615 pxor %xmm6,%xmm7
3616 addl %edx,%eax
3617 addl 8(%esp),%edx
3618 pshufd $128,%xmm7,%xmm7
3619 addl %ecx,%eax
3620 movl %edx,%ecx
3621 rorl $14,%edx
3622 movl 12(%esp),%esi
3623 xorl %ecx,%edx
3624 movl 16(%esp),%edi
3625 xorl %edi,%esi
3626 rorl $5,%edx
3627 andl %ecx,%esi
3628 psrldq $8,%xmm7
3629 movl %ecx,8(%esp)
3630 xorl %ecx,%edx
3631 xorl %esi,%edi
3632 paddd %xmm7,%xmm2
3633 rorl $6,%edx
3634 movl %eax,%ecx
3635 addl %edi,%edx
3636 movl 28(%esp),%edi
3637 movl %eax,%esi
3638 rorl $9,%ecx
3639 movl %eax,24(%esp)
3640 pshufd $80,%xmm2,%xmm7
3641 xorl %eax,%ecx
3642 xorl %edi,%eax
3643 addl 20(%esp),%edx
3644 movdqa %xmm7,%xmm6
3645 rorl $11,%ecx
3646 psrld $10,%xmm7
3647 andl %eax,%ebx
3648 psrlq $17,%xmm6
3649 xorl %esi,%ecx
3650 addl 72(%esp),%edx
3651 xorl %edi,%ebx
3652 rorl $2,%ecx
3653 pxor %xmm6,%xmm7
3654 addl %edx,%ebx
3655 addl 4(%esp),%edx
3656 psrlq $2,%xmm6
3657 addl %ecx,%ebx
3658 movl %edx,%ecx
3659 rorl $14,%edx
3660 pxor %xmm6,%xmm7
3661 movl 8(%esp),%esi
3662 xorl %ecx,%edx
3663 movl 12(%esp),%edi
3664 pshufd $8,%xmm7,%xmm7
3665 xorl %edi,%esi
3666 rorl $5,%edx
3667 movdqa 32(%ebp),%xmm6
3668 andl %ecx,%esi
3669 movl %ecx,4(%esp)
3670 pslldq $8,%xmm7
3671 xorl %ecx,%edx
3672 xorl %esi,%edi
3673 rorl $6,%edx
3674 movl %ebx,%ecx
3675 addl %edi,%edx
3676 movl 24(%esp),%edi
3677 movl %ebx,%esi
3678 rorl $9,%ecx
3679 paddd %xmm7,%xmm2
3680 movl %ebx,20(%esp)
3681 xorl %ebx,%ecx
3682 xorl %edi,%ebx
3683 addl 16(%esp),%edx
3684 paddd %xmm2,%xmm6
3685 rorl $11,%ecx
3686 andl %ebx,%eax
3687 xorl %esi,%ecx
3688 addl 76(%esp),%edx
3689 xorl %edi,%eax
3690 rorl $2,%ecx
3691 addl %edx,%eax
3692 addl (%esp),%edx
3693 addl %ecx,%eax
3694 movdqa %xmm6,64(%esp)
3695 movl %edx,%ecx
3696 movdqa %xmm0,%xmm4
3697 rorl $14,%edx
3698 movl 4(%esp),%esi
3699 movdqa %xmm2,%xmm7
3700 xorl %ecx,%edx
3701 movl 8(%esp),%edi
3702.byte 102,15,58,15,227,4
3703 xorl %edi,%esi
3704 rorl $5,%edx
3705 andl %ecx,%esi
3706.byte 102,15,58,15,249,4
3707 movl %ecx,(%esp)
3708 xorl %ecx,%edx
3709 xorl %esi,%edi
3710 movdqa %xmm4,%xmm5
3711 rorl $6,%edx
3712 movl %eax,%ecx
3713 movdqa %xmm4,%xmm6
3714 addl %edi,%edx
3715 movl 20(%esp),%edi
3716 psrld $3,%xmm4
3717 movl %eax,%esi
3718 rorl $9,%ecx
3719 paddd %xmm7,%xmm3
3720 movl %eax,16(%esp)
3721 xorl %eax,%ecx
3722 psrld $7,%xmm6
3723 xorl %edi,%eax
3724 addl 12(%esp),%edx
3725 rorl $11,%ecx
3726 andl %eax,%ebx
3727 pshufd $250,%xmm2,%xmm7
3728 xorl %esi,%ecx
3729 addl 80(%esp),%edx
3730 pslld $14,%xmm5
3731 xorl %edi,%ebx
3732 rorl $2,%ecx
3733 pxor %xmm6,%xmm4
3734 addl %edx,%ebx
3735 addl 28(%esp),%edx
3736 psrld $11,%xmm6
3737 addl %ecx,%ebx
3738 movl %edx,%ecx
3739 rorl $14,%edx
3740 pxor %xmm5,%xmm4
3741 movl (%esp),%esi
3742 xorl %ecx,%edx
3743 pslld $11,%xmm5
3744 movl 4(%esp),%edi
3745 xorl %edi,%esi
3746 rorl $5,%edx
3747 pxor %xmm6,%xmm4
3748 andl %ecx,%esi
3749 movl %ecx,28(%esp)
3750 movdqa %xmm7,%xmm6
3751 xorl %ecx,%edx
3752 xorl %esi,%edi
3753 rorl $6,%edx
3754 pxor %xmm5,%xmm4
3755 movl %ebx,%ecx
3756 addl %edi,%edx
3757 psrld $10,%xmm7
3758 movl 16(%esp),%edi
3759 movl %ebx,%esi
3760 rorl $9,%ecx
3761 paddd %xmm4,%xmm3
3762 movl %ebx,12(%esp)
3763 xorl %ebx,%ecx
3764 psrlq $17,%xmm6
3765 xorl %edi,%ebx
3766 addl 8(%esp),%edx
3767 rorl $11,%ecx
3768 pxor %xmm6,%xmm7
3769 andl %ebx,%eax
3770 xorl %esi,%ecx
3771 psrlq $2,%xmm6
3772 addl 84(%esp),%edx
3773 xorl %edi,%eax
3774 rorl $2,%ecx
3775 pxor %xmm6,%xmm7
3776 addl %edx,%eax
3777 addl 24(%esp),%edx
3778 pshufd $128,%xmm7,%xmm7
3779 addl %ecx,%eax
3780 movl %edx,%ecx
3781 rorl $14,%edx
3782 movl 28(%esp),%esi
3783 xorl %ecx,%edx
3784 movl (%esp),%edi
3785 xorl %edi,%esi
3786 rorl $5,%edx
3787 andl %ecx,%esi
3788 psrldq $8,%xmm7
3789 movl %ecx,24(%esp)
3790 xorl %ecx,%edx
3791 xorl %esi,%edi
3792 paddd %xmm7,%xmm3
3793 rorl $6,%edx
3794 movl %eax,%ecx
3795 addl %edi,%edx
3796 movl 12(%esp),%edi
3797 movl %eax,%esi
3798 rorl $9,%ecx
3799 movl %eax,8(%esp)
3800 pshufd $80,%xmm3,%xmm7
3801 xorl %eax,%ecx
3802 xorl %edi,%eax
3803 addl 4(%esp),%edx
3804 movdqa %xmm7,%xmm6
3805 rorl $11,%ecx
3806 psrld $10,%xmm7
3807 andl %eax,%ebx
3808 psrlq $17,%xmm6
3809 xorl %esi,%ecx
3810 addl 88(%esp),%edx
3811 xorl %edi,%ebx
3812 rorl $2,%ecx
3813 pxor %xmm6,%xmm7
3814 addl %edx,%ebx
3815 addl 20(%esp),%edx
3816 psrlq $2,%xmm6
3817 addl %ecx,%ebx
3818 movl %edx,%ecx
3819 rorl $14,%edx
3820 pxor %xmm6,%xmm7
3821 movl 24(%esp),%esi
3822 xorl %ecx,%edx
3823 movl 28(%esp),%edi
3824 pshufd $8,%xmm7,%xmm7
3825 xorl %edi,%esi
3826 rorl $5,%edx
3827 movdqa 48(%ebp),%xmm6
3828 andl %ecx,%esi
3829 movl %ecx,20(%esp)
3830 pslldq $8,%xmm7
3831 xorl %ecx,%edx
3832 xorl %esi,%edi
3833 rorl $6,%edx
3834 movl %ebx,%ecx
3835 addl %edi,%edx
3836 movl 8(%esp),%edi
3837 movl %ebx,%esi
3838 rorl $9,%ecx
3839 paddd %xmm7,%xmm3
3840 movl %ebx,4(%esp)
3841 xorl %ebx,%ecx
3842 xorl %edi,%ebx
3843 addl (%esp),%edx
3844 paddd %xmm3,%xmm6
3845 rorl $11,%ecx
3846 andl %ebx,%eax
3847 xorl %esi,%ecx
3848 addl 92(%esp),%edx
3849 xorl %edi,%eax
3850 rorl $2,%ecx
3851 addl %edx,%eax
3852 addl 16(%esp),%edx
3853 addl %ecx,%eax
3854 movdqa %xmm6,80(%esp)
3855 cmpl $66051,64(%ebp)
Adam Langley4139edb2016-01-13 15:00:54 -08003856 jne L011ssse3_00_47
Adam Langleye9ada862015-05-11 17:20:37 -07003857 movl %edx,%ecx
3858 rorl $14,%edx
3859 movl 20(%esp),%esi
3860 xorl %ecx,%edx
3861 movl 24(%esp),%edi
3862 xorl %edi,%esi
3863 rorl $5,%edx
3864 andl %ecx,%esi
3865 movl %ecx,16(%esp)
3866 xorl %ecx,%edx
3867 xorl %esi,%edi
3868 rorl $6,%edx
3869 movl %eax,%ecx
3870 addl %edi,%edx
3871 movl 4(%esp),%edi
3872 movl %eax,%esi
3873 rorl $9,%ecx
3874 movl %eax,(%esp)
3875 xorl %eax,%ecx
3876 xorl %edi,%eax
3877 addl 28(%esp),%edx
3878 rorl $11,%ecx
3879 andl %eax,%ebx
3880 xorl %esi,%ecx
3881 addl 32(%esp),%edx
3882 xorl %edi,%ebx
3883 rorl $2,%ecx
3884 addl %edx,%ebx
3885 addl 12(%esp),%edx
3886 addl %ecx,%ebx
3887 movl %edx,%ecx
3888 rorl $14,%edx
3889 movl 16(%esp),%esi
3890 xorl %ecx,%edx
3891 movl 20(%esp),%edi
3892 xorl %edi,%esi
3893 rorl $5,%edx
3894 andl %ecx,%esi
3895 movl %ecx,12(%esp)
3896 xorl %ecx,%edx
3897 xorl %esi,%edi
3898 rorl $6,%edx
3899 movl %ebx,%ecx
3900 addl %edi,%edx
3901 movl (%esp),%edi
3902 movl %ebx,%esi
3903 rorl $9,%ecx
3904 movl %ebx,28(%esp)
3905 xorl %ebx,%ecx
3906 xorl %edi,%ebx
3907 addl 24(%esp),%edx
3908 rorl $11,%ecx
3909 andl %ebx,%eax
3910 xorl %esi,%ecx
3911 addl 36(%esp),%edx
3912 xorl %edi,%eax
3913 rorl $2,%ecx
3914 addl %edx,%eax
3915 addl 8(%esp),%edx
3916 addl %ecx,%eax
3917 movl %edx,%ecx
3918 rorl $14,%edx
3919 movl 12(%esp),%esi
3920 xorl %ecx,%edx
3921 movl 16(%esp),%edi
3922 xorl %edi,%esi
3923 rorl $5,%edx
3924 andl %ecx,%esi
3925 movl %ecx,8(%esp)
3926 xorl %ecx,%edx
3927 xorl %esi,%edi
3928 rorl $6,%edx
3929 movl %eax,%ecx
3930 addl %edi,%edx
3931 movl 28(%esp),%edi
3932 movl %eax,%esi
3933 rorl $9,%ecx
3934 movl %eax,24(%esp)
3935 xorl %eax,%ecx
3936 xorl %edi,%eax
3937 addl 20(%esp),%edx
3938 rorl $11,%ecx
3939 andl %eax,%ebx
3940 xorl %esi,%ecx
3941 addl 40(%esp),%edx
3942 xorl %edi,%ebx
3943 rorl $2,%ecx
3944 addl %edx,%ebx
3945 addl 4(%esp),%edx
3946 addl %ecx,%ebx
3947 movl %edx,%ecx
3948 rorl $14,%edx
3949 movl 8(%esp),%esi
3950 xorl %ecx,%edx
3951 movl 12(%esp),%edi
3952 xorl %edi,%esi
3953 rorl $5,%edx
3954 andl %ecx,%esi
3955 movl %ecx,4(%esp)
3956 xorl %ecx,%edx
3957 xorl %esi,%edi
3958 rorl $6,%edx
3959 movl %ebx,%ecx
3960 addl %edi,%edx
3961 movl 24(%esp),%edi
3962 movl %ebx,%esi
3963 rorl $9,%ecx
3964 movl %ebx,20(%esp)
3965 xorl %ebx,%ecx
3966 xorl %edi,%ebx
3967 addl 16(%esp),%edx
3968 rorl $11,%ecx
3969 andl %ebx,%eax
3970 xorl %esi,%ecx
3971 addl 44(%esp),%edx
3972 xorl %edi,%eax
3973 rorl $2,%ecx
3974 addl %edx,%eax
3975 addl (%esp),%edx
3976 addl %ecx,%eax
3977 movl %edx,%ecx
3978 rorl $14,%edx
3979 movl 4(%esp),%esi
3980 xorl %ecx,%edx
3981 movl 8(%esp),%edi
3982 xorl %edi,%esi
3983 rorl $5,%edx
3984 andl %ecx,%esi
3985 movl %ecx,(%esp)
3986 xorl %ecx,%edx
3987 xorl %esi,%edi
3988 rorl $6,%edx
3989 movl %eax,%ecx
3990 addl %edi,%edx
3991 movl 20(%esp),%edi
3992 movl %eax,%esi
3993 rorl $9,%ecx
3994 movl %eax,16(%esp)
3995 xorl %eax,%ecx
3996 xorl %edi,%eax
3997 addl 12(%esp),%edx
3998 rorl $11,%ecx
3999 andl %eax,%ebx
4000 xorl %esi,%ecx
4001 addl 48(%esp),%edx
4002 xorl %edi,%ebx
4003 rorl $2,%ecx
4004 addl %edx,%ebx
4005 addl 28(%esp),%edx
4006 addl %ecx,%ebx
4007 movl %edx,%ecx
4008 rorl $14,%edx
4009 movl (%esp),%esi
4010 xorl %ecx,%edx
4011 movl 4(%esp),%edi
4012 xorl %edi,%esi
4013 rorl $5,%edx
4014 andl %ecx,%esi
4015 movl %ecx,28(%esp)
4016 xorl %ecx,%edx
4017 xorl %esi,%edi
4018 rorl $6,%edx
4019 movl %ebx,%ecx
4020 addl %edi,%edx
4021 movl 16(%esp),%edi
4022 movl %ebx,%esi
4023 rorl $9,%ecx
4024 movl %ebx,12(%esp)
4025 xorl %ebx,%ecx
4026 xorl %edi,%ebx
4027 addl 8(%esp),%edx
4028 rorl $11,%ecx
4029 andl %ebx,%eax
4030 xorl %esi,%ecx
4031 addl 52(%esp),%edx
4032 xorl %edi,%eax
4033 rorl $2,%ecx
4034 addl %edx,%eax
4035 addl 24(%esp),%edx
4036 addl %ecx,%eax
4037 movl %edx,%ecx
4038 rorl $14,%edx
4039 movl 28(%esp),%esi
4040 xorl %ecx,%edx
4041 movl (%esp),%edi
4042 xorl %edi,%esi
4043 rorl $5,%edx
4044 andl %ecx,%esi
4045 movl %ecx,24(%esp)
4046 xorl %ecx,%edx
4047 xorl %esi,%edi
4048 rorl $6,%edx
4049 movl %eax,%ecx
4050 addl %edi,%edx
4051 movl 12(%esp),%edi
4052 movl %eax,%esi
4053 rorl $9,%ecx
4054 movl %eax,8(%esp)
4055 xorl %eax,%ecx
4056 xorl %edi,%eax
4057 addl 4(%esp),%edx
4058 rorl $11,%ecx
4059 andl %eax,%ebx
4060 xorl %esi,%ecx
4061 addl 56(%esp),%edx
4062 xorl %edi,%ebx
4063 rorl $2,%ecx
4064 addl %edx,%ebx
4065 addl 20(%esp),%edx
4066 addl %ecx,%ebx
4067 movl %edx,%ecx
4068 rorl $14,%edx
4069 movl 24(%esp),%esi
4070 xorl %ecx,%edx
4071 movl 28(%esp),%edi
4072 xorl %edi,%esi
4073 rorl $5,%edx
4074 andl %ecx,%esi
4075 movl %ecx,20(%esp)
4076 xorl %ecx,%edx
4077 xorl %esi,%edi
4078 rorl $6,%edx
4079 movl %ebx,%ecx
4080 addl %edi,%edx
4081 movl 8(%esp),%edi
4082 movl %ebx,%esi
4083 rorl $9,%ecx
4084 movl %ebx,4(%esp)
4085 xorl %ebx,%ecx
4086 xorl %edi,%ebx
4087 addl (%esp),%edx
4088 rorl $11,%ecx
4089 andl %ebx,%eax
4090 xorl %esi,%ecx
4091 addl 60(%esp),%edx
4092 xorl %edi,%eax
4093 rorl $2,%ecx
4094 addl %edx,%eax
4095 addl 16(%esp),%edx
4096 addl %ecx,%eax
4097 movl %edx,%ecx
4098 rorl $14,%edx
4099 movl 20(%esp),%esi
4100 xorl %ecx,%edx
4101 movl 24(%esp),%edi
4102 xorl %edi,%esi
4103 rorl $5,%edx
4104 andl %ecx,%esi
4105 movl %ecx,16(%esp)
4106 xorl %ecx,%edx
4107 xorl %esi,%edi
4108 rorl $6,%edx
4109 movl %eax,%ecx
4110 addl %edi,%edx
4111 movl 4(%esp),%edi
4112 movl %eax,%esi
4113 rorl $9,%ecx
4114 movl %eax,(%esp)
4115 xorl %eax,%ecx
4116 xorl %edi,%eax
4117 addl 28(%esp),%edx
4118 rorl $11,%ecx
4119 andl %eax,%ebx
4120 xorl %esi,%ecx
4121 addl 64(%esp),%edx
4122 xorl %edi,%ebx
4123 rorl $2,%ecx
4124 addl %edx,%ebx
4125 addl 12(%esp),%edx
4126 addl %ecx,%ebx
4127 movl %edx,%ecx
4128 rorl $14,%edx
4129 movl 16(%esp),%esi
4130 xorl %ecx,%edx
4131 movl 20(%esp),%edi
4132 xorl %edi,%esi
4133 rorl $5,%edx
4134 andl %ecx,%esi
4135 movl %ecx,12(%esp)
4136 xorl %ecx,%edx
4137 xorl %esi,%edi
4138 rorl $6,%edx
4139 movl %ebx,%ecx
4140 addl %edi,%edx
4141 movl (%esp),%edi
4142 movl %ebx,%esi
4143 rorl $9,%ecx
4144 movl %ebx,28(%esp)
4145 xorl %ebx,%ecx
4146 xorl %edi,%ebx
4147 addl 24(%esp),%edx
4148 rorl $11,%ecx
4149 andl %ebx,%eax
4150 xorl %esi,%ecx
4151 addl 68(%esp),%edx
4152 xorl %edi,%eax
4153 rorl $2,%ecx
4154 addl %edx,%eax
4155 addl 8(%esp),%edx
4156 addl %ecx,%eax
4157 movl %edx,%ecx
4158 rorl $14,%edx
4159 movl 12(%esp),%esi
4160 xorl %ecx,%edx
4161 movl 16(%esp),%edi
4162 xorl %edi,%esi
4163 rorl $5,%edx
4164 andl %ecx,%esi
4165 movl %ecx,8(%esp)
4166 xorl %ecx,%edx
4167 xorl %esi,%edi
4168 rorl $6,%edx
4169 movl %eax,%ecx
4170 addl %edi,%edx
4171 movl 28(%esp),%edi
4172 movl %eax,%esi
4173 rorl $9,%ecx
4174 movl %eax,24(%esp)
4175 xorl %eax,%ecx
4176 xorl %edi,%eax
4177 addl 20(%esp),%edx
4178 rorl $11,%ecx
4179 andl %eax,%ebx
4180 xorl %esi,%ecx
4181 addl 72(%esp),%edx
4182 xorl %edi,%ebx
4183 rorl $2,%ecx
4184 addl %edx,%ebx
4185 addl 4(%esp),%edx
4186 addl %ecx,%ebx
4187 movl %edx,%ecx
4188 rorl $14,%edx
4189 movl 8(%esp),%esi
4190 xorl %ecx,%edx
4191 movl 12(%esp),%edi
4192 xorl %edi,%esi
4193 rorl $5,%edx
4194 andl %ecx,%esi
4195 movl %ecx,4(%esp)
4196 xorl %ecx,%edx
4197 xorl %esi,%edi
4198 rorl $6,%edx
4199 movl %ebx,%ecx
4200 addl %edi,%edx
4201 movl 24(%esp),%edi
4202 movl %ebx,%esi
4203 rorl $9,%ecx
4204 movl %ebx,20(%esp)
4205 xorl %ebx,%ecx
4206 xorl %edi,%ebx
4207 addl 16(%esp),%edx
4208 rorl $11,%ecx
4209 andl %ebx,%eax
4210 xorl %esi,%ecx
4211 addl 76(%esp),%edx
4212 xorl %edi,%eax
4213 rorl $2,%ecx
4214 addl %edx,%eax
4215 addl (%esp),%edx
4216 addl %ecx,%eax
4217 movl %edx,%ecx
4218 rorl $14,%edx
4219 movl 4(%esp),%esi
4220 xorl %ecx,%edx
4221 movl 8(%esp),%edi
4222 xorl %edi,%esi
4223 rorl $5,%edx
4224 andl %ecx,%esi
4225 movl %ecx,(%esp)
4226 xorl %ecx,%edx
4227 xorl %esi,%edi
4228 rorl $6,%edx
4229 movl %eax,%ecx
4230 addl %edi,%edx
4231 movl 20(%esp),%edi
4232 movl %eax,%esi
4233 rorl $9,%ecx
4234 movl %eax,16(%esp)
4235 xorl %eax,%ecx
4236 xorl %edi,%eax
4237 addl 12(%esp),%edx
4238 rorl $11,%ecx
4239 andl %eax,%ebx
4240 xorl %esi,%ecx
4241 addl 80(%esp),%edx
4242 xorl %edi,%ebx
4243 rorl $2,%ecx
4244 addl %edx,%ebx
4245 addl 28(%esp),%edx
4246 addl %ecx,%ebx
4247 movl %edx,%ecx
4248 rorl $14,%edx
4249 movl (%esp),%esi
4250 xorl %ecx,%edx
4251 movl 4(%esp),%edi
4252 xorl %edi,%esi
4253 rorl $5,%edx
4254 andl %ecx,%esi
4255 movl %ecx,28(%esp)
4256 xorl %ecx,%edx
4257 xorl %esi,%edi
4258 rorl $6,%edx
4259 movl %ebx,%ecx
4260 addl %edi,%edx
4261 movl 16(%esp),%edi
4262 movl %ebx,%esi
4263 rorl $9,%ecx
4264 movl %ebx,12(%esp)
4265 xorl %ebx,%ecx
4266 xorl %edi,%ebx
4267 addl 8(%esp),%edx
4268 rorl $11,%ecx
4269 andl %ebx,%eax
4270 xorl %esi,%ecx
4271 addl 84(%esp),%edx
4272 xorl %edi,%eax
4273 rorl $2,%ecx
4274 addl %edx,%eax
4275 addl 24(%esp),%edx
4276 addl %ecx,%eax
4277 movl %edx,%ecx
4278 rorl $14,%edx
4279 movl 28(%esp),%esi
4280 xorl %ecx,%edx
4281 movl (%esp),%edi
4282 xorl %edi,%esi
4283 rorl $5,%edx
4284 andl %ecx,%esi
4285 movl %ecx,24(%esp)
4286 xorl %ecx,%edx
4287 xorl %esi,%edi
4288 rorl $6,%edx
4289 movl %eax,%ecx
4290 addl %edi,%edx
4291 movl 12(%esp),%edi
4292 movl %eax,%esi
4293 rorl $9,%ecx
4294 movl %eax,8(%esp)
4295 xorl %eax,%ecx
4296 xorl %edi,%eax
4297 addl 4(%esp),%edx
4298 rorl $11,%ecx
4299 andl %eax,%ebx
4300 xorl %esi,%ecx
4301 addl 88(%esp),%edx
4302 xorl %edi,%ebx
4303 rorl $2,%ecx
4304 addl %edx,%ebx
4305 addl 20(%esp),%edx
4306 addl %ecx,%ebx
4307 movl %edx,%ecx
4308 rorl $14,%edx
4309 movl 24(%esp),%esi
4310 xorl %ecx,%edx
4311 movl 28(%esp),%edi
4312 xorl %edi,%esi
4313 rorl $5,%edx
4314 andl %ecx,%esi
4315 movl %ecx,20(%esp)
4316 xorl %ecx,%edx
4317 xorl %esi,%edi
4318 rorl $6,%edx
4319 movl %ebx,%ecx
4320 addl %edi,%edx
4321 movl 8(%esp),%edi
4322 movl %ebx,%esi
4323 rorl $9,%ecx
4324 movl %ebx,4(%esp)
4325 xorl %ebx,%ecx
4326 xorl %edi,%ebx
4327 addl (%esp),%edx
4328 rorl $11,%ecx
4329 andl %ebx,%eax
4330 xorl %esi,%ecx
4331 addl 92(%esp),%edx
4332 xorl %edi,%eax
4333 rorl $2,%ecx
4334 addl %edx,%eax
4335 addl 16(%esp),%edx
4336 addl %ecx,%eax
4337 movl 96(%esp),%esi
4338 xorl %edi,%ebx
4339 movl 12(%esp),%ecx
4340 addl (%esi),%eax
4341 addl 4(%esi),%ebx
4342 addl 8(%esi),%edi
4343 addl 12(%esi),%ecx
4344 movl %eax,(%esi)
4345 movl %ebx,4(%esi)
4346 movl %edi,8(%esi)
4347 movl %ecx,12(%esi)
4348 movl %ebx,4(%esp)
4349 xorl %edi,%ebx
4350 movl %edi,8(%esp)
4351 movl %ecx,12(%esp)
4352 movl 20(%esp),%edi
4353 movl 24(%esp),%ecx
4354 addl 16(%esi),%edx
4355 addl 20(%esi),%edi
4356 addl 24(%esi),%ecx
4357 movl %edx,16(%esi)
4358 movl %edi,20(%esi)
4359 movl %edi,20(%esp)
4360 movl 28(%esp),%edi
4361 movl %ecx,24(%esi)
4362 addl 28(%esi),%edi
4363 movl %ecx,24(%esp)
4364 movl %edi,28(%esi)
4365 movl %edi,28(%esp)
4366 movl 100(%esp),%edi
4367 movdqa 64(%ebp),%xmm7
4368 subl $192,%ebp
4369 cmpl 104(%esp),%edi
Adam Langley4139edb2016-01-13 15:00:54 -08004370 jb L010grand_ssse3
Adam Langleye9ada862015-05-11 17:20:37 -07004371 movl 108(%esp),%esp
4372 popl %edi
4373 popl %esi
4374 popl %ebx
4375 popl %ebp
4376 ret
Adam Langley4139edb2016-01-13 15:00:54 -08004377.align 5,0x90
4378L004AVX:
4379 leal -96(%esp),%esp
4380 vzeroall
4381 movl (%esi),%eax
4382 movl 4(%esi),%ebx
4383 movl 8(%esi),%ecx
4384 movl 12(%esi),%edi
4385 movl %ebx,4(%esp)
4386 xorl %ecx,%ebx
4387 movl %ecx,8(%esp)
4388 movl %edi,12(%esp)
4389 movl 16(%esi),%edx
4390 movl 20(%esi),%edi
4391 movl 24(%esi),%ecx
4392 movl 28(%esi),%esi
4393 movl %edi,20(%esp)
4394 movl 100(%esp),%edi
4395 movl %ecx,24(%esp)
4396 movl %esi,28(%esp)
4397 vmovdqa 256(%ebp),%xmm7
4398 jmp L012grand_avx
4399.align 5,0x90
4400L012grand_avx:
4401 vmovdqu (%edi),%xmm0
4402 vmovdqu 16(%edi),%xmm1
4403 vmovdqu 32(%edi),%xmm2
4404 vmovdqu 48(%edi),%xmm3
4405 addl $64,%edi
4406 vpshufb %xmm7,%xmm0,%xmm0
4407 movl %edi,100(%esp)
4408 vpshufb %xmm7,%xmm1,%xmm1
4409 vpshufb %xmm7,%xmm2,%xmm2
4410 vpaddd (%ebp),%xmm0,%xmm4
4411 vpshufb %xmm7,%xmm3,%xmm3
4412 vpaddd 16(%ebp),%xmm1,%xmm5
4413 vpaddd 32(%ebp),%xmm2,%xmm6
4414 vpaddd 48(%ebp),%xmm3,%xmm7
4415 vmovdqa %xmm4,32(%esp)
4416 vmovdqa %xmm5,48(%esp)
4417 vmovdqa %xmm6,64(%esp)
4418 vmovdqa %xmm7,80(%esp)
4419 jmp L013avx_00_47
4420.align 4,0x90
4421L013avx_00_47:
4422 addl $64,%ebp
4423 vpalignr $4,%xmm0,%xmm1,%xmm4
4424 movl %edx,%ecx
4425 shrdl $14,%edx,%edx
4426 movl 20(%esp),%esi
4427 vpalignr $4,%xmm2,%xmm3,%xmm7
4428 xorl %ecx,%edx
4429 movl 24(%esp),%edi
4430 xorl %edi,%esi
4431 vpsrld $7,%xmm4,%xmm6
4432 shrdl $5,%edx,%edx
4433 andl %ecx,%esi
4434 movl %ecx,16(%esp)
4435 vpaddd %xmm7,%xmm0,%xmm0
4436 xorl %ecx,%edx
4437 xorl %esi,%edi
4438 shrdl $6,%edx,%edx
4439 vpsrld $3,%xmm4,%xmm7
4440 movl %eax,%ecx
4441 addl %edi,%edx
4442 movl 4(%esp),%edi
4443 vpslld $14,%xmm4,%xmm5
4444 movl %eax,%esi
4445 shrdl $9,%ecx,%ecx
4446 movl %eax,(%esp)
4447 vpxor %xmm6,%xmm7,%xmm4
4448 xorl %eax,%ecx
4449 xorl %edi,%eax
4450 addl 28(%esp),%edx
4451 vpshufd $250,%xmm3,%xmm7
4452 shrdl $11,%ecx,%ecx
4453 andl %eax,%ebx
4454 xorl %esi,%ecx
4455 vpsrld $11,%xmm6,%xmm6
4456 addl 32(%esp),%edx
4457 xorl %edi,%ebx
4458 shrdl $2,%ecx,%ecx
4459 vpxor %xmm5,%xmm4,%xmm4
4460 addl %edx,%ebx
4461 addl 12(%esp),%edx
4462 addl %ecx,%ebx
4463 vpslld $11,%xmm5,%xmm5
4464 movl %edx,%ecx
4465 shrdl $14,%edx,%edx
4466 movl 16(%esp),%esi
4467 vpxor %xmm6,%xmm4,%xmm4
4468 xorl %ecx,%edx
4469 movl 20(%esp),%edi
4470 xorl %edi,%esi
4471 vpsrld $10,%xmm7,%xmm6
4472 shrdl $5,%edx,%edx
4473 andl %ecx,%esi
4474 movl %ecx,12(%esp)
4475 vpxor %xmm5,%xmm4,%xmm4
4476 xorl %ecx,%edx
4477 xorl %esi,%edi
4478 shrdl $6,%edx,%edx
4479 vpsrlq $17,%xmm7,%xmm5
4480 movl %ebx,%ecx
4481 addl %edi,%edx
4482 movl (%esp),%edi
4483 vpaddd %xmm4,%xmm0,%xmm0
4484 movl %ebx,%esi
4485 shrdl $9,%ecx,%ecx
4486 movl %ebx,28(%esp)
4487 vpxor %xmm5,%xmm6,%xmm6
4488 xorl %ebx,%ecx
4489 xorl %edi,%ebx
4490 addl 24(%esp),%edx
4491 vpsrlq $19,%xmm7,%xmm7
4492 shrdl $11,%ecx,%ecx
4493 andl %ebx,%eax
4494 xorl %esi,%ecx
4495 vpxor %xmm7,%xmm6,%xmm6
4496 addl 36(%esp),%edx
4497 xorl %edi,%eax
4498 shrdl $2,%ecx,%ecx
4499 vpshufd $132,%xmm6,%xmm7
4500 addl %edx,%eax
4501 addl 8(%esp),%edx
4502 addl %ecx,%eax
4503 vpsrldq $8,%xmm7,%xmm7
4504 movl %edx,%ecx
4505 shrdl $14,%edx,%edx
4506 movl 12(%esp),%esi
4507 vpaddd %xmm7,%xmm0,%xmm0
4508 xorl %ecx,%edx
4509 movl 16(%esp),%edi
4510 xorl %edi,%esi
4511 vpshufd $80,%xmm0,%xmm7
4512 shrdl $5,%edx,%edx
4513 andl %ecx,%esi
4514 movl %ecx,8(%esp)
4515 vpsrld $10,%xmm7,%xmm6
4516 xorl %ecx,%edx
4517 xorl %esi,%edi
4518 shrdl $6,%edx,%edx
4519 vpsrlq $17,%xmm7,%xmm5
4520 movl %eax,%ecx
4521 addl %edi,%edx
4522 movl 28(%esp),%edi
4523 vpxor %xmm5,%xmm6,%xmm6
4524 movl %eax,%esi
4525 shrdl $9,%ecx,%ecx
4526 movl %eax,24(%esp)
4527 vpsrlq $19,%xmm7,%xmm7
4528 xorl %eax,%ecx
4529 xorl %edi,%eax
4530 addl 20(%esp),%edx
4531 vpxor %xmm7,%xmm6,%xmm6
4532 shrdl $11,%ecx,%ecx
4533 andl %eax,%ebx
4534 xorl %esi,%ecx
4535 vpshufd $232,%xmm6,%xmm7
4536 addl 40(%esp),%edx
4537 xorl %edi,%ebx
4538 shrdl $2,%ecx,%ecx
4539 vpslldq $8,%xmm7,%xmm7
4540 addl %edx,%ebx
4541 addl 4(%esp),%edx
4542 addl %ecx,%ebx
4543 vpaddd %xmm7,%xmm0,%xmm0
4544 movl %edx,%ecx
4545 shrdl $14,%edx,%edx
4546 movl 8(%esp),%esi
4547 vpaddd (%ebp),%xmm0,%xmm6
4548 xorl %ecx,%edx
4549 movl 12(%esp),%edi
4550 xorl %edi,%esi
4551 shrdl $5,%edx,%edx
4552 andl %ecx,%esi
4553 movl %ecx,4(%esp)
4554 xorl %ecx,%edx
4555 xorl %esi,%edi
4556 shrdl $6,%edx,%edx
4557 movl %ebx,%ecx
4558 addl %edi,%edx
4559 movl 24(%esp),%edi
4560 movl %ebx,%esi
4561 shrdl $9,%ecx,%ecx
4562 movl %ebx,20(%esp)
4563 xorl %ebx,%ecx
4564 xorl %edi,%ebx
4565 addl 16(%esp),%edx
4566 shrdl $11,%ecx,%ecx
4567 andl %ebx,%eax
4568 xorl %esi,%ecx
4569 addl 44(%esp),%edx
4570 xorl %edi,%eax
4571 shrdl $2,%ecx,%ecx
4572 addl %edx,%eax
4573 addl (%esp),%edx
4574 addl %ecx,%eax
4575 vmovdqa %xmm6,32(%esp)
4576 vpalignr $4,%xmm1,%xmm2,%xmm4
4577 movl %edx,%ecx
4578 shrdl $14,%edx,%edx
4579 movl 4(%esp),%esi
4580 vpalignr $4,%xmm3,%xmm0,%xmm7
4581 xorl %ecx,%edx
4582 movl 8(%esp),%edi
4583 xorl %edi,%esi
4584 vpsrld $7,%xmm4,%xmm6
4585 shrdl $5,%edx,%edx
4586 andl %ecx,%esi
4587 movl %ecx,(%esp)
4588 vpaddd %xmm7,%xmm1,%xmm1
4589 xorl %ecx,%edx
4590 xorl %esi,%edi
4591 shrdl $6,%edx,%edx
4592 vpsrld $3,%xmm4,%xmm7
4593 movl %eax,%ecx
4594 addl %edi,%edx
4595 movl 20(%esp),%edi
4596 vpslld $14,%xmm4,%xmm5
4597 movl %eax,%esi
4598 shrdl $9,%ecx,%ecx
4599 movl %eax,16(%esp)
4600 vpxor %xmm6,%xmm7,%xmm4
4601 xorl %eax,%ecx
4602 xorl %edi,%eax
4603 addl 12(%esp),%edx
4604 vpshufd $250,%xmm0,%xmm7
4605 shrdl $11,%ecx,%ecx
4606 andl %eax,%ebx
4607 xorl %esi,%ecx
4608 vpsrld $11,%xmm6,%xmm6
4609 addl 48(%esp),%edx
4610 xorl %edi,%ebx
4611 shrdl $2,%ecx,%ecx
4612 vpxor %xmm5,%xmm4,%xmm4
4613 addl %edx,%ebx
4614 addl 28(%esp),%edx
4615 addl %ecx,%ebx
4616 vpslld $11,%xmm5,%xmm5
4617 movl %edx,%ecx
4618 shrdl $14,%edx,%edx
4619 movl (%esp),%esi
4620 vpxor %xmm6,%xmm4,%xmm4
4621 xorl %ecx,%edx
4622 movl 4(%esp),%edi
4623 xorl %edi,%esi
4624 vpsrld $10,%xmm7,%xmm6
4625 shrdl $5,%edx,%edx
4626 andl %ecx,%esi
4627 movl %ecx,28(%esp)
4628 vpxor %xmm5,%xmm4,%xmm4
4629 xorl %ecx,%edx
4630 xorl %esi,%edi
4631 shrdl $6,%edx,%edx
4632 vpsrlq $17,%xmm7,%xmm5
4633 movl %ebx,%ecx
4634 addl %edi,%edx
4635 movl 16(%esp),%edi
4636 vpaddd %xmm4,%xmm1,%xmm1
4637 movl %ebx,%esi
4638 shrdl $9,%ecx,%ecx
4639 movl %ebx,12(%esp)
4640 vpxor %xmm5,%xmm6,%xmm6
4641 xorl %ebx,%ecx
4642 xorl %edi,%ebx
4643 addl 8(%esp),%edx
4644 vpsrlq $19,%xmm7,%xmm7
4645 shrdl $11,%ecx,%ecx
4646 andl %ebx,%eax
4647 xorl %esi,%ecx
4648 vpxor %xmm7,%xmm6,%xmm6
4649 addl 52(%esp),%edx
4650 xorl %edi,%eax
4651 shrdl $2,%ecx,%ecx
4652 vpshufd $132,%xmm6,%xmm7
4653 addl %edx,%eax
4654 addl 24(%esp),%edx
4655 addl %ecx,%eax
4656 vpsrldq $8,%xmm7,%xmm7
4657 movl %edx,%ecx
4658 shrdl $14,%edx,%edx
4659 movl 28(%esp),%esi
4660 vpaddd %xmm7,%xmm1,%xmm1
4661 xorl %ecx,%edx
4662 movl (%esp),%edi
4663 xorl %edi,%esi
4664 vpshufd $80,%xmm1,%xmm7
4665 shrdl $5,%edx,%edx
4666 andl %ecx,%esi
4667 movl %ecx,24(%esp)
4668 vpsrld $10,%xmm7,%xmm6
4669 xorl %ecx,%edx
4670 xorl %esi,%edi
4671 shrdl $6,%edx,%edx
4672 vpsrlq $17,%xmm7,%xmm5
4673 movl %eax,%ecx
4674 addl %edi,%edx
4675 movl 12(%esp),%edi
4676 vpxor %xmm5,%xmm6,%xmm6
4677 movl %eax,%esi
4678 shrdl $9,%ecx,%ecx
4679 movl %eax,8(%esp)
4680 vpsrlq $19,%xmm7,%xmm7
4681 xorl %eax,%ecx
4682 xorl %edi,%eax
4683 addl 4(%esp),%edx
4684 vpxor %xmm7,%xmm6,%xmm6
4685 shrdl $11,%ecx,%ecx
4686 andl %eax,%ebx
4687 xorl %esi,%ecx
4688 vpshufd $232,%xmm6,%xmm7
4689 addl 56(%esp),%edx
4690 xorl %edi,%ebx
4691 shrdl $2,%ecx,%ecx
4692 vpslldq $8,%xmm7,%xmm7
4693 addl %edx,%ebx
4694 addl 20(%esp),%edx
4695 addl %ecx,%ebx
4696 vpaddd %xmm7,%xmm1,%xmm1
4697 movl %edx,%ecx
4698 shrdl $14,%edx,%edx
4699 movl 24(%esp),%esi
4700 vpaddd 16(%ebp),%xmm1,%xmm6
4701 xorl %ecx,%edx
4702 movl 28(%esp),%edi
4703 xorl %edi,%esi
4704 shrdl $5,%edx,%edx
4705 andl %ecx,%esi
4706 movl %ecx,20(%esp)
4707 xorl %ecx,%edx
4708 xorl %esi,%edi
4709 shrdl $6,%edx,%edx
4710 movl %ebx,%ecx
4711 addl %edi,%edx
4712 movl 8(%esp),%edi
4713 movl %ebx,%esi
4714 shrdl $9,%ecx,%ecx
4715 movl %ebx,4(%esp)
4716 xorl %ebx,%ecx
4717 xorl %edi,%ebx
4718 addl (%esp),%edx
4719 shrdl $11,%ecx,%ecx
4720 andl %ebx,%eax
4721 xorl %esi,%ecx
4722 addl 60(%esp),%edx
4723 xorl %edi,%eax
4724 shrdl $2,%ecx,%ecx
4725 addl %edx,%eax
4726 addl 16(%esp),%edx
4727 addl %ecx,%eax
4728 vmovdqa %xmm6,48(%esp)
4729 vpalignr $4,%xmm2,%xmm3,%xmm4
4730 movl %edx,%ecx
4731 shrdl $14,%edx,%edx
4732 movl 20(%esp),%esi
4733 vpalignr $4,%xmm0,%xmm1,%xmm7
4734 xorl %ecx,%edx
4735 movl 24(%esp),%edi
4736 xorl %edi,%esi
4737 vpsrld $7,%xmm4,%xmm6
4738 shrdl $5,%edx,%edx
4739 andl %ecx,%esi
4740 movl %ecx,16(%esp)
4741 vpaddd %xmm7,%xmm2,%xmm2
4742 xorl %ecx,%edx
4743 xorl %esi,%edi
4744 shrdl $6,%edx,%edx
4745 vpsrld $3,%xmm4,%xmm7
4746 movl %eax,%ecx
4747 addl %edi,%edx
4748 movl 4(%esp),%edi
4749 vpslld $14,%xmm4,%xmm5
4750 movl %eax,%esi
4751 shrdl $9,%ecx,%ecx
4752 movl %eax,(%esp)
4753 vpxor %xmm6,%xmm7,%xmm4
4754 xorl %eax,%ecx
4755 xorl %edi,%eax
4756 addl 28(%esp),%edx
4757 vpshufd $250,%xmm1,%xmm7
4758 shrdl $11,%ecx,%ecx
4759 andl %eax,%ebx
4760 xorl %esi,%ecx
4761 vpsrld $11,%xmm6,%xmm6
4762 addl 64(%esp),%edx
4763 xorl %edi,%ebx
4764 shrdl $2,%ecx,%ecx
4765 vpxor %xmm5,%xmm4,%xmm4
4766 addl %edx,%ebx
4767 addl 12(%esp),%edx
4768 addl %ecx,%ebx
4769 vpslld $11,%xmm5,%xmm5
4770 movl %edx,%ecx
4771 shrdl $14,%edx,%edx
4772 movl 16(%esp),%esi
4773 vpxor %xmm6,%xmm4,%xmm4
4774 xorl %ecx,%edx
4775 movl 20(%esp),%edi
4776 xorl %edi,%esi
4777 vpsrld $10,%xmm7,%xmm6
4778 shrdl $5,%edx,%edx
4779 andl %ecx,%esi
4780 movl %ecx,12(%esp)
4781 vpxor %xmm5,%xmm4,%xmm4
4782 xorl %ecx,%edx
4783 xorl %esi,%edi
4784 shrdl $6,%edx,%edx
4785 vpsrlq $17,%xmm7,%xmm5
4786 movl %ebx,%ecx
4787 addl %edi,%edx
4788 movl (%esp),%edi
4789 vpaddd %xmm4,%xmm2,%xmm2
4790 movl %ebx,%esi
4791 shrdl $9,%ecx,%ecx
4792 movl %ebx,28(%esp)
4793 vpxor %xmm5,%xmm6,%xmm6
4794 xorl %ebx,%ecx
4795 xorl %edi,%ebx
4796 addl 24(%esp),%edx
4797 vpsrlq $19,%xmm7,%xmm7
4798 shrdl $11,%ecx,%ecx
4799 andl %ebx,%eax
4800 xorl %esi,%ecx
4801 vpxor %xmm7,%xmm6,%xmm6
4802 addl 68(%esp),%edx
4803 xorl %edi,%eax
4804 shrdl $2,%ecx,%ecx
4805 vpshufd $132,%xmm6,%xmm7
4806 addl %edx,%eax
4807 addl 8(%esp),%edx
4808 addl %ecx,%eax
4809 vpsrldq $8,%xmm7,%xmm7
4810 movl %edx,%ecx
4811 shrdl $14,%edx,%edx
4812 movl 12(%esp),%esi
4813 vpaddd %xmm7,%xmm2,%xmm2
4814 xorl %ecx,%edx
4815 movl 16(%esp),%edi
4816 xorl %edi,%esi
4817 vpshufd $80,%xmm2,%xmm7
4818 shrdl $5,%edx,%edx
4819 andl %ecx,%esi
4820 movl %ecx,8(%esp)
4821 vpsrld $10,%xmm7,%xmm6
4822 xorl %ecx,%edx
4823 xorl %esi,%edi
4824 shrdl $6,%edx,%edx
4825 vpsrlq $17,%xmm7,%xmm5
4826 movl %eax,%ecx
4827 addl %edi,%edx
4828 movl 28(%esp),%edi
4829 vpxor %xmm5,%xmm6,%xmm6
4830 movl %eax,%esi
4831 shrdl $9,%ecx,%ecx
4832 movl %eax,24(%esp)
4833 vpsrlq $19,%xmm7,%xmm7
4834 xorl %eax,%ecx
4835 xorl %edi,%eax
4836 addl 20(%esp),%edx
4837 vpxor %xmm7,%xmm6,%xmm6
4838 shrdl $11,%ecx,%ecx
4839 andl %eax,%ebx
4840 xorl %esi,%ecx
4841 vpshufd $232,%xmm6,%xmm7
4842 addl 72(%esp),%edx
4843 xorl %edi,%ebx
4844 shrdl $2,%ecx,%ecx
4845 vpslldq $8,%xmm7,%xmm7
4846 addl %edx,%ebx
4847 addl 4(%esp),%edx
4848 addl %ecx,%ebx
4849 vpaddd %xmm7,%xmm2,%xmm2
4850 movl %edx,%ecx
4851 shrdl $14,%edx,%edx
4852 movl 8(%esp),%esi
4853 vpaddd 32(%ebp),%xmm2,%xmm6
4854 xorl %ecx,%edx
4855 movl 12(%esp),%edi
4856 xorl %edi,%esi
4857 shrdl $5,%edx,%edx
4858 andl %ecx,%esi
4859 movl %ecx,4(%esp)
4860 xorl %ecx,%edx
4861 xorl %esi,%edi
4862 shrdl $6,%edx,%edx
4863 movl %ebx,%ecx
4864 addl %edi,%edx
4865 movl 24(%esp),%edi
4866 movl %ebx,%esi
4867 shrdl $9,%ecx,%ecx
4868 movl %ebx,20(%esp)
4869 xorl %ebx,%ecx
4870 xorl %edi,%ebx
4871 addl 16(%esp),%edx
4872 shrdl $11,%ecx,%ecx
4873 andl %ebx,%eax
4874 xorl %esi,%ecx
4875 addl 76(%esp),%edx
4876 xorl %edi,%eax
4877 shrdl $2,%ecx,%ecx
4878 addl %edx,%eax
4879 addl (%esp),%edx
4880 addl %ecx,%eax
4881 vmovdqa %xmm6,64(%esp)
4882 vpalignr $4,%xmm3,%xmm0,%xmm4
4883 movl %edx,%ecx
4884 shrdl $14,%edx,%edx
4885 movl 4(%esp),%esi
4886 vpalignr $4,%xmm1,%xmm2,%xmm7
4887 xorl %ecx,%edx
4888 movl 8(%esp),%edi
4889 xorl %edi,%esi
4890 vpsrld $7,%xmm4,%xmm6
4891 shrdl $5,%edx,%edx
4892 andl %ecx,%esi
4893 movl %ecx,(%esp)
4894 vpaddd %xmm7,%xmm3,%xmm3
4895 xorl %ecx,%edx
4896 xorl %esi,%edi
4897 shrdl $6,%edx,%edx
4898 vpsrld $3,%xmm4,%xmm7
4899 movl %eax,%ecx
4900 addl %edi,%edx
4901 movl 20(%esp),%edi
4902 vpslld $14,%xmm4,%xmm5
4903 movl %eax,%esi
4904 shrdl $9,%ecx,%ecx
4905 movl %eax,16(%esp)
4906 vpxor %xmm6,%xmm7,%xmm4
4907 xorl %eax,%ecx
4908 xorl %edi,%eax
4909 addl 12(%esp),%edx
4910 vpshufd $250,%xmm2,%xmm7
4911 shrdl $11,%ecx,%ecx
4912 andl %eax,%ebx
4913 xorl %esi,%ecx
4914 vpsrld $11,%xmm6,%xmm6
4915 addl 80(%esp),%edx
4916 xorl %edi,%ebx
4917 shrdl $2,%ecx,%ecx
4918 vpxor %xmm5,%xmm4,%xmm4
4919 addl %edx,%ebx
4920 addl 28(%esp),%edx
4921 addl %ecx,%ebx
4922 vpslld $11,%xmm5,%xmm5
4923 movl %edx,%ecx
4924 shrdl $14,%edx,%edx
4925 movl (%esp),%esi
4926 vpxor %xmm6,%xmm4,%xmm4
4927 xorl %ecx,%edx
4928 movl 4(%esp),%edi
4929 xorl %edi,%esi
4930 vpsrld $10,%xmm7,%xmm6
4931 shrdl $5,%edx,%edx
4932 andl %ecx,%esi
4933 movl %ecx,28(%esp)
4934 vpxor %xmm5,%xmm4,%xmm4
4935 xorl %ecx,%edx
4936 xorl %esi,%edi
4937 shrdl $6,%edx,%edx
4938 vpsrlq $17,%xmm7,%xmm5
4939 movl %ebx,%ecx
4940 addl %edi,%edx
4941 movl 16(%esp),%edi
4942 vpaddd %xmm4,%xmm3,%xmm3
4943 movl %ebx,%esi
4944 shrdl $9,%ecx,%ecx
4945 movl %ebx,12(%esp)
4946 vpxor %xmm5,%xmm6,%xmm6
4947 xorl %ebx,%ecx
4948 xorl %edi,%ebx
4949 addl 8(%esp),%edx
4950 vpsrlq $19,%xmm7,%xmm7
4951 shrdl $11,%ecx,%ecx
4952 andl %ebx,%eax
4953 xorl %esi,%ecx
4954 vpxor %xmm7,%xmm6,%xmm6
4955 addl 84(%esp),%edx
4956 xorl %edi,%eax
4957 shrdl $2,%ecx,%ecx
4958 vpshufd $132,%xmm6,%xmm7
4959 addl %edx,%eax
4960 addl 24(%esp),%edx
4961 addl %ecx,%eax
4962 vpsrldq $8,%xmm7,%xmm7
4963 movl %edx,%ecx
4964 shrdl $14,%edx,%edx
4965 movl 28(%esp),%esi
4966 vpaddd %xmm7,%xmm3,%xmm3
4967 xorl %ecx,%edx
4968 movl (%esp),%edi
4969 xorl %edi,%esi
4970 vpshufd $80,%xmm3,%xmm7
4971 shrdl $5,%edx,%edx
4972 andl %ecx,%esi
4973 movl %ecx,24(%esp)
4974 vpsrld $10,%xmm7,%xmm6
4975 xorl %ecx,%edx
4976 xorl %esi,%edi
4977 shrdl $6,%edx,%edx
4978 vpsrlq $17,%xmm7,%xmm5
4979 movl %eax,%ecx
4980 addl %edi,%edx
4981 movl 12(%esp),%edi
4982 vpxor %xmm5,%xmm6,%xmm6
4983 movl %eax,%esi
4984 shrdl $9,%ecx,%ecx
4985 movl %eax,8(%esp)
4986 vpsrlq $19,%xmm7,%xmm7
4987 xorl %eax,%ecx
4988 xorl %edi,%eax
4989 addl 4(%esp),%edx
4990 vpxor %xmm7,%xmm6,%xmm6
4991 shrdl $11,%ecx,%ecx
4992 andl %eax,%ebx
4993 xorl %esi,%ecx
4994 vpshufd $232,%xmm6,%xmm7
4995 addl 88(%esp),%edx
4996 xorl %edi,%ebx
4997 shrdl $2,%ecx,%ecx
4998 vpslldq $8,%xmm7,%xmm7
4999 addl %edx,%ebx
5000 addl 20(%esp),%edx
5001 addl %ecx,%ebx
5002 vpaddd %xmm7,%xmm3,%xmm3
5003 movl %edx,%ecx
5004 shrdl $14,%edx,%edx
5005 movl 24(%esp),%esi
5006 vpaddd 48(%ebp),%xmm3,%xmm6
5007 xorl %ecx,%edx
5008 movl 28(%esp),%edi
5009 xorl %edi,%esi
5010 shrdl $5,%edx,%edx
5011 andl %ecx,%esi
5012 movl %ecx,20(%esp)
5013 xorl %ecx,%edx
5014 xorl %esi,%edi
5015 shrdl $6,%edx,%edx
5016 movl %ebx,%ecx
5017 addl %edi,%edx
5018 movl 8(%esp),%edi
5019 movl %ebx,%esi
5020 shrdl $9,%ecx,%ecx
5021 movl %ebx,4(%esp)
5022 xorl %ebx,%ecx
5023 xorl %edi,%ebx
5024 addl (%esp),%edx
5025 shrdl $11,%ecx,%ecx
5026 andl %ebx,%eax
5027 xorl %esi,%ecx
5028 addl 92(%esp),%edx
5029 xorl %edi,%eax
5030 shrdl $2,%ecx,%ecx
5031 addl %edx,%eax
5032 addl 16(%esp),%edx
5033 addl %ecx,%eax
5034 vmovdqa %xmm6,80(%esp)
5035 cmpl $66051,64(%ebp)
5036 jne L013avx_00_47
5037 movl %edx,%ecx
5038 shrdl $14,%edx,%edx
5039 movl 20(%esp),%esi
5040 xorl %ecx,%edx
5041 movl 24(%esp),%edi
5042 xorl %edi,%esi
5043 shrdl $5,%edx,%edx
5044 andl %ecx,%esi
5045 movl %ecx,16(%esp)
5046 xorl %ecx,%edx
5047 xorl %esi,%edi
5048 shrdl $6,%edx,%edx
5049 movl %eax,%ecx
5050 addl %edi,%edx
5051 movl 4(%esp),%edi
5052 movl %eax,%esi
5053 shrdl $9,%ecx,%ecx
5054 movl %eax,(%esp)
5055 xorl %eax,%ecx
5056 xorl %edi,%eax
5057 addl 28(%esp),%edx
5058 shrdl $11,%ecx,%ecx
5059 andl %eax,%ebx
5060 xorl %esi,%ecx
5061 addl 32(%esp),%edx
5062 xorl %edi,%ebx
5063 shrdl $2,%ecx,%ecx
5064 addl %edx,%ebx
5065 addl 12(%esp),%edx
5066 addl %ecx,%ebx
5067 movl %edx,%ecx
5068 shrdl $14,%edx,%edx
5069 movl 16(%esp),%esi
5070 xorl %ecx,%edx
5071 movl 20(%esp),%edi
5072 xorl %edi,%esi
5073 shrdl $5,%edx,%edx
5074 andl %ecx,%esi
5075 movl %ecx,12(%esp)
5076 xorl %ecx,%edx
5077 xorl %esi,%edi
5078 shrdl $6,%edx,%edx
5079 movl %ebx,%ecx
5080 addl %edi,%edx
5081 movl (%esp),%edi
5082 movl %ebx,%esi
5083 shrdl $9,%ecx,%ecx
5084 movl %ebx,28(%esp)
5085 xorl %ebx,%ecx
5086 xorl %edi,%ebx
5087 addl 24(%esp),%edx
5088 shrdl $11,%ecx,%ecx
5089 andl %ebx,%eax
5090 xorl %esi,%ecx
5091 addl 36(%esp),%edx
5092 xorl %edi,%eax
5093 shrdl $2,%ecx,%ecx
5094 addl %edx,%eax
5095 addl 8(%esp),%edx
5096 addl %ecx,%eax
5097 movl %edx,%ecx
5098 shrdl $14,%edx,%edx
5099 movl 12(%esp),%esi
5100 xorl %ecx,%edx
5101 movl 16(%esp),%edi
5102 xorl %edi,%esi
5103 shrdl $5,%edx,%edx
5104 andl %ecx,%esi
5105 movl %ecx,8(%esp)
5106 xorl %ecx,%edx
5107 xorl %esi,%edi
5108 shrdl $6,%edx,%edx
5109 movl %eax,%ecx
5110 addl %edi,%edx
5111 movl 28(%esp),%edi
5112 movl %eax,%esi
5113 shrdl $9,%ecx,%ecx
5114 movl %eax,24(%esp)
5115 xorl %eax,%ecx
5116 xorl %edi,%eax
5117 addl 20(%esp),%edx
5118 shrdl $11,%ecx,%ecx
5119 andl %eax,%ebx
5120 xorl %esi,%ecx
5121 addl 40(%esp),%edx
5122 xorl %edi,%ebx
5123 shrdl $2,%ecx,%ecx
5124 addl %edx,%ebx
5125 addl 4(%esp),%edx
5126 addl %ecx,%ebx
5127 movl %edx,%ecx
5128 shrdl $14,%edx,%edx
5129 movl 8(%esp),%esi
5130 xorl %ecx,%edx
5131 movl 12(%esp),%edi
5132 xorl %edi,%esi
5133 shrdl $5,%edx,%edx
5134 andl %ecx,%esi
5135 movl %ecx,4(%esp)
5136 xorl %ecx,%edx
5137 xorl %esi,%edi
5138 shrdl $6,%edx,%edx
5139 movl %ebx,%ecx
5140 addl %edi,%edx
5141 movl 24(%esp),%edi
5142 movl %ebx,%esi
5143 shrdl $9,%ecx,%ecx
5144 movl %ebx,20(%esp)
5145 xorl %ebx,%ecx
5146 xorl %edi,%ebx
5147 addl 16(%esp),%edx
5148 shrdl $11,%ecx,%ecx
5149 andl %ebx,%eax
5150 xorl %esi,%ecx
5151 addl 44(%esp),%edx
5152 xorl %edi,%eax
5153 shrdl $2,%ecx,%ecx
5154 addl %edx,%eax
5155 addl (%esp),%edx
5156 addl %ecx,%eax
5157 movl %edx,%ecx
5158 shrdl $14,%edx,%edx
5159 movl 4(%esp),%esi
5160 xorl %ecx,%edx
5161 movl 8(%esp),%edi
5162 xorl %edi,%esi
5163 shrdl $5,%edx,%edx
5164 andl %ecx,%esi
5165 movl %ecx,(%esp)
5166 xorl %ecx,%edx
5167 xorl %esi,%edi
5168 shrdl $6,%edx,%edx
5169 movl %eax,%ecx
5170 addl %edi,%edx
5171 movl 20(%esp),%edi
5172 movl %eax,%esi
5173 shrdl $9,%ecx,%ecx
5174 movl %eax,16(%esp)
5175 xorl %eax,%ecx
5176 xorl %edi,%eax
5177 addl 12(%esp),%edx
5178 shrdl $11,%ecx,%ecx
5179 andl %eax,%ebx
5180 xorl %esi,%ecx
5181 addl 48(%esp),%edx
5182 xorl %edi,%ebx
5183 shrdl $2,%ecx,%ecx
5184 addl %edx,%ebx
5185 addl 28(%esp),%edx
5186 addl %ecx,%ebx
5187 movl %edx,%ecx
5188 shrdl $14,%edx,%edx
5189 movl (%esp),%esi
5190 xorl %ecx,%edx
5191 movl 4(%esp),%edi
5192 xorl %edi,%esi
5193 shrdl $5,%edx,%edx
5194 andl %ecx,%esi
5195 movl %ecx,28(%esp)
5196 xorl %ecx,%edx
5197 xorl %esi,%edi
5198 shrdl $6,%edx,%edx
5199 movl %ebx,%ecx
5200 addl %edi,%edx
5201 movl 16(%esp),%edi
5202 movl %ebx,%esi
5203 shrdl $9,%ecx,%ecx
5204 movl %ebx,12(%esp)
5205 xorl %ebx,%ecx
5206 xorl %edi,%ebx
5207 addl 8(%esp),%edx
5208 shrdl $11,%ecx,%ecx
5209 andl %ebx,%eax
5210 xorl %esi,%ecx
5211 addl 52(%esp),%edx
5212 xorl %edi,%eax
5213 shrdl $2,%ecx,%ecx
5214 addl %edx,%eax
5215 addl 24(%esp),%edx
5216 addl %ecx,%eax
5217 movl %edx,%ecx
5218 shrdl $14,%edx,%edx
5219 movl 28(%esp),%esi
5220 xorl %ecx,%edx
5221 movl (%esp),%edi
5222 xorl %edi,%esi
5223 shrdl $5,%edx,%edx
5224 andl %ecx,%esi
5225 movl %ecx,24(%esp)
5226 xorl %ecx,%edx
5227 xorl %esi,%edi
5228 shrdl $6,%edx,%edx
5229 movl %eax,%ecx
5230 addl %edi,%edx
5231 movl 12(%esp),%edi
5232 movl %eax,%esi
5233 shrdl $9,%ecx,%ecx
5234 movl %eax,8(%esp)
5235 xorl %eax,%ecx
5236 xorl %edi,%eax
5237 addl 4(%esp),%edx
5238 shrdl $11,%ecx,%ecx
5239 andl %eax,%ebx
5240 xorl %esi,%ecx
5241 addl 56(%esp),%edx
5242 xorl %edi,%ebx
5243 shrdl $2,%ecx,%ecx
5244 addl %edx,%ebx
5245 addl 20(%esp),%edx
5246 addl %ecx,%ebx
5247 movl %edx,%ecx
5248 shrdl $14,%edx,%edx
5249 movl 24(%esp),%esi
5250 xorl %ecx,%edx
5251 movl 28(%esp),%edi
5252 xorl %edi,%esi
5253 shrdl $5,%edx,%edx
5254 andl %ecx,%esi
5255 movl %ecx,20(%esp)
5256 xorl %ecx,%edx
5257 xorl %esi,%edi
5258 shrdl $6,%edx,%edx
5259 movl %ebx,%ecx
5260 addl %edi,%edx
5261 movl 8(%esp),%edi
5262 movl %ebx,%esi
5263 shrdl $9,%ecx,%ecx
5264 movl %ebx,4(%esp)
5265 xorl %ebx,%ecx
5266 xorl %edi,%ebx
5267 addl (%esp),%edx
5268 shrdl $11,%ecx,%ecx
5269 andl %ebx,%eax
5270 xorl %esi,%ecx
5271 addl 60(%esp),%edx
5272 xorl %edi,%eax
5273 shrdl $2,%ecx,%ecx
5274 addl %edx,%eax
5275 addl 16(%esp),%edx
5276 addl %ecx,%eax
5277 movl %edx,%ecx
5278 shrdl $14,%edx,%edx
5279 movl 20(%esp),%esi
5280 xorl %ecx,%edx
5281 movl 24(%esp),%edi
5282 xorl %edi,%esi
5283 shrdl $5,%edx,%edx
5284 andl %ecx,%esi
5285 movl %ecx,16(%esp)
5286 xorl %ecx,%edx
5287 xorl %esi,%edi
5288 shrdl $6,%edx,%edx
5289 movl %eax,%ecx
5290 addl %edi,%edx
5291 movl 4(%esp),%edi
5292 movl %eax,%esi
5293 shrdl $9,%ecx,%ecx
5294 movl %eax,(%esp)
5295 xorl %eax,%ecx
5296 xorl %edi,%eax
5297 addl 28(%esp),%edx
5298 shrdl $11,%ecx,%ecx
5299 andl %eax,%ebx
5300 xorl %esi,%ecx
5301 addl 64(%esp),%edx
5302 xorl %edi,%ebx
5303 shrdl $2,%ecx,%ecx
5304 addl %edx,%ebx
5305 addl 12(%esp),%edx
5306 addl %ecx,%ebx
5307 movl %edx,%ecx
5308 shrdl $14,%edx,%edx
5309 movl 16(%esp),%esi
5310 xorl %ecx,%edx
5311 movl 20(%esp),%edi
5312 xorl %edi,%esi
5313 shrdl $5,%edx,%edx
5314 andl %ecx,%esi
5315 movl %ecx,12(%esp)
5316 xorl %ecx,%edx
5317 xorl %esi,%edi
5318 shrdl $6,%edx,%edx
5319 movl %ebx,%ecx
5320 addl %edi,%edx
5321 movl (%esp),%edi
5322 movl %ebx,%esi
5323 shrdl $9,%ecx,%ecx
5324 movl %ebx,28(%esp)
5325 xorl %ebx,%ecx
5326 xorl %edi,%ebx
5327 addl 24(%esp),%edx
5328 shrdl $11,%ecx,%ecx
5329 andl %ebx,%eax
5330 xorl %esi,%ecx
5331 addl 68(%esp),%edx
5332 xorl %edi,%eax
5333 shrdl $2,%ecx,%ecx
5334 addl %edx,%eax
5335 addl 8(%esp),%edx
5336 addl %ecx,%eax
5337 movl %edx,%ecx
5338 shrdl $14,%edx,%edx
5339 movl 12(%esp),%esi
5340 xorl %ecx,%edx
5341 movl 16(%esp),%edi
5342 xorl %edi,%esi
5343 shrdl $5,%edx,%edx
5344 andl %ecx,%esi
5345 movl %ecx,8(%esp)
5346 xorl %ecx,%edx
5347 xorl %esi,%edi
5348 shrdl $6,%edx,%edx
5349 movl %eax,%ecx
5350 addl %edi,%edx
5351 movl 28(%esp),%edi
5352 movl %eax,%esi
5353 shrdl $9,%ecx,%ecx
5354 movl %eax,24(%esp)
5355 xorl %eax,%ecx
5356 xorl %edi,%eax
5357 addl 20(%esp),%edx
5358 shrdl $11,%ecx,%ecx
5359 andl %eax,%ebx
5360 xorl %esi,%ecx
5361 addl 72(%esp),%edx
5362 xorl %edi,%ebx
5363 shrdl $2,%ecx,%ecx
5364 addl %edx,%ebx
5365 addl 4(%esp),%edx
5366 addl %ecx,%ebx
5367 movl %edx,%ecx
5368 shrdl $14,%edx,%edx
5369 movl 8(%esp),%esi
5370 xorl %ecx,%edx
5371 movl 12(%esp),%edi
5372 xorl %edi,%esi
5373 shrdl $5,%edx,%edx
5374 andl %ecx,%esi
5375 movl %ecx,4(%esp)
5376 xorl %ecx,%edx
5377 xorl %esi,%edi
5378 shrdl $6,%edx,%edx
5379 movl %ebx,%ecx
5380 addl %edi,%edx
5381 movl 24(%esp),%edi
5382 movl %ebx,%esi
5383 shrdl $9,%ecx,%ecx
5384 movl %ebx,20(%esp)
5385 xorl %ebx,%ecx
5386 xorl %edi,%ebx
5387 addl 16(%esp),%edx
5388 shrdl $11,%ecx,%ecx
5389 andl %ebx,%eax
5390 xorl %esi,%ecx
5391 addl 76(%esp),%edx
5392 xorl %edi,%eax
5393 shrdl $2,%ecx,%ecx
5394 addl %edx,%eax
5395 addl (%esp),%edx
5396 addl %ecx,%eax
5397 movl %edx,%ecx
5398 shrdl $14,%edx,%edx
5399 movl 4(%esp),%esi
5400 xorl %ecx,%edx
5401 movl 8(%esp),%edi
5402 xorl %edi,%esi
5403 shrdl $5,%edx,%edx
5404 andl %ecx,%esi
5405 movl %ecx,(%esp)
5406 xorl %ecx,%edx
5407 xorl %esi,%edi
5408 shrdl $6,%edx,%edx
5409 movl %eax,%ecx
5410 addl %edi,%edx
5411 movl 20(%esp),%edi
5412 movl %eax,%esi
5413 shrdl $9,%ecx,%ecx
5414 movl %eax,16(%esp)
5415 xorl %eax,%ecx
5416 xorl %edi,%eax
5417 addl 12(%esp),%edx
5418 shrdl $11,%ecx,%ecx
5419 andl %eax,%ebx
5420 xorl %esi,%ecx
5421 addl 80(%esp),%edx
5422 xorl %edi,%ebx
5423 shrdl $2,%ecx,%ecx
5424 addl %edx,%ebx
5425 addl 28(%esp),%edx
5426 addl %ecx,%ebx
5427 movl %edx,%ecx
5428 shrdl $14,%edx,%edx
5429 movl (%esp),%esi
5430 xorl %ecx,%edx
5431 movl 4(%esp),%edi
5432 xorl %edi,%esi
5433 shrdl $5,%edx,%edx
5434 andl %ecx,%esi
5435 movl %ecx,28(%esp)
5436 xorl %ecx,%edx
5437 xorl %esi,%edi
5438 shrdl $6,%edx,%edx
5439 movl %ebx,%ecx
5440 addl %edi,%edx
5441 movl 16(%esp),%edi
5442 movl %ebx,%esi
5443 shrdl $9,%ecx,%ecx
5444 movl %ebx,12(%esp)
5445 xorl %ebx,%ecx
5446 xorl %edi,%ebx
5447 addl 8(%esp),%edx
5448 shrdl $11,%ecx,%ecx
5449 andl %ebx,%eax
5450 xorl %esi,%ecx
5451 addl 84(%esp),%edx
5452 xorl %edi,%eax
5453 shrdl $2,%ecx,%ecx
5454 addl %edx,%eax
5455 addl 24(%esp),%edx
5456 addl %ecx,%eax
5457 movl %edx,%ecx
5458 shrdl $14,%edx,%edx
5459 movl 28(%esp),%esi
5460 xorl %ecx,%edx
5461 movl (%esp),%edi
5462 xorl %edi,%esi
5463 shrdl $5,%edx,%edx
5464 andl %ecx,%esi
5465 movl %ecx,24(%esp)
5466 xorl %ecx,%edx
5467 xorl %esi,%edi
5468 shrdl $6,%edx,%edx
5469 movl %eax,%ecx
5470 addl %edi,%edx
5471 movl 12(%esp),%edi
5472 movl %eax,%esi
5473 shrdl $9,%ecx,%ecx
5474 movl %eax,8(%esp)
5475 xorl %eax,%ecx
5476 xorl %edi,%eax
5477 addl 4(%esp),%edx
5478 shrdl $11,%ecx,%ecx
5479 andl %eax,%ebx
5480 xorl %esi,%ecx
5481 addl 88(%esp),%edx
5482 xorl %edi,%ebx
5483 shrdl $2,%ecx,%ecx
5484 addl %edx,%ebx
5485 addl 20(%esp),%edx
5486 addl %ecx,%ebx
5487 movl %edx,%ecx
5488 shrdl $14,%edx,%edx
5489 movl 24(%esp),%esi
5490 xorl %ecx,%edx
5491 movl 28(%esp),%edi
5492 xorl %edi,%esi
5493 shrdl $5,%edx,%edx
5494 andl %ecx,%esi
5495 movl %ecx,20(%esp)
5496 xorl %ecx,%edx
5497 xorl %esi,%edi
5498 shrdl $6,%edx,%edx
5499 movl %ebx,%ecx
5500 addl %edi,%edx
5501 movl 8(%esp),%edi
5502 movl %ebx,%esi
5503 shrdl $9,%ecx,%ecx
5504 movl %ebx,4(%esp)
5505 xorl %ebx,%ecx
5506 xorl %edi,%ebx
5507 addl (%esp),%edx
5508 shrdl $11,%ecx,%ecx
5509 andl %ebx,%eax
5510 xorl %esi,%ecx
5511 addl 92(%esp),%edx
5512 xorl %edi,%eax
5513 shrdl $2,%ecx,%ecx
5514 addl %edx,%eax
5515 addl 16(%esp),%edx
5516 addl %ecx,%eax
5517 movl 96(%esp),%esi
5518 xorl %edi,%ebx
5519 movl 12(%esp),%ecx
5520 addl (%esi),%eax
5521 addl 4(%esi),%ebx
5522 addl 8(%esi),%edi
5523 addl 12(%esi),%ecx
5524 movl %eax,(%esi)
5525 movl %ebx,4(%esi)
5526 movl %edi,8(%esi)
5527 movl %ecx,12(%esi)
5528 movl %ebx,4(%esp)
5529 xorl %edi,%ebx
5530 movl %edi,8(%esp)
5531 movl %ecx,12(%esp)
5532 movl 20(%esp),%edi
5533 movl 24(%esp),%ecx
5534 addl 16(%esi),%edx
5535 addl 20(%esi),%edi
5536 addl 24(%esi),%ecx
5537 movl %edx,16(%esi)
5538 movl %edi,20(%esi)
5539 movl %edi,20(%esp)
5540 movl 28(%esp),%edi
5541 movl %ecx,24(%esi)
5542 addl 28(%esi),%edi
5543 movl %ecx,24(%esp)
5544 movl %edi,28(%esi)
5545 movl %edi,28(%esp)
5546 movl 100(%esp),%edi
5547 vmovdqa 64(%ebp),%xmm7
5548 subl $192,%ebp
5549 cmpl 104(%esp),%edi
5550 jb L012grand_avx
5551 movl 108(%esp),%esp
5552 vzeroall
5553 popl %edi
5554 popl %esi
5555 popl %ebx
5556 popl %ebp
5557 ret
Adam Langleye9ada862015-05-11 17:20:37 -07005558.section __IMPORT,__pointers,non_lazy_symbol_pointers
5559L_OPENSSL_ia32cap_P$non_lazy_ptr:
5560.indirect_symbol _OPENSSL_ia32cap_P
5561.long 0
Adam Langleyd9e397b2015-01-22 14:27:53 -08005562#endif