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