• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// This file is generated from a similarly-named Perl script in the BoringSSL
2// source tree. Do not edit by hand.
3
4#if defined(__has_feature)
5#if __has_feature(memory_sanitizer) && !defined(OPENSSL_NO_ASM)
6#define OPENSSL_NO_ASM
7#endif
8#endif
9
10#if !defined(OPENSSL_NO_ASM) && defined(__i386__) && defined(__APPLE__)
11#if defined(BORINGSSL_PREFIX)
12#include <boringssl_prefix_symbols_asm.h>
13#endif
14.text
15.globl	_sha1_block_data_order
16.private_extern	_sha1_block_data_order
17.align	4
18_sha1_block_data_order:
19L_sha1_block_data_order_begin:
20	pushl	%ebp
21	pushl	%ebx
22	pushl	%esi
23	pushl	%edi
24	call	L000pic_point
25L000pic_point:
26	popl	%ebp
27	movl	L_OPENSSL_ia32cap_P$non_lazy_ptr-L000pic_point(%ebp),%esi
28	leal	LK_XX_XX-L000pic_point(%ebp),%ebp
29	movl	(%esi),%eax
30	movl	4(%esi),%edx
31	testl	$512,%edx
32	jz	L001x86
33	movl	8(%esi),%ecx
34	testl	$16777216,%eax
35	jz	L001x86
36	andl	$268435456,%edx
37	andl	$1073741824,%eax
38	orl	%edx,%eax
39	cmpl	$1342177280,%eax
40	je	Lavx_shortcut
41	jmp	Lssse3_shortcut
42.align	4,0x90
43L001x86:
44	movl	20(%esp),%ebp
45	movl	24(%esp),%esi
46	movl	28(%esp),%eax
47	subl	$76,%esp
48	shll	$6,%eax
49	addl	%esi,%eax
50	movl	%eax,104(%esp)
51	movl	16(%ebp),%edi
52	jmp	L002loop
53.align	4,0x90
54L002loop:
55	movl	(%esi),%eax
56	movl	4(%esi),%ebx
57	movl	8(%esi),%ecx
58	movl	12(%esi),%edx
59	bswap	%eax
60	bswap	%ebx
61	bswap	%ecx
62	bswap	%edx
63	movl	%eax,(%esp)
64	movl	%ebx,4(%esp)
65	movl	%ecx,8(%esp)
66	movl	%edx,12(%esp)
67	movl	16(%esi),%eax
68	movl	20(%esi),%ebx
69	movl	24(%esi),%ecx
70	movl	28(%esi),%edx
71	bswap	%eax
72	bswap	%ebx
73	bswap	%ecx
74	bswap	%edx
75	movl	%eax,16(%esp)
76	movl	%ebx,20(%esp)
77	movl	%ecx,24(%esp)
78	movl	%edx,28(%esp)
79	movl	32(%esi),%eax
80	movl	36(%esi),%ebx
81	movl	40(%esi),%ecx
82	movl	44(%esi),%edx
83	bswap	%eax
84	bswap	%ebx
85	bswap	%ecx
86	bswap	%edx
87	movl	%eax,32(%esp)
88	movl	%ebx,36(%esp)
89	movl	%ecx,40(%esp)
90	movl	%edx,44(%esp)
91	movl	48(%esi),%eax
92	movl	52(%esi),%ebx
93	movl	56(%esi),%ecx
94	movl	60(%esi),%edx
95	bswap	%eax
96	bswap	%ebx
97	bswap	%ecx
98	bswap	%edx
99	movl	%eax,48(%esp)
100	movl	%ebx,52(%esp)
101	movl	%ecx,56(%esp)
102	movl	%edx,60(%esp)
103	movl	%esi,100(%esp)
104	movl	(%ebp),%eax
105	movl	4(%ebp),%ebx
106	movl	8(%ebp),%ecx
107	movl	12(%ebp),%edx
108	# 00_15 0
109	movl	%ecx,%esi
110	movl	%eax,%ebp
111	roll	$5,%ebp
112	xorl	%edx,%esi
113	addl	%edi,%ebp
114	movl	(%esp),%edi
115	andl	%ebx,%esi
116	rorl	$2,%ebx
117	xorl	%edx,%esi
118	leal	1518500249(%ebp,%edi,1),%ebp
119	addl	%esi,%ebp
120	# 00_15 1
121	movl	%ebx,%edi
122	movl	%ebp,%esi
123	roll	$5,%ebp
124	xorl	%ecx,%edi
125	addl	%edx,%ebp
126	movl	4(%esp),%edx
127	andl	%eax,%edi
128	rorl	$2,%eax
129	xorl	%ecx,%edi
130	leal	1518500249(%ebp,%edx,1),%ebp
131	addl	%edi,%ebp
132	# 00_15 2
133	movl	%eax,%edx
134	movl	%ebp,%edi
135	roll	$5,%ebp
136	xorl	%ebx,%edx
137	addl	%ecx,%ebp
138	movl	8(%esp),%ecx
139	andl	%esi,%edx
140	rorl	$2,%esi
141	xorl	%ebx,%edx
142	leal	1518500249(%ebp,%ecx,1),%ebp
143	addl	%edx,%ebp
144	# 00_15 3
145	movl	%esi,%ecx
146	movl	%ebp,%edx
147	roll	$5,%ebp
148	xorl	%eax,%ecx
149	addl	%ebx,%ebp
150	movl	12(%esp),%ebx
151	andl	%edi,%ecx
152	rorl	$2,%edi
153	xorl	%eax,%ecx
154	leal	1518500249(%ebp,%ebx,1),%ebp
155	addl	%ecx,%ebp
156	# 00_15 4
157	movl	%edi,%ebx
158	movl	%ebp,%ecx
159	roll	$5,%ebp
160	xorl	%esi,%ebx
161	addl	%eax,%ebp
162	movl	16(%esp),%eax
163	andl	%edx,%ebx
164	rorl	$2,%edx
165	xorl	%esi,%ebx
166	leal	1518500249(%ebp,%eax,1),%ebp
167	addl	%ebx,%ebp
168	# 00_15 5
169	movl	%edx,%eax
170	movl	%ebp,%ebx
171	roll	$5,%ebp
172	xorl	%edi,%eax
173	addl	%esi,%ebp
174	movl	20(%esp),%esi
175	andl	%ecx,%eax
176	rorl	$2,%ecx
177	xorl	%edi,%eax
178	leal	1518500249(%ebp,%esi,1),%ebp
179	addl	%eax,%ebp
180	# 00_15 6
181	movl	%ecx,%esi
182	movl	%ebp,%eax
183	roll	$5,%ebp
184	xorl	%edx,%esi
185	addl	%edi,%ebp
186	movl	24(%esp),%edi
187	andl	%ebx,%esi
188	rorl	$2,%ebx
189	xorl	%edx,%esi
190	leal	1518500249(%ebp,%edi,1),%ebp
191	addl	%esi,%ebp
192	# 00_15 7
193	movl	%ebx,%edi
194	movl	%ebp,%esi
195	roll	$5,%ebp
196	xorl	%ecx,%edi
197	addl	%edx,%ebp
198	movl	28(%esp),%edx
199	andl	%eax,%edi
200	rorl	$2,%eax
201	xorl	%ecx,%edi
202	leal	1518500249(%ebp,%edx,1),%ebp
203	addl	%edi,%ebp
204	# 00_15 8
205	movl	%eax,%edx
206	movl	%ebp,%edi
207	roll	$5,%ebp
208	xorl	%ebx,%edx
209	addl	%ecx,%ebp
210	movl	32(%esp),%ecx
211	andl	%esi,%edx
212	rorl	$2,%esi
213	xorl	%ebx,%edx
214	leal	1518500249(%ebp,%ecx,1),%ebp
215	addl	%edx,%ebp
216	# 00_15 9
217	movl	%esi,%ecx
218	movl	%ebp,%edx
219	roll	$5,%ebp
220	xorl	%eax,%ecx
221	addl	%ebx,%ebp
222	movl	36(%esp),%ebx
223	andl	%edi,%ecx
224	rorl	$2,%edi
225	xorl	%eax,%ecx
226	leal	1518500249(%ebp,%ebx,1),%ebp
227	addl	%ecx,%ebp
228	# 00_15 10
229	movl	%edi,%ebx
230	movl	%ebp,%ecx
231	roll	$5,%ebp
232	xorl	%esi,%ebx
233	addl	%eax,%ebp
234	movl	40(%esp),%eax
235	andl	%edx,%ebx
236	rorl	$2,%edx
237	xorl	%esi,%ebx
238	leal	1518500249(%ebp,%eax,1),%ebp
239	addl	%ebx,%ebp
240	# 00_15 11
241	movl	%edx,%eax
242	movl	%ebp,%ebx
243	roll	$5,%ebp
244	xorl	%edi,%eax
245	addl	%esi,%ebp
246	movl	44(%esp),%esi
247	andl	%ecx,%eax
248	rorl	$2,%ecx
249	xorl	%edi,%eax
250	leal	1518500249(%ebp,%esi,1),%ebp
251	addl	%eax,%ebp
252	# 00_15 12
253	movl	%ecx,%esi
254	movl	%ebp,%eax
255	roll	$5,%ebp
256	xorl	%edx,%esi
257	addl	%edi,%ebp
258	movl	48(%esp),%edi
259	andl	%ebx,%esi
260	rorl	$2,%ebx
261	xorl	%edx,%esi
262	leal	1518500249(%ebp,%edi,1),%ebp
263	addl	%esi,%ebp
264	# 00_15 13
265	movl	%ebx,%edi
266	movl	%ebp,%esi
267	roll	$5,%ebp
268	xorl	%ecx,%edi
269	addl	%edx,%ebp
270	movl	52(%esp),%edx
271	andl	%eax,%edi
272	rorl	$2,%eax
273	xorl	%ecx,%edi
274	leal	1518500249(%ebp,%edx,1),%ebp
275	addl	%edi,%ebp
276	# 00_15 14
277	movl	%eax,%edx
278	movl	%ebp,%edi
279	roll	$5,%ebp
280	xorl	%ebx,%edx
281	addl	%ecx,%ebp
282	movl	56(%esp),%ecx
283	andl	%esi,%edx
284	rorl	$2,%esi
285	xorl	%ebx,%edx
286	leal	1518500249(%ebp,%ecx,1),%ebp
287	addl	%edx,%ebp
288	# 00_15 15
289	movl	%esi,%ecx
290	movl	%ebp,%edx
291	roll	$5,%ebp
292	xorl	%eax,%ecx
293	addl	%ebx,%ebp
294	movl	60(%esp),%ebx
295	andl	%edi,%ecx
296	rorl	$2,%edi
297	xorl	%eax,%ecx
298	leal	1518500249(%ebp,%ebx,1),%ebp
299	movl	(%esp),%ebx
300	addl	%ebp,%ecx
301	# 16_19 16
302	movl	%edi,%ebp
303	xorl	8(%esp),%ebx
304	xorl	%esi,%ebp
305	xorl	32(%esp),%ebx
306	andl	%edx,%ebp
307	xorl	52(%esp),%ebx
308	roll	$1,%ebx
309	xorl	%esi,%ebp
310	addl	%ebp,%eax
311	movl	%ecx,%ebp
312	rorl	$2,%edx
313	movl	%ebx,(%esp)
314	roll	$5,%ebp
315	leal	1518500249(%ebx,%eax,1),%ebx
316	movl	4(%esp),%eax
317	addl	%ebp,%ebx
318	# 16_19 17
319	movl	%edx,%ebp
320	xorl	12(%esp),%eax
321	xorl	%edi,%ebp
322	xorl	36(%esp),%eax
323	andl	%ecx,%ebp
324	xorl	56(%esp),%eax
325	roll	$1,%eax
326	xorl	%edi,%ebp
327	addl	%ebp,%esi
328	movl	%ebx,%ebp
329	rorl	$2,%ecx
330	movl	%eax,4(%esp)
331	roll	$5,%ebp
332	leal	1518500249(%eax,%esi,1),%eax
333	movl	8(%esp),%esi
334	addl	%ebp,%eax
335	# 16_19 18
336	movl	%ecx,%ebp
337	xorl	16(%esp),%esi
338	xorl	%edx,%ebp
339	xorl	40(%esp),%esi
340	andl	%ebx,%ebp
341	xorl	60(%esp),%esi
342	roll	$1,%esi
343	xorl	%edx,%ebp
344	addl	%ebp,%edi
345	movl	%eax,%ebp
346	rorl	$2,%ebx
347	movl	%esi,8(%esp)
348	roll	$5,%ebp
349	leal	1518500249(%esi,%edi,1),%esi
350	movl	12(%esp),%edi
351	addl	%ebp,%esi
352	# 16_19 19
353	movl	%ebx,%ebp
354	xorl	20(%esp),%edi
355	xorl	%ecx,%ebp
356	xorl	44(%esp),%edi
357	andl	%eax,%ebp
358	xorl	(%esp),%edi
359	roll	$1,%edi
360	xorl	%ecx,%ebp
361	addl	%ebp,%edx
362	movl	%esi,%ebp
363	rorl	$2,%eax
364	movl	%edi,12(%esp)
365	roll	$5,%ebp
366	leal	1518500249(%edi,%edx,1),%edi
367	movl	16(%esp),%edx
368	addl	%ebp,%edi
369	# 20_39 20
370	movl	%esi,%ebp
371	xorl	24(%esp),%edx
372	xorl	%eax,%ebp
373	xorl	48(%esp),%edx
374	xorl	%ebx,%ebp
375	xorl	4(%esp),%edx
376	roll	$1,%edx
377	addl	%ebp,%ecx
378	rorl	$2,%esi
379	movl	%edi,%ebp
380	roll	$5,%ebp
381	movl	%edx,16(%esp)
382	leal	1859775393(%edx,%ecx,1),%edx
383	movl	20(%esp),%ecx
384	addl	%ebp,%edx
385	# 20_39 21
386	movl	%edi,%ebp
387	xorl	28(%esp),%ecx
388	xorl	%esi,%ebp
389	xorl	52(%esp),%ecx
390	xorl	%eax,%ebp
391	xorl	8(%esp),%ecx
392	roll	$1,%ecx
393	addl	%ebp,%ebx
394	rorl	$2,%edi
395	movl	%edx,%ebp
396	roll	$5,%ebp
397	movl	%ecx,20(%esp)
398	leal	1859775393(%ecx,%ebx,1),%ecx
399	movl	24(%esp),%ebx
400	addl	%ebp,%ecx
401	# 20_39 22
402	movl	%edx,%ebp
403	xorl	32(%esp),%ebx
404	xorl	%edi,%ebp
405	xorl	56(%esp),%ebx
406	xorl	%esi,%ebp
407	xorl	12(%esp),%ebx
408	roll	$1,%ebx
409	addl	%ebp,%eax
410	rorl	$2,%edx
411	movl	%ecx,%ebp
412	roll	$5,%ebp
413	movl	%ebx,24(%esp)
414	leal	1859775393(%ebx,%eax,1),%ebx
415	movl	28(%esp),%eax
416	addl	%ebp,%ebx
417	# 20_39 23
418	movl	%ecx,%ebp
419	xorl	36(%esp),%eax
420	xorl	%edx,%ebp
421	xorl	60(%esp),%eax
422	xorl	%edi,%ebp
423	xorl	16(%esp),%eax
424	roll	$1,%eax
425	addl	%ebp,%esi
426	rorl	$2,%ecx
427	movl	%ebx,%ebp
428	roll	$5,%ebp
429	movl	%eax,28(%esp)
430	leal	1859775393(%eax,%esi,1),%eax
431	movl	32(%esp),%esi
432	addl	%ebp,%eax
433	# 20_39 24
434	movl	%ebx,%ebp
435	xorl	40(%esp),%esi
436	xorl	%ecx,%ebp
437	xorl	(%esp),%esi
438	xorl	%edx,%ebp
439	xorl	20(%esp),%esi
440	roll	$1,%esi
441	addl	%ebp,%edi
442	rorl	$2,%ebx
443	movl	%eax,%ebp
444	roll	$5,%ebp
445	movl	%esi,32(%esp)
446	leal	1859775393(%esi,%edi,1),%esi
447	movl	36(%esp),%edi
448	addl	%ebp,%esi
449	# 20_39 25
450	movl	%eax,%ebp
451	xorl	44(%esp),%edi
452	xorl	%ebx,%ebp
453	xorl	4(%esp),%edi
454	xorl	%ecx,%ebp
455	xorl	24(%esp),%edi
456	roll	$1,%edi
457	addl	%ebp,%edx
458	rorl	$2,%eax
459	movl	%esi,%ebp
460	roll	$5,%ebp
461	movl	%edi,36(%esp)
462	leal	1859775393(%edi,%edx,1),%edi
463	movl	40(%esp),%edx
464	addl	%ebp,%edi
465	# 20_39 26
466	movl	%esi,%ebp
467	xorl	48(%esp),%edx
468	xorl	%eax,%ebp
469	xorl	8(%esp),%edx
470	xorl	%ebx,%ebp
471	xorl	28(%esp),%edx
472	roll	$1,%edx
473	addl	%ebp,%ecx
474	rorl	$2,%esi
475	movl	%edi,%ebp
476	roll	$5,%ebp
477	movl	%edx,40(%esp)
478	leal	1859775393(%edx,%ecx,1),%edx
479	movl	44(%esp),%ecx
480	addl	%ebp,%edx
481	# 20_39 27
482	movl	%edi,%ebp
483	xorl	52(%esp),%ecx
484	xorl	%esi,%ebp
485	xorl	12(%esp),%ecx
486	xorl	%eax,%ebp
487	xorl	32(%esp),%ecx
488	roll	$1,%ecx
489	addl	%ebp,%ebx
490	rorl	$2,%edi
491	movl	%edx,%ebp
492	roll	$5,%ebp
493	movl	%ecx,44(%esp)
494	leal	1859775393(%ecx,%ebx,1),%ecx
495	movl	48(%esp),%ebx
496	addl	%ebp,%ecx
497	# 20_39 28
498	movl	%edx,%ebp
499	xorl	56(%esp),%ebx
500	xorl	%edi,%ebp
501	xorl	16(%esp),%ebx
502	xorl	%esi,%ebp
503	xorl	36(%esp),%ebx
504	roll	$1,%ebx
505	addl	%ebp,%eax
506	rorl	$2,%edx
507	movl	%ecx,%ebp
508	roll	$5,%ebp
509	movl	%ebx,48(%esp)
510	leal	1859775393(%ebx,%eax,1),%ebx
511	movl	52(%esp),%eax
512	addl	%ebp,%ebx
513	# 20_39 29
514	movl	%ecx,%ebp
515	xorl	60(%esp),%eax
516	xorl	%edx,%ebp
517	xorl	20(%esp),%eax
518	xorl	%edi,%ebp
519	xorl	40(%esp),%eax
520	roll	$1,%eax
521	addl	%ebp,%esi
522	rorl	$2,%ecx
523	movl	%ebx,%ebp
524	roll	$5,%ebp
525	movl	%eax,52(%esp)
526	leal	1859775393(%eax,%esi,1),%eax
527	movl	56(%esp),%esi
528	addl	%ebp,%eax
529	# 20_39 30
530	movl	%ebx,%ebp
531	xorl	(%esp),%esi
532	xorl	%ecx,%ebp
533	xorl	24(%esp),%esi
534	xorl	%edx,%ebp
535	xorl	44(%esp),%esi
536	roll	$1,%esi
537	addl	%ebp,%edi
538	rorl	$2,%ebx
539	movl	%eax,%ebp
540	roll	$5,%ebp
541	movl	%esi,56(%esp)
542	leal	1859775393(%esi,%edi,1),%esi
543	movl	60(%esp),%edi
544	addl	%ebp,%esi
545	# 20_39 31
546	movl	%eax,%ebp
547	xorl	4(%esp),%edi
548	xorl	%ebx,%ebp
549	xorl	28(%esp),%edi
550	xorl	%ecx,%ebp
551	xorl	48(%esp),%edi
552	roll	$1,%edi
553	addl	%ebp,%edx
554	rorl	$2,%eax
555	movl	%esi,%ebp
556	roll	$5,%ebp
557	movl	%edi,60(%esp)
558	leal	1859775393(%edi,%edx,1),%edi
559	movl	(%esp),%edx
560	addl	%ebp,%edi
561	# 20_39 32
562	movl	%esi,%ebp
563	xorl	8(%esp),%edx
564	xorl	%eax,%ebp
565	xorl	32(%esp),%edx
566	xorl	%ebx,%ebp
567	xorl	52(%esp),%edx
568	roll	$1,%edx
569	addl	%ebp,%ecx
570	rorl	$2,%esi
571	movl	%edi,%ebp
572	roll	$5,%ebp
573	movl	%edx,(%esp)
574	leal	1859775393(%edx,%ecx,1),%edx
575	movl	4(%esp),%ecx
576	addl	%ebp,%edx
577	# 20_39 33
578	movl	%edi,%ebp
579	xorl	12(%esp),%ecx
580	xorl	%esi,%ebp
581	xorl	36(%esp),%ecx
582	xorl	%eax,%ebp
583	xorl	56(%esp),%ecx
584	roll	$1,%ecx
585	addl	%ebp,%ebx
586	rorl	$2,%edi
587	movl	%edx,%ebp
588	roll	$5,%ebp
589	movl	%ecx,4(%esp)
590	leal	1859775393(%ecx,%ebx,1),%ecx
591	movl	8(%esp),%ebx
592	addl	%ebp,%ecx
593	# 20_39 34
594	movl	%edx,%ebp
595	xorl	16(%esp),%ebx
596	xorl	%edi,%ebp
597	xorl	40(%esp),%ebx
598	xorl	%esi,%ebp
599	xorl	60(%esp),%ebx
600	roll	$1,%ebx
601	addl	%ebp,%eax
602	rorl	$2,%edx
603	movl	%ecx,%ebp
604	roll	$5,%ebp
605	movl	%ebx,8(%esp)
606	leal	1859775393(%ebx,%eax,1),%ebx
607	movl	12(%esp),%eax
608	addl	%ebp,%ebx
609	# 20_39 35
610	movl	%ecx,%ebp
611	xorl	20(%esp),%eax
612	xorl	%edx,%ebp
613	xorl	44(%esp),%eax
614	xorl	%edi,%ebp
615	xorl	(%esp),%eax
616	roll	$1,%eax
617	addl	%ebp,%esi
618	rorl	$2,%ecx
619	movl	%ebx,%ebp
620	roll	$5,%ebp
621	movl	%eax,12(%esp)
622	leal	1859775393(%eax,%esi,1),%eax
623	movl	16(%esp),%esi
624	addl	%ebp,%eax
625	# 20_39 36
626	movl	%ebx,%ebp
627	xorl	24(%esp),%esi
628	xorl	%ecx,%ebp
629	xorl	48(%esp),%esi
630	xorl	%edx,%ebp
631	xorl	4(%esp),%esi
632	roll	$1,%esi
633	addl	%ebp,%edi
634	rorl	$2,%ebx
635	movl	%eax,%ebp
636	roll	$5,%ebp
637	movl	%esi,16(%esp)
638	leal	1859775393(%esi,%edi,1),%esi
639	movl	20(%esp),%edi
640	addl	%ebp,%esi
641	# 20_39 37
642	movl	%eax,%ebp
643	xorl	28(%esp),%edi
644	xorl	%ebx,%ebp
645	xorl	52(%esp),%edi
646	xorl	%ecx,%ebp
647	xorl	8(%esp),%edi
648	roll	$1,%edi
649	addl	%ebp,%edx
650	rorl	$2,%eax
651	movl	%esi,%ebp
652	roll	$5,%ebp
653	movl	%edi,20(%esp)
654	leal	1859775393(%edi,%edx,1),%edi
655	movl	24(%esp),%edx
656	addl	%ebp,%edi
657	# 20_39 38
658	movl	%esi,%ebp
659	xorl	32(%esp),%edx
660	xorl	%eax,%ebp
661	xorl	56(%esp),%edx
662	xorl	%ebx,%ebp
663	xorl	12(%esp),%edx
664	roll	$1,%edx
665	addl	%ebp,%ecx
666	rorl	$2,%esi
667	movl	%edi,%ebp
668	roll	$5,%ebp
669	movl	%edx,24(%esp)
670	leal	1859775393(%edx,%ecx,1),%edx
671	movl	28(%esp),%ecx
672	addl	%ebp,%edx
673	# 20_39 39
674	movl	%edi,%ebp
675	xorl	36(%esp),%ecx
676	xorl	%esi,%ebp
677	xorl	60(%esp),%ecx
678	xorl	%eax,%ebp
679	xorl	16(%esp),%ecx
680	roll	$1,%ecx
681	addl	%ebp,%ebx
682	rorl	$2,%edi
683	movl	%edx,%ebp
684	roll	$5,%ebp
685	movl	%ecx,28(%esp)
686	leal	1859775393(%ecx,%ebx,1),%ecx
687	movl	32(%esp),%ebx
688	addl	%ebp,%ecx
689	# 40_59 40
690	movl	%edi,%ebp
691	xorl	40(%esp),%ebx
692	xorl	%esi,%ebp
693	xorl	(%esp),%ebx
694	andl	%edx,%ebp
695	xorl	20(%esp),%ebx
696	roll	$1,%ebx
697	addl	%eax,%ebp
698	rorl	$2,%edx
699	movl	%ecx,%eax
700	roll	$5,%eax
701	movl	%ebx,32(%esp)
702	leal	2400959708(%ebx,%ebp,1),%ebx
703	movl	%edi,%ebp
704	addl	%eax,%ebx
705	andl	%esi,%ebp
706	movl	36(%esp),%eax
707	addl	%ebp,%ebx
708	# 40_59 41
709	movl	%edx,%ebp
710	xorl	44(%esp),%eax
711	xorl	%edi,%ebp
712	xorl	4(%esp),%eax
713	andl	%ecx,%ebp
714	xorl	24(%esp),%eax
715	roll	$1,%eax
716	addl	%esi,%ebp
717	rorl	$2,%ecx
718	movl	%ebx,%esi
719	roll	$5,%esi
720	movl	%eax,36(%esp)
721	leal	2400959708(%eax,%ebp,1),%eax
722	movl	%edx,%ebp
723	addl	%esi,%eax
724	andl	%edi,%ebp
725	movl	40(%esp),%esi
726	addl	%ebp,%eax
727	# 40_59 42
728	movl	%ecx,%ebp
729	xorl	48(%esp),%esi
730	xorl	%edx,%ebp
731	xorl	8(%esp),%esi
732	andl	%ebx,%ebp
733	xorl	28(%esp),%esi
734	roll	$1,%esi
735	addl	%edi,%ebp
736	rorl	$2,%ebx
737	movl	%eax,%edi
738	roll	$5,%edi
739	movl	%esi,40(%esp)
740	leal	2400959708(%esi,%ebp,1),%esi
741	movl	%ecx,%ebp
742	addl	%edi,%esi
743	andl	%edx,%ebp
744	movl	44(%esp),%edi
745	addl	%ebp,%esi
746	# 40_59 43
747	movl	%ebx,%ebp
748	xorl	52(%esp),%edi
749	xorl	%ecx,%ebp
750	xorl	12(%esp),%edi
751	andl	%eax,%ebp
752	xorl	32(%esp),%edi
753	roll	$1,%edi
754	addl	%edx,%ebp
755	rorl	$2,%eax
756	movl	%esi,%edx
757	roll	$5,%edx
758	movl	%edi,44(%esp)
759	leal	2400959708(%edi,%ebp,1),%edi
760	movl	%ebx,%ebp
761	addl	%edx,%edi
762	andl	%ecx,%ebp
763	movl	48(%esp),%edx
764	addl	%ebp,%edi
765	# 40_59 44
766	movl	%eax,%ebp
767	xorl	56(%esp),%edx
768	xorl	%ebx,%ebp
769	xorl	16(%esp),%edx
770	andl	%esi,%ebp
771	xorl	36(%esp),%edx
772	roll	$1,%edx
773	addl	%ecx,%ebp
774	rorl	$2,%esi
775	movl	%edi,%ecx
776	roll	$5,%ecx
777	movl	%edx,48(%esp)
778	leal	2400959708(%edx,%ebp,1),%edx
779	movl	%eax,%ebp
780	addl	%ecx,%edx
781	andl	%ebx,%ebp
782	movl	52(%esp),%ecx
783	addl	%ebp,%edx
784	# 40_59 45
785	movl	%esi,%ebp
786	xorl	60(%esp),%ecx
787	xorl	%eax,%ebp
788	xorl	20(%esp),%ecx
789	andl	%edi,%ebp
790	xorl	40(%esp),%ecx
791	roll	$1,%ecx
792	addl	%ebx,%ebp
793	rorl	$2,%edi
794	movl	%edx,%ebx
795	roll	$5,%ebx
796	movl	%ecx,52(%esp)
797	leal	2400959708(%ecx,%ebp,1),%ecx
798	movl	%esi,%ebp
799	addl	%ebx,%ecx
800	andl	%eax,%ebp
801	movl	56(%esp),%ebx
802	addl	%ebp,%ecx
803	# 40_59 46
804	movl	%edi,%ebp
805	xorl	(%esp),%ebx
806	xorl	%esi,%ebp
807	xorl	24(%esp),%ebx
808	andl	%edx,%ebp
809	xorl	44(%esp),%ebx
810	roll	$1,%ebx
811	addl	%eax,%ebp
812	rorl	$2,%edx
813	movl	%ecx,%eax
814	roll	$5,%eax
815	movl	%ebx,56(%esp)
816	leal	2400959708(%ebx,%ebp,1),%ebx
817	movl	%edi,%ebp
818	addl	%eax,%ebx
819	andl	%esi,%ebp
820	movl	60(%esp),%eax
821	addl	%ebp,%ebx
822	# 40_59 47
823	movl	%edx,%ebp
824	xorl	4(%esp),%eax
825	xorl	%edi,%ebp
826	xorl	28(%esp),%eax
827	andl	%ecx,%ebp
828	xorl	48(%esp),%eax
829	roll	$1,%eax
830	addl	%esi,%ebp
831	rorl	$2,%ecx
832	movl	%ebx,%esi
833	roll	$5,%esi
834	movl	%eax,60(%esp)
835	leal	2400959708(%eax,%ebp,1),%eax
836	movl	%edx,%ebp
837	addl	%esi,%eax
838	andl	%edi,%ebp
839	movl	(%esp),%esi
840	addl	%ebp,%eax
841	# 40_59 48
842	movl	%ecx,%ebp
843	xorl	8(%esp),%esi
844	xorl	%edx,%ebp
845	xorl	32(%esp),%esi
846	andl	%ebx,%ebp
847	xorl	52(%esp),%esi
848	roll	$1,%esi
849	addl	%edi,%ebp
850	rorl	$2,%ebx
851	movl	%eax,%edi
852	roll	$5,%edi
853	movl	%esi,(%esp)
854	leal	2400959708(%esi,%ebp,1),%esi
855	movl	%ecx,%ebp
856	addl	%edi,%esi
857	andl	%edx,%ebp
858	movl	4(%esp),%edi
859	addl	%ebp,%esi
860	# 40_59 49
861	movl	%ebx,%ebp
862	xorl	12(%esp),%edi
863	xorl	%ecx,%ebp
864	xorl	36(%esp),%edi
865	andl	%eax,%ebp
866	xorl	56(%esp),%edi
867	roll	$1,%edi
868	addl	%edx,%ebp
869	rorl	$2,%eax
870	movl	%esi,%edx
871	roll	$5,%edx
872	movl	%edi,4(%esp)
873	leal	2400959708(%edi,%ebp,1),%edi
874	movl	%ebx,%ebp
875	addl	%edx,%edi
876	andl	%ecx,%ebp
877	movl	8(%esp),%edx
878	addl	%ebp,%edi
879	# 40_59 50
880	movl	%eax,%ebp
881	xorl	16(%esp),%edx
882	xorl	%ebx,%ebp
883	xorl	40(%esp),%edx
884	andl	%esi,%ebp
885	xorl	60(%esp),%edx
886	roll	$1,%edx
887	addl	%ecx,%ebp
888	rorl	$2,%esi
889	movl	%edi,%ecx
890	roll	$5,%ecx
891	movl	%edx,8(%esp)
892	leal	2400959708(%edx,%ebp,1),%edx
893	movl	%eax,%ebp
894	addl	%ecx,%edx
895	andl	%ebx,%ebp
896	movl	12(%esp),%ecx
897	addl	%ebp,%edx
898	# 40_59 51
899	movl	%esi,%ebp
900	xorl	20(%esp),%ecx
901	xorl	%eax,%ebp
902	xorl	44(%esp),%ecx
903	andl	%edi,%ebp
904	xorl	(%esp),%ecx
905	roll	$1,%ecx
906	addl	%ebx,%ebp
907	rorl	$2,%edi
908	movl	%edx,%ebx
909	roll	$5,%ebx
910	movl	%ecx,12(%esp)
911	leal	2400959708(%ecx,%ebp,1),%ecx
912	movl	%esi,%ebp
913	addl	%ebx,%ecx
914	andl	%eax,%ebp
915	movl	16(%esp),%ebx
916	addl	%ebp,%ecx
917	# 40_59 52
918	movl	%edi,%ebp
919	xorl	24(%esp),%ebx
920	xorl	%esi,%ebp
921	xorl	48(%esp),%ebx
922	andl	%edx,%ebp
923	xorl	4(%esp),%ebx
924	roll	$1,%ebx
925	addl	%eax,%ebp
926	rorl	$2,%edx
927	movl	%ecx,%eax
928	roll	$5,%eax
929	movl	%ebx,16(%esp)
930	leal	2400959708(%ebx,%ebp,1),%ebx
931	movl	%edi,%ebp
932	addl	%eax,%ebx
933	andl	%esi,%ebp
934	movl	20(%esp),%eax
935	addl	%ebp,%ebx
936	# 40_59 53
937	movl	%edx,%ebp
938	xorl	28(%esp),%eax
939	xorl	%edi,%ebp
940	xorl	52(%esp),%eax
941	andl	%ecx,%ebp
942	xorl	8(%esp),%eax
943	roll	$1,%eax
944	addl	%esi,%ebp
945	rorl	$2,%ecx
946	movl	%ebx,%esi
947	roll	$5,%esi
948	movl	%eax,20(%esp)
949	leal	2400959708(%eax,%ebp,1),%eax
950	movl	%edx,%ebp
951	addl	%esi,%eax
952	andl	%edi,%ebp
953	movl	24(%esp),%esi
954	addl	%ebp,%eax
955	# 40_59 54
956	movl	%ecx,%ebp
957	xorl	32(%esp),%esi
958	xorl	%edx,%ebp
959	xorl	56(%esp),%esi
960	andl	%ebx,%ebp
961	xorl	12(%esp),%esi
962	roll	$1,%esi
963	addl	%edi,%ebp
964	rorl	$2,%ebx
965	movl	%eax,%edi
966	roll	$5,%edi
967	movl	%esi,24(%esp)
968	leal	2400959708(%esi,%ebp,1),%esi
969	movl	%ecx,%ebp
970	addl	%edi,%esi
971	andl	%edx,%ebp
972	movl	28(%esp),%edi
973	addl	%ebp,%esi
974	# 40_59 55
975	movl	%ebx,%ebp
976	xorl	36(%esp),%edi
977	xorl	%ecx,%ebp
978	xorl	60(%esp),%edi
979	andl	%eax,%ebp
980	xorl	16(%esp),%edi
981	roll	$1,%edi
982	addl	%edx,%ebp
983	rorl	$2,%eax
984	movl	%esi,%edx
985	roll	$5,%edx
986	movl	%edi,28(%esp)
987	leal	2400959708(%edi,%ebp,1),%edi
988	movl	%ebx,%ebp
989	addl	%edx,%edi
990	andl	%ecx,%ebp
991	movl	32(%esp),%edx
992	addl	%ebp,%edi
993	# 40_59 56
994	movl	%eax,%ebp
995	xorl	40(%esp),%edx
996	xorl	%ebx,%ebp
997	xorl	(%esp),%edx
998	andl	%esi,%ebp
999	xorl	20(%esp),%edx
1000	roll	$1,%edx
1001	addl	%ecx,%ebp
1002	rorl	$2,%esi
1003	movl	%edi,%ecx
1004	roll	$5,%ecx
1005	movl	%edx,32(%esp)
1006	leal	2400959708(%edx,%ebp,1),%edx
1007	movl	%eax,%ebp
1008	addl	%ecx,%edx
1009	andl	%ebx,%ebp
1010	movl	36(%esp),%ecx
1011	addl	%ebp,%edx
1012	# 40_59 57
1013	movl	%esi,%ebp
1014	xorl	44(%esp),%ecx
1015	xorl	%eax,%ebp
1016	xorl	4(%esp),%ecx
1017	andl	%edi,%ebp
1018	xorl	24(%esp),%ecx
1019	roll	$1,%ecx
1020	addl	%ebx,%ebp
1021	rorl	$2,%edi
1022	movl	%edx,%ebx
1023	roll	$5,%ebx
1024	movl	%ecx,36(%esp)
1025	leal	2400959708(%ecx,%ebp,1),%ecx
1026	movl	%esi,%ebp
1027	addl	%ebx,%ecx
1028	andl	%eax,%ebp
1029	movl	40(%esp),%ebx
1030	addl	%ebp,%ecx
1031	# 40_59 58
1032	movl	%edi,%ebp
1033	xorl	48(%esp),%ebx
1034	xorl	%esi,%ebp
1035	xorl	8(%esp),%ebx
1036	andl	%edx,%ebp
1037	xorl	28(%esp),%ebx
1038	roll	$1,%ebx
1039	addl	%eax,%ebp
1040	rorl	$2,%edx
1041	movl	%ecx,%eax
1042	roll	$5,%eax
1043	movl	%ebx,40(%esp)
1044	leal	2400959708(%ebx,%ebp,1),%ebx
1045	movl	%edi,%ebp
1046	addl	%eax,%ebx
1047	andl	%esi,%ebp
1048	movl	44(%esp),%eax
1049	addl	%ebp,%ebx
1050	# 40_59 59
1051	movl	%edx,%ebp
1052	xorl	52(%esp),%eax
1053	xorl	%edi,%ebp
1054	xorl	12(%esp),%eax
1055	andl	%ecx,%ebp
1056	xorl	32(%esp),%eax
1057	roll	$1,%eax
1058	addl	%esi,%ebp
1059	rorl	$2,%ecx
1060	movl	%ebx,%esi
1061	roll	$5,%esi
1062	movl	%eax,44(%esp)
1063	leal	2400959708(%eax,%ebp,1),%eax
1064	movl	%edx,%ebp
1065	addl	%esi,%eax
1066	andl	%edi,%ebp
1067	movl	48(%esp),%esi
1068	addl	%ebp,%eax
1069	# 20_39 60
1070	movl	%ebx,%ebp
1071	xorl	56(%esp),%esi
1072	xorl	%ecx,%ebp
1073	xorl	16(%esp),%esi
1074	xorl	%edx,%ebp
1075	xorl	36(%esp),%esi
1076	roll	$1,%esi
1077	addl	%ebp,%edi
1078	rorl	$2,%ebx
1079	movl	%eax,%ebp
1080	roll	$5,%ebp
1081	movl	%esi,48(%esp)
1082	leal	3395469782(%esi,%edi,1),%esi
1083	movl	52(%esp),%edi
1084	addl	%ebp,%esi
1085	# 20_39 61
1086	movl	%eax,%ebp
1087	xorl	60(%esp),%edi
1088	xorl	%ebx,%ebp
1089	xorl	20(%esp),%edi
1090	xorl	%ecx,%ebp
1091	xorl	40(%esp),%edi
1092	roll	$1,%edi
1093	addl	%ebp,%edx
1094	rorl	$2,%eax
1095	movl	%esi,%ebp
1096	roll	$5,%ebp
1097	movl	%edi,52(%esp)
1098	leal	3395469782(%edi,%edx,1),%edi
1099	movl	56(%esp),%edx
1100	addl	%ebp,%edi
1101	# 20_39 62
1102	movl	%esi,%ebp
1103	xorl	(%esp),%edx
1104	xorl	%eax,%ebp
1105	xorl	24(%esp),%edx
1106	xorl	%ebx,%ebp
1107	xorl	44(%esp),%edx
1108	roll	$1,%edx
1109	addl	%ebp,%ecx
1110	rorl	$2,%esi
1111	movl	%edi,%ebp
1112	roll	$5,%ebp
1113	movl	%edx,56(%esp)
1114	leal	3395469782(%edx,%ecx,1),%edx
1115	movl	60(%esp),%ecx
1116	addl	%ebp,%edx
1117	# 20_39 63
1118	movl	%edi,%ebp
1119	xorl	4(%esp),%ecx
1120	xorl	%esi,%ebp
1121	xorl	28(%esp),%ecx
1122	xorl	%eax,%ebp
1123	xorl	48(%esp),%ecx
1124	roll	$1,%ecx
1125	addl	%ebp,%ebx
1126	rorl	$2,%edi
1127	movl	%edx,%ebp
1128	roll	$5,%ebp
1129	movl	%ecx,60(%esp)
1130	leal	3395469782(%ecx,%ebx,1),%ecx
1131	movl	(%esp),%ebx
1132	addl	%ebp,%ecx
1133	# 20_39 64
1134	movl	%edx,%ebp
1135	xorl	8(%esp),%ebx
1136	xorl	%edi,%ebp
1137	xorl	32(%esp),%ebx
1138	xorl	%esi,%ebp
1139	xorl	52(%esp),%ebx
1140	roll	$1,%ebx
1141	addl	%ebp,%eax
1142	rorl	$2,%edx
1143	movl	%ecx,%ebp
1144	roll	$5,%ebp
1145	movl	%ebx,(%esp)
1146	leal	3395469782(%ebx,%eax,1),%ebx
1147	movl	4(%esp),%eax
1148	addl	%ebp,%ebx
1149	# 20_39 65
1150	movl	%ecx,%ebp
1151	xorl	12(%esp),%eax
1152	xorl	%edx,%ebp
1153	xorl	36(%esp),%eax
1154	xorl	%edi,%ebp
1155	xorl	56(%esp),%eax
1156	roll	$1,%eax
1157	addl	%ebp,%esi
1158	rorl	$2,%ecx
1159	movl	%ebx,%ebp
1160	roll	$5,%ebp
1161	movl	%eax,4(%esp)
1162	leal	3395469782(%eax,%esi,1),%eax
1163	movl	8(%esp),%esi
1164	addl	%ebp,%eax
1165	# 20_39 66
1166	movl	%ebx,%ebp
1167	xorl	16(%esp),%esi
1168	xorl	%ecx,%ebp
1169	xorl	40(%esp),%esi
1170	xorl	%edx,%ebp
1171	xorl	60(%esp),%esi
1172	roll	$1,%esi
1173	addl	%ebp,%edi
1174	rorl	$2,%ebx
1175	movl	%eax,%ebp
1176	roll	$5,%ebp
1177	movl	%esi,8(%esp)
1178	leal	3395469782(%esi,%edi,1),%esi
1179	movl	12(%esp),%edi
1180	addl	%ebp,%esi
1181	# 20_39 67
1182	movl	%eax,%ebp
1183	xorl	20(%esp),%edi
1184	xorl	%ebx,%ebp
1185	xorl	44(%esp),%edi
1186	xorl	%ecx,%ebp
1187	xorl	(%esp),%edi
1188	roll	$1,%edi
1189	addl	%ebp,%edx
1190	rorl	$2,%eax
1191	movl	%esi,%ebp
1192	roll	$5,%ebp
1193	movl	%edi,12(%esp)
1194	leal	3395469782(%edi,%edx,1),%edi
1195	movl	16(%esp),%edx
1196	addl	%ebp,%edi
1197	# 20_39 68
1198	movl	%esi,%ebp
1199	xorl	24(%esp),%edx
1200	xorl	%eax,%ebp
1201	xorl	48(%esp),%edx
1202	xorl	%ebx,%ebp
1203	xorl	4(%esp),%edx
1204	roll	$1,%edx
1205	addl	%ebp,%ecx
1206	rorl	$2,%esi
1207	movl	%edi,%ebp
1208	roll	$5,%ebp
1209	movl	%edx,16(%esp)
1210	leal	3395469782(%edx,%ecx,1),%edx
1211	movl	20(%esp),%ecx
1212	addl	%ebp,%edx
1213	# 20_39 69
1214	movl	%edi,%ebp
1215	xorl	28(%esp),%ecx
1216	xorl	%esi,%ebp
1217	xorl	52(%esp),%ecx
1218	xorl	%eax,%ebp
1219	xorl	8(%esp),%ecx
1220	roll	$1,%ecx
1221	addl	%ebp,%ebx
1222	rorl	$2,%edi
1223	movl	%edx,%ebp
1224	roll	$5,%ebp
1225	movl	%ecx,20(%esp)
1226	leal	3395469782(%ecx,%ebx,1),%ecx
1227	movl	24(%esp),%ebx
1228	addl	%ebp,%ecx
1229	# 20_39 70
1230	movl	%edx,%ebp
1231	xorl	32(%esp),%ebx
1232	xorl	%edi,%ebp
1233	xorl	56(%esp),%ebx
1234	xorl	%esi,%ebp
1235	xorl	12(%esp),%ebx
1236	roll	$1,%ebx
1237	addl	%ebp,%eax
1238	rorl	$2,%edx
1239	movl	%ecx,%ebp
1240	roll	$5,%ebp
1241	movl	%ebx,24(%esp)
1242	leal	3395469782(%ebx,%eax,1),%ebx
1243	movl	28(%esp),%eax
1244	addl	%ebp,%ebx
1245	# 20_39 71
1246	movl	%ecx,%ebp
1247	xorl	36(%esp),%eax
1248	xorl	%edx,%ebp
1249	xorl	60(%esp),%eax
1250	xorl	%edi,%ebp
1251	xorl	16(%esp),%eax
1252	roll	$1,%eax
1253	addl	%ebp,%esi
1254	rorl	$2,%ecx
1255	movl	%ebx,%ebp
1256	roll	$5,%ebp
1257	movl	%eax,28(%esp)
1258	leal	3395469782(%eax,%esi,1),%eax
1259	movl	32(%esp),%esi
1260	addl	%ebp,%eax
1261	# 20_39 72
1262	movl	%ebx,%ebp
1263	xorl	40(%esp),%esi
1264	xorl	%ecx,%ebp
1265	xorl	(%esp),%esi
1266	xorl	%edx,%ebp
1267	xorl	20(%esp),%esi
1268	roll	$1,%esi
1269	addl	%ebp,%edi
1270	rorl	$2,%ebx
1271	movl	%eax,%ebp
1272	roll	$5,%ebp
1273	movl	%esi,32(%esp)
1274	leal	3395469782(%esi,%edi,1),%esi
1275	movl	36(%esp),%edi
1276	addl	%ebp,%esi
1277	# 20_39 73
1278	movl	%eax,%ebp
1279	xorl	44(%esp),%edi
1280	xorl	%ebx,%ebp
1281	xorl	4(%esp),%edi
1282	xorl	%ecx,%ebp
1283	xorl	24(%esp),%edi
1284	roll	$1,%edi
1285	addl	%ebp,%edx
1286	rorl	$2,%eax
1287	movl	%esi,%ebp
1288	roll	$5,%ebp
1289	movl	%edi,36(%esp)
1290	leal	3395469782(%edi,%edx,1),%edi
1291	movl	40(%esp),%edx
1292	addl	%ebp,%edi
1293	# 20_39 74
1294	movl	%esi,%ebp
1295	xorl	48(%esp),%edx
1296	xorl	%eax,%ebp
1297	xorl	8(%esp),%edx
1298	xorl	%ebx,%ebp
1299	xorl	28(%esp),%edx
1300	roll	$1,%edx
1301	addl	%ebp,%ecx
1302	rorl	$2,%esi
1303	movl	%edi,%ebp
1304	roll	$5,%ebp
1305	movl	%edx,40(%esp)
1306	leal	3395469782(%edx,%ecx,1),%edx
1307	movl	44(%esp),%ecx
1308	addl	%ebp,%edx
1309	# 20_39 75
1310	movl	%edi,%ebp
1311	xorl	52(%esp),%ecx
1312	xorl	%esi,%ebp
1313	xorl	12(%esp),%ecx
1314	xorl	%eax,%ebp
1315	xorl	32(%esp),%ecx
1316	roll	$1,%ecx
1317	addl	%ebp,%ebx
1318	rorl	$2,%edi
1319	movl	%edx,%ebp
1320	roll	$5,%ebp
1321	movl	%ecx,44(%esp)
1322	leal	3395469782(%ecx,%ebx,1),%ecx
1323	movl	48(%esp),%ebx
1324	addl	%ebp,%ecx
1325	# 20_39 76
1326	movl	%edx,%ebp
1327	xorl	56(%esp),%ebx
1328	xorl	%edi,%ebp
1329	xorl	16(%esp),%ebx
1330	xorl	%esi,%ebp
1331	xorl	36(%esp),%ebx
1332	roll	$1,%ebx
1333	addl	%ebp,%eax
1334	rorl	$2,%edx
1335	movl	%ecx,%ebp
1336	roll	$5,%ebp
1337	movl	%ebx,48(%esp)
1338	leal	3395469782(%ebx,%eax,1),%ebx
1339	movl	52(%esp),%eax
1340	addl	%ebp,%ebx
1341	# 20_39 77
1342	movl	%ecx,%ebp
1343	xorl	60(%esp),%eax
1344	xorl	%edx,%ebp
1345	xorl	20(%esp),%eax
1346	xorl	%edi,%ebp
1347	xorl	40(%esp),%eax
1348	roll	$1,%eax
1349	addl	%ebp,%esi
1350	rorl	$2,%ecx
1351	movl	%ebx,%ebp
1352	roll	$5,%ebp
1353	leal	3395469782(%eax,%esi,1),%eax
1354	movl	56(%esp),%esi
1355	addl	%ebp,%eax
1356	# 20_39 78
1357	movl	%ebx,%ebp
1358	xorl	(%esp),%esi
1359	xorl	%ecx,%ebp
1360	xorl	24(%esp),%esi
1361	xorl	%edx,%ebp
1362	xorl	44(%esp),%esi
1363	roll	$1,%esi
1364	addl	%ebp,%edi
1365	rorl	$2,%ebx
1366	movl	%eax,%ebp
1367	roll	$5,%ebp
1368	leal	3395469782(%esi,%edi,1),%esi
1369	movl	60(%esp),%edi
1370	addl	%ebp,%esi
1371	# 20_39 79
1372	movl	%eax,%ebp
1373	xorl	4(%esp),%edi
1374	xorl	%ebx,%ebp
1375	xorl	28(%esp),%edi
1376	xorl	%ecx,%ebp
1377	xorl	48(%esp),%edi
1378	roll	$1,%edi
1379	addl	%ebp,%edx
1380	rorl	$2,%eax
1381	movl	%esi,%ebp
1382	roll	$5,%ebp
1383	leal	3395469782(%edi,%edx,1),%edi
1384	addl	%ebp,%edi
1385	movl	96(%esp),%ebp
1386	movl	100(%esp),%edx
1387	addl	(%ebp),%edi
1388	addl	4(%ebp),%esi
1389	addl	8(%ebp),%eax
1390	addl	12(%ebp),%ebx
1391	addl	16(%ebp),%ecx
1392	movl	%edi,(%ebp)
1393	addl	$64,%edx
1394	movl	%esi,4(%ebp)
1395	cmpl	104(%esp),%edx
1396	movl	%eax,8(%ebp)
1397	movl	%ecx,%edi
1398	movl	%ebx,12(%ebp)
1399	movl	%edx,%esi
1400	movl	%ecx,16(%ebp)
1401	jb	L002loop
1402	addl	$76,%esp
1403	popl	%edi
1404	popl	%esi
1405	popl	%ebx
1406	popl	%ebp
1407	ret
1408.private_extern	__sha1_block_data_order_ssse3
1409.align	4
1410__sha1_block_data_order_ssse3:
1411	pushl	%ebp
1412	pushl	%ebx
1413	pushl	%esi
1414	pushl	%edi
1415	call	L003pic_point
1416L003pic_point:
1417	popl	%ebp
1418	leal	LK_XX_XX-L003pic_point(%ebp),%ebp
1419Lssse3_shortcut:
1420	movdqa	(%ebp),%xmm7
1421	movdqa	16(%ebp),%xmm0
1422	movdqa	32(%ebp),%xmm1
1423	movdqa	48(%ebp),%xmm2
1424	movdqa	64(%ebp),%xmm6
1425	movl	20(%esp),%edi
1426	movl	24(%esp),%ebp
1427	movl	28(%esp),%edx
1428	movl	%esp,%esi
1429	subl	$208,%esp
1430	andl	$-64,%esp
1431	movdqa	%xmm0,112(%esp)
1432	movdqa	%xmm1,128(%esp)
1433	movdqa	%xmm2,144(%esp)
1434	shll	$6,%edx
1435	movdqa	%xmm7,160(%esp)
1436	addl	%ebp,%edx
1437	movdqa	%xmm6,176(%esp)
1438	addl	$64,%ebp
1439	movl	%edi,192(%esp)
1440	movl	%ebp,196(%esp)
1441	movl	%edx,200(%esp)
1442	movl	%esi,204(%esp)
1443	movl	(%edi),%eax
1444	movl	4(%edi),%ebx
1445	movl	8(%edi),%ecx
1446	movl	12(%edi),%edx
1447	movl	16(%edi),%edi
1448	movl	%ebx,%esi
1449	movdqu	-64(%ebp),%xmm0
1450	movdqu	-48(%ebp),%xmm1
1451	movdqu	-32(%ebp),%xmm2
1452	movdqu	-16(%ebp),%xmm3
1453.byte	102,15,56,0,198
1454.byte	102,15,56,0,206
1455.byte	102,15,56,0,214
1456	movdqa	%xmm7,96(%esp)
1457.byte	102,15,56,0,222
1458	paddd	%xmm7,%xmm0
1459	paddd	%xmm7,%xmm1
1460	paddd	%xmm7,%xmm2
1461	movdqa	%xmm0,(%esp)
1462	psubd	%xmm7,%xmm0
1463	movdqa	%xmm1,16(%esp)
1464	psubd	%xmm7,%xmm1
1465	movdqa	%xmm2,32(%esp)
1466	movl	%ecx,%ebp
1467	psubd	%xmm7,%xmm2
1468	xorl	%edx,%ebp
1469	pshufd	$238,%xmm0,%xmm4
1470	andl	%ebp,%esi
1471	jmp	L004loop
1472.align	4,0x90
1473L004loop:
1474	rorl	$2,%ebx
1475	xorl	%edx,%esi
1476	movl	%eax,%ebp
1477	punpcklqdq	%xmm1,%xmm4
1478	movdqa	%xmm3,%xmm6
1479	addl	(%esp),%edi
1480	xorl	%ecx,%ebx
1481	paddd	%xmm3,%xmm7
1482	movdqa	%xmm0,64(%esp)
1483	roll	$5,%eax
1484	addl	%esi,%edi
1485	psrldq	$4,%xmm6
1486	andl	%ebx,%ebp
1487	xorl	%ecx,%ebx
1488	pxor	%xmm0,%xmm4
1489	addl	%eax,%edi
1490	rorl	$7,%eax
1491	pxor	%xmm2,%xmm6
1492	xorl	%ecx,%ebp
1493	movl	%edi,%esi
1494	addl	4(%esp),%edx
1495	pxor	%xmm6,%xmm4
1496	xorl	%ebx,%eax
1497	roll	$5,%edi
1498	movdqa	%xmm7,48(%esp)
1499	addl	%ebp,%edx
1500	andl	%eax,%esi
1501	movdqa	%xmm4,%xmm0
1502	xorl	%ebx,%eax
1503	addl	%edi,%edx
1504	rorl	$7,%edi
1505	movdqa	%xmm4,%xmm6
1506	xorl	%ebx,%esi
1507	pslldq	$12,%xmm0
1508	paddd	%xmm4,%xmm4
1509	movl	%edx,%ebp
1510	addl	8(%esp),%ecx
1511	psrld	$31,%xmm6
1512	xorl	%eax,%edi
1513	roll	$5,%edx
1514	movdqa	%xmm0,%xmm7
1515	addl	%esi,%ecx
1516	andl	%edi,%ebp
1517	xorl	%eax,%edi
1518	psrld	$30,%xmm0
1519	addl	%edx,%ecx
1520	rorl	$7,%edx
1521	por	%xmm6,%xmm4
1522	xorl	%eax,%ebp
1523	movl	%ecx,%esi
1524	addl	12(%esp),%ebx
1525	pslld	$2,%xmm7
1526	xorl	%edi,%edx
1527	roll	$5,%ecx
1528	pxor	%xmm0,%xmm4
1529	movdqa	96(%esp),%xmm0
1530	addl	%ebp,%ebx
1531	andl	%edx,%esi
1532	pxor	%xmm7,%xmm4
1533	pshufd	$238,%xmm1,%xmm5
1534	xorl	%edi,%edx
1535	addl	%ecx,%ebx
1536	rorl	$7,%ecx
1537	xorl	%edi,%esi
1538	movl	%ebx,%ebp
1539	punpcklqdq	%xmm2,%xmm5
1540	movdqa	%xmm4,%xmm7
1541	addl	16(%esp),%eax
1542	xorl	%edx,%ecx
1543	paddd	%xmm4,%xmm0
1544	movdqa	%xmm1,80(%esp)
1545	roll	$5,%ebx
1546	addl	%esi,%eax
1547	psrldq	$4,%xmm7
1548	andl	%ecx,%ebp
1549	xorl	%edx,%ecx
1550	pxor	%xmm1,%xmm5
1551	addl	%ebx,%eax
1552	rorl	$7,%ebx
1553	pxor	%xmm3,%xmm7
1554	xorl	%edx,%ebp
1555	movl	%eax,%esi
1556	addl	20(%esp),%edi
1557	pxor	%xmm7,%xmm5
1558	xorl	%ecx,%ebx
1559	roll	$5,%eax
1560	movdqa	%xmm0,(%esp)
1561	addl	%ebp,%edi
1562	andl	%ebx,%esi
1563	movdqa	%xmm5,%xmm1
1564	xorl	%ecx,%ebx
1565	addl	%eax,%edi
1566	rorl	$7,%eax
1567	movdqa	%xmm5,%xmm7
1568	xorl	%ecx,%esi
1569	pslldq	$12,%xmm1
1570	paddd	%xmm5,%xmm5
1571	movl	%edi,%ebp
1572	addl	24(%esp),%edx
1573	psrld	$31,%xmm7
1574	xorl	%ebx,%eax
1575	roll	$5,%edi
1576	movdqa	%xmm1,%xmm0
1577	addl	%esi,%edx
1578	andl	%eax,%ebp
1579	xorl	%ebx,%eax
1580	psrld	$30,%xmm1
1581	addl	%edi,%edx
1582	rorl	$7,%edi
1583	por	%xmm7,%xmm5
1584	xorl	%ebx,%ebp
1585	movl	%edx,%esi
1586	addl	28(%esp),%ecx
1587	pslld	$2,%xmm0
1588	xorl	%eax,%edi
1589	roll	$5,%edx
1590	pxor	%xmm1,%xmm5
1591	movdqa	112(%esp),%xmm1
1592	addl	%ebp,%ecx
1593	andl	%edi,%esi
1594	pxor	%xmm0,%xmm5
1595	pshufd	$238,%xmm2,%xmm6
1596	xorl	%eax,%edi
1597	addl	%edx,%ecx
1598	rorl	$7,%edx
1599	xorl	%eax,%esi
1600	movl	%ecx,%ebp
1601	punpcklqdq	%xmm3,%xmm6
1602	movdqa	%xmm5,%xmm0
1603	addl	32(%esp),%ebx
1604	xorl	%edi,%edx
1605	paddd	%xmm5,%xmm1
1606	movdqa	%xmm2,96(%esp)
1607	roll	$5,%ecx
1608	addl	%esi,%ebx
1609	psrldq	$4,%xmm0
1610	andl	%edx,%ebp
1611	xorl	%edi,%edx
1612	pxor	%xmm2,%xmm6
1613	addl	%ecx,%ebx
1614	rorl	$7,%ecx
1615	pxor	%xmm4,%xmm0
1616	xorl	%edi,%ebp
1617	movl	%ebx,%esi
1618	addl	36(%esp),%eax
1619	pxor	%xmm0,%xmm6
1620	xorl	%edx,%ecx
1621	roll	$5,%ebx
1622	movdqa	%xmm1,16(%esp)
1623	addl	%ebp,%eax
1624	andl	%ecx,%esi
1625	movdqa	%xmm6,%xmm2
1626	xorl	%edx,%ecx
1627	addl	%ebx,%eax
1628	rorl	$7,%ebx
1629	movdqa	%xmm6,%xmm0
1630	xorl	%edx,%esi
1631	pslldq	$12,%xmm2
1632	paddd	%xmm6,%xmm6
1633	movl	%eax,%ebp
1634	addl	40(%esp),%edi
1635	psrld	$31,%xmm0
1636	xorl	%ecx,%ebx
1637	roll	$5,%eax
1638	movdqa	%xmm2,%xmm1
1639	addl	%esi,%edi
1640	andl	%ebx,%ebp
1641	xorl	%ecx,%ebx
1642	psrld	$30,%xmm2
1643	addl	%eax,%edi
1644	rorl	$7,%eax
1645	por	%xmm0,%xmm6
1646	xorl	%ecx,%ebp
1647	movdqa	64(%esp),%xmm0
1648	movl	%edi,%esi
1649	addl	44(%esp),%edx
1650	pslld	$2,%xmm1
1651	xorl	%ebx,%eax
1652	roll	$5,%edi
1653	pxor	%xmm2,%xmm6
1654	movdqa	112(%esp),%xmm2
1655	addl	%ebp,%edx
1656	andl	%eax,%esi
1657	pxor	%xmm1,%xmm6
1658	pshufd	$238,%xmm3,%xmm7
1659	xorl	%ebx,%eax
1660	addl	%edi,%edx
1661	rorl	$7,%edi
1662	xorl	%ebx,%esi
1663	movl	%edx,%ebp
1664	punpcklqdq	%xmm4,%xmm7
1665	movdqa	%xmm6,%xmm1
1666	addl	48(%esp),%ecx
1667	xorl	%eax,%edi
1668	paddd	%xmm6,%xmm2
1669	movdqa	%xmm3,64(%esp)
1670	roll	$5,%edx
1671	addl	%esi,%ecx
1672	psrldq	$4,%xmm1
1673	andl	%edi,%ebp
1674	xorl	%eax,%edi
1675	pxor	%xmm3,%xmm7
1676	addl	%edx,%ecx
1677	rorl	$7,%edx
1678	pxor	%xmm5,%xmm1
1679	xorl	%eax,%ebp
1680	movl	%ecx,%esi
1681	addl	52(%esp),%ebx
1682	pxor	%xmm1,%xmm7
1683	xorl	%edi,%edx
1684	roll	$5,%ecx
1685	movdqa	%xmm2,32(%esp)
1686	addl	%ebp,%ebx
1687	andl	%edx,%esi
1688	movdqa	%xmm7,%xmm3
1689	xorl	%edi,%edx
1690	addl	%ecx,%ebx
1691	rorl	$7,%ecx
1692	movdqa	%xmm7,%xmm1
1693	xorl	%edi,%esi
1694	pslldq	$12,%xmm3
1695	paddd	%xmm7,%xmm7
1696	movl	%ebx,%ebp
1697	addl	56(%esp),%eax
1698	psrld	$31,%xmm1
1699	xorl	%edx,%ecx
1700	roll	$5,%ebx
1701	movdqa	%xmm3,%xmm2
1702	addl	%esi,%eax
1703	andl	%ecx,%ebp
1704	xorl	%edx,%ecx
1705	psrld	$30,%xmm3
1706	addl	%ebx,%eax
1707	rorl	$7,%ebx
1708	por	%xmm1,%xmm7
1709	xorl	%edx,%ebp
1710	movdqa	80(%esp),%xmm1
1711	movl	%eax,%esi
1712	addl	60(%esp),%edi
1713	pslld	$2,%xmm2
1714	xorl	%ecx,%ebx
1715	roll	$5,%eax
1716	pxor	%xmm3,%xmm7
1717	movdqa	112(%esp),%xmm3
1718	addl	%ebp,%edi
1719	andl	%ebx,%esi
1720	pxor	%xmm2,%xmm7
1721	pshufd	$238,%xmm6,%xmm2
1722	xorl	%ecx,%ebx
1723	addl	%eax,%edi
1724	rorl	$7,%eax
1725	pxor	%xmm4,%xmm0
1726	punpcklqdq	%xmm7,%xmm2
1727	xorl	%ecx,%esi
1728	movl	%edi,%ebp
1729	addl	(%esp),%edx
1730	pxor	%xmm1,%xmm0
1731	movdqa	%xmm4,80(%esp)
1732	xorl	%ebx,%eax
1733	roll	$5,%edi
1734	movdqa	%xmm3,%xmm4
1735	addl	%esi,%edx
1736	paddd	%xmm7,%xmm3
1737	andl	%eax,%ebp
1738	pxor	%xmm2,%xmm0
1739	xorl	%ebx,%eax
1740	addl	%edi,%edx
1741	rorl	$7,%edi
1742	xorl	%ebx,%ebp
1743	movdqa	%xmm0,%xmm2
1744	movdqa	%xmm3,48(%esp)
1745	movl	%edx,%esi
1746	addl	4(%esp),%ecx
1747	xorl	%eax,%edi
1748	roll	$5,%edx
1749	pslld	$2,%xmm0
1750	addl	%ebp,%ecx
1751	andl	%edi,%esi
1752	psrld	$30,%xmm2
1753	xorl	%eax,%edi
1754	addl	%edx,%ecx
1755	rorl	$7,%edx
1756	xorl	%eax,%esi
1757	movl	%ecx,%ebp
1758	addl	8(%esp),%ebx
1759	xorl	%edi,%edx
1760	roll	$5,%ecx
1761	por	%xmm2,%xmm0
1762	addl	%esi,%ebx
1763	andl	%edx,%ebp
1764	movdqa	96(%esp),%xmm2
1765	xorl	%edi,%edx
1766	addl	%ecx,%ebx
1767	addl	12(%esp),%eax
1768	xorl	%edi,%ebp
1769	movl	%ebx,%esi
1770	pshufd	$238,%xmm7,%xmm3
1771	roll	$5,%ebx
1772	addl	%ebp,%eax
1773	xorl	%edx,%esi
1774	rorl	$7,%ecx
1775	addl	%ebx,%eax
1776	addl	16(%esp),%edi
1777	pxor	%xmm5,%xmm1
1778	punpcklqdq	%xmm0,%xmm3
1779	xorl	%ecx,%esi
1780	movl	%eax,%ebp
1781	roll	$5,%eax
1782	pxor	%xmm2,%xmm1
1783	movdqa	%xmm5,96(%esp)
1784	addl	%esi,%edi
1785	xorl	%ecx,%ebp
1786	movdqa	%xmm4,%xmm5
1787	rorl	$7,%ebx
1788	paddd	%xmm0,%xmm4
1789	addl	%eax,%edi
1790	pxor	%xmm3,%xmm1
1791	addl	20(%esp),%edx
1792	xorl	%ebx,%ebp
1793	movl	%edi,%esi
1794	roll	$5,%edi
1795	movdqa	%xmm1,%xmm3
1796	movdqa	%xmm4,(%esp)
1797	addl	%ebp,%edx
1798	xorl	%ebx,%esi
1799	rorl	$7,%eax
1800	addl	%edi,%edx
1801	pslld	$2,%xmm1
1802	addl	24(%esp),%ecx
1803	xorl	%eax,%esi
1804	psrld	$30,%xmm3
1805	movl	%edx,%ebp
1806	roll	$5,%edx
1807	addl	%esi,%ecx
1808	xorl	%eax,%ebp
1809	rorl	$7,%edi
1810	addl	%edx,%ecx
1811	por	%xmm3,%xmm1
1812	addl	28(%esp),%ebx
1813	xorl	%edi,%ebp
1814	movdqa	64(%esp),%xmm3
1815	movl	%ecx,%esi
1816	roll	$5,%ecx
1817	addl	%ebp,%ebx
1818	xorl	%edi,%esi
1819	rorl	$7,%edx
1820	pshufd	$238,%xmm0,%xmm4
1821	addl	%ecx,%ebx
1822	addl	32(%esp),%eax
1823	pxor	%xmm6,%xmm2
1824	punpcklqdq	%xmm1,%xmm4
1825	xorl	%edx,%esi
1826	movl	%ebx,%ebp
1827	roll	$5,%ebx
1828	pxor	%xmm3,%xmm2
1829	movdqa	%xmm6,64(%esp)
1830	addl	%esi,%eax
1831	xorl	%edx,%ebp
1832	movdqa	128(%esp),%xmm6
1833	rorl	$7,%ecx
1834	paddd	%xmm1,%xmm5
1835	addl	%ebx,%eax
1836	pxor	%xmm4,%xmm2
1837	addl	36(%esp),%edi
1838	xorl	%ecx,%ebp
1839	movl	%eax,%esi
1840	roll	$5,%eax
1841	movdqa	%xmm2,%xmm4
1842	movdqa	%xmm5,16(%esp)
1843	addl	%ebp,%edi
1844	xorl	%ecx,%esi
1845	rorl	$7,%ebx
1846	addl	%eax,%edi
1847	pslld	$2,%xmm2
1848	addl	40(%esp),%edx
1849	xorl	%ebx,%esi
1850	psrld	$30,%xmm4
1851	movl	%edi,%ebp
1852	roll	$5,%edi
1853	addl	%esi,%edx
1854	xorl	%ebx,%ebp
1855	rorl	$7,%eax
1856	addl	%edi,%edx
1857	por	%xmm4,%xmm2
1858	addl	44(%esp),%ecx
1859	xorl	%eax,%ebp
1860	movdqa	80(%esp),%xmm4
1861	movl	%edx,%esi
1862	roll	$5,%edx
1863	addl	%ebp,%ecx
1864	xorl	%eax,%esi
1865	rorl	$7,%edi
1866	pshufd	$238,%xmm1,%xmm5
1867	addl	%edx,%ecx
1868	addl	48(%esp),%ebx
1869	pxor	%xmm7,%xmm3
1870	punpcklqdq	%xmm2,%xmm5
1871	xorl	%edi,%esi
1872	movl	%ecx,%ebp
1873	roll	$5,%ecx
1874	pxor	%xmm4,%xmm3
1875	movdqa	%xmm7,80(%esp)
1876	addl	%esi,%ebx
1877	xorl	%edi,%ebp
1878	movdqa	%xmm6,%xmm7
1879	rorl	$7,%edx
1880	paddd	%xmm2,%xmm6
1881	addl	%ecx,%ebx
1882	pxor	%xmm5,%xmm3
1883	addl	52(%esp),%eax
1884	xorl	%edx,%ebp
1885	movl	%ebx,%esi
1886	roll	$5,%ebx
1887	movdqa	%xmm3,%xmm5
1888	movdqa	%xmm6,32(%esp)
1889	addl	%ebp,%eax
1890	xorl	%edx,%esi
1891	rorl	$7,%ecx
1892	addl	%ebx,%eax
1893	pslld	$2,%xmm3
1894	addl	56(%esp),%edi
1895	xorl	%ecx,%esi
1896	psrld	$30,%xmm5
1897	movl	%eax,%ebp
1898	roll	$5,%eax
1899	addl	%esi,%edi
1900	xorl	%ecx,%ebp
1901	rorl	$7,%ebx
1902	addl	%eax,%edi
1903	por	%xmm5,%xmm3
1904	addl	60(%esp),%edx
1905	xorl	%ebx,%ebp
1906	movdqa	96(%esp),%xmm5
1907	movl	%edi,%esi
1908	roll	$5,%edi
1909	addl	%ebp,%edx
1910	xorl	%ebx,%esi
1911	rorl	$7,%eax
1912	pshufd	$238,%xmm2,%xmm6
1913	addl	%edi,%edx
1914	addl	(%esp),%ecx
1915	pxor	%xmm0,%xmm4
1916	punpcklqdq	%xmm3,%xmm6
1917	xorl	%eax,%esi
1918	movl	%edx,%ebp
1919	roll	$5,%edx
1920	pxor	%xmm5,%xmm4
1921	movdqa	%xmm0,96(%esp)
1922	addl	%esi,%ecx
1923	xorl	%eax,%ebp
1924	movdqa	%xmm7,%xmm0
1925	rorl	$7,%edi
1926	paddd	%xmm3,%xmm7
1927	addl	%edx,%ecx
1928	pxor	%xmm6,%xmm4
1929	addl	4(%esp),%ebx
1930	xorl	%edi,%ebp
1931	movl	%ecx,%esi
1932	roll	$5,%ecx
1933	movdqa	%xmm4,%xmm6
1934	movdqa	%xmm7,48(%esp)
1935	addl	%ebp,%ebx
1936	xorl	%edi,%esi
1937	rorl	$7,%edx
1938	addl	%ecx,%ebx
1939	pslld	$2,%xmm4
1940	addl	8(%esp),%eax
1941	xorl	%edx,%esi
1942	psrld	$30,%xmm6
1943	movl	%ebx,%ebp
1944	roll	$5,%ebx
1945	addl	%esi,%eax
1946	xorl	%edx,%ebp
1947	rorl	$7,%ecx
1948	addl	%ebx,%eax
1949	por	%xmm6,%xmm4
1950	addl	12(%esp),%edi
1951	xorl	%ecx,%ebp
1952	movdqa	64(%esp),%xmm6
1953	movl	%eax,%esi
1954	roll	$5,%eax
1955	addl	%ebp,%edi
1956	xorl	%ecx,%esi
1957	rorl	$7,%ebx
1958	pshufd	$238,%xmm3,%xmm7
1959	addl	%eax,%edi
1960	addl	16(%esp),%edx
1961	pxor	%xmm1,%xmm5
1962	punpcklqdq	%xmm4,%xmm7
1963	xorl	%ebx,%esi
1964	movl	%edi,%ebp
1965	roll	$5,%edi
1966	pxor	%xmm6,%xmm5
1967	movdqa	%xmm1,64(%esp)
1968	addl	%esi,%edx
1969	xorl	%ebx,%ebp
1970	movdqa	%xmm0,%xmm1
1971	rorl	$7,%eax
1972	paddd	%xmm4,%xmm0
1973	addl	%edi,%edx
1974	pxor	%xmm7,%xmm5
1975	addl	20(%esp),%ecx
1976	xorl	%eax,%ebp
1977	movl	%edx,%esi
1978	roll	$5,%edx
1979	movdqa	%xmm5,%xmm7
1980	movdqa	%xmm0,(%esp)
1981	addl	%ebp,%ecx
1982	xorl	%eax,%esi
1983	rorl	$7,%edi
1984	addl	%edx,%ecx
1985	pslld	$2,%xmm5
1986	addl	24(%esp),%ebx
1987	xorl	%edi,%esi
1988	psrld	$30,%xmm7
1989	movl	%ecx,%ebp
1990	roll	$5,%ecx
1991	addl	%esi,%ebx
1992	xorl	%edi,%ebp
1993	rorl	$7,%edx
1994	addl	%ecx,%ebx
1995	por	%xmm7,%xmm5
1996	addl	28(%esp),%eax
1997	movdqa	80(%esp),%xmm7
1998	rorl	$7,%ecx
1999	movl	%ebx,%esi
2000	xorl	%edx,%ebp
2001	roll	$5,%ebx
2002	pshufd	$238,%xmm4,%xmm0
2003	addl	%ebp,%eax
2004	xorl	%ecx,%esi
2005	xorl	%edx,%ecx
2006	addl	%ebx,%eax
2007	addl	32(%esp),%edi
2008	pxor	%xmm2,%xmm6
2009	punpcklqdq	%xmm5,%xmm0
2010	andl	%ecx,%esi
2011	xorl	%edx,%ecx
2012	rorl	$7,%ebx
2013	pxor	%xmm7,%xmm6
2014	movdqa	%xmm2,80(%esp)
2015	movl	%eax,%ebp
2016	xorl	%ecx,%esi
2017	roll	$5,%eax
2018	movdqa	%xmm1,%xmm2
2019	addl	%esi,%edi
2020	paddd	%xmm5,%xmm1
2021	xorl	%ebx,%ebp
2022	pxor	%xmm0,%xmm6
2023	xorl	%ecx,%ebx
2024	addl	%eax,%edi
2025	addl	36(%esp),%edx
2026	andl	%ebx,%ebp
2027	movdqa	%xmm6,%xmm0
2028	movdqa	%xmm1,16(%esp)
2029	xorl	%ecx,%ebx
2030	rorl	$7,%eax
2031	movl	%edi,%esi
2032	xorl	%ebx,%ebp
2033	roll	$5,%edi
2034	pslld	$2,%xmm6
2035	addl	%ebp,%edx
2036	xorl	%eax,%esi
2037	psrld	$30,%xmm0
2038	xorl	%ebx,%eax
2039	addl	%edi,%edx
2040	addl	40(%esp),%ecx
2041	andl	%eax,%esi
2042	xorl	%ebx,%eax
2043	rorl	$7,%edi
2044	por	%xmm0,%xmm6
2045	movl	%edx,%ebp
2046	xorl	%eax,%esi
2047	movdqa	96(%esp),%xmm0
2048	roll	$5,%edx
2049	addl	%esi,%ecx
2050	xorl	%edi,%ebp
2051	xorl	%eax,%edi
2052	addl	%edx,%ecx
2053	pshufd	$238,%xmm5,%xmm1
2054	addl	44(%esp),%ebx
2055	andl	%edi,%ebp
2056	xorl	%eax,%edi
2057	rorl	$7,%edx
2058	movl	%ecx,%esi
2059	xorl	%edi,%ebp
2060	roll	$5,%ecx
2061	addl	%ebp,%ebx
2062	xorl	%edx,%esi
2063	xorl	%edi,%edx
2064	addl	%ecx,%ebx
2065	addl	48(%esp),%eax
2066	pxor	%xmm3,%xmm7
2067	punpcklqdq	%xmm6,%xmm1
2068	andl	%edx,%esi
2069	xorl	%edi,%edx
2070	rorl	$7,%ecx
2071	pxor	%xmm0,%xmm7
2072	movdqa	%xmm3,96(%esp)
2073	movl	%ebx,%ebp
2074	xorl	%edx,%esi
2075	roll	$5,%ebx
2076	movdqa	144(%esp),%xmm3
2077	addl	%esi,%eax
2078	paddd	%xmm6,%xmm2
2079	xorl	%ecx,%ebp
2080	pxor	%xmm1,%xmm7
2081	xorl	%edx,%ecx
2082	addl	%ebx,%eax
2083	addl	52(%esp),%edi
2084	andl	%ecx,%ebp
2085	movdqa	%xmm7,%xmm1
2086	movdqa	%xmm2,32(%esp)
2087	xorl	%edx,%ecx
2088	rorl	$7,%ebx
2089	movl	%eax,%esi
2090	xorl	%ecx,%ebp
2091	roll	$5,%eax
2092	pslld	$2,%xmm7
2093	addl	%ebp,%edi
2094	xorl	%ebx,%esi
2095	psrld	$30,%xmm1
2096	xorl	%ecx,%ebx
2097	addl	%eax,%edi
2098	addl	56(%esp),%edx
2099	andl	%ebx,%esi
2100	xorl	%ecx,%ebx
2101	rorl	$7,%eax
2102	por	%xmm1,%xmm7
2103	movl	%edi,%ebp
2104	xorl	%ebx,%esi
2105	movdqa	64(%esp),%xmm1
2106	roll	$5,%edi
2107	addl	%esi,%edx
2108	xorl	%eax,%ebp
2109	xorl	%ebx,%eax
2110	addl	%edi,%edx
2111	pshufd	$238,%xmm6,%xmm2
2112	addl	60(%esp),%ecx
2113	andl	%eax,%ebp
2114	xorl	%ebx,%eax
2115	rorl	$7,%edi
2116	movl	%edx,%esi
2117	xorl	%eax,%ebp
2118	roll	$5,%edx
2119	addl	%ebp,%ecx
2120	xorl	%edi,%esi
2121	xorl	%eax,%edi
2122	addl	%edx,%ecx
2123	addl	(%esp),%ebx
2124	pxor	%xmm4,%xmm0
2125	punpcklqdq	%xmm7,%xmm2
2126	andl	%edi,%esi
2127	xorl	%eax,%edi
2128	rorl	$7,%edx
2129	pxor	%xmm1,%xmm0
2130	movdqa	%xmm4,64(%esp)
2131	movl	%ecx,%ebp
2132	xorl	%edi,%esi
2133	roll	$5,%ecx
2134	movdqa	%xmm3,%xmm4
2135	addl	%esi,%ebx
2136	paddd	%xmm7,%xmm3
2137	xorl	%edx,%ebp
2138	pxor	%xmm2,%xmm0
2139	xorl	%edi,%edx
2140	addl	%ecx,%ebx
2141	addl	4(%esp),%eax
2142	andl	%edx,%ebp
2143	movdqa	%xmm0,%xmm2
2144	movdqa	%xmm3,48(%esp)
2145	xorl	%edi,%edx
2146	rorl	$7,%ecx
2147	movl	%ebx,%esi
2148	xorl	%edx,%ebp
2149	roll	$5,%ebx
2150	pslld	$2,%xmm0
2151	addl	%ebp,%eax
2152	xorl	%ecx,%esi
2153	psrld	$30,%xmm2
2154	xorl	%edx,%ecx
2155	addl	%ebx,%eax
2156	addl	8(%esp),%edi
2157	andl	%ecx,%esi
2158	xorl	%edx,%ecx
2159	rorl	$7,%ebx
2160	por	%xmm2,%xmm0
2161	movl	%eax,%ebp
2162	xorl	%ecx,%esi
2163	movdqa	80(%esp),%xmm2
2164	roll	$5,%eax
2165	addl	%esi,%edi
2166	xorl	%ebx,%ebp
2167	xorl	%ecx,%ebx
2168	addl	%eax,%edi
2169	pshufd	$238,%xmm7,%xmm3
2170	addl	12(%esp),%edx
2171	andl	%ebx,%ebp
2172	xorl	%ecx,%ebx
2173	rorl	$7,%eax
2174	movl	%edi,%esi
2175	xorl	%ebx,%ebp
2176	roll	$5,%edi
2177	addl	%ebp,%edx
2178	xorl	%eax,%esi
2179	xorl	%ebx,%eax
2180	addl	%edi,%edx
2181	addl	16(%esp),%ecx
2182	pxor	%xmm5,%xmm1
2183	punpcklqdq	%xmm0,%xmm3
2184	andl	%eax,%esi
2185	xorl	%ebx,%eax
2186	rorl	$7,%edi
2187	pxor	%xmm2,%xmm1
2188	movdqa	%xmm5,80(%esp)
2189	movl	%edx,%ebp
2190	xorl	%eax,%esi
2191	roll	$5,%edx
2192	movdqa	%xmm4,%xmm5
2193	addl	%esi,%ecx
2194	paddd	%xmm0,%xmm4
2195	xorl	%edi,%ebp
2196	pxor	%xmm3,%xmm1
2197	xorl	%eax,%edi
2198	addl	%edx,%ecx
2199	addl	20(%esp),%ebx
2200	andl	%edi,%ebp
2201	movdqa	%xmm1,%xmm3
2202	movdqa	%xmm4,(%esp)
2203	xorl	%eax,%edi
2204	rorl	$7,%edx
2205	movl	%ecx,%esi
2206	xorl	%edi,%ebp
2207	roll	$5,%ecx
2208	pslld	$2,%xmm1
2209	addl	%ebp,%ebx
2210	xorl	%edx,%esi
2211	psrld	$30,%xmm3
2212	xorl	%edi,%edx
2213	addl	%ecx,%ebx
2214	addl	24(%esp),%eax
2215	andl	%edx,%esi
2216	xorl	%edi,%edx
2217	rorl	$7,%ecx
2218	por	%xmm3,%xmm1
2219	movl	%ebx,%ebp
2220	xorl	%edx,%esi
2221	movdqa	96(%esp),%xmm3
2222	roll	$5,%ebx
2223	addl	%esi,%eax
2224	xorl	%ecx,%ebp
2225	xorl	%edx,%ecx
2226	addl	%ebx,%eax
2227	pshufd	$238,%xmm0,%xmm4
2228	addl	28(%esp),%edi
2229	andl	%ecx,%ebp
2230	xorl	%edx,%ecx
2231	rorl	$7,%ebx
2232	movl	%eax,%esi
2233	xorl	%ecx,%ebp
2234	roll	$5,%eax
2235	addl	%ebp,%edi
2236	xorl	%ebx,%esi
2237	xorl	%ecx,%ebx
2238	addl	%eax,%edi
2239	addl	32(%esp),%edx
2240	pxor	%xmm6,%xmm2
2241	punpcklqdq	%xmm1,%xmm4
2242	andl	%ebx,%esi
2243	xorl	%ecx,%ebx
2244	rorl	$7,%eax
2245	pxor	%xmm3,%xmm2
2246	movdqa	%xmm6,96(%esp)
2247	movl	%edi,%ebp
2248	xorl	%ebx,%esi
2249	roll	$5,%edi
2250	movdqa	%xmm5,%xmm6
2251	addl	%esi,%edx
2252	paddd	%xmm1,%xmm5
2253	xorl	%eax,%ebp
2254	pxor	%xmm4,%xmm2
2255	xorl	%ebx,%eax
2256	addl	%edi,%edx
2257	addl	36(%esp),%ecx
2258	andl	%eax,%ebp
2259	movdqa	%xmm2,%xmm4
2260	movdqa	%xmm5,16(%esp)
2261	xorl	%ebx,%eax
2262	rorl	$7,%edi
2263	movl	%edx,%esi
2264	xorl	%eax,%ebp
2265	roll	$5,%edx
2266	pslld	$2,%xmm2
2267	addl	%ebp,%ecx
2268	xorl	%edi,%esi
2269	psrld	$30,%xmm4
2270	xorl	%eax,%edi
2271	addl	%edx,%ecx
2272	addl	40(%esp),%ebx
2273	andl	%edi,%esi
2274	xorl	%eax,%edi
2275	rorl	$7,%edx
2276	por	%xmm4,%xmm2
2277	movl	%ecx,%ebp
2278	xorl	%edi,%esi
2279	movdqa	64(%esp),%xmm4
2280	roll	$5,%ecx
2281	addl	%esi,%ebx
2282	xorl	%edx,%ebp
2283	xorl	%edi,%edx
2284	addl	%ecx,%ebx
2285	pshufd	$238,%xmm1,%xmm5
2286	addl	44(%esp),%eax
2287	andl	%edx,%ebp
2288	xorl	%edi,%edx
2289	rorl	$7,%ecx
2290	movl	%ebx,%esi
2291	xorl	%edx,%ebp
2292	roll	$5,%ebx
2293	addl	%ebp,%eax
2294	xorl	%edx,%esi
2295	addl	%ebx,%eax
2296	addl	48(%esp),%edi
2297	pxor	%xmm7,%xmm3
2298	punpcklqdq	%xmm2,%xmm5
2299	xorl	%ecx,%esi
2300	movl	%eax,%ebp
2301	roll	$5,%eax
2302	pxor	%xmm4,%xmm3
2303	movdqa	%xmm7,64(%esp)
2304	addl	%esi,%edi
2305	xorl	%ecx,%ebp
2306	movdqa	%xmm6,%xmm7
2307	rorl	$7,%ebx
2308	paddd	%xmm2,%xmm6
2309	addl	%eax,%edi
2310	pxor	%xmm5,%xmm3
2311	addl	52(%esp),%edx
2312	xorl	%ebx,%ebp
2313	movl	%edi,%esi
2314	roll	$5,%edi
2315	movdqa	%xmm3,%xmm5
2316	movdqa	%xmm6,32(%esp)
2317	addl	%ebp,%edx
2318	xorl	%ebx,%esi
2319	rorl	$7,%eax
2320	addl	%edi,%edx
2321	pslld	$2,%xmm3
2322	addl	56(%esp),%ecx
2323	xorl	%eax,%esi
2324	psrld	$30,%xmm5
2325	movl	%edx,%ebp
2326	roll	$5,%edx
2327	addl	%esi,%ecx
2328	xorl	%eax,%ebp
2329	rorl	$7,%edi
2330	addl	%edx,%ecx
2331	por	%xmm5,%xmm3
2332	addl	60(%esp),%ebx
2333	xorl	%edi,%ebp
2334	movl	%ecx,%esi
2335	roll	$5,%ecx
2336	addl	%ebp,%ebx
2337	xorl	%edi,%esi
2338	rorl	$7,%edx
2339	addl	%ecx,%ebx
2340	addl	(%esp),%eax
2341	xorl	%edx,%esi
2342	movl	%ebx,%ebp
2343	roll	$5,%ebx
2344	addl	%esi,%eax
2345	xorl	%edx,%ebp
2346	rorl	$7,%ecx
2347	paddd	%xmm3,%xmm7
2348	addl	%ebx,%eax
2349	addl	4(%esp),%edi
2350	xorl	%ecx,%ebp
2351	movl	%eax,%esi
2352	movdqa	%xmm7,48(%esp)
2353	roll	$5,%eax
2354	addl	%ebp,%edi
2355	xorl	%ecx,%esi
2356	rorl	$7,%ebx
2357	addl	%eax,%edi
2358	addl	8(%esp),%edx
2359	xorl	%ebx,%esi
2360	movl	%edi,%ebp
2361	roll	$5,%edi
2362	addl	%esi,%edx
2363	xorl	%ebx,%ebp
2364	rorl	$7,%eax
2365	addl	%edi,%edx
2366	addl	12(%esp),%ecx
2367	xorl	%eax,%ebp
2368	movl	%edx,%esi
2369	roll	$5,%edx
2370	addl	%ebp,%ecx
2371	xorl	%eax,%esi
2372	rorl	$7,%edi
2373	addl	%edx,%ecx
2374	movl	196(%esp),%ebp
2375	cmpl	200(%esp),%ebp
2376	je	L005done
2377	movdqa	160(%esp),%xmm7
2378	movdqa	176(%esp),%xmm6
2379	movdqu	(%ebp),%xmm0
2380	movdqu	16(%ebp),%xmm1
2381	movdqu	32(%ebp),%xmm2
2382	movdqu	48(%ebp),%xmm3
2383	addl	$64,%ebp
2384.byte	102,15,56,0,198
2385	movl	%ebp,196(%esp)
2386	movdqa	%xmm7,96(%esp)
2387	addl	16(%esp),%ebx
2388	xorl	%edi,%esi
2389	movl	%ecx,%ebp
2390	roll	$5,%ecx
2391	addl	%esi,%ebx
2392	xorl	%edi,%ebp
2393	rorl	$7,%edx
2394.byte	102,15,56,0,206
2395	addl	%ecx,%ebx
2396	addl	20(%esp),%eax
2397	xorl	%edx,%ebp
2398	movl	%ebx,%esi
2399	paddd	%xmm7,%xmm0
2400	roll	$5,%ebx
2401	addl	%ebp,%eax
2402	xorl	%edx,%esi
2403	rorl	$7,%ecx
2404	movdqa	%xmm0,(%esp)
2405	addl	%ebx,%eax
2406	addl	24(%esp),%edi
2407	xorl	%ecx,%esi
2408	movl	%eax,%ebp
2409	psubd	%xmm7,%xmm0
2410	roll	$5,%eax
2411	addl	%esi,%edi
2412	xorl	%ecx,%ebp
2413	rorl	$7,%ebx
2414	addl	%eax,%edi
2415	addl	28(%esp),%edx
2416	xorl	%ebx,%ebp
2417	movl	%edi,%esi
2418	roll	$5,%edi
2419	addl	%ebp,%edx
2420	xorl	%ebx,%esi
2421	rorl	$7,%eax
2422	addl	%edi,%edx
2423	addl	32(%esp),%ecx
2424	xorl	%eax,%esi
2425	movl	%edx,%ebp
2426	roll	$5,%edx
2427	addl	%esi,%ecx
2428	xorl	%eax,%ebp
2429	rorl	$7,%edi
2430.byte	102,15,56,0,214
2431	addl	%edx,%ecx
2432	addl	36(%esp),%ebx
2433	xorl	%edi,%ebp
2434	movl	%ecx,%esi
2435	paddd	%xmm7,%xmm1
2436	roll	$5,%ecx
2437	addl	%ebp,%ebx
2438	xorl	%edi,%esi
2439	rorl	$7,%edx
2440	movdqa	%xmm1,16(%esp)
2441	addl	%ecx,%ebx
2442	addl	40(%esp),%eax
2443	xorl	%edx,%esi
2444	movl	%ebx,%ebp
2445	psubd	%xmm7,%xmm1
2446	roll	$5,%ebx
2447	addl	%esi,%eax
2448	xorl	%edx,%ebp
2449	rorl	$7,%ecx
2450	addl	%ebx,%eax
2451	addl	44(%esp),%edi
2452	xorl	%ecx,%ebp
2453	movl	%eax,%esi
2454	roll	$5,%eax
2455	addl	%ebp,%edi
2456	xorl	%ecx,%esi
2457	rorl	$7,%ebx
2458	addl	%eax,%edi
2459	addl	48(%esp),%edx
2460	xorl	%ebx,%esi
2461	movl	%edi,%ebp
2462	roll	$5,%edi
2463	addl	%esi,%edx
2464	xorl	%ebx,%ebp
2465	rorl	$7,%eax
2466.byte	102,15,56,0,222
2467	addl	%edi,%edx
2468	addl	52(%esp),%ecx
2469	xorl	%eax,%ebp
2470	movl	%edx,%esi
2471	paddd	%xmm7,%xmm2
2472	roll	$5,%edx
2473	addl	%ebp,%ecx
2474	xorl	%eax,%esi
2475	rorl	$7,%edi
2476	movdqa	%xmm2,32(%esp)
2477	addl	%edx,%ecx
2478	addl	56(%esp),%ebx
2479	xorl	%edi,%esi
2480	movl	%ecx,%ebp
2481	psubd	%xmm7,%xmm2
2482	roll	$5,%ecx
2483	addl	%esi,%ebx
2484	xorl	%edi,%ebp
2485	rorl	$7,%edx
2486	addl	%ecx,%ebx
2487	addl	60(%esp),%eax
2488	xorl	%edx,%ebp
2489	movl	%ebx,%esi
2490	roll	$5,%ebx
2491	addl	%ebp,%eax
2492	rorl	$7,%ecx
2493	addl	%ebx,%eax
2494	movl	192(%esp),%ebp
2495	addl	(%ebp),%eax
2496	addl	4(%ebp),%esi
2497	addl	8(%ebp),%ecx
2498	movl	%eax,(%ebp)
2499	addl	12(%ebp),%edx
2500	movl	%esi,4(%ebp)
2501	addl	16(%ebp),%edi
2502	movl	%ecx,8(%ebp)
2503	movl	%ecx,%ebx
2504	movl	%edx,12(%ebp)
2505	xorl	%edx,%ebx
2506	movl	%edi,16(%ebp)
2507	movl	%esi,%ebp
2508	pshufd	$238,%xmm0,%xmm4
2509	andl	%ebx,%esi
2510	movl	%ebp,%ebx
2511	jmp	L004loop
2512.align	4,0x90
2513L005done:
2514	addl	16(%esp),%ebx
2515	xorl	%edi,%esi
2516	movl	%ecx,%ebp
2517	roll	$5,%ecx
2518	addl	%esi,%ebx
2519	xorl	%edi,%ebp
2520	rorl	$7,%edx
2521	addl	%ecx,%ebx
2522	addl	20(%esp),%eax
2523	xorl	%edx,%ebp
2524	movl	%ebx,%esi
2525	roll	$5,%ebx
2526	addl	%ebp,%eax
2527	xorl	%edx,%esi
2528	rorl	$7,%ecx
2529	addl	%ebx,%eax
2530	addl	24(%esp),%edi
2531	xorl	%ecx,%esi
2532	movl	%eax,%ebp
2533	roll	$5,%eax
2534	addl	%esi,%edi
2535	xorl	%ecx,%ebp
2536	rorl	$7,%ebx
2537	addl	%eax,%edi
2538	addl	28(%esp),%edx
2539	xorl	%ebx,%ebp
2540	movl	%edi,%esi
2541	roll	$5,%edi
2542	addl	%ebp,%edx
2543	xorl	%ebx,%esi
2544	rorl	$7,%eax
2545	addl	%edi,%edx
2546	addl	32(%esp),%ecx
2547	xorl	%eax,%esi
2548	movl	%edx,%ebp
2549	roll	$5,%edx
2550	addl	%esi,%ecx
2551	xorl	%eax,%ebp
2552	rorl	$7,%edi
2553	addl	%edx,%ecx
2554	addl	36(%esp),%ebx
2555	xorl	%edi,%ebp
2556	movl	%ecx,%esi
2557	roll	$5,%ecx
2558	addl	%ebp,%ebx
2559	xorl	%edi,%esi
2560	rorl	$7,%edx
2561	addl	%ecx,%ebx
2562	addl	40(%esp),%eax
2563	xorl	%edx,%esi
2564	movl	%ebx,%ebp
2565	roll	$5,%ebx
2566	addl	%esi,%eax
2567	xorl	%edx,%ebp
2568	rorl	$7,%ecx
2569	addl	%ebx,%eax
2570	addl	44(%esp),%edi
2571	xorl	%ecx,%ebp
2572	movl	%eax,%esi
2573	roll	$5,%eax
2574	addl	%ebp,%edi
2575	xorl	%ecx,%esi
2576	rorl	$7,%ebx
2577	addl	%eax,%edi
2578	addl	48(%esp),%edx
2579	xorl	%ebx,%esi
2580	movl	%edi,%ebp
2581	roll	$5,%edi
2582	addl	%esi,%edx
2583	xorl	%ebx,%ebp
2584	rorl	$7,%eax
2585	addl	%edi,%edx
2586	addl	52(%esp),%ecx
2587	xorl	%eax,%ebp
2588	movl	%edx,%esi
2589	roll	$5,%edx
2590	addl	%ebp,%ecx
2591	xorl	%eax,%esi
2592	rorl	$7,%edi
2593	addl	%edx,%ecx
2594	addl	56(%esp),%ebx
2595	xorl	%edi,%esi
2596	movl	%ecx,%ebp
2597	roll	$5,%ecx
2598	addl	%esi,%ebx
2599	xorl	%edi,%ebp
2600	rorl	$7,%edx
2601	addl	%ecx,%ebx
2602	addl	60(%esp),%eax
2603	xorl	%edx,%ebp
2604	movl	%ebx,%esi
2605	roll	$5,%ebx
2606	addl	%ebp,%eax
2607	rorl	$7,%ecx
2608	addl	%ebx,%eax
2609	movl	192(%esp),%ebp
2610	addl	(%ebp),%eax
2611	movl	204(%esp),%esp
2612	addl	4(%ebp),%esi
2613	addl	8(%ebp),%ecx
2614	movl	%eax,(%ebp)
2615	addl	12(%ebp),%edx
2616	movl	%esi,4(%ebp)
2617	addl	16(%ebp),%edi
2618	movl	%ecx,8(%ebp)
2619	movl	%edx,12(%ebp)
2620	movl	%edi,16(%ebp)
2621	popl	%edi
2622	popl	%esi
2623	popl	%ebx
2624	popl	%ebp
2625	ret
2626.private_extern	__sha1_block_data_order_avx
2627.align	4
2628__sha1_block_data_order_avx:
2629	pushl	%ebp
2630	pushl	%ebx
2631	pushl	%esi
2632	pushl	%edi
2633	call	L006pic_point
2634L006pic_point:
2635	popl	%ebp
2636	leal	LK_XX_XX-L006pic_point(%ebp),%ebp
2637Lavx_shortcut:
2638	vzeroall
2639	vmovdqa	(%ebp),%xmm7
2640	vmovdqa	16(%ebp),%xmm0
2641	vmovdqa	32(%ebp),%xmm1
2642	vmovdqa	48(%ebp),%xmm2
2643	vmovdqa	64(%ebp),%xmm6
2644	movl	20(%esp),%edi
2645	movl	24(%esp),%ebp
2646	movl	28(%esp),%edx
2647	movl	%esp,%esi
2648	subl	$208,%esp
2649	andl	$-64,%esp
2650	vmovdqa	%xmm0,112(%esp)
2651	vmovdqa	%xmm1,128(%esp)
2652	vmovdqa	%xmm2,144(%esp)
2653	shll	$6,%edx
2654	vmovdqa	%xmm7,160(%esp)
2655	addl	%ebp,%edx
2656	vmovdqa	%xmm6,176(%esp)
2657	addl	$64,%ebp
2658	movl	%edi,192(%esp)
2659	movl	%ebp,196(%esp)
2660	movl	%edx,200(%esp)
2661	movl	%esi,204(%esp)
2662	movl	(%edi),%eax
2663	movl	4(%edi),%ebx
2664	movl	8(%edi),%ecx
2665	movl	12(%edi),%edx
2666	movl	16(%edi),%edi
2667	movl	%ebx,%esi
2668	vmovdqu	-64(%ebp),%xmm0
2669	vmovdqu	-48(%ebp),%xmm1
2670	vmovdqu	-32(%ebp),%xmm2
2671	vmovdqu	-16(%ebp),%xmm3
2672	vpshufb	%xmm6,%xmm0,%xmm0
2673	vpshufb	%xmm6,%xmm1,%xmm1
2674	vpshufb	%xmm6,%xmm2,%xmm2
2675	vmovdqa	%xmm7,96(%esp)
2676	vpshufb	%xmm6,%xmm3,%xmm3
2677	vpaddd	%xmm7,%xmm0,%xmm4
2678	vpaddd	%xmm7,%xmm1,%xmm5
2679	vpaddd	%xmm7,%xmm2,%xmm6
2680	vmovdqa	%xmm4,(%esp)
2681	movl	%ecx,%ebp
2682	vmovdqa	%xmm5,16(%esp)
2683	xorl	%edx,%ebp
2684	vmovdqa	%xmm6,32(%esp)
2685	andl	%ebp,%esi
2686	jmp	L007loop
2687.align	4,0x90
2688L007loop:
2689	shrdl	$2,%ebx,%ebx
2690	xorl	%edx,%esi
2691	vpalignr	$8,%xmm0,%xmm1,%xmm4
2692	movl	%eax,%ebp
2693	addl	(%esp),%edi
2694	vpaddd	%xmm3,%xmm7,%xmm7
2695	vmovdqa	%xmm0,64(%esp)
2696	xorl	%ecx,%ebx
2697	shldl	$5,%eax,%eax
2698	vpsrldq	$4,%xmm3,%xmm6
2699	addl	%esi,%edi
2700	andl	%ebx,%ebp
2701	vpxor	%xmm0,%xmm4,%xmm4
2702	xorl	%ecx,%ebx
2703	addl	%eax,%edi
2704	vpxor	%xmm2,%xmm6,%xmm6
2705	shrdl	$7,%eax,%eax
2706	xorl	%ecx,%ebp
2707	vmovdqa	%xmm7,48(%esp)
2708	movl	%edi,%esi
2709	addl	4(%esp),%edx
2710	vpxor	%xmm6,%xmm4,%xmm4
2711	xorl	%ebx,%eax
2712	shldl	$5,%edi,%edi
2713	addl	%ebp,%edx
2714	andl	%eax,%esi
2715	vpsrld	$31,%xmm4,%xmm6
2716	xorl	%ebx,%eax
2717	addl	%edi,%edx
2718	shrdl	$7,%edi,%edi
2719	xorl	%ebx,%esi
2720	vpslldq	$12,%xmm4,%xmm0
2721	vpaddd	%xmm4,%xmm4,%xmm4
2722	movl	%edx,%ebp
2723	addl	8(%esp),%ecx
2724	xorl	%eax,%edi
2725	shldl	$5,%edx,%edx
2726	vpsrld	$30,%xmm0,%xmm7
2727	vpor	%xmm6,%xmm4,%xmm4
2728	addl	%esi,%ecx
2729	andl	%edi,%ebp
2730	xorl	%eax,%edi
2731	addl	%edx,%ecx
2732	vpslld	$2,%xmm0,%xmm0
2733	shrdl	$7,%edx,%edx
2734	xorl	%eax,%ebp
2735	vpxor	%xmm7,%xmm4,%xmm4
2736	movl	%ecx,%esi
2737	addl	12(%esp),%ebx
2738	xorl	%edi,%edx
2739	shldl	$5,%ecx,%ecx
2740	vpxor	%xmm0,%xmm4,%xmm4
2741	addl	%ebp,%ebx
2742	andl	%edx,%esi
2743	vmovdqa	96(%esp),%xmm0
2744	xorl	%edi,%edx
2745	addl	%ecx,%ebx
2746	shrdl	$7,%ecx,%ecx
2747	xorl	%edi,%esi
2748	vpalignr	$8,%xmm1,%xmm2,%xmm5
2749	movl	%ebx,%ebp
2750	addl	16(%esp),%eax
2751	vpaddd	%xmm4,%xmm0,%xmm0
2752	vmovdqa	%xmm1,80(%esp)
2753	xorl	%edx,%ecx
2754	shldl	$5,%ebx,%ebx
2755	vpsrldq	$4,%xmm4,%xmm7
2756	addl	%esi,%eax
2757	andl	%ecx,%ebp
2758	vpxor	%xmm1,%xmm5,%xmm5
2759	xorl	%edx,%ecx
2760	addl	%ebx,%eax
2761	vpxor	%xmm3,%xmm7,%xmm7
2762	shrdl	$7,%ebx,%ebx
2763	xorl	%edx,%ebp
2764	vmovdqa	%xmm0,(%esp)
2765	movl	%eax,%esi
2766	addl	20(%esp),%edi
2767	vpxor	%xmm7,%xmm5,%xmm5
2768	xorl	%ecx,%ebx
2769	shldl	$5,%eax,%eax
2770	addl	%ebp,%edi
2771	andl	%ebx,%esi
2772	vpsrld	$31,%xmm5,%xmm7
2773	xorl	%ecx,%ebx
2774	addl	%eax,%edi
2775	shrdl	$7,%eax,%eax
2776	xorl	%ecx,%esi
2777	vpslldq	$12,%xmm5,%xmm1
2778	vpaddd	%xmm5,%xmm5,%xmm5
2779	movl	%edi,%ebp
2780	addl	24(%esp),%edx
2781	xorl	%ebx,%eax
2782	shldl	$5,%edi,%edi
2783	vpsrld	$30,%xmm1,%xmm0
2784	vpor	%xmm7,%xmm5,%xmm5
2785	addl	%esi,%edx
2786	andl	%eax,%ebp
2787	xorl	%ebx,%eax
2788	addl	%edi,%edx
2789	vpslld	$2,%xmm1,%xmm1
2790	shrdl	$7,%edi,%edi
2791	xorl	%ebx,%ebp
2792	vpxor	%xmm0,%xmm5,%xmm5
2793	movl	%edx,%esi
2794	addl	28(%esp),%ecx
2795	xorl	%eax,%edi
2796	shldl	$5,%edx,%edx
2797	vpxor	%xmm1,%xmm5,%xmm5
2798	addl	%ebp,%ecx
2799	andl	%edi,%esi
2800	vmovdqa	112(%esp),%xmm1
2801	xorl	%eax,%edi
2802	addl	%edx,%ecx
2803	shrdl	$7,%edx,%edx
2804	xorl	%eax,%esi
2805	vpalignr	$8,%xmm2,%xmm3,%xmm6
2806	movl	%ecx,%ebp
2807	addl	32(%esp),%ebx
2808	vpaddd	%xmm5,%xmm1,%xmm1
2809	vmovdqa	%xmm2,96(%esp)
2810	xorl	%edi,%edx
2811	shldl	$5,%ecx,%ecx
2812	vpsrldq	$4,%xmm5,%xmm0
2813	addl	%esi,%ebx
2814	andl	%edx,%ebp
2815	vpxor	%xmm2,%xmm6,%xmm6
2816	xorl	%edi,%edx
2817	addl	%ecx,%ebx
2818	vpxor	%xmm4,%xmm0,%xmm0
2819	shrdl	$7,%ecx,%ecx
2820	xorl	%edi,%ebp
2821	vmovdqa	%xmm1,16(%esp)
2822	movl	%ebx,%esi
2823	addl	36(%esp),%eax
2824	vpxor	%xmm0,%xmm6,%xmm6
2825	xorl	%edx,%ecx
2826	shldl	$5,%ebx,%ebx
2827	addl	%ebp,%eax
2828	andl	%ecx,%esi
2829	vpsrld	$31,%xmm6,%xmm0
2830	xorl	%edx,%ecx
2831	addl	%ebx,%eax
2832	shrdl	$7,%ebx,%ebx
2833	xorl	%edx,%esi
2834	vpslldq	$12,%xmm6,%xmm2
2835	vpaddd	%xmm6,%xmm6,%xmm6
2836	movl	%eax,%ebp
2837	addl	40(%esp),%edi
2838	xorl	%ecx,%ebx
2839	shldl	$5,%eax,%eax
2840	vpsrld	$30,%xmm2,%xmm1
2841	vpor	%xmm0,%xmm6,%xmm6
2842	addl	%esi,%edi
2843	andl	%ebx,%ebp
2844	xorl	%ecx,%ebx
2845	addl	%eax,%edi
2846	vpslld	$2,%xmm2,%xmm2
2847	vmovdqa	64(%esp),%xmm0
2848	shrdl	$7,%eax,%eax
2849	xorl	%ecx,%ebp
2850	vpxor	%xmm1,%xmm6,%xmm6
2851	movl	%edi,%esi
2852	addl	44(%esp),%edx
2853	xorl	%ebx,%eax
2854	shldl	$5,%edi,%edi
2855	vpxor	%xmm2,%xmm6,%xmm6
2856	addl	%ebp,%edx
2857	andl	%eax,%esi
2858	vmovdqa	112(%esp),%xmm2
2859	xorl	%ebx,%eax
2860	addl	%edi,%edx
2861	shrdl	$7,%edi,%edi
2862	xorl	%ebx,%esi
2863	vpalignr	$8,%xmm3,%xmm4,%xmm7
2864	movl	%edx,%ebp
2865	addl	48(%esp),%ecx
2866	vpaddd	%xmm6,%xmm2,%xmm2
2867	vmovdqa	%xmm3,64(%esp)
2868	xorl	%eax,%edi
2869	shldl	$5,%edx,%edx
2870	vpsrldq	$4,%xmm6,%xmm1
2871	addl	%esi,%ecx
2872	andl	%edi,%ebp
2873	vpxor	%xmm3,%xmm7,%xmm7
2874	xorl	%eax,%edi
2875	addl	%edx,%ecx
2876	vpxor	%xmm5,%xmm1,%xmm1
2877	shrdl	$7,%edx,%edx
2878	xorl	%eax,%ebp
2879	vmovdqa	%xmm2,32(%esp)
2880	movl	%ecx,%esi
2881	addl	52(%esp),%ebx
2882	vpxor	%xmm1,%xmm7,%xmm7
2883	xorl	%edi,%edx
2884	shldl	$5,%ecx,%ecx
2885	addl	%ebp,%ebx
2886	andl	%edx,%esi
2887	vpsrld	$31,%xmm7,%xmm1
2888	xorl	%edi,%edx
2889	addl	%ecx,%ebx
2890	shrdl	$7,%ecx,%ecx
2891	xorl	%edi,%esi
2892	vpslldq	$12,%xmm7,%xmm3
2893	vpaddd	%xmm7,%xmm7,%xmm7
2894	movl	%ebx,%ebp
2895	addl	56(%esp),%eax
2896	xorl	%edx,%ecx
2897	shldl	$5,%ebx,%ebx
2898	vpsrld	$30,%xmm3,%xmm2
2899	vpor	%xmm1,%xmm7,%xmm7
2900	addl	%esi,%eax
2901	andl	%ecx,%ebp
2902	xorl	%edx,%ecx
2903	addl	%ebx,%eax
2904	vpslld	$2,%xmm3,%xmm3
2905	vmovdqa	80(%esp),%xmm1
2906	shrdl	$7,%ebx,%ebx
2907	xorl	%edx,%ebp
2908	vpxor	%xmm2,%xmm7,%xmm7
2909	movl	%eax,%esi
2910	addl	60(%esp),%edi
2911	xorl	%ecx,%ebx
2912	shldl	$5,%eax,%eax
2913	vpxor	%xmm3,%xmm7,%xmm7
2914	addl	%ebp,%edi
2915	andl	%ebx,%esi
2916	vmovdqa	112(%esp),%xmm3
2917	xorl	%ecx,%ebx
2918	addl	%eax,%edi
2919	vpalignr	$8,%xmm6,%xmm7,%xmm2
2920	vpxor	%xmm4,%xmm0,%xmm0
2921	shrdl	$7,%eax,%eax
2922	xorl	%ecx,%esi
2923	movl	%edi,%ebp
2924	addl	(%esp),%edx
2925	vpxor	%xmm1,%xmm0,%xmm0
2926	vmovdqa	%xmm4,80(%esp)
2927	xorl	%ebx,%eax
2928	shldl	$5,%edi,%edi
2929	vmovdqa	%xmm3,%xmm4
2930	vpaddd	%xmm7,%xmm3,%xmm3
2931	addl	%esi,%edx
2932	andl	%eax,%ebp
2933	vpxor	%xmm2,%xmm0,%xmm0
2934	xorl	%ebx,%eax
2935	addl	%edi,%edx
2936	shrdl	$7,%edi,%edi
2937	xorl	%ebx,%ebp
2938	vpsrld	$30,%xmm0,%xmm2
2939	vmovdqa	%xmm3,48(%esp)
2940	movl	%edx,%esi
2941	addl	4(%esp),%ecx
2942	xorl	%eax,%edi
2943	shldl	$5,%edx,%edx
2944	vpslld	$2,%xmm0,%xmm0
2945	addl	%ebp,%ecx
2946	andl	%edi,%esi
2947	xorl	%eax,%edi
2948	addl	%edx,%ecx
2949	shrdl	$7,%edx,%edx
2950	xorl	%eax,%esi
2951	movl	%ecx,%ebp
2952	addl	8(%esp),%ebx
2953	vpor	%xmm2,%xmm0,%xmm0
2954	xorl	%edi,%edx
2955	shldl	$5,%ecx,%ecx
2956	vmovdqa	96(%esp),%xmm2
2957	addl	%esi,%ebx
2958	andl	%edx,%ebp
2959	xorl	%edi,%edx
2960	addl	%ecx,%ebx
2961	addl	12(%esp),%eax
2962	xorl	%edi,%ebp
2963	movl	%ebx,%esi
2964	shldl	$5,%ebx,%ebx
2965	addl	%ebp,%eax
2966	xorl	%edx,%esi
2967	shrdl	$7,%ecx,%ecx
2968	addl	%ebx,%eax
2969	vpalignr	$8,%xmm7,%xmm0,%xmm3
2970	vpxor	%xmm5,%xmm1,%xmm1
2971	addl	16(%esp),%edi
2972	xorl	%ecx,%esi
2973	movl	%eax,%ebp
2974	shldl	$5,%eax,%eax
2975	vpxor	%xmm2,%xmm1,%xmm1
2976	vmovdqa	%xmm5,96(%esp)
2977	addl	%esi,%edi
2978	xorl	%ecx,%ebp
2979	vmovdqa	%xmm4,%xmm5
2980	vpaddd	%xmm0,%xmm4,%xmm4
2981	shrdl	$7,%ebx,%ebx
2982	addl	%eax,%edi
2983	vpxor	%xmm3,%xmm1,%xmm1
2984	addl	20(%esp),%edx
2985	xorl	%ebx,%ebp
2986	movl	%edi,%esi
2987	shldl	$5,%edi,%edi
2988	vpsrld	$30,%xmm1,%xmm3
2989	vmovdqa	%xmm4,(%esp)
2990	addl	%ebp,%edx
2991	xorl	%ebx,%esi
2992	shrdl	$7,%eax,%eax
2993	addl	%edi,%edx
2994	vpslld	$2,%xmm1,%xmm1
2995	addl	24(%esp),%ecx
2996	xorl	%eax,%esi
2997	movl	%edx,%ebp
2998	shldl	$5,%edx,%edx
2999	addl	%esi,%ecx
3000	xorl	%eax,%ebp
3001	shrdl	$7,%edi,%edi
3002	addl	%edx,%ecx
3003	vpor	%xmm3,%xmm1,%xmm1
3004	addl	28(%esp),%ebx
3005	xorl	%edi,%ebp
3006	vmovdqa	64(%esp),%xmm3
3007	movl	%ecx,%esi
3008	shldl	$5,%ecx,%ecx
3009	addl	%ebp,%ebx
3010	xorl	%edi,%esi
3011	shrdl	$7,%edx,%edx
3012	addl	%ecx,%ebx
3013	vpalignr	$8,%xmm0,%xmm1,%xmm4
3014	vpxor	%xmm6,%xmm2,%xmm2
3015	addl	32(%esp),%eax
3016	xorl	%edx,%esi
3017	movl	%ebx,%ebp
3018	shldl	$5,%ebx,%ebx
3019	vpxor	%xmm3,%xmm2,%xmm2
3020	vmovdqa	%xmm6,64(%esp)
3021	addl	%esi,%eax
3022	xorl	%edx,%ebp
3023	vmovdqa	128(%esp),%xmm6
3024	vpaddd	%xmm1,%xmm5,%xmm5
3025	shrdl	$7,%ecx,%ecx
3026	addl	%ebx,%eax
3027	vpxor	%xmm4,%xmm2,%xmm2
3028	addl	36(%esp),%edi
3029	xorl	%ecx,%ebp
3030	movl	%eax,%esi
3031	shldl	$5,%eax,%eax
3032	vpsrld	$30,%xmm2,%xmm4
3033	vmovdqa	%xmm5,16(%esp)
3034	addl	%ebp,%edi
3035	xorl	%ecx,%esi
3036	shrdl	$7,%ebx,%ebx
3037	addl	%eax,%edi
3038	vpslld	$2,%xmm2,%xmm2
3039	addl	40(%esp),%edx
3040	xorl	%ebx,%esi
3041	movl	%edi,%ebp
3042	shldl	$5,%edi,%edi
3043	addl	%esi,%edx
3044	xorl	%ebx,%ebp
3045	shrdl	$7,%eax,%eax
3046	addl	%edi,%edx
3047	vpor	%xmm4,%xmm2,%xmm2
3048	addl	44(%esp),%ecx
3049	xorl	%eax,%ebp
3050	vmovdqa	80(%esp),%xmm4
3051	movl	%edx,%esi
3052	shldl	$5,%edx,%edx
3053	addl	%ebp,%ecx
3054	xorl	%eax,%esi
3055	shrdl	$7,%edi,%edi
3056	addl	%edx,%ecx
3057	vpalignr	$8,%xmm1,%xmm2,%xmm5
3058	vpxor	%xmm7,%xmm3,%xmm3
3059	addl	48(%esp),%ebx
3060	xorl	%edi,%esi
3061	movl	%ecx,%ebp
3062	shldl	$5,%ecx,%ecx
3063	vpxor	%xmm4,%xmm3,%xmm3
3064	vmovdqa	%xmm7,80(%esp)
3065	addl	%esi,%ebx
3066	xorl	%edi,%ebp
3067	vmovdqa	%xmm6,%xmm7
3068	vpaddd	%xmm2,%xmm6,%xmm6
3069	shrdl	$7,%edx,%edx
3070	addl	%ecx,%ebx
3071	vpxor	%xmm5,%xmm3,%xmm3
3072	addl	52(%esp),%eax
3073	xorl	%edx,%ebp
3074	movl	%ebx,%esi
3075	shldl	$5,%ebx,%ebx
3076	vpsrld	$30,%xmm3,%xmm5
3077	vmovdqa	%xmm6,32(%esp)
3078	addl	%ebp,%eax
3079	xorl	%edx,%esi
3080	shrdl	$7,%ecx,%ecx
3081	addl	%ebx,%eax
3082	vpslld	$2,%xmm3,%xmm3
3083	addl	56(%esp),%edi
3084	xorl	%ecx,%esi
3085	movl	%eax,%ebp
3086	shldl	$5,%eax,%eax
3087	addl	%esi,%edi
3088	xorl	%ecx,%ebp
3089	shrdl	$7,%ebx,%ebx
3090	addl	%eax,%edi
3091	vpor	%xmm5,%xmm3,%xmm3
3092	addl	60(%esp),%edx
3093	xorl	%ebx,%ebp
3094	vmovdqa	96(%esp),%xmm5
3095	movl	%edi,%esi
3096	shldl	$5,%edi,%edi
3097	addl	%ebp,%edx
3098	xorl	%ebx,%esi
3099	shrdl	$7,%eax,%eax
3100	addl	%edi,%edx
3101	vpalignr	$8,%xmm2,%xmm3,%xmm6
3102	vpxor	%xmm0,%xmm4,%xmm4
3103	addl	(%esp),%ecx
3104	xorl	%eax,%esi
3105	movl	%edx,%ebp
3106	shldl	$5,%edx,%edx
3107	vpxor	%xmm5,%xmm4,%xmm4
3108	vmovdqa	%xmm0,96(%esp)
3109	addl	%esi,%ecx
3110	xorl	%eax,%ebp
3111	vmovdqa	%xmm7,%xmm0
3112	vpaddd	%xmm3,%xmm7,%xmm7
3113	shrdl	$7,%edi,%edi
3114	addl	%edx,%ecx
3115	vpxor	%xmm6,%xmm4,%xmm4
3116	addl	4(%esp),%ebx
3117	xorl	%edi,%ebp
3118	movl	%ecx,%esi
3119	shldl	$5,%ecx,%ecx
3120	vpsrld	$30,%xmm4,%xmm6
3121	vmovdqa	%xmm7,48(%esp)
3122	addl	%ebp,%ebx
3123	xorl	%edi,%esi
3124	shrdl	$7,%edx,%edx
3125	addl	%ecx,%ebx
3126	vpslld	$2,%xmm4,%xmm4
3127	addl	8(%esp),%eax
3128	xorl	%edx,%esi
3129	movl	%ebx,%ebp
3130	shldl	$5,%ebx,%ebx
3131	addl	%esi,%eax
3132	xorl	%edx,%ebp
3133	shrdl	$7,%ecx,%ecx
3134	addl	%ebx,%eax
3135	vpor	%xmm6,%xmm4,%xmm4
3136	addl	12(%esp),%edi
3137	xorl	%ecx,%ebp
3138	vmovdqa	64(%esp),%xmm6
3139	movl	%eax,%esi
3140	shldl	$5,%eax,%eax
3141	addl	%ebp,%edi
3142	xorl	%ecx,%esi
3143	shrdl	$7,%ebx,%ebx
3144	addl	%eax,%edi
3145	vpalignr	$8,%xmm3,%xmm4,%xmm7
3146	vpxor	%xmm1,%xmm5,%xmm5
3147	addl	16(%esp),%edx
3148	xorl	%ebx,%esi
3149	movl	%edi,%ebp
3150	shldl	$5,%edi,%edi
3151	vpxor	%xmm6,%xmm5,%xmm5
3152	vmovdqa	%xmm1,64(%esp)
3153	addl	%esi,%edx
3154	xorl	%ebx,%ebp
3155	vmovdqa	%xmm0,%xmm1
3156	vpaddd	%xmm4,%xmm0,%xmm0
3157	shrdl	$7,%eax,%eax
3158	addl	%edi,%edx
3159	vpxor	%xmm7,%xmm5,%xmm5
3160	addl	20(%esp),%ecx
3161	xorl	%eax,%ebp
3162	movl	%edx,%esi
3163	shldl	$5,%edx,%edx
3164	vpsrld	$30,%xmm5,%xmm7
3165	vmovdqa	%xmm0,(%esp)
3166	addl	%ebp,%ecx
3167	xorl	%eax,%esi
3168	shrdl	$7,%edi,%edi
3169	addl	%edx,%ecx
3170	vpslld	$2,%xmm5,%xmm5
3171	addl	24(%esp),%ebx
3172	xorl	%edi,%esi
3173	movl	%ecx,%ebp
3174	shldl	$5,%ecx,%ecx
3175	addl	%esi,%ebx
3176	xorl	%edi,%ebp
3177	shrdl	$7,%edx,%edx
3178	addl	%ecx,%ebx
3179	vpor	%xmm7,%xmm5,%xmm5
3180	addl	28(%esp),%eax
3181	vmovdqa	80(%esp),%xmm7
3182	shrdl	$7,%ecx,%ecx
3183	movl	%ebx,%esi
3184	xorl	%edx,%ebp
3185	shldl	$5,%ebx,%ebx
3186	addl	%ebp,%eax
3187	xorl	%ecx,%esi
3188	xorl	%edx,%ecx
3189	addl	%ebx,%eax
3190	vpalignr	$8,%xmm4,%xmm5,%xmm0
3191	vpxor	%xmm2,%xmm6,%xmm6
3192	addl	32(%esp),%edi
3193	andl	%ecx,%esi
3194	xorl	%edx,%ecx
3195	shrdl	$7,%ebx,%ebx
3196	vpxor	%xmm7,%xmm6,%xmm6
3197	vmovdqa	%xmm2,80(%esp)
3198	movl	%eax,%ebp
3199	xorl	%ecx,%esi
3200	vmovdqa	%xmm1,%xmm2
3201	vpaddd	%xmm5,%xmm1,%xmm1
3202	shldl	$5,%eax,%eax
3203	addl	%esi,%edi
3204	vpxor	%xmm0,%xmm6,%xmm6
3205	xorl	%ebx,%ebp
3206	xorl	%ecx,%ebx
3207	addl	%eax,%edi
3208	addl	36(%esp),%edx
3209	vpsrld	$30,%xmm6,%xmm0
3210	vmovdqa	%xmm1,16(%esp)
3211	andl	%ebx,%ebp
3212	xorl	%ecx,%ebx
3213	shrdl	$7,%eax,%eax
3214	movl	%edi,%esi
3215	vpslld	$2,%xmm6,%xmm6
3216	xorl	%ebx,%ebp
3217	shldl	$5,%edi,%edi
3218	addl	%ebp,%edx
3219	xorl	%eax,%esi
3220	xorl	%ebx,%eax
3221	addl	%edi,%edx
3222	addl	40(%esp),%ecx
3223	andl	%eax,%esi
3224	vpor	%xmm0,%xmm6,%xmm6
3225	xorl	%ebx,%eax
3226	shrdl	$7,%edi,%edi
3227	vmovdqa	96(%esp),%xmm0
3228	movl	%edx,%ebp
3229	xorl	%eax,%esi
3230	shldl	$5,%edx,%edx
3231	addl	%esi,%ecx
3232	xorl	%edi,%ebp
3233	xorl	%eax,%edi
3234	addl	%edx,%ecx
3235	addl	44(%esp),%ebx
3236	andl	%edi,%ebp
3237	xorl	%eax,%edi
3238	shrdl	$7,%edx,%edx
3239	movl	%ecx,%esi
3240	xorl	%edi,%ebp
3241	shldl	$5,%ecx,%ecx
3242	addl	%ebp,%ebx
3243	xorl	%edx,%esi
3244	xorl	%edi,%edx
3245	addl	%ecx,%ebx
3246	vpalignr	$8,%xmm5,%xmm6,%xmm1
3247	vpxor	%xmm3,%xmm7,%xmm7
3248	addl	48(%esp),%eax
3249	andl	%edx,%esi
3250	xorl	%edi,%edx
3251	shrdl	$7,%ecx,%ecx
3252	vpxor	%xmm0,%xmm7,%xmm7
3253	vmovdqa	%xmm3,96(%esp)
3254	movl	%ebx,%ebp
3255	xorl	%edx,%esi
3256	vmovdqa	144(%esp),%xmm3
3257	vpaddd	%xmm6,%xmm2,%xmm2
3258	shldl	$5,%ebx,%ebx
3259	addl	%esi,%eax
3260	vpxor	%xmm1,%xmm7,%xmm7
3261	xorl	%ecx,%ebp
3262	xorl	%edx,%ecx
3263	addl	%ebx,%eax
3264	addl	52(%esp),%edi
3265	vpsrld	$30,%xmm7,%xmm1
3266	vmovdqa	%xmm2,32(%esp)
3267	andl	%ecx,%ebp
3268	xorl	%edx,%ecx
3269	shrdl	$7,%ebx,%ebx
3270	movl	%eax,%esi
3271	vpslld	$2,%xmm7,%xmm7
3272	xorl	%ecx,%ebp
3273	shldl	$5,%eax,%eax
3274	addl	%ebp,%edi
3275	xorl	%ebx,%esi
3276	xorl	%ecx,%ebx
3277	addl	%eax,%edi
3278	addl	56(%esp),%edx
3279	andl	%ebx,%esi
3280	vpor	%xmm1,%xmm7,%xmm7
3281	xorl	%ecx,%ebx
3282	shrdl	$7,%eax,%eax
3283	vmovdqa	64(%esp),%xmm1
3284	movl	%edi,%ebp
3285	xorl	%ebx,%esi
3286	shldl	$5,%edi,%edi
3287	addl	%esi,%edx
3288	xorl	%eax,%ebp
3289	xorl	%ebx,%eax
3290	addl	%edi,%edx
3291	addl	60(%esp),%ecx
3292	andl	%eax,%ebp
3293	xorl	%ebx,%eax
3294	shrdl	$7,%edi,%edi
3295	movl	%edx,%esi
3296	xorl	%eax,%ebp
3297	shldl	$5,%edx,%edx
3298	addl	%ebp,%ecx
3299	xorl	%edi,%esi
3300	xorl	%eax,%edi
3301	addl	%edx,%ecx
3302	vpalignr	$8,%xmm6,%xmm7,%xmm2
3303	vpxor	%xmm4,%xmm0,%xmm0
3304	addl	(%esp),%ebx
3305	andl	%edi,%esi
3306	xorl	%eax,%edi
3307	shrdl	$7,%edx,%edx
3308	vpxor	%xmm1,%xmm0,%xmm0
3309	vmovdqa	%xmm4,64(%esp)
3310	movl	%ecx,%ebp
3311	xorl	%edi,%esi
3312	vmovdqa	%xmm3,%xmm4
3313	vpaddd	%xmm7,%xmm3,%xmm3
3314	shldl	$5,%ecx,%ecx
3315	addl	%esi,%ebx
3316	vpxor	%xmm2,%xmm0,%xmm0
3317	xorl	%edx,%ebp
3318	xorl	%edi,%edx
3319	addl	%ecx,%ebx
3320	addl	4(%esp),%eax
3321	vpsrld	$30,%xmm0,%xmm2
3322	vmovdqa	%xmm3,48(%esp)
3323	andl	%edx,%ebp
3324	xorl	%edi,%edx
3325	shrdl	$7,%ecx,%ecx
3326	movl	%ebx,%esi
3327	vpslld	$2,%xmm0,%xmm0
3328	xorl	%edx,%ebp
3329	shldl	$5,%ebx,%ebx
3330	addl	%ebp,%eax
3331	xorl	%ecx,%esi
3332	xorl	%edx,%ecx
3333	addl	%ebx,%eax
3334	addl	8(%esp),%edi
3335	andl	%ecx,%esi
3336	vpor	%xmm2,%xmm0,%xmm0
3337	xorl	%edx,%ecx
3338	shrdl	$7,%ebx,%ebx
3339	vmovdqa	80(%esp),%xmm2
3340	movl	%eax,%ebp
3341	xorl	%ecx,%esi
3342	shldl	$5,%eax,%eax
3343	addl	%esi,%edi
3344	xorl	%ebx,%ebp
3345	xorl	%ecx,%ebx
3346	addl	%eax,%edi
3347	addl	12(%esp),%edx
3348	andl	%ebx,%ebp
3349	xorl	%ecx,%ebx
3350	shrdl	$7,%eax,%eax
3351	movl	%edi,%esi
3352	xorl	%ebx,%ebp
3353	shldl	$5,%edi,%edi
3354	addl	%ebp,%edx
3355	xorl	%eax,%esi
3356	xorl	%ebx,%eax
3357	addl	%edi,%edx
3358	vpalignr	$8,%xmm7,%xmm0,%xmm3
3359	vpxor	%xmm5,%xmm1,%xmm1
3360	addl	16(%esp),%ecx
3361	andl	%eax,%esi
3362	xorl	%ebx,%eax
3363	shrdl	$7,%edi,%edi
3364	vpxor	%xmm2,%xmm1,%xmm1
3365	vmovdqa	%xmm5,80(%esp)
3366	movl	%edx,%ebp
3367	xorl	%eax,%esi
3368	vmovdqa	%xmm4,%xmm5
3369	vpaddd	%xmm0,%xmm4,%xmm4
3370	shldl	$5,%edx,%edx
3371	addl	%esi,%ecx
3372	vpxor	%xmm3,%xmm1,%xmm1
3373	xorl	%edi,%ebp
3374	xorl	%eax,%edi
3375	addl	%edx,%ecx
3376	addl	20(%esp),%ebx
3377	vpsrld	$30,%xmm1,%xmm3
3378	vmovdqa	%xmm4,(%esp)
3379	andl	%edi,%ebp
3380	xorl	%eax,%edi
3381	shrdl	$7,%edx,%edx
3382	movl	%ecx,%esi
3383	vpslld	$2,%xmm1,%xmm1
3384	xorl	%edi,%ebp
3385	shldl	$5,%ecx,%ecx
3386	addl	%ebp,%ebx
3387	xorl	%edx,%esi
3388	xorl	%edi,%edx
3389	addl	%ecx,%ebx
3390	addl	24(%esp),%eax
3391	andl	%edx,%esi
3392	vpor	%xmm3,%xmm1,%xmm1
3393	xorl	%edi,%edx
3394	shrdl	$7,%ecx,%ecx
3395	vmovdqa	96(%esp),%xmm3
3396	movl	%ebx,%ebp
3397	xorl	%edx,%esi
3398	shldl	$5,%ebx,%ebx
3399	addl	%esi,%eax
3400	xorl	%ecx,%ebp
3401	xorl	%edx,%ecx
3402	addl	%ebx,%eax
3403	addl	28(%esp),%edi
3404	andl	%ecx,%ebp
3405	xorl	%edx,%ecx
3406	shrdl	$7,%ebx,%ebx
3407	movl	%eax,%esi
3408	xorl	%ecx,%ebp
3409	shldl	$5,%eax,%eax
3410	addl	%ebp,%edi
3411	xorl	%ebx,%esi
3412	xorl	%ecx,%ebx
3413	addl	%eax,%edi
3414	vpalignr	$8,%xmm0,%xmm1,%xmm4
3415	vpxor	%xmm6,%xmm2,%xmm2
3416	addl	32(%esp),%edx
3417	andl	%ebx,%esi
3418	xorl	%ecx,%ebx
3419	shrdl	$7,%eax,%eax
3420	vpxor	%xmm3,%xmm2,%xmm2
3421	vmovdqa	%xmm6,96(%esp)
3422	movl	%edi,%ebp
3423	xorl	%ebx,%esi
3424	vmovdqa	%xmm5,%xmm6
3425	vpaddd	%xmm1,%xmm5,%xmm5
3426	shldl	$5,%edi,%edi
3427	addl	%esi,%edx
3428	vpxor	%xmm4,%xmm2,%xmm2
3429	xorl	%eax,%ebp
3430	xorl	%ebx,%eax
3431	addl	%edi,%edx
3432	addl	36(%esp),%ecx
3433	vpsrld	$30,%xmm2,%xmm4
3434	vmovdqa	%xmm5,16(%esp)
3435	andl	%eax,%ebp
3436	xorl	%ebx,%eax
3437	shrdl	$7,%edi,%edi
3438	movl	%edx,%esi
3439	vpslld	$2,%xmm2,%xmm2
3440	xorl	%eax,%ebp
3441	shldl	$5,%edx,%edx
3442	addl	%ebp,%ecx
3443	xorl	%edi,%esi
3444	xorl	%eax,%edi
3445	addl	%edx,%ecx
3446	addl	40(%esp),%ebx
3447	andl	%edi,%esi
3448	vpor	%xmm4,%xmm2,%xmm2
3449	xorl	%eax,%edi
3450	shrdl	$7,%edx,%edx
3451	vmovdqa	64(%esp),%xmm4
3452	movl	%ecx,%ebp
3453	xorl	%edi,%esi
3454	shldl	$5,%ecx,%ecx
3455	addl	%esi,%ebx
3456	xorl	%edx,%ebp
3457	xorl	%edi,%edx
3458	addl	%ecx,%ebx
3459	addl	44(%esp),%eax
3460	andl	%edx,%ebp
3461	xorl	%edi,%edx
3462	shrdl	$7,%ecx,%ecx
3463	movl	%ebx,%esi
3464	xorl	%edx,%ebp
3465	shldl	$5,%ebx,%ebx
3466	addl	%ebp,%eax
3467	xorl	%edx,%esi
3468	addl	%ebx,%eax
3469	vpalignr	$8,%xmm1,%xmm2,%xmm5
3470	vpxor	%xmm7,%xmm3,%xmm3
3471	addl	48(%esp),%edi
3472	xorl	%ecx,%esi
3473	movl	%eax,%ebp
3474	shldl	$5,%eax,%eax
3475	vpxor	%xmm4,%xmm3,%xmm3
3476	vmovdqa	%xmm7,64(%esp)
3477	addl	%esi,%edi
3478	xorl	%ecx,%ebp
3479	vmovdqa	%xmm6,%xmm7
3480	vpaddd	%xmm2,%xmm6,%xmm6
3481	shrdl	$7,%ebx,%ebx
3482	addl	%eax,%edi
3483	vpxor	%xmm5,%xmm3,%xmm3
3484	addl	52(%esp),%edx
3485	xorl	%ebx,%ebp
3486	movl	%edi,%esi
3487	shldl	$5,%edi,%edi
3488	vpsrld	$30,%xmm3,%xmm5
3489	vmovdqa	%xmm6,32(%esp)
3490	addl	%ebp,%edx
3491	xorl	%ebx,%esi
3492	shrdl	$7,%eax,%eax
3493	addl	%edi,%edx
3494	vpslld	$2,%xmm3,%xmm3
3495	addl	56(%esp),%ecx
3496	xorl	%eax,%esi
3497	movl	%edx,%ebp
3498	shldl	$5,%edx,%edx
3499	addl	%esi,%ecx
3500	xorl	%eax,%ebp
3501	shrdl	$7,%edi,%edi
3502	addl	%edx,%ecx
3503	vpor	%xmm5,%xmm3,%xmm3
3504	addl	60(%esp),%ebx
3505	xorl	%edi,%ebp
3506	movl	%ecx,%esi
3507	shldl	$5,%ecx,%ecx
3508	addl	%ebp,%ebx
3509	xorl	%edi,%esi
3510	shrdl	$7,%edx,%edx
3511	addl	%ecx,%ebx
3512	addl	(%esp),%eax
3513	vpaddd	%xmm3,%xmm7,%xmm7
3514	xorl	%edx,%esi
3515	movl	%ebx,%ebp
3516	shldl	$5,%ebx,%ebx
3517	addl	%esi,%eax
3518	vmovdqa	%xmm7,48(%esp)
3519	xorl	%edx,%ebp
3520	shrdl	$7,%ecx,%ecx
3521	addl	%ebx,%eax
3522	addl	4(%esp),%edi
3523	xorl	%ecx,%ebp
3524	movl	%eax,%esi
3525	shldl	$5,%eax,%eax
3526	addl	%ebp,%edi
3527	xorl	%ecx,%esi
3528	shrdl	$7,%ebx,%ebx
3529	addl	%eax,%edi
3530	addl	8(%esp),%edx
3531	xorl	%ebx,%esi
3532	movl	%edi,%ebp
3533	shldl	$5,%edi,%edi
3534	addl	%esi,%edx
3535	xorl	%ebx,%ebp
3536	shrdl	$7,%eax,%eax
3537	addl	%edi,%edx
3538	addl	12(%esp),%ecx
3539	xorl	%eax,%ebp
3540	movl	%edx,%esi
3541	shldl	$5,%edx,%edx
3542	addl	%ebp,%ecx
3543	xorl	%eax,%esi
3544	shrdl	$7,%edi,%edi
3545	addl	%edx,%ecx
3546	movl	196(%esp),%ebp
3547	cmpl	200(%esp),%ebp
3548	je	L008done
3549	vmovdqa	160(%esp),%xmm7
3550	vmovdqa	176(%esp),%xmm6
3551	vmovdqu	(%ebp),%xmm0
3552	vmovdqu	16(%ebp),%xmm1
3553	vmovdqu	32(%ebp),%xmm2
3554	vmovdqu	48(%ebp),%xmm3
3555	addl	$64,%ebp
3556	vpshufb	%xmm6,%xmm0,%xmm0
3557	movl	%ebp,196(%esp)
3558	vmovdqa	%xmm7,96(%esp)
3559	addl	16(%esp),%ebx
3560	xorl	%edi,%esi
3561	vpshufb	%xmm6,%xmm1,%xmm1
3562	movl	%ecx,%ebp
3563	shldl	$5,%ecx,%ecx
3564	vpaddd	%xmm7,%xmm0,%xmm4
3565	addl	%esi,%ebx
3566	xorl	%edi,%ebp
3567	shrdl	$7,%edx,%edx
3568	addl	%ecx,%ebx
3569	vmovdqa	%xmm4,(%esp)
3570	addl	20(%esp),%eax
3571	xorl	%edx,%ebp
3572	movl	%ebx,%esi
3573	shldl	$5,%ebx,%ebx
3574	addl	%ebp,%eax
3575	xorl	%edx,%esi
3576	shrdl	$7,%ecx,%ecx
3577	addl	%ebx,%eax
3578	addl	24(%esp),%edi
3579	xorl	%ecx,%esi
3580	movl	%eax,%ebp
3581	shldl	$5,%eax,%eax
3582	addl	%esi,%edi
3583	xorl	%ecx,%ebp
3584	shrdl	$7,%ebx,%ebx
3585	addl	%eax,%edi
3586	addl	28(%esp),%edx
3587	xorl	%ebx,%ebp
3588	movl	%edi,%esi
3589	shldl	$5,%edi,%edi
3590	addl	%ebp,%edx
3591	xorl	%ebx,%esi
3592	shrdl	$7,%eax,%eax
3593	addl	%edi,%edx
3594	addl	32(%esp),%ecx
3595	xorl	%eax,%esi
3596	vpshufb	%xmm6,%xmm2,%xmm2
3597	movl	%edx,%ebp
3598	shldl	$5,%edx,%edx
3599	vpaddd	%xmm7,%xmm1,%xmm5
3600	addl	%esi,%ecx
3601	xorl	%eax,%ebp
3602	shrdl	$7,%edi,%edi
3603	addl	%edx,%ecx
3604	vmovdqa	%xmm5,16(%esp)
3605	addl	36(%esp),%ebx
3606	xorl	%edi,%ebp
3607	movl	%ecx,%esi
3608	shldl	$5,%ecx,%ecx
3609	addl	%ebp,%ebx
3610	xorl	%edi,%esi
3611	shrdl	$7,%edx,%edx
3612	addl	%ecx,%ebx
3613	addl	40(%esp),%eax
3614	xorl	%edx,%esi
3615	movl	%ebx,%ebp
3616	shldl	$5,%ebx,%ebx
3617	addl	%esi,%eax
3618	xorl	%edx,%ebp
3619	shrdl	$7,%ecx,%ecx
3620	addl	%ebx,%eax
3621	addl	44(%esp),%edi
3622	xorl	%ecx,%ebp
3623	movl	%eax,%esi
3624	shldl	$5,%eax,%eax
3625	addl	%ebp,%edi
3626	xorl	%ecx,%esi
3627	shrdl	$7,%ebx,%ebx
3628	addl	%eax,%edi
3629	addl	48(%esp),%edx
3630	xorl	%ebx,%esi
3631	vpshufb	%xmm6,%xmm3,%xmm3
3632	movl	%edi,%ebp
3633	shldl	$5,%edi,%edi
3634	vpaddd	%xmm7,%xmm2,%xmm6
3635	addl	%esi,%edx
3636	xorl	%ebx,%ebp
3637	shrdl	$7,%eax,%eax
3638	addl	%edi,%edx
3639	vmovdqa	%xmm6,32(%esp)
3640	addl	52(%esp),%ecx
3641	xorl	%eax,%ebp
3642	movl	%edx,%esi
3643	shldl	$5,%edx,%edx
3644	addl	%ebp,%ecx
3645	xorl	%eax,%esi
3646	shrdl	$7,%edi,%edi
3647	addl	%edx,%ecx
3648	addl	56(%esp),%ebx
3649	xorl	%edi,%esi
3650	movl	%ecx,%ebp
3651	shldl	$5,%ecx,%ecx
3652	addl	%esi,%ebx
3653	xorl	%edi,%ebp
3654	shrdl	$7,%edx,%edx
3655	addl	%ecx,%ebx
3656	addl	60(%esp),%eax
3657	xorl	%edx,%ebp
3658	movl	%ebx,%esi
3659	shldl	$5,%ebx,%ebx
3660	addl	%ebp,%eax
3661	shrdl	$7,%ecx,%ecx
3662	addl	%ebx,%eax
3663	movl	192(%esp),%ebp
3664	addl	(%ebp),%eax
3665	addl	4(%ebp),%esi
3666	addl	8(%ebp),%ecx
3667	movl	%eax,(%ebp)
3668	addl	12(%ebp),%edx
3669	movl	%esi,4(%ebp)
3670	addl	16(%ebp),%edi
3671	movl	%ecx,%ebx
3672	movl	%ecx,8(%ebp)
3673	xorl	%edx,%ebx
3674	movl	%edx,12(%ebp)
3675	movl	%edi,16(%ebp)
3676	movl	%esi,%ebp
3677	andl	%ebx,%esi
3678	movl	%ebp,%ebx
3679	jmp	L007loop
3680.align	4,0x90
3681L008done:
3682	addl	16(%esp),%ebx
3683	xorl	%edi,%esi
3684	movl	%ecx,%ebp
3685	shldl	$5,%ecx,%ecx
3686	addl	%esi,%ebx
3687	xorl	%edi,%ebp
3688	shrdl	$7,%edx,%edx
3689	addl	%ecx,%ebx
3690	addl	20(%esp),%eax
3691	xorl	%edx,%ebp
3692	movl	%ebx,%esi
3693	shldl	$5,%ebx,%ebx
3694	addl	%ebp,%eax
3695	xorl	%edx,%esi
3696	shrdl	$7,%ecx,%ecx
3697	addl	%ebx,%eax
3698	addl	24(%esp),%edi
3699	xorl	%ecx,%esi
3700	movl	%eax,%ebp
3701	shldl	$5,%eax,%eax
3702	addl	%esi,%edi
3703	xorl	%ecx,%ebp
3704	shrdl	$7,%ebx,%ebx
3705	addl	%eax,%edi
3706	addl	28(%esp),%edx
3707	xorl	%ebx,%ebp
3708	movl	%edi,%esi
3709	shldl	$5,%edi,%edi
3710	addl	%ebp,%edx
3711	xorl	%ebx,%esi
3712	shrdl	$7,%eax,%eax
3713	addl	%edi,%edx
3714	addl	32(%esp),%ecx
3715	xorl	%eax,%esi
3716	movl	%edx,%ebp
3717	shldl	$5,%edx,%edx
3718	addl	%esi,%ecx
3719	xorl	%eax,%ebp
3720	shrdl	$7,%edi,%edi
3721	addl	%edx,%ecx
3722	addl	36(%esp),%ebx
3723	xorl	%edi,%ebp
3724	movl	%ecx,%esi
3725	shldl	$5,%ecx,%ecx
3726	addl	%ebp,%ebx
3727	xorl	%edi,%esi
3728	shrdl	$7,%edx,%edx
3729	addl	%ecx,%ebx
3730	addl	40(%esp),%eax
3731	xorl	%edx,%esi
3732	movl	%ebx,%ebp
3733	shldl	$5,%ebx,%ebx
3734	addl	%esi,%eax
3735	xorl	%edx,%ebp
3736	shrdl	$7,%ecx,%ecx
3737	addl	%ebx,%eax
3738	addl	44(%esp),%edi
3739	xorl	%ecx,%ebp
3740	movl	%eax,%esi
3741	shldl	$5,%eax,%eax
3742	addl	%ebp,%edi
3743	xorl	%ecx,%esi
3744	shrdl	$7,%ebx,%ebx
3745	addl	%eax,%edi
3746	addl	48(%esp),%edx
3747	xorl	%ebx,%esi
3748	movl	%edi,%ebp
3749	shldl	$5,%edi,%edi
3750	addl	%esi,%edx
3751	xorl	%ebx,%ebp
3752	shrdl	$7,%eax,%eax
3753	addl	%edi,%edx
3754	addl	52(%esp),%ecx
3755	xorl	%eax,%ebp
3756	movl	%edx,%esi
3757	shldl	$5,%edx,%edx
3758	addl	%ebp,%ecx
3759	xorl	%eax,%esi
3760	shrdl	$7,%edi,%edi
3761	addl	%edx,%ecx
3762	addl	56(%esp),%ebx
3763	xorl	%edi,%esi
3764	movl	%ecx,%ebp
3765	shldl	$5,%ecx,%ecx
3766	addl	%esi,%ebx
3767	xorl	%edi,%ebp
3768	shrdl	$7,%edx,%edx
3769	addl	%ecx,%ebx
3770	addl	60(%esp),%eax
3771	xorl	%edx,%ebp
3772	movl	%ebx,%esi
3773	shldl	$5,%ebx,%ebx
3774	addl	%ebp,%eax
3775	shrdl	$7,%ecx,%ecx
3776	addl	%ebx,%eax
3777	vzeroall
3778	movl	192(%esp),%ebp
3779	addl	(%ebp),%eax
3780	movl	204(%esp),%esp
3781	addl	4(%ebp),%esi
3782	addl	8(%ebp),%ecx
3783	movl	%eax,(%ebp)
3784	addl	12(%ebp),%edx
3785	movl	%esi,4(%ebp)
3786	addl	16(%ebp),%edi
3787	movl	%ecx,8(%ebp)
3788	movl	%edx,12(%ebp)
3789	movl	%edi,16(%ebp)
3790	popl	%edi
3791	popl	%esi
3792	popl	%ebx
3793	popl	%ebp
3794	ret
3795.align	6,0x90
3796LK_XX_XX:
3797.long	1518500249,1518500249,1518500249,1518500249
3798.long	1859775393,1859775393,1859775393,1859775393
3799.long	2400959708,2400959708,2400959708,2400959708
3800.long	3395469782,3395469782,3395469782,3395469782
3801.long	66051,67438087,134810123,202182159
3802.byte	15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0
3803.byte	83,72,65,49,32,98,108,111,99,107,32,116,114,97,110,115
3804.byte	102,111,114,109,32,102,111,114,32,120,56,54,44,32,67,82
3805.byte	89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112
3806.byte	114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
3807.section __IMPORT,__pointers,non_lazy_symbol_pointers
3808L_OPENSSL_ia32cap_P$non_lazy_ptr:
3809.indirect_symbol	_OPENSSL_ia32cap_P
3810.long	0
3811#endif  // !defined(OPENSSL_NO_ASM) && defined(__i386__) && defined(__APPLE__)
3812#if defined(__ELF__)
3813// See https://www.airs.com/blog/archives/518.
3814.section .note.GNU-stack,"",%progbits
3815#endif
3816