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