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