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