xref: /NextBSD/secure/lib/libcrypto/i386/sha1-586.s (revision 84d351007654069f9643c8e4b4802a7f5f08ee42)
1	# $FreeBSD$
2.file	"sha1-586.s"
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	pushl	%ebp
10	pushl	%ebx
11	pushl	%esi
12	pushl	%edi
13	call	.L000pic_point
14.L000pic_point:
15	popl	%ebp
16	leal	OPENSSL_ia32cap_P,%esi
17	leal	.LK_XX_XX-.L000pic_point(%ebp),%ebp
18	movl	(%esi),%eax
19	movl	4(%esi),%edx
20	testl	$512,%edx
21	jz	.L001x86
22	movl	8(%esi),%ecx
23	testl	$16777216,%eax
24	jz	.L001x86
25	testl	$536870912,%ecx
26	jnz	.Lshaext_shortcut
27	jmp	.Lssse3_shortcut
28.align	16
29.L001x86:
30	movl	20(%esp),%ebp
31	movl	24(%esp),%esi
32	movl	28(%esp),%eax
33	subl	$76,%esp
34	shll	$6,%eax
35	addl	%esi,%eax
36	movl	%eax,104(%esp)
37	movl	16(%ebp),%edi
38	jmp	.L002loop
39.align	16
40.L002loop:
41	movl	(%esi),%eax
42	movl	4(%esi),%ebx
43	movl	8(%esi),%ecx
44	movl	12(%esi),%edx
45	bswap	%eax
46	bswap	%ebx
47	bswap	%ecx
48	bswap	%edx
49	movl	%eax,(%esp)
50	movl	%ebx,4(%esp)
51	movl	%ecx,8(%esp)
52	movl	%edx,12(%esp)
53	movl	16(%esi),%eax
54	movl	20(%esi),%ebx
55	movl	24(%esi),%ecx
56	movl	28(%esi),%edx
57	bswap	%eax
58	bswap	%ebx
59	bswap	%ecx
60	bswap	%edx
61	movl	%eax,16(%esp)
62	movl	%ebx,20(%esp)
63	movl	%ecx,24(%esp)
64	movl	%edx,28(%esp)
65	movl	32(%esi),%eax
66	movl	36(%esi),%ebx
67	movl	40(%esi),%ecx
68	movl	44(%esi),%edx
69	bswap	%eax
70	bswap	%ebx
71	bswap	%ecx
72	bswap	%edx
73	movl	%eax,32(%esp)
74	movl	%ebx,36(%esp)
75	movl	%ecx,40(%esp)
76	movl	%edx,44(%esp)
77	movl	48(%esi),%eax
78	movl	52(%esi),%ebx
79	movl	56(%esi),%ecx
80	movl	60(%esi),%edx
81	bswap	%eax
82	bswap	%ebx
83	bswap	%ecx
84	bswap	%edx
85	movl	%eax,48(%esp)
86	movl	%ebx,52(%esp)
87	movl	%ecx,56(%esp)
88	movl	%edx,60(%esp)
89	movl	%esi,100(%esp)
90	movl	(%ebp),%eax
91	movl	4(%ebp),%ebx
92	movl	8(%ebp),%ecx
93	movl	12(%ebp),%edx
94
95	movl	%ecx,%esi
96	movl	%eax,%ebp
97	roll	$5,%ebp
98	xorl	%edx,%esi
99	addl	%edi,%ebp
100	movl	(%esp),%edi
101	andl	%ebx,%esi
102	rorl	$2,%ebx
103	xorl	%edx,%esi
104	leal	1518500249(%ebp,%edi,1),%ebp
105	addl	%esi,%ebp
106
107	movl	%ebx,%edi
108	movl	%ebp,%esi
109	roll	$5,%ebp
110	xorl	%ecx,%edi
111	addl	%edx,%ebp
112	movl	4(%esp),%edx
113	andl	%eax,%edi
114	rorl	$2,%eax
115	xorl	%ecx,%edi
116	leal	1518500249(%ebp,%edx,1),%ebp
117	addl	%edi,%ebp
118
119	movl	%eax,%edx
120	movl	%ebp,%edi
121	roll	$5,%ebp
122	xorl	%ebx,%edx
123	addl	%ecx,%ebp
124	movl	8(%esp),%ecx
125	andl	%esi,%edx
126	rorl	$2,%esi
127	xorl	%ebx,%edx
128	leal	1518500249(%ebp,%ecx,1),%ebp
129	addl	%edx,%ebp
130
131	movl	%esi,%ecx
132	movl	%ebp,%edx
133	roll	$5,%ebp
134	xorl	%eax,%ecx
135	addl	%ebx,%ebp
136	movl	12(%esp),%ebx
137	andl	%edi,%ecx
138	rorl	$2,%edi
139	xorl	%eax,%ecx
140	leal	1518500249(%ebp,%ebx,1),%ebp
141	addl	%ecx,%ebp
142
143	movl	%edi,%ebx
144	movl	%ebp,%ecx
145	roll	$5,%ebp
146	xorl	%esi,%ebx
147	addl	%eax,%ebp
148	movl	16(%esp),%eax
149	andl	%edx,%ebx
150	rorl	$2,%edx
151	xorl	%esi,%ebx
152	leal	1518500249(%ebp,%eax,1),%ebp
153	addl	%ebx,%ebp
154
155	movl	%edx,%eax
156	movl	%ebp,%ebx
157	roll	$5,%ebp
158	xorl	%edi,%eax
159	addl	%esi,%ebp
160	movl	20(%esp),%esi
161	andl	%ecx,%eax
162	rorl	$2,%ecx
163	xorl	%edi,%eax
164	leal	1518500249(%ebp,%esi,1),%ebp
165	addl	%eax,%ebp
166
167	movl	%ecx,%esi
168	movl	%ebp,%eax
169	roll	$5,%ebp
170	xorl	%edx,%esi
171	addl	%edi,%ebp
172	movl	24(%esp),%edi
173	andl	%ebx,%esi
174	rorl	$2,%ebx
175	xorl	%edx,%esi
176	leal	1518500249(%ebp,%edi,1),%ebp
177	addl	%esi,%ebp
178
179	movl	%ebx,%edi
180	movl	%ebp,%esi
181	roll	$5,%ebp
182	xorl	%ecx,%edi
183	addl	%edx,%ebp
184	movl	28(%esp),%edx
185	andl	%eax,%edi
186	rorl	$2,%eax
187	xorl	%ecx,%edi
188	leal	1518500249(%ebp,%edx,1),%ebp
189	addl	%edi,%ebp
190
191	movl	%eax,%edx
192	movl	%ebp,%edi
193	roll	$5,%ebp
194	xorl	%ebx,%edx
195	addl	%ecx,%ebp
196	movl	32(%esp),%ecx
197	andl	%esi,%edx
198	rorl	$2,%esi
199	xorl	%ebx,%edx
200	leal	1518500249(%ebp,%ecx,1),%ebp
201	addl	%edx,%ebp
202
203	movl	%esi,%ecx
204	movl	%ebp,%edx
205	roll	$5,%ebp
206	xorl	%eax,%ecx
207	addl	%ebx,%ebp
208	movl	36(%esp),%ebx
209	andl	%edi,%ecx
210	rorl	$2,%edi
211	xorl	%eax,%ecx
212	leal	1518500249(%ebp,%ebx,1),%ebp
213	addl	%ecx,%ebp
214
215	movl	%edi,%ebx
216	movl	%ebp,%ecx
217	roll	$5,%ebp
218	xorl	%esi,%ebx
219	addl	%eax,%ebp
220	movl	40(%esp),%eax
221	andl	%edx,%ebx
222	rorl	$2,%edx
223	xorl	%esi,%ebx
224	leal	1518500249(%ebp,%eax,1),%ebp
225	addl	%ebx,%ebp
226
227	movl	%edx,%eax
228	movl	%ebp,%ebx
229	roll	$5,%ebp
230	xorl	%edi,%eax
231	addl	%esi,%ebp
232	movl	44(%esp),%esi
233	andl	%ecx,%eax
234	rorl	$2,%ecx
235	xorl	%edi,%eax
236	leal	1518500249(%ebp,%esi,1),%ebp
237	addl	%eax,%ebp
238
239	movl	%ecx,%esi
240	movl	%ebp,%eax
241	roll	$5,%ebp
242	xorl	%edx,%esi
243	addl	%edi,%ebp
244	movl	48(%esp),%edi
245	andl	%ebx,%esi
246	rorl	$2,%ebx
247	xorl	%edx,%esi
248	leal	1518500249(%ebp,%edi,1),%ebp
249	addl	%esi,%ebp
250
251	movl	%ebx,%edi
252	movl	%ebp,%esi
253	roll	$5,%ebp
254	xorl	%ecx,%edi
255	addl	%edx,%ebp
256	movl	52(%esp),%edx
257	andl	%eax,%edi
258	rorl	$2,%eax
259	xorl	%ecx,%edi
260	leal	1518500249(%ebp,%edx,1),%ebp
261	addl	%edi,%ebp
262
263	movl	%eax,%edx
264	movl	%ebp,%edi
265	roll	$5,%ebp
266	xorl	%ebx,%edx
267	addl	%ecx,%ebp
268	movl	56(%esp),%ecx
269	andl	%esi,%edx
270	rorl	$2,%esi
271	xorl	%ebx,%edx
272	leal	1518500249(%ebp,%ecx,1),%ebp
273	addl	%edx,%ebp
274
275	movl	%esi,%ecx
276	movl	%ebp,%edx
277	roll	$5,%ebp
278	xorl	%eax,%ecx
279	addl	%ebx,%ebp
280	movl	60(%esp),%ebx
281	andl	%edi,%ecx
282	rorl	$2,%edi
283	xorl	%eax,%ecx
284	leal	1518500249(%ebp,%ebx,1),%ebp
285	movl	(%esp),%ebx
286	addl	%ebp,%ecx
287
288	movl	%edi,%ebp
289	xorl	8(%esp),%ebx
290	xorl	%esi,%ebp
291	xorl	32(%esp),%ebx
292	andl	%edx,%ebp
293	xorl	52(%esp),%ebx
294	roll	$1,%ebx
295	xorl	%esi,%ebp
296	addl	%ebp,%eax
297	movl	%ecx,%ebp
298	rorl	$2,%edx
299	movl	%ebx,(%esp)
300	roll	$5,%ebp
301	leal	1518500249(%ebx,%eax,1),%ebx
302	movl	4(%esp),%eax
303	addl	%ebp,%ebx
304
305	movl	%edx,%ebp
306	xorl	12(%esp),%eax
307	xorl	%edi,%ebp
308	xorl	36(%esp),%eax
309	andl	%ecx,%ebp
310	xorl	56(%esp),%eax
311	roll	$1,%eax
312	xorl	%edi,%ebp
313	addl	%ebp,%esi
314	movl	%ebx,%ebp
315	rorl	$2,%ecx
316	movl	%eax,4(%esp)
317	roll	$5,%ebp
318	leal	1518500249(%eax,%esi,1),%eax
319	movl	8(%esp),%esi
320	addl	%ebp,%eax
321
322	movl	%ecx,%ebp
323	xorl	16(%esp),%esi
324	xorl	%edx,%ebp
325	xorl	40(%esp),%esi
326	andl	%ebx,%ebp
327	xorl	60(%esp),%esi
328	roll	$1,%esi
329	xorl	%edx,%ebp
330	addl	%ebp,%edi
331	movl	%eax,%ebp
332	rorl	$2,%ebx
333	movl	%esi,8(%esp)
334	roll	$5,%ebp
335	leal	1518500249(%esi,%edi,1),%esi
336	movl	12(%esp),%edi
337	addl	%ebp,%esi
338
339	movl	%ebx,%ebp
340	xorl	20(%esp),%edi
341	xorl	%ecx,%ebp
342	xorl	44(%esp),%edi
343	andl	%eax,%ebp
344	xorl	(%esp),%edi
345	roll	$1,%edi
346	xorl	%ecx,%ebp
347	addl	%ebp,%edx
348	movl	%esi,%ebp
349	rorl	$2,%eax
350	movl	%edi,12(%esp)
351	roll	$5,%ebp
352	leal	1518500249(%edi,%edx,1),%edi
353	movl	16(%esp),%edx
354	addl	%ebp,%edi
355
356	movl	%esi,%ebp
357	xorl	24(%esp),%edx
358	xorl	%eax,%ebp
359	xorl	48(%esp),%edx
360	xorl	%ebx,%ebp
361	xorl	4(%esp),%edx
362	roll	$1,%edx
363	addl	%ebp,%ecx
364	rorl	$2,%esi
365	movl	%edi,%ebp
366	roll	$5,%ebp
367	movl	%edx,16(%esp)
368	leal	1859775393(%edx,%ecx,1),%edx
369	movl	20(%esp),%ecx
370	addl	%ebp,%edx
371
372	movl	%edi,%ebp
373	xorl	28(%esp),%ecx
374	xorl	%esi,%ebp
375	xorl	52(%esp),%ecx
376	xorl	%eax,%ebp
377	xorl	8(%esp),%ecx
378	roll	$1,%ecx
379	addl	%ebp,%ebx
380	rorl	$2,%edi
381	movl	%edx,%ebp
382	roll	$5,%ebp
383	movl	%ecx,20(%esp)
384	leal	1859775393(%ecx,%ebx,1),%ecx
385	movl	24(%esp),%ebx
386	addl	%ebp,%ecx
387
388	movl	%edx,%ebp
389	xorl	32(%esp),%ebx
390	xorl	%edi,%ebp
391	xorl	56(%esp),%ebx
392	xorl	%esi,%ebp
393	xorl	12(%esp),%ebx
394	roll	$1,%ebx
395	addl	%ebp,%eax
396	rorl	$2,%edx
397	movl	%ecx,%ebp
398	roll	$5,%ebp
399	movl	%ebx,24(%esp)
400	leal	1859775393(%ebx,%eax,1),%ebx
401	movl	28(%esp),%eax
402	addl	%ebp,%ebx
403
404	movl	%ecx,%ebp
405	xorl	36(%esp),%eax
406	xorl	%edx,%ebp
407	xorl	60(%esp),%eax
408	xorl	%edi,%ebp
409	xorl	16(%esp),%eax
410	roll	$1,%eax
411	addl	%ebp,%esi
412	rorl	$2,%ecx
413	movl	%ebx,%ebp
414	roll	$5,%ebp
415	movl	%eax,28(%esp)
416	leal	1859775393(%eax,%esi,1),%eax
417	movl	32(%esp),%esi
418	addl	%ebp,%eax
419
420	movl	%ebx,%ebp
421	xorl	40(%esp),%esi
422	xorl	%ecx,%ebp
423	xorl	(%esp),%esi
424	xorl	%edx,%ebp
425	xorl	20(%esp),%esi
426	roll	$1,%esi
427	addl	%ebp,%edi
428	rorl	$2,%ebx
429	movl	%eax,%ebp
430	roll	$5,%ebp
431	movl	%esi,32(%esp)
432	leal	1859775393(%esi,%edi,1),%esi
433	movl	36(%esp),%edi
434	addl	%ebp,%esi
435
436	movl	%eax,%ebp
437	xorl	44(%esp),%edi
438	xorl	%ebx,%ebp
439	xorl	4(%esp),%edi
440	xorl	%ecx,%ebp
441	xorl	24(%esp),%edi
442	roll	$1,%edi
443	addl	%ebp,%edx
444	rorl	$2,%eax
445	movl	%esi,%ebp
446	roll	$5,%ebp
447	movl	%edi,36(%esp)
448	leal	1859775393(%edi,%edx,1),%edi
449	movl	40(%esp),%edx
450	addl	%ebp,%edi
451
452	movl	%esi,%ebp
453	xorl	48(%esp),%edx
454	xorl	%eax,%ebp
455	xorl	8(%esp),%edx
456	xorl	%ebx,%ebp
457	xorl	28(%esp),%edx
458	roll	$1,%edx
459	addl	%ebp,%ecx
460	rorl	$2,%esi
461	movl	%edi,%ebp
462	roll	$5,%ebp
463	movl	%edx,40(%esp)
464	leal	1859775393(%edx,%ecx,1),%edx
465	movl	44(%esp),%ecx
466	addl	%ebp,%edx
467
468	movl	%edi,%ebp
469	xorl	52(%esp),%ecx
470	xorl	%esi,%ebp
471	xorl	12(%esp),%ecx
472	xorl	%eax,%ebp
473	xorl	32(%esp),%ecx
474	roll	$1,%ecx
475	addl	%ebp,%ebx
476	rorl	$2,%edi
477	movl	%edx,%ebp
478	roll	$5,%ebp
479	movl	%ecx,44(%esp)
480	leal	1859775393(%ecx,%ebx,1),%ecx
481	movl	48(%esp),%ebx
482	addl	%ebp,%ecx
483
484	movl	%edx,%ebp
485	xorl	56(%esp),%ebx
486	xorl	%edi,%ebp
487	xorl	16(%esp),%ebx
488	xorl	%esi,%ebp
489	xorl	36(%esp),%ebx
490	roll	$1,%ebx
491	addl	%ebp,%eax
492	rorl	$2,%edx
493	movl	%ecx,%ebp
494	roll	$5,%ebp
495	movl	%ebx,48(%esp)
496	leal	1859775393(%ebx,%eax,1),%ebx
497	movl	52(%esp),%eax
498	addl	%ebp,%ebx
499
500	movl	%ecx,%ebp
501	xorl	60(%esp),%eax
502	xorl	%edx,%ebp
503	xorl	20(%esp),%eax
504	xorl	%edi,%ebp
505	xorl	40(%esp),%eax
506	roll	$1,%eax
507	addl	%ebp,%esi
508	rorl	$2,%ecx
509	movl	%ebx,%ebp
510	roll	$5,%ebp
511	movl	%eax,52(%esp)
512	leal	1859775393(%eax,%esi,1),%eax
513	movl	56(%esp),%esi
514	addl	%ebp,%eax
515
516	movl	%ebx,%ebp
517	xorl	(%esp),%esi
518	xorl	%ecx,%ebp
519	xorl	24(%esp),%esi
520	xorl	%edx,%ebp
521	xorl	44(%esp),%esi
522	roll	$1,%esi
523	addl	%ebp,%edi
524	rorl	$2,%ebx
525	movl	%eax,%ebp
526	roll	$5,%ebp
527	movl	%esi,56(%esp)
528	leal	1859775393(%esi,%edi,1),%esi
529	movl	60(%esp),%edi
530	addl	%ebp,%esi
531
532	movl	%eax,%ebp
533	xorl	4(%esp),%edi
534	xorl	%ebx,%ebp
535	xorl	28(%esp),%edi
536	xorl	%ecx,%ebp
537	xorl	48(%esp),%edi
538	roll	$1,%edi
539	addl	%ebp,%edx
540	rorl	$2,%eax
541	movl	%esi,%ebp
542	roll	$5,%ebp
543	movl	%edi,60(%esp)
544	leal	1859775393(%edi,%edx,1),%edi
545	movl	(%esp),%edx
546	addl	%ebp,%edi
547
548	movl	%esi,%ebp
549	xorl	8(%esp),%edx
550	xorl	%eax,%ebp
551	xorl	32(%esp),%edx
552	xorl	%ebx,%ebp
553	xorl	52(%esp),%edx
554	roll	$1,%edx
555	addl	%ebp,%ecx
556	rorl	$2,%esi
557	movl	%edi,%ebp
558	roll	$5,%ebp
559	movl	%edx,(%esp)
560	leal	1859775393(%edx,%ecx,1),%edx
561	movl	4(%esp),%ecx
562	addl	%ebp,%edx
563
564	movl	%edi,%ebp
565	xorl	12(%esp),%ecx
566	xorl	%esi,%ebp
567	xorl	36(%esp),%ecx
568	xorl	%eax,%ebp
569	xorl	56(%esp),%ecx
570	roll	$1,%ecx
571	addl	%ebp,%ebx
572	rorl	$2,%edi
573	movl	%edx,%ebp
574	roll	$5,%ebp
575	movl	%ecx,4(%esp)
576	leal	1859775393(%ecx,%ebx,1),%ecx
577	movl	8(%esp),%ebx
578	addl	%ebp,%ecx
579
580	movl	%edx,%ebp
581	xorl	16(%esp),%ebx
582	xorl	%edi,%ebp
583	xorl	40(%esp),%ebx
584	xorl	%esi,%ebp
585	xorl	60(%esp),%ebx
586	roll	$1,%ebx
587	addl	%ebp,%eax
588	rorl	$2,%edx
589	movl	%ecx,%ebp
590	roll	$5,%ebp
591	movl	%ebx,8(%esp)
592	leal	1859775393(%ebx,%eax,1),%ebx
593	movl	12(%esp),%eax
594	addl	%ebp,%ebx
595
596	movl	%ecx,%ebp
597	xorl	20(%esp),%eax
598	xorl	%edx,%ebp
599	xorl	44(%esp),%eax
600	xorl	%edi,%ebp
601	xorl	(%esp),%eax
602	roll	$1,%eax
603	addl	%ebp,%esi
604	rorl	$2,%ecx
605	movl	%ebx,%ebp
606	roll	$5,%ebp
607	movl	%eax,12(%esp)
608	leal	1859775393(%eax,%esi,1),%eax
609	movl	16(%esp),%esi
610	addl	%ebp,%eax
611
612	movl	%ebx,%ebp
613	xorl	24(%esp),%esi
614	xorl	%ecx,%ebp
615	xorl	48(%esp),%esi
616	xorl	%edx,%ebp
617	xorl	4(%esp),%esi
618	roll	$1,%esi
619	addl	%ebp,%edi
620	rorl	$2,%ebx
621	movl	%eax,%ebp
622	roll	$5,%ebp
623	movl	%esi,16(%esp)
624	leal	1859775393(%esi,%edi,1),%esi
625	movl	20(%esp),%edi
626	addl	%ebp,%esi
627
628	movl	%eax,%ebp
629	xorl	28(%esp),%edi
630	xorl	%ebx,%ebp
631	xorl	52(%esp),%edi
632	xorl	%ecx,%ebp
633	xorl	8(%esp),%edi
634	roll	$1,%edi
635	addl	%ebp,%edx
636	rorl	$2,%eax
637	movl	%esi,%ebp
638	roll	$5,%ebp
639	movl	%edi,20(%esp)
640	leal	1859775393(%edi,%edx,1),%edi
641	movl	24(%esp),%edx
642	addl	%ebp,%edi
643
644	movl	%esi,%ebp
645	xorl	32(%esp),%edx
646	xorl	%eax,%ebp
647	xorl	56(%esp),%edx
648	xorl	%ebx,%ebp
649	xorl	12(%esp),%edx
650	roll	$1,%edx
651	addl	%ebp,%ecx
652	rorl	$2,%esi
653	movl	%edi,%ebp
654	roll	$5,%ebp
655	movl	%edx,24(%esp)
656	leal	1859775393(%edx,%ecx,1),%edx
657	movl	28(%esp),%ecx
658	addl	%ebp,%edx
659
660	movl	%edi,%ebp
661	xorl	36(%esp),%ecx
662	xorl	%esi,%ebp
663	xorl	60(%esp),%ecx
664	xorl	%eax,%ebp
665	xorl	16(%esp),%ecx
666	roll	$1,%ecx
667	addl	%ebp,%ebx
668	rorl	$2,%edi
669	movl	%edx,%ebp
670	roll	$5,%ebp
671	movl	%ecx,28(%esp)
672	leal	1859775393(%ecx,%ebx,1),%ecx
673	movl	32(%esp),%ebx
674	addl	%ebp,%ecx
675
676	movl	%edi,%ebp
677	xorl	40(%esp),%ebx
678	xorl	%esi,%ebp
679	xorl	(%esp),%ebx
680	andl	%edx,%ebp
681	xorl	20(%esp),%ebx
682	roll	$1,%ebx
683	addl	%eax,%ebp
684	rorl	$2,%edx
685	movl	%ecx,%eax
686	roll	$5,%eax
687	movl	%ebx,32(%esp)
688	leal	2400959708(%ebx,%ebp,1),%ebx
689	movl	%edi,%ebp
690	addl	%eax,%ebx
691	andl	%esi,%ebp
692	movl	36(%esp),%eax
693	addl	%ebp,%ebx
694
695	movl	%edx,%ebp
696	xorl	44(%esp),%eax
697	xorl	%edi,%ebp
698	xorl	4(%esp),%eax
699	andl	%ecx,%ebp
700	xorl	24(%esp),%eax
701	roll	$1,%eax
702	addl	%esi,%ebp
703	rorl	$2,%ecx
704	movl	%ebx,%esi
705	roll	$5,%esi
706	movl	%eax,36(%esp)
707	leal	2400959708(%eax,%ebp,1),%eax
708	movl	%edx,%ebp
709	addl	%esi,%eax
710	andl	%edi,%ebp
711	movl	40(%esp),%esi
712	addl	%ebp,%eax
713
714	movl	%ecx,%ebp
715	xorl	48(%esp),%esi
716	xorl	%edx,%ebp
717	xorl	8(%esp),%esi
718	andl	%ebx,%ebp
719	xorl	28(%esp),%esi
720	roll	$1,%esi
721	addl	%edi,%ebp
722	rorl	$2,%ebx
723	movl	%eax,%edi
724	roll	$5,%edi
725	movl	%esi,40(%esp)
726	leal	2400959708(%esi,%ebp,1),%esi
727	movl	%ecx,%ebp
728	addl	%edi,%esi
729	andl	%edx,%ebp
730	movl	44(%esp),%edi
731	addl	%ebp,%esi
732
733	movl	%ebx,%ebp
734	xorl	52(%esp),%edi
735	xorl	%ecx,%ebp
736	xorl	12(%esp),%edi
737	andl	%eax,%ebp
738	xorl	32(%esp),%edi
739	roll	$1,%edi
740	addl	%edx,%ebp
741	rorl	$2,%eax
742	movl	%esi,%edx
743	roll	$5,%edx
744	movl	%edi,44(%esp)
745	leal	2400959708(%edi,%ebp,1),%edi
746	movl	%ebx,%ebp
747	addl	%edx,%edi
748	andl	%ecx,%ebp
749	movl	48(%esp),%edx
750	addl	%ebp,%edi
751
752	movl	%eax,%ebp
753	xorl	56(%esp),%edx
754	xorl	%ebx,%ebp
755	xorl	16(%esp),%edx
756	andl	%esi,%ebp
757	xorl	36(%esp),%edx
758	roll	$1,%edx
759	addl	%ecx,%ebp
760	rorl	$2,%esi
761	movl	%edi,%ecx
762	roll	$5,%ecx
763	movl	%edx,48(%esp)
764	leal	2400959708(%edx,%ebp,1),%edx
765	movl	%eax,%ebp
766	addl	%ecx,%edx
767	andl	%ebx,%ebp
768	movl	52(%esp),%ecx
769	addl	%ebp,%edx
770
771	movl	%esi,%ebp
772	xorl	60(%esp),%ecx
773	xorl	%eax,%ebp
774	xorl	20(%esp),%ecx
775	andl	%edi,%ebp
776	xorl	40(%esp),%ecx
777	roll	$1,%ecx
778	addl	%ebx,%ebp
779	rorl	$2,%edi
780	movl	%edx,%ebx
781	roll	$5,%ebx
782	movl	%ecx,52(%esp)
783	leal	2400959708(%ecx,%ebp,1),%ecx
784	movl	%esi,%ebp
785	addl	%ebx,%ecx
786	andl	%eax,%ebp
787	movl	56(%esp),%ebx
788	addl	%ebp,%ecx
789
790	movl	%edi,%ebp
791	xorl	(%esp),%ebx
792	xorl	%esi,%ebp
793	xorl	24(%esp),%ebx
794	andl	%edx,%ebp
795	xorl	44(%esp),%ebx
796	roll	$1,%ebx
797	addl	%eax,%ebp
798	rorl	$2,%edx
799	movl	%ecx,%eax
800	roll	$5,%eax
801	movl	%ebx,56(%esp)
802	leal	2400959708(%ebx,%ebp,1),%ebx
803	movl	%edi,%ebp
804	addl	%eax,%ebx
805	andl	%esi,%ebp
806	movl	60(%esp),%eax
807	addl	%ebp,%ebx
808
809	movl	%edx,%ebp
810	xorl	4(%esp),%eax
811	xorl	%edi,%ebp
812	xorl	28(%esp),%eax
813	andl	%ecx,%ebp
814	xorl	48(%esp),%eax
815	roll	$1,%eax
816	addl	%esi,%ebp
817	rorl	$2,%ecx
818	movl	%ebx,%esi
819	roll	$5,%esi
820	movl	%eax,60(%esp)
821	leal	2400959708(%eax,%ebp,1),%eax
822	movl	%edx,%ebp
823	addl	%esi,%eax
824	andl	%edi,%ebp
825	movl	(%esp),%esi
826	addl	%ebp,%eax
827
828	movl	%ecx,%ebp
829	xorl	8(%esp),%esi
830	xorl	%edx,%ebp
831	xorl	32(%esp),%esi
832	andl	%ebx,%ebp
833	xorl	52(%esp),%esi
834	roll	$1,%esi
835	addl	%edi,%ebp
836	rorl	$2,%ebx
837	movl	%eax,%edi
838	roll	$5,%edi
839	movl	%esi,(%esp)
840	leal	2400959708(%esi,%ebp,1),%esi
841	movl	%ecx,%ebp
842	addl	%edi,%esi
843	andl	%edx,%ebp
844	movl	4(%esp),%edi
845	addl	%ebp,%esi
846
847	movl	%ebx,%ebp
848	xorl	12(%esp),%edi
849	xorl	%ecx,%ebp
850	xorl	36(%esp),%edi
851	andl	%eax,%ebp
852	xorl	56(%esp),%edi
853	roll	$1,%edi
854	addl	%edx,%ebp
855	rorl	$2,%eax
856	movl	%esi,%edx
857	roll	$5,%edx
858	movl	%edi,4(%esp)
859	leal	2400959708(%edi,%ebp,1),%edi
860	movl	%ebx,%ebp
861	addl	%edx,%edi
862	andl	%ecx,%ebp
863	movl	8(%esp),%edx
864	addl	%ebp,%edi
865
866	movl	%eax,%ebp
867	xorl	16(%esp),%edx
868	xorl	%ebx,%ebp
869	xorl	40(%esp),%edx
870	andl	%esi,%ebp
871	xorl	60(%esp),%edx
872	roll	$1,%edx
873	addl	%ecx,%ebp
874	rorl	$2,%esi
875	movl	%edi,%ecx
876	roll	$5,%ecx
877	movl	%edx,8(%esp)
878	leal	2400959708(%edx,%ebp,1),%edx
879	movl	%eax,%ebp
880	addl	%ecx,%edx
881	andl	%ebx,%ebp
882	movl	12(%esp),%ecx
883	addl	%ebp,%edx
884
885	movl	%esi,%ebp
886	xorl	20(%esp),%ecx
887	xorl	%eax,%ebp
888	xorl	44(%esp),%ecx
889	andl	%edi,%ebp
890	xorl	(%esp),%ecx
891	roll	$1,%ecx
892	addl	%ebx,%ebp
893	rorl	$2,%edi
894	movl	%edx,%ebx
895	roll	$5,%ebx
896	movl	%ecx,12(%esp)
897	leal	2400959708(%ecx,%ebp,1),%ecx
898	movl	%esi,%ebp
899	addl	%ebx,%ecx
900	andl	%eax,%ebp
901	movl	16(%esp),%ebx
902	addl	%ebp,%ecx
903
904	movl	%edi,%ebp
905	xorl	24(%esp),%ebx
906	xorl	%esi,%ebp
907	xorl	48(%esp),%ebx
908	andl	%edx,%ebp
909	xorl	4(%esp),%ebx
910	roll	$1,%ebx
911	addl	%eax,%ebp
912	rorl	$2,%edx
913	movl	%ecx,%eax
914	roll	$5,%eax
915	movl	%ebx,16(%esp)
916	leal	2400959708(%ebx,%ebp,1),%ebx
917	movl	%edi,%ebp
918	addl	%eax,%ebx
919	andl	%esi,%ebp
920	movl	20(%esp),%eax
921	addl	%ebp,%ebx
922
923	movl	%edx,%ebp
924	xorl	28(%esp),%eax
925	xorl	%edi,%ebp
926	xorl	52(%esp),%eax
927	andl	%ecx,%ebp
928	xorl	8(%esp),%eax
929	roll	$1,%eax
930	addl	%esi,%ebp
931	rorl	$2,%ecx
932	movl	%ebx,%esi
933	roll	$5,%esi
934	movl	%eax,20(%esp)
935	leal	2400959708(%eax,%ebp,1),%eax
936	movl	%edx,%ebp
937	addl	%esi,%eax
938	andl	%edi,%ebp
939	movl	24(%esp),%esi
940	addl	%ebp,%eax
941
942	movl	%ecx,%ebp
943	xorl	32(%esp),%esi
944	xorl	%edx,%ebp
945	xorl	56(%esp),%esi
946	andl	%ebx,%ebp
947	xorl	12(%esp),%esi
948	roll	$1,%esi
949	addl	%edi,%ebp
950	rorl	$2,%ebx
951	movl	%eax,%edi
952	roll	$5,%edi
953	movl	%esi,24(%esp)
954	leal	2400959708(%esi,%ebp,1),%esi
955	movl	%ecx,%ebp
956	addl	%edi,%esi
957	andl	%edx,%ebp
958	movl	28(%esp),%edi
959	addl	%ebp,%esi
960
961	movl	%ebx,%ebp
962	xorl	36(%esp),%edi
963	xorl	%ecx,%ebp
964	xorl	60(%esp),%edi
965	andl	%eax,%ebp
966	xorl	16(%esp),%edi
967	roll	$1,%edi
968	addl	%edx,%ebp
969	rorl	$2,%eax
970	movl	%esi,%edx
971	roll	$5,%edx
972	movl	%edi,28(%esp)
973	leal	2400959708(%edi,%ebp,1),%edi
974	movl	%ebx,%ebp
975	addl	%edx,%edi
976	andl	%ecx,%ebp
977	movl	32(%esp),%edx
978	addl	%ebp,%edi
979
980	movl	%eax,%ebp
981	xorl	40(%esp),%edx
982	xorl	%ebx,%ebp
983	xorl	(%esp),%edx
984	andl	%esi,%ebp
985	xorl	20(%esp),%edx
986	roll	$1,%edx
987	addl	%ecx,%ebp
988	rorl	$2,%esi
989	movl	%edi,%ecx
990	roll	$5,%ecx
991	movl	%edx,32(%esp)
992	leal	2400959708(%edx,%ebp,1),%edx
993	movl	%eax,%ebp
994	addl	%ecx,%edx
995	andl	%ebx,%ebp
996	movl	36(%esp),%ecx
997	addl	%ebp,%edx
998
999	movl	%esi,%ebp
1000	xorl	44(%esp),%ecx
1001	xorl	%eax,%ebp
1002	xorl	4(%esp),%ecx
1003	andl	%edi,%ebp
1004	xorl	24(%esp),%ecx
1005	roll	$1,%ecx
1006	addl	%ebx,%ebp
1007	rorl	$2,%edi
1008	movl	%edx,%ebx
1009	roll	$5,%ebx
1010	movl	%ecx,36(%esp)
1011	leal	2400959708(%ecx,%ebp,1),%ecx
1012	movl	%esi,%ebp
1013	addl	%ebx,%ecx
1014	andl	%eax,%ebp
1015	movl	40(%esp),%ebx
1016	addl	%ebp,%ecx
1017
1018	movl	%edi,%ebp
1019	xorl	48(%esp),%ebx
1020	xorl	%esi,%ebp
1021	xorl	8(%esp),%ebx
1022	andl	%edx,%ebp
1023	xorl	28(%esp),%ebx
1024	roll	$1,%ebx
1025	addl	%eax,%ebp
1026	rorl	$2,%edx
1027	movl	%ecx,%eax
1028	roll	$5,%eax
1029	movl	%ebx,40(%esp)
1030	leal	2400959708(%ebx,%ebp,1),%ebx
1031	movl	%edi,%ebp
1032	addl	%eax,%ebx
1033	andl	%esi,%ebp
1034	movl	44(%esp),%eax
1035	addl	%ebp,%ebx
1036
1037	movl	%edx,%ebp
1038	xorl	52(%esp),%eax
1039	xorl	%edi,%ebp
1040	xorl	12(%esp),%eax
1041	andl	%ecx,%ebp
1042	xorl	32(%esp),%eax
1043	roll	$1,%eax
1044	addl	%esi,%ebp
1045	rorl	$2,%ecx
1046	movl	%ebx,%esi
1047	roll	$5,%esi
1048	movl	%eax,44(%esp)
1049	leal	2400959708(%eax,%ebp,1),%eax
1050	movl	%edx,%ebp
1051	addl	%esi,%eax
1052	andl	%edi,%ebp
1053	movl	48(%esp),%esi
1054	addl	%ebp,%eax
1055
1056	movl	%ebx,%ebp
1057	xorl	56(%esp),%esi
1058	xorl	%ecx,%ebp
1059	xorl	16(%esp),%esi
1060	xorl	%edx,%ebp
1061	xorl	36(%esp),%esi
1062	roll	$1,%esi
1063	addl	%ebp,%edi
1064	rorl	$2,%ebx
1065	movl	%eax,%ebp
1066	roll	$5,%ebp
1067	movl	%esi,48(%esp)
1068	leal	3395469782(%esi,%edi,1),%esi
1069	movl	52(%esp),%edi
1070	addl	%ebp,%esi
1071
1072	movl	%eax,%ebp
1073	xorl	60(%esp),%edi
1074	xorl	%ebx,%ebp
1075	xorl	20(%esp),%edi
1076	xorl	%ecx,%ebp
1077	xorl	40(%esp),%edi
1078	roll	$1,%edi
1079	addl	%ebp,%edx
1080	rorl	$2,%eax
1081	movl	%esi,%ebp
1082	roll	$5,%ebp
1083	movl	%edi,52(%esp)
1084	leal	3395469782(%edi,%edx,1),%edi
1085	movl	56(%esp),%edx
1086	addl	%ebp,%edi
1087
1088	movl	%esi,%ebp
1089	xorl	(%esp),%edx
1090	xorl	%eax,%ebp
1091	xorl	24(%esp),%edx
1092	xorl	%ebx,%ebp
1093	xorl	44(%esp),%edx
1094	roll	$1,%edx
1095	addl	%ebp,%ecx
1096	rorl	$2,%esi
1097	movl	%edi,%ebp
1098	roll	$5,%ebp
1099	movl	%edx,56(%esp)
1100	leal	3395469782(%edx,%ecx,1),%edx
1101	movl	60(%esp),%ecx
1102	addl	%ebp,%edx
1103
1104	movl	%edi,%ebp
1105	xorl	4(%esp),%ecx
1106	xorl	%esi,%ebp
1107	xorl	28(%esp),%ecx
1108	xorl	%eax,%ebp
1109	xorl	48(%esp),%ecx
1110	roll	$1,%ecx
1111	addl	%ebp,%ebx
1112	rorl	$2,%edi
1113	movl	%edx,%ebp
1114	roll	$5,%ebp
1115	movl	%ecx,60(%esp)
1116	leal	3395469782(%ecx,%ebx,1),%ecx
1117	movl	(%esp),%ebx
1118	addl	%ebp,%ecx
1119
1120	movl	%edx,%ebp
1121	xorl	8(%esp),%ebx
1122	xorl	%edi,%ebp
1123	xorl	32(%esp),%ebx
1124	xorl	%esi,%ebp
1125	xorl	52(%esp),%ebx
1126	roll	$1,%ebx
1127	addl	%ebp,%eax
1128	rorl	$2,%edx
1129	movl	%ecx,%ebp
1130	roll	$5,%ebp
1131	movl	%ebx,(%esp)
1132	leal	3395469782(%ebx,%eax,1),%ebx
1133	movl	4(%esp),%eax
1134	addl	%ebp,%ebx
1135
1136	movl	%ecx,%ebp
1137	xorl	12(%esp),%eax
1138	xorl	%edx,%ebp
1139	xorl	36(%esp),%eax
1140	xorl	%edi,%ebp
1141	xorl	56(%esp),%eax
1142	roll	$1,%eax
1143	addl	%ebp,%esi
1144	rorl	$2,%ecx
1145	movl	%ebx,%ebp
1146	roll	$5,%ebp
1147	movl	%eax,4(%esp)
1148	leal	3395469782(%eax,%esi,1),%eax
1149	movl	8(%esp),%esi
1150	addl	%ebp,%eax
1151
1152	movl	%ebx,%ebp
1153	xorl	16(%esp),%esi
1154	xorl	%ecx,%ebp
1155	xorl	40(%esp),%esi
1156	xorl	%edx,%ebp
1157	xorl	60(%esp),%esi
1158	roll	$1,%esi
1159	addl	%ebp,%edi
1160	rorl	$2,%ebx
1161	movl	%eax,%ebp
1162	roll	$5,%ebp
1163	movl	%esi,8(%esp)
1164	leal	3395469782(%esi,%edi,1),%esi
1165	movl	12(%esp),%edi
1166	addl	%ebp,%esi
1167
1168	movl	%eax,%ebp
1169	xorl	20(%esp),%edi
1170	xorl	%ebx,%ebp
1171	xorl	44(%esp),%edi
1172	xorl	%ecx,%ebp
1173	xorl	(%esp),%edi
1174	roll	$1,%edi
1175	addl	%ebp,%edx
1176	rorl	$2,%eax
1177	movl	%esi,%ebp
1178	roll	$5,%ebp
1179	movl	%edi,12(%esp)
1180	leal	3395469782(%edi,%edx,1),%edi
1181	movl	16(%esp),%edx
1182	addl	%ebp,%edi
1183
1184	movl	%esi,%ebp
1185	xorl	24(%esp),%edx
1186	xorl	%eax,%ebp
1187	xorl	48(%esp),%edx
1188	xorl	%ebx,%ebp
1189	xorl	4(%esp),%edx
1190	roll	$1,%edx
1191	addl	%ebp,%ecx
1192	rorl	$2,%esi
1193	movl	%edi,%ebp
1194	roll	$5,%ebp
1195	movl	%edx,16(%esp)
1196	leal	3395469782(%edx,%ecx,1),%edx
1197	movl	20(%esp),%ecx
1198	addl	%ebp,%edx
1199
1200	movl	%edi,%ebp
1201	xorl	28(%esp),%ecx
1202	xorl	%esi,%ebp
1203	xorl	52(%esp),%ecx
1204	xorl	%eax,%ebp
1205	xorl	8(%esp),%ecx
1206	roll	$1,%ecx
1207	addl	%ebp,%ebx
1208	rorl	$2,%edi
1209	movl	%edx,%ebp
1210	roll	$5,%ebp
1211	movl	%ecx,20(%esp)
1212	leal	3395469782(%ecx,%ebx,1),%ecx
1213	movl	24(%esp),%ebx
1214	addl	%ebp,%ecx
1215
1216	movl	%edx,%ebp
1217	xorl	32(%esp),%ebx
1218	xorl	%edi,%ebp
1219	xorl	56(%esp),%ebx
1220	xorl	%esi,%ebp
1221	xorl	12(%esp),%ebx
1222	roll	$1,%ebx
1223	addl	%ebp,%eax
1224	rorl	$2,%edx
1225	movl	%ecx,%ebp
1226	roll	$5,%ebp
1227	movl	%ebx,24(%esp)
1228	leal	3395469782(%ebx,%eax,1),%ebx
1229	movl	28(%esp),%eax
1230	addl	%ebp,%ebx
1231
1232	movl	%ecx,%ebp
1233	xorl	36(%esp),%eax
1234	xorl	%edx,%ebp
1235	xorl	60(%esp),%eax
1236	xorl	%edi,%ebp
1237	xorl	16(%esp),%eax
1238	roll	$1,%eax
1239	addl	%ebp,%esi
1240	rorl	$2,%ecx
1241	movl	%ebx,%ebp
1242	roll	$5,%ebp
1243	movl	%eax,28(%esp)
1244	leal	3395469782(%eax,%esi,1),%eax
1245	movl	32(%esp),%esi
1246	addl	%ebp,%eax
1247
1248	movl	%ebx,%ebp
1249	xorl	40(%esp),%esi
1250	xorl	%ecx,%ebp
1251	xorl	(%esp),%esi
1252	xorl	%edx,%ebp
1253	xorl	20(%esp),%esi
1254	roll	$1,%esi
1255	addl	%ebp,%edi
1256	rorl	$2,%ebx
1257	movl	%eax,%ebp
1258	roll	$5,%ebp
1259	movl	%esi,32(%esp)
1260	leal	3395469782(%esi,%edi,1),%esi
1261	movl	36(%esp),%edi
1262	addl	%ebp,%esi
1263
1264	movl	%eax,%ebp
1265	xorl	44(%esp),%edi
1266	xorl	%ebx,%ebp
1267	xorl	4(%esp),%edi
1268	xorl	%ecx,%ebp
1269	xorl	24(%esp),%edi
1270	roll	$1,%edi
1271	addl	%ebp,%edx
1272	rorl	$2,%eax
1273	movl	%esi,%ebp
1274	roll	$5,%ebp
1275	movl	%edi,36(%esp)
1276	leal	3395469782(%edi,%edx,1),%edi
1277	movl	40(%esp),%edx
1278	addl	%ebp,%edi
1279
1280	movl	%esi,%ebp
1281	xorl	48(%esp),%edx
1282	xorl	%eax,%ebp
1283	xorl	8(%esp),%edx
1284	xorl	%ebx,%ebp
1285	xorl	28(%esp),%edx
1286	roll	$1,%edx
1287	addl	%ebp,%ecx
1288	rorl	$2,%esi
1289	movl	%edi,%ebp
1290	roll	$5,%ebp
1291	movl	%edx,40(%esp)
1292	leal	3395469782(%edx,%ecx,1),%edx
1293	movl	44(%esp),%ecx
1294	addl	%ebp,%edx
1295
1296	movl	%edi,%ebp
1297	xorl	52(%esp),%ecx
1298	xorl	%esi,%ebp
1299	xorl	12(%esp),%ecx
1300	xorl	%eax,%ebp
1301	xorl	32(%esp),%ecx
1302	roll	$1,%ecx
1303	addl	%ebp,%ebx
1304	rorl	$2,%edi
1305	movl	%edx,%ebp
1306	roll	$5,%ebp
1307	movl	%ecx,44(%esp)
1308	leal	3395469782(%ecx,%ebx,1),%ecx
1309	movl	48(%esp),%ebx
1310	addl	%ebp,%ecx
1311
1312	movl	%edx,%ebp
1313	xorl	56(%esp),%ebx
1314	xorl	%edi,%ebp
1315	xorl	16(%esp),%ebx
1316	xorl	%esi,%ebp
1317	xorl	36(%esp),%ebx
1318	roll	$1,%ebx
1319	addl	%ebp,%eax
1320	rorl	$2,%edx
1321	movl	%ecx,%ebp
1322	roll	$5,%ebp
1323	movl	%ebx,48(%esp)
1324	leal	3395469782(%ebx,%eax,1),%ebx
1325	movl	52(%esp),%eax
1326	addl	%ebp,%ebx
1327
1328	movl	%ecx,%ebp
1329	xorl	60(%esp),%eax
1330	xorl	%edx,%ebp
1331	xorl	20(%esp),%eax
1332	xorl	%edi,%ebp
1333	xorl	40(%esp),%eax
1334	roll	$1,%eax
1335	addl	%ebp,%esi
1336	rorl	$2,%ecx
1337	movl	%ebx,%ebp
1338	roll	$5,%ebp
1339	leal	3395469782(%eax,%esi,1),%eax
1340	movl	56(%esp),%esi
1341	addl	%ebp,%eax
1342
1343	movl	%ebx,%ebp
1344	xorl	(%esp),%esi
1345	xorl	%ecx,%ebp
1346	xorl	24(%esp),%esi
1347	xorl	%edx,%ebp
1348	xorl	44(%esp),%esi
1349	roll	$1,%esi
1350	addl	%ebp,%edi
1351	rorl	$2,%ebx
1352	movl	%eax,%ebp
1353	roll	$5,%ebp
1354	leal	3395469782(%esi,%edi,1),%esi
1355	movl	60(%esp),%edi
1356	addl	%ebp,%esi
1357
1358	movl	%eax,%ebp
1359	xorl	4(%esp),%edi
1360	xorl	%ebx,%ebp
1361	xorl	28(%esp),%edi
1362	xorl	%ecx,%ebp
1363	xorl	48(%esp),%edi
1364	roll	$1,%edi
1365	addl	%ebp,%edx
1366	rorl	$2,%eax
1367	movl	%esi,%ebp
1368	roll	$5,%ebp
1369	leal	3395469782(%edi,%edx,1),%edi
1370	addl	%ebp,%edi
1371	movl	96(%esp),%ebp
1372	movl	100(%esp),%edx
1373	addl	(%ebp),%edi
1374	addl	4(%ebp),%esi
1375	addl	8(%ebp),%eax
1376	addl	12(%ebp),%ebx
1377	addl	16(%ebp),%ecx
1378	movl	%edi,(%ebp)
1379	addl	$64,%edx
1380	movl	%esi,4(%ebp)
1381	cmpl	104(%esp),%edx
1382	movl	%eax,8(%ebp)
1383	movl	%ecx,%edi
1384	movl	%ebx,12(%ebp)
1385	movl	%edx,%esi
1386	movl	%ecx,16(%ebp)
1387	jb	.L002loop
1388	addl	$76,%esp
1389	popl	%edi
1390	popl	%esi
1391	popl	%ebx
1392	popl	%ebp
1393	ret
1394.size	sha1_block_data_order,.-.L_sha1_block_data_order_begin
1395.type	_sha1_block_data_order_shaext,@function
1396.align	16
1397_sha1_block_data_order_shaext:
1398	pushl	%ebp
1399	pushl	%ebx
1400	pushl	%esi
1401	pushl	%edi
1402	call	.L003pic_point
1403.L003pic_point:
1404	popl	%ebp
1405	leal	.LK_XX_XX-.L003pic_point(%ebp),%ebp
1406.Lshaext_shortcut:
1407	movl	20(%esp),%edi
1408	movl	%esp,%ebx
1409	movl	24(%esp),%esi
1410	movl	28(%esp),%ecx
1411	subl	$32,%esp
1412	movdqu	(%edi),%xmm0
1413	movd	16(%edi),%xmm1
1414	andl	$-32,%esp
1415	movdqa	80(%ebp),%xmm3
1416	movdqu	(%esi),%xmm4
1417	pshufd	$27,%xmm0,%xmm0
1418	movdqu	16(%esi),%xmm5
1419	pshufd	$27,%xmm1,%xmm1
1420	movdqu	32(%esi),%xmm6
1421.byte	102,15,56,0,227
1422	movdqu	48(%esi),%xmm7
1423.byte	102,15,56,0,235
1424.byte	102,15,56,0,243
1425.byte	102,15,56,0,251
1426	jmp	.L004loop_shaext
1427.align	16
1428.L004loop_shaext:
1429	decl	%ecx
1430	leal	64(%esi),%eax
1431	movdqa	%xmm1,(%esp)
1432	paddd	%xmm4,%xmm1
1433	cmovnel	%eax,%esi
1434	movdqa	%xmm0,16(%esp)
1435.byte	15,56,201,229
1436	movdqa	%xmm0,%xmm2
1437.byte	15,58,204,193,0
1438.byte	15,56,200,213
1439	pxor	%xmm6,%xmm4
1440.byte	15,56,201,238
1441.byte	15,56,202,231
1442	movdqa	%xmm0,%xmm1
1443.byte	15,58,204,194,0
1444.byte	15,56,200,206
1445	pxor	%xmm7,%xmm5
1446.byte	15,56,202,236
1447.byte	15,56,201,247
1448	movdqa	%xmm0,%xmm2
1449.byte	15,58,204,193,0
1450.byte	15,56,200,215
1451	pxor	%xmm4,%xmm6
1452.byte	15,56,201,252
1453.byte	15,56,202,245
1454	movdqa	%xmm0,%xmm1
1455.byte	15,58,204,194,0
1456.byte	15,56,200,204
1457	pxor	%xmm5,%xmm7
1458.byte	15,56,202,254
1459.byte	15,56,201,229
1460	movdqa	%xmm0,%xmm2
1461.byte	15,58,204,193,0
1462.byte	15,56,200,213
1463	pxor	%xmm6,%xmm4
1464.byte	15,56,201,238
1465.byte	15,56,202,231
1466	movdqa	%xmm0,%xmm1
1467.byte	15,58,204,194,1
1468.byte	15,56,200,206
1469	pxor	%xmm7,%xmm5
1470.byte	15,56,202,236
1471.byte	15,56,201,247
1472	movdqa	%xmm0,%xmm2
1473.byte	15,58,204,193,1
1474.byte	15,56,200,215
1475	pxor	%xmm4,%xmm6
1476.byte	15,56,201,252
1477.byte	15,56,202,245
1478	movdqa	%xmm0,%xmm1
1479.byte	15,58,204,194,1
1480.byte	15,56,200,204
1481	pxor	%xmm5,%xmm7
1482.byte	15,56,202,254
1483.byte	15,56,201,229
1484	movdqa	%xmm0,%xmm2
1485.byte	15,58,204,193,1
1486.byte	15,56,200,213
1487	pxor	%xmm6,%xmm4
1488.byte	15,56,201,238
1489.byte	15,56,202,231
1490	movdqa	%xmm0,%xmm1
1491.byte	15,58,204,194,1
1492.byte	15,56,200,206
1493	pxor	%xmm7,%xmm5
1494.byte	15,56,202,236
1495.byte	15,56,201,247
1496	movdqa	%xmm0,%xmm2
1497.byte	15,58,204,193,2
1498.byte	15,56,200,215
1499	pxor	%xmm4,%xmm6
1500.byte	15,56,201,252
1501.byte	15,56,202,245
1502	movdqa	%xmm0,%xmm1
1503.byte	15,58,204,194,2
1504.byte	15,56,200,204
1505	pxor	%xmm5,%xmm7
1506.byte	15,56,202,254
1507.byte	15,56,201,229
1508	movdqa	%xmm0,%xmm2
1509.byte	15,58,204,193,2
1510.byte	15,56,200,213
1511	pxor	%xmm6,%xmm4
1512.byte	15,56,201,238
1513.byte	15,56,202,231
1514	movdqa	%xmm0,%xmm1
1515.byte	15,58,204,194,2
1516.byte	15,56,200,206
1517	pxor	%xmm7,%xmm5
1518.byte	15,56,202,236
1519.byte	15,56,201,247
1520	movdqa	%xmm0,%xmm2
1521.byte	15,58,204,193,2
1522.byte	15,56,200,215
1523	pxor	%xmm4,%xmm6
1524.byte	15,56,201,252
1525.byte	15,56,202,245
1526	movdqa	%xmm0,%xmm1
1527.byte	15,58,204,194,3
1528.byte	15,56,200,204
1529	pxor	%xmm5,%xmm7
1530.byte	15,56,202,254
1531	movdqu	(%esi),%xmm4
1532	movdqa	%xmm0,%xmm2
1533.byte	15,58,204,193,3
1534.byte	15,56,200,213
1535	movdqu	16(%esi),%xmm5
1536.byte	102,15,56,0,227
1537	movdqa	%xmm0,%xmm1
1538.byte	15,58,204,194,3
1539.byte	15,56,200,206
1540	movdqu	32(%esi),%xmm6
1541.byte	102,15,56,0,235
1542	movdqa	%xmm0,%xmm2
1543.byte	15,58,204,193,3
1544.byte	15,56,200,215
1545	movdqu	48(%esi),%xmm7
1546.byte	102,15,56,0,243
1547	movdqa	%xmm0,%xmm1
1548.byte	15,58,204,194,3
1549	movdqa	(%esp),%xmm2
1550.byte	102,15,56,0,251
1551.byte	15,56,200,202
1552	paddd	16(%esp),%xmm0
1553	jnz	.L004loop_shaext
1554	pshufd	$27,%xmm0,%xmm0
1555	pshufd	$27,%xmm1,%xmm1
1556	movdqu	%xmm0,(%edi)
1557	movd	%xmm1,16(%edi)
1558	movl	%ebx,%esp
1559	popl	%edi
1560	popl	%esi
1561	popl	%ebx
1562	popl	%ebp
1563	ret
1564.size	_sha1_block_data_order_shaext,.-_sha1_block_data_order_shaext
1565.type	_sha1_block_data_order_ssse3,@function
1566.align	16
1567_sha1_block_data_order_ssse3:
1568	pushl	%ebp
1569	pushl	%ebx
1570	pushl	%esi
1571	pushl	%edi
1572	call	.L005pic_point
1573.L005pic_point:
1574	popl	%ebp
1575	leal	.LK_XX_XX-.L005pic_point(%ebp),%ebp
1576.Lssse3_shortcut:
1577	movdqa	(%ebp),%xmm7
1578	movdqa	16(%ebp),%xmm0
1579	movdqa	32(%ebp),%xmm1
1580	movdqa	48(%ebp),%xmm2
1581	movdqa	64(%ebp),%xmm6
1582	movl	20(%esp),%edi
1583	movl	24(%esp),%ebp
1584	movl	28(%esp),%edx
1585	movl	%esp,%esi
1586	subl	$208,%esp
1587	andl	$-64,%esp
1588	movdqa	%xmm0,112(%esp)
1589	movdqa	%xmm1,128(%esp)
1590	movdqa	%xmm2,144(%esp)
1591	shll	$6,%edx
1592	movdqa	%xmm7,160(%esp)
1593	addl	%ebp,%edx
1594	movdqa	%xmm6,176(%esp)
1595	addl	$64,%ebp
1596	movl	%edi,192(%esp)
1597	movl	%ebp,196(%esp)
1598	movl	%edx,200(%esp)
1599	movl	%esi,204(%esp)
1600	movl	(%edi),%eax
1601	movl	4(%edi),%ebx
1602	movl	8(%edi),%ecx
1603	movl	12(%edi),%edx
1604	movl	16(%edi),%edi
1605	movl	%ebx,%esi
1606	movdqu	-64(%ebp),%xmm0
1607	movdqu	-48(%ebp),%xmm1
1608	movdqu	-32(%ebp),%xmm2
1609	movdqu	-16(%ebp),%xmm3
1610.byte	102,15,56,0,198
1611.byte	102,15,56,0,206
1612.byte	102,15,56,0,214
1613	movdqa	%xmm7,96(%esp)
1614.byte	102,15,56,0,222
1615	paddd	%xmm7,%xmm0
1616	paddd	%xmm7,%xmm1
1617	paddd	%xmm7,%xmm2
1618	movdqa	%xmm0,(%esp)
1619	psubd	%xmm7,%xmm0
1620	movdqa	%xmm1,16(%esp)
1621	psubd	%xmm7,%xmm1
1622	movdqa	%xmm2,32(%esp)
1623	movl	%ecx,%ebp
1624	psubd	%xmm7,%xmm2
1625	xorl	%edx,%ebp
1626	pshufd	$238,%xmm0,%xmm4
1627	andl	%ebp,%esi
1628	jmp	.L006loop
1629.align	16
1630.L006loop:
1631	rorl	$2,%ebx
1632	xorl	%edx,%esi
1633	movl	%eax,%ebp
1634	punpcklqdq	%xmm1,%xmm4
1635	movdqa	%xmm3,%xmm6
1636	addl	(%esp),%edi
1637	xorl	%ecx,%ebx
1638	paddd	%xmm3,%xmm7
1639	movdqa	%xmm0,64(%esp)
1640	roll	$5,%eax
1641	addl	%esi,%edi
1642	psrldq	$4,%xmm6
1643	andl	%ebx,%ebp
1644	xorl	%ecx,%ebx
1645	pxor	%xmm0,%xmm4
1646	addl	%eax,%edi
1647	rorl	$7,%eax
1648	pxor	%xmm2,%xmm6
1649	xorl	%ecx,%ebp
1650	movl	%edi,%esi
1651	addl	4(%esp),%edx
1652	pxor	%xmm6,%xmm4
1653	xorl	%ebx,%eax
1654	roll	$5,%edi
1655	movdqa	%xmm7,48(%esp)
1656	addl	%ebp,%edx
1657	andl	%eax,%esi
1658	movdqa	%xmm4,%xmm0
1659	xorl	%ebx,%eax
1660	addl	%edi,%edx
1661	rorl	$7,%edi
1662	movdqa	%xmm4,%xmm6
1663	xorl	%ebx,%esi
1664	pslldq	$12,%xmm0
1665	paddd	%xmm4,%xmm4
1666	movl	%edx,%ebp
1667	addl	8(%esp),%ecx
1668	psrld	$31,%xmm6
1669	xorl	%eax,%edi
1670	roll	$5,%edx
1671	movdqa	%xmm0,%xmm7
1672	addl	%esi,%ecx
1673	andl	%edi,%ebp
1674	xorl	%eax,%edi
1675	psrld	$30,%xmm0
1676	addl	%edx,%ecx
1677	rorl	$7,%edx
1678	por	%xmm6,%xmm4
1679	xorl	%eax,%ebp
1680	movl	%ecx,%esi
1681	addl	12(%esp),%ebx
1682	pslld	$2,%xmm7
1683	xorl	%edi,%edx
1684	roll	$5,%ecx
1685	pxor	%xmm0,%xmm4
1686	movdqa	96(%esp),%xmm0
1687	addl	%ebp,%ebx
1688	andl	%edx,%esi
1689	pxor	%xmm7,%xmm4
1690	pshufd	$238,%xmm1,%xmm5
1691	xorl	%edi,%edx
1692	addl	%ecx,%ebx
1693	rorl	$7,%ecx
1694	xorl	%edi,%esi
1695	movl	%ebx,%ebp
1696	punpcklqdq	%xmm2,%xmm5
1697	movdqa	%xmm4,%xmm7
1698	addl	16(%esp),%eax
1699	xorl	%edx,%ecx
1700	paddd	%xmm4,%xmm0
1701	movdqa	%xmm1,80(%esp)
1702	roll	$5,%ebx
1703	addl	%esi,%eax
1704	psrldq	$4,%xmm7
1705	andl	%ecx,%ebp
1706	xorl	%edx,%ecx
1707	pxor	%xmm1,%xmm5
1708	addl	%ebx,%eax
1709	rorl	$7,%ebx
1710	pxor	%xmm3,%xmm7
1711	xorl	%edx,%ebp
1712	movl	%eax,%esi
1713	addl	20(%esp),%edi
1714	pxor	%xmm7,%xmm5
1715	xorl	%ecx,%ebx
1716	roll	$5,%eax
1717	movdqa	%xmm0,(%esp)
1718	addl	%ebp,%edi
1719	andl	%ebx,%esi
1720	movdqa	%xmm5,%xmm1
1721	xorl	%ecx,%ebx
1722	addl	%eax,%edi
1723	rorl	$7,%eax
1724	movdqa	%xmm5,%xmm7
1725	xorl	%ecx,%esi
1726	pslldq	$12,%xmm1
1727	paddd	%xmm5,%xmm5
1728	movl	%edi,%ebp
1729	addl	24(%esp),%edx
1730	psrld	$31,%xmm7
1731	xorl	%ebx,%eax
1732	roll	$5,%edi
1733	movdqa	%xmm1,%xmm0
1734	addl	%esi,%edx
1735	andl	%eax,%ebp
1736	xorl	%ebx,%eax
1737	psrld	$30,%xmm1
1738	addl	%edi,%edx
1739	rorl	$7,%edi
1740	por	%xmm7,%xmm5
1741	xorl	%ebx,%ebp
1742	movl	%edx,%esi
1743	addl	28(%esp),%ecx
1744	pslld	$2,%xmm0
1745	xorl	%eax,%edi
1746	roll	$5,%edx
1747	pxor	%xmm1,%xmm5
1748	movdqa	112(%esp),%xmm1
1749	addl	%ebp,%ecx
1750	andl	%edi,%esi
1751	pxor	%xmm0,%xmm5
1752	pshufd	$238,%xmm2,%xmm6
1753	xorl	%eax,%edi
1754	addl	%edx,%ecx
1755	rorl	$7,%edx
1756	xorl	%eax,%esi
1757	movl	%ecx,%ebp
1758	punpcklqdq	%xmm3,%xmm6
1759	movdqa	%xmm5,%xmm0
1760	addl	32(%esp),%ebx
1761	xorl	%edi,%edx
1762	paddd	%xmm5,%xmm1
1763	movdqa	%xmm2,96(%esp)
1764	roll	$5,%ecx
1765	addl	%esi,%ebx
1766	psrldq	$4,%xmm0
1767	andl	%edx,%ebp
1768	xorl	%edi,%edx
1769	pxor	%xmm2,%xmm6
1770	addl	%ecx,%ebx
1771	rorl	$7,%ecx
1772	pxor	%xmm4,%xmm0
1773	xorl	%edi,%ebp
1774	movl	%ebx,%esi
1775	addl	36(%esp),%eax
1776	pxor	%xmm0,%xmm6
1777	xorl	%edx,%ecx
1778	roll	$5,%ebx
1779	movdqa	%xmm1,16(%esp)
1780	addl	%ebp,%eax
1781	andl	%ecx,%esi
1782	movdqa	%xmm6,%xmm2
1783	xorl	%edx,%ecx
1784	addl	%ebx,%eax
1785	rorl	$7,%ebx
1786	movdqa	%xmm6,%xmm0
1787	xorl	%edx,%esi
1788	pslldq	$12,%xmm2
1789	paddd	%xmm6,%xmm6
1790	movl	%eax,%ebp
1791	addl	40(%esp),%edi
1792	psrld	$31,%xmm0
1793	xorl	%ecx,%ebx
1794	roll	$5,%eax
1795	movdqa	%xmm2,%xmm1
1796	addl	%esi,%edi
1797	andl	%ebx,%ebp
1798	xorl	%ecx,%ebx
1799	psrld	$30,%xmm2
1800	addl	%eax,%edi
1801	rorl	$7,%eax
1802	por	%xmm0,%xmm6
1803	xorl	%ecx,%ebp
1804	movdqa	64(%esp),%xmm0
1805	movl	%edi,%esi
1806	addl	44(%esp),%edx
1807	pslld	$2,%xmm1
1808	xorl	%ebx,%eax
1809	roll	$5,%edi
1810	pxor	%xmm2,%xmm6
1811	movdqa	112(%esp),%xmm2
1812	addl	%ebp,%edx
1813	andl	%eax,%esi
1814	pxor	%xmm1,%xmm6
1815	pshufd	$238,%xmm3,%xmm7
1816	xorl	%ebx,%eax
1817	addl	%edi,%edx
1818	rorl	$7,%edi
1819	xorl	%ebx,%esi
1820	movl	%edx,%ebp
1821	punpcklqdq	%xmm4,%xmm7
1822	movdqa	%xmm6,%xmm1
1823	addl	48(%esp),%ecx
1824	xorl	%eax,%edi
1825	paddd	%xmm6,%xmm2
1826	movdqa	%xmm3,64(%esp)
1827	roll	$5,%edx
1828	addl	%esi,%ecx
1829	psrldq	$4,%xmm1
1830	andl	%edi,%ebp
1831	xorl	%eax,%edi
1832	pxor	%xmm3,%xmm7
1833	addl	%edx,%ecx
1834	rorl	$7,%edx
1835	pxor	%xmm5,%xmm1
1836	xorl	%eax,%ebp
1837	movl	%ecx,%esi
1838	addl	52(%esp),%ebx
1839	pxor	%xmm1,%xmm7
1840	xorl	%edi,%edx
1841	roll	$5,%ecx
1842	movdqa	%xmm2,32(%esp)
1843	addl	%ebp,%ebx
1844	andl	%edx,%esi
1845	movdqa	%xmm7,%xmm3
1846	xorl	%edi,%edx
1847	addl	%ecx,%ebx
1848	rorl	$7,%ecx
1849	movdqa	%xmm7,%xmm1
1850	xorl	%edi,%esi
1851	pslldq	$12,%xmm3
1852	paddd	%xmm7,%xmm7
1853	movl	%ebx,%ebp
1854	addl	56(%esp),%eax
1855	psrld	$31,%xmm1
1856	xorl	%edx,%ecx
1857	roll	$5,%ebx
1858	movdqa	%xmm3,%xmm2
1859	addl	%esi,%eax
1860	andl	%ecx,%ebp
1861	xorl	%edx,%ecx
1862	psrld	$30,%xmm3
1863	addl	%ebx,%eax
1864	rorl	$7,%ebx
1865	por	%xmm1,%xmm7
1866	xorl	%edx,%ebp
1867	movdqa	80(%esp),%xmm1
1868	movl	%eax,%esi
1869	addl	60(%esp),%edi
1870	pslld	$2,%xmm2
1871	xorl	%ecx,%ebx
1872	roll	$5,%eax
1873	pxor	%xmm3,%xmm7
1874	movdqa	112(%esp),%xmm3
1875	addl	%ebp,%edi
1876	andl	%ebx,%esi
1877	pxor	%xmm2,%xmm7
1878	pshufd	$238,%xmm6,%xmm2
1879	xorl	%ecx,%ebx
1880	addl	%eax,%edi
1881	rorl	$7,%eax
1882	pxor	%xmm4,%xmm0
1883	punpcklqdq	%xmm7,%xmm2
1884	xorl	%ecx,%esi
1885	movl	%edi,%ebp
1886	addl	(%esp),%edx
1887	pxor	%xmm1,%xmm0
1888	movdqa	%xmm4,80(%esp)
1889	xorl	%ebx,%eax
1890	roll	$5,%edi
1891	movdqa	%xmm3,%xmm4
1892	addl	%esi,%edx
1893	paddd	%xmm7,%xmm3
1894	andl	%eax,%ebp
1895	pxor	%xmm2,%xmm0
1896	xorl	%ebx,%eax
1897	addl	%edi,%edx
1898	rorl	$7,%edi
1899	xorl	%ebx,%ebp
1900	movdqa	%xmm0,%xmm2
1901	movdqa	%xmm3,48(%esp)
1902	movl	%edx,%esi
1903	addl	4(%esp),%ecx
1904	xorl	%eax,%edi
1905	roll	$5,%edx
1906	pslld	$2,%xmm0
1907	addl	%ebp,%ecx
1908	andl	%edi,%esi
1909	psrld	$30,%xmm2
1910	xorl	%eax,%edi
1911	addl	%edx,%ecx
1912	rorl	$7,%edx
1913	xorl	%eax,%esi
1914	movl	%ecx,%ebp
1915	addl	8(%esp),%ebx
1916	xorl	%edi,%edx
1917	roll	$5,%ecx
1918	por	%xmm2,%xmm0
1919	addl	%esi,%ebx
1920	andl	%edx,%ebp
1921	movdqa	96(%esp),%xmm2
1922	xorl	%edi,%edx
1923	addl	%ecx,%ebx
1924	addl	12(%esp),%eax
1925	xorl	%edi,%ebp
1926	movl	%ebx,%esi
1927	pshufd	$238,%xmm7,%xmm3
1928	roll	$5,%ebx
1929	addl	%ebp,%eax
1930	xorl	%edx,%esi
1931	rorl	$7,%ecx
1932	addl	%ebx,%eax
1933	addl	16(%esp),%edi
1934	pxor	%xmm5,%xmm1
1935	punpcklqdq	%xmm0,%xmm3
1936	xorl	%ecx,%esi
1937	movl	%eax,%ebp
1938	roll	$5,%eax
1939	pxor	%xmm2,%xmm1
1940	movdqa	%xmm5,96(%esp)
1941	addl	%esi,%edi
1942	xorl	%ecx,%ebp
1943	movdqa	%xmm4,%xmm5
1944	rorl	$7,%ebx
1945	paddd	%xmm0,%xmm4
1946	addl	%eax,%edi
1947	pxor	%xmm3,%xmm1
1948	addl	20(%esp),%edx
1949	xorl	%ebx,%ebp
1950	movl	%edi,%esi
1951	roll	$5,%edi
1952	movdqa	%xmm1,%xmm3
1953	movdqa	%xmm4,(%esp)
1954	addl	%ebp,%edx
1955	xorl	%ebx,%esi
1956	rorl	$7,%eax
1957	addl	%edi,%edx
1958	pslld	$2,%xmm1
1959	addl	24(%esp),%ecx
1960	xorl	%eax,%esi
1961	psrld	$30,%xmm3
1962	movl	%edx,%ebp
1963	roll	$5,%edx
1964	addl	%esi,%ecx
1965	xorl	%eax,%ebp
1966	rorl	$7,%edi
1967	addl	%edx,%ecx
1968	por	%xmm3,%xmm1
1969	addl	28(%esp),%ebx
1970	xorl	%edi,%ebp
1971	movdqa	64(%esp),%xmm3
1972	movl	%ecx,%esi
1973	roll	$5,%ecx
1974	addl	%ebp,%ebx
1975	xorl	%edi,%esi
1976	rorl	$7,%edx
1977	pshufd	$238,%xmm0,%xmm4
1978	addl	%ecx,%ebx
1979	addl	32(%esp),%eax
1980	pxor	%xmm6,%xmm2
1981	punpcklqdq	%xmm1,%xmm4
1982	xorl	%edx,%esi
1983	movl	%ebx,%ebp
1984	roll	$5,%ebx
1985	pxor	%xmm3,%xmm2
1986	movdqa	%xmm6,64(%esp)
1987	addl	%esi,%eax
1988	xorl	%edx,%ebp
1989	movdqa	128(%esp),%xmm6
1990	rorl	$7,%ecx
1991	paddd	%xmm1,%xmm5
1992	addl	%ebx,%eax
1993	pxor	%xmm4,%xmm2
1994	addl	36(%esp),%edi
1995	xorl	%ecx,%ebp
1996	movl	%eax,%esi
1997	roll	$5,%eax
1998	movdqa	%xmm2,%xmm4
1999	movdqa	%xmm5,16(%esp)
2000	addl	%ebp,%edi
2001	xorl	%ecx,%esi
2002	rorl	$7,%ebx
2003	addl	%eax,%edi
2004	pslld	$2,%xmm2
2005	addl	40(%esp),%edx
2006	xorl	%ebx,%esi
2007	psrld	$30,%xmm4
2008	movl	%edi,%ebp
2009	roll	$5,%edi
2010	addl	%esi,%edx
2011	xorl	%ebx,%ebp
2012	rorl	$7,%eax
2013	addl	%edi,%edx
2014	por	%xmm4,%xmm2
2015	addl	44(%esp),%ecx
2016	xorl	%eax,%ebp
2017	movdqa	80(%esp),%xmm4
2018	movl	%edx,%esi
2019	roll	$5,%edx
2020	addl	%ebp,%ecx
2021	xorl	%eax,%esi
2022	rorl	$7,%edi
2023	pshufd	$238,%xmm1,%xmm5
2024	addl	%edx,%ecx
2025	addl	48(%esp),%ebx
2026	pxor	%xmm7,%xmm3
2027	punpcklqdq	%xmm2,%xmm5
2028	xorl	%edi,%esi
2029	movl	%ecx,%ebp
2030	roll	$5,%ecx
2031	pxor	%xmm4,%xmm3
2032	movdqa	%xmm7,80(%esp)
2033	addl	%esi,%ebx
2034	xorl	%edi,%ebp
2035	movdqa	%xmm6,%xmm7
2036	rorl	$7,%edx
2037	paddd	%xmm2,%xmm6
2038	addl	%ecx,%ebx
2039	pxor	%xmm5,%xmm3
2040	addl	52(%esp),%eax
2041	xorl	%edx,%ebp
2042	movl	%ebx,%esi
2043	roll	$5,%ebx
2044	movdqa	%xmm3,%xmm5
2045	movdqa	%xmm6,32(%esp)
2046	addl	%ebp,%eax
2047	xorl	%edx,%esi
2048	rorl	$7,%ecx
2049	addl	%ebx,%eax
2050	pslld	$2,%xmm3
2051	addl	56(%esp),%edi
2052	xorl	%ecx,%esi
2053	psrld	$30,%xmm5
2054	movl	%eax,%ebp
2055	roll	$5,%eax
2056	addl	%esi,%edi
2057	xorl	%ecx,%ebp
2058	rorl	$7,%ebx
2059	addl	%eax,%edi
2060	por	%xmm5,%xmm3
2061	addl	60(%esp),%edx
2062	xorl	%ebx,%ebp
2063	movdqa	96(%esp),%xmm5
2064	movl	%edi,%esi
2065	roll	$5,%edi
2066	addl	%ebp,%edx
2067	xorl	%ebx,%esi
2068	rorl	$7,%eax
2069	pshufd	$238,%xmm2,%xmm6
2070	addl	%edi,%edx
2071	addl	(%esp),%ecx
2072	pxor	%xmm0,%xmm4
2073	punpcklqdq	%xmm3,%xmm6
2074	xorl	%eax,%esi
2075	movl	%edx,%ebp
2076	roll	$5,%edx
2077	pxor	%xmm5,%xmm4
2078	movdqa	%xmm0,96(%esp)
2079	addl	%esi,%ecx
2080	xorl	%eax,%ebp
2081	movdqa	%xmm7,%xmm0
2082	rorl	$7,%edi
2083	paddd	%xmm3,%xmm7
2084	addl	%edx,%ecx
2085	pxor	%xmm6,%xmm4
2086	addl	4(%esp),%ebx
2087	xorl	%edi,%ebp
2088	movl	%ecx,%esi
2089	roll	$5,%ecx
2090	movdqa	%xmm4,%xmm6
2091	movdqa	%xmm7,48(%esp)
2092	addl	%ebp,%ebx
2093	xorl	%edi,%esi
2094	rorl	$7,%edx
2095	addl	%ecx,%ebx
2096	pslld	$2,%xmm4
2097	addl	8(%esp),%eax
2098	xorl	%edx,%esi
2099	psrld	$30,%xmm6
2100	movl	%ebx,%ebp
2101	roll	$5,%ebx
2102	addl	%esi,%eax
2103	xorl	%edx,%ebp
2104	rorl	$7,%ecx
2105	addl	%ebx,%eax
2106	por	%xmm6,%xmm4
2107	addl	12(%esp),%edi
2108	xorl	%ecx,%ebp
2109	movdqa	64(%esp),%xmm6
2110	movl	%eax,%esi
2111	roll	$5,%eax
2112	addl	%ebp,%edi
2113	xorl	%ecx,%esi
2114	rorl	$7,%ebx
2115	pshufd	$238,%xmm3,%xmm7
2116	addl	%eax,%edi
2117	addl	16(%esp),%edx
2118	pxor	%xmm1,%xmm5
2119	punpcklqdq	%xmm4,%xmm7
2120	xorl	%ebx,%esi
2121	movl	%edi,%ebp
2122	roll	$5,%edi
2123	pxor	%xmm6,%xmm5
2124	movdqa	%xmm1,64(%esp)
2125	addl	%esi,%edx
2126	xorl	%ebx,%ebp
2127	movdqa	%xmm0,%xmm1
2128	rorl	$7,%eax
2129	paddd	%xmm4,%xmm0
2130	addl	%edi,%edx
2131	pxor	%xmm7,%xmm5
2132	addl	20(%esp),%ecx
2133	xorl	%eax,%ebp
2134	movl	%edx,%esi
2135	roll	$5,%edx
2136	movdqa	%xmm5,%xmm7
2137	movdqa	%xmm0,(%esp)
2138	addl	%ebp,%ecx
2139	xorl	%eax,%esi
2140	rorl	$7,%edi
2141	addl	%edx,%ecx
2142	pslld	$2,%xmm5
2143	addl	24(%esp),%ebx
2144	xorl	%edi,%esi
2145	psrld	$30,%xmm7
2146	movl	%ecx,%ebp
2147	roll	$5,%ecx
2148	addl	%esi,%ebx
2149	xorl	%edi,%ebp
2150	rorl	$7,%edx
2151	addl	%ecx,%ebx
2152	por	%xmm7,%xmm5
2153	addl	28(%esp),%eax
2154	movdqa	80(%esp),%xmm7
2155	rorl	$7,%ecx
2156	movl	%ebx,%esi
2157	xorl	%edx,%ebp
2158	roll	$5,%ebx
2159	pshufd	$238,%xmm4,%xmm0
2160	addl	%ebp,%eax
2161	xorl	%ecx,%esi
2162	xorl	%edx,%ecx
2163	addl	%ebx,%eax
2164	addl	32(%esp),%edi
2165	pxor	%xmm2,%xmm6
2166	punpcklqdq	%xmm5,%xmm0
2167	andl	%ecx,%esi
2168	xorl	%edx,%ecx
2169	rorl	$7,%ebx
2170	pxor	%xmm7,%xmm6
2171	movdqa	%xmm2,80(%esp)
2172	movl	%eax,%ebp
2173	xorl	%ecx,%esi
2174	roll	$5,%eax
2175	movdqa	%xmm1,%xmm2
2176	addl	%esi,%edi
2177	paddd	%xmm5,%xmm1
2178	xorl	%ebx,%ebp
2179	pxor	%xmm0,%xmm6
2180	xorl	%ecx,%ebx
2181	addl	%eax,%edi
2182	addl	36(%esp),%edx
2183	andl	%ebx,%ebp
2184	movdqa	%xmm6,%xmm0
2185	movdqa	%xmm1,16(%esp)
2186	xorl	%ecx,%ebx
2187	rorl	$7,%eax
2188	movl	%edi,%esi
2189	xorl	%ebx,%ebp
2190	roll	$5,%edi
2191	pslld	$2,%xmm6
2192	addl	%ebp,%edx
2193	xorl	%eax,%esi
2194	psrld	$30,%xmm0
2195	xorl	%ebx,%eax
2196	addl	%edi,%edx
2197	addl	40(%esp),%ecx
2198	andl	%eax,%esi
2199	xorl	%ebx,%eax
2200	rorl	$7,%edi
2201	por	%xmm0,%xmm6
2202	movl	%edx,%ebp
2203	xorl	%eax,%esi
2204	movdqa	96(%esp),%xmm0
2205	roll	$5,%edx
2206	addl	%esi,%ecx
2207	xorl	%edi,%ebp
2208	xorl	%eax,%edi
2209	addl	%edx,%ecx
2210	pshufd	$238,%xmm5,%xmm1
2211	addl	44(%esp),%ebx
2212	andl	%edi,%ebp
2213	xorl	%eax,%edi
2214	rorl	$7,%edx
2215	movl	%ecx,%esi
2216	xorl	%edi,%ebp
2217	roll	$5,%ecx
2218	addl	%ebp,%ebx
2219	xorl	%edx,%esi
2220	xorl	%edi,%edx
2221	addl	%ecx,%ebx
2222	addl	48(%esp),%eax
2223	pxor	%xmm3,%xmm7
2224	punpcklqdq	%xmm6,%xmm1
2225	andl	%edx,%esi
2226	xorl	%edi,%edx
2227	rorl	$7,%ecx
2228	pxor	%xmm0,%xmm7
2229	movdqa	%xmm3,96(%esp)
2230	movl	%ebx,%ebp
2231	xorl	%edx,%esi
2232	roll	$5,%ebx
2233	movdqa	144(%esp),%xmm3
2234	addl	%esi,%eax
2235	paddd	%xmm6,%xmm2
2236	xorl	%ecx,%ebp
2237	pxor	%xmm1,%xmm7
2238	xorl	%edx,%ecx
2239	addl	%ebx,%eax
2240	addl	52(%esp),%edi
2241	andl	%ecx,%ebp
2242	movdqa	%xmm7,%xmm1
2243	movdqa	%xmm2,32(%esp)
2244	xorl	%edx,%ecx
2245	rorl	$7,%ebx
2246	movl	%eax,%esi
2247	xorl	%ecx,%ebp
2248	roll	$5,%eax
2249	pslld	$2,%xmm7
2250	addl	%ebp,%edi
2251	xorl	%ebx,%esi
2252	psrld	$30,%xmm1
2253	xorl	%ecx,%ebx
2254	addl	%eax,%edi
2255	addl	56(%esp),%edx
2256	andl	%ebx,%esi
2257	xorl	%ecx,%ebx
2258	rorl	$7,%eax
2259	por	%xmm1,%xmm7
2260	movl	%edi,%ebp
2261	xorl	%ebx,%esi
2262	movdqa	64(%esp),%xmm1
2263	roll	$5,%edi
2264	addl	%esi,%edx
2265	xorl	%eax,%ebp
2266	xorl	%ebx,%eax
2267	addl	%edi,%edx
2268	pshufd	$238,%xmm6,%xmm2
2269	addl	60(%esp),%ecx
2270	andl	%eax,%ebp
2271	xorl	%ebx,%eax
2272	rorl	$7,%edi
2273	movl	%edx,%esi
2274	xorl	%eax,%ebp
2275	roll	$5,%edx
2276	addl	%ebp,%ecx
2277	xorl	%edi,%esi
2278	xorl	%eax,%edi
2279	addl	%edx,%ecx
2280	addl	(%esp),%ebx
2281	pxor	%xmm4,%xmm0
2282	punpcklqdq	%xmm7,%xmm2
2283	andl	%edi,%esi
2284	xorl	%eax,%edi
2285	rorl	$7,%edx
2286	pxor	%xmm1,%xmm0
2287	movdqa	%xmm4,64(%esp)
2288	movl	%ecx,%ebp
2289	xorl	%edi,%esi
2290	roll	$5,%ecx
2291	movdqa	%xmm3,%xmm4
2292	addl	%esi,%ebx
2293	paddd	%xmm7,%xmm3
2294	xorl	%edx,%ebp
2295	pxor	%xmm2,%xmm0
2296	xorl	%edi,%edx
2297	addl	%ecx,%ebx
2298	addl	4(%esp),%eax
2299	andl	%edx,%ebp
2300	movdqa	%xmm0,%xmm2
2301	movdqa	%xmm3,48(%esp)
2302	xorl	%edi,%edx
2303	rorl	$7,%ecx
2304	movl	%ebx,%esi
2305	xorl	%edx,%ebp
2306	roll	$5,%ebx
2307	pslld	$2,%xmm0
2308	addl	%ebp,%eax
2309	xorl	%ecx,%esi
2310	psrld	$30,%xmm2
2311	xorl	%edx,%ecx
2312	addl	%ebx,%eax
2313	addl	8(%esp),%edi
2314	andl	%ecx,%esi
2315	xorl	%edx,%ecx
2316	rorl	$7,%ebx
2317	por	%xmm2,%xmm0
2318	movl	%eax,%ebp
2319	xorl	%ecx,%esi
2320	movdqa	80(%esp),%xmm2
2321	roll	$5,%eax
2322	addl	%esi,%edi
2323	xorl	%ebx,%ebp
2324	xorl	%ecx,%ebx
2325	addl	%eax,%edi
2326	pshufd	$238,%xmm7,%xmm3
2327	addl	12(%esp),%edx
2328	andl	%ebx,%ebp
2329	xorl	%ecx,%ebx
2330	rorl	$7,%eax
2331	movl	%edi,%esi
2332	xorl	%ebx,%ebp
2333	roll	$5,%edi
2334	addl	%ebp,%edx
2335	xorl	%eax,%esi
2336	xorl	%ebx,%eax
2337	addl	%edi,%edx
2338	addl	16(%esp),%ecx
2339	pxor	%xmm5,%xmm1
2340	punpcklqdq	%xmm0,%xmm3
2341	andl	%eax,%esi
2342	xorl	%ebx,%eax
2343	rorl	$7,%edi
2344	pxor	%xmm2,%xmm1
2345	movdqa	%xmm5,80(%esp)
2346	movl	%edx,%ebp
2347	xorl	%eax,%esi
2348	roll	$5,%edx
2349	movdqa	%xmm4,%xmm5
2350	addl	%esi,%ecx
2351	paddd	%xmm0,%xmm4
2352	xorl	%edi,%ebp
2353	pxor	%xmm3,%xmm1
2354	xorl	%eax,%edi
2355	addl	%edx,%ecx
2356	addl	20(%esp),%ebx
2357	andl	%edi,%ebp
2358	movdqa	%xmm1,%xmm3
2359	movdqa	%xmm4,(%esp)
2360	xorl	%eax,%edi
2361	rorl	$7,%edx
2362	movl	%ecx,%esi
2363	xorl	%edi,%ebp
2364	roll	$5,%ecx
2365	pslld	$2,%xmm1
2366	addl	%ebp,%ebx
2367	xorl	%edx,%esi
2368	psrld	$30,%xmm3
2369	xorl	%edi,%edx
2370	addl	%ecx,%ebx
2371	addl	24(%esp),%eax
2372	andl	%edx,%esi
2373	xorl	%edi,%edx
2374	rorl	$7,%ecx
2375	por	%xmm3,%xmm1
2376	movl	%ebx,%ebp
2377	xorl	%edx,%esi
2378	movdqa	96(%esp),%xmm3
2379	roll	$5,%ebx
2380	addl	%esi,%eax
2381	xorl	%ecx,%ebp
2382	xorl	%edx,%ecx
2383	addl	%ebx,%eax
2384	pshufd	$238,%xmm0,%xmm4
2385	addl	28(%esp),%edi
2386	andl	%ecx,%ebp
2387	xorl	%edx,%ecx
2388	rorl	$7,%ebx
2389	movl	%eax,%esi
2390	xorl	%ecx,%ebp
2391	roll	$5,%eax
2392	addl	%ebp,%edi
2393	xorl	%ebx,%esi
2394	xorl	%ecx,%ebx
2395	addl	%eax,%edi
2396	addl	32(%esp),%edx
2397	pxor	%xmm6,%xmm2
2398	punpcklqdq	%xmm1,%xmm4
2399	andl	%ebx,%esi
2400	xorl	%ecx,%ebx
2401	rorl	$7,%eax
2402	pxor	%xmm3,%xmm2
2403	movdqa	%xmm6,96(%esp)
2404	movl	%edi,%ebp
2405	xorl	%ebx,%esi
2406	roll	$5,%edi
2407	movdqa	%xmm5,%xmm6
2408	addl	%esi,%edx
2409	paddd	%xmm1,%xmm5
2410	xorl	%eax,%ebp
2411	pxor	%xmm4,%xmm2
2412	xorl	%ebx,%eax
2413	addl	%edi,%edx
2414	addl	36(%esp),%ecx
2415	andl	%eax,%ebp
2416	movdqa	%xmm2,%xmm4
2417	movdqa	%xmm5,16(%esp)
2418	xorl	%ebx,%eax
2419	rorl	$7,%edi
2420	movl	%edx,%esi
2421	xorl	%eax,%ebp
2422	roll	$5,%edx
2423	pslld	$2,%xmm2
2424	addl	%ebp,%ecx
2425	xorl	%edi,%esi
2426	psrld	$30,%xmm4
2427	xorl	%eax,%edi
2428	addl	%edx,%ecx
2429	addl	40(%esp),%ebx
2430	andl	%edi,%esi
2431	xorl	%eax,%edi
2432	rorl	$7,%edx
2433	por	%xmm4,%xmm2
2434	movl	%ecx,%ebp
2435	xorl	%edi,%esi
2436	movdqa	64(%esp),%xmm4
2437	roll	$5,%ecx
2438	addl	%esi,%ebx
2439	xorl	%edx,%ebp
2440	xorl	%edi,%edx
2441	addl	%ecx,%ebx
2442	pshufd	$238,%xmm1,%xmm5
2443	addl	44(%esp),%eax
2444	andl	%edx,%ebp
2445	xorl	%edi,%edx
2446	rorl	$7,%ecx
2447	movl	%ebx,%esi
2448	xorl	%edx,%ebp
2449	roll	$5,%ebx
2450	addl	%ebp,%eax
2451	xorl	%edx,%esi
2452	addl	%ebx,%eax
2453	addl	48(%esp),%edi
2454	pxor	%xmm7,%xmm3
2455	punpcklqdq	%xmm2,%xmm5
2456	xorl	%ecx,%esi
2457	movl	%eax,%ebp
2458	roll	$5,%eax
2459	pxor	%xmm4,%xmm3
2460	movdqa	%xmm7,64(%esp)
2461	addl	%esi,%edi
2462	xorl	%ecx,%ebp
2463	movdqa	%xmm6,%xmm7
2464	rorl	$7,%ebx
2465	paddd	%xmm2,%xmm6
2466	addl	%eax,%edi
2467	pxor	%xmm5,%xmm3
2468	addl	52(%esp),%edx
2469	xorl	%ebx,%ebp
2470	movl	%edi,%esi
2471	roll	$5,%edi
2472	movdqa	%xmm3,%xmm5
2473	movdqa	%xmm6,32(%esp)
2474	addl	%ebp,%edx
2475	xorl	%ebx,%esi
2476	rorl	$7,%eax
2477	addl	%edi,%edx
2478	pslld	$2,%xmm3
2479	addl	56(%esp),%ecx
2480	xorl	%eax,%esi
2481	psrld	$30,%xmm5
2482	movl	%edx,%ebp
2483	roll	$5,%edx
2484	addl	%esi,%ecx
2485	xorl	%eax,%ebp
2486	rorl	$7,%edi
2487	addl	%edx,%ecx
2488	por	%xmm5,%xmm3
2489	addl	60(%esp),%ebx
2490	xorl	%edi,%ebp
2491	movl	%ecx,%esi
2492	roll	$5,%ecx
2493	addl	%ebp,%ebx
2494	xorl	%edi,%esi
2495	rorl	$7,%edx
2496	addl	%ecx,%ebx
2497	addl	(%esp),%eax
2498	xorl	%edx,%esi
2499	movl	%ebx,%ebp
2500	roll	$5,%ebx
2501	addl	%esi,%eax
2502	xorl	%edx,%ebp
2503	rorl	$7,%ecx
2504	paddd	%xmm3,%xmm7
2505	addl	%ebx,%eax
2506	addl	4(%esp),%edi
2507	xorl	%ecx,%ebp
2508	movl	%eax,%esi
2509	movdqa	%xmm7,48(%esp)
2510	roll	$5,%eax
2511	addl	%ebp,%edi
2512	xorl	%ecx,%esi
2513	rorl	$7,%ebx
2514	addl	%eax,%edi
2515	addl	8(%esp),%edx
2516	xorl	%ebx,%esi
2517	movl	%edi,%ebp
2518	roll	$5,%edi
2519	addl	%esi,%edx
2520	xorl	%ebx,%ebp
2521	rorl	$7,%eax
2522	addl	%edi,%edx
2523	addl	12(%esp),%ecx
2524	xorl	%eax,%ebp
2525	movl	%edx,%esi
2526	roll	$5,%edx
2527	addl	%ebp,%ecx
2528	xorl	%eax,%esi
2529	rorl	$7,%edi
2530	addl	%edx,%ecx
2531	movl	196(%esp),%ebp
2532	cmpl	200(%esp),%ebp
2533	je	.L007done
2534	movdqa	160(%esp),%xmm7
2535	movdqa	176(%esp),%xmm6
2536	movdqu	(%ebp),%xmm0
2537	movdqu	16(%ebp),%xmm1
2538	movdqu	32(%ebp),%xmm2
2539	movdqu	48(%ebp),%xmm3
2540	addl	$64,%ebp
2541.byte	102,15,56,0,198
2542	movl	%ebp,196(%esp)
2543	movdqa	%xmm7,96(%esp)
2544	addl	16(%esp),%ebx
2545	xorl	%edi,%esi
2546	movl	%ecx,%ebp
2547	roll	$5,%ecx
2548	addl	%esi,%ebx
2549	xorl	%edi,%ebp
2550	rorl	$7,%edx
2551.byte	102,15,56,0,206
2552	addl	%ecx,%ebx
2553	addl	20(%esp),%eax
2554	xorl	%edx,%ebp
2555	movl	%ebx,%esi
2556	paddd	%xmm7,%xmm0
2557	roll	$5,%ebx
2558	addl	%ebp,%eax
2559	xorl	%edx,%esi
2560	rorl	$7,%ecx
2561	movdqa	%xmm0,(%esp)
2562	addl	%ebx,%eax
2563	addl	24(%esp),%edi
2564	xorl	%ecx,%esi
2565	movl	%eax,%ebp
2566	psubd	%xmm7,%xmm0
2567	roll	$5,%eax
2568	addl	%esi,%edi
2569	xorl	%ecx,%ebp
2570	rorl	$7,%ebx
2571	addl	%eax,%edi
2572	addl	28(%esp),%edx
2573	xorl	%ebx,%ebp
2574	movl	%edi,%esi
2575	roll	$5,%edi
2576	addl	%ebp,%edx
2577	xorl	%ebx,%esi
2578	rorl	$7,%eax
2579	addl	%edi,%edx
2580	addl	32(%esp),%ecx
2581	xorl	%eax,%esi
2582	movl	%edx,%ebp
2583	roll	$5,%edx
2584	addl	%esi,%ecx
2585	xorl	%eax,%ebp
2586	rorl	$7,%edi
2587.byte	102,15,56,0,214
2588	addl	%edx,%ecx
2589	addl	36(%esp),%ebx
2590	xorl	%edi,%ebp
2591	movl	%ecx,%esi
2592	paddd	%xmm7,%xmm1
2593	roll	$5,%ecx
2594	addl	%ebp,%ebx
2595	xorl	%edi,%esi
2596	rorl	$7,%edx
2597	movdqa	%xmm1,16(%esp)
2598	addl	%ecx,%ebx
2599	addl	40(%esp),%eax
2600	xorl	%edx,%esi
2601	movl	%ebx,%ebp
2602	psubd	%xmm7,%xmm1
2603	roll	$5,%ebx
2604	addl	%esi,%eax
2605	xorl	%edx,%ebp
2606	rorl	$7,%ecx
2607	addl	%ebx,%eax
2608	addl	44(%esp),%edi
2609	xorl	%ecx,%ebp
2610	movl	%eax,%esi
2611	roll	$5,%eax
2612	addl	%ebp,%edi
2613	xorl	%ecx,%esi
2614	rorl	$7,%ebx
2615	addl	%eax,%edi
2616	addl	48(%esp),%edx
2617	xorl	%ebx,%esi
2618	movl	%edi,%ebp
2619	roll	$5,%edi
2620	addl	%esi,%edx
2621	xorl	%ebx,%ebp
2622	rorl	$7,%eax
2623.byte	102,15,56,0,222
2624	addl	%edi,%edx
2625	addl	52(%esp),%ecx
2626	xorl	%eax,%ebp
2627	movl	%edx,%esi
2628	paddd	%xmm7,%xmm2
2629	roll	$5,%edx
2630	addl	%ebp,%ecx
2631	xorl	%eax,%esi
2632	rorl	$7,%edi
2633	movdqa	%xmm2,32(%esp)
2634	addl	%edx,%ecx
2635	addl	56(%esp),%ebx
2636	xorl	%edi,%esi
2637	movl	%ecx,%ebp
2638	psubd	%xmm7,%xmm2
2639	roll	$5,%ecx
2640	addl	%esi,%ebx
2641	xorl	%edi,%ebp
2642	rorl	$7,%edx
2643	addl	%ecx,%ebx
2644	addl	60(%esp),%eax
2645	xorl	%edx,%ebp
2646	movl	%ebx,%esi
2647	roll	$5,%ebx
2648	addl	%ebp,%eax
2649	rorl	$7,%ecx
2650	addl	%ebx,%eax
2651	movl	192(%esp),%ebp
2652	addl	(%ebp),%eax
2653	addl	4(%ebp),%esi
2654	addl	8(%ebp),%ecx
2655	movl	%eax,(%ebp)
2656	addl	12(%ebp),%edx
2657	movl	%esi,4(%ebp)
2658	addl	16(%ebp),%edi
2659	movl	%ecx,8(%ebp)
2660	movl	%ecx,%ebx
2661	movl	%edx,12(%ebp)
2662	xorl	%edx,%ebx
2663	movl	%edi,16(%ebp)
2664	movl	%esi,%ebp
2665	pshufd	$238,%xmm0,%xmm4
2666	andl	%ebx,%esi
2667	movl	%ebp,%ebx
2668	jmp	.L006loop
2669.align	16
2670.L007done:
2671	addl	16(%esp),%ebx
2672	xorl	%edi,%esi
2673	movl	%ecx,%ebp
2674	roll	$5,%ecx
2675	addl	%esi,%ebx
2676	xorl	%edi,%ebp
2677	rorl	$7,%edx
2678	addl	%ecx,%ebx
2679	addl	20(%esp),%eax
2680	xorl	%edx,%ebp
2681	movl	%ebx,%esi
2682	roll	$5,%ebx
2683	addl	%ebp,%eax
2684	xorl	%edx,%esi
2685	rorl	$7,%ecx
2686	addl	%ebx,%eax
2687	addl	24(%esp),%edi
2688	xorl	%ecx,%esi
2689	movl	%eax,%ebp
2690	roll	$5,%eax
2691	addl	%esi,%edi
2692	xorl	%ecx,%ebp
2693	rorl	$7,%ebx
2694	addl	%eax,%edi
2695	addl	28(%esp),%edx
2696	xorl	%ebx,%ebp
2697	movl	%edi,%esi
2698	roll	$5,%edi
2699	addl	%ebp,%edx
2700	xorl	%ebx,%esi
2701	rorl	$7,%eax
2702	addl	%edi,%edx
2703	addl	32(%esp),%ecx
2704	xorl	%eax,%esi
2705	movl	%edx,%ebp
2706	roll	$5,%edx
2707	addl	%esi,%ecx
2708	xorl	%eax,%ebp
2709	rorl	$7,%edi
2710	addl	%edx,%ecx
2711	addl	36(%esp),%ebx
2712	xorl	%edi,%ebp
2713	movl	%ecx,%esi
2714	roll	$5,%ecx
2715	addl	%ebp,%ebx
2716	xorl	%edi,%esi
2717	rorl	$7,%edx
2718	addl	%ecx,%ebx
2719	addl	40(%esp),%eax
2720	xorl	%edx,%esi
2721	movl	%ebx,%ebp
2722	roll	$5,%ebx
2723	addl	%esi,%eax
2724	xorl	%edx,%ebp
2725	rorl	$7,%ecx
2726	addl	%ebx,%eax
2727	addl	44(%esp),%edi
2728	xorl	%ecx,%ebp
2729	movl	%eax,%esi
2730	roll	$5,%eax
2731	addl	%ebp,%edi
2732	xorl	%ecx,%esi
2733	rorl	$7,%ebx
2734	addl	%eax,%edi
2735	addl	48(%esp),%edx
2736	xorl	%ebx,%esi
2737	movl	%edi,%ebp
2738	roll	$5,%edi
2739	addl	%esi,%edx
2740	xorl	%ebx,%ebp
2741	rorl	$7,%eax
2742	addl	%edi,%edx
2743	addl	52(%esp),%ecx
2744	xorl	%eax,%ebp
2745	movl	%edx,%esi
2746	roll	$5,%edx
2747	addl	%ebp,%ecx
2748	xorl	%eax,%esi
2749	rorl	$7,%edi
2750	addl	%edx,%ecx
2751	addl	56(%esp),%ebx
2752	xorl	%edi,%esi
2753	movl	%ecx,%ebp
2754	roll	$5,%ecx
2755	addl	%esi,%ebx
2756	xorl	%edi,%ebp
2757	rorl	$7,%edx
2758	addl	%ecx,%ebx
2759	addl	60(%esp),%eax
2760	xorl	%edx,%ebp
2761	movl	%ebx,%esi
2762	roll	$5,%ebx
2763	addl	%ebp,%eax
2764	rorl	$7,%ecx
2765	addl	%ebx,%eax
2766	movl	192(%esp),%ebp
2767	addl	(%ebp),%eax
2768	movl	204(%esp),%esp
2769	addl	4(%ebp),%esi
2770	addl	8(%ebp),%ecx
2771	movl	%eax,(%ebp)
2772	addl	12(%ebp),%edx
2773	movl	%esi,4(%ebp)
2774	addl	16(%ebp),%edi
2775	movl	%ecx,8(%ebp)
2776	movl	%edx,12(%ebp)
2777	movl	%edi,16(%ebp)
2778	popl	%edi
2779	popl	%esi
2780	popl	%ebx
2781	popl	%ebp
2782	ret
2783.size	_sha1_block_data_order_ssse3,.-_sha1_block_data_order_ssse3
2784.align	64
2785.LK_XX_XX:
2786.long	1518500249,1518500249,1518500249,1518500249
2787.long	1859775393,1859775393,1859775393,1859775393
2788.long	2400959708,2400959708,2400959708,2400959708
2789.long	3395469782,3395469782,3395469782,3395469782
2790.long	66051,67438087,134810123,202182159
2791.byte	15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0
2792.byte	83,72,65,49,32,98,108,111,99,107,32,116,114,97,110,115
2793.byte	102,111,114,109,32,102,111,114,32,120,56,54,44,32,67,82
2794.byte	89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112
2795.byte	114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
2796.comm	OPENSSL_ia32cap_P,16,4
2797