aesni-sha1-x86_64.S revision 85dbb371d6ce544388360f64389b5007fe7f384b
1.text
2
3
4.globl	aesni_cbc_sha1_enc
5.type	aesni_cbc_sha1_enc,@function
6.align	16
7aesni_cbc_sha1_enc:
8
9	movl	OPENSSL_ia32cap_P+0(%rip),%r10d
10	movl	OPENSSL_ia32cap_P+4(%rip),%r11d
11	jmp	aesni_cbc_sha1_enc_ssse3
12	.byte	0xf3,0xc3
13.size	aesni_cbc_sha1_enc,.-aesni_cbc_sha1_enc
14.type	aesni_cbc_sha1_enc_ssse3,@function
15.align	16
16aesni_cbc_sha1_enc_ssse3:
17	movq	8(%rsp),%r10
18
19
20	pushq	%rbx
21	pushq	%rbp
22	pushq	%r12
23	pushq	%r13
24	pushq	%r14
25	pushq	%r15
26	leaq	-104(%rsp),%rsp
27
28
29	movq	%rdi,%r12
30	movq	%rsi,%r13
31	movq	%rdx,%r14
32	movq	%rcx,%r15
33	movdqu	(%r8),%xmm11
34	movq	%r8,88(%rsp)
35	shlq	$6,%r14
36	subq	%r12,%r13
37	movl	240(%r15),%r8d
38	addq	%r10,%r14
39
40	leaq	K_XX_XX(%rip),%r11
41	movl	0(%r9),%eax
42	movl	4(%r9),%ebx
43	movl	8(%r9),%ecx
44	movl	12(%r9),%edx
45	movl	%ebx,%esi
46	movl	16(%r9),%ebp
47
48	movdqa	64(%r11),%xmm6
49	movdqa	0(%r11),%xmm9
50	movdqu	0(%r10),%xmm0
51	movdqu	16(%r10),%xmm1
52	movdqu	32(%r10),%xmm2
53	movdqu	48(%r10),%xmm3
54.byte	102,15,56,0,198
55	addq	$64,%r10
56.byte	102,15,56,0,206
57.byte	102,15,56,0,214
58.byte	102,15,56,0,222
59	paddd	%xmm9,%xmm0
60	paddd	%xmm9,%xmm1
61	paddd	%xmm9,%xmm2
62	movdqa	%xmm0,0(%rsp)
63	psubd	%xmm9,%xmm0
64	movdqa	%xmm1,16(%rsp)
65	psubd	%xmm9,%xmm1
66	movdqa	%xmm2,32(%rsp)
67	psubd	%xmm9,%xmm2
68	movups	(%r15),%xmm13
69	movups	16(%r15),%xmm14
70	jmp	.Loop_ssse3
71.align	16
72.Loop_ssse3:
73	movdqa	%xmm1,%xmm4
74	addl	0(%rsp),%ebp
75	movups	0(%r12),%xmm12
76	xorps	%xmm13,%xmm12
77	xorps	%xmm12,%xmm11
78.byte	102,69,15,56,220,222
79	movups	32(%r15),%xmm15
80	xorl	%edx,%ecx
81	movdqa	%xmm3,%xmm8
82.byte	102,15,58,15,224,8
83	movl	%eax,%edi
84	roll	$5,%eax
85	paddd	%xmm3,%xmm9
86	andl	%ecx,%esi
87	xorl	%edx,%ecx
88	psrldq	$4,%xmm8
89	xorl	%edx,%esi
90	addl	%eax,%ebp
91	pxor	%xmm0,%xmm4
92	rorl	$2,%ebx
93	addl	%esi,%ebp
94	pxor	%xmm2,%xmm8
95	addl	4(%rsp),%edx
96	xorl	%ecx,%ebx
97	movl	%ebp,%esi
98	roll	$5,%ebp
99	pxor	%xmm8,%xmm4
100	andl	%ebx,%edi
101	xorl	%ecx,%ebx
102	movdqa	%xmm9,48(%rsp)
103	xorl	%ecx,%edi
104.byte	102,69,15,56,220,223
105	movups	48(%r15),%xmm14
106	addl	%ebp,%edx
107	movdqa	%xmm4,%xmm10
108	movdqa	%xmm4,%xmm8
109	rorl	$7,%eax
110	addl	%edi,%edx
111	addl	8(%rsp),%ecx
112	xorl	%ebx,%eax
113	pslldq	$12,%xmm10
114	paddd	%xmm4,%xmm4
115	movl	%edx,%edi
116	roll	$5,%edx
117	andl	%eax,%esi
118	xorl	%ebx,%eax
119	psrld	$31,%xmm8
120	xorl	%ebx,%esi
121	addl	%edx,%ecx
122	movdqa	%xmm10,%xmm9
123	rorl	$7,%ebp
124	addl	%esi,%ecx
125	psrld	$30,%xmm10
126	por	%xmm8,%xmm4
127	addl	12(%rsp),%ebx
128	xorl	%eax,%ebp
129	movl	%ecx,%esi
130	roll	$5,%ecx
131.byte	102,69,15,56,220,222
132	movups	64(%r15),%xmm15
133	pslld	$2,%xmm9
134	pxor	%xmm10,%xmm4
135	andl	%ebp,%edi
136	xorl	%eax,%ebp
137	movdqa	0(%r11),%xmm10
138	xorl	%eax,%edi
139	addl	%ecx,%ebx
140	pxor	%xmm9,%xmm4
141	rorl	$7,%edx
142	addl	%edi,%ebx
143	movdqa	%xmm2,%xmm5
144	addl	16(%rsp),%eax
145	xorl	%ebp,%edx
146	movdqa	%xmm4,%xmm9
147.byte	102,15,58,15,233,8
148	movl	%ebx,%edi
149	roll	$5,%ebx
150	paddd	%xmm4,%xmm10
151	andl	%edx,%esi
152	xorl	%ebp,%edx
153	psrldq	$4,%xmm9
154	xorl	%ebp,%esi
155	addl	%ebx,%eax
156	pxor	%xmm1,%xmm5
157	rorl	$7,%ecx
158	addl	%esi,%eax
159	pxor	%xmm3,%xmm9
160	addl	20(%rsp),%ebp
161.byte	102,69,15,56,220,223
162	movups	80(%r15),%xmm14
163	xorl	%edx,%ecx
164	movl	%eax,%esi
165	roll	$5,%eax
166	pxor	%xmm9,%xmm5
167	andl	%ecx,%edi
168	xorl	%edx,%ecx
169	movdqa	%xmm10,0(%rsp)
170	xorl	%edx,%edi
171	addl	%eax,%ebp
172	movdqa	%xmm5,%xmm8
173	movdqa	%xmm5,%xmm9
174	rorl	$7,%ebx
175	addl	%edi,%ebp
176	addl	24(%rsp),%edx
177	xorl	%ecx,%ebx
178	pslldq	$12,%xmm8
179	paddd	%xmm5,%xmm5
180	movl	%ebp,%edi
181	roll	$5,%ebp
182	andl	%ebx,%esi
183	xorl	%ecx,%ebx
184	psrld	$31,%xmm9
185	xorl	%ecx,%esi
186.byte	102,69,15,56,220,222
187	movups	96(%r15),%xmm15
188	addl	%ebp,%edx
189	movdqa	%xmm8,%xmm10
190	rorl	$7,%eax
191	addl	%esi,%edx
192	psrld	$30,%xmm8
193	por	%xmm9,%xmm5
194	addl	28(%rsp),%ecx
195	xorl	%ebx,%eax
196	movl	%edx,%esi
197	roll	$5,%edx
198	pslld	$2,%xmm10
199	pxor	%xmm8,%xmm5
200	andl	%eax,%edi
201	xorl	%ebx,%eax
202	movdqa	16(%r11),%xmm8
203	xorl	%ebx,%edi
204	addl	%edx,%ecx
205	pxor	%xmm10,%xmm5
206	rorl	$7,%ebp
207	addl	%edi,%ecx
208	movdqa	%xmm3,%xmm6
209	addl	32(%rsp),%ebx
210	xorl	%eax,%ebp
211	movdqa	%xmm5,%xmm10
212.byte	102,15,58,15,242,8
213	movl	%ecx,%edi
214	roll	$5,%ecx
215.byte	102,69,15,56,220,223
216	movups	112(%r15),%xmm14
217	paddd	%xmm5,%xmm8
218	andl	%ebp,%esi
219	xorl	%eax,%ebp
220	psrldq	$4,%xmm10
221	xorl	%eax,%esi
222	addl	%ecx,%ebx
223	pxor	%xmm2,%xmm6
224	rorl	$7,%edx
225	addl	%esi,%ebx
226	pxor	%xmm4,%xmm10
227	addl	36(%rsp),%eax
228	xorl	%ebp,%edx
229	movl	%ebx,%esi
230	roll	$5,%ebx
231	pxor	%xmm10,%xmm6
232	andl	%edx,%edi
233	xorl	%ebp,%edx
234	movdqa	%xmm8,16(%rsp)
235	xorl	%ebp,%edi
236	addl	%ebx,%eax
237	movdqa	%xmm6,%xmm9
238	movdqa	%xmm6,%xmm10
239	rorl	$7,%ecx
240	addl	%edi,%eax
241	addl	40(%rsp),%ebp
242.byte	102,69,15,56,220,222
243	movups	128(%r15),%xmm15
244	xorl	%edx,%ecx
245	pslldq	$12,%xmm9
246	paddd	%xmm6,%xmm6
247	movl	%eax,%edi
248	roll	$5,%eax
249	andl	%ecx,%esi
250	xorl	%edx,%ecx
251	psrld	$31,%xmm10
252	xorl	%edx,%esi
253	addl	%eax,%ebp
254	movdqa	%xmm9,%xmm8
255	rorl	$7,%ebx
256	addl	%esi,%ebp
257	psrld	$30,%xmm9
258	por	%xmm10,%xmm6
259	addl	44(%rsp),%edx
260	xorl	%ecx,%ebx
261	movl	%ebp,%esi
262	roll	$5,%ebp
263	pslld	$2,%xmm8
264	pxor	%xmm9,%xmm6
265	andl	%ebx,%edi
266	xorl	%ecx,%ebx
267	movdqa	16(%r11),%xmm9
268	xorl	%ecx,%edi
269.byte	102,69,15,56,220,223
270	movups	144(%r15),%xmm14
271	addl	%ebp,%edx
272	pxor	%xmm8,%xmm6
273	rorl	$7,%eax
274	addl	%edi,%edx
275	movdqa	%xmm4,%xmm7
276	addl	48(%rsp),%ecx
277	xorl	%ebx,%eax
278	movdqa	%xmm6,%xmm8
279.byte	102,15,58,15,251,8
280	movl	%edx,%edi
281	roll	$5,%edx
282	paddd	%xmm6,%xmm9
283	andl	%eax,%esi
284	xorl	%ebx,%eax
285	psrldq	$4,%xmm8
286	xorl	%ebx,%esi
287	addl	%edx,%ecx
288	pxor	%xmm3,%xmm7
289	rorl	$7,%ebp
290	addl	%esi,%ecx
291	pxor	%xmm5,%xmm8
292	addl	52(%rsp),%ebx
293	xorl	%eax,%ebp
294	movl	%ecx,%esi
295	roll	$5,%ecx
296.byte	102,69,15,56,220,222
297	movups	160(%r15),%xmm15
298	pxor	%xmm8,%xmm7
299	andl	%ebp,%edi
300	xorl	%eax,%ebp
301	movdqa	%xmm9,32(%rsp)
302	xorl	%eax,%edi
303	addl	%ecx,%ebx
304	movdqa	%xmm7,%xmm10
305	movdqa	%xmm7,%xmm8
306	rorl	$7,%edx
307	addl	%edi,%ebx
308	addl	56(%rsp),%eax
309	xorl	%ebp,%edx
310	pslldq	$12,%xmm10
311	paddd	%xmm7,%xmm7
312	movl	%ebx,%edi
313	roll	$5,%ebx
314	andl	%edx,%esi
315	xorl	%ebp,%edx
316	psrld	$31,%xmm8
317	xorl	%ebp,%esi
318	addl	%ebx,%eax
319	movdqa	%xmm10,%xmm9
320	rorl	$7,%ecx
321	addl	%esi,%eax
322	psrld	$30,%xmm10
323	por	%xmm8,%xmm7
324	addl	60(%rsp),%ebp
325	cmpl	$11,%r8d
326	jb	.Laesenclast1
327	movups	176(%r15),%xmm14
328.byte	102,69,15,56,220,223
329	movups	192(%r15),%xmm15
330.byte	102,69,15,56,220,222
331	je	.Laesenclast1
332	movups	208(%r15),%xmm14
333.byte	102,69,15,56,220,223
334	movups	224(%r15),%xmm15
335.byte	102,69,15,56,220,222
336.Laesenclast1:
337.byte	102,69,15,56,221,223
338	movups	16(%r15),%xmm14
339	xorl	%edx,%ecx
340	movl	%eax,%esi
341	roll	$5,%eax
342	pslld	$2,%xmm9
343	pxor	%xmm10,%xmm7
344	andl	%ecx,%edi
345	xorl	%edx,%ecx
346	movdqa	16(%r11),%xmm10
347	xorl	%edx,%edi
348	addl	%eax,%ebp
349	pxor	%xmm9,%xmm7
350	rorl	$7,%ebx
351	addl	%edi,%ebp
352	movdqa	%xmm7,%xmm9
353	addl	0(%rsp),%edx
354	pxor	%xmm4,%xmm0
355.byte	102,68,15,58,15,206,8
356	xorl	%ecx,%ebx
357	movl	%ebp,%edi
358	roll	$5,%ebp
359	pxor	%xmm1,%xmm0
360	andl	%ebx,%esi
361	xorl	%ecx,%ebx
362	movdqa	%xmm10,%xmm8
363	paddd	%xmm7,%xmm10
364	xorl	%ecx,%esi
365	movups	16(%r12),%xmm12
366	xorps	%xmm13,%xmm12
367	movups	%xmm11,0(%r13,%r12,1)
368	xorps	%xmm12,%xmm11
369.byte	102,69,15,56,220,222
370	movups	32(%r15),%xmm15
371	addl	%ebp,%edx
372	pxor	%xmm9,%xmm0
373	rorl	$7,%eax
374	addl	%esi,%edx
375	addl	4(%rsp),%ecx
376	xorl	%ebx,%eax
377	movdqa	%xmm0,%xmm9
378	movdqa	%xmm10,48(%rsp)
379	movl	%edx,%esi
380	roll	$5,%edx
381	andl	%eax,%edi
382	xorl	%ebx,%eax
383	pslld	$2,%xmm0
384	xorl	%ebx,%edi
385	addl	%edx,%ecx
386	psrld	$30,%xmm9
387	rorl	$7,%ebp
388	addl	%edi,%ecx
389	addl	8(%rsp),%ebx
390	xorl	%eax,%ebp
391	movl	%ecx,%edi
392	roll	$5,%ecx
393.byte	102,69,15,56,220,223
394	movups	48(%r15),%xmm14
395	por	%xmm9,%xmm0
396	andl	%ebp,%esi
397	xorl	%eax,%ebp
398	movdqa	%xmm0,%xmm10
399	xorl	%eax,%esi
400	addl	%ecx,%ebx
401	rorl	$7,%edx
402	addl	%esi,%ebx
403	addl	12(%rsp),%eax
404	xorl	%ebp,%edx
405	movl	%ebx,%esi
406	roll	$5,%ebx
407	andl	%edx,%edi
408	xorl	%ebp,%edx
409	xorl	%ebp,%edi
410	addl	%ebx,%eax
411	rorl	$7,%ecx
412	addl	%edi,%eax
413	addl	16(%rsp),%ebp
414.byte	102,69,15,56,220,222
415	movups	64(%r15),%xmm15
416	pxor	%xmm5,%xmm1
417.byte	102,68,15,58,15,215,8
418	xorl	%edx,%esi
419	movl	%eax,%edi
420	roll	$5,%eax
421	pxor	%xmm2,%xmm1
422	xorl	%ecx,%esi
423	addl	%eax,%ebp
424	movdqa	%xmm8,%xmm9
425	paddd	%xmm0,%xmm8
426	rorl	$7,%ebx
427	addl	%esi,%ebp
428	pxor	%xmm10,%xmm1
429	addl	20(%rsp),%edx
430	xorl	%ecx,%edi
431	movl	%ebp,%esi
432	roll	$5,%ebp
433	movdqa	%xmm1,%xmm10
434	movdqa	%xmm8,0(%rsp)
435	xorl	%ebx,%edi
436	addl	%ebp,%edx
437	rorl	$7,%eax
438	addl	%edi,%edx
439	pslld	$2,%xmm1
440	addl	24(%rsp),%ecx
441	xorl	%ebx,%esi
442	psrld	$30,%xmm10
443	movl	%edx,%edi
444	roll	$5,%edx
445	xorl	%eax,%esi
446.byte	102,69,15,56,220,223
447	movups	80(%r15),%xmm14
448	addl	%edx,%ecx
449	rorl	$7,%ebp
450	addl	%esi,%ecx
451	por	%xmm10,%xmm1
452	addl	28(%rsp),%ebx
453	xorl	%eax,%edi
454	movdqa	%xmm1,%xmm8
455	movl	%ecx,%esi
456	roll	$5,%ecx
457	xorl	%ebp,%edi
458	addl	%ecx,%ebx
459	rorl	$7,%edx
460	addl	%edi,%ebx
461	addl	32(%rsp),%eax
462	pxor	%xmm6,%xmm2
463.byte	102,68,15,58,15,192,8
464	xorl	%ebp,%esi
465	movl	%ebx,%edi
466	roll	$5,%ebx
467	pxor	%xmm3,%xmm2
468	xorl	%edx,%esi
469	addl	%ebx,%eax
470	movdqa	32(%r11),%xmm10
471	paddd	%xmm1,%xmm9
472	rorl	$7,%ecx
473	addl	%esi,%eax
474	pxor	%xmm8,%xmm2
475	addl	36(%rsp),%ebp
476.byte	102,69,15,56,220,222
477	movups	96(%r15),%xmm15
478	xorl	%edx,%edi
479	movl	%eax,%esi
480	roll	$5,%eax
481	movdqa	%xmm2,%xmm8
482	movdqa	%xmm9,16(%rsp)
483	xorl	%ecx,%edi
484	addl	%eax,%ebp
485	rorl	$7,%ebx
486	addl	%edi,%ebp
487	pslld	$2,%xmm2
488	addl	40(%rsp),%edx
489	xorl	%ecx,%esi
490	psrld	$30,%xmm8
491	movl	%ebp,%edi
492	roll	$5,%ebp
493	xorl	%ebx,%esi
494	addl	%ebp,%edx
495	rorl	$7,%eax
496	addl	%esi,%edx
497	por	%xmm8,%xmm2
498	addl	44(%rsp),%ecx
499	xorl	%ebx,%edi
500	movdqa	%xmm2,%xmm9
501	movl	%edx,%esi
502	roll	$5,%edx
503	xorl	%eax,%edi
504.byte	102,69,15,56,220,223
505	movups	112(%r15),%xmm14
506	addl	%edx,%ecx
507	rorl	$7,%ebp
508	addl	%edi,%ecx
509	addl	48(%rsp),%ebx
510	pxor	%xmm7,%xmm3
511.byte	102,68,15,58,15,201,8
512	xorl	%eax,%esi
513	movl	%ecx,%edi
514	roll	$5,%ecx
515	pxor	%xmm4,%xmm3
516	xorl	%ebp,%esi
517	addl	%ecx,%ebx
518	movdqa	%xmm10,%xmm8
519	paddd	%xmm2,%xmm10
520	rorl	$7,%edx
521	addl	%esi,%ebx
522	pxor	%xmm9,%xmm3
523	addl	52(%rsp),%eax
524	xorl	%ebp,%edi
525	movl	%ebx,%esi
526	roll	$5,%ebx
527	movdqa	%xmm3,%xmm9
528	movdqa	%xmm10,32(%rsp)
529	xorl	%edx,%edi
530	addl	%ebx,%eax
531	rorl	$7,%ecx
532	addl	%edi,%eax
533	pslld	$2,%xmm3
534	addl	56(%rsp),%ebp
535.byte	102,69,15,56,220,222
536	movups	128(%r15),%xmm15
537	xorl	%edx,%esi
538	psrld	$30,%xmm9
539	movl	%eax,%edi
540	roll	$5,%eax
541	xorl	%ecx,%esi
542	addl	%eax,%ebp
543	rorl	$7,%ebx
544	addl	%esi,%ebp
545	por	%xmm9,%xmm3
546	addl	60(%rsp),%edx
547	xorl	%ecx,%edi
548	movdqa	%xmm3,%xmm10
549	movl	%ebp,%esi
550	roll	$5,%ebp
551	xorl	%ebx,%edi
552	addl	%ebp,%edx
553	rorl	$7,%eax
554	addl	%edi,%edx
555	addl	0(%rsp),%ecx
556	pxor	%xmm0,%xmm4
557.byte	102,68,15,58,15,210,8
558	xorl	%ebx,%esi
559	movl	%edx,%edi
560	roll	$5,%edx
561	pxor	%xmm5,%xmm4
562	xorl	%eax,%esi
563.byte	102,69,15,56,220,223
564	movups	144(%r15),%xmm14
565	addl	%edx,%ecx
566	movdqa	%xmm8,%xmm9
567	paddd	%xmm3,%xmm8
568	rorl	$7,%ebp
569	addl	%esi,%ecx
570	pxor	%xmm10,%xmm4
571	addl	4(%rsp),%ebx
572	xorl	%eax,%edi
573	movl	%ecx,%esi
574	roll	$5,%ecx
575	movdqa	%xmm4,%xmm10
576	movdqa	%xmm8,48(%rsp)
577	xorl	%ebp,%edi
578	addl	%ecx,%ebx
579	rorl	$7,%edx
580	addl	%edi,%ebx
581	pslld	$2,%xmm4
582	addl	8(%rsp),%eax
583	xorl	%ebp,%esi
584	psrld	$30,%xmm10
585	movl	%ebx,%edi
586	roll	$5,%ebx
587	xorl	%edx,%esi
588	addl	%ebx,%eax
589	rorl	$7,%ecx
590	addl	%esi,%eax
591	por	%xmm10,%xmm4
592	addl	12(%rsp),%ebp
593.byte	102,69,15,56,220,222
594	movups	160(%r15),%xmm15
595	xorl	%edx,%edi
596	movdqa	%xmm4,%xmm8
597	movl	%eax,%esi
598	roll	$5,%eax
599	xorl	%ecx,%edi
600	addl	%eax,%ebp
601	rorl	$7,%ebx
602	addl	%edi,%ebp
603	addl	16(%rsp),%edx
604	pxor	%xmm1,%xmm5
605.byte	102,68,15,58,15,195,8
606	xorl	%ecx,%esi
607	movl	%ebp,%edi
608	roll	$5,%ebp
609	pxor	%xmm6,%xmm5
610	xorl	%ebx,%esi
611	addl	%ebp,%edx
612	movdqa	%xmm9,%xmm10
613	paddd	%xmm4,%xmm9
614	rorl	$7,%eax
615	addl	%esi,%edx
616	pxor	%xmm8,%xmm5
617	addl	20(%rsp),%ecx
618	xorl	%ebx,%edi
619	movl	%edx,%esi
620	roll	$5,%edx
621	movdqa	%xmm5,%xmm8
622	movdqa	%xmm9,0(%rsp)
623	xorl	%eax,%edi
624	cmpl	$11,%r8d
625	jb	.Laesenclast2
626	movups	176(%r15),%xmm14
627.byte	102,69,15,56,220,223
628	movups	192(%r15),%xmm15
629.byte	102,69,15,56,220,222
630	je	.Laesenclast2
631	movups	208(%r15),%xmm14
632.byte	102,69,15,56,220,223
633	movups	224(%r15),%xmm15
634.byte	102,69,15,56,220,222
635.Laesenclast2:
636.byte	102,69,15,56,221,223
637	movups	16(%r15),%xmm14
638	addl	%edx,%ecx
639	rorl	$7,%ebp
640	addl	%edi,%ecx
641	pslld	$2,%xmm5
642	addl	24(%rsp),%ebx
643	xorl	%eax,%esi
644	psrld	$30,%xmm8
645	movl	%ecx,%edi
646	roll	$5,%ecx
647	xorl	%ebp,%esi
648	addl	%ecx,%ebx
649	rorl	$7,%edx
650	addl	%esi,%ebx
651	por	%xmm8,%xmm5
652	addl	28(%rsp),%eax
653	xorl	%ebp,%edi
654	movdqa	%xmm5,%xmm9
655	movl	%ebx,%esi
656	roll	$5,%ebx
657	xorl	%edx,%edi
658	addl	%ebx,%eax
659	rorl	$7,%ecx
660	addl	%edi,%eax
661	movl	%ecx,%edi
662	movups	32(%r12),%xmm12
663	xorps	%xmm13,%xmm12
664	movups	%xmm11,16(%r13,%r12,1)
665	xorps	%xmm12,%xmm11
666.byte	102,69,15,56,220,222
667	movups	32(%r15),%xmm15
668	pxor	%xmm2,%xmm6
669.byte	102,68,15,58,15,204,8
670	xorl	%edx,%ecx
671	addl	32(%rsp),%ebp
672	andl	%edx,%edi
673	pxor	%xmm7,%xmm6
674	andl	%ecx,%esi
675	rorl	$7,%ebx
676	movdqa	%xmm10,%xmm8
677	paddd	%xmm5,%xmm10
678	addl	%edi,%ebp
679	movl	%eax,%edi
680	pxor	%xmm9,%xmm6
681	roll	$5,%eax
682	addl	%esi,%ebp
683	xorl	%edx,%ecx
684	addl	%eax,%ebp
685	movdqa	%xmm6,%xmm9
686	movdqa	%xmm10,16(%rsp)
687	movl	%ebx,%esi
688	xorl	%ecx,%ebx
689	addl	36(%rsp),%edx
690	andl	%ecx,%esi
691	pslld	$2,%xmm6
692	andl	%ebx,%edi
693	rorl	$7,%eax
694	psrld	$30,%xmm9
695	addl	%esi,%edx
696	movl	%ebp,%esi
697	roll	$5,%ebp
698.byte	102,69,15,56,220,223
699	movups	48(%r15),%xmm14
700	addl	%edi,%edx
701	xorl	%ecx,%ebx
702	addl	%ebp,%edx
703	por	%xmm9,%xmm6
704	movl	%eax,%edi
705	xorl	%ebx,%eax
706	movdqa	%xmm6,%xmm10
707	addl	40(%rsp),%ecx
708	andl	%ebx,%edi
709	andl	%eax,%esi
710	rorl	$7,%ebp
711	addl	%edi,%ecx
712	movl	%edx,%edi
713	roll	$5,%edx
714	addl	%esi,%ecx
715	xorl	%ebx,%eax
716	addl	%edx,%ecx
717	movl	%ebp,%esi
718	xorl	%eax,%ebp
719	addl	44(%rsp),%ebx
720	andl	%eax,%esi
721	andl	%ebp,%edi
722.byte	102,69,15,56,220,222
723	movups	64(%r15),%xmm15
724	rorl	$7,%edx
725	addl	%esi,%ebx
726	movl	%ecx,%esi
727	roll	$5,%ecx
728	addl	%edi,%ebx
729	xorl	%eax,%ebp
730	addl	%ecx,%ebx
731	movl	%edx,%edi
732	pxor	%xmm3,%xmm7
733.byte	102,68,15,58,15,213,8
734	xorl	%ebp,%edx
735	addl	48(%rsp),%eax
736	andl	%ebp,%edi
737	pxor	%xmm0,%xmm7
738	andl	%edx,%esi
739	rorl	$7,%ecx
740	movdqa	48(%r11),%xmm9
741	paddd	%xmm6,%xmm8
742	addl	%edi,%eax
743	movl	%ebx,%edi
744	pxor	%xmm10,%xmm7
745	roll	$5,%ebx
746	addl	%esi,%eax
747	xorl	%ebp,%edx
748	addl	%ebx,%eax
749	movdqa	%xmm7,%xmm10
750	movdqa	%xmm8,32(%rsp)
751	movl	%ecx,%esi
752.byte	102,69,15,56,220,223
753	movups	80(%r15),%xmm14
754	xorl	%edx,%ecx
755	addl	52(%rsp),%ebp
756	andl	%edx,%esi
757	pslld	$2,%xmm7
758	andl	%ecx,%edi
759	rorl	$7,%ebx
760	psrld	$30,%xmm10
761	addl	%esi,%ebp
762	movl	%eax,%esi
763	roll	$5,%eax
764	addl	%edi,%ebp
765	xorl	%edx,%ecx
766	addl	%eax,%ebp
767	por	%xmm10,%xmm7
768	movl	%ebx,%edi
769	xorl	%ecx,%ebx
770	movdqa	%xmm7,%xmm8
771	addl	56(%rsp),%edx
772	andl	%ecx,%edi
773	andl	%ebx,%esi
774	rorl	$7,%eax
775	addl	%edi,%edx
776	movl	%ebp,%edi
777	roll	$5,%ebp
778.byte	102,69,15,56,220,222
779	movups	96(%r15),%xmm15
780	addl	%esi,%edx
781	xorl	%ecx,%ebx
782	addl	%ebp,%edx
783	movl	%eax,%esi
784	xorl	%ebx,%eax
785	addl	60(%rsp),%ecx
786	andl	%ebx,%esi
787	andl	%eax,%edi
788	rorl	$7,%ebp
789	addl	%esi,%ecx
790	movl	%edx,%esi
791	roll	$5,%edx
792	addl	%edi,%ecx
793	xorl	%ebx,%eax
794	addl	%edx,%ecx
795	movl	%ebp,%edi
796	pxor	%xmm4,%xmm0
797.byte	102,68,15,58,15,198,8
798	xorl	%eax,%ebp
799	addl	0(%rsp),%ebx
800	andl	%eax,%edi
801	pxor	%xmm1,%xmm0
802	andl	%ebp,%esi
803.byte	102,69,15,56,220,223
804	movups	112(%r15),%xmm14
805	rorl	$7,%edx
806	movdqa	%xmm9,%xmm10
807	paddd	%xmm7,%xmm9
808	addl	%edi,%ebx
809	movl	%ecx,%edi
810	pxor	%xmm8,%xmm0
811	roll	$5,%ecx
812	addl	%esi,%ebx
813	xorl	%eax,%ebp
814	addl	%ecx,%ebx
815	movdqa	%xmm0,%xmm8
816	movdqa	%xmm9,48(%rsp)
817	movl	%edx,%esi
818	xorl	%ebp,%edx
819	addl	4(%rsp),%eax
820	andl	%ebp,%esi
821	pslld	$2,%xmm0
822	andl	%edx,%edi
823	rorl	$7,%ecx
824	psrld	$30,%xmm8
825	addl	%esi,%eax
826	movl	%ebx,%esi
827	roll	$5,%ebx
828	addl	%edi,%eax
829	xorl	%ebp,%edx
830	addl	%ebx,%eax
831	por	%xmm8,%xmm0
832	movl	%ecx,%edi
833.byte	102,69,15,56,220,222
834	movups	128(%r15),%xmm15
835	xorl	%edx,%ecx
836	movdqa	%xmm0,%xmm9
837	addl	8(%rsp),%ebp
838	andl	%edx,%edi
839	andl	%ecx,%esi
840	rorl	$7,%ebx
841	addl	%edi,%ebp
842	movl	%eax,%edi
843	roll	$5,%eax
844	addl	%esi,%ebp
845	xorl	%edx,%ecx
846	addl	%eax,%ebp
847	movl	%ebx,%esi
848	xorl	%ecx,%ebx
849	addl	12(%rsp),%edx
850	andl	%ecx,%esi
851	andl	%ebx,%edi
852	rorl	$7,%eax
853	addl	%esi,%edx
854	movl	%ebp,%esi
855	roll	$5,%ebp
856.byte	102,69,15,56,220,223
857	movups	144(%r15),%xmm14
858	addl	%edi,%edx
859	xorl	%ecx,%ebx
860	addl	%ebp,%edx
861	movl	%eax,%edi
862	pxor	%xmm5,%xmm1
863.byte	102,68,15,58,15,207,8
864	xorl	%ebx,%eax
865	addl	16(%rsp),%ecx
866	andl	%ebx,%edi
867	pxor	%xmm2,%xmm1
868	andl	%eax,%esi
869	rorl	$7,%ebp
870	movdqa	%xmm10,%xmm8
871	paddd	%xmm0,%xmm10
872	addl	%edi,%ecx
873	movl	%edx,%edi
874	pxor	%xmm9,%xmm1
875	roll	$5,%edx
876	addl	%esi,%ecx
877	xorl	%ebx,%eax
878	addl	%edx,%ecx
879	movdqa	%xmm1,%xmm9
880	movdqa	%xmm10,0(%rsp)
881	movl	%ebp,%esi
882	xorl	%eax,%ebp
883	addl	20(%rsp),%ebx
884	andl	%eax,%esi
885	pslld	$2,%xmm1
886	andl	%ebp,%edi
887.byte	102,69,15,56,220,222
888	movups	160(%r15),%xmm15
889	rorl	$7,%edx
890	psrld	$30,%xmm9
891	addl	%esi,%ebx
892	movl	%ecx,%esi
893	roll	$5,%ecx
894	addl	%edi,%ebx
895	xorl	%eax,%ebp
896	addl	%ecx,%ebx
897	por	%xmm9,%xmm1
898	movl	%edx,%edi
899	xorl	%ebp,%edx
900	movdqa	%xmm1,%xmm10
901	addl	24(%rsp),%eax
902	andl	%ebp,%edi
903	andl	%edx,%esi
904	rorl	$7,%ecx
905	addl	%edi,%eax
906	movl	%ebx,%edi
907	roll	$5,%ebx
908	addl	%esi,%eax
909	xorl	%ebp,%edx
910	addl	%ebx,%eax
911	movl	%ecx,%esi
912	cmpl	$11,%r8d
913	jb	.Laesenclast3
914	movups	176(%r15),%xmm14
915.byte	102,69,15,56,220,223
916	movups	192(%r15),%xmm15
917.byte	102,69,15,56,220,222
918	je	.Laesenclast3
919	movups	208(%r15),%xmm14
920.byte	102,69,15,56,220,223
921	movups	224(%r15),%xmm15
922.byte	102,69,15,56,220,222
923.Laesenclast3:
924.byte	102,69,15,56,221,223
925	movups	16(%r15),%xmm14
926	xorl	%edx,%ecx
927	addl	28(%rsp),%ebp
928	andl	%edx,%esi
929	andl	%ecx,%edi
930	rorl	$7,%ebx
931	addl	%esi,%ebp
932	movl	%eax,%esi
933	roll	$5,%eax
934	addl	%edi,%ebp
935	xorl	%edx,%ecx
936	addl	%eax,%ebp
937	movl	%ebx,%edi
938	pxor	%xmm6,%xmm2
939.byte	102,68,15,58,15,208,8
940	xorl	%ecx,%ebx
941	addl	32(%rsp),%edx
942	andl	%ecx,%edi
943	pxor	%xmm3,%xmm2
944	andl	%ebx,%esi
945	rorl	$7,%eax
946	movdqa	%xmm8,%xmm9
947	paddd	%xmm1,%xmm8
948	addl	%edi,%edx
949	movl	%ebp,%edi
950	pxor	%xmm10,%xmm2
951	roll	$5,%ebp
952	movups	48(%r12),%xmm12
953	xorps	%xmm13,%xmm12
954	movups	%xmm11,32(%r13,%r12,1)
955	xorps	%xmm12,%xmm11
956.byte	102,69,15,56,220,222
957	movups	32(%r15),%xmm15
958	addl	%esi,%edx
959	xorl	%ecx,%ebx
960	addl	%ebp,%edx
961	movdqa	%xmm2,%xmm10
962	movdqa	%xmm8,16(%rsp)
963	movl	%eax,%esi
964	xorl	%ebx,%eax
965	addl	36(%rsp),%ecx
966	andl	%ebx,%esi
967	pslld	$2,%xmm2
968	andl	%eax,%edi
969	rorl	$7,%ebp
970	psrld	$30,%xmm10
971	addl	%esi,%ecx
972	movl	%edx,%esi
973	roll	$5,%edx
974	addl	%edi,%ecx
975	xorl	%ebx,%eax
976	addl	%edx,%ecx
977	por	%xmm10,%xmm2
978	movl	%ebp,%edi
979	xorl	%eax,%ebp
980	movdqa	%xmm2,%xmm8
981	addl	40(%rsp),%ebx
982	andl	%eax,%edi
983	andl	%ebp,%esi
984.byte	102,69,15,56,220,223
985	movups	48(%r15),%xmm14
986	rorl	$7,%edx
987	addl	%edi,%ebx
988	movl	%ecx,%edi
989	roll	$5,%ecx
990	addl	%esi,%ebx
991	xorl	%eax,%ebp
992	addl	%ecx,%ebx
993	movl	%edx,%esi
994	xorl	%ebp,%edx
995	addl	44(%rsp),%eax
996	andl	%ebp,%esi
997	andl	%edx,%edi
998	rorl	$7,%ecx
999	addl	%esi,%eax
1000	movl	%ebx,%esi
1001	roll	$5,%ebx
1002	addl	%edi,%eax
1003	xorl	%ebp,%edx
1004	addl	%ebx,%eax
1005	addl	48(%rsp),%ebp
1006.byte	102,69,15,56,220,222
1007	movups	64(%r15),%xmm15
1008	pxor	%xmm7,%xmm3
1009.byte	102,68,15,58,15,193,8
1010	xorl	%edx,%esi
1011	movl	%eax,%edi
1012	roll	$5,%eax
1013	pxor	%xmm4,%xmm3
1014	xorl	%ecx,%esi
1015	addl	%eax,%ebp
1016	movdqa	%xmm9,%xmm10
1017	paddd	%xmm2,%xmm9
1018	rorl	$7,%ebx
1019	addl	%esi,%ebp
1020	pxor	%xmm8,%xmm3
1021	addl	52(%rsp),%edx
1022	xorl	%ecx,%edi
1023	movl	%ebp,%esi
1024	roll	$5,%ebp
1025	movdqa	%xmm3,%xmm8
1026	movdqa	%xmm9,32(%rsp)
1027	xorl	%ebx,%edi
1028	addl	%ebp,%edx
1029	rorl	$7,%eax
1030	addl	%edi,%edx
1031	pslld	$2,%xmm3
1032	addl	56(%rsp),%ecx
1033	xorl	%ebx,%esi
1034	psrld	$30,%xmm8
1035	movl	%edx,%edi
1036	roll	$5,%edx
1037	xorl	%eax,%esi
1038.byte	102,69,15,56,220,223
1039	movups	80(%r15),%xmm14
1040	addl	%edx,%ecx
1041	rorl	$7,%ebp
1042	addl	%esi,%ecx
1043	por	%xmm8,%xmm3
1044	addl	60(%rsp),%ebx
1045	xorl	%eax,%edi
1046	movl	%ecx,%esi
1047	roll	$5,%ecx
1048	xorl	%ebp,%edi
1049	addl	%ecx,%ebx
1050	rorl	$7,%edx
1051	addl	%edi,%ebx
1052	addl	0(%rsp),%eax
1053	paddd	%xmm3,%xmm10
1054	xorl	%ebp,%esi
1055	movl	%ebx,%edi
1056	roll	$5,%ebx
1057	xorl	%edx,%esi
1058	movdqa	%xmm10,48(%rsp)
1059	addl	%ebx,%eax
1060	rorl	$7,%ecx
1061	addl	%esi,%eax
1062	addl	4(%rsp),%ebp
1063.byte	102,69,15,56,220,222
1064	movups	96(%r15),%xmm15
1065	xorl	%edx,%edi
1066	movl	%eax,%esi
1067	roll	$5,%eax
1068	xorl	%ecx,%edi
1069	addl	%eax,%ebp
1070	rorl	$7,%ebx
1071	addl	%edi,%ebp
1072	addl	8(%rsp),%edx
1073	xorl	%ecx,%esi
1074	movl	%ebp,%edi
1075	roll	$5,%ebp
1076	xorl	%ebx,%esi
1077	addl	%ebp,%edx
1078	rorl	$7,%eax
1079	addl	%esi,%edx
1080	addl	12(%rsp),%ecx
1081	xorl	%ebx,%edi
1082	movl	%edx,%esi
1083	roll	$5,%edx
1084	xorl	%eax,%edi
1085.byte	102,69,15,56,220,223
1086	movups	112(%r15),%xmm14
1087	addl	%edx,%ecx
1088	rorl	$7,%ebp
1089	addl	%edi,%ecx
1090	cmpq	%r14,%r10
1091	je	.Ldone_ssse3
1092	movdqa	64(%r11),%xmm6
1093	movdqa	0(%r11),%xmm9
1094	movdqu	0(%r10),%xmm0
1095	movdqu	16(%r10),%xmm1
1096	movdqu	32(%r10),%xmm2
1097	movdqu	48(%r10),%xmm3
1098.byte	102,15,56,0,198
1099	addq	$64,%r10
1100	addl	16(%rsp),%ebx
1101	xorl	%eax,%esi
1102.byte	102,15,56,0,206
1103	movl	%ecx,%edi
1104	roll	$5,%ecx
1105	paddd	%xmm9,%xmm0
1106	xorl	%ebp,%esi
1107	addl	%ecx,%ebx
1108	rorl	$7,%edx
1109	addl	%esi,%ebx
1110	movdqa	%xmm0,0(%rsp)
1111	addl	20(%rsp),%eax
1112	xorl	%ebp,%edi
1113	psubd	%xmm9,%xmm0
1114	movl	%ebx,%esi
1115	roll	$5,%ebx
1116	xorl	%edx,%edi
1117	addl	%ebx,%eax
1118	rorl	$7,%ecx
1119	addl	%edi,%eax
1120	addl	24(%rsp),%ebp
1121.byte	102,69,15,56,220,222
1122	movups	128(%r15),%xmm15
1123	xorl	%edx,%esi
1124	movl	%eax,%edi
1125	roll	$5,%eax
1126	xorl	%ecx,%esi
1127	addl	%eax,%ebp
1128	rorl	$7,%ebx
1129	addl	%esi,%ebp
1130	addl	28(%rsp),%edx
1131	xorl	%ecx,%edi
1132	movl	%ebp,%esi
1133	roll	$5,%ebp
1134	xorl	%ebx,%edi
1135	addl	%ebp,%edx
1136	rorl	$7,%eax
1137	addl	%edi,%edx
1138	addl	32(%rsp),%ecx
1139	xorl	%ebx,%esi
1140.byte	102,15,56,0,214
1141	movl	%edx,%edi
1142	roll	$5,%edx
1143	paddd	%xmm9,%xmm1
1144	xorl	%eax,%esi
1145.byte	102,69,15,56,220,223
1146	movups	144(%r15),%xmm14
1147	addl	%edx,%ecx
1148	rorl	$7,%ebp
1149	addl	%esi,%ecx
1150	movdqa	%xmm1,16(%rsp)
1151	addl	36(%rsp),%ebx
1152	xorl	%eax,%edi
1153	psubd	%xmm9,%xmm1
1154	movl	%ecx,%esi
1155	roll	$5,%ecx
1156	xorl	%ebp,%edi
1157	addl	%ecx,%ebx
1158	rorl	$7,%edx
1159	addl	%edi,%ebx
1160	addl	40(%rsp),%eax
1161	xorl	%ebp,%esi
1162	movl	%ebx,%edi
1163	roll	$5,%ebx
1164	xorl	%edx,%esi
1165	addl	%ebx,%eax
1166	rorl	$7,%ecx
1167	addl	%esi,%eax
1168	addl	44(%rsp),%ebp
1169.byte	102,69,15,56,220,222
1170	movups	160(%r15),%xmm15
1171	xorl	%edx,%edi
1172	movl	%eax,%esi
1173	roll	$5,%eax
1174	xorl	%ecx,%edi
1175	addl	%eax,%ebp
1176	rorl	$7,%ebx
1177	addl	%edi,%ebp
1178	addl	48(%rsp),%edx
1179	xorl	%ecx,%esi
1180.byte	102,15,56,0,222
1181	movl	%ebp,%edi
1182	roll	$5,%ebp
1183	paddd	%xmm9,%xmm2
1184	xorl	%ebx,%esi
1185	addl	%ebp,%edx
1186	rorl	$7,%eax
1187	addl	%esi,%edx
1188	movdqa	%xmm2,32(%rsp)
1189	addl	52(%rsp),%ecx
1190	xorl	%ebx,%edi
1191	psubd	%xmm9,%xmm2
1192	movl	%edx,%esi
1193	roll	$5,%edx
1194	xorl	%eax,%edi
1195	cmpl	$11,%r8d
1196	jb	.Laesenclast4
1197	movups	176(%r15),%xmm14
1198.byte	102,69,15,56,220,223
1199	movups	192(%r15),%xmm15
1200.byte	102,69,15,56,220,222
1201	je	.Laesenclast4
1202	movups	208(%r15),%xmm14
1203.byte	102,69,15,56,220,223
1204	movups	224(%r15),%xmm15
1205.byte	102,69,15,56,220,222
1206.Laesenclast4:
1207.byte	102,69,15,56,221,223
1208	movups	16(%r15),%xmm14
1209	addl	%edx,%ecx
1210	rorl	$7,%ebp
1211	addl	%edi,%ecx
1212	addl	56(%rsp),%ebx
1213	xorl	%eax,%esi
1214	movl	%ecx,%edi
1215	roll	$5,%ecx
1216	xorl	%ebp,%esi
1217	addl	%ecx,%ebx
1218	rorl	$7,%edx
1219	addl	%esi,%ebx
1220	addl	60(%rsp),%eax
1221	xorl	%ebp,%edi
1222	movl	%ebx,%esi
1223	roll	$5,%ebx
1224	xorl	%edx,%edi
1225	addl	%ebx,%eax
1226	rorl	$7,%ecx
1227	addl	%edi,%eax
1228	movups	%xmm11,48(%r13,%r12,1)
1229	leaq	64(%r12),%r12
1230
1231	addl	0(%r9),%eax
1232	addl	4(%r9),%esi
1233	addl	8(%r9),%ecx
1234	addl	12(%r9),%edx
1235	movl	%eax,0(%r9)
1236	addl	16(%r9),%ebp
1237	movl	%esi,4(%r9)
1238	movl	%esi,%ebx
1239	movl	%ecx,8(%r9)
1240	movl	%edx,12(%r9)
1241	movl	%ebp,16(%r9)
1242	jmp	.Loop_ssse3
1243
1244.align	16
1245.Ldone_ssse3:
1246	addl	16(%rsp),%ebx
1247	xorl	%eax,%esi
1248	movl	%ecx,%edi
1249	roll	$5,%ecx
1250	xorl	%ebp,%esi
1251	addl	%ecx,%ebx
1252	rorl	$7,%edx
1253	addl	%esi,%ebx
1254	addl	20(%rsp),%eax
1255	xorl	%ebp,%edi
1256	movl	%ebx,%esi
1257	roll	$5,%ebx
1258	xorl	%edx,%edi
1259	addl	%ebx,%eax
1260	rorl	$7,%ecx
1261	addl	%edi,%eax
1262	addl	24(%rsp),%ebp
1263.byte	102,69,15,56,220,222
1264	movups	128(%r15),%xmm15
1265	xorl	%edx,%esi
1266	movl	%eax,%edi
1267	roll	$5,%eax
1268	xorl	%ecx,%esi
1269	addl	%eax,%ebp
1270	rorl	$7,%ebx
1271	addl	%esi,%ebp
1272	addl	28(%rsp),%edx
1273	xorl	%ecx,%edi
1274	movl	%ebp,%esi
1275	roll	$5,%ebp
1276	xorl	%ebx,%edi
1277	addl	%ebp,%edx
1278	rorl	$7,%eax
1279	addl	%edi,%edx
1280	addl	32(%rsp),%ecx
1281	xorl	%ebx,%esi
1282	movl	%edx,%edi
1283	roll	$5,%edx
1284	xorl	%eax,%esi
1285.byte	102,69,15,56,220,223
1286	movups	144(%r15),%xmm14
1287	addl	%edx,%ecx
1288	rorl	$7,%ebp
1289	addl	%esi,%ecx
1290	addl	36(%rsp),%ebx
1291	xorl	%eax,%edi
1292	movl	%ecx,%esi
1293	roll	$5,%ecx
1294	xorl	%ebp,%edi
1295	addl	%ecx,%ebx
1296	rorl	$7,%edx
1297	addl	%edi,%ebx
1298	addl	40(%rsp),%eax
1299	xorl	%ebp,%esi
1300	movl	%ebx,%edi
1301	roll	$5,%ebx
1302	xorl	%edx,%esi
1303	addl	%ebx,%eax
1304	rorl	$7,%ecx
1305	addl	%esi,%eax
1306	addl	44(%rsp),%ebp
1307.byte	102,69,15,56,220,222
1308	movups	160(%r15),%xmm15
1309	xorl	%edx,%edi
1310	movl	%eax,%esi
1311	roll	$5,%eax
1312	xorl	%ecx,%edi
1313	addl	%eax,%ebp
1314	rorl	$7,%ebx
1315	addl	%edi,%ebp
1316	addl	48(%rsp),%edx
1317	xorl	%ecx,%esi
1318	movl	%ebp,%edi
1319	roll	$5,%ebp
1320	xorl	%ebx,%esi
1321	addl	%ebp,%edx
1322	rorl	$7,%eax
1323	addl	%esi,%edx
1324	addl	52(%rsp),%ecx
1325	xorl	%ebx,%edi
1326	movl	%edx,%esi
1327	roll	$5,%edx
1328	xorl	%eax,%edi
1329	cmpl	$11,%r8d
1330	jb	.Laesenclast5
1331	movups	176(%r15),%xmm14
1332.byte	102,69,15,56,220,223
1333	movups	192(%r15),%xmm15
1334.byte	102,69,15,56,220,222
1335	je	.Laesenclast5
1336	movups	208(%r15),%xmm14
1337.byte	102,69,15,56,220,223
1338	movups	224(%r15),%xmm15
1339.byte	102,69,15,56,220,222
1340.Laesenclast5:
1341.byte	102,69,15,56,221,223
1342	movups	16(%r15),%xmm14
1343	addl	%edx,%ecx
1344	rorl	$7,%ebp
1345	addl	%edi,%ecx
1346	addl	56(%rsp),%ebx
1347	xorl	%eax,%esi
1348	movl	%ecx,%edi
1349	roll	$5,%ecx
1350	xorl	%ebp,%esi
1351	addl	%ecx,%ebx
1352	rorl	$7,%edx
1353	addl	%esi,%ebx
1354	addl	60(%rsp),%eax
1355	xorl	%ebp,%edi
1356	movl	%ebx,%esi
1357	roll	$5,%ebx
1358	xorl	%edx,%edi
1359	addl	%ebx,%eax
1360	rorl	$7,%ecx
1361	addl	%edi,%eax
1362	movups	%xmm11,48(%r13,%r12,1)
1363	movq	88(%rsp),%r8
1364
1365	addl	0(%r9),%eax
1366	addl	4(%r9),%esi
1367	addl	8(%r9),%ecx
1368	movl	%eax,0(%r9)
1369	addl	12(%r9),%edx
1370	movl	%esi,4(%r9)
1371	addl	16(%r9),%ebp
1372	movl	%ecx,8(%r9)
1373	movl	%edx,12(%r9)
1374	movl	%ebp,16(%r9)
1375	movups	%xmm11,(%r8)
1376	leaq	104(%rsp),%rsi
1377	movq	0(%rsi),%r15
1378	movq	8(%rsi),%r14
1379	movq	16(%rsi),%r13
1380	movq	24(%rsi),%r12
1381	movq	32(%rsi),%rbp
1382	movq	40(%rsi),%rbx
1383	leaq	48(%rsi),%rsp
1384.Lepilogue_ssse3:
1385	.byte	0xf3,0xc3
1386.size	aesni_cbc_sha1_enc_ssse3,.-aesni_cbc_sha1_enc_ssse3
1387.align	64
1388K_XX_XX:
1389.long	0x5a827999,0x5a827999,0x5a827999,0x5a827999
1390.long	0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1
1391.long	0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc
1392.long	0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6
1393.long	0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f
1394
1395.byte	65,69,83,78,73,45,67,66,67,43,83,72,65,49,32,115,116,105,116,99,104,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
1396.align	64
1397