]> CyberLeo.Net >> Repos - FreeBSD/stable/10.git/blob - secure/lib/libcrypto/i386/sha1-586.S
- Make libcrypto.so position independent on i386.
[FreeBSD/stable/10.git] / secure / lib / libcrypto / i386 / sha1-586.S
1 # $FreeBSD$
2 # Do not modify. This file is auto-generated from sha1-586.pl.
3 #ifdef PIC
4 .file   "sha1-586.S"
5 .text
6 .globl  sha1_block_data_order
7 .type   sha1_block_data_order,@function
8 .align  16
9 sha1_block_data_order:
10 .L_sha1_block_data_order_begin:
11         pushl   %ebp
12         pushl   %ebx
13         pushl   %esi
14         pushl   %edi
15         call    .L000pic_point
16 .L000pic_point:
17         popl    %ebp
18         leal    _GLOBAL_OFFSET_TABLE_+[.-.L000pic_point](%ebp),%esi
19         movl    OPENSSL_ia32cap_P@GOT(%esi),%esi
20         leal    .LK_XX_XX-.L000pic_point(%ebp),%ebp
21         movl    (%esi),%eax
22         movl    4(%esi),%edx
23         testl   $512,%edx
24         jz      .L001x86
25         testl   $16777216,%eax
26         jz      .L001x86
27         andl    $268435456,%edx
28         andl    $1073741824,%eax
29         orl     %edx,%eax
30         cmpl    $1342177280,%eax
31         je      .Lavx_shortcut
32         jmp     .Lssse3_shortcut
33 .align  16
34 .L001x86:
35         movl    20(%esp),%ebp
36         movl    24(%esp),%esi
37         movl    28(%esp),%eax
38         subl    $76,%esp
39         shll    $6,%eax
40         addl    %esi,%eax
41         movl    %eax,104(%esp)
42         movl    16(%ebp),%edi
43         jmp     .L002loop
44 .align  16
45 .L002loop:
46         movl    (%esi),%eax
47         movl    4(%esi),%ebx
48         movl    8(%esi),%ecx
49         movl    12(%esi),%edx
50         bswap   %eax
51         bswap   %ebx
52         bswap   %ecx
53         bswap   %edx
54         movl    %eax,(%esp)
55         movl    %ebx,4(%esp)
56         movl    %ecx,8(%esp)
57         movl    %edx,12(%esp)
58         movl    16(%esi),%eax
59         movl    20(%esi),%ebx
60         movl    24(%esi),%ecx
61         movl    28(%esi),%edx
62         bswap   %eax
63         bswap   %ebx
64         bswap   %ecx
65         bswap   %edx
66         movl    %eax,16(%esp)
67         movl    %ebx,20(%esp)
68         movl    %ecx,24(%esp)
69         movl    %edx,28(%esp)
70         movl    32(%esi),%eax
71         movl    36(%esi),%ebx
72         movl    40(%esi),%ecx
73         movl    44(%esi),%edx
74         bswap   %eax
75         bswap   %ebx
76         bswap   %ecx
77         bswap   %edx
78         movl    %eax,32(%esp)
79         movl    %ebx,36(%esp)
80         movl    %ecx,40(%esp)
81         movl    %edx,44(%esp)
82         movl    48(%esi),%eax
83         movl    52(%esi),%ebx
84         movl    56(%esi),%ecx
85         movl    60(%esi),%edx
86         bswap   %eax
87         bswap   %ebx
88         bswap   %ecx
89         bswap   %edx
90         movl    %eax,48(%esp)
91         movl    %ebx,52(%esp)
92         movl    %ecx,56(%esp)
93         movl    %edx,60(%esp)
94         movl    %esi,100(%esp)
95         movl    (%ebp),%eax
96         movl    4(%ebp),%ebx
97         movl    8(%ebp),%ecx
98         movl    12(%ebp),%edx
99
100         movl    %ecx,%esi
101         movl    %eax,%ebp
102         roll    $5,%ebp
103         xorl    %edx,%esi
104         addl    %edi,%ebp
105         movl    (%esp),%edi
106         andl    %ebx,%esi
107         rorl    $2,%ebx
108         xorl    %edx,%esi
109         leal    1518500249(%ebp,%edi,1),%ebp
110         addl    %esi,%ebp
111
112         movl    %ebx,%edi
113         movl    %ebp,%esi
114         roll    $5,%ebp
115         xorl    %ecx,%edi
116         addl    %edx,%ebp
117         movl    4(%esp),%edx
118         andl    %eax,%edi
119         rorl    $2,%eax
120         xorl    %ecx,%edi
121         leal    1518500249(%ebp,%edx,1),%ebp
122         addl    %edi,%ebp
123
124         movl    %eax,%edx
125         movl    %ebp,%edi
126         roll    $5,%ebp
127         xorl    %ebx,%edx
128         addl    %ecx,%ebp
129         movl    8(%esp),%ecx
130         andl    %esi,%edx
131         rorl    $2,%esi
132         xorl    %ebx,%edx
133         leal    1518500249(%ebp,%ecx,1),%ebp
134         addl    %edx,%ebp
135
136         movl    %esi,%ecx
137         movl    %ebp,%edx
138         roll    $5,%ebp
139         xorl    %eax,%ecx
140         addl    %ebx,%ebp
141         movl    12(%esp),%ebx
142         andl    %edi,%ecx
143         rorl    $2,%edi
144         xorl    %eax,%ecx
145         leal    1518500249(%ebp,%ebx,1),%ebp
146         addl    %ecx,%ebp
147
148         movl    %edi,%ebx
149         movl    %ebp,%ecx
150         roll    $5,%ebp
151         xorl    %esi,%ebx
152         addl    %eax,%ebp
153         movl    16(%esp),%eax
154         andl    %edx,%ebx
155         rorl    $2,%edx
156         xorl    %esi,%ebx
157         leal    1518500249(%ebp,%eax,1),%ebp
158         addl    %ebx,%ebp
159
160         movl    %edx,%eax
161         movl    %ebp,%ebx
162         roll    $5,%ebp
163         xorl    %edi,%eax
164         addl    %esi,%ebp
165         movl    20(%esp),%esi
166         andl    %ecx,%eax
167         rorl    $2,%ecx
168         xorl    %edi,%eax
169         leal    1518500249(%ebp,%esi,1),%ebp
170         addl    %eax,%ebp
171
172         movl    %ecx,%esi
173         movl    %ebp,%eax
174         roll    $5,%ebp
175         xorl    %edx,%esi
176         addl    %edi,%ebp
177         movl    24(%esp),%edi
178         andl    %ebx,%esi
179         rorl    $2,%ebx
180         xorl    %edx,%esi
181         leal    1518500249(%ebp,%edi,1),%ebp
182         addl    %esi,%ebp
183
184         movl    %ebx,%edi
185         movl    %ebp,%esi
186         roll    $5,%ebp
187         xorl    %ecx,%edi
188         addl    %edx,%ebp
189         movl    28(%esp),%edx
190         andl    %eax,%edi
191         rorl    $2,%eax
192         xorl    %ecx,%edi
193         leal    1518500249(%ebp,%edx,1),%ebp
194         addl    %edi,%ebp
195
196         movl    %eax,%edx
197         movl    %ebp,%edi
198         roll    $5,%ebp
199         xorl    %ebx,%edx
200         addl    %ecx,%ebp
201         movl    32(%esp),%ecx
202         andl    %esi,%edx
203         rorl    $2,%esi
204         xorl    %ebx,%edx
205         leal    1518500249(%ebp,%ecx,1),%ebp
206         addl    %edx,%ebp
207
208         movl    %esi,%ecx
209         movl    %ebp,%edx
210         roll    $5,%ebp
211         xorl    %eax,%ecx
212         addl    %ebx,%ebp
213         movl    36(%esp),%ebx
214         andl    %edi,%ecx
215         rorl    $2,%edi
216         xorl    %eax,%ecx
217         leal    1518500249(%ebp,%ebx,1),%ebp
218         addl    %ecx,%ebp
219
220         movl    %edi,%ebx
221         movl    %ebp,%ecx
222         roll    $5,%ebp
223         xorl    %esi,%ebx
224         addl    %eax,%ebp
225         movl    40(%esp),%eax
226         andl    %edx,%ebx
227         rorl    $2,%edx
228         xorl    %esi,%ebx
229         leal    1518500249(%ebp,%eax,1),%ebp
230         addl    %ebx,%ebp
231
232         movl    %edx,%eax
233         movl    %ebp,%ebx
234         roll    $5,%ebp
235         xorl    %edi,%eax
236         addl    %esi,%ebp
237         movl    44(%esp),%esi
238         andl    %ecx,%eax
239         rorl    $2,%ecx
240         xorl    %edi,%eax
241         leal    1518500249(%ebp,%esi,1),%ebp
242         addl    %eax,%ebp
243
244         movl    %ecx,%esi
245         movl    %ebp,%eax
246         roll    $5,%ebp
247         xorl    %edx,%esi
248         addl    %edi,%ebp
249         movl    48(%esp),%edi
250         andl    %ebx,%esi
251         rorl    $2,%ebx
252         xorl    %edx,%esi
253         leal    1518500249(%ebp,%edi,1),%ebp
254         addl    %esi,%ebp
255
256         movl    %ebx,%edi
257         movl    %ebp,%esi
258         roll    $5,%ebp
259         xorl    %ecx,%edi
260         addl    %edx,%ebp
261         movl    52(%esp),%edx
262         andl    %eax,%edi
263         rorl    $2,%eax
264         xorl    %ecx,%edi
265         leal    1518500249(%ebp,%edx,1),%ebp
266         addl    %edi,%ebp
267
268         movl    %eax,%edx
269         movl    %ebp,%edi
270         roll    $5,%ebp
271         xorl    %ebx,%edx
272         addl    %ecx,%ebp
273         movl    56(%esp),%ecx
274         andl    %esi,%edx
275         rorl    $2,%esi
276         xorl    %ebx,%edx
277         leal    1518500249(%ebp,%ecx,1),%ebp
278         addl    %edx,%ebp
279
280         movl    %esi,%ecx
281         movl    %ebp,%edx
282         roll    $5,%ebp
283         xorl    %eax,%ecx
284         addl    %ebx,%ebp
285         movl    60(%esp),%ebx
286         andl    %edi,%ecx
287         rorl    $2,%edi
288         xorl    %eax,%ecx
289         leal    1518500249(%ebp,%ebx,1),%ebp
290         movl    (%esp),%ebx
291         addl    %ebp,%ecx
292
293         movl    %edi,%ebp
294         xorl    8(%esp),%ebx
295         xorl    %esi,%ebp
296         xorl    32(%esp),%ebx
297         andl    %edx,%ebp
298         xorl    52(%esp),%ebx
299         roll    $1,%ebx
300         xorl    %esi,%ebp
301         addl    %ebp,%eax
302         movl    %ecx,%ebp
303         rorl    $2,%edx
304         movl    %ebx,(%esp)
305         roll    $5,%ebp
306         leal    1518500249(%ebx,%eax,1),%ebx
307         movl    4(%esp),%eax
308         addl    %ebp,%ebx
309
310         movl    %edx,%ebp
311         xorl    12(%esp),%eax
312         xorl    %edi,%ebp
313         xorl    36(%esp),%eax
314         andl    %ecx,%ebp
315         xorl    56(%esp),%eax
316         roll    $1,%eax
317         xorl    %edi,%ebp
318         addl    %ebp,%esi
319         movl    %ebx,%ebp
320         rorl    $2,%ecx
321         movl    %eax,4(%esp)
322         roll    $5,%ebp
323         leal    1518500249(%eax,%esi,1),%eax
324         movl    8(%esp),%esi
325         addl    %ebp,%eax
326
327         movl    %ecx,%ebp
328         xorl    16(%esp),%esi
329         xorl    %edx,%ebp
330         xorl    40(%esp),%esi
331         andl    %ebx,%ebp
332         xorl    60(%esp),%esi
333         roll    $1,%esi
334         xorl    %edx,%ebp
335         addl    %ebp,%edi
336         movl    %eax,%ebp
337         rorl    $2,%ebx
338         movl    %esi,8(%esp)
339         roll    $5,%ebp
340         leal    1518500249(%esi,%edi,1),%esi
341         movl    12(%esp),%edi
342         addl    %ebp,%esi
343
344         movl    %ebx,%ebp
345         xorl    20(%esp),%edi
346         xorl    %ecx,%ebp
347         xorl    44(%esp),%edi
348         andl    %eax,%ebp
349         xorl    (%esp),%edi
350         roll    $1,%edi
351         xorl    %ecx,%ebp
352         addl    %ebp,%edx
353         movl    %esi,%ebp
354         rorl    $2,%eax
355         movl    %edi,12(%esp)
356         roll    $5,%ebp
357         leal    1518500249(%edi,%edx,1),%edi
358         movl    16(%esp),%edx
359         addl    %ebp,%edi
360
361         movl    %esi,%ebp
362         xorl    24(%esp),%edx
363         xorl    %eax,%ebp
364         xorl    48(%esp),%edx
365         xorl    %ebx,%ebp
366         xorl    4(%esp),%edx
367         roll    $1,%edx
368         addl    %ebp,%ecx
369         rorl    $2,%esi
370         movl    %edi,%ebp
371         roll    $5,%ebp
372         movl    %edx,16(%esp)
373         leal    1859775393(%edx,%ecx,1),%edx
374         movl    20(%esp),%ecx
375         addl    %ebp,%edx
376
377         movl    %edi,%ebp
378         xorl    28(%esp),%ecx
379         xorl    %esi,%ebp
380         xorl    52(%esp),%ecx
381         xorl    %eax,%ebp
382         xorl    8(%esp),%ecx
383         roll    $1,%ecx
384         addl    %ebp,%ebx
385         rorl    $2,%edi
386         movl    %edx,%ebp
387         roll    $5,%ebp
388         movl    %ecx,20(%esp)
389         leal    1859775393(%ecx,%ebx,1),%ecx
390         movl    24(%esp),%ebx
391         addl    %ebp,%ecx
392
393         movl    %edx,%ebp
394         xorl    32(%esp),%ebx
395         xorl    %edi,%ebp
396         xorl    56(%esp),%ebx
397         xorl    %esi,%ebp
398         xorl    12(%esp),%ebx
399         roll    $1,%ebx
400         addl    %ebp,%eax
401         rorl    $2,%edx
402         movl    %ecx,%ebp
403         roll    $5,%ebp
404         movl    %ebx,24(%esp)
405         leal    1859775393(%ebx,%eax,1),%ebx
406         movl    28(%esp),%eax
407         addl    %ebp,%ebx
408
409         movl    %ecx,%ebp
410         xorl    36(%esp),%eax
411         xorl    %edx,%ebp
412         xorl    60(%esp),%eax
413         xorl    %edi,%ebp
414         xorl    16(%esp),%eax
415         roll    $1,%eax
416         addl    %ebp,%esi
417         rorl    $2,%ecx
418         movl    %ebx,%ebp
419         roll    $5,%ebp
420         movl    %eax,28(%esp)
421         leal    1859775393(%eax,%esi,1),%eax
422         movl    32(%esp),%esi
423         addl    %ebp,%eax
424
425         movl    %ebx,%ebp
426         xorl    40(%esp),%esi
427         xorl    %ecx,%ebp
428         xorl    (%esp),%esi
429         xorl    %edx,%ebp
430         xorl    20(%esp),%esi
431         roll    $1,%esi
432         addl    %ebp,%edi
433         rorl    $2,%ebx
434         movl    %eax,%ebp
435         roll    $5,%ebp
436         movl    %esi,32(%esp)
437         leal    1859775393(%esi,%edi,1),%esi
438         movl    36(%esp),%edi
439         addl    %ebp,%esi
440
441         movl    %eax,%ebp
442         xorl    44(%esp),%edi
443         xorl    %ebx,%ebp
444         xorl    4(%esp),%edi
445         xorl    %ecx,%ebp
446         xorl    24(%esp),%edi
447         roll    $1,%edi
448         addl    %ebp,%edx
449         rorl    $2,%eax
450         movl    %esi,%ebp
451         roll    $5,%ebp
452         movl    %edi,36(%esp)
453         leal    1859775393(%edi,%edx,1),%edi
454         movl    40(%esp),%edx
455         addl    %ebp,%edi
456
457         movl    %esi,%ebp
458         xorl    48(%esp),%edx
459         xorl    %eax,%ebp
460         xorl    8(%esp),%edx
461         xorl    %ebx,%ebp
462         xorl    28(%esp),%edx
463         roll    $1,%edx
464         addl    %ebp,%ecx
465         rorl    $2,%esi
466         movl    %edi,%ebp
467         roll    $5,%ebp
468         movl    %edx,40(%esp)
469         leal    1859775393(%edx,%ecx,1),%edx
470         movl    44(%esp),%ecx
471         addl    %ebp,%edx
472
473         movl    %edi,%ebp
474         xorl    52(%esp),%ecx
475         xorl    %esi,%ebp
476         xorl    12(%esp),%ecx
477         xorl    %eax,%ebp
478         xorl    32(%esp),%ecx
479         roll    $1,%ecx
480         addl    %ebp,%ebx
481         rorl    $2,%edi
482         movl    %edx,%ebp
483         roll    $5,%ebp
484         movl    %ecx,44(%esp)
485         leal    1859775393(%ecx,%ebx,1),%ecx
486         movl    48(%esp),%ebx
487         addl    %ebp,%ecx
488
489         movl    %edx,%ebp
490         xorl    56(%esp),%ebx
491         xorl    %edi,%ebp
492         xorl    16(%esp),%ebx
493         xorl    %esi,%ebp
494         xorl    36(%esp),%ebx
495         roll    $1,%ebx
496         addl    %ebp,%eax
497         rorl    $2,%edx
498         movl    %ecx,%ebp
499         roll    $5,%ebp
500         movl    %ebx,48(%esp)
501         leal    1859775393(%ebx,%eax,1),%ebx
502         movl    52(%esp),%eax
503         addl    %ebp,%ebx
504
505         movl    %ecx,%ebp
506         xorl    60(%esp),%eax
507         xorl    %edx,%ebp
508         xorl    20(%esp),%eax
509         xorl    %edi,%ebp
510         xorl    40(%esp),%eax
511         roll    $1,%eax
512         addl    %ebp,%esi
513         rorl    $2,%ecx
514         movl    %ebx,%ebp
515         roll    $5,%ebp
516         movl    %eax,52(%esp)
517         leal    1859775393(%eax,%esi,1),%eax
518         movl    56(%esp),%esi
519         addl    %ebp,%eax
520
521         movl    %ebx,%ebp
522         xorl    (%esp),%esi
523         xorl    %ecx,%ebp
524         xorl    24(%esp),%esi
525         xorl    %edx,%ebp
526         xorl    44(%esp),%esi
527         roll    $1,%esi
528         addl    %ebp,%edi
529         rorl    $2,%ebx
530         movl    %eax,%ebp
531         roll    $5,%ebp
532         movl    %esi,56(%esp)
533         leal    1859775393(%esi,%edi,1),%esi
534         movl    60(%esp),%edi
535         addl    %ebp,%esi
536
537         movl    %eax,%ebp
538         xorl    4(%esp),%edi
539         xorl    %ebx,%ebp
540         xorl    28(%esp),%edi
541         xorl    %ecx,%ebp
542         xorl    48(%esp),%edi
543         roll    $1,%edi
544         addl    %ebp,%edx
545         rorl    $2,%eax
546         movl    %esi,%ebp
547         roll    $5,%ebp
548         movl    %edi,60(%esp)
549         leal    1859775393(%edi,%edx,1),%edi
550         movl    (%esp),%edx
551         addl    %ebp,%edi
552
553         movl    %esi,%ebp
554         xorl    8(%esp),%edx
555         xorl    %eax,%ebp
556         xorl    32(%esp),%edx
557         xorl    %ebx,%ebp
558         xorl    52(%esp),%edx
559         roll    $1,%edx
560         addl    %ebp,%ecx
561         rorl    $2,%esi
562         movl    %edi,%ebp
563         roll    $5,%ebp
564         movl    %edx,(%esp)
565         leal    1859775393(%edx,%ecx,1),%edx
566         movl    4(%esp),%ecx
567         addl    %ebp,%edx
568
569         movl    %edi,%ebp
570         xorl    12(%esp),%ecx
571         xorl    %esi,%ebp
572         xorl    36(%esp),%ecx
573         xorl    %eax,%ebp
574         xorl    56(%esp),%ecx
575         roll    $1,%ecx
576         addl    %ebp,%ebx
577         rorl    $2,%edi
578         movl    %edx,%ebp
579         roll    $5,%ebp
580         movl    %ecx,4(%esp)
581         leal    1859775393(%ecx,%ebx,1),%ecx
582         movl    8(%esp),%ebx
583         addl    %ebp,%ecx
584
585         movl    %edx,%ebp
586         xorl    16(%esp),%ebx
587         xorl    %edi,%ebp
588         xorl    40(%esp),%ebx
589         xorl    %esi,%ebp
590         xorl    60(%esp),%ebx
591         roll    $1,%ebx
592         addl    %ebp,%eax
593         rorl    $2,%edx
594         movl    %ecx,%ebp
595         roll    $5,%ebp
596         movl    %ebx,8(%esp)
597         leal    1859775393(%ebx,%eax,1),%ebx
598         movl    12(%esp),%eax
599         addl    %ebp,%ebx
600
601         movl    %ecx,%ebp
602         xorl    20(%esp),%eax
603         xorl    %edx,%ebp
604         xorl    44(%esp),%eax
605         xorl    %edi,%ebp
606         xorl    (%esp),%eax
607         roll    $1,%eax
608         addl    %ebp,%esi
609         rorl    $2,%ecx
610         movl    %ebx,%ebp
611         roll    $5,%ebp
612         movl    %eax,12(%esp)
613         leal    1859775393(%eax,%esi,1),%eax
614         movl    16(%esp),%esi
615         addl    %ebp,%eax
616
617         movl    %ebx,%ebp
618         xorl    24(%esp),%esi
619         xorl    %ecx,%ebp
620         xorl    48(%esp),%esi
621         xorl    %edx,%ebp
622         xorl    4(%esp),%esi
623         roll    $1,%esi
624         addl    %ebp,%edi
625         rorl    $2,%ebx
626         movl    %eax,%ebp
627         roll    $5,%ebp
628         movl    %esi,16(%esp)
629         leal    1859775393(%esi,%edi,1),%esi
630         movl    20(%esp),%edi
631         addl    %ebp,%esi
632
633         movl    %eax,%ebp
634         xorl    28(%esp),%edi
635         xorl    %ebx,%ebp
636         xorl    52(%esp),%edi
637         xorl    %ecx,%ebp
638         xorl    8(%esp),%edi
639         roll    $1,%edi
640         addl    %ebp,%edx
641         rorl    $2,%eax
642         movl    %esi,%ebp
643         roll    $5,%ebp
644         movl    %edi,20(%esp)
645         leal    1859775393(%edi,%edx,1),%edi
646         movl    24(%esp),%edx
647         addl    %ebp,%edi
648
649         movl    %esi,%ebp
650         xorl    32(%esp),%edx
651         xorl    %eax,%ebp
652         xorl    56(%esp),%edx
653         xorl    %ebx,%ebp
654         xorl    12(%esp),%edx
655         roll    $1,%edx
656         addl    %ebp,%ecx
657         rorl    $2,%esi
658         movl    %edi,%ebp
659         roll    $5,%ebp
660         movl    %edx,24(%esp)
661         leal    1859775393(%edx,%ecx,1),%edx
662         movl    28(%esp),%ecx
663         addl    %ebp,%edx
664
665         movl    %edi,%ebp
666         xorl    36(%esp),%ecx
667         xorl    %esi,%ebp
668         xorl    60(%esp),%ecx
669         xorl    %eax,%ebp
670         xorl    16(%esp),%ecx
671         roll    $1,%ecx
672         addl    %ebp,%ebx
673         rorl    $2,%edi
674         movl    %edx,%ebp
675         roll    $5,%ebp
676         movl    %ecx,28(%esp)
677         leal    1859775393(%ecx,%ebx,1),%ecx
678         movl    32(%esp),%ebx
679         addl    %ebp,%ecx
680
681         movl    %edi,%ebp
682         xorl    40(%esp),%ebx
683         xorl    %esi,%ebp
684         xorl    (%esp),%ebx
685         andl    %edx,%ebp
686         xorl    20(%esp),%ebx
687         roll    $1,%ebx
688         addl    %eax,%ebp
689         rorl    $2,%edx
690         movl    %ecx,%eax
691         roll    $5,%eax
692         movl    %ebx,32(%esp)
693         leal    2400959708(%ebx,%ebp,1),%ebx
694         movl    %edi,%ebp
695         addl    %eax,%ebx
696         andl    %esi,%ebp
697         movl    36(%esp),%eax
698         addl    %ebp,%ebx
699
700         movl    %edx,%ebp
701         xorl    44(%esp),%eax
702         xorl    %edi,%ebp
703         xorl    4(%esp),%eax
704         andl    %ecx,%ebp
705         xorl    24(%esp),%eax
706         roll    $1,%eax
707         addl    %esi,%ebp
708         rorl    $2,%ecx
709         movl    %ebx,%esi
710         roll    $5,%esi
711         movl    %eax,36(%esp)
712         leal    2400959708(%eax,%ebp,1),%eax
713         movl    %edx,%ebp
714         addl    %esi,%eax
715         andl    %edi,%ebp
716         movl    40(%esp),%esi
717         addl    %ebp,%eax
718
719         movl    %ecx,%ebp
720         xorl    48(%esp),%esi
721         xorl    %edx,%ebp
722         xorl    8(%esp),%esi
723         andl    %ebx,%ebp
724         xorl    28(%esp),%esi
725         roll    $1,%esi
726         addl    %edi,%ebp
727         rorl    $2,%ebx
728         movl    %eax,%edi
729         roll    $5,%edi
730         movl    %esi,40(%esp)
731         leal    2400959708(%esi,%ebp,1),%esi
732         movl    %ecx,%ebp
733         addl    %edi,%esi
734         andl    %edx,%ebp
735         movl    44(%esp),%edi
736         addl    %ebp,%esi
737
738         movl    %ebx,%ebp
739         xorl    52(%esp),%edi
740         xorl    %ecx,%ebp
741         xorl    12(%esp),%edi
742         andl    %eax,%ebp
743         xorl    32(%esp),%edi
744         roll    $1,%edi
745         addl    %edx,%ebp
746         rorl    $2,%eax
747         movl    %esi,%edx
748         roll    $5,%edx
749         movl    %edi,44(%esp)
750         leal    2400959708(%edi,%ebp,1),%edi
751         movl    %ebx,%ebp
752         addl    %edx,%edi
753         andl    %ecx,%ebp
754         movl    48(%esp),%edx
755         addl    %ebp,%edi
756
757         movl    %eax,%ebp
758         xorl    56(%esp),%edx
759         xorl    %ebx,%ebp
760         xorl    16(%esp),%edx
761         andl    %esi,%ebp
762         xorl    36(%esp),%edx
763         roll    $1,%edx
764         addl    %ecx,%ebp
765         rorl    $2,%esi
766         movl    %edi,%ecx
767         roll    $5,%ecx
768         movl    %edx,48(%esp)
769         leal    2400959708(%edx,%ebp,1),%edx
770         movl    %eax,%ebp
771         addl    %ecx,%edx
772         andl    %ebx,%ebp
773         movl    52(%esp),%ecx
774         addl    %ebp,%edx
775
776         movl    %esi,%ebp
777         xorl    60(%esp),%ecx
778         xorl    %eax,%ebp
779         xorl    20(%esp),%ecx
780         andl    %edi,%ebp
781         xorl    40(%esp),%ecx
782         roll    $1,%ecx
783         addl    %ebx,%ebp
784         rorl    $2,%edi
785         movl    %edx,%ebx
786         roll    $5,%ebx
787         movl    %ecx,52(%esp)
788         leal    2400959708(%ecx,%ebp,1),%ecx
789         movl    %esi,%ebp
790         addl    %ebx,%ecx
791         andl    %eax,%ebp
792         movl    56(%esp),%ebx
793         addl    %ebp,%ecx
794
795         movl    %edi,%ebp
796         xorl    (%esp),%ebx
797         xorl    %esi,%ebp
798         xorl    24(%esp),%ebx
799         andl    %edx,%ebp
800         xorl    44(%esp),%ebx
801         roll    $1,%ebx
802         addl    %eax,%ebp
803         rorl    $2,%edx
804         movl    %ecx,%eax
805         roll    $5,%eax
806         movl    %ebx,56(%esp)
807         leal    2400959708(%ebx,%ebp,1),%ebx
808         movl    %edi,%ebp
809         addl    %eax,%ebx
810         andl    %esi,%ebp
811         movl    60(%esp),%eax
812         addl    %ebp,%ebx
813
814         movl    %edx,%ebp
815         xorl    4(%esp),%eax
816         xorl    %edi,%ebp
817         xorl    28(%esp),%eax
818         andl    %ecx,%ebp
819         xorl    48(%esp),%eax
820         roll    $1,%eax
821         addl    %esi,%ebp
822         rorl    $2,%ecx
823         movl    %ebx,%esi
824         roll    $5,%esi
825         movl    %eax,60(%esp)
826         leal    2400959708(%eax,%ebp,1),%eax
827         movl    %edx,%ebp
828         addl    %esi,%eax
829         andl    %edi,%ebp
830         movl    (%esp),%esi
831         addl    %ebp,%eax
832
833         movl    %ecx,%ebp
834         xorl    8(%esp),%esi
835         xorl    %edx,%ebp
836         xorl    32(%esp),%esi
837         andl    %ebx,%ebp
838         xorl    52(%esp),%esi
839         roll    $1,%esi
840         addl    %edi,%ebp
841         rorl    $2,%ebx
842         movl    %eax,%edi
843         roll    $5,%edi
844         movl    %esi,(%esp)
845         leal    2400959708(%esi,%ebp,1),%esi
846         movl    %ecx,%ebp
847         addl    %edi,%esi
848         andl    %edx,%ebp
849         movl    4(%esp),%edi
850         addl    %ebp,%esi
851
852         movl    %ebx,%ebp
853         xorl    12(%esp),%edi
854         xorl    %ecx,%ebp
855         xorl    36(%esp),%edi
856         andl    %eax,%ebp
857         xorl    56(%esp),%edi
858         roll    $1,%edi
859         addl    %edx,%ebp
860         rorl    $2,%eax
861         movl    %esi,%edx
862         roll    $5,%edx
863         movl    %edi,4(%esp)
864         leal    2400959708(%edi,%ebp,1),%edi
865         movl    %ebx,%ebp
866         addl    %edx,%edi
867         andl    %ecx,%ebp
868         movl    8(%esp),%edx
869         addl    %ebp,%edi
870
871         movl    %eax,%ebp
872         xorl    16(%esp),%edx
873         xorl    %ebx,%ebp
874         xorl    40(%esp),%edx
875         andl    %esi,%ebp
876         xorl    60(%esp),%edx
877         roll    $1,%edx
878         addl    %ecx,%ebp
879         rorl    $2,%esi
880         movl    %edi,%ecx
881         roll    $5,%ecx
882         movl    %edx,8(%esp)
883         leal    2400959708(%edx,%ebp,1),%edx
884         movl    %eax,%ebp
885         addl    %ecx,%edx
886         andl    %ebx,%ebp
887         movl    12(%esp),%ecx
888         addl    %ebp,%edx
889
890         movl    %esi,%ebp
891         xorl    20(%esp),%ecx
892         xorl    %eax,%ebp
893         xorl    44(%esp),%ecx
894         andl    %edi,%ebp
895         xorl    (%esp),%ecx
896         roll    $1,%ecx
897         addl    %ebx,%ebp
898         rorl    $2,%edi
899         movl    %edx,%ebx
900         roll    $5,%ebx
901         movl    %ecx,12(%esp)
902         leal    2400959708(%ecx,%ebp,1),%ecx
903         movl    %esi,%ebp
904         addl    %ebx,%ecx
905         andl    %eax,%ebp
906         movl    16(%esp),%ebx
907         addl    %ebp,%ecx
908
909         movl    %edi,%ebp
910         xorl    24(%esp),%ebx
911         xorl    %esi,%ebp
912         xorl    48(%esp),%ebx
913         andl    %edx,%ebp
914         xorl    4(%esp),%ebx
915         roll    $1,%ebx
916         addl    %eax,%ebp
917         rorl    $2,%edx
918         movl    %ecx,%eax
919         roll    $5,%eax
920         movl    %ebx,16(%esp)
921         leal    2400959708(%ebx,%ebp,1),%ebx
922         movl    %edi,%ebp
923         addl    %eax,%ebx
924         andl    %esi,%ebp
925         movl    20(%esp),%eax
926         addl    %ebp,%ebx
927
928         movl    %edx,%ebp
929         xorl    28(%esp),%eax
930         xorl    %edi,%ebp
931         xorl    52(%esp),%eax
932         andl    %ecx,%ebp
933         xorl    8(%esp),%eax
934         roll    $1,%eax
935         addl    %esi,%ebp
936         rorl    $2,%ecx
937         movl    %ebx,%esi
938         roll    $5,%esi
939         movl    %eax,20(%esp)
940         leal    2400959708(%eax,%ebp,1),%eax
941         movl    %edx,%ebp
942         addl    %esi,%eax
943         andl    %edi,%ebp
944         movl    24(%esp),%esi
945         addl    %ebp,%eax
946
947         movl    %ecx,%ebp
948         xorl    32(%esp),%esi
949         xorl    %edx,%ebp
950         xorl    56(%esp),%esi
951         andl    %ebx,%ebp
952         xorl    12(%esp),%esi
953         roll    $1,%esi
954         addl    %edi,%ebp
955         rorl    $2,%ebx
956         movl    %eax,%edi
957         roll    $5,%edi
958         movl    %esi,24(%esp)
959         leal    2400959708(%esi,%ebp,1),%esi
960         movl    %ecx,%ebp
961         addl    %edi,%esi
962         andl    %edx,%ebp
963         movl    28(%esp),%edi
964         addl    %ebp,%esi
965
966         movl    %ebx,%ebp
967         xorl    36(%esp),%edi
968         xorl    %ecx,%ebp
969         xorl    60(%esp),%edi
970         andl    %eax,%ebp
971         xorl    16(%esp),%edi
972         roll    $1,%edi
973         addl    %edx,%ebp
974         rorl    $2,%eax
975         movl    %esi,%edx
976         roll    $5,%edx
977         movl    %edi,28(%esp)
978         leal    2400959708(%edi,%ebp,1),%edi
979         movl    %ebx,%ebp
980         addl    %edx,%edi
981         andl    %ecx,%ebp
982         movl    32(%esp),%edx
983         addl    %ebp,%edi
984
985         movl    %eax,%ebp
986         xorl    40(%esp),%edx
987         xorl    %ebx,%ebp
988         xorl    (%esp),%edx
989         andl    %esi,%ebp
990         xorl    20(%esp),%edx
991         roll    $1,%edx
992         addl    %ecx,%ebp
993         rorl    $2,%esi
994         movl    %edi,%ecx
995         roll    $5,%ecx
996         movl    %edx,32(%esp)
997         leal    2400959708(%edx,%ebp,1),%edx
998         movl    %eax,%ebp
999         addl    %ecx,%edx
1000         andl    %ebx,%ebp
1001         movl    36(%esp),%ecx
1002         addl    %ebp,%edx
1003
1004         movl    %esi,%ebp
1005         xorl    44(%esp),%ecx
1006         xorl    %eax,%ebp
1007         xorl    4(%esp),%ecx
1008         andl    %edi,%ebp
1009         xorl    24(%esp),%ecx
1010         roll    $1,%ecx
1011         addl    %ebx,%ebp
1012         rorl    $2,%edi
1013         movl    %edx,%ebx
1014         roll    $5,%ebx
1015         movl    %ecx,36(%esp)
1016         leal    2400959708(%ecx,%ebp,1),%ecx
1017         movl    %esi,%ebp
1018         addl    %ebx,%ecx
1019         andl    %eax,%ebp
1020         movl    40(%esp),%ebx
1021         addl    %ebp,%ecx
1022
1023         movl    %edi,%ebp
1024         xorl    48(%esp),%ebx
1025         xorl    %esi,%ebp
1026         xorl    8(%esp),%ebx
1027         andl    %edx,%ebp
1028         xorl    28(%esp),%ebx
1029         roll    $1,%ebx
1030         addl    %eax,%ebp
1031         rorl    $2,%edx
1032         movl    %ecx,%eax
1033         roll    $5,%eax
1034         movl    %ebx,40(%esp)
1035         leal    2400959708(%ebx,%ebp,1),%ebx
1036         movl    %edi,%ebp
1037         addl    %eax,%ebx
1038         andl    %esi,%ebp
1039         movl    44(%esp),%eax
1040         addl    %ebp,%ebx
1041
1042         movl    %edx,%ebp
1043         xorl    52(%esp),%eax
1044         xorl    %edi,%ebp
1045         xorl    12(%esp),%eax
1046         andl    %ecx,%ebp
1047         xorl    32(%esp),%eax
1048         roll    $1,%eax
1049         addl    %esi,%ebp
1050         rorl    $2,%ecx
1051         movl    %ebx,%esi
1052         roll    $5,%esi
1053         movl    %eax,44(%esp)
1054         leal    2400959708(%eax,%ebp,1),%eax
1055         movl    %edx,%ebp
1056         addl    %esi,%eax
1057         andl    %edi,%ebp
1058         movl    48(%esp),%esi
1059         addl    %ebp,%eax
1060
1061         movl    %ebx,%ebp
1062         xorl    56(%esp),%esi
1063         xorl    %ecx,%ebp
1064         xorl    16(%esp),%esi
1065         xorl    %edx,%ebp
1066         xorl    36(%esp),%esi
1067         roll    $1,%esi
1068         addl    %ebp,%edi
1069         rorl    $2,%ebx
1070         movl    %eax,%ebp
1071         roll    $5,%ebp
1072         movl    %esi,48(%esp)
1073         leal    3395469782(%esi,%edi,1),%esi
1074         movl    52(%esp),%edi
1075         addl    %ebp,%esi
1076
1077         movl    %eax,%ebp
1078         xorl    60(%esp),%edi
1079         xorl    %ebx,%ebp
1080         xorl    20(%esp),%edi
1081         xorl    %ecx,%ebp
1082         xorl    40(%esp),%edi
1083         roll    $1,%edi
1084         addl    %ebp,%edx
1085         rorl    $2,%eax
1086         movl    %esi,%ebp
1087         roll    $5,%ebp
1088         movl    %edi,52(%esp)
1089         leal    3395469782(%edi,%edx,1),%edi
1090         movl    56(%esp),%edx
1091         addl    %ebp,%edi
1092
1093         movl    %esi,%ebp
1094         xorl    (%esp),%edx
1095         xorl    %eax,%ebp
1096         xorl    24(%esp),%edx
1097         xorl    %ebx,%ebp
1098         xorl    44(%esp),%edx
1099         roll    $1,%edx
1100         addl    %ebp,%ecx
1101         rorl    $2,%esi
1102         movl    %edi,%ebp
1103         roll    $5,%ebp
1104         movl    %edx,56(%esp)
1105         leal    3395469782(%edx,%ecx,1),%edx
1106         movl    60(%esp),%ecx
1107         addl    %ebp,%edx
1108
1109         movl    %edi,%ebp
1110         xorl    4(%esp),%ecx
1111         xorl    %esi,%ebp
1112         xorl    28(%esp),%ecx
1113         xorl    %eax,%ebp
1114         xorl    48(%esp),%ecx
1115         roll    $1,%ecx
1116         addl    %ebp,%ebx
1117         rorl    $2,%edi
1118         movl    %edx,%ebp
1119         roll    $5,%ebp
1120         movl    %ecx,60(%esp)
1121         leal    3395469782(%ecx,%ebx,1),%ecx
1122         movl    (%esp),%ebx
1123         addl    %ebp,%ecx
1124
1125         movl    %edx,%ebp
1126         xorl    8(%esp),%ebx
1127         xorl    %edi,%ebp
1128         xorl    32(%esp),%ebx
1129         xorl    %esi,%ebp
1130         xorl    52(%esp),%ebx
1131         roll    $1,%ebx
1132         addl    %ebp,%eax
1133         rorl    $2,%edx
1134         movl    %ecx,%ebp
1135         roll    $5,%ebp
1136         movl    %ebx,(%esp)
1137         leal    3395469782(%ebx,%eax,1),%ebx
1138         movl    4(%esp),%eax
1139         addl    %ebp,%ebx
1140
1141         movl    %ecx,%ebp
1142         xorl    12(%esp),%eax
1143         xorl    %edx,%ebp
1144         xorl    36(%esp),%eax
1145         xorl    %edi,%ebp
1146         xorl    56(%esp),%eax
1147         roll    $1,%eax
1148         addl    %ebp,%esi
1149         rorl    $2,%ecx
1150         movl    %ebx,%ebp
1151         roll    $5,%ebp
1152         movl    %eax,4(%esp)
1153         leal    3395469782(%eax,%esi,1),%eax
1154         movl    8(%esp),%esi
1155         addl    %ebp,%eax
1156
1157         movl    %ebx,%ebp
1158         xorl    16(%esp),%esi
1159         xorl    %ecx,%ebp
1160         xorl    40(%esp),%esi
1161         xorl    %edx,%ebp
1162         xorl    60(%esp),%esi
1163         roll    $1,%esi
1164         addl    %ebp,%edi
1165         rorl    $2,%ebx
1166         movl    %eax,%ebp
1167         roll    $5,%ebp
1168         movl    %esi,8(%esp)
1169         leal    3395469782(%esi,%edi,1),%esi
1170         movl    12(%esp),%edi
1171         addl    %ebp,%esi
1172
1173         movl    %eax,%ebp
1174         xorl    20(%esp),%edi
1175         xorl    %ebx,%ebp
1176         xorl    44(%esp),%edi
1177         xorl    %ecx,%ebp
1178         xorl    (%esp),%edi
1179         roll    $1,%edi
1180         addl    %ebp,%edx
1181         rorl    $2,%eax
1182         movl    %esi,%ebp
1183         roll    $5,%ebp
1184         movl    %edi,12(%esp)
1185         leal    3395469782(%edi,%edx,1),%edi
1186         movl    16(%esp),%edx
1187         addl    %ebp,%edi
1188
1189         movl    %esi,%ebp
1190         xorl    24(%esp),%edx
1191         xorl    %eax,%ebp
1192         xorl    48(%esp),%edx
1193         xorl    %ebx,%ebp
1194         xorl    4(%esp),%edx
1195         roll    $1,%edx
1196         addl    %ebp,%ecx
1197         rorl    $2,%esi
1198         movl    %edi,%ebp
1199         roll    $5,%ebp
1200         movl    %edx,16(%esp)
1201         leal    3395469782(%edx,%ecx,1),%edx
1202         movl    20(%esp),%ecx
1203         addl    %ebp,%edx
1204
1205         movl    %edi,%ebp
1206         xorl    28(%esp),%ecx
1207         xorl    %esi,%ebp
1208         xorl    52(%esp),%ecx
1209         xorl    %eax,%ebp
1210         xorl    8(%esp),%ecx
1211         roll    $1,%ecx
1212         addl    %ebp,%ebx
1213         rorl    $2,%edi
1214         movl    %edx,%ebp
1215         roll    $5,%ebp
1216         movl    %ecx,20(%esp)
1217         leal    3395469782(%ecx,%ebx,1),%ecx
1218         movl    24(%esp),%ebx
1219         addl    %ebp,%ecx
1220
1221         movl    %edx,%ebp
1222         xorl    32(%esp),%ebx
1223         xorl    %edi,%ebp
1224         xorl    56(%esp),%ebx
1225         xorl    %esi,%ebp
1226         xorl    12(%esp),%ebx
1227         roll    $1,%ebx
1228         addl    %ebp,%eax
1229         rorl    $2,%edx
1230         movl    %ecx,%ebp
1231         roll    $5,%ebp
1232         movl    %ebx,24(%esp)
1233         leal    3395469782(%ebx,%eax,1),%ebx
1234         movl    28(%esp),%eax
1235         addl    %ebp,%ebx
1236
1237         movl    %ecx,%ebp
1238         xorl    36(%esp),%eax
1239         xorl    %edx,%ebp
1240         xorl    60(%esp),%eax
1241         xorl    %edi,%ebp
1242         xorl    16(%esp),%eax
1243         roll    $1,%eax
1244         addl    %ebp,%esi
1245         rorl    $2,%ecx
1246         movl    %ebx,%ebp
1247         roll    $5,%ebp
1248         movl    %eax,28(%esp)
1249         leal    3395469782(%eax,%esi,1),%eax
1250         movl    32(%esp),%esi
1251         addl    %ebp,%eax
1252
1253         movl    %ebx,%ebp
1254         xorl    40(%esp),%esi
1255         xorl    %ecx,%ebp
1256         xorl    (%esp),%esi
1257         xorl    %edx,%ebp
1258         xorl    20(%esp),%esi
1259         roll    $1,%esi
1260         addl    %ebp,%edi
1261         rorl    $2,%ebx
1262         movl    %eax,%ebp
1263         roll    $5,%ebp
1264         movl    %esi,32(%esp)
1265         leal    3395469782(%esi,%edi,1),%esi
1266         movl    36(%esp),%edi
1267         addl    %ebp,%esi
1268
1269         movl    %eax,%ebp
1270         xorl    44(%esp),%edi
1271         xorl    %ebx,%ebp
1272         xorl    4(%esp),%edi
1273         xorl    %ecx,%ebp
1274         xorl    24(%esp),%edi
1275         roll    $1,%edi
1276         addl    %ebp,%edx
1277         rorl    $2,%eax
1278         movl    %esi,%ebp
1279         roll    $5,%ebp
1280         movl    %edi,36(%esp)
1281         leal    3395469782(%edi,%edx,1),%edi
1282         movl    40(%esp),%edx
1283         addl    %ebp,%edi
1284
1285         movl    %esi,%ebp
1286         xorl    48(%esp),%edx
1287         xorl    %eax,%ebp
1288         xorl    8(%esp),%edx
1289         xorl    %ebx,%ebp
1290         xorl    28(%esp),%edx
1291         roll    $1,%edx
1292         addl    %ebp,%ecx
1293         rorl    $2,%esi
1294         movl    %edi,%ebp
1295         roll    $5,%ebp
1296         movl    %edx,40(%esp)
1297         leal    3395469782(%edx,%ecx,1),%edx
1298         movl    44(%esp),%ecx
1299         addl    %ebp,%edx
1300
1301         movl    %edi,%ebp
1302         xorl    52(%esp),%ecx
1303         xorl    %esi,%ebp
1304         xorl    12(%esp),%ecx
1305         xorl    %eax,%ebp
1306         xorl    32(%esp),%ecx
1307         roll    $1,%ecx
1308         addl    %ebp,%ebx
1309         rorl    $2,%edi
1310         movl    %edx,%ebp
1311         roll    $5,%ebp
1312         movl    %ecx,44(%esp)
1313         leal    3395469782(%ecx,%ebx,1),%ecx
1314         movl    48(%esp),%ebx
1315         addl    %ebp,%ecx
1316
1317         movl    %edx,%ebp
1318         xorl    56(%esp),%ebx
1319         xorl    %edi,%ebp
1320         xorl    16(%esp),%ebx
1321         xorl    %esi,%ebp
1322         xorl    36(%esp),%ebx
1323         roll    $1,%ebx
1324         addl    %ebp,%eax
1325         rorl    $2,%edx
1326         movl    %ecx,%ebp
1327         roll    $5,%ebp
1328         movl    %ebx,48(%esp)
1329         leal    3395469782(%ebx,%eax,1),%ebx
1330         movl    52(%esp),%eax
1331         addl    %ebp,%ebx
1332
1333         movl    %ecx,%ebp
1334         xorl    60(%esp),%eax
1335         xorl    %edx,%ebp
1336         xorl    20(%esp),%eax
1337         xorl    %edi,%ebp
1338         xorl    40(%esp),%eax
1339         roll    $1,%eax
1340         addl    %ebp,%esi
1341         rorl    $2,%ecx
1342         movl    %ebx,%ebp
1343         roll    $5,%ebp
1344         leal    3395469782(%eax,%esi,1),%eax
1345         movl    56(%esp),%esi
1346         addl    %ebp,%eax
1347
1348         movl    %ebx,%ebp
1349         xorl    (%esp),%esi
1350         xorl    %ecx,%ebp
1351         xorl    24(%esp),%esi
1352         xorl    %edx,%ebp
1353         xorl    44(%esp),%esi
1354         roll    $1,%esi
1355         addl    %ebp,%edi
1356         rorl    $2,%ebx
1357         movl    %eax,%ebp
1358         roll    $5,%ebp
1359         leal    3395469782(%esi,%edi,1),%esi
1360         movl    60(%esp),%edi
1361         addl    %ebp,%esi
1362
1363         movl    %eax,%ebp
1364         xorl    4(%esp),%edi
1365         xorl    %ebx,%ebp
1366         xorl    28(%esp),%edi
1367         xorl    %ecx,%ebp
1368         xorl    48(%esp),%edi
1369         roll    $1,%edi
1370         addl    %ebp,%edx
1371         rorl    $2,%eax
1372         movl    %esi,%ebp
1373         roll    $5,%ebp
1374         leal    3395469782(%edi,%edx,1),%edi
1375         addl    %ebp,%edi
1376         movl    96(%esp),%ebp
1377         movl    100(%esp),%edx
1378         addl    (%ebp),%edi
1379         addl    4(%ebp),%esi
1380         addl    8(%ebp),%eax
1381         addl    12(%ebp),%ebx
1382         addl    16(%ebp),%ecx
1383         movl    %edi,(%ebp)
1384         addl    $64,%edx
1385         movl    %esi,4(%ebp)
1386         cmpl    104(%esp),%edx
1387         movl    %eax,8(%ebp)
1388         movl    %ecx,%edi
1389         movl    %ebx,12(%ebp)
1390         movl    %edx,%esi
1391         movl    %ecx,16(%ebp)
1392         jb      .L002loop
1393         addl    $76,%esp
1394         popl    %edi
1395         popl    %esi
1396         popl    %ebx
1397         popl    %ebp
1398         ret
1399 .size   sha1_block_data_order,.-.L_sha1_block_data_order_begin
1400 .type   _sha1_block_data_order_ssse3,@function
1401 .align  16
1402 _sha1_block_data_order_ssse3:
1403         pushl   %ebp
1404         pushl   %ebx
1405         pushl   %esi
1406         pushl   %edi
1407         call    .L003pic_point
1408 .L003pic_point:
1409         popl    %ebp
1410         leal    .LK_XX_XX-.L003pic_point(%ebp),%ebp
1411 .Lssse3_shortcut:
1412         movdqa  (%ebp),%xmm7
1413         movdqa  16(%ebp),%xmm0
1414         movdqa  32(%ebp),%xmm1
1415         movdqa  48(%ebp),%xmm2
1416         movdqa  64(%ebp),%xmm6
1417         movl    20(%esp),%edi
1418         movl    24(%esp),%ebp
1419         movl    28(%esp),%edx
1420         movl    %esp,%esi
1421         subl    $208,%esp
1422         andl    $-64,%esp
1423         movdqa  %xmm0,112(%esp)
1424         movdqa  %xmm1,128(%esp)
1425         movdqa  %xmm2,144(%esp)
1426         shll    $6,%edx
1427         movdqa  %xmm7,160(%esp)
1428         addl    %ebp,%edx
1429         movdqa  %xmm6,176(%esp)
1430         addl    $64,%ebp
1431         movl    %edi,192(%esp)
1432         movl    %ebp,196(%esp)
1433         movl    %edx,200(%esp)
1434         movl    %esi,204(%esp)
1435         movl    (%edi),%eax
1436         movl    4(%edi),%ebx
1437         movl    8(%edi),%ecx
1438         movl    12(%edi),%edx
1439         movl    16(%edi),%edi
1440         movl    %ebx,%esi
1441         movdqu  -64(%ebp),%xmm0
1442         movdqu  -48(%ebp),%xmm1
1443         movdqu  -32(%ebp),%xmm2
1444         movdqu  -16(%ebp),%xmm3
1445 .byte   102,15,56,0,198
1446 .byte   102,15,56,0,206
1447 .byte   102,15,56,0,214
1448         movdqa  %xmm7,96(%esp)
1449 .byte   102,15,56,0,222
1450         paddd   %xmm7,%xmm0
1451         paddd   %xmm7,%xmm1
1452         paddd   %xmm7,%xmm2
1453         movdqa  %xmm0,(%esp)
1454         psubd   %xmm7,%xmm0
1455         movdqa  %xmm1,16(%esp)
1456         psubd   %xmm7,%xmm1
1457         movdqa  %xmm2,32(%esp)
1458         psubd   %xmm7,%xmm2
1459         movdqa  %xmm1,%xmm4
1460         jmp     .L004loop
1461 .align  16
1462 .L004loop:
1463         addl    (%esp),%edi
1464         xorl    %edx,%ecx
1465 .byte   102,15,58,15,224,8
1466         movdqa  %xmm3,%xmm6
1467         movl    %eax,%ebp
1468         roll    $5,%eax
1469         paddd   %xmm3,%xmm7
1470         movdqa  %xmm0,64(%esp)
1471         andl    %ecx,%esi
1472         xorl    %edx,%ecx
1473         psrldq  $4,%xmm6
1474         xorl    %edx,%esi
1475         addl    %eax,%edi
1476         pxor    %xmm0,%xmm4
1477         rorl    $2,%ebx
1478         addl    %esi,%edi
1479         pxor    %xmm2,%xmm6
1480         addl    4(%esp),%edx
1481         xorl    %ecx,%ebx
1482         movl    %edi,%esi
1483         roll    $5,%edi
1484         pxor    %xmm6,%xmm4
1485         andl    %ebx,%ebp
1486         xorl    %ecx,%ebx
1487         movdqa  %xmm7,48(%esp)
1488         xorl    %ecx,%ebp
1489         addl    %edi,%edx
1490         movdqa  %xmm4,%xmm0
1491         movdqa  %xmm4,%xmm6
1492         rorl    $7,%eax
1493         addl    %ebp,%edx
1494         addl    8(%esp),%ecx
1495         xorl    %ebx,%eax
1496         pslldq  $12,%xmm0
1497         paddd   %xmm4,%xmm4
1498         movl    %edx,%ebp
1499         roll    $5,%edx
1500         andl    %eax,%esi
1501         xorl    %ebx,%eax
1502         psrld   $31,%xmm6
1503         xorl    %ebx,%esi
1504         addl    %edx,%ecx
1505         movdqa  %xmm0,%xmm7
1506         rorl    $7,%edi
1507         addl    %esi,%ecx
1508         psrld   $30,%xmm0
1509         por     %xmm6,%xmm4
1510         addl    12(%esp),%ebx
1511         xorl    %eax,%edi
1512         movl    %ecx,%esi
1513         roll    $5,%ecx
1514         pslld   $2,%xmm7
1515         pxor    %xmm0,%xmm4
1516         andl    %edi,%ebp
1517         xorl    %eax,%edi
1518         movdqa  96(%esp),%xmm0
1519         xorl    %eax,%ebp
1520         addl    %ecx,%ebx
1521         pxor    %xmm7,%xmm4
1522         movdqa  %xmm2,%xmm5
1523         rorl    $7,%edx
1524         addl    %ebp,%ebx
1525         addl    16(%esp),%eax
1526         xorl    %edi,%edx
1527 .byte   102,15,58,15,233,8
1528         movdqa  %xmm4,%xmm7
1529         movl    %ebx,%ebp
1530         roll    $5,%ebx
1531         paddd   %xmm4,%xmm0
1532         movdqa  %xmm1,80(%esp)
1533         andl    %edx,%esi
1534         xorl    %edi,%edx
1535         psrldq  $4,%xmm7
1536         xorl    %edi,%esi
1537         addl    %ebx,%eax
1538         pxor    %xmm1,%xmm5
1539         rorl    $7,%ecx
1540         addl    %esi,%eax
1541         pxor    %xmm3,%xmm7
1542         addl    20(%esp),%edi
1543         xorl    %edx,%ecx
1544         movl    %eax,%esi
1545         roll    $5,%eax
1546         pxor    %xmm7,%xmm5
1547         andl    %ecx,%ebp
1548         xorl    %edx,%ecx
1549         movdqa  %xmm0,(%esp)
1550         xorl    %edx,%ebp
1551         addl    %eax,%edi
1552         movdqa  %xmm5,%xmm1
1553         movdqa  %xmm5,%xmm7
1554         rorl    $7,%ebx
1555         addl    %ebp,%edi
1556         addl    24(%esp),%edx
1557         xorl    %ecx,%ebx
1558         pslldq  $12,%xmm1
1559         paddd   %xmm5,%xmm5
1560         movl    %edi,%ebp
1561         roll    $5,%edi
1562         andl    %ebx,%esi
1563         xorl    %ecx,%ebx
1564         psrld   $31,%xmm7
1565         xorl    %ecx,%esi
1566         addl    %edi,%edx
1567         movdqa  %xmm1,%xmm0
1568         rorl    $7,%eax
1569         addl    %esi,%edx
1570         psrld   $30,%xmm1
1571         por     %xmm7,%xmm5
1572         addl    28(%esp),%ecx
1573         xorl    %ebx,%eax
1574         movl    %edx,%esi
1575         roll    $5,%edx
1576         pslld   $2,%xmm0
1577         pxor    %xmm1,%xmm5
1578         andl    %eax,%ebp
1579         xorl    %ebx,%eax
1580         movdqa  112(%esp),%xmm1
1581         xorl    %ebx,%ebp
1582         addl    %edx,%ecx
1583         pxor    %xmm0,%xmm5
1584         movdqa  %xmm3,%xmm6
1585         rorl    $7,%edi
1586         addl    %ebp,%ecx
1587         addl    32(%esp),%ebx
1588         xorl    %eax,%edi
1589 .byte   102,15,58,15,242,8
1590         movdqa  %xmm5,%xmm0
1591         movl    %ecx,%ebp
1592         roll    $5,%ecx
1593         paddd   %xmm5,%xmm1
1594         movdqa  %xmm2,96(%esp)
1595         andl    %edi,%esi
1596         xorl    %eax,%edi
1597         psrldq  $4,%xmm0
1598         xorl    %eax,%esi
1599         addl    %ecx,%ebx
1600         pxor    %xmm2,%xmm6
1601         rorl    $7,%edx
1602         addl    %esi,%ebx
1603         pxor    %xmm4,%xmm0
1604         addl    36(%esp),%eax
1605         xorl    %edi,%edx
1606         movl    %ebx,%esi
1607         roll    $5,%ebx
1608         pxor    %xmm0,%xmm6
1609         andl    %edx,%ebp
1610         xorl    %edi,%edx
1611         movdqa  %xmm1,16(%esp)
1612         xorl    %edi,%ebp
1613         addl    %ebx,%eax
1614         movdqa  %xmm6,%xmm2
1615         movdqa  %xmm6,%xmm0
1616         rorl    $7,%ecx
1617         addl    %ebp,%eax
1618         addl    40(%esp),%edi
1619         xorl    %edx,%ecx
1620         pslldq  $12,%xmm2
1621         paddd   %xmm6,%xmm6
1622         movl    %eax,%ebp
1623         roll    $5,%eax
1624         andl    %ecx,%esi
1625         xorl    %edx,%ecx
1626         psrld   $31,%xmm0
1627         xorl    %edx,%esi
1628         addl    %eax,%edi
1629         movdqa  %xmm2,%xmm1
1630         rorl    $7,%ebx
1631         addl    %esi,%edi
1632         psrld   $30,%xmm2
1633         por     %xmm0,%xmm6
1634         addl    44(%esp),%edx
1635         xorl    %ecx,%ebx
1636         movdqa  64(%esp),%xmm0
1637         movl    %edi,%esi
1638         roll    $5,%edi
1639         pslld   $2,%xmm1
1640         pxor    %xmm2,%xmm6
1641         andl    %ebx,%ebp
1642         xorl    %ecx,%ebx
1643         movdqa  112(%esp),%xmm2
1644         xorl    %ecx,%ebp
1645         addl    %edi,%edx
1646         pxor    %xmm1,%xmm6
1647         movdqa  %xmm4,%xmm7
1648         rorl    $7,%eax
1649         addl    %ebp,%edx
1650         addl    48(%esp),%ecx
1651         xorl    %ebx,%eax
1652 .byte   102,15,58,15,251,8
1653         movdqa  %xmm6,%xmm1
1654         movl    %edx,%ebp
1655         roll    $5,%edx
1656         paddd   %xmm6,%xmm2
1657         movdqa  %xmm3,64(%esp)
1658         andl    %eax,%esi
1659         xorl    %ebx,%eax
1660         psrldq  $4,%xmm1
1661         xorl    %ebx,%esi
1662         addl    %edx,%ecx
1663         pxor    %xmm3,%xmm7
1664         rorl    $7,%edi
1665         addl    %esi,%ecx
1666         pxor    %xmm5,%xmm1
1667         addl    52(%esp),%ebx
1668         xorl    %eax,%edi
1669         movl    %ecx,%esi
1670         roll    $5,%ecx
1671         pxor    %xmm1,%xmm7
1672         andl    %edi,%ebp
1673         xorl    %eax,%edi
1674         movdqa  %xmm2,32(%esp)
1675         xorl    %eax,%ebp
1676         addl    %ecx,%ebx
1677         movdqa  %xmm7,%xmm3
1678         movdqa  %xmm7,%xmm1
1679         rorl    $7,%edx
1680         addl    %ebp,%ebx
1681         addl    56(%esp),%eax
1682         xorl    %edi,%edx
1683         pslldq  $12,%xmm3
1684         paddd   %xmm7,%xmm7
1685         movl    %ebx,%ebp
1686         roll    $5,%ebx
1687         andl    %edx,%esi
1688         xorl    %edi,%edx
1689         psrld   $31,%xmm1
1690         xorl    %edi,%esi
1691         addl    %ebx,%eax
1692         movdqa  %xmm3,%xmm2
1693         rorl    $7,%ecx
1694         addl    %esi,%eax
1695         psrld   $30,%xmm3
1696         por     %xmm1,%xmm7
1697         addl    60(%esp),%edi
1698         xorl    %edx,%ecx
1699         movdqa  80(%esp),%xmm1
1700         movl    %eax,%esi
1701         roll    $5,%eax
1702         pslld   $2,%xmm2
1703         pxor    %xmm3,%xmm7
1704         andl    %ecx,%ebp
1705         xorl    %edx,%ecx
1706         movdqa  112(%esp),%xmm3
1707         xorl    %edx,%ebp
1708         addl    %eax,%edi
1709         pxor    %xmm2,%xmm7
1710         rorl    $7,%ebx
1711         addl    %ebp,%edi
1712         movdqa  %xmm7,%xmm2
1713         addl    (%esp),%edx
1714         pxor    %xmm4,%xmm0
1715 .byte   102,15,58,15,214,8
1716         xorl    %ecx,%ebx
1717         movl    %edi,%ebp
1718         roll    $5,%edi
1719         pxor    %xmm1,%xmm0
1720         movdqa  %xmm4,80(%esp)
1721         andl    %ebx,%esi
1722         xorl    %ecx,%ebx
1723         movdqa  %xmm3,%xmm4
1724         paddd   %xmm7,%xmm3
1725         xorl    %ecx,%esi
1726         addl    %edi,%edx
1727         pxor    %xmm2,%xmm0
1728         rorl    $7,%eax
1729         addl    %esi,%edx
1730         addl    4(%esp),%ecx
1731         xorl    %ebx,%eax
1732         movdqa  %xmm0,%xmm2
1733         movdqa  %xmm3,48(%esp)
1734         movl    %edx,%esi
1735         roll    $5,%edx
1736         andl    %eax,%ebp
1737         xorl    %ebx,%eax
1738         pslld   $2,%xmm0
1739         xorl    %ebx,%ebp
1740         addl    %edx,%ecx
1741         psrld   $30,%xmm2
1742         rorl    $7,%edi
1743         addl    %ebp,%ecx
1744         addl    8(%esp),%ebx
1745         xorl    %eax,%edi
1746         movl    %ecx,%ebp
1747         roll    $5,%ecx
1748         por     %xmm2,%xmm0
1749         andl    %edi,%esi
1750         xorl    %eax,%edi
1751         movdqa  96(%esp),%xmm2
1752         xorl    %eax,%esi
1753         addl    %ecx,%ebx
1754         rorl    $7,%edx
1755         addl    %esi,%ebx
1756         addl    12(%esp),%eax
1757         movdqa  %xmm0,%xmm3
1758         xorl    %edi,%edx
1759         movl    %ebx,%esi
1760         roll    $5,%ebx
1761         andl    %edx,%ebp
1762         xorl    %edi,%edx
1763         xorl    %edi,%ebp
1764         addl    %ebx,%eax
1765         rorl    $7,%ecx
1766         addl    %ebp,%eax
1767         addl    16(%esp),%edi
1768         pxor    %xmm5,%xmm1
1769 .byte   102,15,58,15,223,8
1770         xorl    %edx,%esi
1771         movl    %eax,%ebp
1772         roll    $5,%eax
1773         pxor    %xmm2,%xmm1
1774         movdqa  %xmm5,96(%esp)
1775         xorl    %ecx,%esi
1776         addl    %eax,%edi
1777         movdqa  %xmm4,%xmm5
1778         paddd   %xmm0,%xmm4
1779         rorl    $7,%ebx
1780         addl    %esi,%edi
1781         pxor    %xmm3,%xmm1
1782         addl    20(%esp),%edx
1783         xorl    %ecx,%ebp
1784         movl    %edi,%esi
1785         roll    $5,%edi
1786         movdqa  %xmm1,%xmm3
1787         movdqa  %xmm4,(%esp)
1788         xorl    %ebx,%ebp
1789         addl    %edi,%edx
1790         rorl    $7,%eax
1791         addl    %ebp,%edx
1792         pslld   $2,%xmm1
1793         addl    24(%esp),%ecx
1794         xorl    %ebx,%esi
1795         psrld   $30,%xmm3
1796         movl    %edx,%ebp
1797         roll    $5,%edx
1798         xorl    %eax,%esi
1799         addl    %edx,%ecx
1800         rorl    $7,%edi
1801         addl    %esi,%ecx
1802         por     %xmm3,%xmm1
1803         addl    28(%esp),%ebx
1804         xorl    %eax,%ebp
1805         movdqa  64(%esp),%xmm3
1806         movl    %ecx,%esi
1807         roll    $5,%ecx
1808         xorl    %edi,%ebp
1809         addl    %ecx,%ebx
1810         rorl    $7,%edx
1811         movdqa  %xmm1,%xmm4
1812         addl    %ebp,%ebx
1813         addl    32(%esp),%eax
1814         pxor    %xmm6,%xmm2
1815 .byte   102,15,58,15,224,8
1816         xorl    %edi,%esi
1817         movl    %ebx,%ebp
1818         roll    $5,%ebx
1819         pxor    %xmm3,%xmm2
1820         movdqa  %xmm6,64(%esp)
1821         xorl    %edx,%esi
1822         addl    %ebx,%eax
1823         movdqa  128(%esp),%xmm6
1824         paddd   %xmm1,%xmm5
1825         rorl    $7,%ecx
1826         addl    %esi,%eax
1827         pxor    %xmm4,%xmm2
1828         addl    36(%esp),%edi
1829         xorl    %edx,%ebp
1830         movl    %eax,%esi
1831         roll    $5,%eax
1832         movdqa  %xmm2,%xmm4
1833         movdqa  %xmm5,16(%esp)
1834         xorl    %ecx,%ebp
1835         addl    %eax,%edi
1836         rorl    $7,%ebx
1837         addl    %ebp,%edi
1838         pslld   $2,%xmm2
1839         addl    40(%esp),%edx
1840         xorl    %ecx,%esi
1841         psrld   $30,%xmm4
1842         movl    %edi,%ebp
1843         roll    $5,%edi
1844         xorl    %ebx,%esi
1845         addl    %edi,%edx
1846         rorl    $7,%eax
1847         addl    %esi,%edx
1848         por     %xmm4,%xmm2
1849         addl    44(%esp),%ecx
1850         xorl    %ebx,%ebp
1851         movdqa  80(%esp),%xmm4
1852         movl    %edx,%esi
1853         roll    $5,%edx
1854         xorl    %eax,%ebp
1855         addl    %edx,%ecx
1856         rorl    $7,%edi
1857         movdqa  %xmm2,%xmm5
1858         addl    %ebp,%ecx
1859         addl    48(%esp),%ebx
1860         pxor    %xmm7,%xmm3
1861 .byte   102,15,58,15,233,8
1862         xorl    %eax,%esi
1863         movl    %ecx,%ebp
1864         roll    $5,%ecx
1865         pxor    %xmm4,%xmm3
1866         movdqa  %xmm7,80(%esp)
1867         xorl    %edi,%esi
1868         addl    %ecx,%ebx
1869         movdqa  %xmm6,%xmm7
1870         paddd   %xmm2,%xmm6
1871         rorl    $7,%edx
1872         addl    %esi,%ebx
1873         pxor    %xmm5,%xmm3
1874         addl    52(%esp),%eax
1875         xorl    %edi,%ebp
1876         movl    %ebx,%esi
1877         roll    $5,%ebx
1878         movdqa  %xmm3,%xmm5
1879         movdqa  %xmm6,32(%esp)
1880         xorl    %edx,%ebp
1881         addl    %ebx,%eax
1882         rorl    $7,%ecx
1883         addl    %ebp,%eax
1884         pslld   $2,%xmm3
1885         addl    56(%esp),%edi
1886         xorl    %edx,%esi
1887         psrld   $30,%xmm5
1888         movl    %eax,%ebp
1889         roll    $5,%eax
1890         xorl    %ecx,%esi
1891         addl    %eax,%edi
1892         rorl    $7,%ebx
1893         addl    %esi,%edi
1894         por     %xmm5,%xmm3
1895         addl    60(%esp),%edx
1896         xorl    %ecx,%ebp
1897         movdqa  96(%esp),%xmm5
1898         movl    %edi,%esi
1899         roll    $5,%edi
1900         xorl    %ebx,%ebp
1901         addl    %edi,%edx
1902         rorl    $7,%eax
1903         movdqa  %xmm3,%xmm6
1904         addl    %ebp,%edx
1905         addl    (%esp),%ecx
1906         pxor    %xmm0,%xmm4
1907 .byte   102,15,58,15,242,8
1908         xorl    %ebx,%esi
1909         movl    %edx,%ebp
1910         roll    $5,%edx
1911         pxor    %xmm5,%xmm4
1912         movdqa  %xmm0,96(%esp)
1913         xorl    %eax,%esi
1914         addl    %edx,%ecx
1915         movdqa  %xmm7,%xmm0
1916         paddd   %xmm3,%xmm7
1917         rorl    $7,%edi
1918         addl    %esi,%ecx
1919         pxor    %xmm6,%xmm4
1920         addl    4(%esp),%ebx
1921         xorl    %eax,%ebp
1922         movl    %ecx,%esi
1923         roll    $5,%ecx
1924         movdqa  %xmm4,%xmm6
1925         movdqa  %xmm7,48(%esp)
1926         xorl    %edi,%ebp
1927         addl    %ecx,%ebx
1928         rorl    $7,%edx
1929         addl    %ebp,%ebx
1930         pslld   $2,%xmm4
1931         addl    8(%esp),%eax
1932         xorl    %edi,%esi
1933         psrld   $30,%xmm6
1934         movl    %ebx,%ebp
1935         roll    $5,%ebx
1936         xorl    %edx,%esi
1937         addl    %ebx,%eax
1938         rorl    $7,%ecx
1939         addl    %esi,%eax
1940         por     %xmm6,%xmm4
1941         addl    12(%esp),%edi
1942         xorl    %edx,%ebp
1943         movdqa  64(%esp),%xmm6
1944         movl    %eax,%esi
1945         roll    $5,%eax
1946         xorl    %ecx,%ebp
1947         addl    %eax,%edi
1948         rorl    $7,%ebx
1949         movdqa  %xmm4,%xmm7
1950         addl    %ebp,%edi
1951         addl    16(%esp),%edx
1952         pxor    %xmm1,%xmm5
1953 .byte   102,15,58,15,251,8
1954         xorl    %ecx,%esi
1955         movl    %edi,%ebp
1956         roll    $5,%edi
1957         pxor    %xmm6,%xmm5
1958         movdqa  %xmm1,64(%esp)
1959         xorl    %ebx,%esi
1960         addl    %edi,%edx
1961         movdqa  %xmm0,%xmm1
1962         paddd   %xmm4,%xmm0
1963         rorl    $7,%eax
1964         addl    %esi,%edx
1965         pxor    %xmm7,%xmm5
1966         addl    20(%esp),%ecx
1967         xorl    %ebx,%ebp
1968         movl    %edx,%esi
1969         roll    $5,%edx
1970         movdqa  %xmm5,%xmm7
1971         movdqa  %xmm0,(%esp)
1972         xorl    %eax,%ebp
1973         addl    %edx,%ecx
1974         rorl    $7,%edi
1975         addl    %ebp,%ecx
1976         pslld   $2,%xmm5
1977         addl    24(%esp),%ebx
1978         xorl    %eax,%esi
1979         psrld   $30,%xmm7
1980         movl    %ecx,%ebp
1981         roll    $5,%ecx
1982         xorl    %edi,%esi
1983         addl    %ecx,%ebx
1984         rorl    $7,%edx
1985         addl    %esi,%ebx
1986         por     %xmm7,%xmm5
1987         addl    28(%esp),%eax
1988         xorl    %edi,%ebp
1989         movdqa  80(%esp),%xmm7
1990         movl    %ebx,%esi
1991         roll    $5,%ebx
1992         xorl    %edx,%ebp
1993         addl    %ebx,%eax
1994         rorl    $7,%ecx
1995         movdqa  %xmm5,%xmm0
1996         addl    %ebp,%eax
1997         movl    %ecx,%ebp
1998         pxor    %xmm2,%xmm6
1999 .byte   102,15,58,15,196,8
2000         xorl    %edx,%ecx
2001         addl    32(%esp),%edi
2002         andl    %edx,%ebp
2003         pxor    %xmm7,%xmm6
2004         movdqa  %xmm2,80(%esp)
2005         andl    %ecx,%esi
2006         rorl    $7,%ebx
2007         movdqa  %xmm1,%xmm2
2008         paddd   %xmm5,%xmm1
2009         addl    %ebp,%edi
2010         movl    %eax,%ebp
2011         pxor    %xmm0,%xmm6
2012         roll    $5,%eax
2013         addl    %esi,%edi
2014         xorl    %edx,%ecx
2015         addl    %eax,%edi
2016         movdqa  %xmm6,%xmm0
2017         movdqa  %xmm1,16(%esp)
2018         movl    %ebx,%esi
2019         xorl    %ecx,%ebx
2020         addl    36(%esp),%edx
2021         andl    %ecx,%esi
2022         pslld   $2,%xmm6
2023         andl    %ebx,%ebp
2024         rorl    $7,%eax
2025         psrld   $30,%xmm0
2026         addl    %esi,%edx
2027         movl    %edi,%esi
2028         roll    $5,%edi
2029         addl    %ebp,%edx
2030         xorl    %ecx,%ebx
2031         addl    %edi,%edx
2032         por     %xmm0,%xmm6
2033         movl    %eax,%ebp
2034         xorl    %ebx,%eax
2035         movdqa  96(%esp),%xmm0
2036         addl    40(%esp),%ecx
2037         andl    %ebx,%ebp
2038         andl    %eax,%esi
2039         rorl    $7,%edi
2040         addl    %ebp,%ecx
2041         movdqa  %xmm6,%xmm1
2042         movl    %edx,%ebp
2043         roll    $5,%edx
2044         addl    %esi,%ecx
2045         xorl    %ebx,%eax
2046         addl    %edx,%ecx
2047         movl    %edi,%esi
2048         xorl    %eax,%edi
2049         addl    44(%esp),%ebx
2050         andl    %eax,%esi
2051         andl    %edi,%ebp
2052         rorl    $7,%edx
2053         addl    %esi,%ebx
2054         movl    %ecx,%esi
2055         roll    $5,%ecx
2056         addl    %ebp,%ebx
2057         xorl    %eax,%edi
2058         addl    %ecx,%ebx
2059         movl    %edx,%ebp
2060         pxor    %xmm3,%xmm7
2061 .byte   102,15,58,15,205,8
2062         xorl    %edi,%edx
2063         addl    48(%esp),%eax
2064         andl    %edi,%ebp
2065         pxor    %xmm0,%xmm7
2066         movdqa  %xmm3,96(%esp)
2067         andl    %edx,%esi
2068         rorl    $7,%ecx
2069         movdqa  144(%esp),%xmm3
2070         paddd   %xmm6,%xmm2
2071         addl    %ebp,%eax
2072         movl    %ebx,%ebp
2073         pxor    %xmm1,%xmm7
2074         roll    $5,%ebx
2075         addl    %esi,%eax
2076         xorl    %edi,%edx
2077         addl    %ebx,%eax
2078         movdqa  %xmm7,%xmm1
2079         movdqa  %xmm2,32(%esp)
2080         movl    %ecx,%esi
2081         xorl    %edx,%ecx
2082         addl    52(%esp),%edi
2083         andl    %edx,%esi
2084         pslld   $2,%xmm7
2085         andl    %ecx,%ebp
2086         rorl    $7,%ebx
2087         psrld   $30,%xmm1
2088         addl    %esi,%edi
2089         movl    %eax,%esi
2090         roll    $5,%eax
2091         addl    %ebp,%edi
2092         xorl    %edx,%ecx
2093         addl    %eax,%edi
2094         por     %xmm1,%xmm7
2095         movl    %ebx,%ebp
2096         xorl    %ecx,%ebx
2097         movdqa  64(%esp),%xmm1
2098         addl    56(%esp),%edx
2099         andl    %ecx,%ebp
2100         andl    %ebx,%esi
2101         rorl    $7,%eax
2102         addl    %ebp,%edx
2103         movdqa  %xmm7,%xmm2
2104         movl    %edi,%ebp
2105         roll    $5,%edi
2106         addl    %esi,%edx
2107         xorl    %ecx,%ebx
2108         addl    %edi,%edx
2109         movl    %eax,%esi
2110         xorl    %ebx,%eax
2111         addl    60(%esp),%ecx
2112         andl    %ebx,%esi
2113         andl    %eax,%ebp
2114         rorl    $7,%edi
2115         addl    %esi,%ecx
2116         movl    %edx,%esi
2117         roll    $5,%edx
2118         addl    %ebp,%ecx
2119         xorl    %ebx,%eax
2120         addl    %edx,%ecx
2121         movl    %edi,%ebp
2122         pxor    %xmm4,%xmm0
2123 .byte   102,15,58,15,214,8
2124         xorl    %eax,%edi
2125         addl    (%esp),%ebx
2126         andl    %eax,%ebp
2127         pxor    %xmm1,%xmm0
2128         movdqa  %xmm4,64(%esp)
2129         andl    %edi,%esi
2130         rorl    $7,%edx
2131         movdqa  %xmm3,%xmm4
2132         paddd   %xmm7,%xmm3
2133         addl    %ebp,%ebx
2134         movl    %ecx,%ebp
2135         pxor    %xmm2,%xmm0
2136         roll    $5,%ecx
2137         addl    %esi,%ebx
2138         xorl    %eax,%edi
2139         addl    %ecx,%ebx
2140         movdqa  %xmm0,%xmm2
2141         movdqa  %xmm3,48(%esp)
2142         movl    %edx,%esi
2143         xorl    %edi,%edx
2144         addl    4(%esp),%eax
2145         andl    %edi,%esi
2146         pslld   $2,%xmm0
2147         andl    %edx,%ebp
2148         rorl    $7,%ecx
2149         psrld   $30,%xmm2
2150         addl    %esi,%eax
2151         movl    %ebx,%esi
2152         roll    $5,%ebx
2153         addl    %ebp,%eax
2154         xorl    %edi,%edx
2155         addl    %ebx,%eax
2156         por     %xmm2,%xmm0
2157         movl    %ecx,%ebp
2158         xorl    %edx,%ecx
2159         movdqa  80(%esp),%xmm2
2160         addl    8(%esp),%edi
2161         andl    %edx,%ebp
2162         andl    %ecx,%esi
2163         rorl    $7,%ebx
2164         addl    %ebp,%edi
2165         movdqa  %xmm0,%xmm3
2166         movl    %eax,%ebp
2167         roll    $5,%eax
2168         addl    %esi,%edi
2169         xorl    %edx,%ecx
2170         addl    %eax,%edi
2171         movl    %ebx,%esi
2172         xorl    %ecx,%ebx
2173         addl    12(%esp),%edx
2174         andl    %ecx,%esi
2175         andl    %ebx,%ebp
2176         rorl    $7,%eax
2177         addl    %esi,%edx
2178         movl    %edi,%esi
2179         roll    $5,%edi
2180         addl    %ebp,%edx
2181         xorl    %ecx,%ebx
2182         addl    %edi,%edx
2183         movl    %eax,%ebp
2184         pxor    %xmm5,%xmm1
2185 .byte   102,15,58,15,223,8
2186         xorl    %ebx,%eax
2187         addl    16(%esp),%ecx
2188         andl    %ebx,%ebp
2189         pxor    %xmm2,%xmm1
2190         movdqa  %xmm5,80(%esp)
2191         andl    %eax,%esi
2192         rorl    $7,%edi
2193         movdqa  %xmm4,%xmm5
2194         paddd   %xmm0,%xmm4
2195         addl    %ebp,%ecx
2196         movl    %edx,%ebp
2197         pxor    %xmm3,%xmm1
2198         roll    $5,%edx
2199         addl    %esi,%ecx
2200         xorl    %ebx,%eax
2201         addl    %edx,%ecx
2202         movdqa  %xmm1,%xmm3
2203         movdqa  %xmm4,(%esp)
2204         movl    %edi,%esi
2205         xorl    %eax,%edi
2206         addl    20(%esp),%ebx
2207         andl    %eax,%esi
2208         pslld   $2,%xmm1
2209         andl    %edi,%ebp
2210         rorl    $7,%edx
2211         psrld   $30,%xmm3
2212         addl    %esi,%ebx
2213         movl    %ecx,%esi
2214         roll    $5,%ecx
2215         addl    %ebp,%ebx
2216         xorl    %eax,%edi
2217         addl    %ecx,%ebx
2218         por     %xmm3,%xmm1
2219         movl    %edx,%ebp
2220         xorl    %edi,%edx
2221         movdqa  96(%esp),%xmm3
2222         addl    24(%esp),%eax
2223         andl    %edi,%ebp
2224         andl    %edx,%esi
2225         rorl    $7,%ecx
2226         addl    %ebp,%eax
2227         movdqa  %xmm1,%xmm4
2228         movl    %ebx,%ebp
2229         roll    $5,%ebx
2230         addl    %esi,%eax
2231         xorl    %edi,%edx
2232         addl    %ebx,%eax
2233         movl    %ecx,%esi
2234         xorl    %edx,%ecx
2235         addl    28(%esp),%edi
2236         andl    %edx,%esi
2237         andl    %ecx,%ebp
2238         rorl    $7,%ebx
2239         addl    %esi,%edi
2240         movl    %eax,%esi
2241         roll    $5,%eax
2242         addl    %ebp,%edi
2243         xorl    %edx,%ecx
2244         addl    %eax,%edi
2245         movl    %ebx,%ebp
2246         pxor    %xmm6,%xmm2
2247 .byte   102,15,58,15,224,8
2248         xorl    %ecx,%ebx
2249         addl    32(%esp),%edx
2250         andl    %ecx,%ebp
2251         pxor    %xmm3,%xmm2
2252         movdqa  %xmm6,96(%esp)
2253         andl    %ebx,%esi
2254         rorl    $7,%eax
2255         movdqa  %xmm5,%xmm6
2256         paddd   %xmm1,%xmm5
2257         addl    %ebp,%edx
2258         movl    %edi,%ebp
2259         pxor    %xmm4,%xmm2
2260         roll    $5,%edi
2261         addl    %esi,%edx
2262         xorl    %ecx,%ebx
2263         addl    %edi,%edx
2264         movdqa  %xmm2,%xmm4
2265         movdqa  %xmm5,16(%esp)
2266         movl    %eax,%esi
2267         xorl    %ebx,%eax
2268         addl    36(%esp),%ecx
2269         andl    %ebx,%esi
2270         pslld   $2,%xmm2
2271         andl    %eax,%ebp
2272         rorl    $7,%edi
2273         psrld   $30,%xmm4
2274         addl    %esi,%ecx
2275         movl    %edx,%esi
2276         roll    $5,%edx
2277         addl    %ebp,%ecx
2278         xorl    %ebx,%eax
2279         addl    %edx,%ecx
2280         por     %xmm4,%xmm2
2281         movl    %edi,%ebp
2282         xorl    %eax,%edi
2283         movdqa  64(%esp),%xmm4
2284         addl    40(%esp),%ebx
2285         andl    %eax,%ebp
2286         andl    %edi,%esi
2287         rorl    $7,%edx
2288         addl    %ebp,%ebx
2289         movdqa  %xmm2,%xmm5
2290         movl    %ecx,%ebp
2291         roll    $5,%ecx
2292         addl    %esi,%ebx
2293         xorl    %eax,%edi
2294         addl    %ecx,%ebx
2295         movl    %edx,%esi
2296         xorl    %edi,%edx
2297         addl    44(%esp),%eax
2298         andl    %edi,%esi
2299         andl    %edx,%ebp
2300         rorl    $7,%ecx
2301         addl    %esi,%eax
2302         movl    %ebx,%esi
2303         roll    $5,%ebx
2304         addl    %ebp,%eax
2305         xorl    %edi,%edx
2306         addl    %ebx,%eax
2307         addl    48(%esp),%edi
2308         pxor    %xmm7,%xmm3
2309 .byte   102,15,58,15,233,8
2310         xorl    %edx,%esi
2311         movl    %eax,%ebp
2312         roll    $5,%eax
2313         pxor    %xmm4,%xmm3
2314         movdqa  %xmm7,64(%esp)
2315         xorl    %ecx,%esi
2316         addl    %eax,%edi
2317         movdqa  %xmm6,%xmm7
2318         paddd   %xmm2,%xmm6
2319         rorl    $7,%ebx
2320         addl    %esi,%edi
2321         pxor    %xmm5,%xmm3
2322         addl    52(%esp),%edx
2323         xorl    %ecx,%ebp
2324         movl    %edi,%esi
2325         roll    $5,%edi
2326         movdqa  %xmm3,%xmm5
2327         movdqa  %xmm6,32(%esp)
2328         xorl    %ebx,%ebp
2329         addl    %edi,%edx
2330         rorl    $7,%eax
2331         addl    %ebp,%edx
2332         pslld   $2,%xmm3
2333         addl    56(%esp),%ecx
2334         xorl    %ebx,%esi
2335         psrld   $30,%xmm5
2336         movl    %edx,%ebp
2337         roll    $5,%edx
2338         xorl    %eax,%esi
2339         addl    %edx,%ecx
2340         rorl    $7,%edi
2341         addl    %esi,%ecx
2342         por     %xmm5,%xmm3
2343         addl    60(%esp),%ebx
2344         xorl    %eax,%ebp
2345         movl    %ecx,%esi
2346         roll    $5,%ecx
2347         xorl    %edi,%ebp
2348         addl    %ecx,%ebx
2349         rorl    $7,%edx
2350         addl    %ebp,%ebx
2351         addl    (%esp),%eax
2352         paddd   %xmm3,%xmm7
2353         xorl    %edi,%esi
2354         movl    %ebx,%ebp
2355         roll    $5,%ebx
2356         xorl    %edx,%esi
2357         movdqa  %xmm7,48(%esp)
2358         addl    %ebx,%eax
2359         rorl    $7,%ecx
2360         addl    %esi,%eax
2361         addl    4(%esp),%edi
2362         xorl    %edx,%ebp
2363         movl    %eax,%esi
2364         roll    $5,%eax
2365         xorl    %ecx,%ebp
2366         addl    %eax,%edi
2367         rorl    $7,%ebx
2368         addl    %ebp,%edi
2369         addl    8(%esp),%edx
2370         xorl    %ecx,%esi
2371         movl    %edi,%ebp
2372         roll    $5,%edi
2373         xorl    %ebx,%esi
2374         addl    %edi,%edx
2375         rorl    $7,%eax
2376         addl    %esi,%edx
2377         addl    12(%esp),%ecx
2378         xorl    %ebx,%ebp
2379         movl    %edx,%esi
2380         roll    $5,%edx
2381         xorl    %eax,%ebp
2382         addl    %edx,%ecx
2383         rorl    $7,%edi
2384         addl    %ebp,%ecx
2385         movl    196(%esp),%ebp
2386         cmpl    200(%esp),%ebp
2387         je      .L005done
2388         movdqa  160(%esp),%xmm7
2389         movdqa  176(%esp),%xmm6
2390         movdqu  (%ebp),%xmm0
2391         movdqu  16(%ebp),%xmm1
2392         movdqu  32(%ebp),%xmm2
2393         movdqu  48(%ebp),%xmm3
2394         addl    $64,%ebp
2395 .byte   102,15,56,0,198
2396         movl    %ebp,196(%esp)
2397         movdqa  %xmm7,96(%esp)
2398         addl    16(%esp),%ebx
2399         xorl    %eax,%esi
2400 .byte   102,15,56,0,206
2401         movl    %ecx,%ebp
2402         roll    $5,%ecx
2403         paddd   %xmm7,%xmm0
2404         xorl    %edi,%esi
2405         addl    %ecx,%ebx
2406         rorl    $7,%edx
2407         addl    %esi,%ebx
2408         movdqa  %xmm0,(%esp)
2409         addl    20(%esp),%eax
2410         xorl    %edi,%ebp
2411         psubd   %xmm7,%xmm0
2412         movl    %ebx,%esi
2413         roll    $5,%ebx
2414         xorl    %edx,%ebp
2415         addl    %ebx,%eax
2416         rorl    $7,%ecx
2417         addl    %ebp,%eax
2418         addl    24(%esp),%edi
2419         xorl    %edx,%esi
2420         movl    %eax,%ebp
2421         roll    $5,%eax
2422         xorl    %ecx,%esi
2423         addl    %eax,%edi
2424         rorl    $7,%ebx
2425         addl    %esi,%edi
2426         addl    28(%esp),%edx
2427         xorl    %ecx,%ebp
2428         movl    %edi,%esi
2429         roll    $5,%edi
2430         xorl    %ebx,%ebp
2431         addl    %edi,%edx
2432         rorl    $7,%eax
2433         addl    %ebp,%edx
2434         addl    32(%esp),%ecx
2435         xorl    %ebx,%esi
2436 .byte   102,15,56,0,214
2437         movl    %edx,%ebp
2438         roll    $5,%edx
2439         paddd   %xmm7,%xmm1
2440         xorl    %eax,%esi
2441         addl    %edx,%ecx
2442         rorl    $7,%edi
2443         addl    %esi,%ecx
2444         movdqa  %xmm1,16(%esp)
2445         addl    36(%esp),%ebx
2446         xorl    %eax,%ebp
2447         psubd   %xmm7,%xmm1
2448         movl    %ecx,%esi
2449         roll    $5,%ecx
2450         xorl    %edi,%ebp
2451         addl    %ecx,%ebx
2452         rorl    $7,%edx
2453         addl    %ebp,%ebx
2454         addl    40(%esp),%eax
2455         xorl    %edi,%esi
2456         movl    %ebx,%ebp
2457         roll    $5,%ebx
2458         xorl    %edx,%esi
2459         addl    %ebx,%eax
2460         rorl    $7,%ecx
2461         addl    %esi,%eax
2462         addl    44(%esp),%edi
2463         xorl    %edx,%ebp
2464         movl    %eax,%esi
2465         roll    $5,%eax
2466         xorl    %ecx,%ebp
2467         addl    %eax,%edi
2468         rorl    $7,%ebx
2469         addl    %ebp,%edi
2470         addl    48(%esp),%edx
2471         xorl    %ecx,%esi
2472 .byte   102,15,56,0,222
2473         movl    %edi,%ebp
2474         roll    $5,%edi
2475         paddd   %xmm7,%xmm2
2476         xorl    %ebx,%esi
2477         addl    %edi,%edx
2478         rorl    $7,%eax
2479         addl    %esi,%edx
2480         movdqa  %xmm2,32(%esp)
2481         addl    52(%esp),%ecx
2482         xorl    %ebx,%ebp
2483         psubd   %xmm7,%xmm2
2484         movl    %edx,%esi
2485         roll    $5,%edx
2486         xorl    %eax,%ebp
2487         addl    %edx,%ecx
2488         rorl    $7,%edi
2489         addl    %ebp,%ecx
2490         addl    56(%esp),%ebx
2491         xorl    %eax,%esi
2492         movl    %ecx,%ebp
2493         roll    $5,%ecx
2494         xorl    %edi,%esi
2495         addl    %ecx,%ebx
2496         rorl    $7,%edx
2497         addl    %esi,%ebx
2498         addl    60(%esp),%eax
2499         xorl    %edi,%ebp
2500         movl    %ebx,%esi
2501         roll    $5,%ebx
2502         xorl    %edx,%ebp
2503         addl    %ebx,%eax
2504         rorl    $7,%ecx
2505         addl    %ebp,%eax
2506         movl    192(%esp),%ebp
2507         addl    (%ebp),%eax
2508         addl    4(%ebp),%esi
2509         addl    8(%ebp),%ecx
2510         movl    %eax,(%ebp)
2511         addl    12(%ebp),%edx
2512         movl    %esi,4(%ebp)
2513         addl    16(%ebp),%edi
2514         movl    %ecx,8(%ebp)
2515         movl    %esi,%ebx
2516         movl    %edx,12(%ebp)
2517         movl    %edi,16(%ebp)
2518         movdqa  %xmm1,%xmm4
2519         jmp     .L004loop
2520 .align  16
2521 .L005done:
2522         addl    16(%esp),%ebx
2523         xorl    %eax,%esi
2524         movl    %ecx,%ebp
2525         roll    $5,%ecx
2526         xorl    %edi,%esi
2527         addl    %ecx,%ebx
2528         rorl    $7,%edx
2529         addl    %esi,%ebx
2530         addl    20(%esp),%eax
2531         xorl    %edi,%ebp
2532         movl    %ebx,%esi
2533         roll    $5,%ebx
2534         xorl    %edx,%ebp
2535         addl    %ebx,%eax
2536         rorl    $7,%ecx
2537         addl    %ebp,%eax
2538         addl    24(%esp),%edi
2539         xorl    %edx,%esi
2540         movl    %eax,%ebp
2541         roll    $5,%eax
2542         xorl    %ecx,%esi
2543         addl    %eax,%edi
2544         rorl    $7,%ebx
2545         addl    %esi,%edi
2546         addl    28(%esp),%edx
2547         xorl    %ecx,%ebp
2548         movl    %edi,%esi
2549         roll    $5,%edi
2550         xorl    %ebx,%ebp
2551         addl    %edi,%edx
2552         rorl    $7,%eax
2553         addl    %ebp,%edx
2554         addl    32(%esp),%ecx
2555         xorl    %ebx,%esi
2556         movl    %edx,%ebp
2557         roll    $5,%edx
2558         xorl    %eax,%esi
2559         addl    %edx,%ecx
2560         rorl    $7,%edi
2561         addl    %esi,%ecx
2562         addl    36(%esp),%ebx
2563         xorl    %eax,%ebp
2564         movl    %ecx,%esi
2565         roll    $5,%ecx
2566         xorl    %edi,%ebp
2567         addl    %ecx,%ebx
2568         rorl    $7,%edx
2569         addl    %ebp,%ebx
2570         addl    40(%esp),%eax
2571         xorl    %edi,%esi
2572         movl    %ebx,%ebp
2573         roll    $5,%ebx
2574         xorl    %edx,%esi
2575         addl    %ebx,%eax
2576         rorl    $7,%ecx
2577         addl    %esi,%eax
2578         addl    44(%esp),%edi
2579         xorl    %edx,%ebp
2580         movl    %eax,%esi
2581         roll    $5,%eax
2582         xorl    %ecx,%ebp
2583         addl    %eax,%edi
2584         rorl    $7,%ebx
2585         addl    %ebp,%edi
2586         addl    48(%esp),%edx
2587         xorl    %ecx,%esi
2588         movl    %edi,%ebp
2589         roll    $5,%edi
2590         xorl    %ebx,%esi
2591         addl    %edi,%edx
2592         rorl    $7,%eax
2593         addl    %esi,%edx
2594         addl    52(%esp),%ecx
2595         xorl    %ebx,%ebp
2596         movl    %edx,%esi
2597         roll    $5,%edx
2598         xorl    %eax,%ebp
2599         addl    %edx,%ecx
2600         rorl    $7,%edi
2601         addl    %ebp,%ecx
2602         addl    56(%esp),%ebx
2603         xorl    %eax,%esi
2604         movl    %ecx,%ebp
2605         roll    $5,%ecx
2606         xorl    %edi,%esi
2607         addl    %ecx,%ebx
2608         rorl    $7,%edx
2609         addl    %esi,%ebx
2610         addl    60(%esp),%eax
2611         xorl    %edi,%ebp
2612         movl    %ebx,%esi
2613         roll    $5,%ebx
2614         xorl    %edx,%ebp
2615         addl    %ebx,%eax
2616         rorl    $7,%ecx
2617         addl    %ebp,%eax
2618         movl    192(%esp),%ebp
2619         addl    (%ebp),%eax
2620         movl    204(%esp),%esp
2621         addl    4(%ebp),%esi
2622         addl    8(%ebp),%ecx
2623         movl    %eax,(%ebp)
2624         addl    12(%ebp),%edx
2625         movl    %esi,4(%ebp)
2626         addl    16(%ebp),%edi
2627         movl    %ecx,8(%ebp)
2628         movl    %edx,12(%ebp)
2629         movl    %edi,16(%ebp)
2630         popl    %edi
2631         popl    %esi
2632         popl    %ebx
2633         popl    %ebp
2634         ret
2635 .size   _sha1_block_data_order_ssse3,.-_sha1_block_data_order_ssse3
2636 .type   _sha1_block_data_order_avx,@function
2637 .align  16
2638 _sha1_block_data_order_avx:
2639         pushl   %ebp
2640         pushl   %ebx
2641         pushl   %esi
2642         pushl   %edi
2643         call    .L006pic_point
2644 .L006pic_point:
2645         popl    %ebp
2646         leal    .LK_XX_XX-.L006pic_point(%ebp),%ebp
2647 .Lavx_shortcut:
2648         vzeroall
2649         vmovdqa (%ebp),%xmm7
2650         vmovdqa 16(%ebp),%xmm0
2651         vmovdqa 32(%ebp),%xmm1
2652         vmovdqa 48(%ebp),%xmm2
2653         vmovdqa 64(%ebp),%xmm6
2654         movl    20(%esp),%edi
2655         movl    24(%esp),%ebp
2656         movl    28(%esp),%edx
2657         movl    %esp,%esi
2658         subl    $208,%esp
2659         andl    $-64,%esp
2660         vmovdqa %xmm0,112(%esp)
2661         vmovdqa %xmm1,128(%esp)
2662         vmovdqa %xmm2,144(%esp)
2663         shll    $6,%edx
2664         vmovdqa %xmm7,160(%esp)
2665         addl    %ebp,%edx
2666         vmovdqa %xmm6,176(%esp)
2667         addl    $64,%ebp
2668         movl    %edi,192(%esp)
2669         movl    %ebp,196(%esp)
2670         movl    %edx,200(%esp)
2671         movl    %esi,204(%esp)
2672         movl    (%edi),%eax
2673         movl    4(%edi),%ebx
2674         movl    8(%edi),%ecx
2675         movl    12(%edi),%edx
2676         movl    16(%edi),%edi
2677         movl    %ebx,%esi
2678         vmovdqu -64(%ebp),%xmm0
2679         vmovdqu -48(%ebp),%xmm1
2680         vmovdqu -32(%ebp),%xmm2
2681         vmovdqu -16(%ebp),%xmm3
2682         vpshufb %xmm6,%xmm0,%xmm0
2683         vpshufb %xmm6,%xmm1,%xmm1
2684         vpshufb %xmm6,%xmm2,%xmm2
2685         vmovdqa %xmm7,96(%esp)
2686         vpshufb %xmm6,%xmm3,%xmm3
2687         vpaddd  %xmm7,%xmm0,%xmm4
2688         vpaddd  %xmm7,%xmm1,%xmm5
2689         vpaddd  %xmm7,%xmm2,%xmm6
2690         vmovdqa %xmm4,(%esp)
2691         vmovdqa %xmm5,16(%esp)
2692         vmovdqa %xmm6,32(%esp)
2693         jmp     .L007loop
2694 .align  16
2695 .L007loop:
2696         addl    (%esp),%edi
2697         xorl    %edx,%ecx
2698         vpalignr        $8,%xmm0,%xmm1,%xmm4
2699         movl    %eax,%ebp
2700         shldl   $5,%eax,%eax
2701         vpaddd  %xmm3,%xmm7,%xmm7
2702         vmovdqa %xmm0,64(%esp)
2703         andl    %ecx,%esi
2704         xorl    %edx,%ecx
2705         vpsrldq $4,%xmm3,%xmm6
2706         xorl    %edx,%esi
2707         addl    %eax,%edi
2708         vpxor   %xmm0,%xmm4,%xmm4
2709         shrdl   $2,%ebx,%ebx
2710         addl    %esi,%edi
2711         vpxor   %xmm2,%xmm6,%xmm6
2712         addl    4(%esp),%edx
2713         xorl    %ecx,%ebx
2714         vmovdqa %xmm7,48(%esp)
2715         movl    %edi,%esi
2716         shldl   $5,%edi,%edi
2717         vpxor   %xmm6,%xmm4,%xmm4
2718         andl    %ebx,%ebp
2719         xorl    %ecx,%ebx
2720         xorl    %ecx,%ebp
2721         addl    %edi,%edx
2722         vpsrld  $31,%xmm4,%xmm6
2723         shrdl   $7,%eax,%eax
2724         addl    %ebp,%edx
2725         addl    8(%esp),%ecx
2726         xorl    %ebx,%eax
2727         vpslldq $12,%xmm4,%xmm0
2728         vpaddd  %xmm4,%xmm4,%xmm4
2729         movl    %edx,%ebp
2730         shldl   $5,%edx,%edx
2731         andl    %eax,%esi
2732         xorl    %ebx,%eax
2733         vpsrld  $30,%xmm0,%xmm7
2734         vpor    %xmm6,%xmm4,%xmm4
2735         xorl    %ebx,%esi
2736         addl    %edx,%ecx
2737         shrdl   $7,%edi,%edi
2738         addl    %esi,%ecx
2739         vpslld  $2,%xmm0,%xmm0
2740         addl    12(%esp),%ebx
2741         xorl    %eax,%edi
2742         vpxor   %xmm7,%xmm4,%xmm4
2743         movl    %ecx,%esi
2744         shldl   $5,%ecx,%ecx
2745         andl    %edi,%ebp
2746         xorl    %eax,%edi
2747         vpxor   %xmm0,%xmm4,%xmm4
2748         xorl    %eax,%ebp
2749         addl    %ecx,%ebx
2750         vmovdqa 96(%esp),%xmm0
2751         shrdl   $7,%edx,%edx
2752         addl    %ebp,%ebx
2753         addl    16(%esp),%eax
2754         xorl    %edi,%edx
2755         vpalignr        $8,%xmm1,%xmm2,%xmm5
2756         movl    %ebx,%ebp
2757         shldl   $5,%ebx,%ebx
2758         vpaddd  %xmm4,%xmm0,%xmm0
2759         vmovdqa %xmm1,80(%esp)
2760         andl    %edx,%esi
2761         xorl    %edi,%edx
2762         vpsrldq $4,%xmm4,%xmm7
2763         xorl    %edi,%esi
2764         addl    %ebx,%eax
2765         vpxor   %xmm1,%xmm5,%xmm5
2766         shrdl   $7,%ecx,%ecx
2767         addl    %esi,%eax
2768         vpxor   %xmm3,%xmm7,%xmm7
2769         addl    20(%esp),%edi
2770         xorl    %edx,%ecx
2771         vmovdqa %xmm0,(%esp)
2772         movl    %eax,%esi
2773         shldl   $5,%eax,%eax
2774         vpxor   %xmm7,%xmm5,%xmm5
2775         andl    %ecx,%ebp
2776         xorl    %edx,%ecx
2777         xorl    %edx,%ebp
2778         addl    %eax,%edi
2779         vpsrld  $31,%xmm5,%xmm7
2780         shrdl   $7,%ebx,%ebx
2781         addl    %ebp,%edi
2782         addl    24(%esp),%edx
2783         xorl    %ecx,%ebx
2784         vpslldq $12,%xmm5,%xmm1
2785         vpaddd  %xmm5,%xmm5,%xmm5
2786         movl    %edi,%ebp
2787         shldl   $5,%edi,%edi
2788         andl    %ebx,%esi
2789         xorl    %ecx,%ebx
2790         vpsrld  $30,%xmm1,%xmm0
2791         vpor    %xmm7,%xmm5,%xmm5
2792         xorl    %ecx,%esi
2793         addl    %edi,%edx
2794         shrdl   $7,%eax,%eax
2795         addl    %esi,%edx
2796         vpslld  $2,%xmm1,%xmm1
2797         addl    28(%esp),%ecx
2798         xorl    %ebx,%eax
2799         vpxor   %xmm0,%xmm5,%xmm5
2800         movl    %edx,%esi
2801         shldl   $5,%edx,%edx
2802         andl    %eax,%ebp
2803         xorl    %ebx,%eax
2804         vpxor   %xmm1,%xmm5,%xmm5
2805         xorl    %ebx,%ebp
2806         addl    %edx,%ecx
2807         vmovdqa 112(%esp),%xmm1
2808         shrdl   $7,%edi,%edi
2809         addl    %ebp,%ecx
2810         addl    32(%esp),%ebx
2811         xorl    %eax,%edi
2812         vpalignr        $8,%xmm2,%xmm3,%xmm6
2813         movl    %ecx,%ebp
2814         shldl   $5,%ecx,%ecx
2815         vpaddd  %xmm5,%xmm1,%xmm1
2816         vmovdqa %xmm2,96(%esp)
2817         andl    %edi,%esi
2818         xorl    %eax,%edi
2819         vpsrldq $4,%xmm5,%xmm0
2820         xorl    %eax,%esi
2821         addl    %ecx,%ebx
2822         vpxor   %xmm2,%xmm6,%xmm6
2823         shrdl   $7,%edx,%edx
2824         addl    %esi,%ebx
2825         vpxor   %xmm4,%xmm0,%xmm0
2826         addl    36(%esp),%eax
2827         xorl    %edi,%edx
2828         vmovdqa %xmm1,16(%esp)
2829         movl    %ebx,%esi
2830         shldl   $5,%ebx,%ebx
2831         vpxor   %xmm0,%xmm6,%xmm6
2832         andl    %edx,%ebp
2833         xorl    %edi,%edx
2834         xorl    %edi,%ebp
2835         addl    %ebx,%eax
2836         vpsrld  $31,%xmm6,%xmm0
2837         shrdl   $7,%ecx,%ecx
2838         addl    %ebp,%eax
2839         addl    40(%esp),%edi
2840         xorl    %edx,%ecx
2841         vpslldq $12,%xmm6,%xmm2
2842         vpaddd  %xmm6,%xmm6,%xmm6
2843         movl    %eax,%ebp
2844         shldl   $5,%eax,%eax
2845         andl    %ecx,%esi
2846         xorl    %edx,%ecx
2847         vpsrld  $30,%xmm2,%xmm1
2848         vpor    %xmm0,%xmm6,%xmm6
2849         xorl    %edx,%esi
2850         addl    %eax,%edi
2851         shrdl   $7,%ebx,%ebx
2852         addl    %esi,%edi
2853         vpslld  $2,%xmm2,%xmm2
2854         vmovdqa 64(%esp),%xmm0
2855         addl    44(%esp),%edx
2856         xorl    %ecx,%ebx
2857         vpxor   %xmm1,%xmm6,%xmm6
2858         movl    %edi,%esi
2859         shldl   $5,%edi,%edi
2860         andl    %ebx,%ebp
2861         xorl    %ecx,%ebx
2862         vpxor   %xmm2,%xmm6,%xmm6
2863         xorl    %ecx,%ebp
2864         addl    %edi,%edx
2865         vmovdqa 112(%esp),%xmm2
2866         shrdl   $7,%eax,%eax
2867         addl    %ebp,%edx
2868         addl    48(%esp),%ecx
2869         xorl    %ebx,%eax
2870         vpalignr        $8,%xmm3,%xmm4,%xmm7
2871         movl    %edx,%ebp
2872         shldl   $5,%edx,%edx
2873         vpaddd  %xmm6,%xmm2,%xmm2
2874         vmovdqa %xmm3,64(%esp)
2875         andl    %eax,%esi
2876         xorl    %ebx,%eax
2877         vpsrldq $4,%xmm6,%xmm1
2878         xorl    %ebx,%esi
2879         addl    %edx,%ecx
2880         vpxor   %xmm3,%xmm7,%xmm7
2881         shrdl   $7,%edi,%edi
2882         addl    %esi,%ecx
2883         vpxor   %xmm5,%xmm1,%xmm1
2884         addl    52(%esp),%ebx
2885         xorl    %eax,%edi
2886         vmovdqa %xmm2,32(%esp)
2887         movl    %ecx,%esi
2888         shldl   $5,%ecx,%ecx
2889         vpxor   %xmm1,%xmm7,%xmm7
2890         andl    %edi,%ebp
2891         xorl    %eax,%edi
2892         xorl    %eax,%ebp
2893         addl    %ecx,%ebx
2894         vpsrld  $31,%xmm7,%xmm1
2895         shrdl   $7,%edx,%edx
2896         addl    %ebp,%ebx
2897         addl    56(%esp),%eax
2898         xorl    %edi,%edx
2899         vpslldq $12,%xmm7,%xmm3
2900         vpaddd  %xmm7,%xmm7,%xmm7
2901         movl    %ebx,%ebp
2902         shldl   $5,%ebx,%ebx
2903         andl    %edx,%esi
2904         xorl    %edi,%edx
2905         vpsrld  $30,%xmm3,%xmm2
2906         vpor    %xmm1,%xmm7,%xmm7
2907         xorl    %edi,%esi
2908         addl    %ebx,%eax
2909         shrdl   $7,%ecx,%ecx
2910         addl    %esi,%eax
2911         vpslld  $2,%xmm3,%xmm3
2912         vmovdqa 80(%esp),%xmm1
2913         addl    60(%esp),%edi
2914         xorl    %edx,%ecx
2915         vpxor   %xmm2,%xmm7,%xmm7
2916         movl    %eax,%esi
2917         shldl   $5,%eax,%eax
2918         andl    %ecx,%ebp
2919         xorl    %edx,%ecx
2920         vpxor   %xmm3,%xmm7,%xmm7
2921         xorl    %edx,%ebp
2922         addl    %eax,%edi
2923         vmovdqa 112(%esp),%xmm3
2924         shrdl   $7,%ebx,%ebx
2925         addl    %ebp,%edi
2926         vpalignr        $8,%xmm6,%xmm7,%xmm2
2927         vpxor   %xmm4,%xmm0,%xmm0
2928         addl    (%esp),%edx
2929         xorl    %ecx,%ebx
2930         movl    %edi,%ebp
2931         shldl   $5,%edi,%edi
2932         vpxor   %xmm1,%xmm0,%xmm0
2933         vmovdqa %xmm4,80(%esp)
2934         andl    %ebx,%esi
2935         xorl    %ecx,%ebx
2936         vmovdqa %xmm3,%xmm4
2937         vpaddd  %xmm7,%xmm3,%xmm3
2938         xorl    %ecx,%esi
2939         addl    %edi,%edx
2940         vpxor   %xmm2,%xmm0,%xmm0
2941         shrdl   $7,%eax,%eax
2942         addl    %esi,%edx
2943         addl    4(%esp),%ecx
2944         xorl    %ebx,%eax
2945         vpsrld  $30,%xmm0,%xmm2
2946         vmovdqa %xmm3,48(%esp)
2947         movl    %edx,%esi
2948         shldl   $5,%edx,%edx
2949         andl    %eax,%ebp
2950         xorl    %ebx,%eax
2951         vpslld  $2,%xmm0,%xmm0
2952         xorl    %ebx,%ebp
2953         addl    %edx,%ecx
2954         shrdl   $7,%edi,%edi
2955         addl    %ebp,%ecx
2956         addl    8(%esp),%ebx
2957         xorl    %eax,%edi
2958         movl    %ecx,%ebp
2959         shldl   $5,%ecx,%ecx
2960         vpor    %xmm2,%xmm0,%xmm0
2961         andl    %edi,%esi
2962         xorl    %eax,%edi
2963         vmovdqa 96(%esp),%xmm2
2964         xorl    %eax,%esi
2965         addl    %ecx,%ebx
2966         shrdl   $7,%edx,%edx
2967         addl    %esi,%ebx
2968         addl    12(%esp),%eax
2969         xorl    %edi,%edx
2970         movl    %ebx,%esi
2971         shldl   $5,%ebx,%ebx
2972         andl    %edx,%ebp
2973         xorl    %edi,%edx
2974         xorl    %edi,%ebp
2975         addl    %ebx,%eax
2976         shrdl   $7,%ecx,%ecx
2977         addl    %ebp,%eax
2978         vpalignr        $8,%xmm7,%xmm0,%xmm3
2979         vpxor   %xmm5,%xmm1,%xmm1
2980         addl    16(%esp),%edi
2981         xorl    %edx,%esi
2982         movl    %eax,%ebp
2983         shldl   $5,%eax,%eax
2984         vpxor   %xmm2,%xmm1,%xmm1
2985         vmovdqa %xmm5,96(%esp)
2986         xorl    %ecx,%esi
2987         addl    %eax,%edi
2988         vmovdqa %xmm4,%xmm5
2989         vpaddd  %xmm0,%xmm4,%xmm4
2990         shrdl   $7,%ebx,%ebx
2991         addl    %esi,%edi
2992         vpxor   %xmm3,%xmm1,%xmm1
2993         addl    20(%esp),%edx
2994         xorl    %ecx,%ebp
2995         movl    %edi,%esi
2996         shldl   $5,%edi,%edi
2997         vpsrld  $30,%xmm1,%xmm3
2998         vmovdqa %xmm4,(%esp)
2999         xorl    %ebx,%ebp
3000         addl    %edi,%edx
3001         shrdl   $7,%eax,%eax
3002         addl    %ebp,%edx
3003         vpslld  $2,%xmm1,%xmm1
3004         addl    24(%esp),%ecx
3005         xorl    %ebx,%esi
3006         movl    %edx,%ebp
3007         shldl   $5,%edx,%edx
3008         xorl    %eax,%esi
3009         addl    %edx,%ecx
3010         shrdl   $7,%edi,%edi
3011         addl    %esi,%ecx
3012         vpor    %xmm3,%xmm1,%xmm1
3013         addl    28(%esp),%ebx
3014         xorl    %eax,%ebp
3015         vmovdqa 64(%esp),%xmm3
3016         movl    %ecx,%esi
3017         shldl   $5,%ecx,%ecx
3018         xorl    %edi,%ebp
3019         addl    %ecx,%ebx
3020         shrdl   $7,%edx,%edx
3021         addl    %ebp,%ebx
3022         vpalignr        $8,%xmm0,%xmm1,%xmm4
3023         vpxor   %xmm6,%xmm2,%xmm2
3024         addl    32(%esp),%eax
3025         xorl    %edi,%esi
3026         movl    %ebx,%ebp
3027         shldl   $5,%ebx,%ebx
3028         vpxor   %xmm3,%xmm2,%xmm2
3029         vmovdqa %xmm6,64(%esp)
3030         xorl    %edx,%esi
3031         addl    %ebx,%eax
3032         vmovdqa 128(%esp),%xmm6
3033         vpaddd  %xmm1,%xmm5,%xmm5
3034         shrdl   $7,%ecx,%ecx
3035         addl    %esi,%eax
3036         vpxor   %xmm4,%xmm2,%xmm2
3037         addl    36(%esp),%edi
3038         xorl    %edx,%ebp
3039         movl    %eax,%esi
3040         shldl   $5,%eax,%eax
3041         vpsrld  $30,%xmm2,%xmm4
3042         vmovdqa %xmm5,16(%esp)
3043         xorl    %ecx,%ebp
3044         addl    %eax,%edi
3045         shrdl   $7,%ebx,%ebx
3046         addl    %ebp,%edi
3047         vpslld  $2,%xmm2,%xmm2
3048         addl    40(%esp),%edx
3049         xorl    %ecx,%esi
3050         movl    %edi,%ebp
3051         shldl   $5,%edi,%edi
3052         xorl    %ebx,%esi
3053         addl    %edi,%edx
3054         shrdl   $7,%eax,%eax
3055         addl    %esi,%edx
3056         vpor    %xmm4,%xmm2,%xmm2
3057         addl    44(%esp),%ecx
3058         xorl    %ebx,%ebp
3059         vmovdqa 80(%esp),%xmm4
3060         movl    %edx,%esi
3061         shldl   $5,%edx,%edx
3062         xorl    %eax,%ebp
3063         addl    %edx,%ecx
3064         shrdl   $7,%edi,%edi
3065         addl    %ebp,%ecx
3066         vpalignr        $8,%xmm1,%xmm2,%xmm5
3067         vpxor   %xmm7,%xmm3,%xmm3
3068         addl    48(%esp),%ebx
3069         xorl    %eax,%esi
3070         movl    %ecx,%ebp
3071         shldl   $5,%ecx,%ecx
3072         vpxor   %xmm4,%xmm3,%xmm3
3073         vmovdqa %xmm7,80(%esp)
3074         xorl    %edi,%esi
3075         addl    %ecx,%ebx
3076         vmovdqa %xmm6,%xmm7
3077         vpaddd  %xmm2,%xmm6,%xmm6
3078         shrdl   $7,%edx,%edx
3079         addl    %esi,%ebx
3080         vpxor   %xmm5,%xmm3,%xmm3
3081         addl    52(%esp),%eax
3082         xorl    %edi,%ebp
3083         movl    %ebx,%esi
3084         shldl   $5,%ebx,%ebx
3085         vpsrld  $30,%xmm3,%xmm5
3086         vmovdqa %xmm6,32(%esp)
3087         xorl    %edx,%ebp
3088         addl    %ebx,%eax
3089         shrdl   $7,%ecx,%ecx
3090         addl    %ebp,%eax
3091         vpslld  $2,%xmm3,%xmm3
3092         addl    56(%esp),%edi
3093         xorl    %edx,%esi
3094         movl    %eax,%ebp
3095         shldl   $5,%eax,%eax
3096         xorl    %ecx,%esi
3097         addl    %eax,%edi
3098         shrdl   $7,%ebx,%ebx
3099         addl    %esi,%edi
3100         vpor    %xmm5,%xmm3,%xmm3
3101         addl    60(%esp),%edx
3102         xorl    %ecx,%ebp
3103         vmovdqa 96(%esp),%xmm5
3104         movl    %edi,%esi
3105         shldl   $5,%edi,%edi
3106         xorl    %ebx,%ebp
3107         addl    %edi,%edx
3108         shrdl   $7,%eax,%eax
3109         addl    %ebp,%edx
3110         vpalignr        $8,%xmm2,%xmm3,%xmm6
3111         vpxor   %xmm0,%xmm4,%xmm4
3112         addl    (%esp),%ecx
3113         xorl    %ebx,%esi
3114         movl    %edx,%ebp
3115         shldl   $5,%edx,%edx
3116         vpxor   %xmm5,%xmm4,%xmm4
3117         vmovdqa %xmm0,96(%esp)
3118         xorl    %eax,%esi
3119         addl    %edx,%ecx
3120         vmovdqa %xmm7,%xmm0
3121         vpaddd  %xmm3,%xmm7,%xmm7
3122         shrdl   $7,%edi,%edi
3123         addl    %esi,%ecx
3124         vpxor   %xmm6,%xmm4,%xmm4
3125         addl    4(%esp),%ebx
3126         xorl    %eax,%ebp
3127         movl    %ecx,%esi
3128         shldl   $5,%ecx,%ecx
3129         vpsrld  $30,%xmm4,%xmm6
3130         vmovdqa %xmm7,48(%esp)
3131         xorl    %edi,%ebp
3132         addl    %ecx,%ebx
3133         shrdl   $7,%edx,%edx
3134         addl    %ebp,%ebx
3135         vpslld  $2,%xmm4,%xmm4
3136         addl    8(%esp),%eax
3137         xorl    %edi,%esi
3138         movl    %ebx,%ebp
3139         shldl   $5,%ebx,%ebx
3140         xorl    %edx,%esi
3141         addl    %ebx,%eax
3142         shrdl   $7,%ecx,%ecx
3143         addl    %esi,%eax
3144         vpor    %xmm6,%xmm4,%xmm4
3145         addl    12(%esp),%edi
3146         xorl    %edx,%ebp
3147         vmovdqa 64(%esp),%xmm6
3148         movl    %eax,%esi
3149         shldl   $5,%eax,%eax
3150         xorl    %ecx,%ebp
3151         addl    %eax,%edi
3152         shrdl   $7,%ebx,%ebx
3153         addl    %ebp,%edi
3154         vpalignr        $8,%xmm3,%xmm4,%xmm7
3155         vpxor   %xmm1,%xmm5,%xmm5
3156         addl    16(%esp),%edx
3157         xorl    %ecx,%esi
3158         movl    %edi,%ebp
3159         shldl   $5,%edi,%edi
3160         vpxor   %xmm6,%xmm5,%xmm5
3161         vmovdqa %xmm1,64(%esp)
3162         xorl    %ebx,%esi
3163         addl    %edi,%edx
3164         vmovdqa %xmm0,%xmm1
3165         vpaddd  %xmm4,%xmm0,%xmm0
3166         shrdl   $7,%eax,%eax
3167         addl    %esi,%edx
3168         vpxor   %xmm7,%xmm5,%xmm5
3169         addl    20(%esp),%ecx
3170         xorl    %ebx,%ebp
3171         movl    %edx,%esi
3172         shldl   $5,%edx,%edx
3173         vpsrld  $30,%xmm5,%xmm7
3174         vmovdqa %xmm0,(%esp)
3175         xorl    %eax,%ebp
3176         addl    %edx,%ecx
3177         shrdl   $7,%edi,%edi
3178         addl    %ebp,%ecx
3179         vpslld  $2,%xmm5,%xmm5
3180         addl    24(%esp),%ebx
3181         xorl    %eax,%esi
3182         movl    %ecx,%ebp
3183         shldl   $5,%ecx,%ecx
3184         xorl    %edi,%esi
3185         addl    %ecx,%ebx
3186         shrdl   $7,%edx,%edx
3187         addl    %esi,%ebx
3188         vpor    %xmm7,%xmm5,%xmm5
3189         addl    28(%esp),%eax
3190         xorl    %edi,%ebp
3191         vmovdqa 80(%esp),%xmm7
3192         movl    %ebx,%esi
3193         shldl   $5,%ebx,%ebx
3194         xorl    %edx,%ebp
3195         addl    %ebx,%eax
3196         shrdl   $7,%ecx,%ecx
3197         addl    %ebp,%eax
3198         vpalignr        $8,%xmm4,%xmm5,%xmm0
3199         vpxor   %xmm2,%xmm6,%xmm6
3200         movl    %ecx,%ebp
3201         xorl    %edx,%ecx
3202         addl    32(%esp),%edi
3203         andl    %edx,%ebp
3204         vpxor   %xmm7,%xmm6,%xmm6
3205         vmovdqa %xmm2,80(%esp)
3206         andl    %ecx,%esi
3207         shrdl   $7,%ebx,%ebx
3208         vmovdqa %xmm1,%xmm2
3209         vpaddd  %xmm5,%xmm1,%xmm1
3210         addl    %ebp,%edi
3211         movl    %eax,%ebp
3212         vpxor   %xmm0,%xmm6,%xmm6
3213         shldl   $5,%eax,%eax
3214         addl    %esi,%edi
3215         xorl    %edx,%ecx
3216         addl    %eax,%edi
3217         vpsrld  $30,%xmm6,%xmm0
3218         vmovdqa %xmm1,16(%esp)
3219         movl    %ebx,%esi
3220         xorl    %ecx,%ebx
3221         addl    36(%esp),%edx
3222         andl    %ecx,%esi
3223         vpslld  $2,%xmm6,%xmm6
3224         andl    %ebx,%ebp
3225         shrdl   $7,%eax,%eax
3226         addl    %esi,%edx
3227         movl    %edi,%esi
3228         shldl   $5,%edi,%edi
3229         addl    %ebp,%edx
3230         xorl    %ecx,%ebx
3231         addl    %edi,%edx
3232         vpor    %xmm0,%xmm6,%xmm6
3233         movl    %eax,%ebp
3234         xorl    %ebx,%eax
3235         vmovdqa 96(%esp),%xmm0
3236         addl    40(%esp),%ecx
3237         andl    %ebx,%ebp
3238         andl    %eax,%esi
3239         shrdl   $7,%edi,%edi
3240         addl    %ebp,%ecx
3241         movl    %edx,%ebp
3242         shldl   $5,%edx,%edx
3243         addl    %esi,%ecx
3244         xorl    %ebx,%eax
3245         addl    %edx,%ecx
3246         movl    %edi,%esi
3247         xorl    %eax,%edi
3248         addl    44(%esp),%ebx
3249         andl    %eax,%esi
3250         andl    %edi,%ebp
3251         shrdl   $7,%edx,%edx
3252         addl    %esi,%ebx
3253         movl    %ecx,%esi
3254         shldl   $5,%ecx,%ecx
3255         addl    %ebp,%ebx
3256         xorl    %eax,%edi
3257         addl    %ecx,%ebx
3258         vpalignr        $8,%xmm5,%xmm6,%xmm1
3259         vpxor   %xmm3,%xmm7,%xmm7
3260         movl    %edx,%ebp
3261         xorl    %edi,%edx
3262         addl    48(%esp),%eax
3263         andl    %edi,%ebp
3264         vpxor   %xmm0,%xmm7,%xmm7
3265         vmovdqa %xmm3,96(%esp)
3266         andl    %edx,%esi
3267         shrdl   $7,%ecx,%ecx
3268         vmovdqa 144(%esp),%xmm3
3269         vpaddd  %xmm6,%xmm2,%xmm2
3270         addl    %ebp,%eax
3271         movl    %ebx,%ebp
3272         vpxor   %xmm1,%xmm7,%xmm7
3273         shldl   $5,%ebx,%ebx
3274         addl    %esi,%eax
3275         xorl    %edi,%edx
3276         addl    %ebx,%eax
3277         vpsrld  $30,%xmm7,%xmm1
3278         vmovdqa %xmm2,32(%esp)
3279         movl    %ecx,%esi
3280         xorl    %edx,%ecx
3281         addl    52(%esp),%edi
3282         andl    %edx,%esi
3283         vpslld  $2,%xmm7,%xmm7
3284         andl    %ecx,%ebp
3285         shrdl   $7,%ebx,%ebx
3286         addl    %esi,%edi
3287         movl    %eax,%esi
3288         shldl   $5,%eax,%eax
3289         addl    %ebp,%edi
3290         xorl    %edx,%ecx
3291         addl    %eax,%edi
3292         vpor    %xmm1,%xmm7,%xmm7
3293         movl    %ebx,%ebp
3294         xorl    %ecx,%ebx
3295         vmovdqa 64(%esp),%xmm1
3296         addl    56(%esp),%edx
3297         andl    %ecx,%ebp
3298         andl    %ebx,%esi
3299         shrdl   $7,%eax,%eax
3300         addl    %ebp,%edx
3301         movl    %edi,%ebp
3302         shldl   $5,%edi,%edi
3303         addl    %esi,%edx
3304         xorl    %ecx,%ebx
3305         addl    %edi,%edx
3306         movl    %eax,%esi
3307         xorl    %ebx,%eax
3308         addl    60(%esp),%ecx
3309         andl    %ebx,%esi
3310         andl    %eax,%ebp
3311         shrdl   $7,%edi,%edi
3312         addl    %esi,%ecx
3313         movl    %edx,%esi
3314         shldl   $5,%edx,%edx
3315         addl    %ebp,%ecx
3316         xorl    %ebx,%eax
3317         addl    %edx,%ecx
3318         vpalignr        $8,%xmm6,%xmm7,%xmm2
3319         vpxor   %xmm4,%xmm0,%xmm0
3320         movl    %edi,%ebp
3321         xorl    %eax,%edi
3322         addl    (%esp),%ebx
3323         andl    %eax,%ebp
3324         vpxor   %xmm1,%xmm0,%xmm0
3325         vmovdqa %xmm4,64(%esp)
3326         andl    %edi,%esi
3327         shrdl   $7,%edx,%edx
3328         vmovdqa %xmm3,%xmm4
3329         vpaddd  %xmm7,%xmm3,%xmm3
3330         addl    %ebp,%ebx
3331         movl    %ecx,%ebp
3332         vpxor   %xmm2,%xmm0,%xmm0
3333         shldl   $5,%ecx,%ecx
3334         addl    %esi,%ebx
3335         xorl    %eax,%edi
3336         addl    %ecx,%ebx
3337         vpsrld  $30,%xmm0,%xmm2
3338         vmovdqa %xmm3,48(%esp)
3339         movl    %edx,%esi
3340         xorl    %edi,%edx
3341         addl    4(%esp),%eax
3342         andl    %edi,%esi
3343         vpslld  $2,%xmm0,%xmm0
3344         andl    %edx,%ebp
3345         shrdl   $7,%ecx,%ecx
3346         addl    %esi,%eax
3347         movl    %ebx,%esi
3348         shldl   $5,%ebx,%ebx
3349         addl    %ebp,%eax
3350         xorl    %edi,%edx
3351         addl    %ebx,%eax
3352         vpor    %xmm2,%xmm0,%xmm0
3353         movl    %ecx,%ebp
3354         xorl    %edx,%ecx
3355         vmovdqa 80(%esp),%xmm2
3356         addl    8(%esp),%edi
3357         andl    %edx,%ebp
3358         andl    %ecx,%esi
3359         shrdl   $7,%ebx,%ebx
3360         addl    %ebp,%edi
3361         movl    %eax,%ebp
3362         shldl   $5,%eax,%eax
3363         addl    %esi,%edi
3364         xorl    %edx,%ecx
3365         addl    %eax,%edi
3366         movl    %ebx,%esi
3367         xorl    %ecx,%ebx
3368         addl    12(%esp),%edx
3369         andl    %ecx,%esi
3370         andl    %ebx,%ebp
3371         shrdl   $7,%eax,%eax
3372         addl    %esi,%edx
3373         movl    %edi,%esi
3374         shldl   $5,%edi,%edi
3375         addl    %ebp,%edx
3376         xorl    %ecx,%ebx
3377         addl    %edi,%edx
3378         vpalignr        $8,%xmm7,%xmm0,%xmm3
3379         vpxor   %xmm5,%xmm1,%xmm1
3380         movl    %eax,%ebp
3381         xorl    %ebx,%eax
3382         addl    16(%esp),%ecx
3383         andl    %ebx,%ebp
3384         vpxor   %xmm2,%xmm1,%xmm1
3385         vmovdqa %xmm5,80(%esp)
3386         andl    %eax,%esi
3387         shrdl   $7,%edi,%edi
3388         vmovdqa %xmm4,%xmm5
3389         vpaddd  %xmm0,%xmm4,%xmm4
3390         addl    %ebp,%ecx
3391         movl    %edx,%ebp
3392         vpxor   %xmm3,%xmm1,%xmm1
3393         shldl   $5,%edx,%edx
3394         addl    %esi,%ecx
3395         xorl    %ebx,%eax
3396         addl    %edx,%ecx
3397         vpsrld  $30,%xmm1,%xmm3
3398         vmovdqa %xmm4,(%esp)
3399         movl    %edi,%esi
3400         xorl    %eax,%edi
3401         addl    20(%esp),%ebx
3402         andl    %eax,%esi
3403         vpslld  $2,%xmm1,%xmm1
3404         andl    %edi,%ebp
3405         shrdl   $7,%edx,%edx
3406         addl    %esi,%ebx
3407         movl    %ecx,%esi
3408         shldl   $5,%ecx,%ecx
3409         addl    %ebp,%ebx
3410         xorl    %eax,%edi
3411         addl    %ecx,%ebx
3412         vpor    %xmm3,%xmm1,%xmm1
3413         movl    %edx,%ebp
3414         xorl    %edi,%edx
3415         vmovdqa 96(%esp),%xmm3
3416         addl    24(%esp),%eax
3417         andl    %edi,%ebp
3418         andl    %edx,%esi
3419         shrdl   $7,%ecx,%ecx
3420         addl    %ebp,%eax
3421         movl    %ebx,%ebp
3422         shldl   $5,%ebx,%ebx
3423         addl    %esi,%eax
3424         xorl    %edi,%edx
3425         addl    %ebx,%eax
3426         movl    %ecx,%esi
3427         xorl    %edx,%ecx
3428         addl    28(%esp),%edi
3429         andl    %edx,%esi
3430         andl    %ecx,%ebp
3431         shrdl   $7,%ebx,%ebx
3432         addl    %esi,%edi
3433         movl    %eax,%esi
3434         shldl   $5,%eax,%eax
3435         addl    %ebp,%edi
3436         xorl    %edx,%ecx
3437         addl    %eax,%edi
3438         vpalignr        $8,%xmm0,%xmm1,%xmm4
3439         vpxor   %xmm6,%xmm2,%xmm2
3440         movl    %ebx,%ebp
3441         xorl    %ecx,%ebx
3442         addl    32(%esp),%edx
3443         andl    %ecx,%ebp
3444         vpxor   %xmm3,%xmm2,%xmm2
3445         vmovdqa %xmm6,96(%esp)
3446         andl    %ebx,%esi
3447         shrdl   $7,%eax,%eax
3448         vmovdqa %xmm5,%xmm6
3449         vpaddd  %xmm1,%xmm5,%xmm5
3450         addl    %ebp,%edx
3451         movl    %edi,%ebp
3452         vpxor   %xmm4,%xmm2,%xmm2
3453         shldl   $5,%edi,%edi
3454         addl    %esi,%edx
3455         xorl    %ecx,%ebx
3456         addl    %edi,%edx
3457         vpsrld  $30,%xmm2,%xmm4
3458         vmovdqa %xmm5,16(%esp)
3459         movl    %eax,%esi
3460         xorl    %ebx,%eax
3461         addl    36(%esp),%ecx
3462         andl    %ebx,%esi
3463         vpslld  $2,%xmm2,%xmm2
3464         andl    %eax,%ebp
3465         shrdl   $7,%edi,%edi
3466         addl    %esi,%ecx
3467         movl    %edx,%esi
3468         shldl   $5,%edx,%edx
3469         addl    %ebp,%ecx
3470         xorl    %ebx,%eax
3471         addl    %edx,%ecx
3472         vpor    %xmm4,%xmm2,%xmm2
3473         movl    %edi,%ebp
3474         xorl    %eax,%edi
3475         vmovdqa 64(%esp),%xmm4
3476         addl    40(%esp),%ebx
3477         andl    %eax,%ebp
3478         andl    %edi,%esi
3479         shrdl   $7,%edx,%edx
3480         addl    %ebp,%ebx
3481         movl    %ecx,%ebp
3482         shldl   $5,%ecx,%ecx
3483         addl    %esi,%ebx
3484         xorl    %eax,%edi
3485         addl    %ecx,%ebx
3486         movl    %edx,%esi
3487         xorl    %edi,%edx
3488         addl    44(%esp),%eax
3489         andl    %edi,%esi
3490         andl    %edx,%ebp
3491         shrdl   $7,%ecx,%ecx
3492         addl    %esi,%eax
3493         movl    %ebx,%esi
3494         shldl   $5,%ebx,%ebx
3495         addl    %ebp,%eax
3496         xorl    %edi,%edx
3497         addl    %ebx,%eax
3498         vpalignr        $8,%xmm1,%xmm2,%xmm5
3499         vpxor   %xmm7,%xmm3,%xmm3
3500         addl    48(%esp),%edi
3501         xorl    %edx,%esi
3502         movl    %eax,%ebp
3503         shldl   $5,%eax,%eax
3504         vpxor   %xmm4,%xmm3,%xmm3
3505         vmovdqa %xmm7,64(%esp)
3506         xorl    %ecx,%esi
3507         addl    %eax,%edi
3508         vmovdqa %xmm6,%xmm7
3509         vpaddd  %xmm2,%xmm6,%xmm6
3510         shrdl   $7,%ebx,%ebx
3511         addl    %esi,%edi
3512         vpxor   %xmm5,%xmm3,%xmm3
3513         addl    52(%esp),%edx
3514         xorl    %ecx,%ebp
3515         movl    %edi,%esi
3516         shldl   $5,%edi,%edi
3517         vpsrld  $30,%xmm3,%xmm5
3518         vmovdqa %xmm6,32(%esp)
3519         xorl    %ebx,%ebp
3520         addl    %edi,%edx
3521         shrdl   $7,%eax,%eax
3522         addl    %ebp,%edx
3523         vpslld  $2,%xmm3,%xmm3
3524         addl    56(%esp),%ecx
3525         xorl    %ebx,%esi
3526         movl    %edx,%ebp
3527         shldl   $5,%edx,%edx
3528         xorl    %eax,%esi
3529         addl    %edx,%ecx
3530         shrdl   $7,%edi,%edi
3531         addl    %esi,%ecx
3532         vpor    %xmm5,%xmm3,%xmm3
3533         addl    60(%esp),%ebx
3534         xorl    %eax,%ebp
3535         movl    %ecx,%esi
3536         shldl   $5,%ecx,%ecx
3537         xorl    %edi,%ebp
3538         addl    %ecx,%ebx
3539         shrdl   $7,%edx,%edx
3540         addl    %ebp,%ebx
3541         addl    (%esp),%eax
3542         vpaddd  %xmm3,%xmm7,%xmm7
3543         xorl    %edi,%esi
3544         movl    %ebx,%ebp
3545         shldl   $5,%ebx,%ebx
3546         xorl    %edx,%esi
3547         vmovdqa %xmm7,48(%esp)
3548         addl    %ebx,%eax
3549         shrdl   $7,%ecx,%ecx
3550         addl    %esi,%eax
3551         addl    4(%esp),%edi
3552         xorl    %edx,%ebp
3553         movl    %eax,%esi
3554         shldl   $5,%eax,%eax
3555         xorl    %ecx,%ebp
3556         addl    %eax,%edi
3557         shrdl   $7,%ebx,%ebx
3558         addl    %ebp,%edi
3559         addl    8(%esp),%edx
3560         xorl    %ecx,%esi
3561         movl    %edi,%ebp
3562         shldl   $5,%edi,%edi
3563         xorl    %ebx,%esi
3564         addl    %edi,%edx
3565         shrdl   $7,%eax,%eax
3566         addl    %esi,%edx
3567         addl    12(%esp),%ecx
3568         xorl    %ebx,%ebp
3569         movl    %edx,%esi
3570         shldl   $5,%edx,%edx
3571         xorl    %eax,%ebp
3572         addl    %edx,%ecx
3573         shrdl   $7,%edi,%edi
3574         addl    %ebp,%ecx
3575         movl    196(%esp),%ebp
3576         cmpl    200(%esp),%ebp
3577         je      .L008done
3578         vmovdqa 160(%esp),%xmm7
3579         vmovdqa 176(%esp),%xmm6
3580         vmovdqu (%ebp),%xmm0
3581         vmovdqu 16(%ebp),%xmm1
3582         vmovdqu 32(%ebp),%xmm2
3583         vmovdqu 48(%ebp),%xmm3
3584         addl    $64,%ebp
3585         vpshufb %xmm6,%xmm0,%xmm0
3586         movl    %ebp,196(%esp)
3587         vmovdqa %xmm7,96(%esp)
3588         addl    16(%esp),%ebx
3589         xorl    %eax,%esi
3590         vpshufb %xmm6,%xmm1,%xmm1
3591         movl    %ecx,%ebp
3592         shldl   $5,%ecx,%ecx
3593         vpaddd  %xmm7,%xmm0,%xmm4
3594         xorl    %edi,%esi
3595         addl    %ecx,%ebx
3596         shrdl   $7,%edx,%edx
3597         addl    %esi,%ebx
3598         vmovdqa %xmm4,(%esp)
3599         addl    20(%esp),%eax
3600         xorl    %edi,%ebp
3601         movl    %ebx,%esi
3602         shldl   $5,%ebx,%ebx
3603         xorl    %edx,%ebp
3604         addl    %ebx,%eax
3605         shrdl   $7,%ecx,%ecx
3606         addl    %ebp,%eax
3607         addl    24(%esp),%edi
3608         xorl    %edx,%esi
3609         movl    %eax,%ebp
3610         shldl   $5,%eax,%eax
3611         xorl    %ecx,%esi
3612         addl    %eax,%edi
3613         shrdl   $7,%ebx,%ebx
3614         addl    %esi,%edi
3615         addl    28(%esp),%edx
3616         xorl    %ecx,%ebp
3617         movl    %edi,%esi
3618         shldl   $5,%edi,%edi
3619         xorl    %ebx,%ebp
3620         addl    %edi,%edx
3621         shrdl   $7,%eax,%eax
3622         addl    %ebp,%edx
3623         addl    32(%esp),%ecx
3624         xorl    %ebx,%esi
3625         vpshufb %xmm6,%xmm2,%xmm2
3626         movl    %edx,%ebp
3627         shldl   $5,%edx,%edx
3628         vpaddd  %xmm7,%xmm1,%xmm5
3629         xorl    %eax,%esi
3630         addl    %edx,%ecx
3631         shrdl   $7,%edi,%edi
3632         addl    %esi,%ecx
3633         vmovdqa %xmm5,16(%esp)
3634         addl    36(%esp),%ebx
3635         xorl    %eax,%ebp
3636         movl    %ecx,%esi
3637         shldl   $5,%ecx,%ecx
3638         xorl    %edi,%ebp
3639         addl    %ecx,%ebx
3640         shrdl   $7,%edx,%edx
3641         addl    %ebp,%ebx
3642         addl    40(%esp),%eax
3643         xorl    %edi,%esi
3644         movl    %ebx,%ebp
3645         shldl   $5,%ebx,%ebx
3646         xorl    %edx,%esi
3647         addl    %ebx,%eax
3648         shrdl   $7,%ecx,%ecx
3649         addl    %esi,%eax
3650         addl    44(%esp),%edi
3651         xorl    %edx,%ebp
3652         movl    %eax,%esi
3653         shldl   $5,%eax,%eax
3654         xorl    %ecx,%ebp
3655         addl    %eax,%edi
3656         shrdl   $7,%ebx,%ebx
3657         addl    %ebp,%edi
3658         addl    48(%esp),%edx
3659         xorl    %ecx,%esi
3660         vpshufb %xmm6,%xmm3,%xmm3
3661         movl    %edi,%ebp
3662         shldl   $5,%edi,%edi
3663         vpaddd  %xmm7,%xmm2,%xmm6
3664         xorl    %ebx,%esi
3665         addl    %edi,%edx
3666         shrdl   $7,%eax,%eax
3667         addl    %esi,%edx
3668         vmovdqa %xmm6,32(%esp)
3669         addl    52(%esp),%ecx
3670         xorl    %ebx,%ebp
3671         movl    %edx,%esi
3672         shldl   $5,%edx,%edx
3673         xorl    %eax,%ebp
3674         addl    %edx,%ecx
3675         shrdl   $7,%edi,%edi
3676         addl    %ebp,%ecx
3677         addl    56(%esp),%ebx
3678         xorl    %eax,%esi
3679         movl    %ecx,%ebp
3680         shldl   $5,%ecx,%ecx
3681         xorl    %edi,%esi
3682         addl    %ecx,%ebx
3683         shrdl   $7,%edx,%edx
3684         addl    %esi,%ebx
3685         addl    60(%esp),%eax
3686         xorl    %edi,%ebp
3687         movl    %ebx,%esi
3688         shldl   $5,%ebx,%ebx
3689         xorl    %edx,%ebp
3690         addl    %ebx,%eax
3691         shrdl   $7,%ecx,%ecx
3692         addl    %ebp,%eax
3693         movl    192(%esp),%ebp
3694         addl    (%ebp),%eax
3695         addl    4(%ebp),%esi
3696         addl    8(%ebp),%ecx
3697         movl    %eax,(%ebp)
3698         addl    12(%ebp),%edx
3699         movl    %esi,4(%ebp)
3700         addl    16(%ebp),%edi
3701         movl    %ecx,8(%ebp)
3702         movl    %esi,%ebx
3703         movl    %edx,12(%ebp)
3704         movl    %edi,16(%ebp)
3705         jmp     .L007loop
3706 .align  16
3707 .L008done:
3708         addl    16(%esp),%ebx
3709         xorl    %eax,%esi
3710         movl    %ecx,%ebp
3711         shldl   $5,%ecx,%ecx
3712         xorl    %edi,%esi
3713         addl    %ecx,%ebx
3714         shrdl   $7,%edx,%edx
3715         addl    %esi,%ebx
3716         addl    20(%esp),%eax
3717         xorl    %edi,%ebp
3718         movl    %ebx,%esi
3719         shldl   $5,%ebx,%ebx
3720         xorl    %edx,%ebp
3721         addl    %ebx,%eax
3722         shrdl   $7,%ecx,%ecx
3723         addl    %ebp,%eax
3724         addl    24(%esp),%edi
3725         xorl    %edx,%esi
3726         movl    %eax,%ebp
3727         shldl   $5,%eax,%eax
3728         xorl    %ecx,%esi
3729         addl    %eax,%edi
3730         shrdl   $7,%ebx,%ebx
3731         addl    %esi,%edi
3732         addl    28(%esp),%edx
3733         xorl    %ecx,%ebp
3734         movl    %edi,%esi
3735         shldl   $5,%edi,%edi
3736         xorl    %ebx,%ebp
3737         addl    %edi,%edx
3738         shrdl   $7,%eax,%eax
3739         addl    %ebp,%edx
3740         addl    32(%esp),%ecx
3741         xorl    %ebx,%esi
3742         movl    %edx,%ebp
3743         shldl   $5,%edx,%edx
3744         xorl    %eax,%esi
3745         addl    %edx,%ecx
3746         shrdl   $7,%edi,%edi
3747         addl    %esi,%ecx
3748         addl    36(%esp),%ebx
3749         xorl    %eax,%ebp
3750         movl    %ecx,%esi
3751         shldl   $5,%ecx,%ecx
3752         xorl    %edi,%ebp
3753         addl    %ecx,%ebx
3754         shrdl   $7,%edx,%edx
3755         addl    %ebp,%ebx
3756         addl    40(%esp),%eax
3757         xorl    %edi,%esi
3758         movl    %ebx,%ebp
3759         shldl   $5,%ebx,%ebx
3760         xorl    %edx,%esi
3761         addl    %ebx,%eax
3762         shrdl   $7,%ecx,%ecx
3763         addl    %esi,%eax
3764         addl    44(%esp),%edi
3765         xorl    %edx,%ebp
3766         movl    %eax,%esi
3767         shldl   $5,%eax,%eax
3768         xorl    %ecx,%ebp
3769         addl    %eax,%edi
3770         shrdl   $7,%ebx,%ebx
3771         addl    %ebp,%edi
3772         addl    48(%esp),%edx
3773         xorl    %ecx,%esi
3774         movl    %edi,%ebp
3775         shldl   $5,%edi,%edi
3776         xorl    %ebx,%esi
3777         addl    %edi,%edx
3778         shrdl   $7,%eax,%eax
3779         addl    %esi,%edx
3780         addl    52(%esp),%ecx
3781         xorl    %ebx,%ebp
3782         movl    %edx,%esi
3783         shldl   $5,%edx,%edx
3784         xorl    %eax,%ebp
3785         addl    %edx,%ecx
3786         shrdl   $7,%edi,%edi
3787         addl    %ebp,%ecx
3788         addl    56(%esp),%ebx
3789         xorl    %eax,%esi
3790         movl    %ecx,%ebp
3791         shldl   $5,%ecx,%ecx
3792         xorl    %edi,%esi
3793         addl    %ecx,%ebx
3794         shrdl   $7,%edx,%edx
3795         addl    %esi,%ebx
3796         addl    60(%esp),%eax
3797         xorl    %edi,%ebp
3798         movl    %ebx,%esi
3799         shldl   $5,%ebx,%ebx
3800         xorl    %edx,%ebp
3801         addl    %ebx,%eax
3802         shrdl   $7,%ecx,%ecx
3803         addl    %ebp,%eax
3804         vzeroall
3805         movl    192(%esp),%ebp
3806         addl    (%ebp),%eax
3807         movl    204(%esp),%esp
3808         addl    4(%ebp),%esi
3809         addl    8(%ebp),%ecx
3810         movl    %eax,(%ebp)
3811         addl    12(%ebp),%edx
3812         movl    %esi,4(%ebp)
3813         addl    16(%ebp),%edi
3814         movl    %ecx,8(%ebp)
3815         movl    %edx,12(%ebp)
3816         movl    %edi,16(%ebp)
3817         popl    %edi
3818         popl    %esi
3819         popl    %ebx
3820         popl    %ebp
3821         ret
3822 .size   _sha1_block_data_order_avx,.-_sha1_block_data_order_avx
3823 .align  64
3824 .LK_XX_XX:
3825 .long   1518500249,1518500249,1518500249,1518500249
3826 .long   1859775393,1859775393,1859775393,1859775393
3827 .long   2400959708,2400959708,2400959708,2400959708
3828 .long   3395469782,3395469782,3395469782,3395469782
3829 .long   66051,67438087,134810123,202182159
3830 .byte   83,72,65,49,32,98,108,111,99,107,32,116,114,97,110,115
3831 .byte   102,111,114,109,32,102,111,114,32,120,56,54,44,32,67,82
3832 .byte   89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112
3833 .byte   114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
3834 .comm   OPENSSL_ia32cap_P,8,4
3835 #else
3836 .file   "sha1-586.S"
3837 .text
3838 .globl  sha1_block_data_order
3839 .type   sha1_block_data_order,@function
3840 .align  16
3841 sha1_block_data_order:
3842 .L_sha1_block_data_order_begin:
3843         pushl   %ebp
3844         pushl   %ebx
3845         pushl   %esi
3846         pushl   %edi
3847         call    .L000pic_point
3848 .L000pic_point:
3849         popl    %ebp
3850         leal    OPENSSL_ia32cap_P,%esi
3851         leal    .LK_XX_XX-.L000pic_point(%ebp),%ebp
3852         movl    (%esi),%eax
3853         movl    4(%esi),%edx
3854         testl   $512,%edx
3855         jz      .L001x86
3856         testl   $16777216,%eax
3857         jz      .L001x86
3858         andl    $268435456,%edx
3859         andl    $1073741824,%eax
3860         orl     %edx,%eax
3861         cmpl    $1342177280,%eax
3862         je      .Lavx_shortcut
3863         jmp     .Lssse3_shortcut
3864 .align  16
3865 .L001x86:
3866         movl    20(%esp),%ebp
3867         movl    24(%esp),%esi
3868         movl    28(%esp),%eax
3869         subl    $76,%esp
3870         shll    $6,%eax
3871         addl    %esi,%eax
3872         movl    %eax,104(%esp)
3873         movl    16(%ebp),%edi
3874         jmp     .L002loop
3875 .align  16
3876 .L002loop:
3877         movl    (%esi),%eax
3878         movl    4(%esi),%ebx
3879         movl    8(%esi),%ecx
3880         movl    12(%esi),%edx
3881         bswap   %eax
3882         bswap   %ebx
3883         bswap   %ecx
3884         bswap   %edx
3885         movl    %eax,(%esp)
3886         movl    %ebx,4(%esp)
3887         movl    %ecx,8(%esp)
3888         movl    %edx,12(%esp)
3889         movl    16(%esi),%eax
3890         movl    20(%esi),%ebx
3891         movl    24(%esi),%ecx
3892         movl    28(%esi),%edx
3893         bswap   %eax
3894         bswap   %ebx
3895         bswap   %ecx
3896         bswap   %edx
3897         movl    %eax,16(%esp)
3898         movl    %ebx,20(%esp)
3899         movl    %ecx,24(%esp)
3900         movl    %edx,28(%esp)
3901         movl    32(%esi),%eax
3902         movl    36(%esi),%ebx
3903         movl    40(%esi),%ecx
3904         movl    44(%esi),%edx
3905         bswap   %eax
3906         bswap   %ebx
3907         bswap   %ecx
3908         bswap   %edx
3909         movl    %eax,32(%esp)
3910         movl    %ebx,36(%esp)
3911         movl    %ecx,40(%esp)
3912         movl    %edx,44(%esp)
3913         movl    48(%esi),%eax
3914         movl    52(%esi),%ebx
3915         movl    56(%esi),%ecx
3916         movl    60(%esi),%edx
3917         bswap   %eax
3918         bswap   %ebx
3919         bswap   %ecx
3920         bswap   %edx
3921         movl    %eax,48(%esp)
3922         movl    %ebx,52(%esp)
3923         movl    %ecx,56(%esp)
3924         movl    %edx,60(%esp)
3925         movl    %esi,100(%esp)
3926         movl    (%ebp),%eax
3927         movl    4(%ebp),%ebx
3928         movl    8(%ebp),%ecx
3929         movl    12(%ebp),%edx
3930
3931         movl    %ecx,%esi
3932         movl    %eax,%ebp
3933         roll    $5,%ebp
3934         xorl    %edx,%esi
3935         addl    %edi,%ebp
3936         movl    (%esp),%edi
3937         andl    %ebx,%esi
3938         rorl    $2,%ebx
3939         xorl    %edx,%esi
3940         leal    1518500249(%ebp,%edi,1),%ebp
3941         addl    %esi,%ebp
3942
3943         movl    %ebx,%edi
3944         movl    %ebp,%esi
3945         roll    $5,%ebp
3946         xorl    %ecx,%edi
3947         addl    %edx,%ebp
3948         movl    4(%esp),%edx
3949         andl    %eax,%edi
3950         rorl    $2,%eax
3951         xorl    %ecx,%edi
3952         leal    1518500249(%ebp,%edx,1),%ebp
3953         addl    %edi,%ebp
3954
3955         movl    %eax,%edx
3956         movl    %ebp,%edi
3957         roll    $5,%ebp
3958         xorl    %ebx,%edx
3959         addl    %ecx,%ebp
3960         movl    8(%esp),%ecx
3961         andl    %esi,%edx
3962         rorl    $2,%esi
3963         xorl    %ebx,%edx
3964         leal    1518500249(%ebp,%ecx,1),%ebp
3965         addl    %edx,%ebp
3966
3967         movl    %esi,%ecx
3968         movl    %ebp,%edx
3969         roll    $5,%ebp
3970         xorl    %eax,%ecx
3971         addl    %ebx,%ebp
3972         movl    12(%esp),%ebx
3973         andl    %edi,%ecx
3974         rorl    $2,%edi
3975         xorl    %eax,%ecx
3976         leal    1518500249(%ebp,%ebx,1),%ebp
3977         addl    %ecx,%ebp
3978
3979         movl    %edi,%ebx
3980         movl    %ebp,%ecx
3981         roll    $5,%ebp
3982         xorl    %esi,%ebx
3983         addl    %eax,%ebp
3984         movl    16(%esp),%eax
3985         andl    %edx,%ebx
3986         rorl    $2,%edx
3987         xorl    %esi,%ebx
3988         leal    1518500249(%ebp,%eax,1),%ebp
3989         addl    %ebx,%ebp
3990
3991         movl    %edx,%eax
3992         movl    %ebp,%ebx
3993         roll    $5,%ebp
3994         xorl    %edi,%eax
3995         addl    %esi,%ebp
3996         movl    20(%esp),%esi
3997         andl    %ecx,%eax
3998         rorl    $2,%ecx
3999         xorl    %edi,%eax
4000         leal    1518500249(%ebp,%esi,1),%ebp
4001         addl    %eax,%ebp
4002
4003         movl    %ecx,%esi
4004         movl    %ebp,%eax
4005         roll    $5,%ebp
4006         xorl    %edx,%esi
4007         addl    %edi,%ebp
4008         movl    24(%esp),%edi
4009         andl    %ebx,%esi
4010         rorl    $2,%ebx
4011         xorl    %edx,%esi
4012         leal    1518500249(%ebp,%edi,1),%ebp
4013         addl    %esi,%ebp
4014
4015         movl    %ebx,%edi
4016         movl    %ebp,%esi
4017         roll    $5,%ebp
4018         xorl    %ecx,%edi
4019         addl    %edx,%ebp
4020         movl    28(%esp),%edx
4021         andl    %eax,%edi
4022         rorl    $2,%eax
4023         xorl    %ecx,%edi
4024         leal    1518500249(%ebp,%edx,1),%ebp
4025         addl    %edi,%ebp
4026
4027         movl    %eax,%edx
4028         movl    %ebp,%edi
4029         roll    $5,%ebp
4030         xorl    %ebx,%edx
4031         addl    %ecx,%ebp
4032         movl    32(%esp),%ecx
4033         andl    %esi,%edx
4034         rorl    $2,%esi
4035         xorl    %ebx,%edx
4036         leal    1518500249(%ebp,%ecx,1),%ebp
4037         addl    %edx,%ebp
4038
4039         movl    %esi,%ecx
4040         movl    %ebp,%edx
4041         roll    $5,%ebp
4042         xorl    %eax,%ecx
4043         addl    %ebx,%ebp
4044         movl    36(%esp),%ebx
4045         andl    %edi,%ecx
4046         rorl    $2,%edi
4047         xorl    %eax,%ecx
4048         leal    1518500249(%ebp,%ebx,1),%ebp
4049         addl    %ecx,%ebp
4050
4051         movl    %edi,%ebx
4052         movl    %ebp,%ecx
4053         roll    $5,%ebp
4054         xorl    %esi,%ebx
4055         addl    %eax,%ebp
4056         movl    40(%esp),%eax
4057         andl    %edx,%ebx
4058         rorl    $2,%edx
4059         xorl    %esi,%ebx
4060         leal    1518500249(%ebp,%eax,1),%ebp
4061         addl    %ebx,%ebp
4062
4063         movl    %edx,%eax
4064         movl    %ebp,%ebx
4065         roll    $5,%ebp
4066         xorl    %edi,%eax
4067         addl    %esi,%ebp
4068         movl    44(%esp),%esi
4069         andl    %ecx,%eax
4070         rorl    $2,%ecx
4071         xorl    %edi,%eax
4072         leal    1518500249(%ebp,%esi,1),%ebp
4073         addl    %eax,%ebp
4074
4075         movl    %ecx,%esi
4076         movl    %ebp,%eax
4077         roll    $5,%ebp
4078         xorl    %edx,%esi
4079         addl    %edi,%ebp
4080         movl    48(%esp),%edi
4081         andl    %ebx,%esi
4082         rorl    $2,%ebx
4083         xorl    %edx,%esi
4084         leal    1518500249(%ebp,%edi,1),%ebp
4085         addl    %esi,%ebp
4086
4087         movl    %ebx,%edi
4088         movl    %ebp,%esi
4089         roll    $5,%ebp
4090         xorl    %ecx,%edi
4091         addl    %edx,%ebp
4092         movl    52(%esp),%edx
4093         andl    %eax,%edi
4094         rorl    $2,%eax
4095         xorl    %ecx,%edi
4096         leal    1518500249(%ebp,%edx,1),%ebp
4097         addl    %edi,%ebp
4098
4099         movl    %eax,%edx
4100         movl    %ebp,%edi
4101         roll    $5,%ebp
4102         xorl    %ebx,%edx
4103         addl    %ecx,%ebp
4104         movl    56(%esp),%ecx
4105         andl    %esi,%edx
4106         rorl    $2,%esi
4107         xorl    %ebx,%edx
4108         leal    1518500249(%ebp,%ecx,1),%ebp
4109         addl    %edx,%ebp
4110
4111         movl    %esi,%ecx
4112         movl    %ebp,%edx
4113         roll    $5,%ebp
4114         xorl    %eax,%ecx
4115         addl    %ebx,%ebp
4116         movl    60(%esp),%ebx
4117         andl    %edi,%ecx
4118         rorl    $2,%edi
4119         xorl    %eax,%ecx
4120         leal    1518500249(%ebp,%ebx,1),%ebp
4121         movl    (%esp),%ebx
4122         addl    %ebp,%ecx
4123
4124         movl    %edi,%ebp
4125         xorl    8(%esp),%ebx
4126         xorl    %esi,%ebp
4127         xorl    32(%esp),%ebx
4128         andl    %edx,%ebp
4129         xorl    52(%esp),%ebx
4130         roll    $1,%ebx
4131         xorl    %esi,%ebp
4132         addl    %ebp,%eax
4133         movl    %ecx,%ebp
4134         rorl    $2,%edx
4135         movl    %ebx,(%esp)
4136         roll    $5,%ebp
4137         leal    1518500249(%ebx,%eax,1),%ebx
4138         movl    4(%esp),%eax
4139         addl    %ebp,%ebx
4140
4141         movl    %edx,%ebp
4142         xorl    12(%esp),%eax
4143         xorl    %edi,%ebp
4144         xorl    36(%esp),%eax
4145         andl    %ecx,%ebp
4146         xorl    56(%esp),%eax
4147         roll    $1,%eax
4148         xorl    %edi,%ebp
4149         addl    %ebp,%esi
4150         movl    %ebx,%ebp
4151         rorl    $2,%ecx
4152         movl    %eax,4(%esp)
4153         roll    $5,%ebp
4154         leal    1518500249(%eax,%esi,1),%eax
4155         movl    8(%esp),%esi
4156         addl    %ebp,%eax
4157
4158         movl    %ecx,%ebp
4159         xorl    16(%esp),%esi
4160         xorl    %edx,%ebp
4161         xorl    40(%esp),%esi
4162         andl    %ebx,%ebp
4163         xorl    60(%esp),%esi
4164         roll    $1,%esi
4165         xorl    %edx,%ebp
4166         addl    %ebp,%edi
4167         movl    %eax,%ebp
4168         rorl    $2,%ebx
4169         movl    %esi,8(%esp)
4170         roll    $5,%ebp
4171         leal    1518500249(%esi,%edi,1),%esi
4172         movl    12(%esp),%edi
4173         addl    %ebp,%esi
4174
4175         movl    %ebx,%ebp
4176         xorl    20(%esp),%edi
4177         xorl    %ecx,%ebp
4178         xorl    44(%esp),%edi
4179         andl    %eax,%ebp
4180         xorl    (%esp),%edi
4181         roll    $1,%edi
4182         xorl    %ecx,%ebp
4183         addl    %ebp,%edx
4184         movl    %esi,%ebp
4185         rorl    $2,%eax
4186         movl    %edi,12(%esp)
4187         roll    $5,%ebp
4188         leal    1518500249(%edi,%edx,1),%edi
4189         movl    16(%esp),%edx
4190         addl    %ebp,%edi
4191
4192         movl    %esi,%ebp
4193         xorl    24(%esp),%edx
4194         xorl    %eax,%ebp
4195         xorl    48(%esp),%edx
4196         xorl    %ebx,%ebp
4197         xorl    4(%esp),%edx
4198         roll    $1,%edx
4199         addl    %ebp,%ecx
4200         rorl    $2,%esi
4201         movl    %edi,%ebp
4202         roll    $5,%ebp
4203         movl    %edx,16(%esp)
4204         leal    1859775393(%edx,%ecx,1),%edx
4205         movl    20(%esp),%ecx
4206         addl    %ebp,%edx
4207
4208         movl    %edi,%ebp
4209         xorl    28(%esp),%ecx
4210         xorl    %esi,%ebp
4211         xorl    52(%esp),%ecx
4212         xorl    %eax,%ebp
4213         xorl    8(%esp),%ecx
4214         roll    $1,%ecx
4215         addl    %ebp,%ebx
4216         rorl    $2,%edi
4217         movl    %edx,%ebp
4218         roll    $5,%ebp
4219         movl    %ecx,20(%esp)
4220         leal    1859775393(%ecx,%ebx,1),%ecx
4221         movl    24(%esp),%ebx
4222         addl    %ebp,%ecx
4223
4224         movl    %edx,%ebp
4225         xorl    32(%esp),%ebx
4226         xorl    %edi,%ebp
4227         xorl    56(%esp),%ebx
4228         xorl    %esi,%ebp
4229         xorl    12(%esp),%ebx
4230         roll    $1,%ebx
4231         addl    %ebp,%eax
4232         rorl    $2,%edx
4233         movl    %ecx,%ebp
4234         roll    $5,%ebp
4235         movl    %ebx,24(%esp)
4236         leal    1859775393(%ebx,%eax,1),%ebx
4237         movl    28(%esp),%eax
4238         addl    %ebp,%ebx
4239
4240         movl    %ecx,%ebp
4241         xorl    36(%esp),%eax
4242         xorl    %edx,%ebp
4243         xorl    60(%esp),%eax
4244         xorl    %edi,%ebp
4245         xorl    16(%esp),%eax
4246         roll    $1,%eax
4247         addl    %ebp,%esi
4248         rorl    $2,%ecx
4249         movl    %ebx,%ebp
4250         roll    $5,%ebp
4251         movl    %eax,28(%esp)
4252         leal    1859775393(%eax,%esi,1),%eax
4253         movl    32(%esp),%esi
4254         addl    %ebp,%eax
4255
4256         movl    %ebx,%ebp
4257         xorl    40(%esp),%esi
4258         xorl    %ecx,%ebp
4259         xorl    (%esp),%esi
4260         xorl    %edx,%ebp
4261         xorl    20(%esp),%esi
4262         roll    $1,%esi
4263         addl    %ebp,%edi
4264         rorl    $2,%ebx
4265         movl    %eax,%ebp
4266         roll    $5,%ebp
4267         movl    %esi,32(%esp)
4268         leal    1859775393(%esi,%edi,1),%esi
4269         movl    36(%esp),%edi
4270         addl    %ebp,%esi
4271
4272         movl    %eax,%ebp
4273         xorl    44(%esp),%edi
4274         xorl    %ebx,%ebp
4275         xorl    4(%esp),%edi
4276         xorl    %ecx,%ebp
4277         xorl    24(%esp),%edi
4278         roll    $1,%edi
4279         addl    %ebp,%edx
4280         rorl    $2,%eax
4281         movl    %esi,%ebp
4282         roll    $5,%ebp
4283         movl    %edi,36(%esp)
4284         leal    1859775393(%edi,%edx,1),%edi
4285         movl    40(%esp),%edx
4286         addl    %ebp,%edi
4287
4288         movl    %esi,%ebp
4289         xorl    48(%esp),%edx
4290         xorl    %eax,%ebp
4291         xorl    8(%esp),%edx
4292         xorl    %ebx,%ebp
4293         xorl    28(%esp),%edx
4294         roll    $1,%edx
4295         addl    %ebp,%ecx
4296         rorl    $2,%esi
4297         movl    %edi,%ebp
4298         roll    $5,%ebp
4299         movl    %edx,40(%esp)
4300         leal    1859775393(%edx,%ecx,1),%edx
4301         movl    44(%esp),%ecx
4302         addl    %ebp,%edx
4303
4304         movl    %edi,%ebp
4305         xorl    52(%esp),%ecx
4306         xorl    %esi,%ebp
4307         xorl    12(%esp),%ecx
4308         xorl    %eax,%ebp
4309         xorl    32(%esp),%ecx
4310         roll    $1,%ecx
4311         addl    %ebp,%ebx
4312         rorl    $2,%edi
4313         movl    %edx,%ebp
4314         roll    $5,%ebp
4315         movl    %ecx,44(%esp)
4316         leal    1859775393(%ecx,%ebx,1),%ecx
4317         movl    48(%esp),%ebx
4318         addl    %ebp,%ecx
4319
4320         movl    %edx,%ebp
4321         xorl    56(%esp),%ebx
4322         xorl    %edi,%ebp
4323         xorl    16(%esp),%ebx
4324         xorl    %esi,%ebp
4325         xorl    36(%esp),%ebx
4326         roll    $1,%ebx
4327         addl    %ebp,%eax
4328         rorl    $2,%edx
4329         movl    %ecx,%ebp
4330         roll    $5,%ebp
4331         movl    %ebx,48(%esp)
4332         leal    1859775393(%ebx,%eax,1),%ebx
4333         movl    52(%esp),%eax
4334         addl    %ebp,%ebx
4335
4336         movl    %ecx,%ebp
4337         xorl    60(%esp),%eax
4338         xorl    %edx,%ebp
4339         xorl    20(%esp),%eax
4340         xorl    %edi,%ebp
4341         xorl    40(%esp),%eax
4342         roll    $1,%eax
4343         addl    %ebp,%esi
4344         rorl    $2,%ecx
4345         movl    %ebx,%ebp
4346         roll    $5,%ebp
4347         movl    %eax,52(%esp)
4348         leal    1859775393(%eax,%esi,1),%eax
4349         movl    56(%esp),%esi
4350         addl    %ebp,%eax
4351
4352         movl    %ebx,%ebp
4353         xorl    (%esp),%esi
4354         xorl    %ecx,%ebp
4355         xorl    24(%esp),%esi
4356         xorl    %edx,%ebp
4357         xorl    44(%esp),%esi
4358         roll    $1,%esi
4359         addl    %ebp,%edi
4360         rorl    $2,%ebx
4361         movl    %eax,%ebp
4362         roll    $5,%ebp
4363         movl    %esi,56(%esp)
4364         leal    1859775393(%esi,%edi,1),%esi
4365         movl    60(%esp),%edi
4366         addl    %ebp,%esi
4367
4368         movl    %eax,%ebp
4369         xorl    4(%esp),%edi
4370         xorl    %ebx,%ebp
4371         xorl    28(%esp),%edi
4372         xorl    %ecx,%ebp
4373         xorl    48(%esp),%edi
4374         roll    $1,%edi
4375         addl    %ebp,%edx
4376         rorl    $2,%eax
4377         movl    %esi,%ebp
4378         roll    $5,%ebp
4379         movl    %edi,60(%esp)
4380         leal    1859775393(%edi,%edx,1),%edi
4381         movl    (%esp),%edx
4382         addl    %ebp,%edi
4383
4384         movl    %esi,%ebp
4385         xorl    8(%esp),%edx
4386         xorl    %eax,%ebp
4387         xorl    32(%esp),%edx
4388         xorl    %ebx,%ebp
4389         xorl    52(%esp),%edx
4390         roll    $1,%edx
4391         addl    %ebp,%ecx
4392         rorl    $2,%esi
4393         movl    %edi,%ebp
4394         roll    $5,%ebp
4395         movl    %edx,(%esp)
4396         leal    1859775393(%edx,%ecx,1),%edx
4397         movl    4(%esp),%ecx
4398         addl    %ebp,%edx
4399
4400         movl    %edi,%ebp
4401         xorl    12(%esp),%ecx
4402         xorl    %esi,%ebp
4403         xorl    36(%esp),%ecx
4404         xorl    %eax,%ebp
4405         xorl    56(%esp),%ecx
4406         roll    $1,%ecx
4407         addl    %ebp,%ebx
4408         rorl    $2,%edi
4409         movl    %edx,%ebp
4410         roll    $5,%ebp
4411         movl    %ecx,4(%esp)
4412         leal    1859775393(%ecx,%ebx,1),%ecx
4413         movl    8(%esp),%ebx
4414         addl    %ebp,%ecx
4415
4416         movl    %edx,%ebp
4417         xorl    16(%esp),%ebx
4418         xorl    %edi,%ebp
4419         xorl    40(%esp),%ebx
4420         xorl    %esi,%ebp
4421         xorl    60(%esp),%ebx
4422         roll    $1,%ebx
4423         addl    %ebp,%eax
4424         rorl    $2,%edx
4425         movl    %ecx,%ebp
4426         roll    $5,%ebp
4427         movl    %ebx,8(%esp)
4428         leal    1859775393(%ebx,%eax,1),%ebx
4429         movl    12(%esp),%eax
4430         addl    %ebp,%ebx
4431
4432         movl    %ecx,%ebp
4433         xorl    20(%esp),%eax
4434         xorl    %edx,%ebp
4435         xorl    44(%esp),%eax
4436         xorl    %edi,%ebp
4437         xorl    (%esp),%eax
4438         roll    $1,%eax
4439         addl    %ebp,%esi
4440         rorl    $2,%ecx
4441         movl    %ebx,%ebp
4442         roll    $5,%ebp
4443         movl    %eax,12(%esp)
4444         leal    1859775393(%eax,%esi,1),%eax
4445         movl    16(%esp),%esi
4446         addl    %ebp,%eax
4447
4448         movl    %ebx,%ebp
4449         xorl    24(%esp),%esi
4450         xorl    %ecx,%ebp
4451         xorl    48(%esp),%esi
4452         xorl    %edx,%ebp
4453         xorl    4(%esp),%esi
4454         roll    $1,%esi
4455         addl    %ebp,%edi
4456         rorl    $2,%ebx
4457         movl    %eax,%ebp
4458         roll    $5,%ebp
4459         movl    %esi,16(%esp)
4460         leal    1859775393(%esi,%edi,1),%esi
4461         movl    20(%esp),%edi
4462         addl    %ebp,%esi
4463
4464         movl    %eax,%ebp
4465         xorl    28(%esp),%edi
4466         xorl    %ebx,%ebp
4467         xorl    52(%esp),%edi
4468         xorl    %ecx,%ebp
4469         xorl    8(%esp),%edi
4470         roll    $1,%edi
4471         addl    %ebp,%edx
4472         rorl    $2,%eax
4473         movl    %esi,%ebp
4474         roll    $5,%ebp
4475         movl    %edi,20(%esp)
4476         leal    1859775393(%edi,%edx,1),%edi
4477         movl    24(%esp),%edx
4478         addl    %ebp,%edi
4479
4480         movl    %esi,%ebp
4481         xorl    32(%esp),%edx
4482         xorl    %eax,%ebp
4483         xorl    56(%esp),%edx
4484         xorl    %ebx,%ebp
4485         xorl    12(%esp),%edx
4486         roll    $1,%edx
4487         addl    %ebp,%ecx
4488         rorl    $2,%esi
4489         movl    %edi,%ebp
4490         roll    $5,%ebp
4491         movl    %edx,24(%esp)
4492         leal    1859775393(%edx,%ecx,1),%edx
4493         movl    28(%esp),%ecx
4494         addl    %ebp,%edx
4495
4496         movl    %edi,%ebp
4497         xorl    36(%esp),%ecx
4498         xorl    %esi,%ebp
4499         xorl    60(%esp),%ecx
4500         xorl    %eax,%ebp
4501         xorl    16(%esp),%ecx
4502         roll    $1,%ecx
4503         addl    %ebp,%ebx
4504         rorl    $2,%edi
4505         movl    %edx,%ebp
4506         roll    $5,%ebp
4507         movl    %ecx,28(%esp)
4508         leal    1859775393(%ecx,%ebx,1),%ecx
4509         movl    32(%esp),%ebx
4510         addl    %ebp,%ecx
4511
4512         movl    %edi,%ebp
4513         xorl    40(%esp),%ebx
4514         xorl    %esi,%ebp
4515         xorl    (%esp),%ebx
4516         andl    %edx,%ebp
4517         xorl    20(%esp),%ebx
4518         roll    $1,%ebx
4519         addl    %eax,%ebp
4520         rorl    $2,%edx
4521         movl    %ecx,%eax
4522         roll    $5,%eax
4523         movl    %ebx,32(%esp)
4524         leal    2400959708(%ebx,%ebp,1),%ebx
4525         movl    %edi,%ebp
4526         addl    %eax,%ebx
4527         andl    %esi,%ebp
4528         movl    36(%esp),%eax
4529         addl    %ebp,%ebx
4530
4531         movl    %edx,%ebp
4532         xorl    44(%esp),%eax
4533         xorl    %edi,%ebp
4534         xorl    4(%esp),%eax
4535         andl    %ecx,%ebp
4536         xorl    24(%esp),%eax
4537         roll    $1,%eax
4538         addl    %esi,%ebp
4539         rorl    $2,%ecx
4540         movl    %ebx,%esi
4541         roll    $5,%esi
4542         movl    %eax,36(%esp)
4543         leal    2400959708(%eax,%ebp,1),%eax
4544         movl    %edx,%ebp
4545         addl    %esi,%eax
4546         andl    %edi,%ebp
4547         movl    40(%esp),%esi
4548         addl    %ebp,%eax
4549
4550         movl    %ecx,%ebp
4551         xorl    48(%esp),%esi
4552         xorl    %edx,%ebp
4553         xorl    8(%esp),%esi
4554         andl    %ebx,%ebp
4555         xorl    28(%esp),%esi
4556         roll    $1,%esi
4557         addl    %edi,%ebp
4558         rorl    $2,%ebx
4559         movl    %eax,%edi
4560         roll    $5,%edi
4561         movl    %esi,40(%esp)
4562         leal    2400959708(%esi,%ebp,1),%esi
4563         movl    %ecx,%ebp
4564         addl    %edi,%esi
4565         andl    %edx,%ebp
4566         movl    44(%esp),%edi
4567         addl    %ebp,%esi
4568
4569         movl    %ebx,%ebp
4570         xorl    52(%esp),%edi
4571         xorl    %ecx,%ebp
4572         xorl    12(%esp),%edi
4573         andl    %eax,%ebp
4574         xorl    32(%esp),%edi
4575         roll    $1,%edi
4576         addl    %edx,%ebp
4577         rorl    $2,%eax
4578         movl    %esi,%edx
4579         roll    $5,%edx
4580         movl    %edi,44(%esp)
4581         leal    2400959708(%edi,%ebp,1),%edi
4582         movl    %ebx,%ebp
4583         addl    %edx,%edi
4584         andl    %ecx,%ebp
4585         movl    48(%esp),%edx
4586         addl    %ebp,%edi
4587
4588         movl    %eax,%ebp
4589         xorl    56(%esp),%edx
4590         xorl    %ebx,%ebp
4591         xorl    16(%esp),%edx
4592         andl    %esi,%ebp
4593         xorl    36(%esp),%edx
4594         roll    $1,%edx
4595         addl    %ecx,%ebp
4596         rorl    $2,%esi
4597         movl    %edi,%ecx
4598         roll    $5,%ecx
4599         movl    %edx,48(%esp)
4600         leal    2400959708(%edx,%ebp,1),%edx
4601         movl    %eax,%ebp
4602         addl    %ecx,%edx
4603         andl    %ebx,%ebp
4604         movl    52(%esp),%ecx
4605         addl    %ebp,%edx
4606
4607         movl    %esi,%ebp
4608         xorl    60(%esp),%ecx
4609         xorl    %eax,%ebp
4610         xorl    20(%esp),%ecx
4611         andl    %edi,%ebp
4612         xorl    40(%esp),%ecx
4613         roll    $1,%ecx
4614         addl    %ebx,%ebp
4615         rorl    $2,%edi
4616         movl    %edx,%ebx
4617         roll    $5,%ebx
4618         movl    %ecx,52(%esp)
4619         leal    2400959708(%ecx,%ebp,1),%ecx
4620         movl    %esi,%ebp
4621         addl    %ebx,%ecx
4622         andl    %eax,%ebp
4623         movl    56(%esp),%ebx
4624         addl    %ebp,%ecx
4625
4626         movl    %edi,%ebp
4627         xorl    (%esp),%ebx
4628         xorl    %esi,%ebp
4629         xorl    24(%esp),%ebx
4630         andl    %edx,%ebp
4631         xorl    44(%esp),%ebx
4632         roll    $1,%ebx
4633         addl    %eax,%ebp
4634         rorl    $2,%edx
4635         movl    %ecx,%eax
4636         roll    $5,%eax
4637         movl    %ebx,56(%esp)
4638         leal    2400959708(%ebx,%ebp,1),%ebx
4639         movl    %edi,%ebp
4640         addl    %eax,%ebx
4641         andl    %esi,%ebp
4642         movl    60(%esp),%eax
4643         addl    %ebp,%ebx
4644
4645         movl    %edx,%ebp
4646         xorl    4(%esp),%eax
4647         xorl    %edi,%ebp
4648         xorl    28(%esp),%eax
4649         andl    %ecx,%ebp
4650         xorl    48(%esp),%eax
4651         roll    $1,%eax
4652         addl    %esi,%ebp
4653         rorl    $2,%ecx
4654         movl    %ebx,%esi
4655         roll    $5,%esi
4656         movl    %eax,60(%esp)
4657         leal    2400959708(%eax,%ebp,1),%eax
4658         movl    %edx,%ebp
4659         addl    %esi,%eax
4660         andl    %edi,%ebp
4661         movl    (%esp),%esi
4662         addl    %ebp,%eax
4663
4664         movl    %ecx,%ebp
4665         xorl    8(%esp),%esi
4666         xorl    %edx,%ebp
4667         xorl    32(%esp),%esi
4668         andl    %ebx,%ebp
4669         xorl    52(%esp),%esi
4670         roll    $1,%esi
4671         addl    %edi,%ebp
4672         rorl    $2,%ebx
4673         movl    %eax,%edi
4674         roll    $5,%edi
4675         movl    %esi,(%esp)
4676         leal    2400959708(%esi,%ebp,1),%esi
4677         movl    %ecx,%ebp
4678         addl    %edi,%esi
4679         andl    %edx,%ebp
4680         movl    4(%esp),%edi
4681         addl    %ebp,%esi
4682
4683         movl    %ebx,%ebp
4684         xorl    12(%esp),%edi
4685         xorl    %ecx,%ebp
4686         xorl    36(%esp),%edi
4687         andl    %eax,%ebp
4688         xorl    56(%esp),%edi
4689         roll    $1,%edi
4690         addl    %edx,%ebp
4691         rorl    $2,%eax
4692         movl    %esi,%edx
4693         roll    $5,%edx
4694         movl    %edi,4(%esp)
4695         leal    2400959708(%edi,%ebp,1),%edi
4696         movl    %ebx,%ebp
4697         addl    %edx,%edi
4698         andl    %ecx,%ebp
4699         movl    8(%esp),%edx
4700         addl    %ebp,%edi
4701
4702         movl    %eax,%ebp
4703         xorl    16(%esp),%edx
4704         xorl    %ebx,%ebp
4705         xorl    40(%esp),%edx
4706         andl    %esi,%ebp
4707         xorl    60(%esp),%edx
4708         roll    $1,%edx
4709         addl    %ecx,%ebp
4710         rorl    $2,%esi
4711         movl    %edi,%ecx
4712         roll    $5,%ecx
4713         movl    %edx,8(%esp)
4714         leal    2400959708(%edx,%ebp,1),%edx
4715         movl    %eax,%ebp
4716         addl    %ecx,%edx
4717         andl    %ebx,%ebp
4718         movl    12(%esp),%ecx
4719         addl    %ebp,%edx
4720
4721         movl    %esi,%ebp
4722         xorl    20(%esp),%ecx
4723         xorl    %eax,%ebp
4724         xorl    44(%esp),%ecx
4725         andl    %edi,%ebp
4726         xorl    (%esp),%ecx
4727         roll    $1,%ecx
4728         addl    %ebx,%ebp
4729         rorl    $2,%edi
4730         movl    %edx,%ebx
4731         roll    $5,%ebx
4732         movl    %ecx,12(%esp)
4733         leal    2400959708(%ecx,%ebp,1),%ecx
4734         movl    %esi,%ebp
4735         addl    %ebx,%ecx
4736         andl    %eax,%ebp
4737         movl    16(%esp),%ebx
4738         addl    %ebp,%ecx
4739
4740         movl    %edi,%ebp
4741         xorl    24(%esp),%ebx
4742         xorl    %esi,%ebp
4743         xorl    48(%esp),%ebx
4744         andl    %edx,%ebp
4745         xorl    4(%esp),%ebx
4746         roll    $1,%ebx
4747         addl    %eax,%ebp
4748         rorl    $2,%edx
4749         movl    %ecx,%eax
4750         roll    $5,%eax
4751         movl    %ebx,16(%esp)
4752         leal    2400959708(%ebx,%ebp,1),%ebx
4753         movl    %edi,%ebp
4754         addl    %eax,%ebx
4755         andl    %esi,%ebp
4756         movl    20(%esp),%eax
4757         addl    %ebp,%ebx
4758
4759         movl    %edx,%ebp
4760         xorl    28(%esp),%eax
4761         xorl    %edi,%ebp
4762         xorl    52(%esp),%eax
4763         andl    %ecx,%ebp
4764         xorl    8(%esp),%eax
4765         roll    $1,%eax
4766         addl    %esi,%ebp
4767         rorl    $2,%ecx
4768         movl    %ebx,%esi
4769         roll    $5,%esi
4770         movl    %eax,20(%esp)
4771         leal    2400959708(%eax,%ebp,1),%eax
4772         movl    %edx,%ebp
4773         addl    %esi,%eax
4774         andl    %edi,%ebp
4775         movl    24(%esp),%esi
4776         addl    %ebp,%eax
4777
4778         movl    %ecx,%ebp
4779         xorl    32(%esp),%esi
4780         xorl    %edx,%ebp
4781         xorl    56(%esp),%esi
4782         andl    %ebx,%ebp
4783         xorl    12(%esp),%esi
4784         roll    $1,%esi
4785         addl    %edi,%ebp
4786         rorl    $2,%ebx
4787         movl    %eax,%edi
4788         roll    $5,%edi
4789         movl    %esi,24(%esp)
4790         leal    2400959708(%esi,%ebp,1),%esi
4791         movl    %ecx,%ebp
4792         addl    %edi,%esi
4793         andl    %edx,%ebp
4794         movl    28(%esp),%edi
4795         addl    %ebp,%esi
4796
4797         movl    %ebx,%ebp
4798         xorl    36(%esp),%edi
4799         xorl    %ecx,%ebp
4800         xorl    60(%esp),%edi
4801         andl    %eax,%ebp
4802         xorl    16(%esp),%edi
4803         roll    $1,%edi
4804         addl    %edx,%ebp
4805         rorl    $2,%eax
4806         movl    %esi,%edx
4807         roll    $5,%edx
4808         movl    %edi,28(%esp)
4809         leal    2400959708(%edi,%ebp,1),%edi
4810         movl    %ebx,%ebp
4811         addl    %edx,%edi
4812         andl    %ecx,%ebp
4813         movl    32(%esp),%edx
4814         addl    %ebp,%edi
4815
4816         movl    %eax,%ebp
4817         xorl    40(%esp),%edx
4818         xorl    %ebx,%ebp
4819         xorl    (%esp),%edx
4820         andl    %esi,%ebp
4821         xorl    20(%esp),%edx
4822         roll    $1,%edx
4823         addl    %ecx,%ebp
4824         rorl    $2,%esi
4825         movl    %edi,%ecx
4826         roll    $5,%ecx
4827         movl    %edx,32(%esp)
4828         leal    2400959708(%edx,%ebp,1),%edx
4829         movl    %eax,%ebp
4830         addl    %ecx,%edx
4831         andl    %ebx,%ebp
4832         movl    36(%esp),%ecx
4833         addl    %ebp,%edx
4834
4835         movl    %esi,%ebp
4836         xorl    44(%esp),%ecx
4837         xorl    %eax,%ebp
4838         xorl    4(%esp),%ecx
4839         andl    %edi,%ebp
4840         xorl    24(%esp),%ecx
4841         roll    $1,%ecx
4842         addl    %ebx,%ebp
4843         rorl    $2,%edi
4844         movl    %edx,%ebx
4845         roll    $5,%ebx
4846         movl    %ecx,36(%esp)
4847         leal    2400959708(%ecx,%ebp,1),%ecx
4848         movl    %esi,%ebp
4849         addl    %ebx,%ecx
4850         andl    %eax,%ebp
4851         movl    40(%esp),%ebx
4852         addl    %ebp,%ecx
4853
4854         movl    %edi,%ebp
4855         xorl    48(%esp),%ebx
4856         xorl    %esi,%ebp
4857         xorl    8(%esp),%ebx
4858         andl    %edx,%ebp
4859         xorl    28(%esp),%ebx
4860         roll    $1,%ebx
4861         addl    %eax,%ebp
4862         rorl    $2,%edx
4863         movl    %ecx,%eax
4864         roll    $5,%eax
4865         movl    %ebx,40(%esp)
4866         leal    2400959708(%ebx,%ebp,1),%ebx
4867         movl    %edi,%ebp
4868         addl    %eax,%ebx
4869         andl    %esi,%ebp
4870         movl    44(%esp),%eax
4871         addl    %ebp,%ebx
4872
4873         movl    %edx,%ebp
4874         xorl    52(%esp),%eax
4875         xorl    %edi,%ebp
4876         xorl    12(%esp),%eax
4877         andl    %ecx,%ebp
4878         xorl    32(%esp),%eax
4879         roll    $1,%eax
4880         addl    %esi,%ebp
4881         rorl    $2,%ecx
4882         movl    %ebx,%esi
4883         roll    $5,%esi
4884         movl    %eax,44(%esp)
4885         leal    2400959708(%eax,%ebp,1),%eax
4886         movl    %edx,%ebp
4887         addl    %esi,%eax
4888         andl    %edi,%ebp
4889         movl    48(%esp),%esi
4890         addl    %ebp,%eax
4891
4892         movl    %ebx,%ebp
4893         xorl    56(%esp),%esi
4894         xorl    %ecx,%ebp
4895         xorl    16(%esp),%esi
4896         xorl    %edx,%ebp
4897         xorl    36(%esp),%esi
4898         roll    $1,%esi
4899         addl    %ebp,%edi
4900         rorl    $2,%ebx
4901         movl    %eax,%ebp
4902         roll    $5,%ebp
4903         movl    %esi,48(%esp)
4904         leal    3395469782(%esi,%edi,1),%esi
4905         movl    52(%esp),%edi
4906         addl    %ebp,%esi
4907
4908         movl    %eax,%ebp
4909         xorl    60(%esp),%edi
4910         xorl    %ebx,%ebp
4911         xorl    20(%esp),%edi
4912         xorl    %ecx,%ebp
4913         xorl    40(%esp),%edi
4914         roll    $1,%edi
4915         addl    %ebp,%edx
4916         rorl    $2,%eax
4917         movl    %esi,%ebp
4918         roll    $5,%ebp
4919         movl    %edi,52(%esp)
4920         leal    3395469782(%edi,%edx,1),%edi
4921         movl    56(%esp),%edx
4922         addl    %ebp,%edi
4923
4924         movl    %esi,%ebp
4925         xorl    (%esp),%edx
4926         xorl    %eax,%ebp
4927         xorl    24(%esp),%edx
4928         xorl    %ebx,%ebp
4929         xorl    44(%esp),%edx
4930         roll    $1,%edx
4931         addl    %ebp,%ecx
4932         rorl    $2,%esi
4933         movl    %edi,%ebp
4934         roll    $5,%ebp
4935         movl    %edx,56(%esp)
4936         leal    3395469782(%edx,%ecx,1),%edx
4937         movl    60(%esp),%ecx
4938         addl    %ebp,%edx
4939
4940         movl    %edi,%ebp
4941         xorl    4(%esp),%ecx
4942         xorl    %esi,%ebp
4943         xorl    28(%esp),%ecx
4944         xorl    %eax,%ebp
4945         xorl    48(%esp),%ecx
4946         roll    $1,%ecx
4947         addl    %ebp,%ebx
4948         rorl    $2,%edi
4949         movl    %edx,%ebp
4950         roll    $5,%ebp
4951         movl    %ecx,60(%esp)
4952         leal    3395469782(%ecx,%ebx,1),%ecx
4953         movl    (%esp),%ebx
4954         addl    %ebp,%ecx
4955
4956         movl    %edx,%ebp
4957         xorl    8(%esp),%ebx
4958         xorl    %edi,%ebp
4959         xorl    32(%esp),%ebx
4960         xorl    %esi,%ebp
4961         xorl    52(%esp),%ebx
4962         roll    $1,%ebx
4963         addl    %ebp,%eax
4964         rorl    $2,%edx
4965         movl    %ecx,%ebp
4966         roll    $5,%ebp
4967         movl    %ebx,(%esp)
4968         leal    3395469782(%ebx,%eax,1),%ebx
4969         movl    4(%esp),%eax
4970         addl    %ebp,%ebx
4971
4972         movl    %ecx,%ebp
4973         xorl    12(%esp),%eax
4974         xorl    %edx,%ebp
4975         xorl    36(%esp),%eax
4976         xorl    %edi,%ebp
4977         xorl    56(%esp),%eax
4978         roll    $1,%eax
4979         addl    %ebp,%esi
4980         rorl    $2,%ecx
4981         movl    %ebx,%ebp
4982         roll    $5,%ebp
4983         movl    %eax,4(%esp)
4984         leal    3395469782(%eax,%esi,1),%eax
4985         movl    8(%esp),%esi
4986         addl    %ebp,%eax
4987
4988         movl    %ebx,%ebp
4989         xorl    16(%esp),%esi
4990         xorl    %ecx,%ebp
4991         xorl    40(%esp),%esi
4992         xorl    %edx,%ebp
4993         xorl    60(%esp),%esi
4994         roll    $1,%esi
4995         addl    %ebp,%edi
4996         rorl    $2,%ebx
4997         movl    %eax,%ebp
4998         roll    $5,%ebp
4999         movl    %esi,8(%esp)
5000         leal    3395469782(%esi,%edi,1),%esi
5001         movl    12(%esp),%edi
5002         addl    %ebp,%esi
5003
5004         movl    %eax,%ebp
5005         xorl    20(%esp),%edi
5006         xorl    %ebx,%ebp
5007         xorl    44(%esp),%edi
5008         xorl    %ecx,%ebp
5009         xorl    (%esp),%edi
5010         roll    $1,%edi
5011         addl    %ebp,%edx
5012         rorl    $2,%eax
5013         movl    %esi,%ebp
5014         roll    $5,%ebp
5015         movl    %edi,12(%esp)
5016         leal    3395469782(%edi,%edx,1),%edi
5017         movl    16(%esp),%edx
5018         addl    %ebp,%edi
5019
5020         movl    %esi,%ebp
5021         xorl    24(%esp),%edx
5022         xorl    %eax,%ebp
5023         xorl    48(%esp),%edx
5024         xorl    %ebx,%ebp
5025         xorl    4(%esp),%edx
5026         roll    $1,%edx
5027         addl    %ebp,%ecx
5028         rorl    $2,%esi
5029         movl    %edi,%ebp
5030         roll    $5,%ebp
5031         movl    %edx,16(%esp)
5032         leal    3395469782(%edx,%ecx,1),%edx
5033         movl    20(%esp),%ecx
5034         addl    %ebp,%edx
5035
5036         movl    %edi,%ebp
5037         xorl    28(%esp),%ecx
5038         xorl    %esi,%ebp
5039         xorl    52(%esp),%ecx
5040         xorl    %eax,%ebp
5041         xorl    8(%esp),%ecx
5042         roll    $1,%ecx
5043         addl    %ebp,%ebx
5044         rorl    $2,%edi
5045         movl    %edx,%ebp
5046         roll    $5,%ebp
5047         movl    %ecx,20(%esp)
5048         leal    3395469782(%ecx,%ebx,1),%ecx
5049         movl    24(%esp),%ebx
5050         addl    %ebp,%ecx
5051
5052         movl    %edx,%ebp
5053         xorl    32(%esp),%ebx
5054         xorl    %edi,%ebp
5055         xorl    56(%esp),%ebx
5056         xorl    %esi,%ebp
5057         xorl    12(%esp),%ebx
5058         roll    $1,%ebx
5059         addl    %ebp,%eax
5060         rorl    $2,%edx
5061         movl    %ecx,%ebp
5062         roll    $5,%ebp
5063         movl    %ebx,24(%esp)
5064         leal    3395469782(%ebx,%eax,1),%ebx
5065         movl    28(%esp),%eax
5066         addl    %ebp,%ebx
5067
5068         movl    %ecx,%ebp
5069         xorl    36(%esp),%eax
5070         xorl    %edx,%ebp
5071         xorl    60(%esp),%eax
5072         xorl    %edi,%ebp
5073         xorl    16(%esp),%eax
5074         roll    $1,%eax
5075         addl    %ebp,%esi
5076         rorl    $2,%ecx
5077         movl    %ebx,%ebp
5078         roll    $5,%ebp
5079         movl    %eax,28(%esp)
5080         leal    3395469782(%eax,%esi,1),%eax
5081         movl    32(%esp),%esi
5082         addl    %ebp,%eax
5083
5084         movl    %ebx,%ebp
5085         xorl    40(%esp),%esi
5086         xorl    %ecx,%ebp
5087         xorl    (%esp),%esi
5088         xorl    %edx,%ebp
5089         xorl    20(%esp),%esi
5090         roll    $1,%esi
5091         addl    %ebp,%edi
5092         rorl    $2,%ebx
5093         movl    %eax,%ebp
5094         roll    $5,%ebp
5095         movl    %esi,32(%esp)
5096         leal    3395469782(%esi,%edi,1),%esi
5097         movl    36(%esp),%edi
5098         addl    %ebp,%esi
5099
5100         movl    %eax,%ebp
5101         xorl    44(%esp),%edi
5102         xorl    %ebx,%ebp
5103         xorl    4(%esp),%edi
5104         xorl    %ecx,%ebp
5105         xorl    24(%esp),%edi
5106         roll    $1,%edi
5107         addl    %ebp,%edx
5108         rorl    $2,%eax
5109         movl    %esi,%ebp
5110         roll    $5,%ebp
5111         movl    %edi,36(%esp)
5112         leal    3395469782(%edi,%edx,1),%edi
5113         movl    40(%esp),%edx
5114         addl    %ebp,%edi
5115
5116         movl    %esi,%ebp
5117         xorl    48(%esp),%edx
5118         xorl    %eax,%ebp
5119         xorl    8(%esp),%edx
5120         xorl    %ebx,%ebp
5121         xorl    28(%esp),%edx
5122         roll    $1,%edx
5123         addl    %ebp,%ecx
5124         rorl    $2,%esi
5125         movl    %edi,%ebp
5126         roll    $5,%ebp
5127         movl    %edx,40(%esp)
5128         leal    3395469782(%edx,%ecx,1),%edx
5129         movl    44(%esp),%ecx
5130         addl    %ebp,%edx
5131
5132         movl    %edi,%ebp
5133         xorl    52(%esp),%ecx
5134         xorl    %esi,%ebp
5135         xorl    12(%esp),%ecx
5136         xorl    %eax,%ebp
5137         xorl    32(%esp),%ecx
5138         roll    $1,%ecx
5139         addl    %ebp,%ebx
5140         rorl    $2,%edi
5141         movl    %edx,%ebp
5142         roll    $5,%ebp
5143         movl    %ecx,44(%esp)
5144         leal    3395469782(%ecx,%ebx,1),%ecx
5145         movl    48(%esp),%ebx
5146         addl    %ebp,%ecx
5147
5148         movl    %edx,%ebp
5149         xorl    56(%esp),%ebx
5150         xorl    %edi,%ebp
5151         xorl    16(%esp),%ebx
5152         xorl    %esi,%ebp
5153         xorl    36(%esp),%ebx
5154         roll    $1,%ebx
5155         addl    %ebp,%eax
5156         rorl    $2,%edx
5157         movl    %ecx,%ebp
5158         roll    $5,%ebp
5159         movl    %ebx,48(%esp)
5160         leal    3395469782(%ebx,%eax,1),%ebx
5161         movl    52(%esp),%eax
5162         addl    %ebp,%ebx
5163
5164         movl    %ecx,%ebp
5165         xorl    60(%esp),%eax
5166         xorl    %edx,%ebp
5167         xorl    20(%esp),%eax
5168         xorl    %edi,%ebp
5169         xorl    40(%esp),%eax
5170         roll    $1,%eax
5171         addl    %ebp,%esi
5172         rorl    $2,%ecx
5173         movl    %ebx,%ebp
5174         roll    $5,%ebp
5175         leal    3395469782(%eax,%esi,1),%eax
5176         movl    56(%esp),%esi
5177         addl    %ebp,%eax
5178
5179         movl    %ebx,%ebp
5180         xorl    (%esp),%esi
5181         xorl    %ecx,%ebp
5182         xorl    24(%esp),%esi
5183         xorl    %edx,%ebp
5184         xorl    44(%esp),%esi
5185         roll    $1,%esi
5186         addl    %ebp,%edi
5187         rorl    $2,%ebx
5188         movl    %eax,%ebp
5189         roll    $5,%ebp
5190         leal    3395469782(%esi,%edi,1),%esi
5191         movl    60(%esp),%edi
5192         addl    %ebp,%esi
5193
5194         movl    %eax,%ebp
5195         xorl    4(%esp),%edi
5196         xorl    %ebx,%ebp
5197         xorl    28(%esp),%edi
5198         xorl    %ecx,%ebp
5199         xorl    48(%esp),%edi
5200         roll    $1,%edi
5201         addl    %ebp,%edx
5202         rorl    $2,%eax
5203         movl    %esi,%ebp
5204         roll    $5,%ebp
5205         leal    3395469782(%edi,%edx,1),%edi
5206         addl    %ebp,%edi
5207         movl    96(%esp),%ebp
5208         movl    100(%esp),%edx
5209         addl    (%ebp),%edi
5210         addl    4(%ebp),%esi
5211         addl    8(%ebp),%eax
5212         addl    12(%ebp),%ebx
5213         addl    16(%ebp),%ecx
5214         movl    %edi,(%ebp)
5215         addl    $64,%edx
5216         movl    %esi,4(%ebp)
5217         cmpl    104(%esp),%edx
5218         movl    %eax,8(%ebp)
5219         movl    %ecx,%edi
5220         movl    %ebx,12(%ebp)
5221         movl    %edx,%esi
5222         movl    %ecx,16(%ebp)
5223         jb      .L002loop
5224         addl    $76,%esp
5225         popl    %edi
5226         popl    %esi
5227         popl    %ebx
5228         popl    %ebp
5229         ret
5230 .size   sha1_block_data_order,.-.L_sha1_block_data_order_begin
5231 .type   _sha1_block_data_order_ssse3,@function
5232 .align  16
5233 _sha1_block_data_order_ssse3:
5234         pushl   %ebp
5235         pushl   %ebx
5236         pushl   %esi
5237         pushl   %edi
5238         call    .L003pic_point
5239 .L003pic_point:
5240         popl    %ebp
5241         leal    .LK_XX_XX-.L003pic_point(%ebp),%ebp
5242 .Lssse3_shortcut:
5243         movdqa  (%ebp),%xmm7
5244         movdqa  16(%ebp),%xmm0
5245         movdqa  32(%ebp),%xmm1
5246         movdqa  48(%ebp),%xmm2
5247         movdqa  64(%ebp),%xmm6
5248         movl    20(%esp),%edi
5249         movl    24(%esp),%ebp
5250         movl    28(%esp),%edx
5251         movl    %esp,%esi
5252         subl    $208,%esp
5253         andl    $-64,%esp
5254         movdqa  %xmm0,112(%esp)
5255         movdqa  %xmm1,128(%esp)
5256         movdqa  %xmm2,144(%esp)
5257         shll    $6,%edx
5258         movdqa  %xmm7,160(%esp)
5259         addl    %ebp,%edx
5260         movdqa  %xmm6,176(%esp)
5261         addl    $64,%ebp
5262         movl    %edi,192(%esp)
5263         movl    %ebp,196(%esp)
5264         movl    %edx,200(%esp)
5265         movl    %esi,204(%esp)
5266         movl    (%edi),%eax
5267         movl    4(%edi),%ebx
5268         movl    8(%edi),%ecx
5269         movl    12(%edi),%edx
5270         movl    16(%edi),%edi
5271         movl    %ebx,%esi
5272         movdqu  -64(%ebp),%xmm0
5273         movdqu  -48(%ebp),%xmm1
5274         movdqu  -32(%ebp),%xmm2
5275         movdqu  -16(%ebp),%xmm3
5276 .byte   102,15,56,0,198
5277 .byte   102,15,56,0,206
5278 .byte   102,15,56,0,214
5279         movdqa  %xmm7,96(%esp)
5280 .byte   102,15,56,0,222
5281         paddd   %xmm7,%xmm0
5282         paddd   %xmm7,%xmm1
5283         paddd   %xmm7,%xmm2
5284         movdqa  %xmm0,(%esp)
5285         psubd   %xmm7,%xmm0
5286         movdqa  %xmm1,16(%esp)
5287         psubd   %xmm7,%xmm1
5288         movdqa  %xmm2,32(%esp)
5289         psubd   %xmm7,%xmm2
5290         movdqa  %xmm1,%xmm4
5291         jmp     .L004loop
5292 .align  16
5293 .L004loop:
5294         addl    (%esp),%edi
5295         xorl    %edx,%ecx
5296 .byte   102,15,58,15,224,8
5297         movdqa  %xmm3,%xmm6
5298         movl    %eax,%ebp
5299         roll    $5,%eax
5300         paddd   %xmm3,%xmm7
5301         movdqa  %xmm0,64(%esp)
5302         andl    %ecx,%esi
5303         xorl    %edx,%ecx
5304         psrldq  $4,%xmm6
5305         xorl    %edx,%esi
5306         addl    %eax,%edi
5307         pxor    %xmm0,%xmm4
5308         rorl    $2,%ebx
5309         addl    %esi,%edi
5310         pxor    %xmm2,%xmm6
5311         addl    4(%esp),%edx
5312         xorl    %ecx,%ebx
5313         movl    %edi,%esi
5314         roll    $5,%edi
5315         pxor    %xmm6,%xmm4
5316         andl    %ebx,%ebp
5317         xorl    %ecx,%ebx
5318         movdqa  %xmm7,48(%esp)
5319         xorl    %ecx,%ebp
5320         addl    %edi,%edx
5321         movdqa  %xmm4,%xmm0
5322         movdqa  %xmm4,%xmm6
5323         rorl    $7,%eax
5324         addl    %ebp,%edx
5325         addl    8(%esp),%ecx
5326         xorl    %ebx,%eax
5327         pslldq  $12,%xmm0
5328         paddd   %xmm4,%xmm4
5329         movl    %edx,%ebp
5330         roll    $5,%edx
5331         andl    %eax,%esi
5332         xorl    %ebx,%eax
5333         psrld   $31,%xmm6
5334         xorl    %ebx,%esi
5335         addl    %edx,%ecx
5336         movdqa  %xmm0,%xmm7
5337         rorl    $7,%edi
5338         addl    %esi,%ecx
5339         psrld   $30,%xmm0
5340         por     %xmm6,%xmm4
5341         addl    12(%esp),%ebx
5342         xorl    %eax,%edi
5343         movl    %ecx,%esi
5344         roll    $5,%ecx
5345         pslld   $2,%xmm7
5346         pxor    %xmm0,%xmm4
5347         andl    %edi,%ebp
5348         xorl    %eax,%edi
5349         movdqa  96(%esp),%xmm0
5350         xorl    %eax,%ebp
5351         addl    %ecx,%ebx
5352         pxor    %xmm7,%xmm4
5353         movdqa  %xmm2,%xmm5
5354         rorl    $7,%edx
5355         addl    %ebp,%ebx
5356         addl    16(%esp),%eax
5357         xorl    %edi,%edx
5358 .byte   102,15,58,15,233,8
5359         movdqa  %xmm4,%xmm7
5360         movl    %ebx,%ebp
5361         roll    $5,%ebx
5362         paddd   %xmm4,%xmm0
5363         movdqa  %xmm1,80(%esp)
5364         andl    %edx,%esi
5365         xorl    %edi,%edx
5366         psrldq  $4,%xmm7
5367         xorl    %edi,%esi
5368         addl    %ebx,%eax
5369         pxor    %xmm1,%xmm5
5370         rorl    $7,%ecx
5371         addl    %esi,%eax
5372         pxor    %xmm3,%xmm7
5373         addl    20(%esp),%edi
5374         xorl    %edx,%ecx
5375         movl    %eax,%esi
5376         roll    $5,%eax
5377         pxor    %xmm7,%xmm5
5378         andl    %ecx,%ebp
5379         xorl    %edx,%ecx
5380         movdqa  %xmm0,(%esp)
5381         xorl    %edx,%ebp
5382         addl    %eax,%edi
5383         movdqa  %xmm5,%xmm1
5384         movdqa  %xmm5,%xmm7
5385         rorl    $7,%ebx
5386         addl    %ebp,%edi
5387         addl    24(%esp),%edx
5388         xorl    %ecx,%ebx
5389         pslldq  $12,%xmm1
5390         paddd   %xmm5,%xmm5
5391         movl    %edi,%ebp
5392         roll    $5,%edi
5393         andl    %ebx,%esi
5394         xorl    %ecx,%ebx
5395         psrld   $31,%xmm7
5396         xorl    %ecx,%esi
5397         addl    %edi,%edx
5398         movdqa  %xmm1,%xmm0
5399         rorl    $7,%eax
5400         addl    %esi,%edx
5401         psrld   $30,%xmm1
5402         por     %xmm7,%xmm5
5403         addl    28(%esp),%ecx
5404         xorl    %ebx,%eax
5405         movl    %edx,%esi
5406         roll    $5,%edx
5407         pslld   $2,%xmm0
5408         pxor    %xmm1,%xmm5
5409         andl    %eax,%ebp
5410         xorl    %ebx,%eax
5411         movdqa  112(%esp),%xmm1
5412         xorl    %ebx,%ebp
5413         addl    %edx,%ecx
5414         pxor    %xmm0,%xmm5
5415         movdqa  %xmm3,%xmm6
5416         rorl    $7,%edi
5417         addl    %ebp,%ecx
5418         addl    32(%esp),%ebx
5419         xorl    %eax,%edi
5420 .byte   102,15,58,15,242,8
5421         movdqa  %xmm5,%xmm0
5422         movl    %ecx,%ebp
5423         roll    $5,%ecx
5424         paddd   %xmm5,%xmm1
5425         movdqa  %xmm2,96(%esp)
5426         andl    %edi,%esi
5427         xorl    %eax,%edi
5428         psrldq  $4,%xmm0
5429         xorl    %eax,%esi
5430         addl    %ecx,%ebx
5431         pxor    %xmm2,%xmm6
5432         rorl    $7,%edx
5433         addl    %esi,%ebx
5434         pxor    %xmm4,%xmm0
5435         addl    36(%esp),%eax
5436         xorl    %edi,%edx
5437         movl    %ebx,%esi
5438         roll    $5,%ebx
5439         pxor    %xmm0,%xmm6
5440         andl    %edx,%ebp
5441         xorl    %edi,%edx
5442         movdqa  %xmm1,16(%esp)
5443         xorl    %edi,%ebp
5444         addl    %ebx,%eax
5445         movdqa  %xmm6,%xmm2
5446         movdqa  %xmm6,%xmm0
5447         rorl    $7,%ecx
5448         addl    %ebp,%eax
5449         addl    40(%esp),%edi
5450         xorl    %edx,%ecx
5451         pslldq  $12,%xmm2
5452         paddd   %xmm6,%xmm6
5453         movl    %eax,%ebp
5454         roll    $5,%eax
5455         andl    %ecx,%esi
5456         xorl    %edx,%ecx
5457         psrld   $31,%xmm0
5458         xorl    %edx,%esi
5459         addl    %eax,%edi
5460         movdqa  %xmm2,%xmm1
5461         rorl    $7,%ebx
5462         addl    %esi,%edi
5463         psrld   $30,%xmm2
5464         por     %xmm0,%xmm6
5465         addl    44(%esp),%edx
5466         xorl    %ecx,%ebx
5467         movdqa  64(%esp),%xmm0
5468         movl    %edi,%esi
5469         roll    $5,%edi
5470         pslld   $2,%xmm1
5471         pxor    %xmm2,%xmm6
5472         andl    %ebx,%ebp
5473         xorl    %ecx,%ebx
5474         movdqa  112(%esp),%xmm2
5475         xorl    %ecx,%ebp
5476         addl    %edi,%edx
5477         pxor    %xmm1,%xmm6
5478         movdqa  %xmm4,%xmm7
5479         rorl    $7,%eax
5480         addl    %ebp,%edx
5481         addl    48(%esp),%ecx
5482         xorl    %ebx,%eax
5483 .byte   102,15,58,15,251,8
5484         movdqa  %xmm6,%xmm1
5485         movl    %edx,%ebp
5486         roll    $5,%edx
5487         paddd   %xmm6,%xmm2
5488         movdqa  %xmm3,64(%esp)
5489         andl    %eax,%esi
5490         xorl    %ebx,%eax
5491         psrldq  $4,%xmm1
5492         xorl    %ebx,%esi
5493         addl    %edx,%ecx
5494         pxor    %xmm3,%xmm7
5495         rorl    $7,%edi
5496         addl    %esi,%ecx
5497         pxor    %xmm5,%xmm1
5498         addl    52(%esp),%ebx
5499         xorl    %eax,%edi
5500         movl    %ecx,%esi
5501         roll    $5,%ecx
5502         pxor    %xmm1,%xmm7
5503         andl    %edi,%ebp
5504         xorl    %eax,%edi
5505         movdqa  %xmm2,32(%esp)
5506         xorl    %eax,%ebp
5507         addl    %ecx,%ebx
5508         movdqa  %xmm7,%xmm3
5509         movdqa  %xmm7,%xmm1
5510         rorl    $7,%edx
5511         addl    %ebp,%ebx
5512         addl    56(%esp),%eax
5513         xorl    %edi,%edx
5514         pslldq  $12,%xmm3
5515         paddd   %xmm7,%xmm7
5516         movl    %ebx,%ebp
5517         roll    $5,%ebx
5518         andl    %edx,%esi
5519         xorl    %edi,%edx
5520         psrld   $31,%xmm1
5521         xorl    %edi,%esi
5522         addl    %ebx,%eax
5523         movdqa  %xmm3,%xmm2
5524         rorl    $7,%ecx
5525         addl    %esi,%eax
5526         psrld   $30,%xmm3
5527         por     %xmm1,%xmm7
5528         addl    60(%esp),%edi
5529         xorl    %edx,%ecx
5530         movdqa  80(%esp),%xmm1
5531         movl    %eax,%esi
5532         roll    $5,%eax
5533         pslld   $2,%xmm2
5534         pxor    %xmm3,%xmm7
5535         andl    %ecx,%ebp
5536         xorl    %edx,%ecx
5537         movdqa  112(%esp),%xmm3
5538         xorl    %edx,%ebp
5539         addl    %eax,%edi
5540         pxor    %xmm2,%xmm7
5541         rorl    $7,%ebx
5542         addl    %ebp,%edi
5543         movdqa  %xmm7,%xmm2
5544         addl    (%esp),%edx
5545         pxor    %xmm4,%xmm0
5546 .byte   102,15,58,15,214,8
5547         xorl    %ecx,%ebx
5548         movl    %edi,%ebp
5549         roll    $5,%edi
5550         pxor    %xmm1,%xmm0
5551         movdqa  %xmm4,80(%esp)
5552         andl    %ebx,%esi
5553         xorl    %ecx,%ebx
5554         movdqa  %xmm3,%xmm4
5555         paddd   %xmm7,%xmm3
5556         xorl    %ecx,%esi
5557         addl    %edi,%edx
5558         pxor    %xmm2,%xmm0
5559         rorl    $7,%eax
5560         addl    %esi,%edx
5561         addl    4(%esp),%ecx
5562         xorl    %ebx,%eax
5563         movdqa  %xmm0,%xmm2
5564         movdqa  %xmm3,48(%esp)
5565         movl    %edx,%esi
5566         roll    $5,%edx
5567         andl    %eax,%ebp
5568         xorl    %ebx,%eax
5569         pslld   $2,%xmm0
5570         xorl    %ebx,%ebp
5571         addl    %edx,%ecx
5572         psrld   $30,%xmm2
5573         rorl    $7,%edi
5574         addl    %ebp,%ecx
5575         addl    8(%esp),%ebx
5576         xorl    %eax,%edi
5577         movl    %ecx,%ebp
5578         roll    $5,%ecx
5579         por     %xmm2,%xmm0
5580         andl    %edi,%esi
5581         xorl    %eax,%edi
5582         movdqa  96(%esp),%xmm2
5583         xorl    %eax,%esi
5584         addl    %ecx,%ebx
5585         rorl    $7,%edx
5586         addl    %esi,%ebx
5587         addl    12(%esp),%eax
5588         movdqa  %xmm0,%xmm3
5589         xorl    %edi,%edx
5590         movl    %ebx,%esi
5591         roll    $5,%ebx
5592         andl    %edx,%ebp
5593         xorl    %edi,%edx
5594         xorl    %edi,%ebp
5595         addl    %ebx,%eax
5596         rorl    $7,%ecx
5597         addl    %ebp,%eax
5598         addl    16(%esp),%edi
5599         pxor    %xmm5,%xmm1
5600 .byte   102,15,58,15,223,8
5601         xorl    %edx,%esi
5602         movl    %eax,%ebp
5603         roll    $5,%eax
5604         pxor    %xmm2,%xmm1
5605         movdqa  %xmm5,96(%esp)
5606         xorl    %ecx,%esi
5607         addl    %eax,%edi
5608         movdqa  %xmm4,%xmm5
5609         paddd   %xmm0,%xmm4
5610         rorl    $7,%ebx
5611         addl    %esi,%edi
5612         pxor    %xmm3,%xmm1
5613         addl    20(%esp),%edx
5614         xorl    %ecx,%ebp
5615         movl    %edi,%esi
5616         roll    $5,%edi
5617         movdqa  %xmm1,%xmm3
5618         movdqa  %xmm4,(%esp)
5619         xorl    %ebx,%ebp
5620         addl    %edi,%edx
5621         rorl    $7,%eax
5622         addl    %ebp,%edx
5623         pslld   $2,%xmm1
5624         addl    24(%esp),%ecx
5625         xorl    %ebx,%esi
5626         psrld   $30,%xmm3
5627         movl    %edx,%ebp
5628         roll    $5,%edx
5629         xorl    %eax,%esi
5630         addl    %edx,%ecx
5631         rorl    $7,%edi
5632         addl    %esi,%ecx
5633         por     %xmm3,%xmm1
5634         addl    28(%esp),%ebx
5635         xorl    %eax,%ebp
5636         movdqa  64(%esp),%xmm3
5637         movl    %ecx,%esi
5638         roll    $5,%ecx
5639         xorl    %edi,%ebp
5640         addl    %ecx,%ebx
5641         rorl    $7,%edx
5642         movdqa  %xmm1,%xmm4
5643         addl    %ebp,%ebx
5644         addl    32(%esp),%eax
5645         pxor    %xmm6,%xmm2
5646 .byte   102,15,58,15,224,8
5647         xorl    %edi,%esi
5648         movl    %ebx,%ebp
5649         roll    $5,%ebx
5650         pxor    %xmm3,%xmm2
5651         movdqa  %xmm6,64(%esp)
5652         xorl    %edx,%esi
5653         addl    %ebx,%eax
5654         movdqa  128(%esp),%xmm6
5655         paddd   %xmm1,%xmm5
5656         rorl    $7,%ecx
5657         addl    %esi,%eax
5658         pxor    %xmm4,%xmm2
5659         addl    36(%esp),%edi
5660         xorl    %edx,%ebp
5661         movl    %eax,%esi
5662         roll    $5,%eax
5663         movdqa  %xmm2,%xmm4
5664         movdqa  %xmm5,16(%esp)
5665         xorl    %ecx,%ebp
5666         addl    %eax,%edi
5667         rorl    $7,%ebx
5668         addl    %ebp,%edi
5669         pslld   $2,%xmm2
5670         addl    40(%esp),%edx
5671         xorl    %ecx,%esi
5672         psrld   $30,%xmm4
5673         movl    %edi,%ebp
5674         roll    $5,%edi
5675         xorl    %ebx,%esi
5676         addl    %edi,%edx
5677         rorl    $7,%eax
5678         addl    %esi,%edx
5679         por     %xmm4,%xmm2
5680         addl    44(%esp),%ecx
5681         xorl    %ebx,%ebp
5682         movdqa  80(%esp),%xmm4
5683         movl    %edx,%esi
5684         roll    $5,%edx
5685         xorl    %eax,%ebp
5686         addl    %edx,%ecx
5687         rorl    $7,%edi
5688         movdqa  %xmm2,%xmm5
5689         addl    %ebp,%ecx
5690         addl    48(%esp),%ebx
5691         pxor    %xmm7,%xmm3
5692 .byte   102,15,58,15,233,8
5693         xorl    %eax,%esi
5694         movl    %ecx,%ebp
5695         roll    $5,%ecx
5696         pxor    %xmm4,%xmm3
5697         movdqa  %xmm7,80(%esp)
5698         xorl    %edi,%esi
5699         addl    %ecx,%ebx
5700         movdqa  %xmm6,%xmm7
5701         paddd   %xmm2,%xmm6
5702         rorl    $7,%edx
5703         addl    %esi,%ebx
5704         pxor    %xmm5,%xmm3
5705         addl    52(%esp),%eax
5706         xorl    %edi,%ebp
5707         movl    %ebx,%esi
5708         roll    $5,%ebx
5709         movdqa  %xmm3,%xmm5
5710         movdqa  %xmm6,32(%esp)
5711         xorl    %edx,%ebp
5712         addl    %ebx,%eax
5713         rorl    $7,%ecx
5714         addl    %ebp,%eax
5715         pslld   $2,%xmm3
5716         addl    56(%esp),%edi
5717         xorl    %edx,%esi
5718         psrld   $30,%xmm5
5719         movl    %eax,%ebp
5720         roll    $5,%eax
5721         xorl    %ecx,%esi
5722         addl    %eax,%edi
5723         rorl    $7,%ebx
5724         addl    %esi,%edi
5725         por     %xmm5,%xmm3
5726         addl    60(%esp),%edx
5727         xorl    %ecx,%ebp
5728         movdqa  96(%esp),%xmm5
5729         movl    %edi,%esi
5730         roll    $5,%edi
5731         xorl    %ebx,%ebp
5732         addl    %edi,%edx
5733         rorl    $7,%eax
5734         movdqa  %xmm3,%xmm6
5735         addl    %ebp,%edx
5736         addl    (%esp),%ecx
5737         pxor    %xmm0,%xmm4
5738 .byte   102,15,58,15,242,8
5739         xorl    %ebx,%esi
5740         movl    %edx,%ebp
5741         roll    $5,%edx
5742         pxor    %xmm5,%xmm4
5743         movdqa  %xmm0,96(%esp)
5744         xorl    %eax,%esi
5745         addl    %edx,%ecx
5746         movdqa  %xmm7,%xmm0
5747         paddd   %xmm3,%xmm7
5748         rorl    $7,%edi
5749         addl    %esi,%ecx
5750         pxor    %xmm6,%xmm4
5751         addl    4(%esp),%ebx
5752         xorl    %eax,%ebp
5753         movl    %ecx,%esi
5754         roll    $5,%ecx
5755         movdqa  %xmm4,%xmm6
5756         movdqa  %xmm7,48(%esp)
5757         xorl    %edi,%ebp
5758         addl    %ecx,%ebx
5759         rorl    $7,%edx
5760         addl    %ebp,%ebx
5761         pslld   $2,%xmm4
5762         addl    8(%esp),%eax
5763         xorl    %edi,%esi
5764         psrld   $30,%xmm6
5765         movl    %ebx,%ebp
5766         roll    $5,%ebx
5767         xorl    %edx,%esi
5768         addl    %ebx,%eax
5769         rorl    $7,%ecx
5770         addl    %esi,%eax
5771         por     %xmm6,%xmm4
5772         addl    12(%esp),%edi
5773         xorl    %edx,%ebp
5774         movdqa  64(%esp),%xmm6
5775         movl    %eax,%esi
5776         roll    $5,%eax
5777         xorl    %ecx,%ebp
5778         addl    %eax,%edi
5779         rorl    $7,%ebx
5780         movdqa  %xmm4,%xmm7
5781         addl    %ebp,%edi
5782         addl    16(%esp),%edx
5783         pxor    %xmm1,%xmm5
5784 .byte   102,15,58,15,251,8
5785         xorl    %ecx,%esi
5786         movl    %edi,%ebp
5787         roll    $5,%edi
5788         pxor    %xmm6,%xmm5
5789         movdqa  %xmm1,64(%esp)
5790         xorl    %ebx,%esi
5791         addl    %edi,%edx
5792         movdqa  %xmm0,%xmm1
5793         paddd   %xmm4,%xmm0
5794         rorl    $7,%eax
5795         addl    %esi,%edx
5796         pxor    %xmm7,%xmm5
5797         addl    20(%esp),%ecx
5798         xorl    %ebx,%ebp
5799         movl    %edx,%esi
5800         roll    $5,%edx
5801         movdqa  %xmm5,%xmm7
5802         movdqa  %xmm0,(%esp)
5803         xorl    %eax,%ebp
5804         addl    %edx,%ecx
5805         rorl    $7,%edi
5806         addl    %ebp,%ecx
5807         pslld   $2,%xmm5
5808         addl    24(%esp),%ebx
5809         xorl    %eax,%esi
5810         psrld   $30,%xmm7
5811         movl    %ecx,%ebp
5812         roll    $5,%ecx
5813         xorl    %edi,%esi
5814         addl    %ecx,%ebx
5815         rorl    $7,%edx
5816         addl    %esi,%ebx
5817         por     %xmm7,%xmm5
5818         addl    28(%esp),%eax
5819         xorl    %edi,%ebp
5820         movdqa  80(%esp),%xmm7
5821         movl    %ebx,%esi
5822         roll    $5,%ebx
5823         xorl    %edx,%ebp
5824         addl    %ebx,%eax
5825         rorl    $7,%ecx
5826         movdqa  %xmm5,%xmm0
5827         addl    %ebp,%eax
5828         movl    %ecx,%ebp
5829         pxor    %xmm2,%xmm6
5830 .byte   102,15,58,15,196,8
5831         xorl    %edx,%ecx
5832         addl    32(%esp),%edi
5833         andl    %edx,%ebp
5834         pxor    %xmm7,%xmm6
5835         movdqa  %xmm2,80(%esp)
5836         andl    %ecx,%esi
5837         rorl    $7,%ebx
5838         movdqa  %xmm1,%xmm2
5839         paddd   %xmm5,%xmm1
5840         addl    %ebp,%edi
5841         movl    %eax,%ebp
5842         pxor    %xmm0,%xmm6
5843         roll    $5,%eax
5844         addl    %esi,%edi
5845         xorl    %edx,%ecx
5846         addl    %eax,%edi
5847         movdqa  %xmm6,%xmm0
5848         movdqa  %xmm1,16(%esp)
5849         movl    %ebx,%esi
5850         xorl    %ecx,%ebx
5851         addl    36(%esp),%edx
5852         andl    %ecx,%esi
5853         pslld   $2,%xmm6
5854         andl    %ebx,%ebp
5855         rorl    $7,%eax
5856         psrld   $30,%xmm0
5857         addl    %esi,%edx
5858         movl    %edi,%esi
5859         roll    $5,%edi
5860         addl    %ebp,%edx
5861         xorl    %ecx,%ebx
5862         addl    %edi,%edx
5863         por     %xmm0,%xmm6
5864         movl    %eax,%ebp
5865         xorl    %ebx,%eax
5866         movdqa  96(%esp),%xmm0
5867         addl    40(%esp),%ecx
5868         andl    %ebx,%ebp
5869         andl    %eax,%esi
5870         rorl    $7,%edi
5871         addl    %ebp,%ecx
5872         movdqa  %xmm6,%xmm1
5873         movl    %edx,%ebp
5874         roll    $5,%edx
5875         addl    %esi,%ecx
5876         xorl    %ebx,%eax
5877         addl    %edx,%ecx
5878         movl    %edi,%esi
5879         xorl    %eax,%edi
5880         addl    44(%esp),%ebx
5881         andl    %eax,%esi
5882         andl    %edi,%ebp
5883         rorl    $7,%edx
5884         addl    %esi,%ebx
5885         movl    %ecx,%esi
5886         roll    $5,%ecx
5887         addl    %ebp,%ebx
5888         xorl    %eax,%edi
5889         addl    %ecx,%ebx
5890         movl    %edx,%ebp
5891         pxor    %xmm3,%xmm7
5892 .byte   102,15,58,15,205,8
5893         xorl    %edi,%edx
5894         addl    48(%esp),%eax
5895         andl    %edi,%ebp
5896         pxor    %xmm0,%xmm7
5897         movdqa  %xmm3,96(%esp)
5898         andl    %edx,%esi
5899         rorl    $7,%ecx
5900         movdqa  144(%esp),%xmm3
5901         paddd   %xmm6,%xmm2
5902         addl    %ebp,%eax
5903         movl    %ebx,%ebp
5904         pxor    %xmm1,%xmm7
5905         roll    $5,%ebx
5906         addl    %esi,%eax
5907         xorl    %edi,%edx
5908         addl    %ebx,%eax
5909         movdqa  %xmm7,%xmm1
5910         movdqa  %xmm2,32(%esp)
5911         movl    %ecx,%esi
5912         xorl    %edx,%ecx
5913         addl    52(%esp),%edi
5914         andl    %edx,%esi
5915         pslld   $2,%xmm7
5916         andl    %ecx,%ebp
5917         rorl    $7,%ebx
5918         psrld   $30,%xmm1
5919         addl    %esi,%edi
5920         movl    %eax,%esi
5921         roll    $5,%eax
5922         addl    %ebp,%edi
5923         xorl    %edx,%ecx
5924         addl    %eax,%edi
5925         por     %xmm1,%xmm7
5926         movl    %ebx,%ebp
5927         xorl    %ecx,%ebx
5928         movdqa  64(%esp),%xmm1
5929         addl    56(%esp),%edx
5930         andl    %ecx,%ebp
5931         andl    %ebx,%esi
5932         rorl    $7,%eax
5933         addl    %ebp,%edx
5934         movdqa  %xmm7,%xmm2
5935         movl    %edi,%ebp
5936         roll    $5,%edi
5937         addl    %esi,%edx
5938         xorl    %ecx,%ebx
5939         addl    %edi,%edx
5940         movl    %eax,%esi
5941         xorl    %ebx,%eax
5942         addl    60(%esp),%ecx
5943         andl    %ebx,%esi
5944         andl    %eax,%ebp
5945         rorl    $7,%edi
5946         addl    %esi,%ecx
5947         movl    %edx,%esi
5948         roll    $5,%edx
5949         addl    %ebp,%ecx
5950         xorl    %ebx,%eax
5951         addl    %edx,%ecx
5952         movl    %edi,%ebp
5953         pxor    %xmm4,%xmm0
5954 .byte   102,15,58,15,214,8
5955         xorl    %eax,%edi
5956         addl    (%esp),%ebx
5957         andl    %eax,%ebp
5958         pxor    %xmm1,%xmm0
5959         movdqa  %xmm4,64(%esp)
5960         andl    %edi,%esi
5961         rorl    $7,%edx
5962         movdqa  %xmm3,%xmm4
5963         paddd   %xmm7,%xmm3
5964         addl    %ebp,%ebx
5965         movl    %ecx,%ebp
5966         pxor    %xmm2,%xmm0
5967         roll    $5,%ecx
5968         addl    %esi,%ebx
5969         xorl    %eax,%edi
5970         addl    %ecx,%ebx
5971         movdqa  %xmm0,%xmm2
5972         movdqa  %xmm3,48(%esp)
5973         movl    %edx,%esi
5974         xorl    %edi,%edx
5975         addl    4(%esp),%eax
5976         andl    %edi,%esi
5977         pslld   $2,%xmm0
5978         andl    %edx,%ebp
5979         rorl    $7,%ecx
5980         psrld   $30,%xmm2
5981         addl    %esi,%eax
5982         movl    %ebx,%esi
5983         roll    $5,%ebx
5984         addl    %ebp,%eax
5985         xorl    %edi,%edx
5986         addl    %ebx,%eax
5987         por     %xmm2,%xmm0
5988         movl    %ecx,%ebp
5989         xorl    %edx,%ecx
5990         movdqa  80(%esp),%xmm2
5991         addl    8(%esp),%edi
5992         andl    %edx,%ebp
5993         andl    %ecx,%esi
5994         rorl    $7,%ebx
5995         addl    %ebp,%edi
5996         movdqa  %xmm0,%xmm3
5997         movl    %eax,%ebp
5998         roll    $5,%eax
5999         addl    %esi,%edi
6000         xorl    %edx,%ecx
6001         addl    %eax,%edi
6002         movl    %ebx,%esi
6003         xorl    %ecx,%ebx
6004         addl    12(%esp),%edx
6005         andl    %ecx,%esi
6006         andl    %ebx,%ebp
6007         rorl    $7,%eax
6008         addl    %esi,%edx
6009         movl    %edi,%esi
6010         roll    $5,%edi
6011         addl    %ebp,%edx
6012         xorl    %ecx,%ebx
6013         addl    %edi,%edx
6014         movl    %eax,%ebp
6015         pxor    %xmm5,%xmm1
6016 .byte   102,15,58,15,223,8
6017         xorl    %ebx,%eax
6018         addl    16(%esp),%ecx
6019         andl    %ebx,%ebp
6020         pxor    %xmm2,%xmm1
6021         movdqa  %xmm5,80(%esp)
6022         andl    %eax,%esi
6023         rorl    $7,%edi
6024         movdqa  %xmm4,%xmm5
6025         paddd   %xmm0,%xmm4
6026         addl    %ebp,%ecx
6027         movl    %edx,%ebp
6028         pxor    %xmm3,%xmm1
6029         roll    $5,%edx
6030         addl    %esi,%ecx
6031         xorl    %ebx,%eax
6032         addl    %edx,%ecx
6033         movdqa  %xmm1,%xmm3
6034         movdqa  %xmm4,(%esp)
6035         movl    %edi,%esi
6036         xorl    %eax,%edi
6037         addl    20(%esp),%ebx
6038         andl    %eax,%esi
6039         pslld   $2,%xmm1
6040         andl    %edi,%ebp
6041         rorl    $7,%edx
6042         psrld   $30,%xmm3
6043         addl    %esi,%ebx
6044         movl    %ecx,%esi
6045         roll    $5,%ecx
6046         addl    %ebp,%ebx
6047         xorl    %eax,%edi
6048         addl    %ecx,%ebx
6049         por     %xmm3,%xmm1
6050         movl    %edx,%ebp
6051         xorl    %edi,%edx
6052         movdqa  96(%esp),%xmm3
6053         addl    24(%esp),%eax
6054         andl    %edi,%ebp
6055         andl    %edx,%esi
6056         rorl    $7,%ecx
6057         addl    %ebp,%eax
6058         movdqa  %xmm1,%xmm4
6059         movl    %ebx,%ebp
6060         roll    $5,%ebx
6061         addl    %esi,%eax
6062         xorl    %edi,%edx
6063         addl    %ebx,%eax
6064         movl    %ecx,%esi
6065         xorl    %edx,%ecx
6066         addl    28(%esp),%edi
6067         andl    %edx,%esi
6068         andl    %ecx,%ebp
6069         rorl    $7,%ebx
6070         addl    %esi,%edi
6071         movl    %eax,%esi
6072         roll    $5,%eax
6073         addl    %ebp,%edi
6074         xorl    %edx,%ecx
6075         addl    %eax,%edi
6076         movl    %ebx,%ebp
6077         pxor    %xmm6,%xmm2
6078 .byte   102,15,58,15,224,8
6079         xorl    %ecx,%ebx
6080         addl    32(%esp),%edx
6081         andl    %ecx,%ebp
6082         pxor    %xmm3,%xmm2
6083         movdqa  %xmm6,96(%esp)
6084         andl    %ebx,%esi
6085         rorl    $7,%eax
6086         movdqa  %xmm5,%xmm6
6087         paddd   %xmm1,%xmm5
6088         addl    %ebp,%edx
6089         movl    %edi,%ebp
6090         pxor    %xmm4,%xmm2
6091         roll    $5,%edi
6092         addl    %esi,%edx
6093         xorl    %ecx,%ebx
6094         addl    %edi,%edx
6095         movdqa  %xmm2,%xmm4
6096         movdqa  %xmm5,16(%esp)
6097         movl    %eax,%esi
6098         xorl    %ebx,%eax
6099         addl    36(%esp),%ecx
6100         andl    %ebx,%esi
6101         pslld   $2,%xmm2
6102         andl    %eax,%ebp
6103         rorl    $7,%edi
6104         psrld   $30,%xmm4
6105         addl    %esi,%ecx
6106         movl    %edx,%esi
6107         roll    $5,%edx
6108         addl    %ebp,%ecx
6109         xorl    %ebx,%eax
6110         addl    %edx,%ecx
6111         por     %xmm4,%xmm2
6112         movl    %edi,%ebp
6113         xorl    %eax,%edi
6114         movdqa  64(%esp),%xmm4
6115         addl    40(%esp),%ebx
6116         andl    %eax,%ebp
6117         andl    %edi,%esi
6118         rorl    $7,%edx
6119         addl    %ebp,%ebx
6120         movdqa  %xmm2,%xmm5
6121         movl    %ecx,%ebp
6122         roll    $5,%ecx
6123         addl    %esi,%ebx
6124         xorl    %eax,%edi
6125         addl    %ecx,%ebx
6126         movl    %edx,%esi
6127         xorl    %edi,%edx
6128         addl    44(%esp),%eax
6129         andl    %edi,%esi
6130         andl    %edx,%ebp
6131         rorl    $7,%ecx
6132         addl    %esi,%eax
6133         movl    %ebx,%esi
6134         roll    $5,%ebx
6135         addl    %ebp,%eax
6136         xorl    %edi,%edx
6137         addl    %ebx,%eax
6138         addl    48(%esp),%edi
6139         pxor    %xmm7,%xmm3
6140 .byte   102,15,58,15,233,8
6141         xorl    %edx,%esi
6142         movl    %eax,%ebp
6143         roll    $5,%eax
6144         pxor    %xmm4,%xmm3
6145         movdqa  %xmm7,64(%esp)
6146         xorl    %ecx,%esi
6147         addl    %eax,%edi
6148         movdqa  %xmm6,%xmm7
6149         paddd   %xmm2,%xmm6
6150         rorl    $7,%ebx
6151         addl    %esi,%edi
6152         pxor    %xmm5,%xmm3
6153         addl    52(%esp),%edx
6154         xorl    %ecx,%ebp
6155         movl    %edi,%esi
6156         roll    $5,%edi
6157         movdqa  %xmm3,%xmm5
6158         movdqa  %xmm6,32(%esp)
6159         xorl    %ebx,%ebp
6160         addl    %edi,%edx
6161         rorl    $7,%eax
6162         addl    %ebp,%edx
6163         pslld   $2,%xmm3
6164         addl    56(%esp),%ecx
6165         xorl    %ebx,%esi
6166         psrld   $30,%xmm5
6167         movl    %edx,%ebp
6168         roll    $5,%edx
6169         xorl    %eax,%esi
6170         addl    %edx,%ecx
6171         rorl    $7,%edi
6172         addl    %esi,%ecx
6173         por     %xmm5,%xmm3
6174         addl    60(%esp),%ebx
6175         xorl    %eax,%ebp
6176         movl    %ecx,%esi
6177         roll    $5,%ecx
6178         xorl    %edi,%ebp
6179         addl    %ecx,%ebx
6180         rorl    $7,%edx
6181         addl    %ebp,%ebx
6182         addl    (%esp),%eax
6183         paddd   %xmm3,%xmm7
6184         xorl    %edi,%esi
6185         movl    %ebx,%ebp
6186         roll    $5,%ebx
6187         xorl    %edx,%esi
6188         movdqa  %xmm7,48(%esp)
6189         addl    %ebx,%eax
6190         rorl    $7,%ecx
6191         addl    %esi,%eax
6192         addl    4(%esp),%edi
6193         xorl    %edx,%ebp
6194         movl    %eax,%esi
6195         roll    $5,%eax
6196         xorl    %ecx,%ebp
6197         addl    %eax,%edi
6198         rorl    $7,%ebx
6199         addl    %ebp,%edi
6200         addl    8(%esp),%edx
6201         xorl    %ecx,%esi
6202         movl    %edi,%ebp
6203         roll    $5,%edi
6204         xorl    %ebx,%esi
6205         addl    %edi,%edx
6206         rorl    $7,%eax
6207         addl    %esi,%edx
6208         addl    12(%esp),%ecx
6209         xorl    %ebx,%ebp
6210         movl    %edx,%esi
6211         roll    $5,%edx
6212         xorl    %eax,%ebp
6213         addl    %edx,%ecx
6214         rorl    $7,%edi
6215         addl    %ebp,%ecx
6216         movl    196(%esp),%ebp
6217         cmpl    200(%esp),%ebp
6218         je      .L005done
6219         movdqa  160(%esp),%xmm7
6220         movdqa  176(%esp),%xmm6
6221         movdqu  (%ebp),%xmm0
6222         movdqu  16(%ebp),%xmm1
6223         movdqu  32(%ebp),%xmm2
6224         movdqu  48(%ebp),%xmm3
6225         addl    $64,%ebp
6226 .byte   102,15,56,0,198
6227         movl    %ebp,196(%esp)
6228         movdqa  %xmm7,96(%esp)
6229         addl    16(%esp),%ebx
6230         xorl    %eax,%esi
6231 .byte   102,15,56,0,206
6232         movl    %ecx,%ebp
6233         roll    $5,%ecx
6234         paddd   %xmm7,%xmm0
6235         xorl    %edi,%esi
6236         addl    %ecx,%ebx
6237         rorl    $7,%edx
6238         addl    %esi,%ebx
6239         movdqa  %xmm0,(%esp)
6240         addl    20(%esp),%eax
6241         xorl    %edi,%ebp
6242         psubd   %xmm7,%xmm0
6243         movl    %ebx,%esi
6244         roll    $5,%ebx
6245         xorl    %edx,%ebp
6246         addl    %ebx,%eax
6247         rorl    $7,%ecx
6248         addl    %ebp,%eax
6249         addl    24(%esp),%edi
6250         xorl    %edx,%esi
6251         movl    %eax,%ebp
6252         roll    $5,%eax
6253         xorl    %ecx,%esi
6254         addl    %eax,%edi
6255         rorl    $7,%ebx
6256         addl    %esi,%edi
6257         addl    28(%esp),%edx
6258         xorl    %ecx,%ebp
6259         movl    %edi,%esi
6260         roll    $5,%edi
6261         xorl    %ebx,%ebp
6262         addl    %edi,%edx
6263         rorl    $7,%eax
6264         addl    %ebp,%edx
6265         addl    32(%esp),%ecx
6266         xorl    %ebx,%esi
6267 .byte   102,15,56,0,214
6268         movl    %edx,%ebp
6269         roll    $5,%edx
6270         paddd   %xmm7,%xmm1
6271         xorl    %eax,%esi
6272         addl    %edx,%ecx
6273         rorl    $7,%edi
6274         addl    %esi,%ecx
6275         movdqa  %xmm1,16(%esp)
6276         addl    36(%esp),%ebx
6277         xorl    %eax,%ebp
6278         psubd   %xmm7,%xmm1
6279         movl    %ecx,%esi
6280         roll    $5,%ecx
6281         xorl    %edi,%ebp
6282         addl    %ecx,%ebx
6283         rorl    $7,%edx
6284         addl    %ebp,%ebx
6285         addl    40(%esp),%eax
6286         xorl    %edi,%esi
6287         movl    %ebx,%ebp
6288         roll    $5,%ebx
6289         xorl    %edx,%esi
6290         addl    %ebx,%eax
6291         rorl    $7,%ecx
6292         addl    %esi,%eax
6293         addl    44(%esp),%edi
6294         xorl    %edx,%ebp
6295         movl    %eax,%esi
6296         roll    $5,%eax
6297         xorl    %ecx,%ebp
6298         addl    %eax,%edi
6299         rorl    $7,%ebx
6300         addl    %ebp,%edi
6301         addl    48(%esp),%edx
6302         xorl    %ecx,%esi
6303 .byte   102,15,56,0,222
6304         movl    %edi,%ebp
6305         roll    $5,%edi
6306         paddd   %xmm7,%xmm2
6307         xorl    %ebx,%esi
6308         addl    %edi,%edx
6309         rorl    $7,%eax
6310         addl    %esi,%edx
6311         movdqa  %xmm2,32(%esp)
6312         addl    52(%esp),%ecx
6313         xorl    %ebx,%ebp
6314         psubd   %xmm7,%xmm2
6315         movl    %edx,%esi
6316         roll    $5,%edx
6317         xorl    %eax,%ebp
6318         addl    %edx,%ecx
6319         rorl    $7,%edi
6320         addl    %ebp,%ecx
6321         addl    56(%esp),%ebx
6322         xorl    %eax,%esi
6323         movl    %ecx,%ebp
6324         roll    $5,%ecx
6325         xorl    %edi,%esi
6326         addl    %ecx,%ebx
6327         rorl    $7,%edx
6328         addl    %esi,%ebx
6329         addl    60(%esp),%eax
6330         xorl    %edi,%ebp
6331         movl    %ebx,%esi
6332         roll    $5,%ebx
6333         xorl    %edx,%ebp
6334         addl    %ebx,%eax
6335         rorl    $7,%ecx
6336         addl    %ebp,%eax
6337         movl    192(%esp),%ebp
6338         addl    (%ebp),%eax
6339         addl    4(%ebp),%esi
6340         addl    8(%ebp),%ecx
6341         movl    %eax,(%ebp)
6342         addl    12(%ebp),%edx
6343         movl    %esi,4(%ebp)
6344         addl    16(%ebp),%edi
6345         movl    %ecx,8(%ebp)
6346         movl    %esi,%ebx
6347         movl    %edx,12(%ebp)
6348         movl    %edi,16(%ebp)
6349         movdqa  %xmm1,%xmm4
6350         jmp     .L004loop
6351 .align  16
6352 .L005done:
6353         addl    16(%esp),%ebx
6354         xorl    %eax,%esi
6355         movl    %ecx,%ebp
6356         roll    $5,%ecx
6357         xorl    %edi,%esi
6358         addl    %ecx,%ebx
6359         rorl    $7,%edx
6360         addl    %esi,%ebx
6361         addl    20(%esp),%eax
6362         xorl    %edi,%ebp
6363         movl    %ebx,%esi
6364         roll    $5,%ebx
6365         xorl    %edx,%ebp
6366         addl    %ebx,%eax
6367         rorl    $7,%ecx
6368         addl    %ebp,%eax
6369         addl    24(%esp),%edi
6370         xorl    %edx,%esi
6371         movl    %eax,%ebp
6372         roll    $5,%eax
6373         xorl    %ecx,%esi
6374         addl    %eax,%edi
6375         rorl    $7,%ebx
6376         addl    %esi,%edi
6377         addl    28(%esp),%edx
6378         xorl    %ecx,%ebp
6379         movl    %edi,%esi
6380         roll    $5,%edi
6381         xorl    %ebx,%ebp
6382         addl    %edi,%edx
6383         rorl    $7,%eax
6384         addl    %ebp,%edx
6385         addl    32(%esp),%ecx
6386         xorl    %ebx,%esi
6387         movl    %edx,%ebp
6388         roll    $5,%edx
6389         xorl    %eax,%esi
6390         addl    %edx,%ecx
6391         rorl    $7,%edi
6392         addl    %esi,%ecx
6393         addl    36(%esp),%ebx
6394         xorl    %eax,%ebp
6395         movl    %ecx,%esi
6396         roll    $5,%ecx
6397         xorl    %edi,%ebp
6398         addl    %ecx,%ebx
6399         rorl    $7,%edx
6400         addl    %ebp,%ebx
6401         addl    40(%esp),%eax
6402         xorl    %edi,%esi
6403         movl    %ebx,%ebp
6404         roll    $5,%ebx
6405         xorl    %edx,%esi
6406         addl    %ebx,%eax
6407         rorl    $7,%ecx
6408         addl    %esi,%eax
6409         addl    44(%esp),%edi
6410         xorl    %edx,%ebp
6411         movl    %eax,%esi
6412         roll    $5,%eax
6413         xorl    %ecx,%ebp
6414         addl    %eax,%edi
6415         rorl    $7,%ebx
6416         addl    %ebp,%edi
6417         addl    48(%esp),%edx
6418         xorl    %ecx,%esi
6419         movl    %edi,%ebp
6420         roll    $5,%edi
6421         xorl    %ebx,%esi
6422         addl    %edi,%edx
6423         rorl    $7,%eax
6424         addl    %esi,%edx
6425         addl    52(%esp),%ecx
6426         xorl    %ebx,%ebp
6427         movl    %edx,%esi
6428         roll    $5,%edx
6429         xorl    %eax,%ebp
6430         addl    %edx,%ecx
6431         rorl    $7,%edi
6432         addl    %ebp,%ecx
6433         addl    56(%esp),%ebx
6434         xorl    %eax,%esi
6435         movl    %ecx,%ebp
6436         roll    $5,%ecx
6437         xorl    %edi,%esi
6438         addl    %ecx,%ebx
6439         rorl    $7,%edx
6440         addl    %esi,%ebx
6441         addl    60(%esp),%eax
6442         xorl    %edi,%ebp
6443         movl    %ebx,%esi
6444         roll    $5,%ebx
6445         xorl    %edx,%ebp
6446         addl    %ebx,%eax
6447         rorl    $7,%ecx
6448         addl    %ebp,%eax
6449         movl    192(%esp),%ebp
6450         addl    (%ebp),%eax
6451         movl    204(%esp),%esp
6452         addl    4(%ebp),%esi
6453         addl    8(%ebp),%ecx
6454         movl    %eax,(%ebp)
6455         addl    12(%ebp),%edx
6456         movl    %esi,4(%ebp)
6457         addl    16(%ebp),%edi
6458         movl    %ecx,8(%ebp)
6459         movl    %edx,12(%ebp)
6460         movl    %edi,16(%ebp)
6461         popl    %edi
6462         popl    %esi
6463         popl    %ebx
6464         popl    %ebp
6465         ret
6466 .size   _sha1_block_data_order_ssse3,.-_sha1_block_data_order_ssse3
6467 .type   _sha1_block_data_order_avx,@function
6468 .align  16
6469 _sha1_block_data_order_avx:
6470         pushl   %ebp
6471         pushl   %ebx
6472         pushl   %esi
6473         pushl   %edi
6474         call    .L006pic_point
6475 .L006pic_point:
6476         popl    %ebp
6477         leal    .LK_XX_XX-.L006pic_point(%ebp),%ebp
6478 .Lavx_shortcut:
6479         vzeroall
6480         vmovdqa (%ebp),%xmm7
6481         vmovdqa 16(%ebp),%xmm0
6482         vmovdqa 32(%ebp),%xmm1
6483         vmovdqa 48(%ebp),%xmm2
6484         vmovdqa 64(%ebp),%xmm6
6485         movl    20(%esp),%edi
6486         movl    24(%esp),%ebp
6487         movl    28(%esp),%edx
6488         movl    %esp,%esi
6489         subl    $208,%esp
6490         andl    $-64,%esp
6491         vmovdqa %xmm0,112(%esp)
6492         vmovdqa %xmm1,128(%esp)
6493         vmovdqa %xmm2,144(%esp)
6494         shll    $6,%edx
6495         vmovdqa %xmm7,160(%esp)
6496         addl    %ebp,%edx
6497         vmovdqa %xmm6,176(%esp)
6498         addl    $64,%ebp
6499         movl    %edi,192(%esp)
6500         movl    %ebp,196(%esp)
6501         movl    %edx,200(%esp)
6502         movl    %esi,204(%esp)
6503         movl    (%edi),%eax
6504         movl    4(%edi),%ebx
6505         movl    8(%edi),%ecx
6506         movl    12(%edi),%edx
6507         movl    16(%edi),%edi
6508         movl    %ebx,%esi
6509         vmovdqu -64(%ebp),%xmm0
6510         vmovdqu -48(%ebp),%xmm1
6511         vmovdqu -32(%ebp),%xmm2
6512         vmovdqu -16(%ebp),%xmm3
6513         vpshufb %xmm6,%xmm0,%xmm0
6514         vpshufb %xmm6,%xmm1,%xmm1
6515         vpshufb %xmm6,%xmm2,%xmm2
6516         vmovdqa %xmm7,96(%esp)
6517         vpshufb %xmm6,%xmm3,%xmm3
6518         vpaddd  %xmm7,%xmm0,%xmm4
6519         vpaddd  %xmm7,%xmm1,%xmm5
6520         vpaddd  %xmm7,%xmm2,%xmm6
6521         vmovdqa %xmm4,(%esp)
6522         vmovdqa %xmm5,16(%esp)
6523         vmovdqa %xmm6,32(%esp)
6524         jmp     .L007loop
6525 .align  16
6526 .L007loop:
6527         addl    (%esp),%edi
6528         xorl    %edx,%ecx
6529         vpalignr        $8,%xmm0,%xmm1,%xmm4
6530         movl    %eax,%ebp
6531         shldl   $5,%eax,%eax
6532         vpaddd  %xmm3,%xmm7,%xmm7
6533         vmovdqa %xmm0,64(%esp)
6534         andl    %ecx,%esi
6535         xorl    %edx,%ecx
6536         vpsrldq $4,%xmm3,%xmm6
6537         xorl    %edx,%esi
6538         addl    %eax,%edi
6539         vpxor   %xmm0,%xmm4,%xmm4
6540         shrdl   $2,%ebx,%ebx
6541         addl    %esi,%edi
6542         vpxor   %xmm2,%xmm6,%xmm6
6543         addl    4(%esp),%edx
6544         xorl    %ecx,%ebx
6545         vmovdqa %xmm7,48(%esp)
6546         movl    %edi,%esi
6547         shldl   $5,%edi,%edi
6548         vpxor   %xmm6,%xmm4,%xmm4
6549         andl    %ebx,%ebp
6550         xorl    %ecx,%ebx
6551         xorl    %ecx,%ebp
6552         addl    %edi,%edx
6553         vpsrld  $31,%xmm4,%xmm6
6554         shrdl   $7,%eax,%eax
6555         addl    %ebp,%edx
6556         addl    8(%esp),%ecx
6557         xorl    %ebx,%eax
6558         vpslldq $12,%xmm4,%xmm0
6559         vpaddd  %xmm4,%xmm4,%xmm4
6560         movl    %edx,%ebp
6561         shldl   $5,%edx,%edx
6562         andl    %eax,%esi
6563         xorl    %ebx,%eax
6564         vpsrld  $30,%xmm0,%xmm7
6565         vpor    %xmm6,%xmm4,%xmm4
6566         xorl    %ebx,%esi
6567         addl    %edx,%ecx
6568         shrdl   $7,%edi,%edi
6569         addl    %esi,%ecx
6570         vpslld  $2,%xmm0,%xmm0
6571         addl    12(%esp),%ebx
6572         xorl    %eax,%edi
6573         vpxor   %xmm7,%xmm4,%xmm4
6574         movl    %ecx,%esi
6575         shldl   $5,%ecx,%ecx
6576         andl    %edi,%ebp
6577         xorl    %eax,%edi
6578         vpxor   %xmm0,%xmm4,%xmm4
6579         xorl    %eax,%ebp
6580         addl    %ecx,%ebx
6581         vmovdqa 96(%esp),%xmm0
6582         shrdl   $7,%edx,%edx
6583         addl    %ebp,%ebx
6584         addl    16(%esp),%eax
6585         xorl    %edi,%edx
6586         vpalignr        $8,%xmm1,%xmm2,%xmm5
6587         movl    %ebx,%ebp
6588         shldl   $5,%ebx,%ebx
6589         vpaddd  %xmm4,%xmm0,%xmm0
6590         vmovdqa %xmm1,80(%esp)
6591         andl    %edx,%esi
6592         xorl    %edi,%edx
6593         vpsrldq $4,%xmm4,%xmm7
6594         xorl    %edi,%esi
6595         addl    %ebx,%eax
6596         vpxor   %xmm1,%xmm5,%xmm5
6597         shrdl   $7,%ecx,%ecx
6598         addl    %esi,%eax
6599         vpxor   %xmm3,%xmm7,%xmm7
6600         addl    20(%esp),%edi
6601         xorl    %edx,%ecx
6602         vmovdqa %xmm0,(%esp)
6603         movl    %eax,%esi
6604         shldl   $5,%eax,%eax
6605         vpxor   %xmm7,%xmm5,%xmm5
6606         andl    %ecx,%ebp
6607         xorl    %edx,%ecx
6608         xorl    %edx,%ebp
6609         addl    %eax,%edi
6610         vpsrld  $31,%xmm5,%xmm7
6611         shrdl   $7,%ebx,%ebx
6612         addl    %ebp,%edi
6613         addl    24(%esp),%edx
6614         xorl    %ecx,%ebx
6615         vpslldq $12,%xmm5,%xmm1
6616         vpaddd  %xmm5,%xmm5,%xmm5
6617         movl    %edi,%ebp
6618         shldl   $5,%edi,%edi
6619         andl    %ebx,%esi
6620         xorl    %ecx,%ebx
6621         vpsrld  $30,%xmm1,%xmm0
6622         vpor    %xmm7,%xmm5,%xmm5
6623         xorl    %ecx,%esi
6624         addl    %edi,%edx
6625         shrdl   $7,%eax,%eax
6626         addl    %esi,%edx
6627         vpslld  $2,%xmm1,%xmm1
6628         addl    28(%esp),%ecx
6629         xorl    %ebx,%eax
6630         vpxor   %xmm0,%xmm5,%xmm5
6631         movl    %edx,%esi
6632         shldl   $5,%edx,%edx
6633         andl    %eax,%ebp
6634         xorl    %ebx,%eax
6635         vpxor   %xmm1,%xmm5,%xmm5
6636         xorl    %ebx,%ebp
6637         addl    %edx,%ecx
6638         vmovdqa 112(%esp),%xmm1
6639         shrdl   $7,%edi,%edi
6640         addl    %ebp,%ecx
6641         addl    32(%esp),%ebx
6642         xorl    %eax,%edi
6643         vpalignr        $8,%xmm2,%xmm3,%xmm6
6644         movl    %ecx,%ebp
6645         shldl   $5,%ecx,%ecx
6646         vpaddd  %xmm5,%xmm1,%xmm1
6647         vmovdqa %xmm2,96(%esp)
6648         andl    %edi,%esi
6649         xorl    %eax,%edi
6650         vpsrldq $4,%xmm5,%xmm0
6651         xorl    %eax,%esi
6652         addl    %ecx,%ebx
6653         vpxor   %xmm2,%xmm6,%xmm6
6654         shrdl   $7,%edx,%edx
6655         addl    %esi,%ebx
6656         vpxor   %xmm4,%xmm0,%xmm0
6657         addl    36(%esp),%eax
6658         xorl    %edi,%edx
6659         vmovdqa %xmm1,16(%esp)
6660         movl    %ebx,%esi
6661         shldl   $5,%ebx,%ebx
6662         vpxor   %xmm0,%xmm6,%xmm6
6663         andl    %edx,%ebp
6664         xorl    %edi,%edx
6665         xorl    %edi,%ebp
6666         addl    %ebx,%eax
6667         vpsrld  $31,%xmm6,%xmm0
6668         shrdl   $7,%ecx,%ecx
6669         addl    %ebp,%eax
6670         addl    40(%esp),%edi
6671         xorl    %edx,%ecx
6672         vpslldq $12,%xmm6,%xmm2
6673         vpaddd  %xmm6,%xmm6,%xmm6
6674         movl    %eax,%ebp
6675         shldl   $5,%eax,%eax
6676         andl    %ecx,%esi
6677         xorl    %edx,%ecx
6678         vpsrld  $30,%xmm2,%xmm1
6679         vpor    %xmm0,%xmm6,%xmm6
6680         xorl    %edx,%esi
6681         addl    %eax,%edi
6682         shrdl   $7,%ebx,%ebx
6683         addl    %esi,%edi
6684         vpslld  $2,%xmm2,%xmm2
6685         vmovdqa 64(%esp),%xmm0
6686         addl    44(%esp),%edx
6687         xorl    %ecx,%ebx
6688         vpxor   %xmm1,%xmm6,%xmm6
6689         movl    %edi,%esi
6690         shldl   $5,%edi,%edi
6691         andl    %ebx,%ebp
6692         xorl    %ecx,%ebx
6693         vpxor   %xmm2,%xmm6,%xmm6
6694         xorl    %ecx,%ebp
6695         addl    %edi,%edx
6696         vmovdqa 112(%esp),%xmm2
6697         shrdl   $7,%eax,%eax
6698         addl    %ebp,%edx
6699         addl    48(%esp),%ecx
6700         xorl    %ebx,%eax
6701         vpalignr        $8,%xmm3,%xmm4,%xmm7
6702         movl    %edx,%ebp
6703         shldl   $5,%edx,%edx
6704         vpaddd  %xmm6,%xmm2,%xmm2
6705         vmovdqa %xmm3,64(%esp)
6706         andl    %eax,%esi
6707         xorl    %ebx,%eax
6708         vpsrldq $4,%xmm6,%xmm1
6709         xorl    %ebx,%esi
6710         addl    %edx,%ecx
6711         vpxor   %xmm3,%xmm7,%xmm7
6712         shrdl   $7,%edi,%edi
6713         addl    %esi,%ecx
6714         vpxor   %xmm5,%xmm1,%xmm1
6715         addl    52(%esp),%ebx
6716         xorl    %eax,%edi
6717         vmovdqa %xmm2,32(%esp)
6718         movl    %ecx,%esi
6719         shldl   $5,%ecx,%ecx
6720         vpxor   %xmm1,%xmm7,%xmm7
6721         andl    %edi,%ebp
6722         xorl    %eax,%edi
6723         xorl    %eax,%ebp
6724         addl    %ecx,%ebx
6725         vpsrld  $31,%xmm7,%xmm1
6726         shrdl   $7,%edx,%edx
6727         addl    %ebp,%ebx
6728         addl    56(%esp),%eax
6729         xorl    %edi,%edx
6730         vpslldq $12,%xmm7,%xmm3
6731         vpaddd  %xmm7,%xmm7,%xmm7
6732         movl    %ebx,%ebp
6733         shldl   $5,%ebx,%ebx
6734         andl    %edx,%esi
6735         xorl    %edi,%edx
6736         vpsrld  $30,%xmm3,%xmm2
6737         vpor    %xmm1,%xmm7,%xmm7
6738         xorl    %edi,%esi
6739         addl    %ebx,%eax
6740         shrdl   $7,%ecx,%ecx
6741         addl    %esi,%eax
6742         vpslld  $2,%xmm3,%xmm3
6743         vmovdqa 80(%esp),%xmm1
6744         addl    60(%esp),%edi
6745         xorl    %edx,%ecx
6746         vpxor   %xmm2,%xmm7,%xmm7
6747         movl    %eax,%esi
6748         shldl   $5,%eax,%eax
6749         andl    %ecx,%ebp
6750         xorl    %edx,%ecx
6751         vpxor   %xmm3,%xmm7,%xmm7
6752         xorl    %edx,%ebp
6753         addl    %eax,%edi
6754         vmovdqa 112(%esp),%xmm3
6755         shrdl   $7,%ebx,%ebx
6756         addl    %ebp,%edi
6757         vpalignr        $8,%xmm6,%xmm7,%xmm2
6758         vpxor   %xmm4,%xmm0,%xmm0
6759         addl    (%esp),%edx
6760         xorl    %ecx,%ebx
6761         movl    %edi,%ebp
6762         shldl   $5,%edi,%edi
6763         vpxor   %xmm1,%xmm0,%xmm0
6764         vmovdqa %xmm4,80(%esp)
6765         andl    %ebx,%esi
6766         xorl    %ecx,%ebx
6767         vmovdqa %xmm3,%xmm4
6768         vpaddd  %xmm7,%xmm3,%xmm3
6769         xorl    %ecx,%esi
6770         addl    %edi,%edx
6771         vpxor   %xmm2,%xmm0,%xmm0
6772         shrdl   $7,%eax,%eax
6773         addl    %esi,%edx
6774         addl    4(%esp),%ecx
6775         xorl    %ebx,%eax
6776         vpsrld  $30,%xmm0,%xmm2
6777         vmovdqa %xmm3,48(%esp)
6778         movl    %edx,%esi
6779         shldl   $5,%edx,%edx
6780         andl    %eax,%ebp
6781         xorl    %ebx,%eax
6782         vpslld  $2,%xmm0,%xmm0
6783         xorl    %ebx,%ebp
6784         addl    %edx,%ecx
6785         shrdl   $7,%edi,%edi
6786         addl    %ebp,%ecx
6787         addl    8(%esp),%ebx
6788         xorl    %eax,%edi
6789         movl    %ecx,%ebp
6790         shldl   $5,%ecx,%ecx
6791         vpor    %xmm2,%xmm0,%xmm0
6792         andl    %edi,%esi
6793         xorl    %eax,%edi
6794         vmovdqa 96(%esp),%xmm2
6795         xorl    %eax,%esi
6796         addl    %ecx,%ebx
6797         shrdl   $7,%edx,%edx
6798         addl    %esi,%ebx
6799         addl    12(%esp),%eax
6800         xorl    %edi,%edx
6801         movl    %ebx,%esi
6802         shldl   $5,%ebx,%ebx
6803         andl    %edx,%ebp
6804         xorl    %edi,%edx
6805         xorl    %edi,%ebp
6806         addl    %ebx,%eax
6807         shrdl   $7,%ecx,%ecx
6808         addl    %ebp,%eax
6809         vpalignr        $8,%xmm7,%xmm0,%xmm3
6810         vpxor   %xmm5,%xmm1,%xmm1
6811         addl    16(%esp),%edi
6812         xorl    %edx,%esi
6813         movl    %eax,%ebp
6814         shldl   $5,%eax,%eax
6815         vpxor   %xmm2,%xmm1,%xmm1
6816         vmovdqa %xmm5,96(%esp)
6817         xorl    %ecx,%esi
6818         addl    %eax,%edi
6819         vmovdqa %xmm4,%xmm5
6820         vpaddd  %xmm0,%xmm4,%xmm4
6821         shrdl   $7,%ebx,%ebx
6822         addl    %esi,%edi
6823         vpxor   %xmm3,%xmm1,%xmm1
6824         addl    20(%esp),%edx
6825         xorl    %ecx,%ebp
6826         movl    %edi,%esi
6827         shldl   $5,%edi,%edi
6828         vpsrld  $30,%xmm1,%xmm3
6829         vmovdqa %xmm4,(%esp)
6830         xorl    %ebx,%ebp
6831         addl    %edi,%edx
6832         shrdl   $7,%eax,%eax
6833         addl    %ebp,%edx
6834         vpslld  $2,%xmm1,%xmm1
6835         addl    24(%esp),%ecx
6836         xorl    %ebx,%esi
6837         movl    %edx,%ebp
6838         shldl   $5,%edx,%edx
6839         xorl    %eax,%esi
6840         addl    %edx,%ecx
6841         shrdl   $7,%edi,%edi
6842         addl    %esi,%ecx
6843         vpor    %xmm3,%xmm1,%xmm1
6844         addl    28(%esp),%ebx
6845         xorl    %eax,%ebp
6846         vmovdqa 64(%esp),%xmm3
6847         movl    %ecx,%esi
6848         shldl   $5,%ecx,%ecx
6849         xorl    %edi,%ebp
6850         addl    %ecx,%ebx
6851         shrdl   $7,%edx,%edx
6852         addl    %ebp,%ebx
6853         vpalignr        $8,%xmm0,%xmm1,%xmm4
6854         vpxor   %xmm6,%xmm2,%xmm2
6855         addl    32(%esp),%eax
6856         xorl    %edi,%esi
6857         movl    %ebx,%ebp
6858         shldl   $5,%ebx,%ebx
6859         vpxor   %xmm3,%xmm2,%xmm2
6860         vmovdqa %xmm6,64(%esp)
6861         xorl    %edx,%esi
6862         addl    %ebx,%eax
6863         vmovdqa 128(%esp),%xmm6
6864         vpaddd  %xmm1,%xmm5,%xmm5
6865         shrdl   $7,%ecx,%ecx
6866         addl    %esi,%eax
6867         vpxor   %xmm4,%xmm2,%xmm2
6868         addl    36(%esp),%edi
6869         xorl    %edx,%ebp
6870         movl    %eax,%esi
6871         shldl   $5,%eax,%eax
6872         vpsrld  $30,%xmm2,%xmm4
6873         vmovdqa %xmm5,16(%esp)
6874         xorl    %ecx,%ebp
6875         addl    %eax,%edi
6876         shrdl   $7,%ebx,%ebx
6877         addl    %ebp,%edi
6878         vpslld  $2,%xmm2,%xmm2
6879         addl    40(%esp),%edx
6880         xorl    %ecx,%esi
6881         movl    %edi,%ebp
6882         shldl   $5,%edi,%edi
6883         xorl    %ebx,%esi
6884         addl    %edi,%edx
6885         shrdl   $7,%eax,%eax
6886         addl    %esi,%edx
6887         vpor    %xmm4,%xmm2,%xmm2
6888         addl    44(%esp),%ecx
6889         xorl    %ebx,%ebp
6890         vmovdqa 80(%esp),%xmm4
6891         movl    %edx,%esi
6892         shldl   $5,%edx,%edx
6893         xorl    %eax,%ebp
6894         addl    %edx,%ecx
6895         shrdl   $7,%edi,%edi
6896         addl    %ebp,%ecx
6897         vpalignr        $8,%xmm1,%xmm2,%xmm5
6898         vpxor   %xmm7,%xmm3,%xmm3
6899         addl    48(%esp),%ebx
6900         xorl    %eax,%esi
6901         movl    %ecx,%ebp
6902         shldl   $5,%ecx,%ecx
6903         vpxor   %xmm4,%xmm3,%xmm3
6904         vmovdqa %xmm7,80(%esp)
6905         xorl    %edi,%esi
6906         addl    %ecx,%ebx
6907         vmovdqa %xmm6,%xmm7
6908         vpaddd  %xmm2,%xmm6,%xmm6
6909         shrdl   $7,%edx,%edx
6910         addl    %esi,%ebx
6911         vpxor   %xmm5,%xmm3,%xmm3
6912         addl    52(%esp),%eax
6913         xorl    %edi,%ebp
6914         movl    %ebx,%esi
6915         shldl   $5,%ebx,%ebx
6916         vpsrld  $30,%xmm3,%xmm5
6917         vmovdqa %xmm6,32(%esp)
6918         xorl    %edx,%ebp
6919         addl    %ebx,%eax
6920         shrdl   $7,%ecx,%ecx
6921         addl    %ebp,%eax
6922         vpslld  $2,%xmm3,%xmm3
6923         addl    56(%esp),%edi
6924         xorl    %edx,%esi
6925         movl    %eax,%ebp
6926         shldl   $5,%eax,%eax
6927         xorl    %ecx,%esi
6928         addl    %eax,%edi
6929         shrdl   $7,%ebx,%ebx
6930         addl    %esi,%edi
6931         vpor    %xmm5,%xmm3,%xmm3
6932         addl    60(%esp),%edx
6933         xorl    %ecx,%ebp
6934         vmovdqa 96(%esp),%xmm5
6935         movl    %edi,%esi
6936         shldl   $5,%edi,%edi
6937         xorl    %ebx,%ebp
6938         addl    %edi,%edx
6939         shrdl   $7,%eax,%eax
6940         addl    %ebp,%edx
6941         vpalignr        $8,%xmm2,%xmm3,%xmm6
6942         vpxor   %xmm0,%xmm4,%xmm4
6943         addl    (%esp),%ecx
6944         xorl    %ebx,%esi
6945         movl    %edx,%ebp
6946         shldl   $5,%edx,%edx
6947         vpxor   %xmm5,%xmm4,%xmm4
6948         vmovdqa %xmm0,96(%esp)
6949         xorl    %eax,%esi
6950         addl    %edx,%ecx
6951         vmovdqa %xmm7,%xmm0
6952         vpaddd  %xmm3,%xmm7,%xmm7
6953         shrdl   $7,%edi,%edi
6954         addl    %esi,%ecx
6955         vpxor   %xmm6,%xmm4,%xmm4
6956         addl    4(%esp),%ebx
6957         xorl    %eax,%ebp
6958         movl    %ecx,%esi
6959         shldl   $5,%ecx,%ecx
6960         vpsrld  $30,%xmm4,%xmm6
6961         vmovdqa %xmm7,48(%esp)
6962         xorl    %edi,%ebp
6963         addl    %ecx,%ebx
6964         shrdl   $7,%edx,%edx
6965         addl    %ebp,%ebx
6966         vpslld  $2,%xmm4,%xmm4
6967         addl    8(%esp),%eax
6968         xorl    %edi,%esi
6969         movl    %ebx,%ebp
6970         shldl   $5,%ebx,%ebx
6971         xorl    %edx,%esi
6972         addl    %ebx,%eax
6973         shrdl   $7,%ecx,%ecx
6974         addl    %esi,%eax
6975         vpor    %xmm6,%xmm4,%xmm4
6976         addl    12(%esp),%edi
6977         xorl    %edx,%ebp
6978         vmovdqa 64(%esp),%xmm6
6979         movl    %eax,%esi
6980         shldl   $5,%eax,%eax
6981         xorl    %ecx,%ebp
6982         addl    %eax,%edi
6983         shrdl   $7,%ebx,%ebx
6984         addl    %ebp,%edi
6985         vpalignr        $8,%xmm3,%xmm4,%xmm7
6986         vpxor   %xmm1,%xmm5,%xmm5
6987         addl    16(%esp),%edx
6988         xorl    %ecx,%esi
6989         movl    %edi,%ebp
6990         shldl   $5,%edi,%edi
6991         vpxor   %xmm6,%xmm5,%xmm5
6992         vmovdqa %xmm1,64(%esp)
6993         xorl    %ebx,%esi
6994         addl    %edi,%edx
6995         vmovdqa %xmm0,%xmm1
6996         vpaddd  %xmm4,%xmm0,%xmm0
6997         shrdl   $7,%eax,%eax
6998         addl    %esi,%edx
6999         vpxor   %xmm7,%xmm5,%xmm5
7000         addl    20(%esp),%ecx
7001         xorl    %ebx,%ebp
7002         movl    %edx,%esi
7003         shldl   $5,%edx,%edx
7004         vpsrld  $30,%xmm5,%xmm7
7005         vmovdqa %xmm0,(%esp)
7006         xorl    %eax,%ebp
7007         addl    %edx,%ecx
7008         shrdl   $7,%edi,%edi
7009         addl    %ebp,%ecx
7010         vpslld  $2,%xmm5,%xmm5
7011         addl    24(%esp),%ebx
7012         xorl    %eax,%esi
7013         movl    %ecx,%ebp
7014         shldl   $5,%ecx,%ecx
7015         xorl    %edi,%esi
7016         addl    %ecx,%ebx
7017         shrdl   $7,%edx,%edx
7018         addl    %esi,%ebx
7019         vpor    %xmm7,%xmm5,%xmm5
7020         addl    28(%esp),%eax
7021         xorl    %edi,%ebp
7022         vmovdqa 80(%esp),%xmm7
7023         movl    %ebx,%esi
7024         shldl   $5,%ebx,%ebx
7025         xorl    %edx,%ebp
7026         addl    %ebx,%eax
7027         shrdl   $7,%ecx,%ecx
7028         addl    %ebp,%eax
7029         vpalignr        $8,%xmm4,%xmm5,%xmm0
7030         vpxor   %xmm2,%xmm6,%xmm6
7031         movl    %ecx,%ebp
7032         xorl    %edx,%ecx
7033         addl    32(%esp),%edi
7034         andl    %edx,%ebp
7035         vpxor   %xmm7,%xmm6,%xmm6
7036         vmovdqa %xmm2,80(%esp)
7037         andl    %ecx,%esi
7038         shrdl   $7,%ebx,%ebx
7039         vmovdqa %xmm1,%xmm2
7040         vpaddd  %xmm5,%xmm1,%xmm1
7041         addl    %ebp,%edi
7042         movl    %eax,%ebp
7043         vpxor   %xmm0,%xmm6,%xmm6
7044         shldl   $5,%eax,%eax
7045         addl    %esi,%edi
7046         xorl    %edx,%ecx
7047         addl    %eax,%edi
7048         vpsrld  $30,%xmm6,%xmm0
7049         vmovdqa %xmm1,16(%esp)
7050         movl    %ebx,%esi
7051         xorl    %ecx,%ebx
7052         addl    36(%esp),%edx
7053         andl    %ecx,%esi
7054         vpslld  $2,%xmm6,%xmm6
7055         andl    %ebx,%ebp
7056         shrdl   $7,%eax,%eax
7057         addl    %esi,%edx
7058         movl    %edi,%esi
7059         shldl   $5,%edi,%edi
7060         addl    %ebp,%edx
7061         xorl    %ecx,%ebx
7062         addl    %edi,%edx
7063         vpor    %xmm0,%xmm6,%xmm6
7064         movl    %eax,%ebp
7065         xorl    %ebx,%eax
7066         vmovdqa 96(%esp),%xmm0
7067         addl    40(%esp),%ecx
7068         andl    %ebx,%ebp
7069         andl    %eax,%esi
7070         shrdl   $7,%edi,%edi
7071         addl    %ebp,%ecx
7072         movl    %edx,%ebp
7073         shldl   $5,%edx,%edx
7074         addl    %esi,%ecx
7075         xorl    %ebx,%eax
7076         addl    %edx,%ecx
7077         movl    %edi,%esi
7078         xorl    %eax,%edi
7079         addl    44(%esp),%ebx
7080         andl    %eax,%esi
7081         andl    %edi,%ebp
7082         shrdl   $7,%edx,%edx
7083         addl    %esi,%ebx
7084         movl    %ecx,%esi
7085         shldl   $5,%ecx,%ecx
7086         addl    %ebp,%ebx
7087         xorl    %eax,%edi
7088         addl    %ecx,%ebx
7089         vpalignr        $8,%xmm5,%xmm6,%xmm1
7090         vpxor   %xmm3,%xmm7,%xmm7
7091         movl    %edx,%ebp
7092         xorl    %edi,%edx
7093         addl    48(%esp),%eax
7094         andl    %edi,%ebp
7095         vpxor   %xmm0,%xmm7,%xmm7
7096         vmovdqa %xmm3,96(%esp)
7097         andl    %edx,%esi
7098         shrdl   $7,%ecx,%ecx
7099         vmovdqa 144(%esp),%xmm3
7100         vpaddd  %xmm6,%xmm2,%xmm2
7101         addl    %ebp,%eax
7102         movl    %ebx,%ebp
7103         vpxor   %xmm1,%xmm7,%xmm7
7104         shldl   $5,%ebx,%ebx
7105         addl    %esi,%eax
7106         xorl    %edi,%edx
7107         addl    %ebx,%eax
7108         vpsrld  $30,%xmm7,%xmm1
7109         vmovdqa %xmm2,32(%esp)
7110         movl    %ecx,%esi
7111         xorl    %edx,%ecx
7112         addl    52(%esp),%edi
7113         andl    %edx,%esi
7114         vpslld  $2,%xmm7,%xmm7
7115         andl    %ecx,%ebp
7116         shrdl   $7,%ebx,%ebx
7117         addl    %esi,%edi
7118         movl    %eax,%esi
7119         shldl   $5,%eax,%eax
7120         addl    %ebp,%edi
7121         xorl    %edx,%ecx
7122         addl    %eax,%edi
7123         vpor    %xmm1,%xmm7,%xmm7
7124         movl    %ebx,%ebp
7125         xorl    %ecx,%ebx
7126         vmovdqa 64(%esp),%xmm1
7127         addl    56(%esp),%edx
7128         andl    %ecx,%ebp
7129         andl    %ebx,%esi
7130         shrdl   $7,%eax,%eax
7131         addl    %ebp,%edx
7132         movl    %edi,%ebp
7133         shldl   $5,%edi,%edi
7134         addl    %esi,%edx
7135         xorl    %ecx,%ebx
7136         addl    %edi,%edx
7137         movl    %eax,%esi
7138         xorl    %ebx,%eax
7139         addl    60(%esp),%ecx
7140         andl    %ebx,%esi
7141         andl    %eax,%ebp
7142         shrdl   $7,%edi,%edi
7143         addl    %esi,%ecx
7144         movl    %edx,%esi
7145         shldl   $5,%edx,%edx
7146         addl    %ebp,%ecx
7147         xorl    %ebx,%eax
7148         addl    %edx,%ecx
7149         vpalignr        $8,%xmm6,%xmm7,%xmm2
7150         vpxor   %xmm4,%xmm0,%xmm0
7151         movl    %edi,%ebp
7152         xorl    %eax,%edi
7153         addl    (%esp),%ebx
7154         andl    %eax,%ebp
7155         vpxor   %xmm1,%xmm0,%xmm0
7156         vmovdqa %xmm4,64(%esp)
7157         andl    %edi,%esi
7158         shrdl   $7,%edx,%edx
7159         vmovdqa %xmm3,%xmm4
7160         vpaddd  %xmm7,%xmm3,%xmm3
7161         addl    %ebp,%ebx
7162         movl    %ecx,%ebp
7163         vpxor   %xmm2,%xmm0,%xmm0
7164         shldl   $5,%ecx,%ecx
7165         addl    %esi,%ebx
7166         xorl    %eax,%edi
7167         addl    %ecx,%ebx
7168         vpsrld  $30,%xmm0,%xmm2
7169         vmovdqa %xmm3,48(%esp)
7170         movl    %edx,%esi
7171         xorl    %edi,%edx
7172         addl    4(%esp),%eax
7173         andl    %edi,%esi
7174         vpslld  $2,%xmm0,%xmm0
7175         andl    %edx,%ebp
7176         shrdl   $7,%ecx,%ecx
7177         addl    %esi,%eax
7178         movl    %ebx,%esi
7179         shldl   $5,%ebx,%ebx
7180         addl    %ebp,%eax
7181         xorl    %edi,%edx
7182         addl    %ebx,%eax
7183         vpor    %xmm2,%xmm0,%xmm0
7184         movl    %ecx,%ebp
7185         xorl    %edx,%ecx
7186         vmovdqa 80(%esp),%xmm2
7187         addl    8(%esp),%edi
7188         andl    %edx,%ebp
7189         andl    %ecx,%esi
7190         shrdl   $7,%ebx,%ebx
7191         addl    %ebp,%edi
7192         movl    %eax,%ebp
7193         shldl   $5,%eax,%eax
7194         addl    %esi,%edi
7195         xorl    %edx,%ecx
7196         addl    %eax,%edi
7197         movl    %ebx,%esi
7198         xorl    %ecx,%ebx
7199         addl    12(%esp),%edx
7200         andl    %ecx,%esi
7201         andl    %ebx,%ebp
7202         shrdl   $7,%eax,%eax
7203         addl    %esi,%edx
7204         movl    %edi,%esi
7205         shldl   $5,%edi,%edi
7206         addl    %ebp,%edx
7207         xorl    %ecx,%ebx
7208         addl    %edi,%edx
7209         vpalignr        $8,%xmm7,%xmm0,%xmm3
7210         vpxor   %xmm5,%xmm1,%xmm1
7211         movl    %eax,%ebp
7212         xorl    %ebx,%eax
7213         addl    16(%esp),%ecx
7214         andl    %ebx,%ebp
7215         vpxor   %xmm2,%xmm1,%xmm1
7216         vmovdqa %xmm5,80(%esp)
7217         andl    %eax,%esi
7218         shrdl   $7,%edi,%edi
7219         vmovdqa %xmm4,%xmm5
7220         vpaddd  %xmm0,%xmm4,%xmm4
7221         addl    %ebp,%ecx
7222         movl    %edx,%ebp
7223         vpxor   %xmm3,%xmm1,%xmm1
7224         shldl   $5,%edx,%edx
7225         addl    %esi,%ecx
7226         xorl    %ebx,%eax
7227         addl    %edx,%ecx
7228         vpsrld  $30,%xmm1,%xmm3
7229         vmovdqa %xmm4,(%esp)
7230         movl    %edi,%esi
7231         xorl    %eax,%edi
7232         addl    20(%esp),%ebx
7233         andl    %eax,%esi
7234         vpslld  $2,%xmm1,%xmm1
7235         andl    %edi,%ebp
7236         shrdl   $7,%edx,%edx
7237         addl    %esi,%ebx
7238         movl    %ecx,%esi
7239         shldl   $5,%ecx,%ecx
7240         addl    %ebp,%ebx
7241         xorl    %eax,%edi
7242         addl    %ecx,%ebx
7243         vpor    %xmm3,%xmm1,%xmm1
7244         movl    %edx,%ebp
7245         xorl    %edi,%edx
7246         vmovdqa 96(%esp),%xmm3
7247         addl    24(%esp),%eax
7248         andl    %edi,%ebp
7249         andl    %edx,%esi
7250         shrdl   $7,%ecx,%ecx
7251         addl    %ebp,%eax
7252         movl    %ebx,%ebp
7253         shldl   $5,%ebx,%ebx
7254         addl    %esi,%eax
7255         xorl    %edi,%edx
7256         addl    %ebx,%eax
7257         movl    %ecx,%esi
7258         xorl    %edx,%ecx
7259         addl    28(%esp),%edi
7260         andl    %edx,%esi
7261         andl    %ecx,%ebp
7262         shrdl   $7,%ebx,%ebx
7263         addl    %esi,%edi
7264         movl    %eax,%esi
7265         shldl   $5,%eax,%eax
7266         addl    %ebp,%edi
7267         xorl    %edx,%ecx
7268         addl    %eax,%edi
7269         vpalignr        $8,%xmm0,%xmm1,%xmm4
7270         vpxor   %xmm6,%xmm2,%xmm2
7271         movl    %ebx,%ebp
7272         xorl    %ecx,%ebx
7273         addl    32(%esp),%edx
7274         andl    %ecx,%ebp
7275         vpxor   %xmm3,%xmm2,%xmm2
7276         vmovdqa %xmm6,96(%esp)
7277         andl    %ebx,%esi
7278         shrdl   $7,%eax,%eax
7279         vmovdqa %xmm5,%xmm6
7280         vpaddd  %xmm1,%xmm5,%xmm5
7281         addl    %ebp,%edx
7282         movl    %edi,%ebp
7283         vpxor   %xmm4,%xmm2,%xmm2
7284         shldl   $5,%edi,%edi
7285         addl    %esi,%edx
7286         xorl    %ecx,%ebx
7287         addl    %edi,%edx
7288         vpsrld  $30,%xmm2,%xmm4
7289         vmovdqa %xmm5,16(%esp)
7290         movl    %eax,%esi
7291         xorl    %ebx,%eax
7292         addl    36(%esp),%ecx
7293         andl    %ebx,%esi
7294         vpslld  $2,%xmm2,%xmm2
7295         andl    %eax,%ebp
7296         shrdl   $7,%edi,%edi
7297         addl    %esi,%ecx
7298         movl    %edx,%esi
7299         shldl   $5,%edx,%edx
7300         addl    %ebp,%ecx
7301         xorl    %ebx,%eax
7302         addl    %edx,%ecx
7303         vpor    %xmm4,%xmm2,%xmm2
7304         movl    %edi,%ebp
7305         xorl    %eax,%edi
7306         vmovdqa 64(%esp),%xmm4
7307         addl    40(%esp),%ebx
7308         andl    %eax,%ebp
7309         andl    %edi,%esi
7310         shrdl   $7,%edx,%edx
7311         addl    %ebp,%ebx
7312         movl    %ecx,%ebp
7313         shldl   $5,%ecx,%ecx
7314         addl    %esi,%ebx
7315         xorl    %eax,%edi
7316         addl    %ecx,%ebx
7317         movl    %edx,%esi
7318         xorl    %edi,%edx
7319         addl    44(%esp),%eax
7320         andl    %edi,%esi
7321         andl    %edx,%ebp
7322         shrdl   $7,%ecx,%ecx
7323         addl    %esi,%eax
7324         movl    %ebx,%esi
7325         shldl   $5,%ebx,%ebx
7326         addl    %ebp,%eax
7327         xorl    %edi,%edx
7328         addl    %ebx,%eax
7329         vpalignr        $8,%xmm1,%xmm2,%xmm5
7330         vpxor   %xmm7,%xmm3,%xmm3
7331         addl    48(%esp),%edi
7332         xorl    %edx,%esi
7333         movl    %eax,%ebp
7334         shldl   $5,%eax,%eax
7335         vpxor   %xmm4,%xmm3,%xmm3
7336         vmovdqa %xmm7,64(%esp)
7337         xorl    %ecx,%esi
7338         addl    %eax,%edi
7339         vmovdqa %xmm6,%xmm7
7340         vpaddd  %xmm2,%xmm6,%xmm6
7341         shrdl   $7,%ebx,%ebx
7342         addl    %esi,%edi
7343         vpxor   %xmm5,%xmm3,%xmm3
7344         addl    52(%esp),%edx
7345         xorl    %ecx,%ebp
7346         movl    %edi,%esi
7347         shldl   $5,%edi,%edi
7348         vpsrld  $30,%xmm3,%xmm5
7349         vmovdqa %xmm6,32(%esp)
7350         xorl    %ebx,%ebp
7351         addl    %edi,%edx
7352         shrdl   $7,%eax,%eax
7353         addl    %ebp,%edx
7354         vpslld  $2,%xmm3,%xmm3
7355         addl    56(%esp),%ecx
7356         xorl    %ebx,%esi
7357         movl    %edx,%ebp
7358         shldl   $5,%edx,%edx
7359         xorl    %eax,%esi
7360         addl    %edx,%ecx
7361         shrdl   $7,%edi,%edi
7362         addl    %esi,%ecx
7363         vpor    %xmm5,%xmm3,%xmm3
7364         addl    60(%esp),%ebx
7365         xorl    %eax,%ebp
7366         movl    %ecx,%esi
7367         shldl   $5,%ecx,%ecx
7368         xorl    %edi,%ebp
7369         addl    %ecx,%ebx
7370         shrdl   $7,%edx,%edx
7371         addl    %ebp,%ebx
7372         addl    (%esp),%eax
7373         vpaddd  %xmm3,%xmm7,%xmm7
7374         xorl    %edi,%esi
7375         movl    %ebx,%ebp
7376         shldl   $5,%ebx,%ebx
7377         xorl    %edx,%esi
7378         vmovdqa %xmm7,48(%esp)
7379         addl    %ebx,%eax
7380         shrdl   $7,%ecx,%ecx
7381         addl    %esi,%eax
7382         addl    4(%esp),%edi
7383         xorl    %edx,%ebp
7384         movl    %eax,%esi
7385         shldl   $5,%eax,%eax
7386         xorl    %ecx,%ebp
7387         addl    %eax,%edi
7388         shrdl   $7,%ebx,%ebx
7389         addl    %ebp,%edi
7390         addl    8(%esp),%edx
7391         xorl    %ecx,%esi
7392         movl    %edi,%ebp
7393         shldl   $5,%edi,%edi
7394         xorl    %ebx,%esi
7395         addl    %edi,%edx
7396         shrdl   $7,%eax,%eax
7397         addl    %esi,%edx
7398         addl    12(%esp),%ecx
7399         xorl    %ebx,%ebp
7400         movl    %edx,%esi
7401         shldl   $5,%edx,%edx
7402         xorl    %eax,%ebp
7403         addl    %edx,%ecx
7404         shrdl   $7,%edi,%edi
7405         addl    %ebp,%ecx
7406         movl    196(%esp),%ebp
7407         cmpl    200(%esp),%ebp
7408         je      .L008done
7409         vmovdqa 160(%esp),%xmm7
7410         vmovdqa 176(%esp),%xmm6
7411         vmovdqu (%ebp),%xmm0
7412         vmovdqu 16(%ebp),%xmm1
7413         vmovdqu 32(%ebp),%xmm2
7414         vmovdqu 48(%ebp),%xmm3
7415         addl    $64,%ebp
7416         vpshufb %xmm6,%xmm0,%xmm0
7417         movl    %ebp,196(%esp)
7418         vmovdqa %xmm7,96(%esp)
7419         addl    16(%esp),%ebx
7420         xorl    %eax,%esi
7421         vpshufb %xmm6,%xmm1,%xmm1
7422         movl    %ecx,%ebp
7423         shldl   $5,%ecx,%ecx
7424         vpaddd  %xmm7,%xmm0,%xmm4
7425         xorl    %edi,%esi
7426         addl    %ecx,%ebx
7427         shrdl   $7,%edx,%edx
7428         addl    %esi,%ebx
7429         vmovdqa %xmm4,(%esp)
7430         addl    20(%esp),%eax
7431         xorl    %edi,%ebp
7432         movl    %ebx,%esi
7433         shldl   $5,%ebx,%ebx
7434         xorl    %edx,%ebp
7435         addl    %ebx,%eax
7436         shrdl   $7,%ecx,%ecx
7437         addl    %ebp,%eax
7438         addl    24(%esp),%edi
7439         xorl    %edx,%esi
7440         movl    %eax,%ebp
7441         shldl   $5,%eax,%eax
7442         xorl    %ecx,%esi
7443         addl    %eax,%edi
7444         shrdl   $7,%ebx,%ebx
7445         addl    %esi,%edi
7446         addl    28(%esp),%edx
7447         xorl    %ecx,%ebp
7448         movl    %edi,%esi
7449         shldl   $5,%edi,%edi
7450         xorl    %ebx,%ebp
7451         addl    %edi,%edx
7452         shrdl   $7,%eax,%eax
7453         addl    %ebp,%edx
7454         addl    32(%esp),%ecx
7455         xorl    %ebx,%esi
7456         vpshufb %xmm6,%xmm2,%xmm2
7457         movl    %edx,%ebp
7458         shldl   $5,%edx,%edx
7459         vpaddd  %xmm7,%xmm1,%xmm5
7460         xorl    %eax,%esi
7461         addl    %edx,%ecx
7462         shrdl   $7,%edi,%edi
7463         addl    %esi,%ecx
7464         vmovdqa %xmm5,16(%esp)
7465         addl    36(%esp),%ebx
7466         xorl    %eax,%ebp
7467         movl    %ecx,%esi
7468         shldl   $5,%ecx,%ecx
7469         xorl    %edi,%ebp
7470         addl    %ecx,%ebx
7471         shrdl   $7,%edx,%edx
7472         addl    %ebp,%ebx
7473         addl    40(%esp),%eax
7474         xorl    %edi,%esi
7475         movl    %ebx,%ebp
7476         shldl   $5,%ebx,%ebx
7477         xorl    %edx,%esi
7478         addl    %ebx,%eax
7479         shrdl   $7,%ecx,%ecx
7480         addl    %esi,%eax
7481         addl    44(%esp),%edi
7482         xorl    %edx,%ebp
7483         movl    %eax,%esi
7484         shldl   $5,%eax,%eax
7485         xorl    %ecx,%ebp
7486         addl    %eax,%edi
7487         shrdl   $7,%ebx,%ebx
7488         addl    %ebp,%edi
7489         addl    48(%esp),%edx
7490         xorl    %ecx,%esi
7491         vpshufb %xmm6,%xmm3,%xmm3
7492         movl    %edi,%ebp
7493         shldl   $5,%edi,%edi
7494         vpaddd  %xmm7,%xmm2,%xmm6
7495         xorl    %ebx,%esi
7496         addl    %edi,%edx
7497         shrdl   $7,%eax,%eax
7498         addl    %esi,%edx
7499         vmovdqa %xmm6,32(%esp)
7500         addl    52(%esp),%ecx
7501         xorl    %ebx,%ebp
7502         movl    %edx,%esi
7503         shldl   $5,%edx,%edx
7504         xorl    %eax,%ebp
7505         addl    %edx,%ecx
7506         shrdl   $7,%edi,%edi
7507         addl    %ebp,%ecx
7508         addl    56(%esp),%ebx
7509         xorl    %eax,%esi
7510         movl    %ecx,%ebp
7511         shldl   $5,%ecx,%ecx
7512         xorl    %edi,%esi
7513         addl    %ecx,%ebx
7514         shrdl   $7,%edx,%edx
7515         addl    %esi,%ebx
7516         addl    60(%esp),%eax
7517         xorl    %edi,%ebp
7518         movl    %ebx,%esi
7519         shldl   $5,%ebx,%ebx
7520         xorl    %edx,%ebp
7521         addl    %ebx,%eax
7522         shrdl   $7,%ecx,%ecx
7523         addl    %ebp,%eax
7524         movl    192(%esp),%ebp
7525         addl    (%ebp),%eax
7526         addl    4(%ebp),%esi
7527         addl    8(%ebp),%ecx
7528         movl    %eax,(%ebp)
7529         addl    12(%ebp),%edx
7530         movl    %esi,4(%ebp)
7531         addl    16(%ebp),%edi
7532         movl    %ecx,8(%ebp)
7533         movl    %esi,%ebx
7534         movl    %edx,12(%ebp)
7535         movl    %edi,16(%ebp)
7536         jmp     .L007loop
7537 .align  16
7538 .L008done:
7539         addl    16(%esp),%ebx
7540         xorl    %eax,%esi
7541         movl    %ecx,%ebp
7542         shldl   $5,%ecx,%ecx
7543         xorl    %edi,%esi
7544         addl    %ecx,%ebx
7545         shrdl   $7,%edx,%edx
7546         addl    %esi,%ebx
7547         addl    20(%esp),%eax
7548         xorl    %edi,%ebp
7549         movl    %ebx,%esi
7550         shldl   $5,%ebx,%ebx
7551         xorl    %edx,%ebp
7552         addl    %ebx,%eax
7553         shrdl   $7,%ecx,%ecx
7554         addl    %ebp,%eax
7555         addl    24(%esp),%edi
7556         xorl    %edx,%esi
7557         movl    %eax,%ebp
7558         shldl   $5,%eax,%eax
7559         xorl    %ecx,%esi
7560         addl    %eax,%edi
7561         shrdl   $7,%ebx,%ebx
7562         addl    %esi,%edi
7563         addl    28(%esp),%edx
7564         xorl    %ecx,%ebp
7565         movl    %edi,%esi
7566         shldl   $5,%edi,%edi
7567         xorl    %ebx,%ebp
7568         addl    %edi,%edx
7569         shrdl   $7,%eax,%eax
7570         addl    %ebp,%edx
7571         addl    32(%esp),%ecx
7572         xorl    %ebx,%esi
7573         movl    %edx,%ebp
7574         shldl   $5,%edx,%edx
7575         xorl    %eax,%esi
7576         addl    %edx,%ecx
7577         shrdl   $7,%edi,%edi
7578         addl    %esi,%ecx
7579         addl    36(%esp),%ebx
7580         xorl    %eax,%ebp
7581         movl    %ecx,%esi
7582         shldl   $5,%ecx,%ecx
7583         xorl    %edi,%ebp
7584         addl    %ecx,%ebx
7585         shrdl   $7,%edx,%edx
7586         addl    %ebp,%ebx
7587         addl    40(%esp),%eax
7588         xorl    %edi,%esi
7589         movl    %ebx,%ebp
7590         shldl   $5,%ebx,%ebx
7591         xorl    %edx,%esi
7592         addl    %ebx,%eax
7593         shrdl   $7,%ecx,%ecx
7594         addl    %esi,%eax
7595         addl    44(%esp),%edi
7596         xorl    %edx,%ebp
7597         movl    %eax,%esi
7598         shldl   $5,%eax,%eax
7599         xorl    %ecx,%ebp
7600         addl    %eax,%edi
7601         shrdl   $7,%ebx,%ebx
7602         addl    %ebp,%edi
7603         addl    48(%esp),%edx
7604         xorl    %ecx,%esi
7605         movl    %edi,%ebp
7606         shldl   $5,%edi,%edi
7607         xorl    %ebx,%esi
7608         addl    %edi,%edx
7609         shrdl   $7,%eax,%eax
7610         addl    %esi,%edx
7611         addl    52(%esp),%ecx
7612         xorl    %ebx,%ebp
7613         movl    %edx,%esi
7614         shldl   $5,%edx,%edx
7615         xorl    %eax,%ebp
7616         addl    %edx,%ecx
7617         shrdl   $7,%edi,%edi
7618         addl    %ebp,%ecx
7619         addl    56(%esp),%ebx
7620         xorl    %eax,%esi
7621         movl    %ecx,%ebp
7622         shldl   $5,%ecx,%ecx
7623         xorl    %edi,%esi
7624         addl    %ecx,%ebx
7625         shrdl   $7,%edx,%edx
7626         addl    %esi,%ebx
7627         addl    60(%esp),%eax
7628         xorl    %edi,%ebp
7629         movl    %ebx,%esi
7630         shldl   $5,%ebx,%ebx
7631         xorl    %edx,%ebp
7632         addl    %ebx,%eax
7633         shrdl   $7,%ecx,%ecx
7634         addl    %ebp,%eax
7635         vzeroall
7636         movl    192(%esp),%ebp
7637         addl    (%ebp),%eax
7638         movl    204(%esp),%esp
7639         addl    4(%ebp),%esi
7640         addl    8(%ebp),%ecx
7641         movl    %eax,(%ebp)
7642         addl    12(%ebp),%edx
7643         movl    %esi,4(%ebp)
7644         addl    16(%ebp),%edi
7645         movl    %ecx,8(%ebp)
7646         movl    %edx,12(%ebp)
7647         movl    %edi,16(%ebp)
7648         popl    %edi
7649         popl    %esi
7650         popl    %ebx
7651         popl    %ebp
7652         ret
7653 .size   _sha1_block_data_order_avx,.-_sha1_block_data_order_avx
7654 .align  64
7655 .LK_XX_XX:
7656 .long   1518500249,1518500249,1518500249,1518500249
7657 .long   1859775393,1859775393,1859775393,1859775393
7658 .long   2400959708,2400959708,2400959708,2400959708
7659 .long   3395469782,3395469782,3395469782,3395469782
7660 .long   66051,67438087,134810123,202182159
7661 .byte   83,72,65,49,32,98,108,111,99,107,32,116,114,97,110,115
7662 .byte   102,111,114,109,32,102,111,114,32,120,56,54,44,32,67,82
7663 .byte   89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112
7664 .byte   114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
7665 .comm   OPENSSL_ia32cap_P,8,4
7666 #endif