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