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