xref: /freebsd/sys/crypto/openssl/i386/sha512-586.S (revision 734e82fe33aa764367791a7d603b383996c6b40b)
1/* Do not modify. This file is auto-generated from sha512-586.pl. */
2#ifdef PIC
3.text
4.globl	sha512_block_data_order
5.type	sha512_block_data_order,@function
6.align	16
7sha512_block_data_order:
8.L_sha512_block_data_order_begin:
9	pushl	%ebp
10	pushl	%ebx
11	pushl	%esi
12	pushl	%edi
13	movl	20(%esp),%esi
14	movl	24(%esp),%edi
15	movl	28(%esp),%eax
16	movl	%esp,%ebx
17	call	.L000pic_point
18.L000pic_point:
19	popl	%ebp
20	leal	.L001K512-.L000pic_point(%ebp),%ebp
21	subl	$16,%esp
22	andl	$-64,%esp
23	shll	$7,%eax
24	addl	%edi,%eax
25	movl	%esi,(%esp)
26	movl	%edi,4(%esp)
27	movl	%eax,8(%esp)
28	movl	%ebx,12(%esp)
29	leal	OPENSSL_ia32cap_P-.L001K512(%ebp),%edx
30	movl	(%edx),%ecx
31	testl	$67108864,%ecx
32	jz	.L002loop_x86
33	movl	4(%edx),%edx
34	movq	(%esi),%mm0
35	andl	$16777216,%ecx
36	movq	8(%esi),%mm1
37	andl	$512,%edx
38	movq	16(%esi),%mm2
39	orl	%edx,%ecx
40	movq	24(%esi),%mm3
41	movq	32(%esi),%mm4
42	movq	40(%esi),%mm5
43	movq	48(%esi),%mm6
44	movq	56(%esi),%mm7
45	cmpl	$16777728,%ecx
46	je	.L003SSSE3
47	subl	$80,%esp
48	jmp	.L004loop_sse2
49.align	16
50.L004loop_sse2:
51	movq	%mm1,8(%esp)
52	movq	%mm2,16(%esp)
53	movq	%mm3,24(%esp)
54	movq	%mm5,40(%esp)
55	movq	%mm6,48(%esp)
56	pxor	%mm1,%mm2
57	movq	%mm7,56(%esp)
58	movq	%mm0,%mm3
59	movl	(%edi),%eax
60	movl	4(%edi),%ebx
61	addl	$8,%edi
62	movl	$15,%edx
63	bswap	%eax
64	bswap	%ebx
65	jmp	.L00500_14_sse2
66.align	16
67.L00500_14_sse2:
68	movd	%eax,%mm1
69	movl	(%edi),%eax
70	movd	%ebx,%mm7
71	movl	4(%edi),%ebx
72	addl	$8,%edi
73	bswap	%eax
74	bswap	%ebx
75	punpckldq	%mm1,%mm7
76	movq	%mm4,%mm1
77	pxor	%mm6,%mm5
78	psrlq	$14,%mm1
79	movq	%mm4,32(%esp)
80	pand	%mm4,%mm5
81	psllq	$23,%mm4
82	movq	%mm3,%mm0
83	movq	%mm7,72(%esp)
84	movq	%mm1,%mm3
85	psrlq	$4,%mm1
86	pxor	%mm6,%mm5
87	pxor	%mm4,%mm3
88	psllq	$23,%mm4
89	pxor	%mm1,%mm3
90	movq	%mm0,(%esp)
91	paddq	%mm5,%mm7
92	pxor	%mm4,%mm3
93	psrlq	$23,%mm1
94	paddq	56(%esp),%mm7
95	pxor	%mm1,%mm3
96	psllq	$4,%mm4
97	paddq	(%ebp),%mm7
98	pxor	%mm4,%mm3
99	movq	24(%esp),%mm4
100	paddq	%mm7,%mm3
101	movq	%mm0,%mm5
102	psrlq	$28,%mm5
103	paddq	%mm3,%mm4
104	movq	%mm0,%mm6
105	movq	%mm5,%mm7
106	psllq	$25,%mm6
107	movq	8(%esp),%mm1
108	psrlq	$6,%mm5
109	pxor	%mm6,%mm7
110	subl	$8,%esp
111	psllq	$5,%mm6
112	pxor	%mm5,%mm7
113	pxor	%mm1,%mm0
114	psrlq	$5,%mm5
115	pxor	%mm6,%mm7
116	pand	%mm0,%mm2
117	psllq	$6,%mm6
118	pxor	%mm5,%mm7
119	pxor	%mm1,%mm2
120	pxor	%mm7,%mm6
121	movq	40(%esp),%mm5
122	paddq	%mm2,%mm3
123	movq	%mm0,%mm2
124	addl	$8,%ebp
125	paddq	%mm6,%mm3
126	movq	48(%esp),%mm6
127	decl	%edx
128	jnz	.L00500_14_sse2
129	movd	%eax,%mm1
130	movd	%ebx,%mm7
131	punpckldq	%mm1,%mm7
132	movq	%mm4,%mm1
133	pxor	%mm6,%mm5
134	psrlq	$14,%mm1
135	movq	%mm4,32(%esp)
136	pand	%mm4,%mm5
137	psllq	$23,%mm4
138	movq	%mm3,%mm0
139	movq	%mm7,72(%esp)
140	movq	%mm1,%mm3
141	psrlq	$4,%mm1
142	pxor	%mm6,%mm5
143	pxor	%mm4,%mm3
144	psllq	$23,%mm4
145	pxor	%mm1,%mm3
146	movq	%mm0,(%esp)
147	paddq	%mm5,%mm7
148	pxor	%mm4,%mm3
149	psrlq	$23,%mm1
150	paddq	56(%esp),%mm7
151	pxor	%mm1,%mm3
152	psllq	$4,%mm4
153	paddq	(%ebp),%mm7
154	pxor	%mm4,%mm3
155	movq	24(%esp),%mm4
156	paddq	%mm7,%mm3
157	movq	%mm0,%mm5
158	psrlq	$28,%mm5
159	paddq	%mm3,%mm4
160	movq	%mm0,%mm6
161	movq	%mm5,%mm7
162	psllq	$25,%mm6
163	movq	8(%esp),%mm1
164	psrlq	$6,%mm5
165	pxor	%mm6,%mm7
166	subl	$8,%esp
167	psllq	$5,%mm6
168	pxor	%mm5,%mm7
169	pxor	%mm1,%mm0
170	psrlq	$5,%mm5
171	pxor	%mm6,%mm7
172	pand	%mm0,%mm2
173	psllq	$6,%mm6
174	pxor	%mm5,%mm7
175	pxor	%mm1,%mm2
176	pxor	%mm7,%mm6
177	movq	192(%esp),%mm7
178	paddq	%mm2,%mm3
179	movq	%mm0,%mm2
180	addl	$8,%ebp
181	paddq	%mm6,%mm3
182	pxor	%mm0,%mm0
183	movl	$32,%edx
184	jmp	.L00616_79_sse2
185.align	16
186.L00616_79_sse2:
187	movq	88(%esp),%mm5
188	movq	%mm7,%mm1
189	psrlq	$1,%mm7
190	movq	%mm5,%mm6
191	psrlq	$6,%mm5
192	psllq	$56,%mm1
193	paddq	%mm3,%mm0
194	movq	%mm7,%mm3
195	psrlq	$6,%mm7
196	pxor	%mm1,%mm3
197	psllq	$7,%mm1
198	pxor	%mm7,%mm3
199	psrlq	$1,%mm7
200	pxor	%mm1,%mm3
201	movq	%mm5,%mm1
202	psrlq	$13,%mm5
203	pxor	%mm3,%mm7
204	psllq	$3,%mm6
205	pxor	%mm5,%mm1
206	paddq	200(%esp),%mm7
207	pxor	%mm6,%mm1
208	psrlq	$42,%mm5
209	paddq	128(%esp),%mm7
210	pxor	%mm5,%mm1
211	psllq	$42,%mm6
212	movq	40(%esp),%mm5
213	pxor	%mm6,%mm1
214	movq	48(%esp),%mm6
215	paddq	%mm1,%mm7
216	movq	%mm4,%mm1
217	pxor	%mm6,%mm5
218	psrlq	$14,%mm1
219	movq	%mm4,32(%esp)
220	pand	%mm4,%mm5
221	psllq	$23,%mm4
222	movq	%mm7,72(%esp)
223	movq	%mm1,%mm3
224	psrlq	$4,%mm1
225	pxor	%mm6,%mm5
226	pxor	%mm4,%mm3
227	psllq	$23,%mm4
228	pxor	%mm1,%mm3
229	movq	%mm0,(%esp)
230	paddq	%mm5,%mm7
231	pxor	%mm4,%mm3
232	psrlq	$23,%mm1
233	paddq	56(%esp),%mm7
234	pxor	%mm1,%mm3
235	psllq	$4,%mm4
236	paddq	(%ebp),%mm7
237	pxor	%mm4,%mm3
238	movq	24(%esp),%mm4
239	paddq	%mm7,%mm3
240	movq	%mm0,%mm5
241	psrlq	$28,%mm5
242	paddq	%mm3,%mm4
243	movq	%mm0,%mm6
244	movq	%mm5,%mm7
245	psllq	$25,%mm6
246	movq	8(%esp),%mm1
247	psrlq	$6,%mm5
248	pxor	%mm6,%mm7
249	subl	$8,%esp
250	psllq	$5,%mm6
251	pxor	%mm5,%mm7
252	pxor	%mm1,%mm0
253	psrlq	$5,%mm5
254	pxor	%mm6,%mm7
255	pand	%mm0,%mm2
256	psllq	$6,%mm6
257	pxor	%mm5,%mm7
258	pxor	%mm1,%mm2
259	pxor	%mm7,%mm6
260	movq	192(%esp),%mm7
261	paddq	%mm6,%mm2
262	addl	$8,%ebp
263	movq	88(%esp),%mm5
264	movq	%mm7,%mm1
265	psrlq	$1,%mm7
266	movq	%mm5,%mm6
267	psrlq	$6,%mm5
268	psllq	$56,%mm1
269	paddq	%mm3,%mm2
270	movq	%mm7,%mm3
271	psrlq	$6,%mm7
272	pxor	%mm1,%mm3
273	psllq	$7,%mm1
274	pxor	%mm7,%mm3
275	psrlq	$1,%mm7
276	pxor	%mm1,%mm3
277	movq	%mm5,%mm1
278	psrlq	$13,%mm5
279	pxor	%mm3,%mm7
280	psllq	$3,%mm6
281	pxor	%mm5,%mm1
282	paddq	200(%esp),%mm7
283	pxor	%mm6,%mm1
284	psrlq	$42,%mm5
285	paddq	128(%esp),%mm7
286	pxor	%mm5,%mm1
287	psllq	$42,%mm6
288	movq	40(%esp),%mm5
289	pxor	%mm6,%mm1
290	movq	48(%esp),%mm6
291	paddq	%mm1,%mm7
292	movq	%mm4,%mm1
293	pxor	%mm6,%mm5
294	psrlq	$14,%mm1
295	movq	%mm4,32(%esp)
296	pand	%mm4,%mm5
297	psllq	$23,%mm4
298	movq	%mm7,72(%esp)
299	movq	%mm1,%mm3
300	psrlq	$4,%mm1
301	pxor	%mm6,%mm5
302	pxor	%mm4,%mm3
303	psllq	$23,%mm4
304	pxor	%mm1,%mm3
305	movq	%mm2,(%esp)
306	paddq	%mm5,%mm7
307	pxor	%mm4,%mm3
308	psrlq	$23,%mm1
309	paddq	56(%esp),%mm7
310	pxor	%mm1,%mm3
311	psllq	$4,%mm4
312	paddq	(%ebp),%mm7
313	pxor	%mm4,%mm3
314	movq	24(%esp),%mm4
315	paddq	%mm7,%mm3
316	movq	%mm2,%mm5
317	psrlq	$28,%mm5
318	paddq	%mm3,%mm4
319	movq	%mm2,%mm6
320	movq	%mm5,%mm7
321	psllq	$25,%mm6
322	movq	8(%esp),%mm1
323	psrlq	$6,%mm5
324	pxor	%mm6,%mm7
325	subl	$8,%esp
326	psllq	$5,%mm6
327	pxor	%mm5,%mm7
328	pxor	%mm1,%mm2
329	psrlq	$5,%mm5
330	pxor	%mm6,%mm7
331	pand	%mm2,%mm0
332	psllq	$6,%mm6
333	pxor	%mm5,%mm7
334	pxor	%mm1,%mm0
335	pxor	%mm7,%mm6
336	movq	192(%esp),%mm7
337	paddq	%mm6,%mm0
338	addl	$8,%ebp
339	decl	%edx
340	jnz	.L00616_79_sse2
341	paddq	%mm3,%mm0
342	movq	8(%esp),%mm1
343	movq	24(%esp),%mm3
344	movq	40(%esp),%mm5
345	movq	48(%esp),%mm6
346	movq	56(%esp),%mm7
347	pxor	%mm1,%mm2
348	paddq	(%esi),%mm0
349	paddq	8(%esi),%mm1
350	paddq	16(%esi),%mm2
351	paddq	24(%esi),%mm3
352	paddq	32(%esi),%mm4
353	paddq	40(%esi),%mm5
354	paddq	48(%esi),%mm6
355	paddq	56(%esi),%mm7
356	movl	$640,%eax
357	movq	%mm0,(%esi)
358	movq	%mm1,8(%esi)
359	movq	%mm2,16(%esi)
360	movq	%mm3,24(%esi)
361	movq	%mm4,32(%esi)
362	movq	%mm5,40(%esi)
363	movq	%mm6,48(%esi)
364	movq	%mm7,56(%esi)
365	leal	(%esp,%eax,1),%esp
366	subl	%eax,%ebp
367	cmpl	88(%esp),%edi
368	jb	.L004loop_sse2
369	movl	92(%esp),%esp
370	emms
371	popl	%edi
372	popl	%esi
373	popl	%ebx
374	popl	%ebp
375	ret
376.align	32
377.L003SSSE3:
378	leal	-64(%esp),%edx
379	subl	$256,%esp
380	movdqa	640(%ebp),%xmm1
381	movdqu	(%edi),%xmm0
382.byte	102,15,56,0,193
383	movdqa	(%ebp),%xmm3
384	movdqa	%xmm1,%xmm2
385	movdqu	16(%edi),%xmm1
386	paddq	%xmm0,%xmm3
387.byte	102,15,56,0,202
388	movdqa	%xmm3,-128(%edx)
389	movdqa	16(%ebp),%xmm4
390	movdqa	%xmm2,%xmm3
391	movdqu	32(%edi),%xmm2
392	paddq	%xmm1,%xmm4
393.byte	102,15,56,0,211
394	movdqa	%xmm4,-112(%edx)
395	movdqa	32(%ebp),%xmm5
396	movdqa	%xmm3,%xmm4
397	movdqu	48(%edi),%xmm3
398	paddq	%xmm2,%xmm5
399.byte	102,15,56,0,220
400	movdqa	%xmm5,-96(%edx)
401	movdqa	48(%ebp),%xmm6
402	movdqa	%xmm4,%xmm5
403	movdqu	64(%edi),%xmm4
404	paddq	%xmm3,%xmm6
405.byte	102,15,56,0,229
406	movdqa	%xmm6,-80(%edx)
407	movdqa	64(%ebp),%xmm7
408	movdqa	%xmm5,%xmm6
409	movdqu	80(%edi),%xmm5
410	paddq	%xmm4,%xmm7
411.byte	102,15,56,0,238
412	movdqa	%xmm7,-64(%edx)
413	movdqa	%xmm0,(%edx)
414	movdqa	80(%ebp),%xmm0
415	movdqa	%xmm6,%xmm7
416	movdqu	96(%edi),%xmm6
417	paddq	%xmm5,%xmm0
418.byte	102,15,56,0,247
419	movdqa	%xmm0,-48(%edx)
420	movdqa	%xmm1,16(%edx)
421	movdqa	96(%ebp),%xmm1
422	movdqa	%xmm7,%xmm0
423	movdqu	112(%edi),%xmm7
424	paddq	%xmm6,%xmm1
425.byte	102,15,56,0,248
426	movdqa	%xmm1,-32(%edx)
427	movdqa	%xmm2,32(%edx)
428	movdqa	112(%ebp),%xmm2
429	movdqa	(%edx),%xmm0
430	paddq	%xmm7,%xmm2
431	movdqa	%xmm2,-16(%edx)
432	nop
433.align	32
434.L007loop_ssse3:
435	movdqa	16(%edx),%xmm2
436	movdqa	%xmm3,48(%edx)
437	leal	128(%ebp),%ebp
438	movq	%mm1,8(%esp)
439	movl	%edi,%ebx
440	movq	%mm2,16(%esp)
441	leal	128(%edi),%edi
442	movq	%mm3,24(%esp)
443	cmpl	%eax,%edi
444	movq	%mm5,40(%esp)
445	cmovbl	%edi,%ebx
446	movq	%mm6,48(%esp)
447	movl	$4,%ecx
448	pxor	%mm1,%mm2
449	movq	%mm7,56(%esp)
450	pxor	%mm3,%mm3
451	jmp	.L00800_47_ssse3
452.align	32
453.L00800_47_ssse3:
454	movdqa	%xmm5,%xmm3
455	movdqa	%xmm2,%xmm1
456.byte	102,15,58,15,208,8
457	movdqa	%xmm4,(%edx)
458.byte	102,15,58,15,220,8
459	movdqa	%xmm2,%xmm4
460	psrlq	$7,%xmm2
461	paddq	%xmm3,%xmm0
462	movdqa	%xmm4,%xmm3
463	psrlq	$1,%xmm4
464	psllq	$56,%xmm3
465	pxor	%xmm4,%xmm2
466	psrlq	$7,%xmm4
467	pxor	%xmm3,%xmm2
468	psllq	$7,%xmm3
469	pxor	%xmm4,%xmm2
470	movdqa	%xmm7,%xmm4
471	pxor	%xmm3,%xmm2
472	movdqa	%xmm7,%xmm3
473	psrlq	$6,%xmm4
474	paddq	%xmm2,%xmm0
475	movdqa	%xmm7,%xmm2
476	psrlq	$19,%xmm3
477	psllq	$3,%xmm2
478	pxor	%xmm3,%xmm4
479	psrlq	$42,%xmm3
480	pxor	%xmm2,%xmm4
481	psllq	$42,%xmm2
482	pxor	%xmm3,%xmm4
483	movdqa	32(%edx),%xmm3
484	pxor	%xmm2,%xmm4
485	movdqa	(%ebp),%xmm2
486	movq	%mm4,%mm1
487	paddq	%xmm4,%xmm0
488	movq	-128(%edx),%mm7
489	pxor	%mm6,%mm5
490	psrlq	$14,%mm1
491	movq	%mm4,32(%esp)
492	paddq	%xmm0,%xmm2
493	pand	%mm4,%mm5
494	psllq	$23,%mm4
495	paddq	%mm3,%mm0
496	movq	%mm1,%mm3
497	psrlq	$4,%mm1
498	pxor	%mm6,%mm5
499	pxor	%mm4,%mm3
500	psllq	$23,%mm4
501	pxor	%mm1,%mm3
502	movq	%mm0,(%esp)
503	paddq	%mm5,%mm7
504	pxor	%mm4,%mm3
505	psrlq	$23,%mm1
506	paddq	56(%esp),%mm7
507	pxor	%mm1,%mm3
508	psllq	$4,%mm4
509	pxor	%mm4,%mm3
510	movq	24(%esp),%mm4
511	paddq	%mm7,%mm3
512	movq	%mm0,%mm5
513	psrlq	$28,%mm5
514	paddq	%mm3,%mm4
515	movq	%mm0,%mm6
516	movq	%mm5,%mm7
517	psllq	$25,%mm6
518	movq	8(%esp),%mm1
519	psrlq	$6,%mm5
520	pxor	%mm6,%mm7
521	psllq	$5,%mm6
522	pxor	%mm5,%mm7
523	pxor	%mm1,%mm0
524	psrlq	$5,%mm5
525	pxor	%mm6,%mm7
526	pand	%mm0,%mm2
527	psllq	$6,%mm6
528	pxor	%mm5,%mm7
529	pxor	%mm1,%mm2
530	pxor	%mm7,%mm6
531	movq	32(%esp),%mm5
532	paddq	%mm6,%mm2
533	movq	40(%esp),%mm6
534	movq	%mm4,%mm1
535	movq	-120(%edx),%mm7
536	pxor	%mm6,%mm5
537	psrlq	$14,%mm1
538	movq	%mm4,24(%esp)
539	pand	%mm4,%mm5
540	psllq	$23,%mm4
541	paddq	%mm3,%mm2
542	movq	%mm1,%mm3
543	psrlq	$4,%mm1
544	pxor	%mm6,%mm5
545	pxor	%mm4,%mm3
546	psllq	$23,%mm4
547	pxor	%mm1,%mm3
548	movq	%mm2,56(%esp)
549	paddq	%mm5,%mm7
550	pxor	%mm4,%mm3
551	psrlq	$23,%mm1
552	paddq	48(%esp),%mm7
553	pxor	%mm1,%mm3
554	psllq	$4,%mm4
555	pxor	%mm4,%mm3
556	movq	16(%esp),%mm4
557	paddq	%mm7,%mm3
558	movq	%mm2,%mm5
559	psrlq	$28,%mm5
560	paddq	%mm3,%mm4
561	movq	%mm2,%mm6
562	movq	%mm5,%mm7
563	psllq	$25,%mm6
564	movq	(%esp),%mm1
565	psrlq	$6,%mm5
566	pxor	%mm6,%mm7
567	psllq	$5,%mm6
568	pxor	%mm5,%mm7
569	pxor	%mm1,%mm2
570	psrlq	$5,%mm5
571	pxor	%mm6,%mm7
572	pand	%mm2,%mm0
573	psllq	$6,%mm6
574	pxor	%mm5,%mm7
575	pxor	%mm1,%mm0
576	pxor	%mm7,%mm6
577	movq	24(%esp),%mm5
578	paddq	%mm6,%mm0
579	movq	32(%esp),%mm6
580	movdqa	%xmm2,-128(%edx)
581	movdqa	%xmm6,%xmm4
582	movdqa	%xmm3,%xmm2
583.byte	102,15,58,15,217,8
584	movdqa	%xmm5,16(%edx)
585.byte	102,15,58,15,229,8
586	movdqa	%xmm3,%xmm5
587	psrlq	$7,%xmm3
588	paddq	%xmm4,%xmm1
589	movdqa	%xmm5,%xmm4
590	psrlq	$1,%xmm5
591	psllq	$56,%xmm4
592	pxor	%xmm5,%xmm3
593	psrlq	$7,%xmm5
594	pxor	%xmm4,%xmm3
595	psllq	$7,%xmm4
596	pxor	%xmm5,%xmm3
597	movdqa	%xmm0,%xmm5
598	pxor	%xmm4,%xmm3
599	movdqa	%xmm0,%xmm4
600	psrlq	$6,%xmm5
601	paddq	%xmm3,%xmm1
602	movdqa	%xmm0,%xmm3
603	psrlq	$19,%xmm4
604	psllq	$3,%xmm3
605	pxor	%xmm4,%xmm5
606	psrlq	$42,%xmm4
607	pxor	%xmm3,%xmm5
608	psllq	$42,%xmm3
609	pxor	%xmm4,%xmm5
610	movdqa	48(%edx),%xmm4
611	pxor	%xmm3,%xmm5
612	movdqa	16(%ebp),%xmm3
613	movq	%mm4,%mm1
614	paddq	%xmm5,%xmm1
615	movq	-112(%edx),%mm7
616	pxor	%mm6,%mm5
617	psrlq	$14,%mm1
618	movq	%mm4,16(%esp)
619	paddq	%xmm1,%xmm3
620	pand	%mm4,%mm5
621	psllq	$23,%mm4
622	paddq	%mm3,%mm0
623	movq	%mm1,%mm3
624	psrlq	$4,%mm1
625	pxor	%mm6,%mm5
626	pxor	%mm4,%mm3
627	psllq	$23,%mm4
628	pxor	%mm1,%mm3
629	movq	%mm0,48(%esp)
630	paddq	%mm5,%mm7
631	pxor	%mm4,%mm3
632	psrlq	$23,%mm1
633	paddq	40(%esp),%mm7
634	pxor	%mm1,%mm3
635	psllq	$4,%mm4
636	pxor	%mm4,%mm3
637	movq	8(%esp),%mm4
638	paddq	%mm7,%mm3
639	movq	%mm0,%mm5
640	psrlq	$28,%mm5
641	paddq	%mm3,%mm4
642	movq	%mm0,%mm6
643	movq	%mm5,%mm7
644	psllq	$25,%mm6
645	movq	56(%esp),%mm1
646	psrlq	$6,%mm5
647	pxor	%mm6,%mm7
648	psllq	$5,%mm6
649	pxor	%mm5,%mm7
650	pxor	%mm1,%mm0
651	psrlq	$5,%mm5
652	pxor	%mm6,%mm7
653	pand	%mm0,%mm2
654	psllq	$6,%mm6
655	pxor	%mm5,%mm7
656	pxor	%mm1,%mm2
657	pxor	%mm7,%mm6
658	movq	16(%esp),%mm5
659	paddq	%mm6,%mm2
660	movq	24(%esp),%mm6
661	movq	%mm4,%mm1
662	movq	-104(%edx),%mm7
663	pxor	%mm6,%mm5
664	psrlq	$14,%mm1
665	movq	%mm4,8(%esp)
666	pand	%mm4,%mm5
667	psllq	$23,%mm4
668	paddq	%mm3,%mm2
669	movq	%mm1,%mm3
670	psrlq	$4,%mm1
671	pxor	%mm6,%mm5
672	pxor	%mm4,%mm3
673	psllq	$23,%mm4
674	pxor	%mm1,%mm3
675	movq	%mm2,40(%esp)
676	paddq	%mm5,%mm7
677	pxor	%mm4,%mm3
678	psrlq	$23,%mm1
679	paddq	32(%esp),%mm7
680	pxor	%mm1,%mm3
681	psllq	$4,%mm4
682	pxor	%mm4,%mm3
683	movq	(%esp),%mm4
684	paddq	%mm7,%mm3
685	movq	%mm2,%mm5
686	psrlq	$28,%mm5
687	paddq	%mm3,%mm4
688	movq	%mm2,%mm6
689	movq	%mm5,%mm7
690	psllq	$25,%mm6
691	movq	48(%esp),%mm1
692	psrlq	$6,%mm5
693	pxor	%mm6,%mm7
694	psllq	$5,%mm6
695	pxor	%mm5,%mm7
696	pxor	%mm1,%mm2
697	psrlq	$5,%mm5
698	pxor	%mm6,%mm7
699	pand	%mm2,%mm0
700	psllq	$6,%mm6
701	pxor	%mm5,%mm7
702	pxor	%mm1,%mm0
703	pxor	%mm7,%mm6
704	movq	8(%esp),%mm5
705	paddq	%mm6,%mm0
706	movq	16(%esp),%mm6
707	movdqa	%xmm3,-112(%edx)
708	movdqa	%xmm7,%xmm5
709	movdqa	%xmm4,%xmm3
710.byte	102,15,58,15,226,8
711	movdqa	%xmm6,32(%edx)
712.byte	102,15,58,15,238,8
713	movdqa	%xmm4,%xmm6
714	psrlq	$7,%xmm4
715	paddq	%xmm5,%xmm2
716	movdqa	%xmm6,%xmm5
717	psrlq	$1,%xmm6
718	psllq	$56,%xmm5
719	pxor	%xmm6,%xmm4
720	psrlq	$7,%xmm6
721	pxor	%xmm5,%xmm4
722	psllq	$7,%xmm5
723	pxor	%xmm6,%xmm4
724	movdqa	%xmm1,%xmm6
725	pxor	%xmm5,%xmm4
726	movdqa	%xmm1,%xmm5
727	psrlq	$6,%xmm6
728	paddq	%xmm4,%xmm2
729	movdqa	%xmm1,%xmm4
730	psrlq	$19,%xmm5
731	psllq	$3,%xmm4
732	pxor	%xmm5,%xmm6
733	psrlq	$42,%xmm5
734	pxor	%xmm4,%xmm6
735	psllq	$42,%xmm4
736	pxor	%xmm5,%xmm6
737	movdqa	(%edx),%xmm5
738	pxor	%xmm4,%xmm6
739	movdqa	32(%ebp),%xmm4
740	movq	%mm4,%mm1
741	paddq	%xmm6,%xmm2
742	movq	-96(%edx),%mm7
743	pxor	%mm6,%mm5
744	psrlq	$14,%mm1
745	movq	%mm4,(%esp)
746	paddq	%xmm2,%xmm4
747	pand	%mm4,%mm5
748	psllq	$23,%mm4
749	paddq	%mm3,%mm0
750	movq	%mm1,%mm3
751	psrlq	$4,%mm1
752	pxor	%mm6,%mm5
753	pxor	%mm4,%mm3
754	psllq	$23,%mm4
755	pxor	%mm1,%mm3
756	movq	%mm0,32(%esp)
757	paddq	%mm5,%mm7
758	pxor	%mm4,%mm3
759	psrlq	$23,%mm1
760	paddq	24(%esp),%mm7
761	pxor	%mm1,%mm3
762	psllq	$4,%mm4
763	pxor	%mm4,%mm3
764	movq	56(%esp),%mm4
765	paddq	%mm7,%mm3
766	movq	%mm0,%mm5
767	psrlq	$28,%mm5
768	paddq	%mm3,%mm4
769	movq	%mm0,%mm6
770	movq	%mm5,%mm7
771	psllq	$25,%mm6
772	movq	40(%esp),%mm1
773	psrlq	$6,%mm5
774	pxor	%mm6,%mm7
775	psllq	$5,%mm6
776	pxor	%mm5,%mm7
777	pxor	%mm1,%mm0
778	psrlq	$5,%mm5
779	pxor	%mm6,%mm7
780	pand	%mm0,%mm2
781	psllq	$6,%mm6
782	pxor	%mm5,%mm7
783	pxor	%mm1,%mm2
784	pxor	%mm7,%mm6
785	movq	(%esp),%mm5
786	paddq	%mm6,%mm2
787	movq	8(%esp),%mm6
788	movq	%mm4,%mm1
789	movq	-88(%edx),%mm7
790	pxor	%mm6,%mm5
791	psrlq	$14,%mm1
792	movq	%mm4,56(%esp)
793	pand	%mm4,%mm5
794	psllq	$23,%mm4
795	paddq	%mm3,%mm2
796	movq	%mm1,%mm3
797	psrlq	$4,%mm1
798	pxor	%mm6,%mm5
799	pxor	%mm4,%mm3
800	psllq	$23,%mm4
801	pxor	%mm1,%mm3
802	movq	%mm2,24(%esp)
803	paddq	%mm5,%mm7
804	pxor	%mm4,%mm3
805	psrlq	$23,%mm1
806	paddq	16(%esp),%mm7
807	pxor	%mm1,%mm3
808	psllq	$4,%mm4
809	pxor	%mm4,%mm3
810	movq	48(%esp),%mm4
811	paddq	%mm7,%mm3
812	movq	%mm2,%mm5
813	psrlq	$28,%mm5
814	paddq	%mm3,%mm4
815	movq	%mm2,%mm6
816	movq	%mm5,%mm7
817	psllq	$25,%mm6
818	movq	32(%esp),%mm1
819	psrlq	$6,%mm5
820	pxor	%mm6,%mm7
821	psllq	$5,%mm6
822	pxor	%mm5,%mm7
823	pxor	%mm1,%mm2
824	psrlq	$5,%mm5
825	pxor	%mm6,%mm7
826	pand	%mm2,%mm0
827	psllq	$6,%mm6
828	pxor	%mm5,%mm7
829	pxor	%mm1,%mm0
830	pxor	%mm7,%mm6
831	movq	56(%esp),%mm5
832	paddq	%mm6,%mm0
833	movq	(%esp),%mm6
834	movdqa	%xmm4,-96(%edx)
835	movdqa	%xmm0,%xmm6
836	movdqa	%xmm5,%xmm4
837.byte	102,15,58,15,235,8
838	movdqa	%xmm7,48(%edx)
839.byte	102,15,58,15,247,8
840	movdqa	%xmm5,%xmm7
841	psrlq	$7,%xmm5
842	paddq	%xmm6,%xmm3
843	movdqa	%xmm7,%xmm6
844	psrlq	$1,%xmm7
845	psllq	$56,%xmm6
846	pxor	%xmm7,%xmm5
847	psrlq	$7,%xmm7
848	pxor	%xmm6,%xmm5
849	psllq	$7,%xmm6
850	pxor	%xmm7,%xmm5
851	movdqa	%xmm2,%xmm7
852	pxor	%xmm6,%xmm5
853	movdqa	%xmm2,%xmm6
854	psrlq	$6,%xmm7
855	paddq	%xmm5,%xmm3
856	movdqa	%xmm2,%xmm5
857	psrlq	$19,%xmm6
858	psllq	$3,%xmm5
859	pxor	%xmm6,%xmm7
860	psrlq	$42,%xmm6
861	pxor	%xmm5,%xmm7
862	psllq	$42,%xmm5
863	pxor	%xmm6,%xmm7
864	movdqa	16(%edx),%xmm6
865	pxor	%xmm5,%xmm7
866	movdqa	48(%ebp),%xmm5
867	movq	%mm4,%mm1
868	paddq	%xmm7,%xmm3
869	movq	-80(%edx),%mm7
870	pxor	%mm6,%mm5
871	psrlq	$14,%mm1
872	movq	%mm4,48(%esp)
873	paddq	%xmm3,%xmm5
874	pand	%mm4,%mm5
875	psllq	$23,%mm4
876	paddq	%mm3,%mm0
877	movq	%mm1,%mm3
878	psrlq	$4,%mm1
879	pxor	%mm6,%mm5
880	pxor	%mm4,%mm3
881	psllq	$23,%mm4
882	pxor	%mm1,%mm3
883	movq	%mm0,16(%esp)
884	paddq	%mm5,%mm7
885	pxor	%mm4,%mm3
886	psrlq	$23,%mm1
887	paddq	8(%esp),%mm7
888	pxor	%mm1,%mm3
889	psllq	$4,%mm4
890	pxor	%mm4,%mm3
891	movq	40(%esp),%mm4
892	paddq	%mm7,%mm3
893	movq	%mm0,%mm5
894	psrlq	$28,%mm5
895	paddq	%mm3,%mm4
896	movq	%mm0,%mm6
897	movq	%mm5,%mm7
898	psllq	$25,%mm6
899	movq	24(%esp),%mm1
900	psrlq	$6,%mm5
901	pxor	%mm6,%mm7
902	psllq	$5,%mm6
903	pxor	%mm5,%mm7
904	pxor	%mm1,%mm0
905	psrlq	$5,%mm5
906	pxor	%mm6,%mm7
907	pand	%mm0,%mm2
908	psllq	$6,%mm6
909	pxor	%mm5,%mm7
910	pxor	%mm1,%mm2
911	pxor	%mm7,%mm6
912	movq	48(%esp),%mm5
913	paddq	%mm6,%mm2
914	movq	56(%esp),%mm6
915	movq	%mm4,%mm1
916	movq	-72(%edx),%mm7
917	pxor	%mm6,%mm5
918	psrlq	$14,%mm1
919	movq	%mm4,40(%esp)
920	pand	%mm4,%mm5
921	psllq	$23,%mm4
922	paddq	%mm3,%mm2
923	movq	%mm1,%mm3
924	psrlq	$4,%mm1
925	pxor	%mm6,%mm5
926	pxor	%mm4,%mm3
927	psllq	$23,%mm4
928	pxor	%mm1,%mm3
929	movq	%mm2,8(%esp)
930	paddq	%mm5,%mm7
931	pxor	%mm4,%mm3
932	psrlq	$23,%mm1
933	paddq	(%esp),%mm7
934	pxor	%mm1,%mm3
935	psllq	$4,%mm4
936	pxor	%mm4,%mm3
937	movq	32(%esp),%mm4
938	paddq	%mm7,%mm3
939	movq	%mm2,%mm5
940	psrlq	$28,%mm5
941	paddq	%mm3,%mm4
942	movq	%mm2,%mm6
943	movq	%mm5,%mm7
944	psllq	$25,%mm6
945	movq	16(%esp),%mm1
946	psrlq	$6,%mm5
947	pxor	%mm6,%mm7
948	psllq	$5,%mm6
949	pxor	%mm5,%mm7
950	pxor	%mm1,%mm2
951	psrlq	$5,%mm5
952	pxor	%mm6,%mm7
953	pand	%mm2,%mm0
954	psllq	$6,%mm6
955	pxor	%mm5,%mm7
956	pxor	%mm1,%mm0
957	pxor	%mm7,%mm6
958	movq	40(%esp),%mm5
959	paddq	%mm6,%mm0
960	movq	48(%esp),%mm6
961	movdqa	%xmm5,-80(%edx)
962	movdqa	%xmm1,%xmm7
963	movdqa	%xmm6,%xmm5
964.byte	102,15,58,15,244,8
965	movdqa	%xmm0,(%edx)
966.byte	102,15,58,15,248,8
967	movdqa	%xmm6,%xmm0
968	psrlq	$7,%xmm6
969	paddq	%xmm7,%xmm4
970	movdqa	%xmm0,%xmm7
971	psrlq	$1,%xmm0
972	psllq	$56,%xmm7
973	pxor	%xmm0,%xmm6
974	psrlq	$7,%xmm0
975	pxor	%xmm7,%xmm6
976	psllq	$7,%xmm7
977	pxor	%xmm0,%xmm6
978	movdqa	%xmm3,%xmm0
979	pxor	%xmm7,%xmm6
980	movdqa	%xmm3,%xmm7
981	psrlq	$6,%xmm0
982	paddq	%xmm6,%xmm4
983	movdqa	%xmm3,%xmm6
984	psrlq	$19,%xmm7
985	psllq	$3,%xmm6
986	pxor	%xmm7,%xmm0
987	psrlq	$42,%xmm7
988	pxor	%xmm6,%xmm0
989	psllq	$42,%xmm6
990	pxor	%xmm7,%xmm0
991	movdqa	32(%edx),%xmm7
992	pxor	%xmm6,%xmm0
993	movdqa	64(%ebp),%xmm6
994	movq	%mm4,%mm1
995	paddq	%xmm0,%xmm4
996	movq	-64(%edx),%mm7
997	pxor	%mm6,%mm5
998	psrlq	$14,%mm1
999	movq	%mm4,32(%esp)
1000	paddq	%xmm4,%xmm6
1001	pand	%mm4,%mm5
1002	psllq	$23,%mm4
1003	paddq	%mm3,%mm0
1004	movq	%mm1,%mm3
1005	psrlq	$4,%mm1
1006	pxor	%mm6,%mm5
1007	pxor	%mm4,%mm3
1008	psllq	$23,%mm4
1009	pxor	%mm1,%mm3
1010	movq	%mm0,(%esp)
1011	paddq	%mm5,%mm7
1012	pxor	%mm4,%mm3
1013	psrlq	$23,%mm1
1014	paddq	56(%esp),%mm7
1015	pxor	%mm1,%mm3
1016	psllq	$4,%mm4
1017	pxor	%mm4,%mm3
1018	movq	24(%esp),%mm4
1019	paddq	%mm7,%mm3
1020	movq	%mm0,%mm5
1021	psrlq	$28,%mm5
1022	paddq	%mm3,%mm4
1023	movq	%mm0,%mm6
1024	movq	%mm5,%mm7
1025	psllq	$25,%mm6
1026	movq	8(%esp),%mm1
1027	psrlq	$6,%mm5
1028	pxor	%mm6,%mm7
1029	psllq	$5,%mm6
1030	pxor	%mm5,%mm7
1031	pxor	%mm1,%mm0
1032	psrlq	$5,%mm5
1033	pxor	%mm6,%mm7
1034	pand	%mm0,%mm2
1035	psllq	$6,%mm6
1036	pxor	%mm5,%mm7
1037	pxor	%mm1,%mm2
1038	pxor	%mm7,%mm6
1039	movq	32(%esp),%mm5
1040	paddq	%mm6,%mm2
1041	movq	40(%esp),%mm6
1042	movq	%mm4,%mm1
1043	movq	-56(%edx),%mm7
1044	pxor	%mm6,%mm5
1045	psrlq	$14,%mm1
1046	movq	%mm4,24(%esp)
1047	pand	%mm4,%mm5
1048	psllq	$23,%mm4
1049	paddq	%mm3,%mm2
1050	movq	%mm1,%mm3
1051	psrlq	$4,%mm1
1052	pxor	%mm6,%mm5
1053	pxor	%mm4,%mm3
1054	psllq	$23,%mm4
1055	pxor	%mm1,%mm3
1056	movq	%mm2,56(%esp)
1057	paddq	%mm5,%mm7
1058	pxor	%mm4,%mm3
1059	psrlq	$23,%mm1
1060	paddq	48(%esp),%mm7
1061	pxor	%mm1,%mm3
1062	psllq	$4,%mm4
1063	pxor	%mm4,%mm3
1064	movq	16(%esp),%mm4
1065	paddq	%mm7,%mm3
1066	movq	%mm2,%mm5
1067	psrlq	$28,%mm5
1068	paddq	%mm3,%mm4
1069	movq	%mm2,%mm6
1070	movq	%mm5,%mm7
1071	psllq	$25,%mm6
1072	movq	(%esp),%mm1
1073	psrlq	$6,%mm5
1074	pxor	%mm6,%mm7
1075	psllq	$5,%mm6
1076	pxor	%mm5,%mm7
1077	pxor	%mm1,%mm2
1078	psrlq	$5,%mm5
1079	pxor	%mm6,%mm7
1080	pand	%mm2,%mm0
1081	psllq	$6,%mm6
1082	pxor	%mm5,%mm7
1083	pxor	%mm1,%mm0
1084	pxor	%mm7,%mm6
1085	movq	24(%esp),%mm5
1086	paddq	%mm6,%mm0
1087	movq	32(%esp),%mm6
1088	movdqa	%xmm6,-64(%edx)
1089	movdqa	%xmm2,%xmm0
1090	movdqa	%xmm7,%xmm6
1091.byte	102,15,58,15,253,8
1092	movdqa	%xmm1,16(%edx)
1093.byte	102,15,58,15,193,8
1094	movdqa	%xmm7,%xmm1
1095	psrlq	$7,%xmm7
1096	paddq	%xmm0,%xmm5
1097	movdqa	%xmm1,%xmm0
1098	psrlq	$1,%xmm1
1099	psllq	$56,%xmm0
1100	pxor	%xmm1,%xmm7
1101	psrlq	$7,%xmm1
1102	pxor	%xmm0,%xmm7
1103	psllq	$7,%xmm0
1104	pxor	%xmm1,%xmm7
1105	movdqa	%xmm4,%xmm1
1106	pxor	%xmm0,%xmm7
1107	movdqa	%xmm4,%xmm0
1108	psrlq	$6,%xmm1
1109	paddq	%xmm7,%xmm5
1110	movdqa	%xmm4,%xmm7
1111	psrlq	$19,%xmm0
1112	psllq	$3,%xmm7
1113	pxor	%xmm0,%xmm1
1114	psrlq	$42,%xmm0
1115	pxor	%xmm7,%xmm1
1116	psllq	$42,%xmm7
1117	pxor	%xmm0,%xmm1
1118	movdqa	48(%edx),%xmm0
1119	pxor	%xmm7,%xmm1
1120	movdqa	80(%ebp),%xmm7
1121	movq	%mm4,%mm1
1122	paddq	%xmm1,%xmm5
1123	movq	-48(%edx),%mm7
1124	pxor	%mm6,%mm5
1125	psrlq	$14,%mm1
1126	movq	%mm4,16(%esp)
1127	paddq	%xmm5,%xmm7
1128	pand	%mm4,%mm5
1129	psllq	$23,%mm4
1130	paddq	%mm3,%mm0
1131	movq	%mm1,%mm3
1132	psrlq	$4,%mm1
1133	pxor	%mm6,%mm5
1134	pxor	%mm4,%mm3
1135	psllq	$23,%mm4
1136	pxor	%mm1,%mm3
1137	movq	%mm0,48(%esp)
1138	paddq	%mm5,%mm7
1139	pxor	%mm4,%mm3
1140	psrlq	$23,%mm1
1141	paddq	40(%esp),%mm7
1142	pxor	%mm1,%mm3
1143	psllq	$4,%mm4
1144	pxor	%mm4,%mm3
1145	movq	8(%esp),%mm4
1146	paddq	%mm7,%mm3
1147	movq	%mm0,%mm5
1148	psrlq	$28,%mm5
1149	paddq	%mm3,%mm4
1150	movq	%mm0,%mm6
1151	movq	%mm5,%mm7
1152	psllq	$25,%mm6
1153	movq	56(%esp),%mm1
1154	psrlq	$6,%mm5
1155	pxor	%mm6,%mm7
1156	psllq	$5,%mm6
1157	pxor	%mm5,%mm7
1158	pxor	%mm1,%mm0
1159	psrlq	$5,%mm5
1160	pxor	%mm6,%mm7
1161	pand	%mm0,%mm2
1162	psllq	$6,%mm6
1163	pxor	%mm5,%mm7
1164	pxor	%mm1,%mm2
1165	pxor	%mm7,%mm6
1166	movq	16(%esp),%mm5
1167	paddq	%mm6,%mm2
1168	movq	24(%esp),%mm6
1169	movq	%mm4,%mm1
1170	movq	-40(%edx),%mm7
1171	pxor	%mm6,%mm5
1172	psrlq	$14,%mm1
1173	movq	%mm4,8(%esp)
1174	pand	%mm4,%mm5
1175	psllq	$23,%mm4
1176	paddq	%mm3,%mm2
1177	movq	%mm1,%mm3
1178	psrlq	$4,%mm1
1179	pxor	%mm6,%mm5
1180	pxor	%mm4,%mm3
1181	psllq	$23,%mm4
1182	pxor	%mm1,%mm3
1183	movq	%mm2,40(%esp)
1184	paddq	%mm5,%mm7
1185	pxor	%mm4,%mm3
1186	psrlq	$23,%mm1
1187	paddq	32(%esp),%mm7
1188	pxor	%mm1,%mm3
1189	psllq	$4,%mm4
1190	pxor	%mm4,%mm3
1191	movq	(%esp),%mm4
1192	paddq	%mm7,%mm3
1193	movq	%mm2,%mm5
1194	psrlq	$28,%mm5
1195	paddq	%mm3,%mm4
1196	movq	%mm2,%mm6
1197	movq	%mm5,%mm7
1198	psllq	$25,%mm6
1199	movq	48(%esp),%mm1
1200	psrlq	$6,%mm5
1201	pxor	%mm6,%mm7
1202	psllq	$5,%mm6
1203	pxor	%mm5,%mm7
1204	pxor	%mm1,%mm2
1205	psrlq	$5,%mm5
1206	pxor	%mm6,%mm7
1207	pand	%mm2,%mm0
1208	psllq	$6,%mm6
1209	pxor	%mm5,%mm7
1210	pxor	%mm1,%mm0
1211	pxor	%mm7,%mm6
1212	movq	8(%esp),%mm5
1213	paddq	%mm6,%mm0
1214	movq	16(%esp),%mm6
1215	movdqa	%xmm7,-48(%edx)
1216	movdqa	%xmm3,%xmm1
1217	movdqa	%xmm0,%xmm7
1218.byte	102,15,58,15,198,8
1219	movdqa	%xmm2,32(%edx)
1220.byte	102,15,58,15,202,8
1221	movdqa	%xmm0,%xmm2
1222	psrlq	$7,%xmm0
1223	paddq	%xmm1,%xmm6
1224	movdqa	%xmm2,%xmm1
1225	psrlq	$1,%xmm2
1226	psllq	$56,%xmm1
1227	pxor	%xmm2,%xmm0
1228	psrlq	$7,%xmm2
1229	pxor	%xmm1,%xmm0
1230	psllq	$7,%xmm1
1231	pxor	%xmm2,%xmm0
1232	movdqa	%xmm5,%xmm2
1233	pxor	%xmm1,%xmm0
1234	movdqa	%xmm5,%xmm1
1235	psrlq	$6,%xmm2
1236	paddq	%xmm0,%xmm6
1237	movdqa	%xmm5,%xmm0
1238	psrlq	$19,%xmm1
1239	psllq	$3,%xmm0
1240	pxor	%xmm1,%xmm2
1241	psrlq	$42,%xmm1
1242	pxor	%xmm0,%xmm2
1243	psllq	$42,%xmm0
1244	pxor	%xmm1,%xmm2
1245	movdqa	(%edx),%xmm1
1246	pxor	%xmm0,%xmm2
1247	movdqa	96(%ebp),%xmm0
1248	movq	%mm4,%mm1
1249	paddq	%xmm2,%xmm6
1250	movq	-32(%edx),%mm7
1251	pxor	%mm6,%mm5
1252	psrlq	$14,%mm1
1253	movq	%mm4,(%esp)
1254	paddq	%xmm6,%xmm0
1255	pand	%mm4,%mm5
1256	psllq	$23,%mm4
1257	paddq	%mm3,%mm0
1258	movq	%mm1,%mm3
1259	psrlq	$4,%mm1
1260	pxor	%mm6,%mm5
1261	pxor	%mm4,%mm3
1262	psllq	$23,%mm4
1263	pxor	%mm1,%mm3
1264	movq	%mm0,32(%esp)
1265	paddq	%mm5,%mm7
1266	pxor	%mm4,%mm3
1267	psrlq	$23,%mm1
1268	paddq	24(%esp),%mm7
1269	pxor	%mm1,%mm3
1270	psllq	$4,%mm4
1271	pxor	%mm4,%mm3
1272	movq	56(%esp),%mm4
1273	paddq	%mm7,%mm3
1274	movq	%mm0,%mm5
1275	psrlq	$28,%mm5
1276	paddq	%mm3,%mm4
1277	movq	%mm0,%mm6
1278	movq	%mm5,%mm7
1279	psllq	$25,%mm6
1280	movq	40(%esp),%mm1
1281	psrlq	$6,%mm5
1282	pxor	%mm6,%mm7
1283	psllq	$5,%mm6
1284	pxor	%mm5,%mm7
1285	pxor	%mm1,%mm0
1286	psrlq	$5,%mm5
1287	pxor	%mm6,%mm7
1288	pand	%mm0,%mm2
1289	psllq	$6,%mm6
1290	pxor	%mm5,%mm7
1291	pxor	%mm1,%mm2
1292	pxor	%mm7,%mm6
1293	movq	(%esp),%mm5
1294	paddq	%mm6,%mm2
1295	movq	8(%esp),%mm6
1296	movq	%mm4,%mm1
1297	movq	-24(%edx),%mm7
1298	pxor	%mm6,%mm5
1299	psrlq	$14,%mm1
1300	movq	%mm4,56(%esp)
1301	pand	%mm4,%mm5
1302	psllq	$23,%mm4
1303	paddq	%mm3,%mm2
1304	movq	%mm1,%mm3
1305	psrlq	$4,%mm1
1306	pxor	%mm6,%mm5
1307	pxor	%mm4,%mm3
1308	psllq	$23,%mm4
1309	pxor	%mm1,%mm3
1310	movq	%mm2,24(%esp)
1311	paddq	%mm5,%mm7
1312	pxor	%mm4,%mm3
1313	psrlq	$23,%mm1
1314	paddq	16(%esp),%mm7
1315	pxor	%mm1,%mm3
1316	psllq	$4,%mm4
1317	pxor	%mm4,%mm3
1318	movq	48(%esp),%mm4
1319	paddq	%mm7,%mm3
1320	movq	%mm2,%mm5
1321	psrlq	$28,%mm5
1322	paddq	%mm3,%mm4
1323	movq	%mm2,%mm6
1324	movq	%mm5,%mm7
1325	psllq	$25,%mm6
1326	movq	32(%esp),%mm1
1327	psrlq	$6,%mm5
1328	pxor	%mm6,%mm7
1329	psllq	$5,%mm6
1330	pxor	%mm5,%mm7
1331	pxor	%mm1,%mm2
1332	psrlq	$5,%mm5
1333	pxor	%mm6,%mm7
1334	pand	%mm2,%mm0
1335	psllq	$6,%mm6
1336	pxor	%mm5,%mm7
1337	pxor	%mm1,%mm0
1338	pxor	%mm7,%mm6
1339	movq	56(%esp),%mm5
1340	paddq	%mm6,%mm0
1341	movq	(%esp),%mm6
1342	movdqa	%xmm0,-32(%edx)
1343	movdqa	%xmm4,%xmm2
1344	movdqa	%xmm1,%xmm0
1345.byte	102,15,58,15,207,8
1346	movdqa	%xmm3,48(%edx)
1347.byte	102,15,58,15,211,8
1348	movdqa	%xmm1,%xmm3
1349	psrlq	$7,%xmm1
1350	paddq	%xmm2,%xmm7
1351	movdqa	%xmm3,%xmm2
1352	psrlq	$1,%xmm3
1353	psllq	$56,%xmm2
1354	pxor	%xmm3,%xmm1
1355	psrlq	$7,%xmm3
1356	pxor	%xmm2,%xmm1
1357	psllq	$7,%xmm2
1358	pxor	%xmm3,%xmm1
1359	movdqa	%xmm6,%xmm3
1360	pxor	%xmm2,%xmm1
1361	movdqa	%xmm6,%xmm2
1362	psrlq	$6,%xmm3
1363	paddq	%xmm1,%xmm7
1364	movdqa	%xmm6,%xmm1
1365	psrlq	$19,%xmm2
1366	psllq	$3,%xmm1
1367	pxor	%xmm2,%xmm3
1368	psrlq	$42,%xmm2
1369	pxor	%xmm1,%xmm3
1370	psllq	$42,%xmm1
1371	pxor	%xmm2,%xmm3
1372	movdqa	16(%edx),%xmm2
1373	pxor	%xmm1,%xmm3
1374	movdqa	112(%ebp),%xmm1
1375	movq	%mm4,%mm1
1376	paddq	%xmm3,%xmm7
1377	movq	-16(%edx),%mm7
1378	pxor	%mm6,%mm5
1379	psrlq	$14,%mm1
1380	movq	%mm4,48(%esp)
1381	paddq	%xmm7,%xmm1
1382	pand	%mm4,%mm5
1383	psllq	$23,%mm4
1384	paddq	%mm3,%mm0
1385	movq	%mm1,%mm3
1386	psrlq	$4,%mm1
1387	pxor	%mm6,%mm5
1388	pxor	%mm4,%mm3
1389	psllq	$23,%mm4
1390	pxor	%mm1,%mm3
1391	movq	%mm0,16(%esp)
1392	paddq	%mm5,%mm7
1393	pxor	%mm4,%mm3
1394	psrlq	$23,%mm1
1395	paddq	8(%esp),%mm7
1396	pxor	%mm1,%mm3
1397	psllq	$4,%mm4
1398	pxor	%mm4,%mm3
1399	movq	40(%esp),%mm4
1400	paddq	%mm7,%mm3
1401	movq	%mm0,%mm5
1402	psrlq	$28,%mm5
1403	paddq	%mm3,%mm4
1404	movq	%mm0,%mm6
1405	movq	%mm5,%mm7
1406	psllq	$25,%mm6
1407	movq	24(%esp),%mm1
1408	psrlq	$6,%mm5
1409	pxor	%mm6,%mm7
1410	psllq	$5,%mm6
1411	pxor	%mm5,%mm7
1412	pxor	%mm1,%mm0
1413	psrlq	$5,%mm5
1414	pxor	%mm6,%mm7
1415	pand	%mm0,%mm2
1416	psllq	$6,%mm6
1417	pxor	%mm5,%mm7
1418	pxor	%mm1,%mm2
1419	pxor	%mm7,%mm6
1420	movq	48(%esp),%mm5
1421	paddq	%mm6,%mm2
1422	movq	56(%esp),%mm6
1423	movq	%mm4,%mm1
1424	movq	-8(%edx),%mm7
1425	pxor	%mm6,%mm5
1426	psrlq	$14,%mm1
1427	movq	%mm4,40(%esp)
1428	pand	%mm4,%mm5
1429	psllq	$23,%mm4
1430	paddq	%mm3,%mm2
1431	movq	%mm1,%mm3
1432	psrlq	$4,%mm1
1433	pxor	%mm6,%mm5
1434	pxor	%mm4,%mm3
1435	psllq	$23,%mm4
1436	pxor	%mm1,%mm3
1437	movq	%mm2,8(%esp)
1438	paddq	%mm5,%mm7
1439	pxor	%mm4,%mm3
1440	psrlq	$23,%mm1
1441	paddq	(%esp),%mm7
1442	pxor	%mm1,%mm3
1443	psllq	$4,%mm4
1444	pxor	%mm4,%mm3
1445	movq	32(%esp),%mm4
1446	paddq	%mm7,%mm3
1447	movq	%mm2,%mm5
1448	psrlq	$28,%mm5
1449	paddq	%mm3,%mm4
1450	movq	%mm2,%mm6
1451	movq	%mm5,%mm7
1452	psllq	$25,%mm6
1453	movq	16(%esp),%mm1
1454	psrlq	$6,%mm5
1455	pxor	%mm6,%mm7
1456	psllq	$5,%mm6
1457	pxor	%mm5,%mm7
1458	pxor	%mm1,%mm2
1459	psrlq	$5,%mm5
1460	pxor	%mm6,%mm7
1461	pand	%mm2,%mm0
1462	psllq	$6,%mm6
1463	pxor	%mm5,%mm7
1464	pxor	%mm1,%mm0
1465	pxor	%mm7,%mm6
1466	movq	40(%esp),%mm5
1467	paddq	%mm6,%mm0
1468	movq	48(%esp),%mm6
1469	movdqa	%xmm1,-16(%edx)
1470	leal	128(%ebp),%ebp
1471	decl	%ecx
1472	jnz	.L00800_47_ssse3
1473	movdqa	(%ebp),%xmm1
1474	leal	-640(%ebp),%ebp
1475	movdqu	(%ebx),%xmm0
1476.byte	102,15,56,0,193
1477	movdqa	(%ebp),%xmm3
1478	movdqa	%xmm1,%xmm2
1479	movdqu	16(%ebx),%xmm1
1480	paddq	%xmm0,%xmm3
1481.byte	102,15,56,0,202
1482	movq	%mm4,%mm1
1483	movq	-128(%edx),%mm7
1484	pxor	%mm6,%mm5
1485	psrlq	$14,%mm1
1486	movq	%mm4,32(%esp)
1487	pand	%mm4,%mm5
1488	psllq	$23,%mm4
1489	paddq	%mm3,%mm0
1490	movq	%mm1,%mm3
1491	psrlq	$4,%mm1
1492	pxor	%mm6,%mm5
1493	pxor	%mm4,%mm3
1494	psllq	$23,%mm4
1495	pxor	%mm1,%mm3
1496	movq	%mm0,(%esp)
1497	paddq	%mm5,%mm7
1498	pxor	%mm4,%mm3
1499	psrlq	$23,%mm1
1500	paddq	56(%esp),%mm7
1501	pxor	%mm1,%mm3
1502	psllq	$4,%mm4
1503	pxor	%mm4,%mm3
1504	movq	24(%esp),%mm4
1505	paddq	%mm7,%mm3
1506	movq	%mm0,%mm5
1507	psrlq	$28,%mm5
1508	paddq	%mm3,%mm4
1509	movq	%mm0,%mm6
1510	movq	%mm5,%mm7
1511	psllq	$25,%mm6
1512	movq	8(%esp),%mm1
1513	psrlq	$6,%mm5
1514	pxor	%mm6,%mm7
1515	psllq	$5,%mm6
1516	pxor	%mm5,%mm7
1517	pxor	%mm1,%mm0
1518	psrlq	$5,%mm5
1519	pxor	%mm6,%mm7
1520	pand	%mm0,%mm2
1521	psllq	$6,%mm6
1522	pxor	%mm5,%mm7
1523	pxor	%mm1,%mm2
1524	pxor	%mm7,%mm6
1525	movq	32(%esp),%mm5
1526	paddq	%mm6,%mm2
1527	movq	40(%esp),%mm6
1528	movq	%mm4,%mm1
1529	movq	-120(%edx),%mm7
1530	pxor	%mm6,%mm5
1531	psrlq	$14,%mm1
1532	movq	%mm4,24(%esp)
1533	pand	%mm4,%mm5
1534	psllq	$23,%mm4
1535	paddq	%mm3,%mm2
1536	movq	%mm1,%mm3
1537	psrlq	$4,%mm1
1538	pxor	%mm6,%mm5
1539	pxor	%mm4,%mm3
1540	psllq	$23,%mm4
1541	pxor	%mm1,%mm3
1542	movq	%mm2,56(%esp)
1543	paddq	%mm5,%mm7
1544	pxor	%mm4,%mm3
1545	psrlq	$23,%mm1
1546	paddq	48(%esp),%mm7
1547	pxor	%mm1,%mm3
1548	psllq	$4,%mm4
1549	pxor	%mm4,%mm3
1550	movq	16(%esp),%mm4
1551	paddq	%mm7,%mm3
1552	movq	%mm2,%mm5
1553	psrlq	$28,%mm5
1554	paddq	%mm3,%mm4
1555	movq	%mm2,%mm6
1556	movq	%mm5,%mm7
1557	psllq	$25,%mm6
1558	movq	(%esp),%mm1
1559	psrlq	$6,%mm5
1560	pxor	%mm6,%mm7
1561	psllq	$5,%mm6
1562	pxor	%mm5,%mm7
1563	pxor	%mm1,%mm2
1564	psrlq	$5,%mm5
1565	pxor	%mm6,%mm7
1566	pand	%mm2,%mm0
1567	psllq	$6,%mm6
1568	pxor	%mm5,%mm7
1569	pxor	%mm1,%mm0
1570	pxor	%mm7,%mm6
1571	movq	24(%esp),%mm5
1572	paddq	%mm6,%mm0
1573	movq	32(%esp),%mm6
1574	movdqa	%xmm3,-128(%edx)
1575	movdqa	16(%ebp),%xmm4
1576	movdqa	%xmm2,%xmm3
1577	movdqu	32(%ebx),%xmm2
1578	paddq	%xmm1,%xmm4
1579.byte	102,15,56,0,211
1580	movq	%mm4,%mm1
1581	movq	-112(%edx),%mm7
1582	pxor	%mm6,%mm5
1583	psrlq	$14,%mm1
1584	movq	%mm4,16(%esp)
1585	pand	%mm4,%mm5
1586	psllq	$23,%mm4
1587	paddq	%mm3,%mm0
1588	movq	%mm1,%mm3
1589	psrlq	$4,%mm1
1590	pxor	%mm6,%mm5
1591	pxor	%mm4,%mm3
1592	psllq	$23,%mm4
1593	pxor	%mm1,%mm3
1594	movq	%mm0,48(%esp)
1595	paddq	%mm5,%mm7
1596	pxor	%mm4,%mm3
1597	psrlq	$23,%mm1
1598	paddq	40(%esp),%mm7
1599	pxor	%mm1,%mm3
1600	psllq	$4,%mm4
1601	pxor	%mm4,%mm3
1602	movq	8(%esp),%mm4
1603	paddq	%mm7,%mm3
1604	movq	%mm0,%mm5
1605	psrlq	$28,%mm5
1606	paddq	%mm3,%mm4
1607	movq	%mm0,%mm6
1608	movq	%mm5,%mm7
1609	psllq	$25,%mm6
1610	movq	56(%esp),%mm1
1611	psrlq	$6,%mm5
1612	pxor	%mm6,%mm7
1613	psllq	$5,%mm6
1614	pxor	%mm5,%mm7
1615	pxor	%mm1,%mm0
1616	psrlq	$5,%mm5
1617	pxor	%mm6,%mm7
1618	pand	%mm0,%mm2
1619	psllq	$6,%mm6
1620	pxor	%mm5,%mm7
1621	pxor	%mm1,%mm2
1622	pxor	%mm7,%mm6
1623	movq	16(%esp),%mm5
1624	paddq	%mm6,%mm2
1625	movq	24(%esp),%mm6
1626	movq	%mm4,%mm1
1627	movq	-104(%edx),%mm7
1628	pxor	%mm6,%mm5
1629	psrlq	$14,%mm1
1630	movq	%mm4,8(%esp)
1631	pand	%mm4,%mm5
1632	psllq	$23,%mm4
1633	paddq	%mm3,%mm2
1634	movq	%mm1,%mm3
1635	psrlq	$4,%mm1
1636	pxor	%mm6,%mm5
1637	pxor	%mm4,%mm3
1638	psllq	$23,%mm4
1639	pxor	%mm1,%mm3
1640	movq	%mm2,40(%esp)
1641	paddq	%mm5,%mm7
1642	pxor	%mm4,%mm3
1643	psrlq	$23,%mm1
1644	paddq	32(%esp),%mm7
1645	pxor	%mm1,%mm3
1646	psllq	$4,%mm4
1647	pxor	%mm4,%mm3
1648	movq	(%esp),%mm4
1649	paddq	%mm7,%mm3
1650	movq	%mm2,%mm5
1651	psrlq	$28,%mm5
1652	paddq	%mm3,%mm4
1653	movq	%mm2,%mm6
1654	movq	%mm5,%mm7
1655	psllq	$25,%mm6
1656	movq	48(%esp),%mm1
1657	psrlq	$6,%mm5
1658	pxor	%mm6,%mm7
1659	psllq	$5,%mm6
1660	pxor	%mm5,%mm7
1661	pxor	%mm1,%mm2
1662	psrlq	$5,%mm5
1663	pxor	%mm6,%mm7
1664	pand	%mm2,%mm0
1665	psllq	$6,%mm6
1666	pxor	%mm5,%mm7
1667	pxor	%mm1,%mm0
1668	pxor	%mm7,%mm6
1669	movq	8(%esp),%mm5
1670	paddq	%mm6,%mm0
1671	movq	16(%esp),%mm6
1672	movdqa	%xmm4,-112(%edx)
1673	movdqa	32(%ebp),%xmm5
1674	movdqa	%xmm3,%xmm4
1675	movdqu	48(%ebx),%xmm3
1676	paddq	%xmm2,%xmm5
1677.byte	102,15,56,0,220
1678	movq	%mm4,%mm1
1679	movq	-96(%edx),%mm7
1680	pxor	%mm6,%mm5
1681	psrlq	$14,%mm1
1682	movq	%mm4,(%esp)
1683	pand	%mm4,%mm5
1684	psllq	$23,%mm4
1685	paddq	%mm3,%mm0
1686	movq	%mm1,%mm3
1687	psrlq	$4,%mm1
1688	pxor	%mm6,%mm5
1689	pxor	%mm4,%mm3
1690	psllq	$23,%mm4
1691	pxor	%mm1,%mm3
1692	movq	%mm0,32(%esp)
1693	paddq	%mm5,%mm7
1694	pxor	%mm4,%mm3
1695	psrlq	$23,%mm1
1696	paddq	24(%esp),%mm7
1697	pxor	%mm1,%mm3
1698	psllq	$4,%mm4
1699	pxor	%mm4,%mm3
1700	movq	56(%esp),%mm4
1701	paddq	%mm7,%mm3
1702	movq	%mm0,%mm5
1703	psrlq	$28,%mm5
1704	paddq	%mm3,%mm4
1705	movq	%mm0,%mm6
1706	movq	%mm5,%mm7
1707	psllq	$25,%mm6
1708	movq	40(%esp),%mm1
1709	psrlq	$6,%mm5
1710	pxor	%mm6,%mm7
1711	psllq	$5,%mm6
1712	pxor	%mm5,%mm7
1713	pxor	%mm1,%mm0
1714	psrlq	$5,%mm5
1715	pxor	%mm6,%mm7
1716	pand	%mm0,%mm2
1717	psllq	$6,%mm6
1718	pxor	%mm5,%mm7
1719	pxor	%mm1,%mm2
1720	pxor	%mm7,%mm6
1721	movq	(%esp),%mm5
1722	paddq	%mm6,%mm2
1723	movq	8(%esp),%mm6
1724	movq	%mm4,%mm1
1725	movq	-88(%edx),%mm7
1726	pxor	%mm6,%mm5
1727	psrlq	$14,%mm1
1728	movq	%mm4,56(%esp)
1729	pand	%mm4,%mm5
1730	psllq	$23,%mm4
1731	paddq	%mm3,%mm2
1732	movq	%mm1,%mm3
1733	psrlq	$4,%mm1
1734	pxor	%mm6,%mm5
1735	pxor	%mm4,%mm3
1736	psllq	$23,%mm4
1737	pxor	%mm1,%mm3
1738	movq	%mm2,24(%esp)
1739	paddq	%mm5,%mm7
1740	pxor	%mm4,%mm3
1741	psrlq	$23,%mm1
1742	paddq	16(%esp),%mm7
1743	pxor	%mm1,%mm3
1744	psllq	$4,%mm4
1745	pxor	%mm4,%mm3
1746	movq	48(%esp),%mm4
1747	paddq	%mm7,%mm3
1748	movq	%mm2,%mm5
1749	psrlq	$28,%mm5
1750	paddq	%mm3,%mm4
1751	movq	%mm2,%mm6
1752	movq	%mm5,%mm7
1753	psllq	$25,%mm6
1754	movq	32(%esp),%mm1
1755	psrlq	$6,%mm5
1756	pxor	%mm6,%mm7
1757	psllq	$5,%mm6
1758	pxor	%mm5,%mm7
1759	pxor	%mm1,%mm2
1760	psrlq	$5,%mm5
1761	pxor	%mm6,%mm7
1762	pand	%mm2,%mm0
1763	psllq	$6,%mm6
1764	pxor	%mm5,%mm7
1765	pxor	%mm1,%mm0
1766	pxor	%mm7,%mm6
1767	movq	56(%esp),%mm5
1768	paddq	%mm6,%mm0
1769	movq	(%esp),%mm6
1770	movdqa	%xmm5,-96(%edx)
1771	movdqa	48(%ebp),%xmm6
1772	movdqa	%xmm4,%xmm5
1773	movdqu	64(%ebx),%xmm4
1774	paddq	%xmm3,%xmm6
1775.byte	102,15,56,0,229
1776	movq	%mm4,%mm1
1777	movq	-80(%edx),%mm7
1778	pxor	%mm6,%mm5
1779	psrlq	$14,%mm1
1780	movq	%mm4,48(%esp)
1781	pand	%mm4,%mm5
1782	psllq	$23,%mm4
1783	paddq	%mm3,%mm0
1784	movq	%mm1,%mm3
1785	psrlq	$4,%mm1
1786	pxor	%mm6,%mm5
1787	pxor	%mm4,%mm3
1788	psllq	$23,%mm4
1789	pxor	%mm1,%mm3
1790	movq	%mm0,16(%esp)
1791	paddq	%mm5,%mm7
1792	pxor	%mm4,%mm3
1793	psrlq	$23,%mm1
1794	paddq	8(%esp),%mm7
1795	pxor	%mm1,%mm3
1796	psllq	$4,%mm4
1797	pxor	%mm4,%mm3
1798	movq	40(%esp),%mm4
1799	paddq	%mm7,%mm3
1800	movq	%mm0,%mm5
1801	psrlq	$28,%mm5
1802	paddq	%mm3,%mm4
1803	movq	%mm0,%mm6
1804	movq	%mm5,%mm7
1805	psllq	$25,%mm6
1806	movq	24(%esp),%mm1
1807	psrlq	$6,%mm5
1808	pxor	%mm6,%mm7
1809	psllq	$5,%mm6
1810	pxor	%mm5,%mm7
1811	pxor	%mm1,%mm0
1812	psrlq	$5,%mm5
1813	pxor	%mm6,%mm7
1814	pand	%mm0,%mm2
1815	psllq	$6,%mm6
1816	pxor	%mm5,%mm7
1817	pxor	%mm1,%mm2
1818	pxor	%mm7,%mm6
1819	movq	48(%esp),%mm5
1820	paddq	%mm6,%mm2
1821	movq	56(%esp),%mm6
1822	movq	%mm4,%mm1
1823	movq	-72(%edx),%mm7
1824	pxor	%mm6,%mm5
1825	psrlq	$14,%mm1
1826	movq	%mm4,40(%esp)
1827	pand	%mm4,%mm5
1828	psllq	$23,%mm4
1829	paddq	%mm3,%mm2
1830	movq	%mm1,%mm3
1831	psrlq	$4,%mm1
1832	pxor	%mm6,%mm5
1833	pxor	%mm4,%mm3
1834	psllq	$23,%mm4
1835	pxor	%mm1,%mm3
1836	movq	%mm2,8(%esp)
1837	paddq	%mm5,%mm7
1838	pxor	%mm4,%mm3
1839	psrlq	$23,%mm1
1840	paddq	(%esp),%mm7
1841	pxor	%mm1,%mm3
1842	psllq	$4,%mm4
1843	pxor	%mm4,%mm3
1844	movq	32(%esp),%mm4
1845	paddq	%mm7,%mm3
1846	movq	%mm2,%mm5
1847	psrlq	$28,%mm5
1848	paddq	%mm3,%mm4
1849	movq	%mm2,%mm6
1850	movq	%mm5,%mm7
1851	psllq	$25,%mm6
1852	movq	16(%esp),%mm1
1853	psrlq	$6,%mm5
1854	pxor	%mm6,%mm7
1855	psllq	$5,%mm6
1856	pxor	%mm5,%mm7
1857	pxor	%mm1,%mm2
1858	psrlq	$5,%mm5
1859	pxor	%mm6,%mm7
1860	pand	%mm2,%mm0
1861	psllq	$6,%mm6
1862	pxor	%mm5,%mm7
1863	pxor	%mm1,%mm0
1864	pxor	%mm7,%mm6
1865	movq	40(%esp),%mm5
1866	paddq	%mm6,%mm0
1867	movq	48(%esp),%mm6
1868	movdqa	%xmm6,-80(%edx)
1869	movdqa	64(%ebp),%xmm7
1870	movdqa	%xmm5,%xmm6
1871	movdqu	80(%ebx),%xmm5
1872	paddq	%xmm4,%xmm7
1873.byte	102,15,56,0,238
1874	movq	%mm4,%mm1
1875	movq	-64(%edx),%mm7
1876	pxor	%mm6,%mm5
1877	psrlq	$14,%mm1
1878	movq	%mm4,32(%esp)
1879	pand	%mm4,%mm5
1880	psllq	$23,%mm4
1881	paddq	%mm3,%mm0
1882	movq	%mm1,%mm3
1883	psrlq	$4,%mm1
1884	pxor	%mm6,%mm5
1885	pxor	%mm4,%mm3
1886	psllq	$23,%mm4
1887	pxor	%mm1,%mm3
1888	movq	%mm0,(%esp)
1889	paddq	%mm5,%mm7
1890	pxor	%mm4,%mm3
1891	psrlq	$23,%mm1
1892	paddq	56(%esp),%mm7
1893	pxor	%mm1,%mm3
1894	psllq	$4,%mm4
1895	pxor	%mm4,%mm3
1896	movq	24(%esp),%mm4
1897	paddq	%mm7,%mm3
1898	movq	%mm0,%mm5
1899	psrlq	$28,%mm5
1900	paddq	%mm3,%mm4
1901	movq	%mm0,%mm6
1902	movq	%mm5,%mm7
1903	psllq	$25,%mm6
1904	movq	8(%esp),%mm1
1905	psrlq	$6,%mm5
1906	pxor	%mm6,%mm7
1907	psllq	$5,%mm6
1908	pxor	%mm5,%mm7
1909	pxor	%mm1,%mm0
1910	psrlq	$5,%mm5
1911	pxor	%mm6,%mm7
1912	pand	%mm0,%mm2
1913	psllq	$6,%mm6
1914	pxor	%mm5,%mm7
1915	pxor	%mm1,%mm2
1916	pxor	%mm7,%mm6
1917	movq	32(%esp),%mm5
1918	paddq	%mm6,%mm2
1919	movq	40(%esp),%mm6
1920	movq	%mm4,%mm1
1921	movq	-56(%edx),%mm7
1922	pxor	%mm6,%mm5
1923	psrlq	$14,%mm1
1924	movq	%mm4,24(%esp)
1925	pand	%mm4,%mm5
1926	psllq	$23,%mm4
1927	paddq	%mm3,%mm2
1928	movq	%mm1,%mm3
1929	psrlq	$4,%mm1
1930	pxor	%mm6,%mm5
1931	pxor	%mm4,%mm3
1932	psllq	$23,%mm4
1933	pxor	%mm1,%mm3
1934	movq	%mm2,56(%esp)
1935	paddq	%mm5,%mm7
1936	pxor	%mm4,%mm3
1937	psrlq	$23,%mm1
1938	paddq	48(%esp),%mm7
1939	pxor	%mm1,%mm3
1940	psllq	$4,%mm4
1941	pxor	%mm4,%mm3
1942	movq	16(%esp),%mm4
1943	paddq	%mm7,%mm3
1944	movq	%mm2,%mm5
1945	psrlq	$28,%mm5
1946	paddq	%mm3,%mm4
1947	movq	%mm2,%mm6
1948	movq	%mm5,%mm7
1949	psllq	$25,%mm6
1950	movq	(%esp),%mm1
1951	psrlq	$6,%mm5
1952	pxor	%mm6,%mm7
1953	psllq	$5,%mm6
1954	pxor	%mm5,%mm7
1955	pxor	%mm1,%mm2
1956	psrlq	$5,%mm5
1957	pxor	%mm6,%mm7
1958	pand	%mm2,%mm0
1959	psllq	$6,%mm6
1960	pxor	%mm5,%mm7
1961	pxor	%mm1,%mm0
1962	pxor	%mm7,%mm6
1963	movq	24(%esp),%mm5
1964	paddq	%mm6,%mm0
1965	movq	32(%esp),%mm6
1966	movdqa	%xmm7,-64(%edx)
1967	movdqa	%xmm0,(%edx)
1968	movdqa	80(%ebp),%xmm0
1969	movdqa	%xmm6,%xmm7
1970	movdqu	96(%ebx),%xmm6
1971	paddq	%xmm5,%xmm0
1972.byte	102,15,56,0,247
1973	movq	%mm4,%mm1
1974	movq	-48(%edx),%mm7
1975	pxor	%mm6,%mm5
1976	psrlq	$14,%mm1
1977	movq	%mm4,16(%esp)
1978	pand	%mm4,%mm5
1979	psllq	$23,%mm4
1980	paddq	%mm3,%mm0
1981	movq	%mm1,%mm3
1982	psrlq	$4,%mm1
1983	pxor	%mm6,%mm5
1984	pxor	%mm4,%mm3
1985	psllq	$23,%mm4
1986	pxor	%mm1,%mm3
1987	movq	%mm0,48(%esp)
1988	paddq	%mm5,%mm7
1989	pxor	%mm4,%mm3
1990	psrlq	$23,%mm1
1991	paddq	40(%esp),%mm7
1992	pxor	%mm1,%mm3
1993	psllq	$4,%mm4
1994	pxor	%mm4,%mm3
1995	movq	8(%esp),%mm4
1996	paddq	%mm7,%mm3
1997	movq	%mm0,%mm5
1998	psrlq	$28,%mm5
1999	paddq	%mm3,%mm4
2000	movq	%mm0,%mm6
2001	movq	%mm5,%mm7
2002	psllq	$25,%mm6
2003	movq	56(%esp),%mm1
2004	psrlq	$6,%mm5
2005	pxor	%mm6,%mm7
2006	psllq	$5,%mm6
2007	pxor	%mm5,%mm7
2008	pxor	%mm1,%mm0
2009	psrlq	$5,%mm5
2010	pxor	%mm6,%mm7
2011	pand	%mm0,%mm2
2012	psllq	$6,%mm6
2013	pxor	%mm5,%mm7
2014	pxor	%mm1,%mm2
2015	pxor	%mm7,%mm6
2016	movq	16(%esp),%mm5
2017	paddq	%mm6,%mm2
2018	movq	24(%esp),%mm6
2019	movq	%mm4,%mm1
2020	movq	-40(%edx),%mm7
2021	pxor	%mm6,%mm5
2022	psrlq	$14,%mm1
2023	movq	%mm4,8(%esp)
2024	pand	%mm4,%mm5
2025	psllq	$23,%mm4
2026	paddq	%mm3,%mm2
2027	movq	%mm1,%mm3
2028	psrlq	$4,%mm1
2029	pxor	%mm6,%mm5
2030	pxor	%mm4,%mm3
2031	psllq	$23,%mm4
2032	pxor	%mm1,%mm3
2033	movq	%mm2,40(%esp)
2034	paddq	%mm5,%mm7
2035	pxor	%mm4,%mm3
2036	psrlq	$23,%mm1
2037	paddq	32(%esp),%mm7
2038	pxor	%mm1,%mm3
2039	psllq	$4,%mm4
2040	pxor	%mm4,%mm3
2041	movq	(%esp),%mm4
2042	paddq	%mm7,%mm3
2043	movq	%mm2,%mm5
2044	psrlq	$28,%mm5
2045	paddq	%mm3,%mm4
2046	movq	%mm2,%mm6
2047	movq	%mm5,%mm7
2048	psllq	$25,%mm6
2049	movq	48(%esp),%mm1
2050	psrlq	$6,%mm5
2051	pxor	%mm6,%mm7
2052	psllq	$5,%mm6
2053	pxor	%mm5,%mm7
2054	pxor	%mm1,%mm2
2055	psrlq	$5,%mm5
2056	pxor	%mm6,%mm7
2057	pand	%mm2,%mm0
2058	psllq	$6,%mm6
2059	pxor	%mm5,%mm7
2060	pxor	%mm1,%mm0
2061	pxor	%mm7,%mm6
2062	movq	8(%esp),%mm5
2063	paddq	%mm6,%mm0
2064	movq	16(%esp),%mm6
2065	movdqa	%xmm0,-48(%edx)
2066	movdqa	%xmm1,16(%edx)
2067	movdqa	96(%ebp),%xmm1
2068	movdqa	%xmm7,%xmm0
2069	movdqu	112(%ebx),%xmm7
2070	paddq	%xmm6,%xmm1
2071.byte	102,15,56,0,248
2072	movq	%mm4,%mm1
2073	movq	-32(%edx),%mm7
2074	pxor	%mm6,%mm5
2075	psrlq	$14,%mm1
2076	movq	%mm4,(%esp)
2077	pand	%mm4,%mm5
2078	psllq	$23,%mm4
2079	paddq	%mm3,%mm0
2080	movq	%mm1,%mm3
2081	psrlq	$4,%mm1
2082	pxor	%mm6,%mm5
2083	pxor	%mm4,%mm3
2084	psllq	$23,%mm4
2085	pxor	%mm1,%mm3
2086	movq	%mm0,32(%esp)
2087	paddq	%mm5,%mm7
2088	pxor	%mm4,%mm3
2089	psrlq	$23,%mm1
2090	paddq	24(%esp),%mm7
2091	pxor	%mm1,%mm3
2092	psllq	$4,%mm4
2093	pxor	%mm4,%mm3
2094	movq	56(%esp),%mm4
2095	paddq	%mm7,%mm3
2096	movq	%mm0,%mm5
2097	psrlq	$28,%mm5
2098	paddq	%mm3,%mm4
2099	movq	%mm0,%mm6
2100	movq	%mm5,%mm7
2101	psllq	$25,%mm6
2102	movq	40(%esp),%mm1
2103	psrlq	$6,%mm5
2104	pxor	%mm6,%mm7
2105	psllq	$5,%mm6
2106	pxor	%mm5,%mm7
2107	pxor	%mm1,%mm0
2108	psrlq	$5,%mm5
2109	pxor	%mm6,%mm7
2110	pand	%mm0,%mm2
2111	psllq	$6,%mm6
2112	pxor	%mm5,%mm7
2113	pxor	%mm1,%mm2
2114	pxor	%mm7,%mm6
2115	movq	(%esp),%mm5
2116	paddq	%mm6,%mm2
2117	movq	8(%esp),%mm6
2118	movq	%mm4,%mm1
2119	movq	-24(%edx),%mm7
2120	pxor	%mm6,%mm5
2121	psrlq	$14,%mm1
2122	movq	%mm4,56(%esp)
2123	pand	%mm4,%mm5
2124	psllq	$23,%mm4
2125	paddq	%mm3,%mm2
2126	movq	%mm1,%mm3
2127	psrlq	$4,%mm1
2128	pxor	%mm6,%mm5
2129	pxor	%mm4,%mm3
2130	psllq	$23,%mm4
2131	pxor	%mm1,%mm3
2132	movq	%mm2,24(%esp)
2133	paddq	%mm5,%mm7
2134	pxor	%mm4,%mm3
2135	psrlq	$23,%mm1
2136	paddq	16(%esp),%mm7
2137	pxor	%mm1,%mm3
2138	psllq	$4,%mm4
2139	pxor	%mm4,%mm3
2140	movq	48(%esp),%mm4
2141	paddq	%mm7,%mm3
2142	movq	%mm2,%mm5
2143	psrlq	$28,%mm5
2144	paddq	%mm3,%mm4
2145	movq	%mm2,%mm6
2146	movq	%mm5,%mm7
2147	psllq	$25,%mm6
2148	movq	32(%esp),%mm1
2149	psrlq	$6,%mm5
2150	pxor	%mm6,%mm7
2151	psllq	$5,%mm6
2152	pxor	%mm5,%mm7
2153	pxor	%mm1,%mm2
2154	psrlq	$5,%mm5
2155	pxor	%mm6,%mm7
2156	pand	%mm2,%mm0
2157	psllq	$6,%mm6
2158	pxor	%mm5,%mm7
2159	pxor	%mm1,%mm0
2160	pxor	%mm7,%mm6
2161	movq	56(%esp),%mm5
2162	paddq	%mm6,%mm0
2163	movq	(%esp),%mm6
2164	movdqa	%xmm1,-32(%edx)
2165	movdqa	%xmm2,32(%edx)
2166	movdqa	112(%ebp),%xmm2
2167	movdqa	(%edx),%xmm0
2168	paddq	%xmm7,%xmm2
2169	movq	%mm4,%mm1
2170	movq	-16(%edx),%mm7
2171	pxor	%mm6,%mm5
2172	psrlq	$14,%mm1
2173	movq	%mm4,48(%esp)
2174	pand	%mm4,%mm5
2175	psllq	$23,%mm4
2176	paddq	%mm3,%mm0
2177	movq	%mm1,%mm3
2178	psrlq	$4,%mm1
2179	pxor	%mm6,%mm5
2180	pxor	%mm4,%mm3
2181	psllq	$23,%mm4
2182	pxor	%mm1,%mm3
2183	movq	%mm0,16(%esp)
2184	paddq	%mm5,%mm7
2185	pxor	%mm4,%mm3
2186	psrlq	$23,%mm1
2187	paddq	8(%esp),%mm7
2188	pxor	%mm1,%mm3
2189	psllq	$4,%mm4
2190	pxor	%mm4,%mm3
2191	movq	40(%esp),%mm4
2192	paddq	%mm7,%mm3
2193	movq	%mm0,%mm5
2194	psrlq	$28,%mm5
2195	paddq	%mm3,%mm4
2196	movq	%mm0,%mm6
2197	movq	%mm5,%mm7
2198	psllq	$25,%mm6
2199	movq	24(%esp),%mm1
2200	psrlq	$6,%mm5
2201	pxor	%mm6,%mm7
2202	psllq	$5,%mm6
2203	pxor	%mm5,%mm7
2204	pxor	%mm1,%mm0
2205	psrlq	$5,%mm5
2206	pxor	%mm6,%mm7
2207	pand	%mm0,%mm2
2208	psllq	$6,%mm6
2209	pxor	%mm5,%mm7
2210	pxor	%mm1,%mm2
2211	pxor	%mm7,%mm6
2212	movq	48(%esp),%mm5
2213	paddq	%mm6,%mm2
2214	movq	56(%esp),%mm6
2215	movq	%mm4,%mm1
2216	movq	-8(%edx),%mm7
2217	pxor	%mm6,%mm5
2218	psrlq	$14,%mm1
2219	movq	%mm4,40(%esp)
2220	pand	%mm4,%mm5
2221	psllq	$23,%mm4
2222	paddq	%mm3,%mm2
2223	movq	%mm1,%mm3
2224	psrlq	$4,%mm1
2225	pxor	%mm6,%mm5
2226	pxor	%mm4,%mm3
2227	psllq	$23,%mm4
2228	pxor	%mm1,%mm3
2229	movq	%mm2,8(%esp)
2230	paddq	%mm5,%mm7
2231	pxor	%mm4,%mm3
2232	psrlq	$23,%mm1
2233	paddq	(%esp),%mm7
2234	pxor	%mm1,%mm3
2235	psllq	$4,%mm4
2236	pxor	%mm4,%mm3
2237	movq	32(%esp),%mm4
2238	paddq	%mm7,%mm3
2239	movq	%mm2,%mm5
2240	psrlq	$28,%mm5
2241	paddq	%mm3,%mm4
2242	movq	%mm2,%mm6
2243	movq	%mm5,%mm7
2244	psllq	$25,%mm6
2245	movq	16(%esp),%mm1
2246	psrlq	$6,%mm5
2247	pxor	%mm6,%mm7
2248	psllq	$5,%mm6
2249	pxor	%mm5,%mm7
2250	pxor	%mm1,%mm2
2251	psrlq	$5,%mm5
2252	pxor	%mm6,%mm7
2253	pand	%mm2,%mm0
2254	psllq	$6,%mm6
2255	pxor	%mm5,%mm7
2256	pxor	%mm1,%mm0
2257	pxor	%mm7,%mm6
2258	movq	40(%esp),%mm5
2259	paddq	%mm6,%mm0
2260	movq	48(%esp),%mm6
2261	movdqa	%xmm2,-16(%edx)
2262	movq	8(%esp),%mm1
2263	paddq	%mm3,%mm0
2264	movq	24(%esp),%mm3
2265	movq	56(%esp),%mm7
2266	pxor	%mm1,%mm2
2267	paddq	(%esi),%mm0
2268	paddq	8(%esi),%mm1
2269	paddq	16(%esi),%mm2
2270	paddq	24(%esi),%mm3
2271	paddq	32(%esi),%mm4
2272	paddq	40(%esi),%mm5
2273	paddq	48(%esi),%mm6
2274	paddq	56(%esi),%mm7
2275	movq	%mm0,(%esi)
2276	movq	%mm1,8(%esi)
2277	movq	%mm2,16(%esi)
2278	movq	%mm3,24(%esi)
2279	movq	%mm4,32(%esi)
2280	movq	%mm5,40(%esi)
2281	movq	%mm6,48(%esi)
2282	movq	%mm7,56(%esi)
2283	cmpl	%eax,%edi
2284	jb	.L007loop_ssse3
2285	movl	76(%edx),%esp
2286	emms
2287	popl	%edi
2288	popl	%esi
2289	popl	%ebx
2290	popl	%ebp
2291	ret
2292.align	16
2293.L002loop_x86:
2294	movl	(%edi),%eax
2295	movl	4(%edi),%ebx
2296	movl	8(%edi),%ecx
2297	movl	12(%edi),%edx
2298	bswap	%eax
2299	bswap	%ebx
2300	bswap	%ecx
2301	bswap	%edx
2302	pushl	%eax
2303	pushl	%ebx
2304	pushl	%ecx
2305	pushl	%edx
2306	movl	16(%edi),%eax
2307	movl	20(%edi),%ebx
2308	movl	24(%edi),%ecx
2309	movl	28(%edi),%edx
2310	bswap	%eax
2311	bswap	%ebx
2312	bswap	%ecx
2313	bswap	%edx
2314	pushl	%eax
2315	pushl	%ebx
2316	pushl	%ecx
2317	pushl	%edx
2318	movl	32(%edi),%eax
2319	movl	36(%edi),%ebx
2320	movl	40(%edi),%ecx
2321	movl	44(%edi),%edx
2322	bswap	%eax
2323	bswap	%ebx
2324	bswap	%ecx
2325	bswap	%edx
2326	pushl	%eax
2327	pushl	%ebx
2328	pushl	%ecx
2329	pushl	%edx
2330	movl	48(%edi),%eax
2331	movl	52(%edi),%ebx
2332	movl	56(%edi),%ecx
2333	movl	60(%edi),%edx
2334	bswap	%eax
2335	bswap	%ebx
2336	bswap	%ecx
2337	bswap	%edx
2338	pushl	%eax
2339	pushl	%ebx
2340	pushl	%ecx
2341	pushl	%edx
2342	movl	64(%edi),%eax
2343	movl	68(%edi),%ebx
2344	movl	72(%edi),%ecx
2345	movl	76(%edi),%edx
2346	bswap	%eax
2347	bswap	%ebx
2348	bswap	%ecx
2349	bswap	%edx
2350	pushl	%eax
2351	pushl	%ebx
2352	pushl	%ecx
2353	pushl	%edx
2354	movl	80(%edi),%eax
2355	movl	84(%edi),%ebx
2356	movl	88(%edi),%ecx
2357	movl	92(%edi),%edx
2358	bswap	%eax
2359	bswap	%ebx
2360	bswap	%ecx
2361	bswap	%edx
2362	pushl	%eax
2363	pushl	%ebx
2364	pushl	%ecx
2365	pushl	%edx
2366	movl	96(%edi),%eax
2367	movl	100(%edi),%ebx
2368	movl	104(%edi),%ecx
2369	movl	108(%edi),%edx
2370	bswap	%eax
2371	bswap	%ebx
2372	bswap	%ecx
2373	bswap	%edx
2374	pushl	%eax
2375	pushl	%ebx
2376	pushl	%ecx
2377	pushl	%edx
2378	movl	112(%edi),%eax
2379	movl	116(%edi),%ebx
2380	movl	120(%edi),%ecx
2381	movl	124(%edi),%edx
2382	bswap	%eax
2383	bswap	%ebx
2384	bswap	%ecx
2385	bswap	%edx
2386	pushl	%eax
2387	pushl	%ebx
2388	pushl	%ecx
2389	pushl	%edx
2390	addl	$128,%edi
2391	subl	$72,%esp
2392	movl	%edi,204(%esp)
2393	leal	8(%esp),%edi
2394	movl	$16,%ecx
2395.long	2784229001
2396.align	16
2397.L00900_15_x86:
2398	movl	40(%esp),%ecx
2399	movl	44(%esp),%edx
2400	movl	%ecx,%esi
2401	shrl	$9,%ecx
2402	movl	%edx,%edi
2403	shrl	$9,%edx
2404	movl	%ecx,%ebx
2405	shll	$14,%esi
2406	movl	%edx,%eax
2407	shll	$14,%edi
2408	xorl	%esi,%ebx
2409	shrl	$5,%ecx
2410	xorl	%edi,%eax
2411	shrl	$5,%edx
2412	xorl	%ecx,%eax
2413	shll	$4,%esi
2414	xorl	%edx,%ebx
2415	shll	$4,%edi
2416	xorl	%esi,%ebx
2417	shrl	$4,%ecx
2418	xorl	%edi,%eax
2419	shrl	$4,%edx
2420	xorl	%ecx,%eax
2421	shll	$5,%esi
2422	xorl	%edx,%ebx
2423	shll	$5,%edi
2424	xorl	%esi,%eax
2425	xorl	%edi,%ebx
2426	movl	48(%esp),%ecx
2427	movl	52(%esp),%edx
2428	movl	56(%esp),%esi
2429	movl	60(%esp),%edi
2430	addl	64(%esp),%eax
2431	adcl	68(%esp),%ebx
2432	xorl	%esi,%ecx
2433	xorl	%edi,%edx
2434	andl	40(%esp),%ecx
2435	andl	44(%esp),%edx
2436	addl	192(%esp),%eax
2437	adcl	196(%esp),%ebx
2438	xorl	%esi,%ecx
2439	xorl	%edi,%edx
2440	movl	(%ebp),%esi
2441	movl	4(%ebp),%edi
2442	addl	%ecx,%eax
2443	adcl	%edx,%ebx
2444	movl	32(%esp),%ecx
2445	movl	36(%esp),%edx
2446	addl	%esi,%eax
2447	adcl	%edi,%ebx
2448	movl	%eax,(%esp)
2449	movl	%ebx,4(%esp)
2450	addl	%ecx,%eax
2451	adcl	%edx,%ebx
2452	movl	8(%esp),%ecx
2453	movl	12(%esp),%edx
2454	movl	%eax,32(%esp)
2455	movl	%ebx,36(%esp)
2456	movl	%ecx,%esi
2457	shrl	$2,%ecx
2458	movl	%edx,%edi
2459	shrl	$2,%edx
2460	movl	%ecx,%ebx
2461	shll	$4,%esi
2462	movl	%edx,%eax
2463	shll	$4,%edi
2464	xorl	%esi,%ebx
2465	shrl	$5,%ecx
2466	xorl	%edi,%eax
2467	shrl	$5,%edx
2468	xorl	%ecx,%ebx
2469	shll	$21,%esi
2470	xorl	%edx,%eax
2471	shll	$21,%edi
2472	xorl	%esi,%eax
2473	shrl	$21,%ecx
2474	xorl	%edi,%ebx
2475	shrl	$21,%edx
2476	xorl	%ecx,%eax
2477	shll	$5,%esi
2478	xorl	%edx,%ebx
2479	shll	$5,%edi
2480	xorl	%esi,%eax
2481	xorl	%edi,%ebx
2482	movl	8(%esp),%ecx
2483	movl	12(%esp),%edx
2484	movl	16(%esp),%esi
2485	movl	20(%esp),%edi
2486	addl	(%esp),%eax
2487	adcl	4(%esp),%ebx
2488	orl	%esi,%ecx
2489	orl	%edi,%edx
2490	andl	24(%esp),%ecx
2491	andl	28(%esp),%edx
2492	andl	8(%esp),%esi
2493	andl	12(%esp),%edi
2494	orl	%esi,%ecx
2495	orl	%edi,%edx
2496	addl	%ecx,%eax
2497	adcl	%edx,%ebx
2498	movl	%eax,(%esp)
2499	movl	%ebx,4(%esp)
2500	movb	(%ebp),%dl
2501	subl	$8,%esp
2502	leal	8(%ebp),%ebp
2503	cmpb	$148,%dl
2504	jne	.L00900_15_x86
2505.align	16
2506.L01016_79_x86:
2507	movl	312(%esp),%ecx
2508	movl	316(%esp),%edx
2509	movl	%ecx,%esi
2510	shrl	$1,%ecx
2511	movl	%edx,%edi
2512	shrl	$1,%edx
2513	movl	%ecx,%eax
2514	shll	$24,%esi
2515	movl	%edx,%ebx
2516	shll	$24,%edi
2517	xorl	%esi,%ebx
2518	shrl	$6,%ecx
2519	xorl	%edi,%eax
2520	shrl	$6,%edx
2521	xorl	%ecx,%eax
2522	shll	$7,%esi
2523	xorl	%edx,%ebx
2524	shll	$1,%edi
2525	xorl	%esi,%ebx
2526	shrl	$1,%ecx
2527	xorl	%edi,%eax
2528	shrl	$1,%edx
2529	xorl	%ecx,%eax
2530	shll	$6,%edi
2531	xorl	%edx,%ebx
2532	xorl	%edi,%eax
2533	movl	%eax,(%esp)
2534	movl	%ebx,4(%esp)
2535	movl	208(%esp),%ecx
2536	movl	212(%esp),%edx
2537	movl	%ecx,%esi
2538	shrl	$6,%ecx
2539	movl	%edx,%edi
2540	shrl	$6,%edx
2541	movl	%ecx,%eax
2542	shll	$3,%esi
2543	movl	%edx,%ebx
2544	shll	$3,%edi
2545	xorl	%esi,%eax
2546	shrl	$13,%ecx
2547	xorl	%edi,%ebx
2548	shrl	$13,%edx
2549	xorl	%ecx,%eax
2550	shll	$10,%esi
2551	xorl	%edx,%ebx
2552	shll	$10,%edi
2553	xorl	%esi,%ebx
2554	shrl	$10,%ecx
2555	xorl	%edi,%eax
2556	shrl	$10,%edx
2557	xorl	%ecx,%ebx
2558	shll	$13,%edi
2559	xorl	%edx,%eax
2560	xorl	%edi,%eax
2561	movl	320(%esp),%ecx
2562	movl	324(%esp),%edx
2563	addl	(%esp),%eax
2564	adcl	4(%esp),%ebx
2565	movl	248(%esp),%esi
2566	movl	252(%esp),%edi
2567	addl	%ecx,%eax
2568	adcl	%edx,%ebx
2569	addl	%esi,%eax
2570	adcl	%edi,%ebx
2571	movl	%eax,192(%esp)
2572	movl	%ebx,196(%esp)
2573	movl	40(%esp),%ecx
2574	movl	44(%esp),%edx
2575	movl	%ecx,%esi
2576	shrl	$9,%ecx
2577	movl	%edx,%edi
2578	shrl	$9,%edx
2579	movl	%ecx,%ebx
2580	shll	$14,%esi
2581	movl	%edx,%eax
2582	shll	$14,%edi
2583	xorl	%esi,%ebx
2584	shrl	$5,%ecx
2585	xorl	%edi,%eax
2586	shrl	$5,%edx
2587	xorl	%ecx,%eax
2588	shll	$4,%esi
2589	xorl	%edx,%ebx
2590	shll	$4,%edi
2591	xorl	%esi,%ebx
2592	shrl	$4,%ecx
2593	xorl	%edi,%eax
2594	shrl	$4,%edx
2595	xorl	%ecx,%eax
2596	shll	$5,%esi
2597	xorl	%edx,%ebx
2598	shll	$5,%edi
2599	xorl	%esi,%eax
2600	xorl	%edi,%ebx
2601	movl	48(%esp),%ecx
2602	movl	52(%esp),%edx
2603	movl	56(%esp),%esi
2604	movl	60(%esp),%edi
2605	addl	64(%esp),%eax
2606	adcl	68(%esp),%ebx
2607	xorl	%esi,%ecx
2608	xorl	%edi,%edx
2609	andl	40(%esp),%ecx
2610	andl	44(%esp),%edx
2611	addl	192(%esp),%eax
2612	adcl	196(%esp),%ebx
2613	xorl	%esi,%ecx
2614	xorl	%edi,%edx
2615	movl	(%ebp),%esi
2616	movl	4(%ebp),%edi
2617	addl	%ecx,%eax
2618	adcl	%edx,%ebx
2619	movl	32(%esp),%ecx
2620	movl	36(%esp),%edx
2621	addl	%esi,%eax
2622	adcl	%edi,%ebx
2623	movl	%eax,(%esp)
2624	movl	%ebx,4(%esp)
2625	addl	%ecx,%eax
2626	adcl	%edx,%ebx
2627	movl	8(%esp),%ecx
2628	movl	12(%esp),%edx
2629	movl	%eax,32(%esp)
2630	movl	%ebx,36(%esp)
2631	movl	%ecx,%esi
2632	shrl	$2,%ecx
2633	movl	%edx,%edi
2634	shrl	$2,%edx
2635	movl	%ecx,%ebx
2636	shll	$4,%esi
2637	movl	%edx,%eax
2638	shll	$4,%edi
2639	xorl	%esi,%ebx
2640	shrl	$5,%ecx
2641	xorl	%edi,%eax
2642	shrl	$5,%edx
2643	xorl	%ecx,%ebx
2644	shll	$21,%esi
2645	xorl	%edx,%eax
2646	shll	$21,%edi
2647	xorl	%esi,%eax
2648	shrl	$21,%ecx
2649	xorl	%edi,%ebx
2650	shrl	$21,%edx
2651	xorl	%ecx,%eax
2652	shll	$5,%esi
2653	xorl	%edx,%ebx
2654	shll	$5,%edi
2655	xorl	%esi,%eax
2656	xorl	%edi,%ebx
2657	movl	8(%esp),%ecx
2658	movl	12(%esp),%edx
2659	movl	16(%esp),%esi
2660	movl	20(%esp),%edi
2661	addl	(%esp),%eax
2662	adcl	4(%esp),%ebx
2663	orl	%esi,%ecx
2664	orl	%edi,%edx
2665	andl	24(%esp),%ecx
2666	andl	28(%esp),%edx
2667	andl	8(%esp),%esi
2668	andl	12(%esp),%edi
2669	orl	%esi,%ecx
2670	orl	%edi,%edx
2671	addl	%ecx,%eax
2672	adcl	%edx,%ebx
2673	movl	%eax,(%esp)
2674	movl	%ebx,4(%esp)
2675	movb	(%ebp),%dl
2676	subl	$8,%esp
2677	leal	8(%ebp),%ebp
2678	cmpb	$23,%dl
2679	jne	.L01016_79_x86
2680	movl	840(%esp),%esi
2681	movl	844(%esp),%edi
2682	movl	(%esi),%eax
2683	movl	4(%esi),%ebx
2684	movl	8(%esi),%ecx
2685	movl	12(%esi),%edx
2686	addl	8(%esp),%eax
2687	adcl	12(%esp),%ebx
2688	movl	%eax,(%esi)
2689	movl	%ebx,4(%esi)
2690	addl	16(%esp),%ecx
2691	adcl	20(%esp),%edx
2692	movl	%ecx,8(%esi)
2693	movl	%edx,12(%esi)
2694	movl	16(%esi),%eax
2695	movl	20(%esi),%ebx
2696	movl	24(%esi),%ecx
2697	movl	28(%esi),%edx
2698	addl	24(%esp),%eax
2699	adcl	28(%esp),%ebx
2700	movl	%eax,16(%esi)
2701	movl	%ebx,20(%esi)
2702	addl	32(%esp),%ecx
2703	adcl	36(%esp),%edx
2704	movl	%ecx,24(%esi)
2705	movl	%edx,28(%esi)
2706	movl	32(%esi),%eax
2707	movl	36(%esi),%ebx
2708	movl	40(%esi),%ecx
2709	movl	44(%esi),%edx
2710	addl	40(%esp),%eax
2711	adcl	44(%esp),%ebx
2712	movl	%eax,32(%esi)
2713	movl	%ebx,36(%esi)
2714	addl	48(%esp),%ecx
2715	adcl	52(%esp),%edx
2716	movl	%ecx,40(%esi)
2717	movl	%edx,44(%esi)
2718	movl	48(%esi),%eax
2719	movl	52(%esi),%ebx
2720	movl	56(%esi),%ecx
2721	movl	60(%esi),%edx
2722	addl	56(%esp),%eax
2723	adcl	60(%esp),%ebx
2724	movl	%eax,48(%esi)
2725	movl	%ebx,52(%esi)
2726	addl	64(%esp),%ecx
2727	adcl	68(%esp),%edx
2728	movl	%ecx,56(%esi)
2729	movl	%edx,60(%esi)
2730	addl	$840,%esp
2731	subl	$640,%ebp
2732	cmpl	8(%esp),%edi
2733	jb	.L002loop_x86
2734	movl	12(%esp),%esp
2735	popl	%edi
2736	popl	%esi
2737	popl	%ebx
2738	popl	%ebp
2739	ret
2740.align	64
2741.L001K512:
2742.long	3609767458,1116352408
2743.long	602891725,1899447441
2744.long	3964484399,3049323471
2745.long	2173295548,3921009573
2746.long	4081628472,961987163
2747.long	3053834265,1508970993
2748.long	2937671579,2453635748
2749.long	3664609560,2870763221
2750.long	2734883394,3624381080
2751.long	1164996542,310598401
2752.long	1323610764,607225278
2753.long	3590304994,1426881987
2754.long	4068182383,1925078388
2755.long	991336113,2162078206
2756.long	633803317,2614888103
2757.long	3479774868,3248222580
2758.long	2666613458,3835390401
2759.long	944711139,4022224774
2760.long	2341262773,264347078
2761.long	2007800933,604807628
2762.long	1495990901,770255983
2763.long	1856431235,1249150122
2764.long	3175218132,1555081692
2765.long	2198950837,1996064986
2766.long	3999719339,2554220882
2767.long	766784016,2821834349
2768.long	2566594879,2952996808
2769.long	3203337956,3210313671
2770.long	1034457026,3336571891
2771.long	2466948901,3584528711
2772.long	3758326383,113926993
2773.long	168717936,338241895
2774.long	1188179964,666307205
2775.long	1546045734,773529912
2776.long	1522805485,1294757372
2777.long	2643833823,1396182291
2778.long	2343527390,1695183700
2779.long	1014477480,1986661051
2780.long	1206759142,2177026350
2781.long	344077627,2456956037
2782.long	1290863460,2730485921
2783.long	3158454273,2820302411
2784.long	3505952657,3259730800
2785.long	106217008,3345764771
2786.long	3606008344,3516065817
2787.long	1432725776,3600352804
2788.long	1467031594,4094571909
2789.long	851169720,275423344
2790.long	3100823752,430227734
2791.long	1363258195,506948616
2792.long	3750685593,659060556
2793.long	3785050280,883997877
2794.long	3318307427,958139571
2795.long	3812723403,1322822218
2796.long	2003034995,1537002063
2797.long	3602036899,1747873779
2798.long	1575990012,1955562222
2799.long	1125592928,2024104815
2800.long	2716904306,2227730452
2801.long	442776044,2361852424
2802.long	593698344,2428436474
2803.long	3733110249,2756734187
2804.long	2999351573,3204031479
2805.long	3815920427,3329325298
2806.long	3928383900,3391569614
2807.long	566280711,3515267271
2808.long	3454069534,3940187606
2809.long	4000239992,4118630271
2810.long	1914138554,116418474
2811.long	2731055270,174292421
2812.long	3203993006,289380356
2813.long	320620315,460393269
2814.long	587496836,685471733
2815.long	1086792851,852142971
2816.long	365543100,1017036298
2817.long	2618297676,1126000580
2818.long	3409855158,1288033470
2819.long	4234509866,1501505948
2820.long	987167468,1607167915
2821.long	1246189591,1816402316
2822.long	67438087,66051
2823.long	202182159,134810123
2824.size	sha512_block_data_order,.-.L_sha512_block_data_order_begin
2825.byte	83,72,65,53,49,50,32,98,108,111,99,107,32,116,114,97
2826.byte	110,115,102,111,114,109,32,102,111,114,32,120,56,54,44,32
2827.byte	67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97
2828.byte	112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103
2829.byte	62,0
2830.comm	OPENSSL_ia32cap_P,16,4
2831#else
2832.text
2833.globl	sha512_block_data_order
2834.type	sha512_block_data_order,@function
2835.align	16
2836sha512_block_data_order:
2837.L_sha512_block_data_order_begin:
2838	pushl	%ebp
2839	pushl	%ebx
2840	pushl	%esi
2841	pushl	%edi
2842	movl	20(%esp),%esi
2843	movl	24(%esp),%edi
2844	movl	28(%esp),%eax
2845	movl	%esp,%ebx
2846	call	.L000pic_point
2847.L000pic_point:
2848	popl	%ebp
2849	leal	.L001K512-.L000pic_point(%ebp),%ebp
2850	subl	$16,%esp
2851	andl	$-64,%esp
2852	shll	$7,%eax
2853	addl	%edi,%eax
2854	movl	%esi,(%esp)
2855	movl	%edi,4(%esp)
2856	movl	%eax,8(%esp)
2857	movl	%ebx,12(%esp)
2858	leal	OPENSSL_ia32cap_P,%edx
2859	movl	(%edx),%ecx
2860	testl	$67108864,%ecx
2861	jz	.L002loop_x86
2862	movl	4(%edx),%edx
2863	movq	(%esi),%mm0
2864	andl	$16777216,%ecx
2865	movq	8(%esi),%mm1
2866	andl	$512,%edx
2867	movq	16(%esi),%mm2
2868	orl	%edx,%ecx
2869	movq	24(%esi),%mm3
2870	movq	32(%esi),%mm4
2871	movq	40(%esi),%mm5
2872	movq	48(%esi),%mm6
2873	movq	56(%esi),%mm7
2874	cmpl	$16777728,%ecx
2875	je	.L003SSSE3
2876	subl	$80,%esp
2877	jmp	.L004loop_sse2
2878.align	16
2879.L004loop_sse2:
2880	movq	%mm1,8(%esp)
2881	movq	%mm2,16(%esp)
2882	movq	%mm3,24(%esp)
2883	movq	%mm5,40(%esp)
2884	movq	%mm6,48(%esp)
2885	pxor	%mm1,%mm2
2886	movq	%mm7,56(%esp)
2887	movq	%mm0,%mm3
2888	movl	(%edi),%eax
2889	movl	4(%edi),%ebx
2890	addl	$8,%edi
2891	movl	$15,%edx
2892	bswap	%eax
2893	bswap	%ebx
2894	jmp	.L00500_14_sse2
2895.align	16
2896.L00500_14_sse2:
2897	movd	%eax,%mm1
2898	movl	(%edi),%eax
2899	movd	%ebx,%mm7
2900	movl	4(%edi),%ebx
2901	addl	$8,%edi
2902	bswap	%eax
2903	bswap	%ebx
2904	punpckldq	%mm1,%mm7
2905	movq	%mm4,%mm1
2906	pxor	%mm6,%mm5
2907	psrlq	$14,%mm1
2908	movq	%mm4,32(%esp)
2909	pand	%mm4,%mm5
2910	psllq	$23,%mm4
2911	movq	%mm3,%mm0
2912	movq	%mm7,72(%esp)
2913	movq	%mm1,%mm3
2914	psrlq	$4,%mm1
2915	pxor	%mm6,%mm5
2916	pxor	%mm4,%mm3
2917	psllq	$23,%mm4
2918	pxor	%mm1,%mm3
2919	movq	%mm0,(%esp)
2920	paddq	%mm5,%mm7
2921	pxor	%mm4,%mm3
2922	psrlq	$23,%mm1
2923	paddq	56(%esp),%mm7
2924	pxor	%mm1,%mm3
2925	psllq	$4,%mm4
2926	paddq	(%ebp),%mm7
2927	pxor	%mm4,%mm3
2928	movq	24(%esp),%mm4
2929	paddq	%mm7,%mm3
2930	movq	%mm0,%mm5
2931	psrlq	$28,%mm5
2932	paddq	%mm3,%mm4
2933	movq	%mm0,%mm6
2934	movq	%mm5,%mm7
2935	psllq	$25,%mm6
2936	movq	8(%esp),%mm1
2937	psrlq	$6,%mm5
2938	pxor	%mm6,%mm7
2939	subl	$8,%esp
2940	psllq	$5,%mm6
2941	pxor	%mm5,%mm7
2942	pxor	%mm1,%mm0
2943	psrlq	$5,%mm5
2944	pxor	%mm6,%mm7
2945	pand	%mm0,%mm2
2946	psllq	$6,%mm6
2947	pxor	%mm5,%mm7
2948	pxor	%mm1,%mm2
2949	pxor	%mm7,%mm6
2950	movq	40(%esp),%mm5
2951	paddq	%mm2,%mm3
2952	movq	%mm0,%mm2
2953	addl	$8,%ebp
2954	paddq	%mm6,%mm3
2955	movq	48(%esp),%mm6
2956	decl	%edx
2957	jnz	.L00500_14_sse2
2958	movd	%eax,%mm1
2959	movd	%ebx,%mm7
2960	punpckldq	%mm1,%mm7
2961	movq	%mm4,%mm1
2962	pxor	%mm6,%mm5
2963	psrlq	$14,%mm1
2964	movq	%mm4,32(%esp)
2965	pand	%mm4,%mm5
2966	psllq	$23,%mm4
2967	movq	%mm3,%mm0
2968	movq	%mm7,72(%esp)
2969	movq	%mm1,%mm3
2970	psrlq	$4,%mm1
2971	pxor	%mm6,%mm5
2972	pxor	%mm4,%mm3
2973	psllq	$23,%mm4
2974	pxor	%mm1,%mm3
2975	movq	%mm0,(%esp)
2976	paddq	%mm5,%mm7
2977	pxor	%mm4,%mm3
2978	psrlq	$23,%mm1
2979	paddq	56(%esp),%mm7
2980	pxor	%mm1,%mm3
2981	psllq	$4,%mm4
2982	paddq	(%ebp),%mm7
2983	pxor	%mm4,%mm3
2984	movq	24(%esp),%mm4
2985	paddq	%mm7,%mm3
2986	movq	%mm0,%mm5
2987	psrlq	$28,%mm5
2988	paddq	%mm3,%mm4
2989	movq	%mm0,%mm6
2990	movq	%mm5,%mm7
2991	psllq	$25,%mm6
2992	movq	8(%esp),%mm1
2993	psrlq	$6,%mm5
2994	pxor	%mm6,%mm7
2995	subl	$8,%esp
2996	psllq	$5,%mm6
2997	pxor	%mm5,%mm7
2998	pxor	%mm1,%mm0
2999	psrlq	$5,%mm5
3000	pxor	%mm6,%mm7
3001	pand	%mm0,%mm2
3002	psllq	$6,%mm6
3003	pxor	%mm5,%mm7
3004	pxor	%mm1,%mm2
3005	pxor	%mm7,%mm6
3006	movq	192(%esp),%mm7
3007	paddq	%mm2,%mm3
3008	movq	%mm0,%mm2
3009	addl	$8,%ebp
3010	paddq	%mm6,%mm3
3011	pxor	%mm0,%mm0
3012	movl	$32,%edx
3013	jmp	.L00616_79_sse2
3014.align	16
3015.L00616_79_sse2:
3016	movq	88(%esp),%mm5
3017	movq	%mm7,%mm1
3018	psrlq	$1,%mm7
3019	movq	%mm5,%mm6
3020	psrlq	$6,%mm5
3021	psllq	$56,%mm1
3022	paddq	%mm3,%mm0
3023	movq	%mm7,%mm3
3024	psrlq	$6,%mm7
3025	pxor	%mm1,%mm3
3026	psllq	$7,%mm1
3027	pxor	%mm7,%mm3
3028	psrlq	$1,%mm7
3029	pxor	%mm1,%mm3
3030	movq	%mm5,%mm1
3031	psrlq	$13,%mm5
3032	pxor	%mm3,%mm7
3033	psllq	$3,%mm6
3034	pxor	%mm5,%mm1
3035	paddq	200(%esp),%mm7
3036	pxor	%mm6,%mm1
3037	psrlq	$42,%mm5
3038	paddq	128(%esp),%mm7
3039	pxor	%mm5,%mm1
3040	psllq	$42,%mm6
3041	movq	40(%esp),%mm5
3042	pxor	%mm6,%mm1
3043	movq	48(%esp),%mm6
3044	paddq	%mm1,%mm7
3045	movq	%mm4,%mm1
3046	pxor	%mm6,%mm5
3047	psrlq	$14,%mm1
3048	movq	%mm4,32(%esp)
3049	pand	%mm4,%mm5
3050	psllq	$23,%mm4
3051	movq	%mm7,72(%esp)
3052	movq	%mm1,%mm3
3053	psrlq	$4,%mm1
3054	pxor	%mm6,%mm5
3055	pxor	%mm4,%mm3
3056	psllq	$23,%mm4
3057	pxor	%mm1,%mm3
3058	movq	%mm0,(%esp)
3059	paddq	%mm5,%mm7
3060	pxor	%mm4,%mm3
3061	psrlq	$23,%mm1
3062	paddq	56(%esp),%mm7
3063	pxor	%mm1,%mm3
3064	psllq	$4,%mm4
3065	paddq	(%ebp),%mm7
3066	pxor	%mm4,%mm3
3067	movq	24(%esp),%mm4
3068	paddq	%mm7,%mm3
3069	movq	%mm0,%mm5
3070	psrlq	$28,%mm5
3071	paddq	%mm3,%mm4
3072	movq	%mm0,%mm6
3073	movq	%mm5,%mm7
3074	psllq	$25,%mm6
3075	movq	8(%esp),%mm1
3076	psrlq	$6,%mm5
3077	pxor	%mm6,%mm7
3078	subl	$8,%esp
3079	psllq	$5,%mm6
3080	pxor	%mm5,%mm7
3081	pxor	%mm1,%mm0
3082	psrlq	$5,%mm5
3083	pxor	%mm6,%mm7
3084	pand	%mm0,%mm2
3085	psllq	$6,%mm6
3086	pxor	%mm5,%mm7
3087	pxor	%mm1,%mm2
3088	pxor	%mm7,%mm6
3089	movq	192(%esp),%mm7
3090	paddq	%mm6,%mm2
3091	addl	$8,%ebp
3092	movq	88(%esp),%mm5
3093	movq	%mm7,%mm1
3094	psrlq	$1,%mm7
3095	movq	%mm5,%mm6
3096	psrlq	$6,%mm5
3097	psllq	$56,%mm1
3098	paddq	%mm3,%mm2
3099	movq	%mm7,%mm3
3100	psrlq	$6,%mm7
3101	pxor	%mm1,%mm3
3102	psllq	$7,%mm1
3103	pxor	%mm7,%mm3
3104	psrlq	$1,%mm7
3105	pxor	%mm1,%mm3
3106	movq	%mm5,%mm1
3107	psrlq	$13,%mm5
3108	pxor	%mm3,%mm7
3109	psllq	$3,%mm6
3110	pxor	%mm5,%mm1
3111	paddq	200(%esp),%mm7
3112	pxor	%mm6,%mm1
3113	psrlq	$42,%mm5
3114	paddq	128(%esp),%mm7
3115	pxor	%mm5,%mm1
3116	psllq	$42,%mm6
3117	movq	40(%esp),%mm5
3118	pxor	%mm6,%mm1
3119	movq	48(%esp),%mm6
3120	paddq	%mm1,%mm7
3121	movq	%mm4,%mm1
3122	pxor	%mm6,%mm5
3123	psrlq	$14,%mm1
3124	movq	%mm4,32(%esp)
3125	pand	%mm4,%mm5
3126	psllq	$23,%mm4
3127	movq	%mm7,72(%esp)
3128	movq	%mm1,%mm3
3129	psrlq	$4,%mm1
3130	pxor	%mm6,%mm5
3131	pxor	%mm4,%mm3
3132	psllq	$23,%mm4
3133	pxor	%mm1,%mm3
3134	movq	%mm2,(%esp)
3135	paddq	%mm5,%mm7
3136	pxor	%mm4,%mm3
3137	psrlq	$23,%mm1
3138	paddq	56(%esp),%mm7
3139	pxor	%mm1,%mm3
3140	psllq	$4,%mm4
3141	paddq	(%ebp),%mm7
3142	pxor	%mm4,%mm3
3143	movq	24(%esp),%mm4
3144	paddq	%mm7,%mm3
3145	movq	%mm2,%mm5
3146	psrlq	$28,%mm5
3147	paddq	%mm3,%mm4
3148	movq	%mm2,%mm6
3149	movq	%mm5,%mm7
3150	psllq	$25,%mm6
3151	movq	8(%esp),%mm1
3152	psrlq	$6,%mm5
3153	pxor	%mm6,%mm7
3154	subl	$8,%esp
3155	psllq	$5,%mm6
3156	pxor	%mm5,%mm7
3157	pxor	%mm1,%mm2
3158	psrlq	$5,%mm5
3159	pxor	%mm6,%mm7
3160	pand	%mm2,%mm0
3161	psllq	$6,%mm6
3162	pxor	%mm5,%mm7
3163	pxor	%mm1,%mm0
3164	pxor	%mm7,%mm6
3165	movq	192(%esp),%mm7
3166	paddq	%mm6,%mm0
3167	addl	$8,%ebp
3168	decl	%edx
3169	jnz	.L00616_79_sse2
3170	paddq	%mm3,%mm0
3171	movq	8(%esp),%mm1
3172	movq	24(%esp),%mm3
3173	movq	40(%esp),%mm5
3174	movq	48(%esp),%mm6
3175	movq	56(%esp),%mm7
3176	pxor	%mm1,%mm2
3177	paddq	(%esi),%mm0
3178	paddq	8(%esi),%mm1
3179	paddq	16(%esi),%mm2
3180	paddq	24(%esi),%mm3
3181	paddq	32(%esi),%mm4
3182	paddq	40(%esi),%mm5
3183	paddq	48(%esi),%mm6
3184	paddq	56(%esi),%mm7
3185	movl	$640,%eax
3186	movq	%mm0,(%esi)
3187	movq	%mm1,8(%esi)
3188	movq	%mm2,16(%esi)
3189	movq	%mm3,24(%esi)
3190	movq	%mm4,32(%esi)
3191	movq	%mm5,40(%esi)
3192	movq	%mm6,48(%esi)
3193	movq	%mm7,56(%esi)
3194	leal	(%esp,%eax,1),%esp
3195	subl	%eax,%ebp
3196	cmpl	88(%esp),%edi
3197	jb	.L004loop_sse2
3198	movl	92(%esp),%esp
3199	emms
3200	popl	%edi
3201	popl	%esi
3202	popl	%ebx
3203	popl	%ebp
3204	ret
3205.align	32
3206.L003SSSE3:
3207	leal	-64(%esp),%edx
3208	subl	$256,%esp
3209	movdqa	640(%ebp),%xmm1
3210	movdqu	(%edi),%xmm0
3211.byte	102,15,56,0,193
3212	movdqa	(%ebp),%xmm3
3213	movdqa	%xmm1,%xmm2
3214	movdqu	16(%edi),%xmm1
3215	paddq	%xmm0,%xmm3
3216.byte	102,15,56,0,202
3217	movdqa	%xmm3,-128(%edx)
3218	movdqa	16(%ebp),%xmm4
3219	movdqa	%xmm2,%xmm3
3220	movdqu	32(%edi),%xmm2
3221	paddq	%xmm1,%xmm4
3222.byte	102,15,56,0,211
3223	movdqa	%xmm4,-112(%edx)
3224	movdqa	32(%ebp),%xmm5
3225	movdqa	%xmm3,%xmm4
3226	movdqu	48(%edi),%xmm3
3227	paddq	%xmm2,%xmm5
3228.byte	102,15,56,0,220
3229	movdqa	%xmm5,-96(%edx)
3230	movdqa	48(%ebp),%xmm6
3231	movdqa	%xmm4,%xmm5
3232	movdqu	64(%edi),%xmm4
3233	paddq	%xmm3,%xmm6
3234.byte	102,15,56,0,229
3235	movdqa	%xmm6,-80(%edx)
3236	movdqa	64(%ebp),%xmm7
3237	movdqa	%xmm5,%xmm6
3238	movdqu	80(%edi),%xmm5
3239	paddq	%xmm4,%xmm7
3240.byte	102,15,56,0,238
3241	movdqa	%xmm7,-64(%edx)
3242	movdqa	%xmm0,(%edx)
3243	movdqa	80(%ebp),%xmm0
3244	movdqa	%xmm6,%xmm7
3245	movdqu	96(%edi),%xmm6
3246	paddq	%xmm5,%xmm0
3247.byte	102,15,56,0,247
3248	movdqa	%xmm0,-48(%edx)
3249	movdqa	%xmm1,16(%edx)
3250	movdqa	96(%ebp),%xmm1
3251	movdqa	%xmm7,%xmm0
3252	movdqu	112(%edi),%xmm7
3253	paddq	%xmm6,%xmm1
3254.byte	102,15,56,0,248
3255	movdqa	%xmm1,-32(%edx)
3256	movdqa	%xmm2,32(%edx)
3257	movdqa	112(%ebp),%xmm2
3258	movdqa	(%edx),%xmm0
3259	paddq	%xmm7,%xmm2
3260	movdqa	%xmm2,-16(%edx)
3261	nop
3262.align	32
3263.L007loop_ssse3:
3264	movdqa	16(%edx),%xmm2
3265	movdqa	%xmm3,48(%edx)
3266	leal	128(%ebp),%ebp
3267	movq	%mm1,8(%esp)
3268	movl	%edi,%ebx
3269	movq	%mm2,16(%esp)
3270	leal	128(%edi),%edi
3271	movq	%mm3,24(%esp)
3272	cmpl	%eax,%edi
3273	movq	%mm5,40(%esp)
3274	cmovbl	%edi,%ebx
3275	movq	%mm6,48(%esp)
3276	movl	$4,%ecx
3277	pxor	%mm1,%mm2
3278	movq	%mm7,56(%esp)
3279	pxor	%mm3,%mm3
3280	jmp	.L00800_47_ssse3
3281.align	32
3282.L00800_47_ssse3:
3283	movdqa	%xmm5,%xmm3
3284	movdqa	%xmm2,%xmm1
3285.byte	102,15,58,15,208,8
3286	movdqa	%xmm4,(%edx)
3287.byte	102,15,58,15,220,8
3288	movdqa	%xmm2,%xmm4
3289	psrlq	$7,%xmm2
3290	paddq	%xmm3,%xmm0
3291	movdqa	%xmm4,%xmm3
3292	psrlq	$1,%xmm4
3293	psllq	$56,%xmm3
3294	pxor	%xmm4,%xmm2
3295	psrlq	$7,%xmm4
3296	pxor	%xmm3,%xmm2
3297	psllq	$7,%xmm3
3298	pxor	%xmm4,%xmm2
3299	movdqa	%xmm7,%xmm4
3300	pxor	%xmm3,%xmm2
3301	movdqa	%xmm7,%xmm3
3302	psrlq	$6,%xmm4
3303	paddq	%xmm2,%xmm0
3304	movdqa	%xmm7,%xmm2
3305	psrlq	$19,%xmm3
3306	psllq	$3,%xmm2
3307	pxor	%xmm3,%xmm4
3308	psrlq	$42,%xmm3
3309	pxor	%xmm2,%xmm4
3310	psllq	$42,%xmm2
3311	pxor	%xmm3,%xmm4
3312	movdqa	32(%edx),%xmm3
3313	pxor	%xmm2,%xmm4
3314	movdqa	(%ebp),%xmm2
3315	movq	%mm4,%mm1
3316	paddq	%xmm4,%xmm0
3317	movq	-128(%edx),%mm7
3318	pxor	%mm6,%mm5
3319	psrlq	$14,%mm1
3320	movq	%mm4,32(%esp)
3321	paddq	%xmm0,%xmm2
3322	pand	%mm4,%mm5
3323	psllq	$23,%mm4
3324	paddq	%mm3,%mm0
3325	movq	%mm1,%mm3
3326	psrlq	$4,%mm1
3327	pxor	%mm6,%mm5
3328	pxor	%mm4,%mm3
3329	psllq	$23,%mm4
3330	pxor	%mm1,%mm3
3331	movq	%mm0,(%esp)
3332	paddq	%mm5,%mm7
3333	pxor	%mm4,%mm3
3334	psrlq	$23,%mm1
3335	paddq	56(%esp),%mm7
3336	pxor	%mm1,%mm3
3337	psllq	$4,%mm4
3338	pxor	%mm4,%mm3
3339	movq	24(%esp),%mm4
3340	paddq	%mm7,%mm3
3341	movq	%mm0,%mm5
3342	psrlq	$28,%mm5
3343	paddq	%mm3,%mm4
3344	movq	%mm0,%mm6
3345	movq	%mm5,%mm7
3346	psllq	$25,%mm6
3347	movq	8(%esp),%mm1
3348	psrlq	$6,%mm5
3349	pxor	%mm6,%mm7
3350	psllq	$5,%mm6
3351	pxor	%mm5,%mm7
3352	pxor	%mm1,%mm0
3353	psrlq	$5,%mm5
3354	pxor	%mm6,%mm7
3355	pand	%mm0,%mm2
3356	psllq	$6,%mm6
3357	pxor	%mm5,%mm7
3358	pxor	%mm1,%mm2
3359	pxor	%mm7,%mm6
3360	movq	32(%esp),%mm5
3361	paddq	%mm6,%mm2
3362	movq	40(%esp),%mm6
3363	movq	%mm4,%mm1
3364	movq	-120(%edx),%mm7
3365	pxor	%mm6,%mm5
3366	psrlq	$14,%mm1
3367	movq	%mm4,24(%esp)
3368	pand	%mm4,%mm5
3369	psllq	$23,%mm4
3370	paddq	%mm3,%mm2
3371	movq	%mm1,%mm3
3372	psrlq	$4,%mm1
3373	pxor	%mm6,%mm5
3374	pxor	%mm4,%mm3
3375	psllq	$23,%mm4
3376	pxor	%mm1,%mm3
3377	movq	%mm2,56(%esp)
3378	paddq	%mm5,%mm7
3379	pxor	%mm4,%mm3
3380	psrlq	$23,%mm1
3381	paddq	48(%esp),%mm7
3382	pxor	%mm1,%mm3
3383	psllq	$4,%mm4
3384	pxor	%mm4,%mm3
3385	movq	16(%esp),%mm4
3386	paddq	%mm7,%mm3
3387	movq	%mm2,%mm5
3388	psrlq	$28,%mm5
3389	paddq	%mm3,%mm4
3390	movq	%mm2,%mm6
3391	movq	%mm5,%mm7
3392	psllq	$25,%mm6
3393	movq	(%esp),%mm1
3394	psrlq	$6,%mm5
3395	pxor	%mm6,%mm7
3396	psllq	$5,%mm6
3397	pxor	%mm5,%mm7
3398	pxor	%mm1,%mm2
3399	psrlq	$5,%mm5
3400	pxor	%mm6,%mm7
3401	pand	%mm2,%mm0
3402	psllq	$6,%mm6
3403	pxor	%mm5,%mm7
3404	pxor	%mm1,%mm0
3405	pxor	%mm7,%mm6
3406	movq	24(%esp),%mm5
3407	paddq	%mm6,%mm0
3408	movq	32(%esp),%mm6
3409	movdqa	%xmm2,-128(%edx)
3410	movdqa	%xmm6,%xmm4
3411	movdqa	%xmm3,%xmm2
3412.byte	102,15,58,15,217,8
3413	movdqa	%xmm5,16(%edx)
3414.byte	102,15,58,15,229,8
3415	movdqa	%xmm3,%xmm5
3416	psrlq	$7,%xmm3
3417	paddq	%xmm4,%xmm1
3418	movdqa	%xmm5,%xmm4
3419	psrlq	$1,%xmm5
3420	psllq	$56,%xmm4
3421	pxor	%xmm5,%xmm3
3422	psrlq	$7,%xmm5
3423	pxor	%xmm4,%xmm3
3424	psllq	$7,%xmm4
3425	pxor	%xmm5,%xmm3
3426	movdqa	%xmm0,%xmm5
3427	pxor	%xmm4,%xmm3
3428	movdqa	%xmm0,%xmm4
3429	psrlq	$6,%xmm5
3430	paddq	%xmm3,%xmm1
3431	movdqa	%xmm0,%xmm3
3432	psrlq	$19,%xmm4
3433	psllq	$3,%xmm3
3434	pxor	%xmm4,%xmm5
3435	psrlq	$42,%xmm4
3436	pxor	%xmm3,%xmm5
3437	psllq	$42,%xmm3
3438	pxor	%xmm4,%xmm5
3439	movdqa	48(%edx),%xmm4
3440	pxor	%xmm3,%xmm5
3441	movdqa	16(%ebp),%xmm3
3442	movq	%mm4,%mm1
3443	paddq	%xmm5,%xmm1
3444	movq	-112(%edx),%mm7
3445	pxor	%mm6,%mm5
3446	psrlq	$14,%mm1
3447	movq	%mm4,16(%esp)
3448	paddq	%xmm1,%xmm3
3449	pand	%mm4,%mm5
3450	psllq	$23,%mm4
3451	paddq	%mm3,%mm0
3452	movq	%mm1,%mm3
3453	psrlq	$4,%mm1
3454	pxor	%mm6,%mm5
3455	pxor	%mm4,%mm3
3456	psllq	$23,%mm4
3457	pxor	%mm1,%mm3
3458	movq	%mm0,48(%esp)
3459	paddq	%mm5,%mm7
3460	pxor	%mm4,%mm3
3461	psrlq	$23,%mm1
3462	paddq	40(%esp),%mm7
3463	pxor	%mm1,%mm3
3464	psllq	$4,%mm4
3465	pxor	%mm4,%mm3
3466	movq	8(%esp),%mm4
3467	paddq	%mm7,%mm3
3468	movq	%mm0,%mm5
3469	psrlq	$28,%mm5
3470	paddq	%mm3,%mm4
3471	movq	%mm0,%mm6
3472	movq	%mm5,%mm7
3473	psllq	$25,%mm6
3474	movq	56(%esp),%mm1
3475	psrlq	$6,%mm5
3476	pxor	%mm6,%mm7
3477	psllq	$5,%mm6
3478	pxor	%mm5,%mm7
3479	pxor	%mm1,%mm0
3480	psrlq	$5,%mm5
3481	pxor	%mm6,%mm7
3482	pand	%mm0,%mm2
3483	psllq	$6,%mm6
3484	pxor	%mm5,%mm7
3485	pxor	%mm1,%mm2
3486	pxor	%mm7,%mm6
3487	movq	16(%esp),%mm5
3488	paddq	%mm6,%mm2
3489	movq	24(%esp),%mm6
3490	movq	%mm4,%mm1
3491	movq	-104(%edx),%mm7
3492	pxor	%mm6,%mm5
3493	psrlq	$14,%mm1
3494	movq	%mm4,8(%esp)
3495	pand	%mm4,%mm5
3496	psllq	$23,%mm4
3497	paddq	%mm3,%mm2
3498	movq	%mm1,%mm3
3499	psrlq	$4,%mm1
3500	pxor	%mm6,%mm5
3501	pxor	%mm4,%mm3
3502	psllq	$23,%mm4
3503	pxor	%mm1,%mm3
3504	movq	%mm2,40(%esp)
3505	paddq	%mm5,%mm7
3506	pxor	%mm4,%mm3
3507	psrlq	$23,%mm1
3508	paddq	32(%esp),%mm7
3509	pxor	%mm1,%mm3
3510	psllq	$4,%mm4
3511	pxor	%mm4,%mm3
3512	movq	(%esp),%mm4
3513	paddq	%mm7,%mm3
3514	movq	%mm2,%mm5
3515	psrlq	$28,%mm5
3516	paddq	%mm3,%mm4
3517	movq	%mm2,%mm6
3518	movq	%mm5,%mm7
3519	psllq	$25,%mm6
3520	movq	48(%esp),%mm1
3521	psrlq	$6,%mm5
3522	pxor	%mm6,%mm7
3523	psllq	$5,%mm6
3524	pxor	%mm5,%mm7
3525	pxor	%mm1,%mm2
3526	psrlq	$5,%mm5
3527	pxor	%mm6,%mm7
3528	pand	%mm2,%mm0
3529	psllq	$6,%mm6
3530	pxor	%mm5,%mm7
3531	pxor	%mm1,%mm0
3532	pxor	%mm7,%mm6
3533	movq	8(%esp),%mm5
3534	paddq	%mm6,%mm0
3535	movq	16(%esp),%mm6
3536	movdqa	%xmm3,-112(%edx)
3537	movdqa	%xmm7,%xmm5
3538	movdqa	%xmm4,%xmm3
3539.byte	102,15,58,15,226,8
3540	movdqa	%xmm6,32(%edx)
3541.byte	102,15,58,15,238,8
3542	movdqa	%xmm4,%xmm6
3543	psrlq	$7,%xmm4
3544	paddq	%xmm5,%xmm2
3545	movdqa	%xmm6,%xmm5
3546	psrlq	$1,%xmm6
3547	psllq	$56,%xmm5
3548	pxor	%xmm6,%xmm4
3549	psrlq	$7,%xmm6
3550	pxor	%xmm5,%xmm4
3551	psllq	$7,%xmm5
3552	pxor	%xmm6,%xmm4
3553	movdqa	%xmm1,%xmm6
3554	pxor	%xmm5,%xmm4
3555	movdqa	%xmm1,%xmm5
3556	psrlq	$6,%xmm6
3557	paddq	%xmm4,%xmm2
3558	movdqa	%xmm1,%xmm4
3559	psrlq	$19,%xmm5
3560	psllq	$3,%xmm4
3561	pxor	%xmm5,%xmm6
3562	psrlq	$42,%xmm5
3563	pxor	%xmm4,%xmm6
3564	psllq	$42,%xmm4
3565	pxor	%xmm5,%xmm6
3566	movdqa	(%edx),%xmm5
3567	pxor	%xmm4,%xmm6
3568	movdqa	32(%ebp),%xmm4
3569	movq	%mm4,%mm1
3570	paddq	%xmm6,%xmm2
3571	movq	-96(%edx),%mm7
3572	pxor	%mm6,%mm5
3573	psrlq	$14,%mm1
3574	movq	%mm4,(%esp)
3575	paddq	%xmm2,%xmm4
3576	pand	%mm4,%mm5
3577	psllq	$23,%mm4
3578	paddq	%mm3,%mm0
3579	movq	%mm1,%mm3
3580	psrlq	$4,%mm1
3581	pxor	%mm6,%mm5
3582	pxor	%mm4,%mm3
3583	psllq	$23,%mm4
3584	pxor	%mm1,%mm3
3585	movq	%mm0,32(%esp)
3586	paddq	%mm5,%mm7
3587	pxor	%mm4,%mm3
3588	psrlq	$23,%mm1
3589	paddq	24(%esp),%mm7
3590	pxor	%mm1,%mm3
3591	psllq	$4,%mm4
3592	pxor	%mm4,%mm3
3593	movq	56(%esp),%mm4
3594	paddq	%mm7,%mm3
3595	movq	%mm0,%mm5
3596	psrlq	$28,%mm5
3597	paddq	%mm3,%mm4
3598	movq	%mm0,%mm6
3599	movq	%mm5,%mm7
3600	psllq	$25,%mm6
3601	movq	40(%esp),%mm1
3602	psrlq	$6,%mm5
3603	pxor	%mm6,%mm7
3604	psllq	$5,%mm6
3605	pxor	%mm5,%mm7
3606	pxor	%mm1,%mm0
3607	psrlq	$5,%mm5
3608	pxor	%mm6,%mm7
3609	pand	%mm0,%mm2
3610	psllq	$6,%mm6
3611	pxor	%mm5,%mm7
3612	pxor	%mm1,%mm2
3613	pxor	%mm7,%mm6
3614	movq	(%esp),%mm5
3615	paddq	%mm6,%mm2
3616	movq	8(%esp),%mm6
3617	movq	%mm4,%mm1
3618	movq	-88(%edx),%mm7
3619	pxor	%mm6,%mm5
3620	psrlq	$14,%mm1
3621	movq	%mm4,56(%esp)
3622	pand	%mm4,%mm5
3623	psllq	$23,%mm4
3624	paddq	%mm3,%mm2
3625	movq	%mm1,%mm3
3626	psrlq	$4,%mm1
3627	pxor	%mm6,%mm5
3628	pxor	%mm4,%mm3
3629	psllq	$23,%mm4
3630	pxor	%mm1,%mm3
3631	movq	%mm2,24(%esp)
3632	paddq	%mm5,%mm7
3633	pxor	%mm4,%mm3
3634	psrlq	$23,%mm1
3635	paddq	16(%esp),%mm7
3636	pxor	%mm1,%mm3
3637	psllq	$4,%mm4
3638	pxor	%mm4,%mm3
3639	movq	48(%esp),%mm4
3640	paddq	%mm7,%mm3
3641	movq	%mm2,%mm5
3642	psrlq	$28,%mm5
3643	paddq	%mm3,%mm4
3644	movq	%mm2,%mm6
3645	movq	%mm5,%mm7
3646	psllq	$25,%mm6
3647	movq	32(%esp),%mm1
3648	psrlq	$6,%mm5
3649	pxor	%mm6,%mm7
3650	psllq	$5,%mm6
3651	pxor	%mm5,%mm7
3652	pxor	%mm1,%mm2
3653	psrlq	$5,%mm5
3654	pxor	%mm6,%mm7
3655	pand	%mm2,%mm0
3656	psllq	$6,%mm6
3657	pxor	%mm5,%mm7
3658	pxor	%mm1,%mm0
3659	pxor	%mm7,%mm6
3660	movq	56(%esp),%mm5
3661	paddq	%mm6,%mm0
3662	movq	(%esp),%mm6
3663	movdqa	%xmm4,-96(%edx)
3664	movdqa	%xmm0,%xmm6
3665	movdqa	%xmm5,%xmm4
3666.byte	102,15,58,15,235,8
3667	movdqa	%xmm7,48(%edx)
3668.byte	102,15,58,15,247,8
3669	movdqa	%xmm5,%xmm7
3670	psrlq	$7,%xmm5
3671	paddq	%xmm6,%xmm3
3672	movdqa	%xmm7,%xmm6
3673	psrlq	$1,%xmm7
3674	psllq	$56,%xmm6
3675	pxor	%xmm7,%xmm5
3676	psrlq	$7,%xmm7
3677	pxor	%xmm6,%xmm5
3678	psllq	$7,%xmm6
3679	pxor	%xmm7,%xmm5
3680	movdqa	%xmm2,%xmm7
3681	pxor	%xmm6,%xmm5
3682	movdqa	%xmm2,%xmm6
3683	psrlq	$6,%xmm7
3684	paddq	%xmm5,%xmm3
3685	movdqa	%xmm2,%xmm5
3686	psrlq	$19,%xmm6
3687	psllq	$3,%xmm5
3688	pxor	%xmm6,%xmm7
3689	psrlq	$42,%xmm6
3690	pxor	%xmm5,%xmm7
3691	psllq	$42,%xmm5
3692	pxor	%xmm6,%xmm7
3693	movdqa	16(%edx),%xmm6
3694	pxor	%xmm5,%xmm7
3695	movdqa	48(%ebp),%xmm5
3696	movq	%mm4,%mm1
3697	paddq	%xmm7,%xmm3
3698	movq	-80(%edx),%mm7
3699	pxor	%mm6,%mm5
3700	psrlq	$14,%mm1
3701	movq	%mm4,48(%esp)
3702	paddq	%xmm3,%xmm5
3703	pand	%mm4,%mm5
3704	psllq	$23,%mm4
3705	paddq	%mm3,%mm0
3706	movq	%mm1,%mm3
3707	psrlq	$4,%mm1
3708	pxor	%mm6,%mm5
3709	pxor	%mm4,%mm3
3710	psllq	$23,%mm4
3711	pxor	%mm1,%mm3
3712	movq	%mm0,16(%esp)
3713	paddq	%mm5,%mm7
3714	pxor	%mm4,%mm3
3715	psrlq	$23,%mm1
3716	paddq	8(%esp),%mm7
3717	pxor	%mm1,%mm3
3718	psllq	$4,%mm4
3719	pxor	%mm4,%mm3
3720	movq	40(%esp),%mm4
3721	paddq	%mm7,%mm3
3722	movq	%mm0,%mm5
3723	psrlq	$28,%mm5
3724	paddq	%mm3,%mm4
3725	movq	%mm0,%mm6
3726	movq	%mm5,%mm7
3727	psllq	$25,%mm6
3728	movq	24(%esp),%mm1
3729	psrlq	$6,%mm5
3730	pxor	%mm6,%mm7
3731	psllq	$5,%mm6
3732	pxor	%mm5,%mm7
3733	pxor	%mm1,%mm0
3734	psrlq	$5,%mm5
3735	pxor	%mm6,%mm7
3736	pand	%mm0,%mm2
3737	psllq	$6,%mm6
3738	pxor	%mm5,%mm7
3739	pxor	%mm1,%mm2
3740	pxor	%mm7,%mm6
3741	movq	48(%esp),%mm5
3742	paddq	%mm6,%mm2
3743	movq	56(%esp),%mm6
3744	movq	%mm4,%mm1
3745	movq	-72(%edx),%mm7
3746	pxor	%mm6,%mm5
3747	psrlq	$14,%mm1
3748	movq	%mm4,40(%esp)
3749	pand	%mm4,%mm5
3750	psllq	$23,%mm4
3751	paddq	%mm3,%mm2
3752	movq	%mm1,%mm3
3753	psrlq	$4,%mm1
3754	pxor	%mm6,%mm5
3755	pxor	%mm4,%mm3
3756	psllq	$23,%mm4
3757	pxor	%mm1,%mm3
3758	movq	%mm2,8(%esp)
3759	paddq	%mm5,%mm7
3760	pxor	%mm4,%mm3
3761	psrlq	$23,%mm1
3762	paddq	(%esp),%mm7
3763	pxor	%mm1,%mm3
3764	psllq	$4,%mm4
3765	pxor	%mm4,%mm3
3766	movq	32(%esp),%mm4
3767	paddq	%mm7,%mm3
3768	movq	%mm2,%mm5
3769	psrlq	$28,%mm5
3770	paddq	%mm3,%mm4
3771	movq	%mm2,%mm6
3772	movq	%mm5,%mm7
3773	psllq	$25,%mm6
3774	movq	16(%esp),%mm1
3775	psrlq	$6,%mm5
3776	pxor	%mm6,%mm7
3777	psllq	$5,%mm6
3778	pxor	%mm5,%mm7
3779	pxor	%mm1,%mm2
3780	psrlq	$5,%mm5
3781	pxor	%mm6,%mm7
3782	pand	%mm2,%mm0
3783	psllq	$6,%mm6
3784	pxor	%mm5,%mm7
3785	pxor	%mm1,%mm0
3786	pxor	%mm7,%mm6
3787	movq	40(%esp),%mm5
3788	paddq	%mm6,%mm0
3789	movq	48(%esp),%mm6
3790	movdqa	%xmm5,-80(%edx)
3791	movdqa	%xmm1,%xmm7
3792	movdqa	%xmm6,%xmm5
3793.byte	102,15,58,15,244,8
3794	movdqa	%xmm0,(%edx)
3795.byte	102,15,58,15,248,8
3796	movdqa	%xmm6,%xmm0
3797	psrlq	$7,%xmm6
3798	paddq	%xmm7,%xmm4
3799	movdqa	%xmm0,%xmm7
3800	psrlq	$1,%xmm0
3801	psllq	$56,%xmm7
3802	pxor	%xmm0,%xmm6
3803	psrlq	$7,%xmm0
3804	pxor	%xmm7,%xmm6
3805	psllq	$7,%xmm7
3806	pxor	%xmm0,%xmm6
3807	movdqa	%xmm3,%xmm0
3808	pxor	%xmm7,%xmm6
3809	movdqa	%xmm3,%xmm7
3810	psrlq	$6,%xmm0
3811	paddq	%xmm6,%xmm4
3812	movdqa	%xmm3,%xmm6
3813	psrlq	$19,%xmm7
3814	psllq	$3,%xmm6
3815	pxor	%xmm7,%xmm0
3816	psrlq	$42,%xmm7
3817	pxor	%xmm6,%xmm0
3818	psllq	$42,%xmm6
3819	pxor	%xmm7,%xmm0
3820	movdqa	32(%edx),%xmm7
3821	pxor	%xmm6,%xmm0
3822	movdqa	64(%ebp),%xmm6
3823	movq	%mm4,%mm1
3824	paddq	%xmm0,%xmm4
3825	movq	-64(%edx),%mm7
3826	pxor	%mm6,%mm5
3827	psrlq	$14,%mm1
3828	movq	%mm4,32(%esp)
3829	paddq	%xmm4,%xmm6
3830	pand	%mm4,%mm5
3831	psllq	$23,%mm4
3832	paddq	%mm3,%mm0
3833	movq	%mm1,%mm3
3834	psrlq	$4,%mm1
3835	pxor	%mm6,%mm5
3836	pxor	%mm4,%mm3
3837	psllq	$23,%mm4
3838	pxor	%mm1,%mm3
3839	movq	%mm0,(%esp)
3840	paddq	%mm5,%mm7
3841	pxor	%mm4,%mm3
3842	psrlq	$23,%mm1
3843	paddq	56(%esp),%mm7
3844	pxor	%mm1,%mm3
3845	psllq	$4,%mm4
3846	pxor	%mm4,%mm3
3847	movq	24(%esp),%mm4
3848	paddq	%mm7,%mm3
3849	movq	%mm0,%mm5
3850	psrlq	$28,%mm5
3851	paddq	%mm3,%mm4
3852	movq	%mm0,%mm6
3853	movq	%mm5,%mm7
3854	psllq	$25,%mm6
3855	movq	8(%esp),%mm1
3856	psrlq	$6,%mm5
3857	pxor	%mm6,%mm7
3858	psllq	$5,%mm6
3859	pxor	%mm5,%mm7
3860	pxor	%mm1,%mm0
3861	psrlq	$5,%mm5
3862	pxor	%mm6,%mm7
3863	pand	%mm0,%mm2
3864	psllq	$6,%mm6
3865	pxor	%mm5,%mm7
3866	pxor	%mm1,%mm2
3867	pxor	%mm7,%mm6
3868	movq	32(%esp),%mm5
3869	paddq	%mm6,%mm2
3870	movq	40(%esp),%mm6
3871	movq	%mm4,%mm1
3872	movq	-56(%edx),%mm7
3873	pxor	%mm6,%mm5
3874	psrlq	$14,%mm1
3875	movq	%mm4,24(%esp)
3876	pand	%mm4,%mm5
3877	psllq	$23,%mm4
3878	paddq	%mm3,%mm2
3879	movq	%mm1,%mm3
3880	psrlq	$4,%mm1
3881	pxor	%mm6,%mm5
3882	pxor	%mm4,%mm3
3883	psllq	$23,%mm4
3884	pxor	%mm1,%mm3
3885	movq	%mm2,56(%esp)
3886	paddq	%mm5,%mm7
3887	pxor	%mm4,%mm3
3888	psrlq	$23,%mm1
3889	paddq	48(%esp),%mm7
3890	pxor	%mm1,%mm3
3891	psllq	$4,%mm4
3892	pxor	%mm4,%mm3
3893	movq	16(%esp),%mm4
3894	paddq	%mm7,%mm3
3895	movq	%mm2,%mm5
3896	psrlq	$28,%mm5
3897	paddq	%mm3,%mm4
3898	movq	%mm2,%mm6
3899	movq	%mm5,%mm7
3900	psllq	$25,%mm6
3901	movq	(%esp),%mm1
3902	psrlq	$6,%mm5
3903	pxor	%mm6,%mm7
3904	psllq	$5,%mm6
3905	pxor	%mm5,%mm7
3906	pxor	%mm1,%mm2
3907	psrlq	$5,%mm5
3908	pxor	%mm6,%mm7
3909	pand	%mm2,%mm0
3910	psllq	$6,%mm6
3911	pxor	%mm5,%mm7
3912	pxor	%mm1,%mm0
3913	pxor	%mm7,%mm6
3914	movq	24(%esp),%mm5
3915	paddq	%mm6,%mm0
3916	movq	32(%esp),%mm6
3917	movdqa	%xmm6,-64(%edx)
3918	movdqa	%xmm2,%xmm0
3919	movdqa	%xmm7,%xmm6
3920.byte	102,15,58,15,253,8
3921	movdqa	%xmm1,16(%edx)
3922.byte	102,15,58,15,193,8
3923	movdqa	%xmm7,%xmm1
3924	psrlq	$7,%xmm7
3925	paddq	%xmm0,%xmm5
3926	movdqa	%xmm1,%xmm0
3927	psrlq	$1,%xmm1
3928	psllq	$56,%xmm0
3929	pxor	%xmm1,%xmm7
3930	psrlq	$7,%xmm1
3931	pxor	%xmm0,%xmm7
3932	psllq	$7,%xmm0
3933	pxor	%xmm1,%xmm7
3934	movdqa	%xmm4,%xmm1
3935	pxor	%xmm0,%xmm7
3936	movdqa	%xmm4,%xmm0
3937	psrlq	$6,%xmm1
3938	paddq	%xmm7,%xmm5
3939	movdqa	%xmm4,%xmm7
3940	psrlq	$19,%xmm0
3941	psllq	$3,%xmm7
3942	pxor	%xmm0,%xmm1
3943	psrlq	$42,%xmm0
3944	pxor	%xmm7,%xmm1
3945	psllq	$42,%xmm7
3946	pxor	%xmm0,%xmm1
3947	movdqa	48(%edx),%xmm0
3948	pxor	%xmm7,%xmm1
3949	movdqa	80(%ebp),%xmm7
3950	movq	%mm4,%mm1
3951	paddq	%xmm1,%xmm5
3952	movq	-48(%edx),%mm7
3953	pxor	%mm6,%mm5
3954	psrlq	$14,%mm1
3955	movq	%mm4,16(%esp)
3956	paddq	%xmm5,%xmm7
3957	pand	%mm4,%mm5
3958	psllq	$23,%mm4
3959	paddq	%mm3,%mm0
3960	movq	%mm1,%mm3
3961	psrlq	$4,%mm1
3962	pxor	%mm6,%mm5
3963	pxor	%mm4,%mm3
3964	psllq	$23,%mm4
3965	pxor	%mm1,%mm3
3966	movq	%mm0,48(%esp)
3967	paddq	%mm5,%mm7
3968	pxor	%mm4,%mm3
3969	psrlq	$23,%mm1
3970	paddq	40(%esp),%mm7
3971	pxor	%mm1,%mm3
3972	psllq	$4,%mm4
3973	pxor	%mm4,%mm3
3974	movq	8(%esp),%mm4
3975	paddq	%mm7,%mm3
3976	movq	%mm0,%mm5
3977	psrlq	$28,%mm5
3978	paddq	%mm3,%mm4
3979	movq	%mm0,%mm6
3980	movq	%mm5,%mm7
3981	psllq	$25,%mm6
3982	movq	56(%esp),%mm1
3983	psrlq	$6,%mm5
3984	pxor	%mm6,%mm7
3985	psllq	$5,%mm6
3986	pxor	%mm5,%mm7
3987	pxor	%mm1,%mm0
3988	psrlq	$5,%mm5
3989	pxor	%mm6,%mm7
3990	pand	%mm0,%mm2
3991	psllq	$6,%mm6
3992	pxor	%mm5,%mm7
3993	pxor	%mm1,%mm2
3994	pxor	%mm7,%mm6
3995	movq	16(%esp),%mm5
3996	paddq	%mm6,%mm2
3997	movq	24(%esp),%mm6
3998	movq	%mm4,%mm1
3999	movq	-40(%edx),%mm7
4000	pxor	%mm6,%mm5
4001	psrlq	$14,%mm1
4002	movq	%mm4,8(%esp)
4003	pand	%mm4,%mm5
4004	psllq	$23,%mm4
4005	paddq	%mm3,%mm2
4006	movq	%mm1,%mm3
4007	psrlq	$4,%mm1
4008	pxor	%mm6,%mm5
4009	pxor	%mm4,%mm3
4010	psllq	$23,%mm4
4011	pxor	%mm1,%mm3
4012	movq	%mm2,40(%esp)
4013	paddq	%mm5,%mm7
4014	pxor	%mm4,%mm3
4015	psrlq	$23,%mm1
4016	paddq	32(%esp),%mm7
4017	pxor	%mm1,%mm3
4018	psllq	$4,%mm4
4019	pxor	%mm4,%mm3
4020	movq	(%esp),%mm4
4021	paddq	%mm7,%mm3
4022	movq	%mm2,%mm5
4023	psrlq	$28,%mm5
4024	paddq	%mm3,%mm4
4025	movq	%mm2,%mm6
4026	movq	%mm5,%mm7
4027	psllq	$25,%mm6
4028	movq	48(%esp),%mm1
4029	psrlq	$6,%mm5
4030	pxor	%mm6,%mm7
4031	psllq	$5,%mm6
4032	pxor	%mm5,%mm7
4033	pxor	%mm1,%mm2
4034	psrlq	$5,%mm5
4035	pxor	%mm6,%mm7
4036	pand	%mm2,%mm0
4037	psllq	$6,%mm6
4038	pxor	%mm5,%mm7
4039	pxor	%mm1,%mm0
4040	pxor	%mm7,%mm6
4041	movq	8(%esp),%mm5
4042	paddq	%mm6,%mm0
4043	movq	16(%esp),%mm6
4044	movdqa	%xmm7,-48(%edx)
4045	movdqa	%xmm3,%xmm1
4046	movdqa	%xmm0,%xmm7
4047.byte	102,15,58,15,198,8
4048	movdqa	%xmm2,32(%edx)
4049.byte	102,15,58,15,202,8
4050	movdqa	%xmm0,%xmm2
4051	psrlq	$7,%xmm0
4052	paddq	%xmm1,%xmm6
4053	movdqa	%xmm2,%xmm1
4054	psrlq	$1,%xmm2
4055	psllq	$56,%xmm1
4056	pxor	%xmm2,%xmm0
4057	psrlq	$7,%xmm2
4058	pxor	%xmm1,%xmm0
4059	psllq	$7,%xmm1
4060	pxor	%xmm2,%xmm0
4061	movdqa	%xmm5,%xmm2
4062	pxor	%xmm1,%xmm0
4063	movdqa	%xmm5,%xmm1
4064	psrlq	$6,%xmm2
4065	paddq	%xmm0,%xmm6
4066	movdqa	%xmm5,%xmm0
4067	psrlq	$19,%xmm1
4068	psllq	$3,%xmm0
4069	pxor	%xmm1,%xmm2
4070	psrlq	$42,%xmm1
4071	pxor	%xmm0,%xmm2
4072	psllq	$42,%xmm0
4073	pxor	%xmm1,%xmm2
4074	movdqa	(%edx),%xmm1
4075	pxor	%xmm0,%xmm2
4076	movdqa	96(%ebp),%xmm0
4077	movq	%mm4,%mm1
4078	paddq	%xmm2,%xmm6
4079	movq	-32(%edx),%mm7
4080	pxor	%mm6,%mm5
4081	psrlq	$14,%mm1
4082	movq	%mm4,(%esp)
4083	paddq	%xmm6,%xmm0
4084	pand	%mm4,%mm5
4085	psllq	$23,%mm4
4086	paddq	%mm3,%mm0
4087	movq	%mm1,%mm3
4088	psrlq	$4,%mm1
4089	pxor	%mm6,%mm5
4090	pxor	%mm4,%mm3
4091	psllq	$23,%mm4
4092	pxor	%mm1,%mm3
4093	movq	%mm0,32(%esp)
4094	paddq	%mm5,%mm7
4095	pxor	%mm4,%mm3
4096	psrlq	$23,%mm1
4097	paddq	24(%esp),%mm7
4098	pxor	%mm1,%mm3
4099	psllq	$4,%mm4
4100	pxor	%mm4,%mm3
4101	movq	56(%esp),%mm4
4102	paddq	%mm7,%mm3
4103	movq	%mm0,%mm5
4104	psrlq	$28,%mm5
4105	paddq	%mm3,%mm4
4106	movq	%mm0,%mm6
4107	movq	%mm5,%mm7
4108	psllq	$25,%mm6
4109	movq	40(%esp),%mm1
4110	psrlq	$6,%mm5
4111	pxor	%mm6,%mm7
4112	psllq	$5,%mm6
4113	pxor	%mm5,%mm7
4114	pxor	%mm1,%mm0
4115	psrlq	$5,%mm5
4116	pxor	%mm6,%mm7
4117	pand	%mm0,%mm2
4118	psllq	$6,%mm6
4119	pxor	%mm5,%mm7
4120	pxor	%mm1,%mm2
4121	pxor	%mm7,%mm6
4122	movq	(%esp),%mm5
4123	paddq	%mm6,%mm2
4124	movq	8(%esp),%mm6
4125	movq	%mm4,%mm1
4126	movq	-24(%edx),%mm7
4127	pxor	%mm6,%mm5
4128	psrlq	$14,%mm1
4129	movq	%mm4,56(%esp)
4130	pand	%mm4,%mm5
4131	psllq	$23,%mm4
4132	paddq	%mm3,%mm2
4133	movq	%mm1,%mm3
4134	psrlq	$4,%mm1
4135	pxor	%mm6,%mm5
4136	pxor	%mm4,%mm3
4137	psllq	$23,%mm4
4138	pxor	%mm1,%mm3
4139	movq	%mm2,24(%esp)
4140	paddq	%mm5,%mm7
4141	pxor	%mm4,%mm3
4142	psrlq	$23,%mm1
4143	paddq	16(%esp),%mm7
4144	pxor	%mm1,%mm3
4145	psllq	$4,%mm4
4146	pxor	%mm4,%mm3
4147	movq	48(%esp),%mm4
4148	paddq	%mm7,%mm3
4149	movq	%mm2,%mm5
4150	psrlq	$28,%mm5
4151	paddq	%mm3,%mm4
4152	movq	%mm2,%mm6
4153	movq	%mm5,%mm7
4154	psllq	$25,%mm6
4155	movq	32(%esp),%mm1
4156	psrlq	$6,%mm5
4157	pxor	%mm6,%mm7
4158	psllq	$5,%mm6
4159	pxor	%mm5,%mm7
4160	pxor	%mm1,%mm2
4161	psrlq	$5,%mm5
4162	pxor	%mm6,%mm7
4163	pand	%mm2,%mm0
4164	psllq	$6,%mm6
4165	pxor	%mm5,%mm7
4166	pxor	%mm1,%mm0
4167	pxor	%mm7,%mm6
4168	movq	56(%esp),%mm5
4169	paddq	%mm6,%mm0
4170	movq	(%esp),%mm6
4171	movdqa	%xmm0,-32(%edx)
4172	movdqa	%xmm4,%xmm2
4173	movdqa	%xmm1,%xmm0
4174.byte	102,15,58,15,207,8
4175	movdqa	%xmm3,48(%edx)
4176.byte	102,15,58,15,211,8
4177	movdqa	%xmm1,%xmm3
4178	psrlq	$7,%xmm1
4179	paddq	%xmm2,%xmm7
4180	movdqa	%xmm3,%xmm2
4181	psrlq	$1,%xmm3
4182	psllq	$56,%xmm2
4183	pxor	%xmm3,%xmm1
4184	psrlq	$7,%xmm3
4185	pxor	%xmm2,%xmm1
4186	psllq	$7,%xmm2
4187	pxor	%xmm3,%xmm1
4188	movdqa	%xmm6,%xmm3
4189	pxor	%xmm2,%xmm1
4190	movdqa	%xmm6,%xmm2
4191	psrlq	$6,%xmm3
4192	paddq	%xmm1,%xmm7
4193	movdqa	%xmm6,%xmm1
4194	psrlq	$19,%xmm2
4195	psllq	$3,%xmm1
4196	pxor	%xmm2,%xmm3
4197	psrlq	$42,%xmm2
4198	pxor	%xmm1,%xmm3
4199	psllq	$42,%xmm1
4200	pxor	%xmm2,%xmm3
4201	movdqa	16(%edx),%xmm2
4202	pxor	%xmm1,%xmm3
4203	movdqa	112(%ebp),%xmm1
4204	movq	%mm4,%mm1
4205	paddq	%xmm3,%xmm7
4206	movq	-16(%edx),%mm7
4207	pxor	%mm6,%mm5
4208	psrlq	$14,%mm1
4209	movq	%mm4,48(%esp)
4210	paddq	%xmm7,%xmm1
4211	pand	%mm4,%mm5
4212	psllq	$23,%mm4
4213	paddq	%mm3,%mm0
4214	movq	%mm1,%mm3
4215	psrlq	$4,%mm1
4216	pxor	%mm6,%mm5
4217	pxor	%mm4,%mm3
4218	psllq	$23,%mm4
4219	pxor	%mm1,%mm3
4220	movq	%mm0,16(%esp)
4221	paddq	%mm5,%mm7
4222	pxor	%mm4,%mm3
4223	psrlq	$23,%mm1
4224	paddq	8(%esp),%mm7
4225	pxor	%mm1,%mm3
4226	psllq	$4,%mm4
4227	pxor	%mm4,%mm3
4228	movq	40(%esp),%mm4
4229	paddq	%mm7,%mm3
4230	movq	%mm0,%mm5
4231	psrlq	$28,%mm5
4232	paddq	%mm3,%mm4
4233	movq	%mm0,%mm6
4234	movq	%mm5,%mm7
4235	psllq	$25,%mm6
4236	movq	24(%esp),%mm1
4237	psrlq	$6,%mm5
4238	pxor	%mm6,%mm7
4239	psllq	$5,%mm6
4240	pxor	%mm5,%mm7
4241	pxor	%mm1,%mm0
4242	psrlq	$5,%mm5
4243	pxor	%mm6,%mm7
4244	pand	%mm0,%mm2
4245	psllq	$6,%mm6
4246	pxor	%mm5,%mm7
4247	pxor	%mm1,%mm2
4248	pxor	%mm7,%mm6
4249	movq	48(%esp),%mm5
4250	paddq	%mm6,%mm2
4251	movq	56(%esp),%mm6
4252	movq	%mm4,%mm1
4253	movq	-8(%edx),%mm7
4254	pxor	%mm6,%mm5
4255	psrlq	$14,%mm1
4256	movq	%mm4,40(%esp)
4257	pand	%mm4,%mm5
4258	psllq	$23,%mm4
4259	paddq	%mm3,%mm2
4260	movq	%mm1,%mm3
4261	psrlq	$4,%mm1
4262	pxor	%mm6,%mm5
4263	pxor	%mm4,%mm3
4264	psllq	$23,%mm4
4265	pxor	%mm1,%mm3
4266	movq	%mm2,8(%esp)
4267	paddq	%mm5,%mm7
4268	pxor	%mm4,%mm3
4269	psrlq	$23,%mm1
4270	paddq	(%esp),%mm7
4271	pxor	%mm1,%mm3
4272	psllq	$4,%mm4
4273	pxor	%mm4,%mm3
4274	movq	32(%esp),%mm4
4275	paddq	%mm7,%mm3
4276	movq	%mm2,%mm5
4277	psrlq	$28,%mm5
4278	paddq	%mm3,%mm4
4279	movq	%mm2,%mm6
4280	movq	%mm5,%mm7
4281	psllq	$25,%mm6
4282	movq	16(%esp),%mm1
4283	psrlq	$6,%mm5
4284	pxor	%mm6,%mm7
4285	psllq	$5,%mm6
4286	pxor	%mm5,%mm7
4287	pxor	%mm1,%mm2
4288	psrlq	$5,%mm5
4289	pxor	%mm6,%mm7
4290	pand	%mm2,%mm0
4291	psllq	$6,%mm6
4292	pxor	%mm5,%mm7
4293	pxor	%mm1,%mm0
4294	pxor	%mm7,%mm6
4295	movq	40(%esp),%mm5
4296	paddq	%mm6,%mm0
4297	movq	48(%esp),%mm6
4298	movdqa	%xmm1,-16(%edx)
4299	leal	128(%ebp),%ebp
4300	decl	%ecx
4301	jnz	.L00800_47_ssse3
4302	movdqa	(%ebp),%xmm1
4303	leal	-640(%ebp),%ebp
4304	movdqu	(%ebx),%xmm0
4305.byte	102,15,56,0,193
4306	movdqa	(%ebp),%xmm3
4307	movdqa	%xmm1,%xmm2
4308	movdqu	16(%ebx),%xmm1
4309	paddq	%xmm0,%xmm3
4310.byte	102,15,56,0,202
4311	movq	%mm4,%mm1
4312	movq	-128(%edx),%mm7
4313	pxor	%mm6,%mm5
4314	psrlq	$14,%mm1
4315	movq	%mm4,32(%esp)
4316	pand	%mm4,%mm5
4317	psllq	$23,%mm4
4318	paddq	%mm3,%mm0
4319	movq	%mm1,%mm3
4320	psrlq	$4,%mm1
4321	pxor	%mm6,%mm5
4322	pxor	%mm4,%mm3
4323	psllq	$23,%mm4
4324	pxor	%mm1,%mm3
4325	movq	%mm0,(%esp)
4326	paddq	%mm5,%mm7
4327	pxor	%mm4,%mm3
4328	psrlq	$23,%mm1
4329	paddq	56(%esp),%mm7
4330	pxor	%mm1,%mm3
4331	psllq	$4,%mm4
4332	pxor	%mm4,%mm3
4333	movq	24(%esp),%mm4
4334	paddq	%mm7,%mm3
4335	movq	%mm0,%mm5
4336	psrlq	$28,%mm5
4337	paddq	%mm3,%mm4
4338	movq	%mm0,%mm6
4339	movq	%mm5,%mm7
4340	psllq	$25,%mm6
4341	movq	8(%esp),%mm1
4342	psrlq	$6,%mm5
4343	pxor	%mm6,%mm7
4344	psllq	$5,%mm6
4345	pxor	%mm5,%mm7
4346	pxor	%mm1,%mm0
4347	psrlq	$5,%mm5
4348	pxor	%mm6,%mm7
4349	pand	%mm0,%mm2
4350	psllq	$6,%mm6
4351	pxor	%mm5,%mm7
4352	pxor	%mm1,%mm2
4353	pxor	%mm7,%mm6
4354	movq	32(%esp),%mm5
4355	paddq	%mm6,%mm2
4356	movq	40(%esp),%mm6
4357	movq	%mm4,%mm1
4358	movq	-120(%edx),%mm7
4359	pxor	%mm6,%mm5
4360	psrlq	$14,%mm1
4361	movq	%mm4,24(%esp)
4362	pand	%mm4,%mm5
4363	psllq	$23,%mm4
4364	paddq	%mm3,%mm2
4365	movq	%mm1,%mm3
4366	psrlq	$4,%mm1
4367	pxor	%mm6,%mm5
4368	pxor	%mm4,%mm3
4369	psllq	$23,%mm4
4370	pxor	%mm1,%mm3
4371	movq	%mm2,56(%esp)
4372	paddq	%mm5,%mm7
4373	pxor	%mm4,%mm3
4374	psrlq	$23,%mm1
4375	paddq	48(%esp),%mm7
4376	pxor	%mm1,%mm3
4377	psllq	$4,%mm4
4378	pxor	%mm4,%mm3
4379	movq	16(%esp),%mm4
4380	paddq	%mm7,%mm3
4381	movq	%mm2,%mm5
4382	psrlq	$28,%mm5
4383	paddq	%mm3,%mm4
4384	movq	%mm2,%mm6
4385	movq	%mm5,%mm7
4386	psllq	$25,%mm6
4387	movq	(%esp),%mm1
4388	psrlq	$6,%mm5
4389	pxor	%mm6,%mm7
4390	psllq	$5,%mm6
4391	pxor	%mm5,%mm7
4392	pxor	%mm1,%mm2
4393	psrlq	$5,%mm5
4394	pxor	%mm6,%mm7
4395	pand	%mm2,%mm0
4396	psllq	$6,%mm6
4397	pxor	%mm5,%mm7
4398	pxor	%mm1,%mm0
4399	pxor	%mm7,%mm6
4400	movq	24(%esp),%mm5
4401	paddq	%mm6,%mm0
4402	movq	32(%esp),%mm6
4403	movdqa	%xmm3,-128(%edx)
4404	movdqa	16(%ebp),%xmm4
4405	movdqa	%xmm2,%xmm3
4406	movdqu	32(%ebx),%xmm2
4407	paddq	%xmm1,%xmm4
4408.byte	102,15,56,0,211
4409	movq	%mm4,%mm1
4410	movq	-112(%edx),%mm7
4411	pxor	%mm6,%mm5
4412	psrlq	$14,%mm1
4413	movq	%mm4,16(%esp)
4414	pand	%mm4,%mm5
4415	psllq	$23,%mm4
4416	paddq	%mm3,%mm0
4417	movq	%mm1,%mm3
4418	psrlq	$4,%mm1
4419	pxor	%mm6,%mm5
4420	pxor	%mm4,%mm3
4421	psllq	$23,%mm4
4422	pxor	%mm1,%mm3
4423	movq	%mm0,48(%esp)
4424	paddq	%mm5,%mm7
4425	pxor	%mm4,%mm3
4426	psrlq	$23,%mm1
4427	paddq	40(%esp),%mm7
4428	pxor	%mm1,%mm3
4429	psllq	$4,%mm4
4430	pxor	%mm4,%mm3
4431	movq	8(%esp),%mm4
4432	paddq	%mm7,%mm3
4433	movq	%mm0,%mm5
4434	psrlq	$28,%mm5
4435	paddq	%mm3,%mm4
4436	movq	%mm0,%mm6
4437	movq	%mm5,%mm7
4438	psllq	$25,%mm6
4439	movq	56(%esp),%mm1
4440	psrlq	$6,%mm5
4441	pxor	%mm6,%mm7
4442	psllq	$5,%mm6
4443	pxor	%mm5,%mm7
4444	pxor	%mm1,%mm0
4445	psrlq	$5,%mm5
4446	pxor	%mm6,%mm7
4447	pand	%mm0,%mm2
4448	psllq	$6,%mm6
4449	pxor	%mm5,%mm7
4450	pxor	%mm1,%mm2
4451	pxor	%mm7,%mm6
4452	movq	16(%esp),%mm5
4453	paddq	%mm6,%mm2
4454	movq	24(%esp),%mm6
4455	movq	%mm4,%mm1
4456	movq	-104(%edx),%mm7
4457	pxor	%mm6,%mm5
4458	psrlq	$14,%mm1
4459	movq	%mm4,8(%esp)
4460	pand	%mm4,%mm5
4461	psllq	$23,%mm4
4462	paddq	%mm3,%mm2
4463	movq	%mm1,%mm3
4464	psrlq	$4,%mm1
4465	pxor	%mm6,%mm5
4466	pxor	%mm4,%mm3
4467	psllq	$23,%mm4
4468	pxor	%mm1,%mm3
4469	movq	%mm2,40(%esp)
4470	paddq	%mm5,%mm7
4471	pxor	%mm4,%mm3
4472	psrlq	$23,%mm1
4473	paddq	32(%esp),%mm7
4474	pxor	%mm1,%mm3
4475	psllq	$4,%mm4
4476	pxor	%mm4,%mm3
4477	movq	(%esp),%mm4
4478	paddq	%mm7,%mm3
4479	movq	%mm2,%mm5
4480	psrlq	$28,%mm5
4481	paddq	%mm3,%mm4
4482	movq	%mm2,%mm6
4483	movq	%mm5,%mm7
4484	psllq	$25,%mm6
4485	movq	48(%esp),%mm1
4486	psrlq	$6,%mm5
4487	pxor	%mm6,%mm7
4488	psllq	$5,%mm6
4489	pxor	%mm5,%mm7
4490	pxor	%mm1,%mm2
4491	psrlq	$5,%mm5
4492	pxor	%mm6,%mm7
4493	pand	%mm2,%mm0
4494	psllq	$6,%mm6
4495	pxor	%mm5,%mm7
4496	pxor	%mm1,%mm0
4497	pxor	%mm7,%mm6
4498	movq	8(%esp),%mm5
4499	paddq	%mm6,%mm0
4500	movq	16(%esp),%mm6
4501	movdqa	%xmm4,-112(%edx)
4502	movdqa	32(%ebp),%xmm5
4503	movdqa	%xmm3,%xmm4
4504	movdqu	48(%ebx),%xmm3
4505	paddq	%xmm2,%xmm5
4506.byte	102,15,56,0,220
4507	movq	%mm4,%mm1
4508	movq	-96(%edx),%mm7
4509	pxor	%mm6,%mm5
4510	psrlq	$14,%mm1
4511	movq	%mm4,(%esp)
4512	pand	%mm4,%mm5
4513	psllq	$23,%mm4
4514	paddq	%mm3,%mm0
4515	movq	%mm1,%mm3
4516	psrlq	$4,%mm1
4517	pxor	%mm6,%mm5
4518	pxor	%mm4,%mm3
4519	psllq	$23,%mm4
4520	pxor	%mm1,%mm3
4521	movq	%mm0,32(%esp)
4522	paddq	%mm5,%mm7
4523	pxor	%mm4,%mm3
4524	psrlq	$23,%mm1
4525	paddq	24(%esp),%mm7
4526	pxor	%mm1,%mm3
4527	psllq	$4,%mm4
4528	pxor	%mm4,%mm3
4529	movq	56(%esp),%mm4
4530	paddq	%mm7,%mm3
4531	movq	%mm0,%mm5
4532	psrlq	$28,%mm5
4533	paddq	%mm3,%mm4
4534	movq	%mm0,%mm6
4535	movq	%mm5,%mm7
4536	psllq	$25,%mm6
4537	movq	40(%esp),%mm1
4538	psrlq	$6,%mm5
4539	pxor	%mm6,%mm7
4540	psllq	$5,%mm6
4541	pxor	%mm5,%mm7
4542	pxor	%mm1,%mm0
4543	psrlq	$5,%mm5
4544	pxor	%mm6,%mm7
4545	pand	%mm0,%mm2
4546	psllq	$6,%mm6
4547	pxor	%mm5,%mm7
4548	pxor	%mm1,%mm2
4549	pxor	%mm7,%mm6
4550	movq	(%esp),%mm5
4551	paddq	%mm6,%mm2
4552	movq	8(%esp),%mm6
4553	movq	%mm4,%mm1
4554	movq	-88(%edx),%mm7
4555	pxor	%mm6,%mm5
4556	psrlq	$14,%mm1
4557	movq	%mm4,56(%esp)
4558	pand	%mm4,%mm5
4559	psllq	$23,%mm4
4560	paddq	%mm3,%mm2
4561	movq	%mm1,%mm3
4562	psrlq	$4,%mm1
4563	pxor	%mm6,%mm5
4564	pxor	%mm4,%mm3
4565	psllq	$23,%mm4
4566	pxor	%mm1,%mm3
4567	movq	%mm2,24(%esp)
4568	paddq	%mm5,%mm7
4569	pxor	%mm4,%mm3
4570	psrlq	$23,%mm1
4571	paddq	16(%esp),%mm7
4572	pxor	%mm1,%mm3
4573	psllq	$4,%mm4
4574	pxor	%mm4,%mm3
4575	movq	48(%esp),%mm4
4576	paddq	%mm7,%mm3
4577	movq	%mm2,%mm5
4578	psrlq	$28,%mm5
4579	paddq	%mm3,%mm4
4580	movq	%mm2,%mm6
4581	movq	%mm5,%mm7
4582	psllq	$25,%mm6
4583	movq	32(%esp),%mm1
4584	psrlq	$6,%mm5
4585	pxor	%mm6,%mm7
4586	psllq	$5,%mm6
4587	pxor	%mm5,%mm7
4588	pxor	%mm1,%mm2
4589	psrlq	$5,%mm5
4590	pxor	%mm6,%mm7
4591	pand	%mm2,%mm0
4592	psllq	$6,%mm6
4593	pxor	%mm5,%mm7
4594	pxor	%mm1,%mm0
4595	pxor	%mm7,%mm6
4596	movq	56(%esp),%mm5
4597	paddq	%mm6,%mm0
4598	movq	(%esp),%mm6
4599	movdqa	%xmm5,-96(%edx)
4600	movdqa	48(%ebp),%xmm6
4601	movdqa	%xmm4,%xmm5
4602	movdqu	64(%ebx),%xmm4
4603	paddq	%xmm3,%xmm6
4604.byte	102,15,56,0,229
4605	movq	%mm4,%mm1
4606	movq	-80(%edx),%mm7
4607	pxor	%mm6,%mm5
4608	psrlq	$14,%mm1
4609	movq	%mm4,48(%esp)
4610	pand	%mm4,%mm5
4611	psllq	$23,%mm4
4612	paddq	%mm3,%mm0
4613	movq	%mm1,%mm3
4614	psrlq	$4,%mm1
4615	pxor	%mm6,%mm5
4616	pxor	%mm4,%mm3
4617	psllq	$23,%mm4
4618	pxor	%mm1,%mm3
4619	movq	%mm0,16(%esp)
4620	paddq	%mm5,%mm7
4621	pxor	%mm4,%mm3
4622	psrlq	$23,%mm1
4623	paddq	8(%esp),%mm7
4624	pxor	%mm1,%mm3
4625	psllq	$4,%mm4
4626	pxor	%mm4,%mm3
4627	movq	40(%esp),%mm4
4628	paddq	%mm7,%mm3
4629	movq	%mm0,%mm5
4630	psrlq	$28,%mm5
4631	paddq	%mm3,%mm4
4632	movq	%mm0,%mm6
4633	movq	%mm5,%mm7
4634	psllq	$25,%mm6
4635	movq	24(%esp),%mm1
4636	psrlq	$6,%mm5
4637	pxor	%mm6,%mm7
4638	psllq	$5,%mm6
4639	pxor	%mm5,%mm7
4640	pxor	%mm1,%mm0
4641	psrlq	$5,%mm5
4642	pxor	%mm6,%mm7
4643	pand	%mm0,%mm2
4644	psllq	$6,%mm6
4645	pxor	%mm5,%mm7
4646	pxor	%mm1,%mm2
4647	pxor	%mm7,%mm6
4648	movq	48(%esp),%mm5
4649	paddq	%mm6,%mm2
4650	movq	56(%esp),%mm6
4651	movq	%mm4,%mm1
4652	movq	-72(%edx),%mm7
4653	pxor	%mm6,%mm5
4654	psrlq	$14,%mm1
4655	movq	%mm4,40(%esp)
4656	pand	%mm4,%mm5
4657	psllq	$23,%mm4
4658	paddq	%mm3,%mm2
4659	movq	%mm1,%mm3
4660	psrlq	$4,%mm1
4661	pxor	%mm6,%mm5
4662	pxor	%mm4,%mm3
4663	psllq	$23,%mm4
4664	pxor	%mm1,%mm3
4665	movq	%mm2,8(%esp)
4666	paddq	%mm5,%mm7
4667	pxor	%mm4,%mm3
4668	psrlq	$23,%mm1
4669	paddq	(%esp),%mm7
4670	pxor	%mm1,%mm3
4671	psllq	$4,%mm4
4672	pxor	%mm4,%mm3
4673	movq	32(%esp),%mm4
4674	paddq	%mm7,%mm3
4675	movq	%mm2,%mm5
4676	psrlq	$28,%mm5
4677	paddq	%mm3,%mm4
4678	movq	%mm2,%mm6
4679	movq	%mm5,%mm7
4680	psllq	$25,%mm6
4681	movq	16(%esp),%mm1
4682	psrlq	$6,%mm5
4683	pxor	%mm6,%mm7
4684	psllq	$5,%mm6
4685	pxor	%mm5,%mm7
4686	pxor	%mm1,%mm2
4687	psrlq	$5,%mm5
4688	pxor	%mm6,%mm7
4689	pand	%mm2,%mm0
4690	psllq	$6,%mm6
4691	pxor	%mm5,%mm7
4692	pxor	%mm1,%mm0
4693	pxor	%mm7,%mm6
4694	movq	40(%esp),%mm5
4695	paddq	%mm6,%mm0
4696	movq	48(%esp),%mm6
4697	movdqa	%xmm6,-80(%edx)
4698	movdqa	64(%ebp),%xmm7
4699	movdqa	%xmm5,%xmm6
4700	movdqu	80(%ebx),%xmm5
4701	paddq	%xmm4,%xmm7
4702.byte	102,15,56,0,238
4703	movq	%mm4,%mm1
4704	movq	-64(%edx),%mm7
4705	pxor	%mm6,%mm5
4706	psrlq	$14,%mm1
4707	movq	%mm4,32(%esp)
4708	pand	%mm4,%mm5
4709	psllq	$23,%mm4
4710	paddq	%mm3,%mm0
4711	movq	%mm1,%mm3
4712	psrlq	$4,%mm1
4713	pxor	%mm6,%mm5
4714	pxor	%mm4,%mm3
4715	psllq	$23,%mm4
4716	pxor	%mm1,%mm3
4717	movq	%mm0,(%esp)
4718	paddq	%mm5,%mm7
4719	pxor	%mm4,%mm3
4720	psrlq	$23,%mm1
4721	paddq	56(%esp),%mm7
4722	pxor	%mm1,%mm3
4723	psllq	$4,%mm4
4724	pxor	%mm4,%mm3
4725	movq	24(%esp),%mm4
4726	paddq	%mm7,%mm3
4727	movq	%mm0,%mm5
4728	psrlq	$28,%mm5
4729	paddq	%mm3,%mm4
4730	movq	%mm0,%mm6
4731	movq	%mm5,%mm7
4732	psllq	$25,%mm6
4733	movq	8(%esp),%mm1
4734	psrlq	$6,%mm5
4735	pxor	%mm6,%mm7
4736	psllq	$5,%mm6
4737	pxor	%mm5,%mm7
4738	pxor	%mm1,%mm0
4739	psrlq	$5,%mm5
4740	pxor	%mm6,%mm7
4741	pand	%mm0,%mm2
4742	psllq	$6,%mm6
4743	pxor	%mm5,%mm7
4744	pxor	%mm1,%mm2
4745	pxor	%mm7,%mm6
4746	movq	32(%esp),%mm5
4747	paddq	%mm6,%mm2
4748	movq	40(%esp),%mm6
4749	movq	%mm4,%mm1
4750	movq	-56(%edx),%mm7
4751	pxor	%mm6,%mm5
4752	psrlq	$14,%mm1
4753	movq	%mm4,24(%esp)
4754	pand	%mm4,%mm5
4755	psllq	$23,%mm4
4756	paddq	%mm3,%mm2
4757	movq	%mm1,%mm3
4758	psrlq	$4,%mm1
4759	pxor	%mm6,%mm5
4760	pxor	%mm4,%mm3
4761	psllq	$23,%mm4
4762	pxor	%mm1,%mm3
4763	movq	%mm2,56(%esp)
4764	paddq	%mm5,%mm7
4765	pxor	%mm4,%mm3
4766	psrlq	$23,%mm1
4767	paddq	48(%esp),%mm7
4768	pxor	%mm1,%mm3
4769	psllq	$4,%mm4
4770	pxor	%mm4,%mm3
4771	movq	16(%esp),%mm4
4772	paddq	%mm7,%mm3
4773	movq	%mm2,%mm5
4774	psrlq	$28,%mm5
4775	paddq	%mm3,%mm4
4776	movq	%mm2,%mm6
4777	movq	%mm5,%mm7
4778	psllq	$25,%mm6
4779	movq	(%esp),%mm1
4780	psrlq	$6,%mm5
4781	pxor	%mm6,%mm7
4782	psllq	$5,%mm6
4783	pxor	%mm5,%mm7
4784	pxor	%mm1,%mm2
4785	psrlq	$5,%mm5
4786	pxor	%mm6,%mm7
4787	pand	%mm2,%mm0
4788	psllq	$6,%mm6
4789	pxor	%mm5,%mm7
4790	pxor	%mm1,%mm0
4791	pxor	%mm7,%mm6
4792	movq	24(%esp),%mm5
4793	paddq	%mm6,%mm0
4794	movq	32(%esp),%mm6
4795	movdqa	%xmm7,-64(%edx)
4796	movdqa	%xmm0,(%edx)
4797	movdqa	80(%ebp),%xmm0
4798	movdqa	%xmm6,%xmm7
4799	movdqu	96(%ebx),%xmm6
4800	paddq	%xmm5,%xmm0
4801.byte	102,15,56,0,247
4802	movq	%mm4,%mm1
4803	movq	-48(%edx),%mm7
4804	pxor	%mm6,%mm5
4805	psrlq	$14,%mm1
4806	movq	%mm4,16(%esp)
4807	pand	%mm4,%mm5
4808	psllq	$23,%mm4
4809	paddq	%mm3,%mm0
4810	movq	%mm1,%mm3
4811	psrlq	$4,%mm1
4812	pxor	%mm6,%mm5
4813	pxor	%mm4,%mm3
4814	psllq	$23,%mm4
4815	pxor	%mm1,%mm3
4816	movq	%mm0,48(%esp)
4817	paddq	%mm5,%mm7
4818	pxor	%mm4,%mm3
4819	psrlq	$23,%mm1
4820	paddq	40(%esp),%mm7
4821	pxor	%mm1,%mm3
4822	psllq	$4,%mm4
4823	pxor	%mm4,%mm3
4824	movq	8(%esp),%mm4
4825	paddq	%mm7,%mm3
4826	movq	%mm0,%mm5
4827	psrlq	$28,%mm5
4828	paddq	%mm3,%mm4
4829	movq	%mm0,%mm6
4830	movq	%mm5,%mm7
4831	psllq	$25,%mm6
4832	movq	56(%esp),%mm1
4833	psrlq	$6,%mm5
4834	pxor	%mm6,%mm7
4835	psllq	$5,%mm6
4836	pxor	%mm5,%mm7
4837	pxor	%mm1,%mm0
4838	psrlq	$5,%mm5
4839	pxor	%mm6,%mm7
4840	pand	%mm0,%mm2
4841	psllq	$6,%mm6
4842	pxor	%mm5,%mm7
4843	pxor	%mm1,%mm2
4844	pxor	%mm7,%mm6
4845	movq	16(%esp),%mm5
4846	paddq	%mm6,%mm2
4847	movq	24(%esp),%mm6
4848	movq	%mm4,%mm1
4849	movq	-40(%edx),%mm7
4850	pxor	%mm6,%mm5
4851	psrlq	$14,%mm1
4852	movq	%mm4,8(%esp)
4853	pand	%mm4,%mm5
4854	psllq	$23,%mm4
4855	paddq	%mm3,%mm2
4856	movq	%mm1,%mm3
4857	psrlq	$4,%mm1
4858	pxor	%mm6,%mm5
4859	pxor	%mm4,%mm3
4860	psllq	$23,%mm4
4861	pxor	%mm1,%mm3
4862	movq	%mm2,40(%esp)
4863	paddq	%mm5,%mm7
4864	pxor	%mm4,%mm3
4865	psrlq	$23,%mm1
4866	paddq	32(%esp),%mm7
4867	pxor	%mm1,%mm3
4868	psllq	$4,%mm4
4869	pxor	%mm4,%mm3
4870	movq	(%esp),%mm4
4871	paddq	%mm7,%mm3
4872	movq	%mm2,%mm5
4873	psrlq	$28,%mm5
4874	paddq	%mm3,%mm4
4875	movq	%mm2,%mm6
4876	movq	%mm5,%mm7
4877	psllq	$25,%mm6
4878	movq	48(%esp),%mm1
4879	psrlq	$6,%mm5
4880	pxor	%mm6,%mm7
4881	psllq	$5,%mm6
4882	pxor	%mm5,%mm7
4883	pxor	%mm1,%mm2
4884	psrlq	$5,%mm5
4885	pxor	%mm6,%mm7
4886	pand	%mm2,%mm0
4887	psllq	$6,%mm6
4888	pxor	%mm5,%mm7
4889	pxor	%mm1,%mm0
4890	pxor	%mm7,%mm6
4891	movq	8(%esp),%mm5
4892	paddq	%mm6,%mm0
4893	movq	16(%esp),%mm6
4894	movdqa	%xmm0,-48(%edx)
4895	movdqa	%xmm1,16(%edx)
4896	movdqa	96(%ebp),%xmm1
4897	movdqa	%xmm7,%xmm0
4898	movdqu	112(%ebx),%xmm7
4899	paddq	%xmm6,%xmm1
4900.byte	102,15,56,0,248
4901	movq	%mm4,%mm1
4902	movq	-32(%edx),%mm7
4903	pxor	%mm6,%mm5
4904	psrlq	$14,%mm1
4905	movq	%mm4,(%esp)
4906	pand	%mm4,%mm5
4907	psllq	$23,%mm4
4908	paddq	%mm3,%mm0
4909	movq	%mm1,%mm3
4910	psrlq	$4,%mm1
4911	pxor	%mm6,%mm5
4912	pxor	%mm4,%mm3
4913	psllq	$23,%mm4
4914	pxor	%mm1,%mm3
4915	movq	%mm0,32(%esp)
4916	paddq	%mm5,%mm7
4917	pxor	%mm4,%mm3
4918	psrlq	$23,%mm1
4919	paddq	24(%esp),%mm7
4920	pxor	%mm1,%mm3
4921	psllq	$4,%mm4
4922	pxor	%mm4,%mm3
4923	movq	56(%esp),%mm4
4924	paddq	%mm7,%mm3
4925	movq	%mm0,%mm5
4926	psrlq	$28,%mm5
4927	paddq	%mm3,%mm4
4928	movq	%mm0,%mm6
4929	movq	%mm5,%mm7
4930	psllq	$25,%mm6
4931	movq	40(%esp),%mm1
4932	psrlq	$6,%mm5
4933	pxor	%mm6,%mm7
4934	psllq	$5,%mm6
4935	pxor	%mm5,%mm7
4936	pxor	%mm1,%mm0
4937	psrlq	$5,%mm5
4938	pxor	%mm6,%mm7
4939	pand	%mm0,%mm2
4940	psllq	$6,%mm6
4941	pxor	%mm5,%mm7
4942	pxor	%mm1,%mm2
4943	pxor	%mm7,%mm6
4944	movq	(%esp),%mm5
4945	paddq	%mm6,%mm2
4946	movq	8(%esp),%mm6
4947	movq	%mm4,%mm1
4948	movq	-24(%edx),%mm7
4949	pxor	%mm6,%mm5
4950	psrlq	$14,%mm1
4951	movq	%mm4,56(%esp)
4952	pand	%mm4,%mm5
4953	psllq	$23,%mm4
4954	paddq	%mm3,%mm2
4955	movq	%mm1,%mm3
4956	psrlq	$4,%mm1
4957	pxor	%mm6,%mm5
4958	pxor	%mm4,%mm3
4959	psllq	$23,%mm4
4960	pxor	%mm1,%mm3
4961	movq	%mm2,24(%esp)
4962	paddq	%mm5,%mm7
4963	pxor	%mm4,%mm3
4964	psrlq	$23,%mm1
4965	paddq	16(%esp),%mm7
4966	pxor	%mm1,%mm3
4967	psllq	$4,%mm4
4968	pxor	%mm4,%mm3
4969	movq	48(%esp),%mm4
4970	paddq	%mm7,%mm3
4971	movq	%mm2,%mm5
4972	psrlq	$28,%mm5
4973	paddq	%mm3,%mm4
4974	movq	%mm2,%mm6
4975	movq	%mm5,%mm7
4976	psllq	$25,%mm6
4977	movq	32(%esp),%mm1
4978	psrlq	$6,%mm5
4979	pxor	%mm6,%mm7
4980	psllq	$5,%mm6
4981	pxor	%mm5,%mm7
4982	pxor	%mm1,%mm2
4983	psrlq	$5,%mm5
4984	pxor	%mm6,%mm7
4985	pand	%mm2,%mm0
4986	psllq	$6,%mm6
4987	pxor	%mm5,%mm7
4988	pxor	%mm1,%mm0
4989	pxor	%mm7,%mm6
4990	movq	56(%esp),%mm5
4991	paddq	%mm6,%mm0
4992	movq	(%esp),%mm6
4993	movdqa	%xmm1,-32(%edx)
4994	movdqa	%xmm2,32(%edx)
4995	movdqa	112(%ebp),%xmm2
4996	movdqa	(%edx),%xmm0
4997	paddq	%xmm7,%xmm2
4998	movq	%mm4,%mm1
4999	movq	-16(%edx),%mm7
5000	pxor	%mm6,%mm5
5001	psrlq	$14,%mm1
5002	movq	%mm4,48(%esp)
5003	pand	%mm4,%mm5
5004	psllq	$23,%mm4
5005	paddq	%mm3,%mm0
5006	movq	%mm1,%mm3
5007	psrlq	$4,%mm1
5008	pxor	%mm6,%mm5
5009	pxor	%mm4,%mm3
5010	psllq	$23,%mm4
5011	pxor	%mm1,%mm3
5012	movq	%mm0,16(%esp)
5013	paddq	%mm5,%mm7
5014	pxor	%mm4,%mm3
5015	psrlq	$23,%mm1
5016	paddq	8(%esp),%mm7
5017	pxor	%mm1,%mm3
5018	psllq	$4,%mm4
5019	pxor	%mm4,%mm3
5020	movq	40(%esp),%mm4
5021	paddq	%mm7,%mm3
5022	movq	%mm0,%mm5
5023	psrlq	$28,%mm5
5024	paddq	%mm3,%mm4
5025	movq	%mm0,%mm6
5026	movq	%mm5,%mm7
5027	psllq	$25,%mm6
5028	movq	24(%esp),%mm1
5029	psrlq	$6,%mm5
5030	pxor	%mm6,%mm7
5031	psllq	$5,%mm6
5032	pxor	%mm5,%mm7
5033	pxor	%mm1,%mm0
5034	psrlq	$5,%mm5
5035	pxor	%mm6,%mm7
5036	pand	%mm0,%mm2
5037	psllq	$6,%mm6
5038	pxor	%mm5,%mm7
5039	pxor	%mm1,%mm2
5040	pxor	%mm7,%mm6
5041	movq	48(%esp),%mm5
5042	paddq	%mm6,%mm2
5043	movq	56(%esp),%mm6
5044	movq	%mm4,%mm1
5045	movq	-8(%edx),%mm7
5046	pxor	%mm6,%mm5
5047	psrlq	$14,%mm1
5048	movq	%mm4,40(%esp)
5049	pand	%mm4,%mm5
5050	psllq	$23,%mm4
5051	paddq	%mm3,%mm2
5052	movq	%mm1,%mm3
5053	psrlq	$4,%mm1
5054	pxor	%mm6,%mm5
5055	pxor	%mm4,%mm3
5056	psllq	$23,%mm4
5057	pxor	%mm1,%mm3
5058	movq	%mm2,8(%esp)
5059	paddq	%mm5,%mm7
5060	pxor	%mm4,%mm3
5061	psrlq	$23,%mm1
5062	paddq	(%esp),%mm7
5063	pxor	%mm1,%mm3
5064	psllq	$4,%mm4
5065	pxor	%mm4,%mm3
5066	movq	32(%esp),%mm4
5067	paddq	%mm7,%mm3
5068	movq	%mm2,%mm5
5069	psrlq	$28,%mm5
5070	paddq	%mm3,%mm4
5071	movq	%mm2,%mm6
5072	movq	%mm5,%mm7
5073	psllq	$25,%mm6
5074	movq	16(%esp),%mm1
5075	psrlq	$6,%mm5
5076	pxor	%mm6,%mm7
5077	psllq	$5,%mm6
5078	pxor	%mm5,%mm7
5079	pxor	%mm1,%mm2
5080	psrlq	$5,%mm5
5081	pxor	%mm6,%mm7
5082	pand	%mm2,%mm0
5083	psllq	$6,%mm6
5084	pxor	%mm5,%mm7
5085	pxor	%mm1,%mm0
5086	pxor	%mm7,%mm6
5087	movq	40(%esp),%mm5
5088	paddq	%mm6,%mm0
5089	movq	48(%esp),%mm6
5090	movdqa	%xmm2,-16(%edx)
5091	movq	8(%esp),%mm1
5092	paddq	%mm3,%mm0
5093	movq	24(%esp),%mm3
5094	movq	56(%esp),%mm7
5095	pxor	%mm1,%mm2
5096	paddq	(%esi),%mm0
5097	paddq	8(%esi),%mm1
5098	paddq	16(%esi),%mm2
5099	paddq	24(%esi),%mm3
5100	paddq	32(%esi),%mm4
5101	paddq	40(%esi),%mm5
5102	paddq	48(%esi),%mm6
5103	paddq	56(%esi),%mm7
5104	movq	%mm0,(%esi)
5105	movq	%mm1,8(%esi)
5106	movq	%mm2,16(%esi)
5107	movq	%mm3,24(%esi)
5108	movq	%mm4,32(%esi)
5109	movq	%mm5,40(%esi)
5110	movq	%mm6,48(%esi)
5111	movq	%mm7,56(%esi)
5112	cmpl	%eax,%edi
5113	jb	.L007loop_ssse3
5114	movl	76(%edx),%esp
5115	emms
5116	popl	%edi
5117	popl	%esi
5118	popl	%ebx
5119	popl	%ebp
5120	ret
5121.align	16
5122.L002loop_x86:
5123	movl	(%edi),%eax
5124	movl	4(%edi),%ebx
5125	movl	8(%edi),%ecx
5126	movl	12(%edi),%edx
5127	bswap	%eax
5128	bswap	%ebx
5129	bswap	%ecx
5130	bswap	%edx
5131	pushl	%eax
5132	pushl	%ebx
5133	pushl	%ecx
5134	pushl	%edx
5135	movl	16(%edi),%eax
5136	movl	20(%edi),%ebx
5137	movl	24(%edi),%ecx
5138	movl	28(%edi),%edx
5139	bswap	%eax
5140	bswap	%ebx
5141	bswap	%ecx
5142	bswap	%edx
5143	pushl	%eax
5144	pushl	%ebx
5145	pushl	%ecx
5146	pushl	%edx
5147	movl	32(%edi),%eax
5148	movl	36(%edi),%ebx
5149	movl	40(%edi),%ecx
5150	movl	44(%edi),%edx
5151	bswap	%eax
5152	bswap	%ebx
5153	bswap	%ecx
5154	bswap	%edx
5155	pushl	%eax
5156	pushl	%ebx
5157	pushl	%ecx
5158	pushl	%edx
5159	movl	48(%edi),%eax
5160	movl	52(%edi),%ebx
5161	movl	56(%edi),%ecx
5162	movl	60(%edi),%edx
5163	bswap	%eax
5164	bswap	%ebx
5165	bswap	%ecx
5166	bswap	%edx
5167	pushl	%eax
5168	pushl	%ebx
5169	pushl	%ecx
5170	pushl	%edx
5171	movl	64(%edi),%eax
5172	movl	68(%edi),%ebx
5173	movl	72(%edi),%ecx
5174	movl	76(%edi),%edx
5175	bswap	%eax
5176	bswap	%ebx
5177	bswap	%ecx
5178	bswap	%edx
5179	pushl	%eax
5180	pushl	%ebx
5181	pushl	%ecx
5182	pushl	%edx
5183	movl	80(%edi),%eax
5184	movl	84(%edi),%ebx
5185	movl	88(%edi),%ecx
5186	movl	92(%edi),%edx
5187	bswap	%eax
5188	bswap	%ebx
5189	bswap	%ecx
5190	bswap	%edx
5191	pushl	%eax
5192	pushl	%ebx
5193	pushl	%ecx
5194	pushl	%edx
5195	movl	96(%edi),%eax
5196	movl	100(%edi),%ebx
5197	movl	104(%edi),%ecx
5198	movl	108(%edi),%edx
5199	bswap	%eax
5200	bswap	%ebx
5201	bswap	%ecx
5202	bswap	%edx
5203	pushl	%eax
5204	pushl	%ebx
5205	pushl	%ecx
5206	pushl	%edx
5207	movl	112(%edi),%eax
5208	movl	116(%edi),%ebx
5209	movl	120(%edi),%ecx
5210	movl	124(%edi),%edx
5211	bswap	%eax
5212	bswap	%ebx
5213	bswap	%ecx
5214	bswap	%edx
5215	pushl	%eax
5216	pushl	%ebx
5217	pushl	%ecx
5218	pushl	%edx
5219	addl	$128,%edi
5220	subl	$72,%esp
5221	movl	%edi,204(%esp)
5222	leal	8(%esp),%edi
5223	movl	$16,%ecx
5224.long	2784229001
5225.align	16
5226.L00900_15_x86:
5227	movl	40(%esp),%ecx
5228	movl	44(%esp),%edx
5229	movl	%ecx,%esi
5230	shrl	$9,%ecx
5231	movl	%edx,%edi
5232	shrl	$9,%edx
5233	movl	%ecx,%ebx
5234	shll	$14,%esi
5235	movl	%edx,%eax
5236	shll	$14,%edi
5237	xorl	%esi,%ebx
5238	shrl	$5,%ecx
5239	xorl	%edi,%eax
5240	shrl	$5,%edx
5241	xorl	%ecx,%eax
5242	shll	$4,%esi
5243	xorl	%edx,%ebx
5244	shll	$4,%edi
5245	xorl	%esi,%ebx
5246	shrl	$4,%ecx
5247	xorl	%edi,%eax
5248	shrl	$4,%edx
5249	xorl	%ecx,%eax
5250	shll	$5,%esi
5251	xorl	%edx,%ebx
5252	shll	$5,%edi
5253	xorl	%esi,%eax
5254	xorl	%edi,%ebx
5255	movl	48(%esp),%ecx
5256	movl	52(%esp),%edx
5257	movl	56(%esp),%esi
5258	movl	60(%esp),%edi
5259	addl	64(%esp),%eax
5260	adcl	68(%esp),%ebx
5261	xorl	%esi,%ecx
5262	xorl	%edi,%edx
5263	andl	40(%esp),%ecx
5264	andl	44(%esp),%edx
5265	addl	192(%esp),%eax
5266	adcl	196(%esp),%ebx
5267	xorl	%esi,%ecx
5268	xorl	%edi,%edx
5269	movl	(%ebp),%esi
5270	movl	4(%ebp),%edi
5271	addl	%ecx,%eax
5272	adcl	%edx,%ebx
5273	movl	32(%esp),%ecx
5274	movl	36(%esp),%edx
5275	addl	%esi,%eax
5276	adcl	%edi,%ebx
5277	movl	%eax,(%esp)
5278	movl	%ebx,4(%esp)
5279	addl	%ecx,%eax
5280	adcl	%edx,%ebx
5281	movl	8(%esp),%ecx
5282	movl	12(%esp),%edx
5283	movl	%eax,32(%esp)
5284	movl	%ebx,36(%esp)
5285	movl	%ecx,%esi
5286	shrl	$2,%ecx
5287	movl	%edx,%edi
5288	shrl	$2,%edx
5289	movl	%ecx,%ebx
5290	shll	$4,%esi
5291	movl	%edx,%eax
5292	shll	$4,%edi
5293	xorl	%esi,%ebx
5294	shrl	$5,%ecx
5295	xorl	%edi,%eax
5296	shrl	$5,%edx
5297	xorl	%ecx,%ebx
5298	shll	$21,%esi
5299	xorl	%edx,%eax
5300	shll	$21,%edi
5301	xorl	%esi,%eax
5302	shrl	$21,%ecx
5303	xorl	%edi,%ebx
5304	shrl	$21,%edx
5305	xorl	%ecx,%eax
5306	shll	$5,%esi
5307	xorl	%edx,%ebx
5308	shll	$5,%edi
5309	xorl	%esi,%eax
5310	xorl	%edi,%ebx
5311	movl	8(%esp),%ecx
5312	movl	12(%esp),%edx
5313	movl	16(%esp),%esi
5314	movl	20(%esp),%edi
5315	addl	(%esp),%eax
5316	adcl	4(%esp),%ebx
5317	orl	%esi,%ecx
5318	orl	%edi,%edx
5319	andl	24(%esp),%ecx
5320	andl	28(%esp),%edx
5321	andl	8(%esp),%esi
5322	andl	12(%esp),%edi
5323	orl	%esi,%ecx
5324	orl	%edi,%edx
5325	addl	%ecx,%eax
5326	adcl	%edx,%ebx
5327	movl	%eax,(%esp)
5328	movl	%ebx,4(%esp)
5329	movb	(%ebp),%dl
5330	subl	$8,%esp
5331	leal	8(%ebp),%ebp
5332	cmpb	$148,%dl
5333	jne	.L00900_15_x86
5334.align	16
5335.L01016_79_x86:
5336	movl	312(%esp),%ecx
5337	movl	316(%esp),%edx
5338	movl	%ecx,%esi
5339	shrl	$1,%ecx
5340	movl	%edx,%edi
5341	shrl	$1,%edx
5342	movl	%ecx,%eax
5343	shll	$24,%esi
5344	movl	%edx,%ebx
5345	shll	$24,%edi
5346	xorl	%esi,%ebx
5347	shrl	$6,%ecx
5348	xorl	%edi,%eax
5349	shrl	$6,%edx
5350	xorl	%ecx,%eax
5351	shll	$7,%esi
5352	xorl	%edx,%ebx
5353	shll	$1,%edi
5354	xorl	%esi,%ebx
5355	shrl	$1,%ecx
5356	xorl	%edi,%eax
5357	shrl	$1,%edx
5358	xorl	%ecx,%eax
5359	shll	$6,%edi
5360	xorl	%edx,%ebx
5361	xorl	%edi,%eax
5362	movl	%eax,(%esp)
5363	movl	%ebx,4(%esp)
5364	movl	208(%esp),%ecx
5365	movl	212(%esp),%edx
5366	movl	%ecx,%esi
5367	shrl	$6,%ecx
5368	movl	%edx,%edi
5369	shrl	$6,%edx
5370	movl	%ecx,%eax
5371	shll	$3,%esi
5372	movl	%edx,%ebx
5373	shll	$3,%edi
5374	xorl	%esi,%eax
5375	shrl	$13,%ecx
5376	xorl	%edi,%ebx
5377	shrl	$13,%edx
5378	xorl	%ecx,%eax
5379	shll	$10,%esi
5380	xorl	%edx,%ebx
5381	shll	$10,%edi
5382	xorl	%esi,%ebx
5383	shrl	$10,%ecx
5384	xorl	%edi,%eax
5385	shrl	$10,%edx
5386	xorl	%ecx,%ebx
5387	shll	$13,%edi
5388	xorl	%edx,%eax
5389	xorl	%edi,%eax
5390	movl	320(%esp),%ecx
5391	movl	324(%esp),%edx
5392	addl	(%esp),%eax
5393	adcl	4(%esp),%ebx
5394	movl	248(%esp),%esi
5395	movl	252(%esp),%edi
5396	addl	%ecx,%eax
5397	adcl	%edx,%ebx
5398	addl	%esi,%eax
5399	adcl	%edi,%ebx
5400	movl	%eax,192(%esp)
5401	movl	%ebx,196(%esp)
5402	movl	40(%esp),%ecx
5403	movl	44(%esp),%edx
5404	movl	%ecx,%esi
5405	shrl	$9,%ecx
5406	movl	%edx,%edi
5407	shrl	$9,%edx
5408	movl	%ecx,%ebx
5409	shll	$14,%esi
5410	movl	%edx,%eax
5411	shll	$14,%edi
5412	xorl	%esi,%ebx
5413	shrl	$5,%ecx
5414	xorl	%edi,%eax
5415	shrl	$5,%edx
5416	xorl	%ecx,%eax
5417	shll	$4,%esi
5418	xorl	%edx,%ebx
5419	shll	$4,%edi
5420	xorl	%esi,%ebx
5421	shrl	$4,%ecx
5422	xorl	%edi,%eax
5423	shrl	$4,%edx
5424	xorl	%ecx,%eax
5425	shll	$5,%esi
5426	xorl	%edx,%ebx
5427	shll	$5,%edi
5428	xorl	%esi,%eax
5429	xorl	%edi,%ebx
5430	movl	48(%esp),%ecx
5431	movl	52(%esp),%edx
5432	movl	56(%esp),%esi
5433	movl	60(%esp),%edi
5434	addl	64(%esp),%eax
5435	adcl	68(%esp),%ebx
5436	xorl	%esi,%ecx
5437	xorl	%edi,%edx
5438	andl	40(%esp),%ecx
5439	andl	44(%esp),%edx
5440	addl	192(%esp),%eax
5441	adcl	196(%esp),%ebx
5442	xorl	%esi,%ecx
5443	xorl	%edi,%edx
5444	movl	(%ebp),%esi
5445	movl	4(%ebp),%edi
5446	addl	%ecx,%eax
5447	adcl	%edx,%ebx
5448	movl	32(%esp),%ecx
5449	movl	36(%esp),%edx
5450	addl	%esi,%eax
5451	adcl	%edi,%ebx
5452	movl	%eax,(%esp)
5453	movl	%ebx,4(%esp)
5454	addl	%ecx,%eax
5455	adcl	%edx,%ebx
5456	movl	8(%esp),%ecx
5457	movl	12(%esp),%edx
5458	movl	%eax,32(%esp)
5459	movl	%ebx,36(%esp)
5460	movl	%ecx,%esi
5461	shrl	$2,%ecx
5462	movl	%edx,%edi
5463	shrl	$2,%edx
5464	movl	%ecx,%ebx
5465	shll	$4,%esi
5466	movl	%edx,%eax
5467	shll	$4,%edi
5468	xorl	%esi,%ebx
5469	shrl	$5,%ecx
5470	xorl	%edi,%eax
5471	shrl	$5,%edx
5472	xorl	%ecx,%ebx
5473	shll	$21,%esi
5474	xorl	%edx,%eax
5475	shll	$21,%edi
5476	xorl	%esi,%eax
5477	shrl	$21,%ecx
5478	xorl	%edi,%ebx
5479	shrl	$21,%edx
5480	xorl	%ecx,%eax
5481	shll	$5,%esi
5482	xorl	%edx,%ebx
5483	shll	$5,%edi
5484	xorl	%esi,%eax
5485	xorl	%edi,%ebx
5486	movl	8(%esp),%ecx
5487	movl	12(%esp),%edx
5488	movl	16(%esp),%esi
5489	movl	20(%esp),%edi
5490	addl	(%esp),%eax
5491	adcl	4(%esp),%ebx
5492	orl	%esi,%ecx
5493	orl	%edi,%edx
5494	andl	24(%esp),%ecx
5495	andl	28(%esp),%edx
5496	andl	8(%esp),%esi
5497	andl	12(%esp),%edi
5498	orl	%esi,%ecx
5499	orl	%edi,%edx
5500	addl	%ecx,%eax
5501	adcl	%edx,%ebx
5502	movl	%eax,(%esp)
5503	movl	%ebx,4(%esp)
5504	movb	(%ebp),%dl
5505	subl	$8,%esp
5506	leal	8(%ebp),%ebp
5507	cmpb	$23,%dl
5508	jne	.L01016_79_x86
5509	movl	840(%esp),%esi
5510	movl	844(%esp),%edi
5511	movl	(%esi),%eax
5512	movl	4(%esi),%ebx
5513	movl	8(%esi),%ecx
5514	movl	12(%esi),%edx
5515	addl	8(%esp),%eax
5516	adcl	12(%esp),%ebx
5517	movl	%eax,(%esi)
5518	movl	%ebx,4(%esi)
5519	addl	16(%esp),%ecx
5520	adcl	20(%esp),%edx
5521	movl	%ecx,8(%esi)
5522	movl	%edx,12(%esi)
5523	movl	16(%esi),%eax
5524	movl	20(%esi),%ebx
5525	movl	24(%esi),%ecx
5526	movl	28(%esi),%edx
5527	addl	24(%esp),%eax
5528	adcl	28(%esp),%ebx
5529	movl	%eax,16(%esi)
5530	movl	%ebx,20(%esi)
5531	addl	32(%esp),%ecx
5532	adcl	36(%esp),%edx
5533	movl	%ecx,24(%esi)
5534	movl	%edx,28(%esi)
5535	movl	32(%esi),%eax
5536	movl	36(%esi),%ebx
5537	movl	40(%esi),%ecx
5538	movl	44(%esi),%edx
5539	addl	40(%esp),%eax
5540	adcl	44(%esp),%ebx
5541	movl	%eax,32(%esi)
5542	movl	%ebx,36(%esi)
5543	addl	48(%esp),%ecx
5544	adcl	52(%esp),%edx
5545	movl	%ecx,40(%esi)
5546	movl	%edx,44(%esi)
5547	movl	48(%esi),%eax
5548	movl	52(%esi),%ebx
5549	movl	56(%esi),%ecx
5550	movl	60(%esi),%edx
5551	addl	56(%esp),%eax
5552	adcl	60(%esp),%ebx
5553	movl	%eax,48(%esi)
5554	movl	%ebx,52(%esi)
5555	addl	64(%esp),%ecx
5556	adcl	68(%esp),%edx
5557	movl	%ecx,56(%esi)
5558	movl	%edx,60(%esi)
5559	addl	$840,%esp
5560	subl	$640,%ebp
5561	cmpl	8(%esp),%edi
5562	jb	.L002loop_x86
5563	movl	12(%esp),%esp
5564	popl	%edi
5565	popl	%esi
5566	popl	%ebx
5567	popl	%ebp
5568	ret
5569.align	64
5570.L001K512:
5571.long	3609767458,1116352408
5572.long	602891725,1899447441
5573.long	3964484399,3049323471
5574.long	2173295548,3921009573
5575.long	4081628472,961987163
5576.long	3053834265,1508970993
5577.long	2937671579,2453635748
5578.long	3664609560,2870763221
5579.long	2734883394,3624381080
5580.long	1164996542,310598401
5581.long	1323610764,607225278
5582.long	3590304994,1426881987
5583.long	4068182383,1925078388
5584.long	991336113,2162078206
5585.long	633803317,2614888103
5586.long	3479774868,3248222580
5587.long	2666613458,3835390401
5588.long	944711139,4022224774
5589.long	2341262773,264347078
5590.long	2007800933,604807628
5591.long	1495990901,770255983
5592.long	1856431235,1249150122
5593.long	3175218132,1555081692
5594.long	2198950837,1996064986
5595.long	3999719339,2554220882
5596.long	766784016,2821834349
5597.long	2566594879,2952996808
5598.long	3203337956,3210313671
5599.long	1034457026,3336571891
5600.long	2466948901,3584528711
5601.long	3758326383,113926993
5602.long	168717936,338241895
5603.long	1188179964,666307205
5604.long	1546045734,773529912
5605.long	1522805485,1294757372
5606.long	2643833823,1396182291
5607.long	2343527390,1695183700
5608.long	1014477480,1986661051
5609.long	1206759142,2177026350
5610.long	344077627,2456956037
5611.long	1290863460,2730485921
5612.long	3158454273,2820302411
5613.long	3505952657,3259730800
5614.long	106217008,3345764771
5615.long	3606008344,3516065817
5616.long	1432725776,3600352804
5617.long	1467031594,4094571909
5618.long	851169720,275423344
5619.long	3100823752,430227734
5620.long	1363258195,506948616
5621.long	3750685593,659060556
5622.long	3785050280,883997877
5623.long	3318307427,958139571
5624.long	3812723403,1322822218
5625.long	2003034995,1537002063
5626.long	3602036899,1747873779
5627.long	1575990012,1955562222
5628.long	1125592928,2024104815
5629.long	2716904306,2227730452
5630.long	442776044,2361852424
5631.long	593698344,2428436474
5632.long	3733110249,2756734187
5633.long	2999351573,3204031479
5634.long	3815920427,3329325298
5635.long	3928383900,3391569614
5636.long	566280711,3515267271
5637.long	3454069534,3940187606
5638.long	4000239992,4118630271
5639.long	1914138554,116418474
5640.long	2731055270,174292421
5641.long	3203993006,289380356
5642.long	320620315,460393269
5643.long	587496836,685471733
5644.long	1086792851,852142971
5645.long	365543100,1017036298
5646.long	2618297676,1126000580
5647.long	3409855158,1288033470
5648.long	4234509866,1501505948
5649.long	987167468,1607167915
5650.long	1246189591,1816402316
5651.long	67438087,66051
5652.long	202182159,134810123
5653.size	sha512_block_data_order,.-.L_sha512_block_data_order_begin
5654.byte	83,72,65,53,49,50,32,98,108,111,99,107,32,116,114,97
5655.byte	110,115,102,111,114,109,32,102,111,114,32,120,56,54,44,32
5656.byte	67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97
5657.byte	112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103
5658.byte	62,0
5659.comm	OPENSSL_ia32cap_P,16,4
5660#endif
5661