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