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