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