1/ This Source Code Form is subject to the terms of the Mozilla Public
2/ License, v. 2.0. If a copy of the MPL was not distributed with this
3/ file, You can obtain one at http://mozilla.org/MPL/2.0/.
4
5	.file	"sha_fast.c"
6	.text
7	.align 16
8.globl SHA1_Begin
9	.type	SHA1_Begin, @function
10SHA1_Begin:
11.LFB4:
12	movl	$4023233417, %ecx
13	movl	$2562383102, %edx
14	movl	$3285377520, %eax
15	movq	$0, 64(%rdi)
16	movq	$1732584193, 72(%rdi)
17	movq	%rcx, 80(%rdi)
18	movq	%rdx, 88(%rdi)
19	movq	$271733878, 96(%rdi)
20	movq	%rax, 104(%rdi)
21	ret
22.LFE4:
23	.size	SHA1_Begin, .-SHA1_Begin
24	.align 16
25	.type	shaCompress, @function
26shaCompress:
27.LFB7:
28	pushq	%r15
29.LCFI0:
30	pushq	%r14
31.LCFI1:
32	pushq	%r13
33.LCFI2:
34	pushq	%r12
35.LCFI3:
36	movq	-88(%rdi), %r12
37	movq	-80(%rdi), %r10
38	movq	-72(%rdi), %r13
39	movq	-64(%rdi), %r8
40	pushq	%rbx
41.LCFI4:
42	movq	-56(%rdi), %rcx
43	movl	(%rsi), %eax
44	movl	%r12d, %edx
45	movq	%r13, %r9
46	roll	$5, %edx
47	movl	4(%rsi), %ebx
48	xorq	%r8, %r9
49/APP
50	bswap %eax
51/NO_APP
52	andq	%r10, %r9
53	mov	%eax, %r15d
54	roll	$30, %r10d
55	movq	%r15, -48(%rdi)
56	xorq	%r8, %r9
57	movq	-48(%rdi), %r14
58	addq	%r9, %rdx
59	movq	%r10, %rax
60	movl	%r12d, %r15d
61	addq	%rcx, %rdx
62	xorq	%r13, %rax
63	roll	$30, %r15d
64	leaq	1518500249(%rdx,%r14), %rdx
65	andq	%r12, %rax
66	movq	%r15, %r12
67/APP
68	bswap %ebx
69/NO_APP
70	movl	%edx, %ecx
71	mov	%ebx, %r11d
72	xorq	%r13, %rax
73	movq	%r11, -40(%rdi)
74	roll	$5, %ecx
75	movq	-40(%rdi), %r9
76	addq	%rax, %rcx
77	xorq	%r10, %r12
78	movl	8(%rsi), %r14d
79	addq	%r8, %rcx
80	andq	%rdx, %r12
81	movl	%edx, %r11d
82	leaq	1518500249(%rcx,%r9), %rcx
83	xorq	%r10, %r12
84	roll	$30, %r11d
85/APP
86	bswap %r14d
87/NO_APP
88	movl	%ecx, %r8d
89	mov	%r14d, %ebx
90	movl	12(%rsi), %r9d
91	movq	%rbx, -32(%rdi)
92	roll	$5, %r8d
93	movq	-32(%rdi), %rax
94	addq	%r12, %r8
95	movq	%r11, %r12
96	movl	%ecx, %ebx
97	addq	%r13, %r8
98	xorq	%r15, %r12
99	roll	$30, %ebx
100	leaq	1518500249(%r8,%rax), %r8
101	andq	%rcx, %r12
102	movl	16(%rsi), %eax
103/APP
104	bswap %r9d
105/NO_APP
106	movl	%r8d, %edx
107	mov	%r9d, %r14d
108	xorq	%r15, %r12
109	movq	%r14, -24(%rdi)
110	roll	$5, %edx
111	movq	-24(%rdi), %r13
112	addq	%r12, %rdx
113	movq	%rbx, %r12
114	movl	%r8d, %r14d
115	addq	%r10, %rdx
116	leaq	1518500249(%rdx,%r13), %rdx
117	movl	20(%rsi), %r13d
118/APP
119	bswap %eax
120/NO_APP
121	movl	%edx, %ecx
122	mov	%eax, %r9d
123	roll	$5, %ecx
124	xorq	%r11, %r12
125	movq	%r9, -16(%rdi)
126	andq	%r8, %r12
127	movq	-16(%rdi), %r10
128	roll	$30, %r14d
129	xorq	%r11, %r12
130	movq	%r14, %rax
131	movl	%edx, %r9d
132	addq	%r12, %rcx
133	xorq	%rbx, %rax
134	roll	$30, %r9d
135	addq	%r15, %rcx
136	andq	%rdx, %rax
137	leaq	1518500249(%rcx,%r10), %rcx
138	xorq	%rbx, %rax
139	movl	24(%rsi), %r10d
140/APP
141	bswap %r13d
142/NO_APP
143	movl	%ecx, %r8d
144	mov	%r13d, %r15d
145	movq	%r15, -8(%rdi)
146	roll	$5, %r8d
147	movq	-8(%rdi), %r12
148	addq	%rax, %r8
149	movl	%ecx, %r15d
150	addq	%r11, %r8
151	movq	%r9, %r11
152	roll	$30, %r15d
153	leaq	1518500249(%r8,%r12), %r8
154	xorq	%r14, %r11
155	movl	28(%rsi), %r12d
156/APP
157	bswap %r10d
158/NO_APP
159	andq	%rcx, %r11
160	mov	%r10d, %r13d
161	movl	%r8d, %edx
162	movq	%r13, (%rdi)
163	xorq	%r14, %r11
164	movq	(%rdi), %rax
165	roll	$5, %edx
166	movq	%r15, %r10
167	movl	%r8d, %r13d
168	addq	%r11, %rdx
169	xorq	%r9, %r10
170	roll	$30, %r13d
171	addq	%rbx, %rdx
172	andq	%r8, %r10
173	leaq	1518500249(%rdx,%rax), %rdx
174	xorq	%r9, %r10
175	movl	32(%rsi), %eax
176/APP
177	bswap %r12d
178/NO_APP
179	movl	%edx, %ecx
180	mov	%r12d, %ebx
181	movq	%rbx, 8(%rdi)
182	roll	$5, %ecx
183	movq	8(%rdi), %r11
184	addq	%r10, %rcx
185	movq	%r13, %r10
186	movl	%edx, %ebx
187	addq	%r14, %rcx
188	leaq	1518500249(%rcx,%r11), %rcx
189/APP
190	bswap %eax
191/NO_APP
192	movl	%ecx, %r8d
193	mov	%eax, %r12d
194	roll	$5, %r8d
195	xorq	%r15, %r10
196	movq	%r12, 16(%rdi)
197	andq	%rdx, %r10
198	movq	16(%rdi), %r14
199	roll	$30, %ebx
200	xorq	%r15, %r10
201	movq	%rbx, %rax
202	movl	36(%rsi), %r11d
203	addq	%r10, %r8
204	xorq	%r13, %rax
205	movl	%ecx, %r12d
206	addq	%r9, %r8
207	andq	%rcx, %rax
208	roll	$30, %r12d
209	leaq	1518500249(%r8,%r14), %r8
210	xorq	%r13, %rax
211	movl	40(%rsi), %r14d
212/APP
213	bswap %r11d
214/NO_APP
215	movl	%r8d, %edx
216	mov	%r11d, %r9d
217	movq	%r12, %r11
218	movq	%r9, 24(%rdi)
219	roll	$5, %edx
220	movq	24(%rdi), %r10
221	addq	%rax, %rdx
222	xorq	%rbx, %r11
223	movl	%r8d, %r9d
224	addq	%r15, %rdx
225	andq	%r8, %r11
226	roll	$30, %r9d
227	leaq	1518500249(%rdx,%r10), %rdx
228	xorq	%rbx, %r11
229	movl	44(%rsi), %r10d
230/APP
231	bswap %r14d
232/NO_APP
233	movl	%edx, %ecx
234	mov	%r14d, %r15d
235	movq	%r15, 32(%rdi)
236	roll	$5, %ecx
237	movq	32(%rdi), %rax
238	addq	%r11, %rcx
239	movq	%r9, %r11
240	movl	%edx, %r15d
241	addq	%r13, %rcx
242	xorq	%r12, %r11
243	roll	$30, %r15d
244	leaq	1518500249(%rcx,%rax), %rcx
245	andq	%rdx, %r11
246	movl	48(%rsi), %eax
247/APP
248	bswap %r10d
249/NO_APP
250	movl	%ecx, %r8d
251	mov	%r10d, %r14d
252	xorq	%r12, %r11
253	movq	%r14, 40(%rdi)
254	roll	$5, %r8d
255	movq	40(%rdi), %r13
256	addq	%r11, %r8
257	movq	%r15, %r10
258	movl	%ecx, %r14d
259	addq	%rbx, %r8
260	xorq	%r9, %r10
261	leaq	1518500249(%r8,%r13), %r8
262	movl	52(%rsi), %r13d
263/APP
264	bswap %eax
265/NO_APP
266	movl	%r8d, %edx
267	mov	%eax, %ebx
268	roll	$5, %edx
269	andq	%rcx, %r10
270	movq	%rbx, 48(%rdi)
271	xorq	%r9, %r10
272	movq	48(%rdi), %r11
273	roll	$30, %r14d
274	addq	%r10, %rdx
275	movq	%r14, %rax
276	movl	%r8d, %ebx
277	addq	%r12, %rdx
278	xorq	%r15, %rax
279	roll	$30, %ebx
280	leaq	1518500249(%rdx,%r11), %rdx
281	andq	%r8, %rax
282	movl	56(%rsi), %r11d
283/APP
284	bswap %r13d
285/NO_APP
286	movl	%edx, %ecx
287	mov	%r13d, %r12d
288	xorq	%r15, %rax
289	movq	%r12, 56(%rdi)
290	roll	$5, %ecx
291	movq	56(%rdi), %r10
292	addq	%rax, %rcx
293	movl	%edx, %r12d
294	addq	%r9, %rcx
295	movq	%rbx, %r9
296	roll	$30, %r12d
297	leaq	1518500249(%rcx,%r10), %rcx
298	xorq	%r14, %r9
299	movl	60(%rsi), %r10d
300/APP
301	bswap %r11d
302/NO_APP
303	andq	%rdx, %r9
304	mov	%r11d, %r13d
305	movl	%ecx, %r8d
306	movq	%r13, 64(%rdi)
307	xorq	%r14, %r9
308	movq	64(%rdi), %rax
309	roll	$5, %r8d
310	movq	%r12, %r11
311	movl	%ecx, %r13d
312	addq	%r9, %r8
313	xorq	%rbx, %r11
314	roll	$30, %r13d
315	addq	%r15, %r8
316	andq	%rcx, %r11
317	leaq	1518500249(%r8,%rax), %r8
318	xorq	%rbx, %r11
319/APP
320	bswap %r10d
321/NO_APP
322	movl	%r8d, %esi
323	mov	%r10d, %r15d
324	movq	%r15, 72(%rdi)
325	roll	$5, %esi
326	movq	72(%rdi), %r9
327	movq	56(%rdi), %r10
328	movq	16(%rdi), %rcx
329	addq	%r11, %rsi
330	movq	-32(%rdi), %rdx
331	addq	%r14, %rsi
332	movq	-48(%rdi), %rax
333	leaq	1518500249(%rsi,%r9), %r14
334	movq	%r13, %r11
335	movl	%r8d, %r15d
336	xorq	%rcx, %r10
337	xorq	%rdx, %r10
338	movl	%r14d, %ecx
339	xorl	%eax, %r10d
340	roll	%r10d
341	roll	$5, %ecx
342	xorq	%r12, %r11
343	andq	%r8, %r11
344	movq	%r10, -48(%rdi)
345	movq	-48(%rdi), %r9
346	xorq	%r12, %r11
347	roll	$30, %r15d
348	movl	%r14d, %r10d
349	addq	%r11, %rcx
350	movq	64(%rdi), %r11
351	movq	24(%rdi), %rdx
352	addq	%rbx, %rcx
353	movq	-24(%rdi), %rbx
354	movq	-40(%rdi), %rax
355	leaq	1518500249(%rcx,%r9), %rcx
356	movq	%r15, %r8
357	roll	$30, %r10d
358	xorq	%rdx, %r11
359	xorq	%r13, %r8
360	xorq	%rbx, %r11
361	andq	%r14, %r8
362	movl	%ecx, %r9d
363	xorl	%eax, %r11d
364	xorq	%r13, %r8
365	roll	$5, %r9d
366	roll	%r11d
367	addq	%r8, %r9
368	movq	%r10, %rax
369	movq	%r11, -40(%rdi)
370	movq	-40(%rdi), %rsi
371	addq	%r12, %r9
372	movq	72(%rdi), %rbx
373	movq	32(%rdi), %rdx
374	xorq	%r15, %rax
375	movq	-16(%rdi), %r14
376	movq	-32(%rdi), %r12
377	andq	%rcx, %rax
378	leaq	1518500249(%r9,%rsi), %r9
379	xorq	%r15, %rax
380	movl	%ecx, %r11d
381	xorq	%rdx, %rbx
382	roll	$30, %r11d
383	xorq	%r14, %rbx
384	movl	%r9d, %esi
385	xorl	%r12d, %ebx
386	roll	$5, %esi
387	roll	%ebx
388	addq	%rax, %rsi
389	movq	%rbx, -32(%rdi)
390	movq	-32(%rdi), %r8
391	addq	%r13, %rsi
392	movq	-48(%rdi), %r12
393	movq	40(%rdi), %rdx
394	movq	%r11, %r13
395	movq	-8(%rdi), %r14
396	movq	-24(%rdi), %rcx
397	movl	%r9d, %ebx
398	leaq	1518500249(%rsi,%r8), %rsi
399	xorq	%rdx, %r12
400	xorq	%r14, %r12
401	movl	%esi, %r8d
402	xorl	%ecx, %r12d
403	roll	%r12d
404	roll	$5, %r8d
405	xorq	%r10, %r13
406	andq	%r9, %r13
407	movq	%r12, -24(%rdi)
408	movq	-24(%rdi), %rax
409	xorq	%r10, %r13
410	roll	$30, %ebx
411	movl	%esi, %r12d
412	addq	%r13, %r8
413	xorq	%rbx, %rsi
414	roll	$30, %r12d
415	addq	%r15, %r8
416	movq	-40(%rdi), %r15
417	movq	48(%rdi), %rdx
418	movq	(%rdi), %r14
419	movq	-16(%rdi), %r9
420	leaq	1518500249(%r8,%rax), %r13
421	xorq	%r11, %rsi
422	xorq	%rdx, %r15
423	movl	%r13d, %ecx
424	xorq	%r14, %r15
425	roll	$5, %ecx
426	xorl	%r9d, %r15d
427	addq	%rsi, %rcx
428	roll	%r15d
429	addq	%r10, %rcx
430	movq	%r15, -16(%rdi)
431	movq	-16(%rdi), %rsi
432	movl	%r13d, %r15d
433	movq	-32(%rdi), %r14
434	movq	56(%rdi), %rax
435	xorq	%r12, %r13
436	movq	8(%rdi), %rdx
437	movq	-8(%rdi), %r10
438	xorq	%rbx, %r13
439	leaq	1859775393(%rcx,%rsi), %r9
440	roll	$30, %r15d
441	xorq	%rax, %r14
442	xorq	%rdx, %r14
443	movl	%r9d, %esi
444	xorl	%r10d, %r14d
445	roll	$5, %esi
446	roll	%r14d
447	addq	%r13, %rsi
448	movq	%r14, -8(%rdi)
449	movq	-8(%rdi), %r8
450	addq	%r11, %rsi
451	movq	-24(%rdi), %r13
452	movq	64(%rdi), %rax
453	movl	%r9d, %r14d
454	movq	16(%rdi), %rdx
455	movq	(%rdi), %r11
456	xorq	%r15, %r9
457	leaq	1859775393(%rsi,%r8), %r10
458	xorq	%rax, %r13
459	xorq	%rdx, %r13
460	movl	%r10d, %r8d
461	xorl	%r11d, %r13d
462	roll	$5, %r8d
463	roll	%r13d
464	xorq	%r12, %r9
465	roll	$30, %r14d
466	addq	%r9, %r8
467	movq	%r13, (%rdi)
468	movq	(%rdi), %rcx
469	addq	%rbx, %r8
470	movq	-16(%rdi), %rbx
471	movq	72(%rdi), %rax
472	movq	24(%rdi), %rdx
473	movq	8(%rdi), %r9
474	movl	%r10d, %r13d
475	leaq	1859775393(%r8,%rcx), %r11
476	xorq	%r14, %r10
477	roll	$30, %r13d
478	xorq	%rax, %rbx
479	xorq	%r15, %r10
480	xorq	%rdx, %rbx
481	movl	%r11d, %ecx
482	xorl	%r9d, %ebx
483	roll	$5, %ecx
484	roll	%ebx
485	addq	%r10, %rcx
486	movq	%rbx, 8(%rdi)
487	movq	8(%rdi), %rsi
488	addq	%r12, %rcx
489	movq	-8(%rdi), %r12
490	movq	-48(%rdi), %rax
491	movl	%r11d, %ebx
492	movq	32(%rdi), %rdx
493	movq	16(%rdi), %r9
494	xorq	%r13, %r11
495	leaq	1859775393(%rcx,%rsi), %r10
496	xorq	%r14, %r11
497	roll	$30, %ebx
498	xorq	%rax, %r12
499	xorq	%rdx, %r12
500	movl	%r10d, %esi
501	xorl	%r9d, %r12d
502	roll	$5, %esi
503	roll	%r12d
504	addq	%r11, %rsi
505	movq	%r12, 16(%rdi)
506	addq	%r15, %rsi
507	movq	16(%rdi), %r8
508	movq	(%rdi), %r15
509	movq	-40(%rdi), %rax
510	movl	%r10d, %r12d
511	movq	40(%rdi), %rdx
512	movq	24(%rdi), %r9
513	xorq	%rbx, %r10
514	leaq	1859775393(%rsi,%r8), %r11
515	xorq	%r13, %r10
516	xorq	%rax, %r15
517	xorq	%rdx, %r15
518	movl	%r11d, %r8d
519	xorl	%r9d, %r15d
520	roll	$5, %r8d
521	roll	%r15d
522	addq	%r10, %r8
523	movq	%r15, 24(%rdi)
524	movq	24(%rdi), %rcx
525	addq	%r14, %r8
526	movq	8(%rdi), %r14
527	movq	-32(%rdi), %rax
528	roll	$30, %r12d
529	movq	48(%rdi), %rdx
530	movq	32(%rdi), %r10
531	movl	%r11d, %r15d
532	leaq	1859775393(%r8,%rcx), %r9
533	xorq	%r12, %r11
534	roll	$30, %r15d
535	xorq	%rax, %r14
536	xorq	%rbx, %r11
537	xorq	%rdx, %r14
538	movl	%r9d, %ecx
539	xorl	%r10d, %r14d
540	roll	$5, %ecx
541	roll	%r14d
542	addq	%r11, %rcx
543	movq	%r14, 32(%rdi)
544	addq	%r13, %rcx
545	movq	32(%rdi), %rsi
546	movq	16(%rdi), %r13
547	movq	-24(%rdi), %rax
548	movl	%r9d, %r14d
549	movq	56(%rdi), %rdx
550	movq	40(%rdi), %r11
551	xorq	%r15, %r9
552	leaq	1859775393(%rcx,%rsi), %r10
553	xorq	%r12, %r9
554	roll	$30, %r14d
555	xorq	%rax, %r13
556	xorq	%rdx, %r13
557	movl	%r10d, %esi
558	xorl	%r11d, %r13d
559	roll	$5, %esi
560	roll	%r13d
561	addq	%r9, %rsi
562	movq	%r13, 40(%rdi)
563	movq	40(%rdi), %r8
564	addq	%rbx, %rsi
565	movq	24(%rdi), %rbx
566	movq	-16(%rdi), %rax
567	movl	%r10d, %r13d
568	movq	64(%rdi), %rdx
569	movq	48(%rdi), %r9
570	xorq	%r14, %r10
571	leaq	1859775393(%rsi,%r8), %r11
572	xorq	%r15, %r10
573	roll	$30, %r13d
574	xorq	%rax, %rbx
575	xorq	%rdx, %rbx
576	movl	%r11d, %r8d
577	xorl	%r9d, %ebx
578	roll	$5, %r8d
579	roll	%ebx
580	addq	%r10, %r8
581	movq	%rbx, 48(%rdi)
582	addq	%r12, %r8
583	movq	48(%rdi), %rcx
584	movq	32(%rdi), %r12
585	movq	-8(%rdi), %rax
586	movl	%r11d, %ebx
587	movq	72(%rdi), %rdx
588	movq	56(%rdi), %r9
589	leaq	1859775393(%r8,%rcx), %r10
590	xorq	%rax, %r12
591	xorq	%rdx, %r12
592	movl	%r10d, %ecx
593	xorl	%r9d, %r12d
594	xorq	%r13, %r11
595	roll	$5, %ecx
596	xorq	%r14, %r11
597	roll	%r12d
598	roll	$30, %ebx
599	addq	%r11, %rcx
600	movq	%r12, 56(%rdi)
601	movq	56(%rdi), %rsi
602	addq	%r15, %rcx
603	movq	40(%rdi), %r15
604	movq	(%rdi), %rax
605	movq	-48(%rdi), %rdx
606	movq	64(%rdi), %r9
607	movl	%r10d, %r12d
608	leaq	1859775393(%rcx,%rsi), %r11
609	xorq	%rbx, %r10
610	roll	$30, %r12d
611	xorq	%rax, %r15
612	xorq	%r13, %r10
613	xorq	%rdx, %r15
614	movl	%r11d, %esi
615	xorl	%r9d, %r15d
616	roll	$5, %esi
617	roll	%r15d
618	addq	%r10, %rsi
619	movq	%r15, 64(%rdi)
620	movq	64(%rdi), %r8
621	addq	%r14, %rsi
622	movq	48(%rdi), %r14
623	movq	8(%rdi), %rax
624	movl	%r11d, %r15d
625	movq	-40(%rdi), %rdx
626	movq	72(%rdi), %r10
627	xorq	%r12, %r11
628	leaq	1859775393(%rsi,%r8), %r9
629	xorq	%rbx, %r11
630	roll	$30, %r15d
631	xorq	%rax, %r14
632	xorq	%rdx, %r14
633	movl	%r9d, %r8d
634	xorl	%r10d, %r14d
635	roll	$5, %r8d
636	roll	%r14d
637	addq	%r11, %r8
638	movq	%r14, 72(%rdi)
639	addq	%r13, %r8
640	movq	72(%rdi), %rcx
641	movq	56(%rdi), %r13
642	movq	16(%rdi), %rax
643	movl	%r9d, %r14d
644	movq	-32(%rdi), %rdx
645	movq	-48(%rdi), %r11
646	leaq	1859775393(%r8,%rcx), %r10
647	xorq	%rax, %r13
648	xorq	%rdx, %r13
649	movl	%r10d, %ecx
650	xorl	%r11d, %r13d
651	roll	$5, %ecx
652	roll	%r13d
653	xorq	%r15, %r9
654	roll	$30, %r14d
655	xorq	%r12, %r9
656	movq	%r13, -48(%rdi)
657	movq	-48(%rdi), %rsi
658	addq	%r9, %rcx
659	movl	%r10d, %r13d
660	xorq	%r14, %r10
661	addq	%rbx, %rcx
662	movq	64(%rdi), %rbx
663	movq	24(%rdi), %rax
664	movq	-24(%rdi), %rdx
665	leaq	1859775393(%rcx,%rsi), %r11
666	movq	-40(%rdi), %r9
667	xorq	%r15, %r10
668	roll	$30, %r13d
669	xorq	%rax, %rbx
670	movl	%r11d, %esi
671	xorq	%rdx, %rbx
672	roll	$5, %esi
673	xorl	%r9d, %ebx
674	addq	%r10, %rsi
675	roll	%ebx
676	addq	%r12, %rsi
677	movq	%rbx, -40(%rdi)
678	movq	-40(%rdi), %r8
679	movl	%r11d, %ebx
680	movq	72(%rdi), %r12
681	movq	32(%rdi), %rax
682	xorq	%r13, %r11
683	movq	-16(%rdi), %rdx
684	movq	-32(%rdi), %r9
685	xorq	%r14, %r11
686	leaq	1859775393(%rsi,%r8), %r10
687	roll	$30, %ebx
688	xorq	%rax, %r12
689	xorq	%rdx, %r12
690	movl	%r10d, %r8d
691	xorl	%r9d, %r12d
692	roll	$5, %r8d
693	roll	%r12d
694	addq	%r11, %r8
695	movq	%r12, -32(%rdi)
696	movq	-32(%rdi), %rcx
697	addq	%r15, %r8
698	movq	-48(%rdi), %r15
699	movq	40(%rdi), %rax
700	movl	%r10d, %r12d
701	movq	-8(%rdi), %rdx
702	movq	-24(%rdi), %r9
703	xorq	%rbx, %r10
704	leaq	1859775393(%r8,%rcx), %r11
705	xorq	%r13, %r10
706	xorq	%rax, %r15
707	xorq	%rdx, %r15
708	movl	%r11d, %ecx
709	xorl	%r9d, %r15d
710	roll	$5, %ecx
711	roll	%r15d
712	addq	%r10, %rcx
713	addq	%r14, %rcx
714	movq	%r15, -24(%rdi)
715	movq	-24(%rdi), %rsi
716	movq	-40(%rdi), %r14
717	movq	48(%rdi), %rax
718	roll	$30, %r12d
719	movq	(%rdi), %rdx
720	movq	-16(%rdi), %r10
721	movl	%r11d, %r15d
722	leaq	1859775393(%rcx,%rsi), %r9
723	xorq	%r12, %r11
724	roll	$30, %r15d
725	xorq	%rax, %r14
726	xorq	%rbx, %r11
727	xorq	%rdx, %r14
728	movl	%r9d, %esi
729	xorl	%r10d, %r14d
730	roll	$5, %esi
731	roll	%r14d
732	addq	%r11, %rsi
733	movq	%r14, -16(%rdi)
734	movq	-16(%rdi), %r8
735	addq	%r13, %rsi
736	movq	-32(%rdi), %r11
737	movq	56(%rdi), %rax
738	movl	%r9d, %r14d
739	movq	8(%rdi), %rdx
740	movq	-8(%rdi), %r10
741	xorq	%r15, %r9
742	leaq	1859775393(%rsi,%r8), %r13
743	xorq	%r12, %r9
744	roll	$30, %r14d
745	xorq	%rax, %r11
746	xorq	%rdx, %r11
747	movl	%r13d, %r8d
748	xorl	%r10d, %r11d
749	roll	$5, %r8d
750	movl	%r13d, %r10d
751	roll	%r11d
752	addq	%r9, %r8
753	xorq	%r14, %r13
754	movq	%r11, -8(%rdi)
755	addq	%rbx, %r8
756	movq	-8(%rdi), %rbx
757	movq	-24(%rdi), %r9
758	movq	64(%rdi), %rax
759	xorq	%r15, %r13
760	movq	16(%rdi), %rdx
761	movq	(%rdi), %rcx
762	leaq	1859775393(%r8,%rbx), %r11
763	xorq	%rax, %r9
764	xorq	%rdx, %r9
765	movl	%r11d, %ebx
766	xorl	%ecx, %r9d
767	roll	$5, %ebx
768	roll	%r9d
769	addq	%r13, %rbx
770	movq	%r9, (%rdi)
771	movq	(%rdi), %rsi
772	addq	%r12, %rbx
773	movq	-16(%rdi), %r12
774	movq	72(%rdi), %r13
775	movl	%r11d, %r9d
776	leaq	1859775393(%rbx,%rsi), %rcx
777	movl	%r10d, %ebx
778	movq	24(%rdi), %r10
779	movq	8(%rdi), %rax
780	xorq	%r13, %r12
781	roll	$30, %ebx
782	movl	%ecx, %esi
783	xorq	%r10, %r12
784	xorq	%rbx, %r11
785	roll	$5, %esi
786	xorl	%eax, %r12d
787	xorq	%r14, %r11
788	roll	$30, %r9d
789	roll	%r12d
790	addq	%r11, %rsi
791	movq	%rcx, %rax
792	movq	%r12, 8(%rdi)
793	movq	8(%rdi), %rdx
794	addq	%r15, %rsi
795	movq	-8(%rdi), %r11
796	movq	-48(%rdi), %r13
797	movl	%ecx, %r12d
798	movq	32(%rdi), %r10
799	movq	16(%rdi), %r8
800	orq	%r9, %rcx
801	leaq	1859775393(%rsi,%rdx), %rsi
802	andq	%rbx, %rcx
803	andq	%r9, %rax
804	xorq	%r13, %r11
805	orq	%rcx, %rax
806	roll	$30, %r12d
807	xorq	%r10, %r11
808	movq	%rsi, %r10
809	xorl	%r8d, %r11d
810	movl	%esi, %r8d
811	andq	%r12, %r10
812	roll	%r11d
813	roll	$5, %r8d
814	movq	%r11, 16(%rdi)
815	addq	%rax, %r8
816	movq	16(%rdi), %r15
817	movq	(%rdi), %r13
818	movq	-40(%rdi), %rdx
819	addq	%r14, %r8
820	movq	40(%rdi), %r14
821	movq	24(%rdi), %rcx
822	movl	%esi, %r11d
823	addq	%r15, %r8
824	movl	$2400959708, %r15d
825	orq	%r12, %rsi
826	xorq	%rdx, %r13
827	addq	%r15, %r8
828	andq	%r9, %rsi
829	xorq	%r14, %r13
830	orq	%rsi, %r10
831	xorl	%ecx, %r13d
832	movl	%r8d, %ecx
833	roll	%r13d
834	roll	$5, %ecx
835	movq	%r13, 24(%rdi)
836	addq	%r10, %rcx
837	movq	24(%rdi), %rax
838	movq	8(%rdi), %r14
839	movq	-32(%rdi), %rdx
840	addq	%rbx, %rcx
841	movq	48(%rdi), %rbx
842	movq	32(%rdi), %rsi
843	roll	$30, %r11d
844	addq	%rax, %rcx
845	movl	%r8d, %r13d
846	movq	%r8, %r10
847	xorq	%rdx, %r14
848	addq	%r15, %rcx
849	orq	%r11, %r8
850	xorq	%rbx, %r14
851	andq	%r12, %r8
852	andq	%r11, %r10
853	xorl	%esi, %r14d
854	movl	%ecx, %esi
855	orq	%r8, %r10
856	roll	$5, %esi
857	roll	%r14d
858	roll	$30, %r13d
859	addq	%r10, %rsi
860	movq	%r14, 32(%rdi)
861	movq	32(%rdi), %rax
862	addq	%r9, %rsi
863	movq	16(%rdi), %r9
864	movq	-24(%rdi), %rdx
865	movq	56(%rdi), %rbx
866	movq	40(%rdi), %r8
867	movl	%ecx, %r14d
868	addq	%rax, %rsi
869	movq	%rcx, %r10
870	orq	%r13, %rcx
871	xorq	%rdx, %r9
872	addq	%r15, %rsi
873	andq	%r11, %rcx
874	xorq	%rbx, %r9
875	andq	%r13, %r10
876	roll	$30, %r14d
877	xorl	%r8d, %r9d
878	movl	%esi, %r8d
879	orq	%rcx, %r10
880	roll	%r9d
881	roll	$5, %r8d
882	movq	%r9, 40(%rdi)
883	addq	%r10, %r8
884	movq	40(%rdi), %rax
885	movq	24(%rdi), %r10
886	movq	-16(%rdi), %rdx
887	addq	%r12, %r8
888	movq	64(%rdi), %rbx
889	movq	48(%rdi), %rcx
890	movl	%esi, %r9d
891	addq	%rax, %r8
892	movq	%rsi, %r12
893	xorq	%rdx, %r10
894	addq	%r15, %r8
895	xorq	%rbx, %r10
896	orq	%r14, %rsi
897	andq	%r14, %r12
898	andq	%r13, %rsi
899	xorl	%ecx, %r10d
900	movl	%r8d, %ecx
901	orq	%rsi, %r12
902	roll	%r10d
903	roll	$5, %ecx
904	movq	%r10, 48(%rdi)
905	addq	%r12, %rcx
906	movq	48(%rdi), %rax
907	movq	32(%rdi), %r12
908	movq	-8(%rdi), %rdx
909	addq	%r11, %rcx
910	movq	72(%rdi), %rbx
911	movq	56(%rdi), %rsi
912	roll	$30, %r9d
913	addq	%rax, %rcx
914	movl	%r8d, %r10d
915	movq	%r8, %r11
916	xorq	%rdx, %r12
917	addq	%r15, %rcx
918	orq	%r9, %r8
919	xorq	%rbx, %r12
920	andq	%r14, %r8
921	andq	%r9, %r11
922	xorl	%esi, %r12d
923	movl	%ecx, %esi
924	orq	%r8, %r11
925	roll	%r12d
926	roll	$5, %esi
927	roll	$30, %r10d
928	movq	%r12, 56(%rdi)
929	addq	%r11, %rsi
930	movq	56(%rdi), %rax
931	movq	40(%rdi), %r11
932	movq	(%rdi), %rdx
933	addq	%r13, %rsi
934	movq	-48(%rdi), %rbx
935	movq	64(%rdi), %r8
936	movq	%rcx, %r13
937	addq	%rax, %rsi
938	andq	%r10, %r13
939	movl	%ecx, %r12d
940	xorq	%rdx, %r11
941	addq	%r15, %rsi
942	xorq	%rbx, %r11
943	xorl	%r8d, %r11d
944	movl	%esi, %r8d
945	roll	%r11d
946	roll	$5, %r8d
947	orq	%r10, %rcx
948	andq	%r9, %rcx
949	movq	%r11, 64(%rdi)
950	movq	64(%rdi), %rax
951	orq	%rcx, %r13
952	roll	$30, %r12d
953	movl	%esi, %r11d
954	addq	%r13, %r8
955	movq	48(%rdi), %r13
956	movq	8(%rdi), %rdx
957	movq	-40(%rdi), %rbx
958	addq	%r14, %r8
959	movq	72(%rdi), %rcx
960	addq	%rax, %r8
961	movq	%rsi, %r14
962	orq	%r12, %rsi
963	xorq	%rdx, %r13
964	addq	%r15, %r8
965	andq	%r10, %rsi
966	xorq	%rbx, %r13
967	andq	%r12, %r14
968	roll	$30, %r11d
969	xorl	%ecx, %r13d
970	movl	%r8d, %ecx
971	orq	%rsi, %r14
972	roll	%r13d
973	roll	$5, %ecx
974	movq	%r13, 72(%rdi)
975	addq	%r14, %rcx
976	movq	72(%rdi), %rax
977	movq	56(%rdi), %r14
978	movq	16(%rdi), %rdx
979	addq	%r9, %rcx
980	movq	-32(%rdi), %rbx
981	movq	-48(%rdi), %rsi
982	movl	%r8d, %r13d
983	addq	%rax, %rcx
984	movq	%r8, %r9
985	orq	%r11, %r8
986	xorq	%rdx, %r14
987	addq	%r15, %rcx
988	andq	%r12, %r8
989	xorq	%rbx, %r14
990	andq	%r11, %r9
991	xorl	%esi, %r14d
992	movl	%ecx, %esi
993	orq	%r8, %r9
994	roll	$5, %esi
995	roll	%r14d
996	addq	%r9, %rsi
997	movq	%r14, -48(%rdi)
998	movq	-48(%rdi), %rax
999	addq	%r10, %rsi
1000	movq	64(%rdi), %r10
1001	movq	24(%rdi), %rdx
1002	movq	-24(%rdi), %rbx
1003	movq	-40(%rdi), %r8
1004	movl	%ecx, %r14d
1005	addq	%rax, %rsi
1006	roll	$30, %r13d
1007	movq	%rcx, %r9
1008	xorq	%rdx, %r10
1009	addq	%r15, %rsi
1010	orq	%r13, %rcx
1011	xorq	%rbx, %r10
1012	andq	%r11, %rcx
1013	andq	%r13, %r9
1014	xorl	%r8d, %r10d
1015	movl	%esi, %r8d
1016	orq	%rcx, %r9
1017	roll	$5, %r8d
1018	roll	%r10d
1019	roll	$30, %r14d
1020	addq	%r9, %r8
1021	movq	%r10, -40(%rdi)
1022	movq	-40(%rdi), %rax
1023	addq	%r12, %r8
1024	movq	72(%rdi), %r12
1025	movq	32(%rdi), %rdx
1026	movq	-16(%rdi), %rbx
1027	movq	-32(%rdi), %rcx
1028	movl	%esi, %r10d
1029	addq	%rax, %r8
1030	movq	%rsi, %r9
1031	orq	%r14, %rsi
1032	xorq	%rdx, %r12
1033	addq	%r15, %r8
1034	andq	%r13, %rsi
1035	xorq	%rbx, %r12
1036	andq	%r14, %r9
1037	roll	$30, %r10d
1038	xorl	%ecx, %r12d
1039	movl	%r8d, %ecx
1040	orq	%rsi, %r9
1041	roll	$5, %ecx
1042	roll	%r12d
1043	addq	%r9, %rcx
1044	movq	%r12, -32(%rdi)
1045	movq	-32(%rdi), %rax
1046	addq	%r11, %rcx
1047	movq	-48(%rdi), %r11
1048	movq	40(%rdi), %rdx
1049	movq	-8(%rdi), %rbx
1050	movq	-24(%rdi), %rsi
1051	movl	%r8d, %r12d
1052	addq	%rax, %rcx
1053	movq	%r8, %r9
1054	xorq	%rdx, %r11
1055	addq	%r15, %rcx
1056	xorq	%rbx, %r11
1057	xorl	%esi, %r11d
1058	orq	%r10, %r8
1059	andq	%r10, %r9
1060	andq	%r14, %r8
1061	movl	%ecx, %esi
1062	roll	%r11d
1063	orq	%r8, %r9
1064	roll	$5, %esi
1065	movq	%r11, -24(%rdi)
1066	addq	%r9, %rsi
1067	movq	-24(%rdi), %rax
1068	roll	$30, %r12d
1069	addq	%r13, %rsi
1070	movq	-40(%rdi), %r13
1071	movq	48(%rdi), %rdx
1072	movq	(%rdi), %rbx
1073	movq	-16(%rdi), %r8
1074	movl	%ecx, %r11d
1075	addq	%rax, %rsi
1076	movq	%rcx, %r9
1077	orq	%r12, %rcx
1078	xorq	%rdx, %r13
1079	addq	%r15, %rsi
1080	andq	%r10, %rcx
1081	xorq	%rbx, %r13
1082	andq	%r12, %r9
1083	roll	$30, %r11d
1084	xorl	%r8d, %r13d
1085	movl	%esi, %r8d
1086	orq	%rcx, %r9
1087	roll	%r13d
1088	roll	$5, %r8d
1089	movq	%r13, -16(%rdi)
1090	addq	%r9, %r8
1091	movq	-16(%rdi), %rax
1092	movq	-32(%rdi), %r9
1093	movq	56(%rdi), %rdx
1094	addq	%r14, %r8
1095	movq	8(%rdi), %rcx
1096	movq	-8(%rdi), %rbx
1097	movl	%esi, %r13d
1098	addq	%rax, %r8
1099	movq	%rsi, %r14
1100	orq	%r11, %rsi
1101	xorq	%rdx, %r9
1102	addq	%r15, %r8
1103	andq	%r11, %r14
1104	xorq	%rcx, %r9
1105	xorl	%ebx, %r9d
1106	movl	%r8d, %ebx
1107	roll	%r9d
1108	roll	$5, %ebx
1109	andq	%r12, %rsi
1110	orq	%rsi, %r14
1111	movq	%r9, -8(%rdi)
1112	movq	-8(%rdi), %rax
1113	addq	%r14, %rbx
1114	movq	-24(%rdi), %r14
1115	movq	64(%rdi), %rdx
1116	movq	16(%rdi), %rcx
1117	addq	%r10, %rbx
1118	movq	(%rdi), %rsi
1119	roll	$30, %r13d
1120	addq	%rax, %rbx
1121	movl	%r8d, %r9d
1122	xorq	%rdx, %r14
1123	addq	%r15, %rbx
1124	movq	%r8, %r10
1125	xorq	%rcx, %r14
1126	orq	%r13, %r8
1127	andq	%r13, %r10
1128	andq	%r11, %r8
1129	xorl	%esi, %r14d
1130	movl	%ebx, %esi
1131	orq	%r8, %r10
1132	roll	$5, %esi
1133	roll	%r14d
1134	addq	%r10, %rsi
1135	movq	%r14, (%rdi)
1136	movq	(%rdi), %rax
1137	addq	%r12, %rsi
1138	movq	-16(%rdi), %r12
1139	movq	72(%rdi), %rdx
1140	movq	24(%rdi), %rcx
1141	movq	8(%rdi), %r8
1142	roll	$30, %r9d
1143	addq	%rax, %rsi
1144	movl	%ebx, %r14d
1145	movq	%rbx, %r10
1146	xorq	%rdx, %r12
1147	addq	%r15, %rsi
1148	orq	%r9, %rbx
1149	xorq	%rcx, %r12
1150	andq	%r13, %rbx
1151	andq	%r9, %r10
1152	xorl	%r8d, %r12d
1153	movl	%esi, %r8d
1154	orq	%rbx, %r10
1155	roll	%r12d
1156	roll	$5, %r8d
1157	movq	%r12, 8(%rdi)
1158	movq	8(%rdi), %rax
1159	addq	%r10, %r8
1160	movq	-8(%rdi), %rbx
1161	movq	-48(%rdi), %rdx
1162	addq	%r11, %r8
1163	movq	32(%rdi), %r11
1164	movq	16(%rdi), %rcx
1165	movl	%esi, %r12d
1166	addq	%rax, %r8
1167	movq	%rsi, %r10
1168	addq	%r15, %r8
1169	xorq	%rdx, %rbx
1170	roll	$30, %r14d
1171	xorq	%r11, %rbx
1172	orq	%r14, %rsi
1173	andq	%r14, %r10
1174	xorl	%ecx, %ebx
1175	andq	%r9, %rsi
1176	movl	%r8d, %ecx
1177	roll	%ebx
1178	orq	%rsi, %r10
1179	roll	$5, %ecx
1180	movq	%rbx, 16(%rdi)
1181	movq	16(%rdi), %rsi
1182	addq	%r10, %rcx
1183	movq	(%rdi), %r11
1184	movq	-40(%rdi), %rax
1185	addq	%r13, %rcx
1186	movq	40(%rdi), %rdx
1187	movq	24(%rdi), %r13
1188	roll	$30, %r12d
1189	addq	%rsi, %rcx
1190	movl	%r8d, %ebx
1191	movq	%r8, %r10
1192	xorq	%rax, %r11
1193	addq	%r15, %rcx
1194	orq	%r12, %r8
1195	xorq	%rdx, %r11
1196	andq	%r14, %r8
1197	andq	%r12, %r10
1198	xorl	%r13d, %r11d
1199	movl	%ecx, %r13d
1200	orq	%r8, %r10
1201	roll	%r11d
1202	roll	$5, %r13d
1203	roll	$30, %ebx
1204	movq	%r11, 24(%rdi)
1205	addq	%r10, %r13
1206	movq	24(%rdi), %rsi
1207	movq	8(%rdi), %r10
1208	movq	-32(%rdi), %rax
1209	addq	%r9, %r13
1210	movq	48(%rdi), %rdx
1211	movq	32(%rdi), %r8
1212	movl	%ecx, %r11d
1213	addq	%rsi, %r13
1214	movq	%rcx, %r9
1215	xorq	%rax, %r10
1216	addq	%r15, %r13
1217	xorq	%rdx, %r10
1218	xorl	%r8d, %r10d
1219	movl	%r13d, %r8d
1220	roll	%r10d
1221	orq	%rbx, %rcx
1222	andq	%rbx, %r9
1223	movq	%r10, 32(%rdi)
1224	andq	%r12, %rcx
1225	movl	%r13d, %r10d
1226	orq	%rcx, %r9
1227	roll	$5, %r10d
1228	movq	32(%rdi), %rsi
1229	addq	%r9, %r10
1230	roll	$30, %r11d
1231	movq	%r13, %rcx
1232	addq	%r14, %r10
1233	movq	16(%rdi), %r14
1234	movq	-24(%rdi), %rax
1235	movq	56(%rdi), %rdx
1236	movq	40(%rdi), %r9
1237	addq	%rsi, %r10
1238	addq	%r15, %r10
1239	orq	%r11, %r13
1240	andq	%r11, %rcx
1241	xorq	%rax, %r14
1242	andq	%rbx, %r13
1243	xorq	%rdx, %r14
1244	orq	%r13, %rcx
1245	xorl	%r9d, %r14d
1246	movl	%r10d, %r9d
1247	roll	%r14d
1248	roll	$5, %r9d
1249	movq	%r14, 40(%rdi)
1250	movq	40(%rdi), %rsi
1251	addq	%rcx, %r9
1252	movq	24(%rdi), %r13
1253	addq	%r12, %r9
1254	movq	-16(%rdi), %r12
1255	movq	64(%rdi), %rax
1256	movl	%r10d, %r14d
1257	addq	%rsi, %r9
1258	movl	%r8d, %esi
1259	addq	%r15, %r9
1260	movq	48(%rdi), %r15
1261	xorq	%r12, %r13
1262	roll	$30, %esi
1263	xorq	%rax, %r13
1264	xorq	%rsi, %r10
1265	xorl	%r15d, %r13d
1266	movl	%r9d, %r15d
1267	xorq	%r11, %r10
1268	roll	$5, %r15d
1269	roll	%r13d
1270	addq	%r10, %r15
1271	movq	%r13, 48(%rdi)
1272	movq	48(%rdi), %r10
1273	addq	%rbx, %r15
1274	movq	32(%rdi), %rbx
1275	movq	-8(%rdi), %r8
1276	movq	72(%rdi), %rdx
1277	movq	56(%rdi), %rcx
1278	roll	$30, %r14d
1279	addq	%r10, %r15
1280	movl	$3395469782, %r10d
1281	movl	%r9d, %r13d
1282	xorq	%r8, %rbx
1283	addq	%r10, %r15
1284	xorq	%r14, %r9
1285	xorq	%rdx, %rbx
1286	xorq	%rsi, %r9
1287	roll	$30, %r13d
1288	xorl	%ecx, %ebx
1289	movl	%r15d, %ecx
1290	roll	%ebx
1291	roll	$5, %ecx
1292	movq	%rbx, 56(%rdi)
1293	addq	%r9, %rcx
1294	movq	56(%rdi), %r12
1295	movq	40(%rdi), %r9
1296	movq	(%rdi), %rax
1297	addq	%r11, %rcx
1298	movq	-48(%rdi), %r8
1299	movq	64(%rdi), %r11
1300	movl	%r15d, %ebx
1301	addq	%r12, %rcx
1302	xorq	%r13, %r15
1303	roll	$30, %ebx
1304	xorq	%rax, %r9
1305	addq	%r10, %rcx
1306	xorq	%r14, %r15
1307	xorq	%r8, %r9
1308	xorl	%r11d, %r9d
1309	movl	%ecx, %r11d
1310	roll	%r9d
1311	roll	$5, %r11d
1312	movq	%r9, 64(%rdi)
1313	addq	%r15, %r11
1314	movq	64(%rdi), %rdx
1315	movq	48(%rdi), %r15
1316	movq	8(%rdi), %r12
1317	addq	%rsi, %r11
1318	movq	-40(%rdi), %rax
1319	movq	72(%rdi), %r8
1320	movl	%ecx, %r9d
1321	addq	%rdx, %r11
1322	xorq	%r12, %r15
1323	addq	%r10, %r11
1324	xorq	%rax, %r15
1325	xorl	%r8d, %r15d
1326	movl	%r11d, %r8d
1327	roll	%r15d
1328	roll	$5, %r8d
1329	xorq	%rbx, %rcx
1330	xorq	%r13, %rcx
1331	movq	%r15, 72(%rdi)
1332	movq	72(%rdi), %rsi
1333	addq	%rcx, %r8
1334	movq	56(%rdi), %r12
1335	movq	16(%rdi), %rcx
1336	movq	-32(%rdi), %rdx
1337	addq	%r14, %r8
1338	movq	-48(%rdi), %r14
1339	addq	%rsi, %r8
1340	roll	$30, %r9d
1341	movl	%r11d, %r15d
1342	xorq	%rcx, %r12
1343	addq	%r10, %r8
1344	xorq	%r9, %r11
1345	xorq	%rdx, %r12
1346	xorq	%rbx, %r11
1347	roll	$30, %r15d
1348	xorl	%r14d, %r12d
1349	movl	%r8d, %r14d
1350	roll	$5, %r14d
1351	roll	%r12d
1352	addq	%r11, %r14
1353	movq	%r12, -48(%rdi)
1354	movq	-48(%rdi), %rax
1355	addq	%r13, %r14
1356	movq	64(%rdi), %r13
1357	movq	24(%rdi), %rsi
1358	movq	-24(%rdi), %rcx
1359	movq	-40(%rdi), %r11
1360	movl	%r8d, %r12d
1361	addq	%rax, %r14
1362	xorq	%r15, %r8
1363	roll	$30, %r12d
1364	xorq	%rsi, %r13
1365	addq	%r10, %r14
1366	xorq	%r9, %r8
1367	xorq	%rcx, %r13
1368	xorl	%r11d, %r13d
1369	movl	%r14d, %r11d
1370	roll	$5, %r11d
1371	roll	%r13d
1372	addq	%r8, %r11
1373	movq	%r13, -40(%rdi)
1374	movq	-40(%rdi), %rdx
1375	addq	%rbx, %r11
1376	movq	72(%rdi), %rbx
1377	movq	32(%rdi), %rax
1378	movq	-16(%rdi), %rsi
1379	movq	-32(%rdi), %r8
1380	movl	%r14d, %r13d
1381	addq	%rdx, %r11
1382	xorq	%rax, %rbx
1383	addq	%r10, %r11
1384	xorq	%rsi, %rbx
1385	xorl	%r8d, %ebx
1386	xorq	%r12, %r14
1387	movl	%r11d, %r8d
1388	xorq	%r15, %r14
1389	roll	%ebx
1390	roll	$5, %r8d
1391	movq	%rbx, -32(%rdi)
1392	addq	%r14, %r8
1393	movq	-32(%rdi), %rcx
1394	movq	-48(%rdi), %r14
1395	movq	40(%rdi), %rdx
1396	addq	%r9, %r8
1397	movq	-8(%rdi), %rax
1398	movq	-24(%rdi), %r9
1399	roll	$30, %r13d
1400	addq	%rcx, %r8
1401	movl	%r11d, %ebx
1402	xorq	%r13, %r11
1403	xorq	%rdx, %r14
1404	addq	%r10, %r8
1405	xorq	%r12, %r11
1406	xorq	%rax, %r14
1407	roll	$30, %ebx
1408	xorl	%r9d, %r14d
1409	movl	%r8d, %r9d
1410	roll	$5, %r9d
1411	roll	%r14d
1412	addq	%r11, %r9
1413	movq	%r14, -24(%rdi)
1414	movq	-24(%rdi), %rsi
1415	addq	%r15, %r9
1416	movq	-40(%rdi), %r15
1417	movq	48(%rdi), %rcx
1418	movq	(%rdi), %rdx
1419	movq	-16(%rdi), %r11
1420	movl	%r8d, %r14d
1421	addq	%rsi, %r9
1422	xorq	%rbx, %r8
1423	xorq	%rcx, %r15
1424	addq	%r10, %r9
1425	xorq	%r13, %r8
1426	xorq	%rdx, %r15
1427	xorl	%r11d, %r15d
1428	movl	%r9d, %r11d
1429	roll	%r15d
1430	roll	$5, %r11d
1431	movq	%r15, -16(%rdi)
1432	addq	%r8, %r11
1433	movq	-16(%rdi), %rax
1434	addq	%r12, %r11
1435	movq	-32(%rdi), %r12
1436	movq	56(%rdi), %rsi
1437	movq	8(%rdi), %rcx
1438	movq	-8(%rdi), %r8
1439	movl	%r9d, %r15d
1440	addq	%rax, %r11
1441	addq	%r10, %r11
1442	roll	$30, %r14d
1443	xorq	%rsi, %r12
1444	xorq	%rcx, %r12
1445	xorq	%r14, %r9
1446	roll	$30, %r15d
1447	xorl	%r8d, %r12d
1448	movl	%r11d, %r8d
1449	xorq	%rbx, %r9
1450	roll	$5, %r8d
1451	roll	%r12d
1452	addq	%r9, %r8
1453	movq	%r12, -8(%rdi)
1454	movq	-8(%rdi), %rdx
1455	addq	%r13, %r8
1456	movq	-24(%rdi), %r13
1457	movq	64(%rdi), %rax
1458	movq	16(%rdi), %rsi
1459	movq	(%rdi), %rcx
1460	movl	%r11d, %r12d
1461	addq	%rdx, %r8
1462	xorq	%r15, %r11
1463	roll	$30, %r12d
1464	xorq	%rax, %r13
1465	addq	%r10, %r8
1466	xorq	%r14, %r11
1467	xorq	%rsi, %r13
1468	xorl	%ecx, %r13d
1469	movl	%r8d, %ecx
1470	roll	$5, %ecx
1471	roll	%r13d
1472	addq	%r11, %rcx
1473	movq	%r13, (%rdi)
1474	movq	(%rdi), %r9
1475	addq	%rbx, %rcx
1476	movq	-16(%rdi), %rbx
1477	movq	72(%rdi), %rdx
1478	movq	24(%rdi), %rax
1479	movq	8(%rdi), %rsi
1480	movl	%r8d, %r13d
1481	addq	%r9, %rcx
1482	xorq	%r12, %r8
1483	xorq	%rdx, %rbx
1484	addq	%r10, %rcx
1485	xorq	%r15, %r8
1486	xorq	%rax, %rbx
1487	xorl	%esi, %ebx
1488	movl	%ecx, %esi
1489	roll	$5, %esi
1490	roll	%ebx
1491	addq	%r8, %rsi
1492	movq	%rbx, 8(%rdi)
1493	movq	8(%rdi), %r11
1494	addq	%r14, %rsi
1495	movq	-8(%rdi), %r14
1496	movq	-48(%rdi), %r9
1497	movq	32(%rdi), %rdx
1498	movq	16(%rdi), %r8
1499	roll	$30, %r13d
1500	addq	%r11, %rsi
1501	movl	%ecx, %ebx
1502	xorq	%r13, %rcx
1503	xorq	%r9, %r14
1504	addq	%r10, %rsi
1505	xorq	%r12, %rcx
1506	xorq	%rdx, %r14
1507	roll	$30, %ebx
1508	xorl	%r8d, %r14d
1509	movl	%esi, %r8d
1510	roll	$5, %r8d
1511	roll	%r14d
1512	addq	%rcx, %r8
1513	movq	%r14, 16(%rdi)
1514	movq	16(%rdi), %rax
1515	addq	%r15, %r8
1516	movq	(%rdi), %r15
1517	movq	-40(%rdi), %r11
1518	movq	40(%rdi), %r9
1519	movq	24(%rdi), %rcx
1520	movl	%esi, %r14d
1521	addq	%rax, %r8
1522	xorq	%rbx, %rsi
1523	roll	$30, %r14d
1524	xorq	%r11, %r15
1525	addq	%r10, %r8
1526	xorq	%r13, %rsi
1527	xorq	%r9, %r15
1528	xorl	%ecx, %r15d
1529	movl	%r8d, %ecx
1530	roll	%r15d
1531	roll	$5, %ecx
1532	movq	%r15, 24(%rdi)
1533	addq	%rsi, %rcx
1534	movq	24(%rdi), %rdx
1535	movq	8(%rdi), %r11
1536	movq	-32(%rdi), %rax
1537	addq	%r12, %rcx
1538	movq	48(%rdi), %r12
1539	movq	32(%rdi), %rsi
1540	movl	%r8d, %r15d
1541	addq	%rdx, %rcx
1542	xorq	%rax, %r11
1543	addq	%r10, %rcx
1544	xorq	%r12, %r11
1545	xorl	%esi, %r11d
1546	movl	%ecx, %esi
1547	roll	%r11d
1548	movq	%r11, 32(%rdi)
1549	movl	%ecx, %r11d
1550	movq	32(%rdi), %r9
1551	roll	$5, %r11d
1552	xorq	%r14, %r8
1553	movq	16(%rdi), %r12
1554	xorq	%rbx, %r8
1555	movq	-24(%rdi), %rdx
1556	movq	56(%rdi), %rax
1557	addq	%r8, %r11
1558	movq	40(%rdi), %r8
1559	roll	$30, %r15d
1560	addq	%r13, %r11
1561	xorq	%r15, %rcx
1562	addq	%r9, %r11
1563	xorq	%rdx, %r12
1564	xorq	%r14, %rcx
1565	addq	%r10, %r11
1566	xorq	%rax, %r12
1567	xorl	%r8d, %r12d
1568	movl	%r11d, %r8d
1569	roll	$5, %r8d
1570	roll	%r12d
1571	addq	%rcx, %r8
1572	movq	%r12, 40(%rdi)
1573	movq	40(%rdi), %r13
1574	addq	%rbx, %r8
1575	movq	24(%rdi), %rbx
1576	movq	-16(%rdi), %r9
1577	movq	64(%rdi), %rdx
1578	movq	48(%rdi), %rcx
1579	movl	%r11d, %r12d
1580	addq	%r13, %r8
1581	movl	%esi, %r13d
1582	roll	$30, %r12d
1583	xorq	%r9, %rbx
1584	addq	%r10, %r8
1585	roll	$30, %r13d
1586	xorq	%rdx, %rbx
1587	xorq	%r13, %r11
1588	xorl	%ecx, %ebx
1589	movl	%r8d, %ecx
1590	xorq	%r15, %r11
1591	roll	%ebx
1592	roll	$5, %ecx
1593	movq	%rbx, 48(%rdi)
1594	addq	%r11, %rcx
1595	movq	48(%rdi), %rax
1596	movq	32(%rdi), %r11
1597	movq	-8(%rdi), %rsi
1598	addq	%r14, %rcx
1599	movq	72(%rdi), %r9
1600	movq	56(%rdi), %r14
1601	movl	%r8d, %ebx
1602	addq	%rax, %rcx
1603	xorq	%rsi, %r11
1604	addq	%r10, %rcx
1605	xorq	%r9, %r11
1606	xorl	%r14d, %r11d
1607	xorq	%r12, %r8
1608	movl	%ecx, %r14d
1609	xorq	%r13, %r8
1610	roll	%r11d
1611	roll	$5, %r14d
1612	movq	%r11, 56(%rdi)
1613	addq	%r8, %r14
1614	movq	56(%rdi), %rdx
1615	movq	40(%rdi), %r8
1616	movq	(%rdi), %rax
1617	addq	%r15, %r14
1618	movq	-48(%rdi), %r15
1619	movq	64(%rdi), %rsi
1620	roll	$30, %ebx
1621	addq	%rdx, %r14
1622	movl	%ecx, %r11d
1623	xorq	%rbx, %rcx
1624	xorq	%rax, %r8
1625	addq	%r10, %r14
1626	xorq	%r12, %rcx
1627	xorq	%r15, %r8
1628	roll	$30, %r11d
1629	xorl	%esi, %r8d
1630	movl	%r14d, %esi
1631	roll	%r8d
1632	roll	$5, %esi
1633	movq	%r8, 64(%rdi)
1634	movq	64(%rdi), %r9
1635	addq	%rcx, %rsi
1636	movq	48(%rdi), %r15
1637	movq	8(%rdi), %rcx
1638	addq	%r13, %rsi
1639	movq	-40(%rdi), %rdx
1640	movq	72(%rdi), %rax
1641	movl	%r14d, %r8d
1642	addq	%r9, %rsi
1643	xorq	%r11, %r14
1644	addq	%r10, %rsi
1645	xorq	%rcx, %r15
1646	xorq	%rbx, %r14
1647	xorq	%rdx, %r15
1648	movl	%esi, %r13d
1649	xorl	%eax, %r15d
1650	roll	$5, %r13d
1651	roll	%r15d
1652	addq	%r14, %r13
1653	movq	%r15, 72(%rdi)
1654	addq	%r12, %r13
1655	movq	72(%rdi), %r12
1656	addq	%r12, %r13
1657	addq	%r10, %r13
1658	movq	-88(%rdi), %r10
1659	roll	$30, %r8d
1660	addq	%r13, %r10
1661	movq	%r10, -88(%rdi)
1662	movq	-80(%rdi), %r9
1663	addq	%rsi, %r9
1664	movq	%r9, -80(%rdi)
1665	movq	-72(%rdi), %rcx
1666	addq	%r8, %rcx
1667	movq	%rcx, -72(%rdi)
1668	movq	-64(%rdi), %rdx
1669	addq	%r11, %rdx
1670	movq	%rdx, -64(%rdi)
1671	movq	-56(%rdi), %rax
1672	addq	%rbx, %rax
1673	popq	%rbx
1674	popq	%r12
1675	popq	%r13
1676	popq	%r14
1677	popq	%r15
1678	movq	%rax, -56(%rdi)
1679	ret
1680.LFE7:
1681	.size	shaCompress, .-shaCompress
1682	.align 16
1683.globl SHA1_Update
1684	.type	SHA1_Update, @function
1685SHA1_Update:
1686.LFB5:
1687	pushq	%rbp
1688.LCFI5:
1689	movq	%rsp, %rbp
1690.LCFI6:
1691	movq	%r13, -24(%rbp)
1692.LCFI7:
1693	movq	%r14, -16(%rbp)
1694.LCFI8:
1695	movl	%edx, %r13d
1696	movq	%r15, -8(%rbp)
1697.LCFI9:
1698	movq	%rbx, -40(%rbp)
1699.LCFI10:
1700	movq	%rdi, %r15
1701	movq	%r12, -32(%rbp)
1702.LCFI11:
1703	subq	$48, %rsp
1704.LCFI12:
1705	testl	%edx, %edx
1706	movq	%rsi, %r14
1707	je	.L243
1708	movq	64(%rdi), %rdx
1709	mov	%r13d, %ecx
1710	leaq	(%rdx,%rcx), %rax
1711	movq	%rax, 64(%rdi)
1712	movl	%edx, %eax
1713	andl	$63, %eax
1714	movl	%eax, -44(%rbp)
1715	jne	.L256
1716.L245:
1717	cmpl	$63, %r13d
1718	jbe	.L253
1719	leaq	160(%r15), %rbx
1720	.align 16
1721.L250:
1722	movq	%r14, %rsi
1723	subl	$64, %r13d
1724	movq	%rbx, %rdi
1725	call	shaCompress
1726	addq	$64, %r14
1727	cmpl	$63, %r13d
1728	ja	.L250
1729.L253:
1730	testl	%r13d, %r13d
1731	je	.L243
1732	mov	%r13d, %edx
1733	movq	%r14, %rsi
1734	movq	%r15, %rdi
1735	movq	-40(%rbp), %rbx
1736	movq	-32(%rbp), %r12
1737	movq	-24(%rbp), %r13
1738	movq	-16(%rbp), %r14
1739	movq	-8(%rbp), %r15
1740	leave
1741	jmp	memcpy@PLT
1742	.align 16
1743.L243:
1744	movq	-40(%rbp), %rbx
1745	movq	-32(%rbp), %r12
1746	movq	-24(%rbp), %r13
1747	movq	-16(%rbp), %r14
1748	movq	-8(%rbp), %r15
1749	leave
1750	ret
1751.L256:
1752	movl	$64, %ebx
1753	mov	%eax, %edi
1754	subl	%eax, %ebx
1755	cmpl	%ebx, %r13d
1756	cmovb	%r13d, %ebx
1757	addq	%r15, %rdi
1758	mov	%ebx, %r12d
1759	subl	%ebx, %r13d
1760	movq	%r12, %rdx
1761	addq	%r12, %r14
1762	call	memcpy@PLT
1763	addl	-44(%rbp), %ebx
1764	andl	$63, %ebx
1765	jne	.L245
1766	leaq	160(%r15), %rdi
1767	movq	%r15, %rsi
1768	call	shaCompress
1769	jmp	.L245
1770.LFE5:
1771	.size	SHA1_Update, .-SHA1_Update
1772	.section	.rodata
1773	.align 32
1774	.type	bulk_pad.0, @object
1775	.size	bulk_pad.0, 64
1776bulk_pad.0:
1777	.byte	-128
1778	.byte	0
1779	.byte	0
1780	.byte	0
1781	.byte	0
1782	.byte	0
1783	.byte	0
1784	.byte	0
1785	.byte	0
1786	.byte	0
1787	.byte	0
1788	.byte	0
1789	.byte	0
1790	.byte	0
1791	.byte	0
1792	.byte	0
1793	.byte	0
1794	.byte	0
1795	.byte	0
1796	.byte	0
1797	.byte	0
1798	.byte	0
1799	.byte	0
1800	.byte	0
1801	.byte	0
1802	.byte	0
1803	.byte	0
1804	.byte	0
1805	.byte	0
1806	.byte	0
1807	.byte	0
1808	.byte	0
1809	.byte	0
1810	.byte	0
1811	.byte	0
1812	.byte	0
1813	.byte	0
1814	.byte	0
1815	.byte	0
1816	.byte	0
1817	.byte	0
1818	.byte	0
1819	.byte	0
1820	.byte	0
1821	.byte	0
1822	.byte	0
1823	.byte	0
1824	.byte	0
1825	.byte	0
1826	.byte	0
1827	.byte	0
1828	.byte	0
1829	.byte	0
1830	.byte	0
1831	.byte	0
1832	.byte	0
1833	.byte	0
1834	.byte	0
1835	.byte	0
1836	.byte	0
1837	.byte	0
1838	.byte	0
1839	.byte	0
1840	.byte	0
1841	.text
1842	.align 16
1843.globl SHA1_End
1844	.type	SHA1_End, @function
1845SHA1_End:
1846.LFB6:
1847	pushq	%rbp
1848.LCFI13:
1849	movq	%rsp, %rbp
1850.LCFI14:
1851	movq	%r12, -24(%rbp)
1852.LCFI15:
1853	movq	%r13, -16(%rbp)
1854.LCFI16:
1855	movq	%rsi, %r13
1856	movq	%r14, -8(%rbp)
1857.LCFI17:
1858	movq	%rbx, -32(%rbp)
1859.LCFI18:
1860	subq	$32, %rsp
1861.LCFI19:
1862	movq	64(%rdi), %rbx
1863	movq	%rdx, %r14
1864	movl	$119, %edx
1865	leaq	bulk_pad.0(%rip), %rsi
1866	movq	%rdi, %r12
1867	movl	%ebx, %r8d
1868	salq	$3, %rbx
1869	andl	$63, %r8d
1870	subl	%r8d, %edx
1871	andl	$63, %edx
1872	incl	%edx
1873	call	SHA1_Update@PLT
1874	movq	%rbx, %rdi
1875	movq	%r12, %rsi
1876	shrq	$32, %rdi
1877/APP
1878	bswap %edi
1879/NO_APP
1880	movl	%edi, 56(%r12)
1881	leaq	160(%r12), %rdi
1882/APP
1883	bswap %ebx
1884/NO_APP
1885	movl	%ebx, 60(%r12)
1886	call	shaCompress
1887	movl	72(%r12), %esi
1888	movl	80(%r12), %ebx
1889	movl	88(%r12), %ecx
1890	movl	96(%r12), %edx
1891	movl	104(%r12), %eax
1892	movq	8(%rsp), %r12
1893/APP
1894	bswap %ebx
1895	bswap %esi
1896/NO_APP
1897	movl	%ebx, 4(%r13)
1898	movl	%esi, (%r13)
1899/APP
1900	bswap %ecx
1901	bswap %edx
1902/NO_APP
1903	movl	%ecx, 8(%r13)
1904	movl	%edx, 12(%r13)
1905/APP
1906	bswap %eax
1907/NO_APP
1908	movq	(%rsp), %rbx
1909	movl	%eax, 16(%r13)
1910        cmpq    $0, %r14
1911        je      .L133
1912	movl	$20, (%r14)
1913.L133:
1914	movq	16(%rsp), %r13
1915	movq	24(%rsp), %r14
1916	leave
1917	ret
1918.LFE6:
1919	.size	SHA1_End, .-SHA1_End
1920	.align 16
1921.globl SHA1_NewContext
1922	.type	SHA1_NewContext, @function
1923SHA1_NewContext:
1924.LFB8:
1925	movl	$248, %edi
1926	jmp	PORT_Alloc_Util@PLT
1927.LFE8:
1928	.size	SHA1_NewContext, .-SHA1_NewContext
1929	.align 16
1930.globl SHA1_DestroyContext
1931	.type	SHA1_DestroyContext, @function
1932SHA1_DestroyContext:
1933.LFB9:
1934	pushq	%rbp
1935.LCFI20:
1936	movl	$248, %edx
1937	movq	%rsp, %rbp
1938.LCFI21:
1939	movq	%rbx, -16(%rbp)
1940.LCFI22:
1941	movq	%r12, -8(%rbp)
1942.LCFI23:
1943	movl	%esi, %ebx
1944	subq	$16, %rsp
1945.LCFI24:
1946	xorl	%esi, %esi
1947	movq	%rdi, %r12
1948	call	memset@PLT
1949	testl	%ebx, %ebx
1950	jne	.L268
1951	movq	(%rsp), %rbx
1952	movq	8(%rsp), %r12
1953	leave
1954	ret
1955	.align 16
1956.L268:
1957	movq	%r12, %rdi
1958	movq	(%rsp), %rbx
1959	movq	8(%rsp), %r12
1960	leave
1961	jmp	PORT_Free_Util@PLT
1962.LFE9:
1963	.size	SHA1_DestroyContext, .-SHA1_DestroyContext
1964	.align 16
1965.globl SHA1_HashBuf
1966	.type	SHA1_HashBuf, @function
1967SHA1_HashBuf:
1968.LFB10:
1969	pushq	%rbp
1970.LCFI25:
1971	movq	%rsp, %rbp
1972.LCFI26:
1973	movq	%rbx, -32(%rbp)
1974.LCFI27:
1975	leaq	-288(%rbp), %rbx
1976	movq	%r12, -24(%rbp)
1977.LCFI28:
1978	movq	%r13, -16(%rbp)
1979.LCFI29:
1980	movq	%r14, -8(%rbp)
1981.LCFI30:
1982	movq	%rsi, %r13
1983	subq	$304, %rsp
1984.LCFI31:
1985	movq	%rdi, %r14
1986	movl	%edx, %r12d
1987	movq	%rbx, %rdi
1988	call	SHA1_Begin@PLT
1989	movl	%r12d, %edx
1990	movq	%r13, %rsi
1991	movq	%rbx, %rdi
1992	call	SHA1_Update@PLT
1993	leaq	-292(%rbp), %rdx
1994	movq	%r14, %rsi
1995	movq	%rbx, %rdi
1996	movl	$20, %ecx
1997	call	SHA1_End@PLT
1998	movq	-32(%rbp), %rbx
1999	movq	-24(%rbp), %r12
2000	xorl	%eax, %eax
2001	movq	-16(%rbp), %r13
2002	movq	-8(%rbp), %r14
2003	leave
2004	ret
2005.LFE10:
2006	.size	SHA1_HashBuf, .-SHA1_HashBuf
2007	.align 16
2008.globl SHA1_Hash
2009	.type	SHA1_Hash, @function
2010SHA1_Hash:
2011.LFB11:
2012	pushq	%rbp
2013.LCFI32:
2014	movq	%rsp, %rbp
2015.LCFI33:
2016	movq	%rbx, -16(%rbp)
2017.LCFI34:
2018	movq	%r12, -8(%rbp)
2019.LCFI35:
2020	movq	%rsi, %rbx
2021	subq	$16, %rsp
2022.LCFI36:
2023	movq	%rdi, %r12
2024	movq	%rsi, %rdi
2025	call	strlen@PLT
2026	movq	%rbx, %rsi
2027	movq	%r12, %rdi
2028	movq	(%rsp), %rbx
2029	movq	8(%rsp), %r12
2030	leave
2031	movl	%eax, %edx
2032	jmp	SHA1_HashBuf@PLT
2033.LFE11:
2034	.size	SHA1_Hash, .-SHA1_Hash
2035	.align 16
2036.globl SHA1_FlattenSize
2037	.type	SHA1_FlattenSize, @function
2038SHA1_FlattenSize:
2039.LFB12:
2040	movl	$248, %eax
2041	ret
2042.LFE12:
2043	.size	SHA1_FlattenSize, .-SHA1_FlattenSize
2044	.align 16
2045.globl SHA1_Flatten
2046	.type	SHA1_Flatten, @function
2047SHA1_Flatten:
2048.LFB13:
2049	pushq	%rbp
2050.LCFI37:
2051	movq	%rsi, %rax
2052	movl	$248, %edx
2053	movq	%rdi, %rsi
2054	movq	%rax, %rdi
2055	movq	%rsp, %rbp
2056.LCFI38:
2057	call	memcpy@PLT
2058	leave
2059	xorl	%eax, %eax
2060	ret
2061.LFE13:
2062	.size	SHA1_Flatten, .-SHA1_Flatten
2063	.align 16
2064.globl SHA1_Resurrect
2065	.type	SHA1_Resurrect, @function
2066SHA1_Resurrect:
2067.LFB14:
2068	pushq	%rbp
2069.LCFI39:
2070	movq	%rsp, %rbp
2071.LCFI40:
2072	movq	%rbx, -16(%rbp)
2073.LCFI41:
2074	movq	%r12, -8(%rbp)
2075.LCFI42:
2076	subq	$16, %rsp
2077.LCFI43:
2078	movq	%rdi, %r12
2079	call	SHA1_NewContext@PLT
2080	movq	%rax, %rbx
2081	xorl	%eax, %eax
2082	testq	%rbx, %rbx
2083	je	.L273
2084	movl	$248, %edx
2085	movq	%r12, %rsi
2086	movq	%rbx, %rdi
2087	call	memcpy@PLT
2088	movq	%rbx, %rax
2089.L273:
2090	movq	(%rsp), %rbx
2091	movq	8(%rsp), %r12
2092	leave
2093	ret
2094.LFE14:
2095	.size	SHA1_Resurrect, .-SHA1_Resurrect
2096	.align 16
2097.globl SHA1_Clone
2098	.type	SHA1_Clone, @function
2099SHA1_Clone:
2100.LFB15:
2101	movl	$248, %edx
2102	jmp	memcpy@PLT
2103.LFE15:
2104	.size	SHA1_Clone, .-SHA1_Clone
2105	.align 16
2106.globl SHA1_TraceState
2107	.type	SHA1_TraceState, @function
2108SHA1_TraceState:
2109.LFB16:
2110	movl	$-5992, %edi
2111	jmp	PORT_SetError_Util@PLT
2112.LFE16:
2113	.size	SHA1_TraceState, .-SHA1_TraceState
2114	.align 16
2115.globl SHA1_EndRaw
2116        .type   SHA1_EndRaw, @function
2117SHA1_EndRaw:
2118.LFB50:
2119        movq    72(%rdi), %rax
2120/APP
2121        bswap %eax
2122/NO_APP
2123        movl    %eax, (%rsi)
2124        movq    80(%rdi), %rax
2125/APP
2126        bswap %eax
2127/NO_APP
2128        movl    %eax, 4(%rsi)
2129        movq    88(%rdi), %rax
2130/APP
2131        bswap %eax
2132/NO_APP
2133        movl    %eax, 8(%rsi)
2134        movq    96(%rdi), %rax
2135/APP
2136        bswap %eax
2137/NO_APP
2138        movl    %eax, 12(%rsi)
2139        movq    104(%rdi), %rax
2140/APP
2141        bswap %eax
2142/NO_APP
2143        testq   %rdx, %rdx
2144        movl    %eax, 16(%rsi)
2145        je      .L14
2146        movl    $20, (%rdx)
2147.L14:
2148        rep
2149        ret
2150.LFE50:
2151        .size   SHA1_EndRaw, .-SHA1_EndRaw
2152