Set #!... path to Perl in apps/der_chop automatically.
[openssl.git] / crypto / md5 / asm / m5-win32.asm
1         ; Don't even think of reading this code
2         ; It was automatically generated by md5-586.pl
3         ; Which is a perl program used to generate the x86 assember for
4         ; any of elf, a.out, BSDI,Win32, or Solaris
5         ; eric <eay@cryptsoft.com>
6         ; 
7         TITLE   md5-586.asm
8         .386
9 .model FLAT
10 _TEXT   SEGMENT
11 PUBLIC  _md5_block_x86
12
13 _md5_block_x86 PROC NEAR
14         push    esi
15         push    edi
16         mov     edi,            DWORD PTR 12[esp]
17         mov     esi,            DWORD PTR 16[esp]
18         mov     ecx,            DWORD PTR 20[esp]
19         push    ebp
20         push    ebx
21         add     ecx,            esi
22         sub     ecx,            64
23         mov     eax,            DWORD PTR [edi]
24         push    ecx
25         mov     ebx,            DWORD PTR 4[edi]
26         mov     ecx,            DWORD PTR 8[edi]
27         mov     edx,            DWORD PTR 12[edi]
28 L000start:
29         ; 
30         ; R0 section
31         mov     edi,            ecx
32         mov     ebp,            DWORD PTR [esi]
33         ; R0 0
34         xor     edi,            edx
35         and     edi,            ebx
36         lea     eax,            DWORD PTR 3614090360[ebp*1+eax]
37         mov     ebp,            DWORD PTR 4[esi]
38         xor     edi,            edx
39         add     eax,            edi
40         mov     edi,            ebx
41         rol     eax,            7
42         add     eax,            ebx
43         ; R0 1
44         xor     edi,            ecx
45         and     edi,            eax
46         lea     edx,            DWORD PTR 3905402710[ebp*1+edx]
47         mov     ebp,            DWORD PTR 8[esi]
48         xor     edi,            ecx
49         add     edx,            edi
50         mov     edi,            eax
51         rol     edx,            12
52         add     edx,            eax
53         ; R0 2
54         xor     edi,            ebx
55         and     edi,            edx
56         lea     ecx,            DWORD PTR 606105819[ebp*1+ecx]
57         mov     ebp,            DWORD PTR 12[esi]
58         xor     edi,            ebx
59         add     ecx,            edi
60         mov     edi,            edx
61         rol     ecx,            17
62         add     ecx,            edx
63         ; R0 3
64         xor     edi,            eax
65         and     edi,            ecx
66         lea     ebx,            DWORD PTR 3250441966[ebp*1+ebx]
67         mov     ebp,            DWORD PTR 16[esi]
68         xor     edi,            eax
69         add     ebx,            edi
70         mov     edi,            ecx
71         rol     ebx,            22
72         add     ebx,            ecx
73         ; R0 4
74         xor     edi,            edx
75         and     edi,            ebx
76         lea     eax,            DWORD PTR 4118548399[ebp*1+eax]
77         mov     ebp,            DWORD PTR 20[esi]
78         xor     edi,            edx
79         add     eax,            edi
80         mov     edi,            ebx
81         rol     eax,            7
82         add     eax,            ebx
83         ; R0 5
84         xor     edi,            ecx
85         and     edi,            eax
86         lea     edx,            DWORD PTR 1200080426[ebp*1+edx]
87         mov     ebp,            DWORD PTR 24[esi]
88         xor     edi,            ecx
89         add     edx,            edi
90         mov     edi,            eax
91         rol     edx,            12
92         add     edx,            eax
93         ; R0 6
94         xor     edi,            ebx
95         and     edi,            edx
96         lea     ecx,            DWORD PTR 2821735955[ebp*1+ecx]
97         mov     ebp,            DWORD PTR 28[esi]
98         xor     edi,            ebx
99         add     ecx,            edi
100         mov     edi,            edx
101         rol     ecx,            17
102         add     ecx,            edx
103         ; R0 7
104         xor     edi,            eax
105         and     edi,            ecx
106         lea     ebx,            DWORD PTR 4249261313[ebp*1+ebx]
107         mov     ebp,            DWORD PTR 32[esi]
108         xor     edi,            eax
109         add     ebx,            edi
110         mov     edi,            ecx
111         rol     ebx,            22
112         add     ebx,            ecx
113         ; R0 8
114         xor     edi,            edx
115         and     edi,            ebx
116         lea     eax,            DWORD PTR 1770035416[ebp*1+eax]
117         mov     ebp,            DWORD PTR 36[esi]
118         xor     edi,            edx
119         add     eax,            edi
120         mov     edi,            ebx
121         rol     eax,            7
122         add     eax,            ebx
123         ; R0 9
124         xor     edi,            ecx
125         and     edi,            eax
126         lea     edx,            DWORD PTR 2336552879[ebp*1+edx]
127         mov     ebp,            DWORD PTR 40[esi]
128         xor     edi,            ecx
129         add     edx,            edi
130         mov     edi,            eax
131         rol     edx,            12
132         add     edx,            eax
133         ; R0 10
134         xor     edi,            ebx
135         and     edi,            edx
136         lea     ecx,            DWORD PTR 4294925233[ebp*1+ecx]
137         mov     ebp,            DWORD PTR 44[esi]
138         xor     edi,            ebx
139         add     ecx,            edi
140         mov     edi,            edx
141         rol     ecx,            17
142         add     ecx,            edx
143         ; R0 11
144         xor     edi,            eax
145         and     edi,            ecx
146         lea     ebx,            DWORD PTR 2304563134[ebp*1+ebx]
147         mov     ebp,            DWORD PTR 48[esi]
148         xor     edi,            eax
149         add     ebx,            edi
150         mov     edi,            ecx
151         rol     ebx,            22
152         add     ebx,            ecx
153         ; R0 12
154         xor     edi,            edx
155         and     edi,            ebx
156         lea     eax,            DWORD PTR 1804603682[ebp*1+eax]
157         mov     ebp,            DWORD PTR 52[esi]
158         xor     edi,            edx
159         add     eax,            edi
160         mov     edi,            ebx
161         rol     eax,            7
162         add     eax,            ebx
163         ; R0 13
164         xor     edi,            ecx
165         and     edi,            eax
166         lea     edx,            DWORD PTR 4254626195[ebp*1+edx]
167         mov     ebp,            DWORD PTR 56[esi]
168         xor     edi,            ecx
169         add     edx,            edi
170         mov     edi,            eax
171         rol     edx,            12
172         add     edx,            eax
173         ; R0 14
174         xor     edi,            ebx
175         and     edi,            edx
176         lea     ecx,            DWORD PTR 2792965006[ebp*1+ecx]
177         mov     ebp,            DWORD PTR 60[esi]
178         xor     edi,            ebx
179         add     ecx,            edi
180         mov     edi,            edx
181         rol     ecx,            17
182         add     ecx,            edx
183         ; R0 15
184         xor     edi,            eax
185         and     edi,            ecx
186         lea     ebx,            DWORD PTR 1236535329[ebp*1+ebx]
187         mov     ebp,            DWORD PTR 4[esi]
188         xor     edi,            eax
189         add     ebx,            edi
190         mov     edi,            ecx
191         rol     ebx,            22
192         add     ebx,            ecx
193         ; 
194         ; R1 section
195         ; R1 16
196         lea     eax,            DWORD PTR 4129170786[ebp*1+eax]
197         xor     edi,            ebx
198         and     edi,            edx
199         mov     ebp,            DWORD PTR 24[esi]
200         xor     edi,            ecx
201         add     eax,            edi
202         mov     edi,            ebx
203         rol     eax,            5
204         add     eax,            ebx
205         ; R1 17
206         lea     edx,            DWORD PTR 3225465664[ebp*1+edx]
207         xor     edi,            eax
208         and     edi,            ecx
209         mov     ebp,            DWORD PTR 44[esi]
210         xor     edi,            ebx
211         add     edx,            edi
212         mov     edi,            eax
213         rol     edx,            9
214         add     edx,            eax
215         ; R1 18
216         lea     ecx,            DWORD PTR 643717713[ebp*1+ecx]
217         xor     edi,            edx
218         and     edi,            ebx
219         mov     ebp,            DWORD PTR [esi]
220         xor     edi,            eax
221         add     ecx,            edi
222         mov     edi,            edx
223         rol     ecx,            14
224         add     ecx,            edx
225         ; R1 19
226         lea     ebx,            DWORD PTR 3921069994[ebp*1+ebx]
227         xor     edi,            ecx
228         and     edi,            eax
229         mov     ebp,            DWORD PTR 20[esi]
230         xor     edi,            edx
231         add     ebx,            edi
232         mov     edi,            ecx
233         rol     ebx,            20
234         add     ebx,            ecx
235         ; R1 20
236         lea     eax,            DWORD PTR 3593408605[ebp*1+eax]
237         xor     edi,            ebx
238         and     edi,            edx
239         mov     ebp,            DWORD PTR 40[esi]
240         xor     edi,            ecx
241         add     eax,            edi
242         mov     edi,            ebx
243         rol     eax,            5
244         add     eax,            ebx
245         ; R1 21
246         lea     edx,            DWORD PTR 38016083[ebp*1+edx]
247         xor     edi,            eax
248         and     edi,            ecx
249         mov     ebp,            DWORD PTR 60[esi]
250         xor     edi,            ebx
251         add     edx,            edi
252         mov     edi,            eax
253         rol     edx,            9
254         add     edx,            eax
255         ; R1 22
256         lea     ecx,            DWORD PTR 3634488961[ebp*1+ecx]
257         xor     edi,            edx
258         and     edi,            ebx
259         mov     ebp,            DWORD PTR 16[esi]
260         xor     edi,            eax
261         add     ecx,            edi
262         mov     edi,            edx
263         rol     ecx,            14
264         add     ecx,            edx
265         ; R1 23
266         lea     ebx,            DWORD PTR 3889429448[ebp*1+ebx]
267         xor     edi,            ecx
268         and     edi,            eax
269         mov     ebp,            DWORD PTR 36[esi]
270         xor     edi,            edx
271         add     ebx,            edi
272         mov     edi,            ecx
273         rol     ebx,            20
274         add     ebx,            ecx
275         ; R1 24
276         lea     eax,            DWORD PTR 568446438[ebp*1+eax]
277         xor     edi,            ebx
278         and     edi,            edx
279         mov     ebp,            DWORD PTR 56[esi]
280         xor     edi,            ecx
281         add     eax,            edi
282         mov     edi,            ebx
283         rol     eax,            5
284         add     eax,            ebx
285         ; R1 25
286         lea     edx,            DWORD PTR 3275163606[ebp*1+edx]
287         xor     edi,            eax
288         and     edi,            ecx
289         mov     ebp,            DWORD PTR 12[esi]
290         xor     edi,            ebx
291         add     edx,            edi
292         mov     edi,            eax
293         rol     edx,            9
294         add     edx,            eax
295         ; R1 26
296         lea     ecx,            DWORD PTR 4107603335[ebp*1+ecx]
297         xor     edi,            edx
298         and     edi,            ebx
299         mov     ebp,            DWORD PTR 32[esi]
300         xor     edi,            eax
301         add     ecx,            edi
302         mov     edi,            edx
303         rol     ecx,            14
304         add     ecx,            edx
305         ; R1 27
306         lea     ebx,            DWORD PTR 1163531501[ebp*1+ebx]
307         xor     edi,            ecx
308         and     edi,            eax
309         mov     ebp,            DWORD PTR 52[esi]
310         xor     edi,            edx
311         add     ebx,            edi
312         mov     edi,            ecx
313         rol     ebx,            20
314         add     ebx,            ecx
315         ; R1 28
316         lea     eax,            DWORD PTR 2850285829[ebp*1+eax]
317         xor     edi,            ebx
318         and     edi,            edx
319         mov     ebp,            DWORD PTR 8[esi]
320         xor     edi,            ecx
321         add     eax,            edi
322         mov     edi,            ebx
323         rol     eax,            5
324         add     eax,            ebx
325         ; R1 29
326         lea     edx,            DWORD PTR 4243563512[ebp*1+edx]
327         xor     edi,            eax
328         and     edi,            ecx
329         mov     ebp,            DWORD PTR 28[esi]
330         xor     edi,            ebx
331         add     edx,            edi
332         mov     edi,            eax
333         rol     edx,            9
334         add     edx,            eax
335         ; R1 30
336         lea     ecx,            DWORD PTR 1735328473[ebp*1+ecx]
337         xor     edi,            edx
338         and     edi,            ebx
339         mov     ebp,            DWORD PTR 48[esi]
340         xor     edi,            eax
341         add     ecx,            edi
342         mov     edi,            edx
343         rol     ecx,            14
344         add     ecx,            edx
345         ; R1 31
346         lea     ebx,            DWORD PTR 2368359562[ebp*1+ebx]
347         xor     edi,            ecx
348         and     edi,            eax
349         mov     ebp,            DWORD PTR 20[esi]
350         xor     edi,            edx
351         add     ebx,            edi
352         mov     edi,            ecx
353         rol     ebx,            20
354         add     ebx,            ecx
355         ; 
356         ; R2 section
357         ; R2 32
358         xor     edi,            edx
359         xor     edi,            ebx
360         lea     eax,            DWORD PTR 4294588738[ebp*1+eax]
361         add     eax,            edi
362         mov     ebp,            DWORD PTR 32[esi]
363         rol     eax,            4
364         mov     edi,            ebx
365         ; R2 33
366         lea     edx,            DWORD PTR 2272392833[ebp*1+edx]
367         add     eax,            ebx
368         xor     edi,            ecx
369         xor     edi,            eax
370         mov     ebp,            DWORD PTR 44[esi]
371         add     edx,            edi
372         mov     edi,            eax
373         rol     edx,            11
374         add     edx,            eax
375         ; R2 34
376         xor     edi,            ebx
377         xor     edi,            edx
378         lea     ecx,            DWORD PTR 1839030562[ebp*1+ecx]
379         add     ecx,            edi
380         mov     ebp,            DWORD PTR 56[esi]
381         rol     ecx,            16
382         mov     edi,            edx
383         ; R2 35
384         lea     ebx,            DWORD PTR 4259657740[ebp*1+ebx]
385         add     ecx,            edx
386         xor     edi,            eax
387         xor     edi,            ecx
388         mov     ebp,            DWORD PTR 4[esi]
389         add     ebx,            edi
390         mov     edi,            ecx
391         rol     ebx,            23
392         add     ebx,            ecx
393         ; R2 36
394         xor     edi,            edx
395         xor     edi,            ebx
396         lea     eax,            DWORD PTR 2763975236[ebp*1+eax]
397         add     eax,            edi
398         mov     ebp,            DWORD PTR 16[esi]
399         rol     eax,            4
400         mov     edi,            ebx
401         ; R2 37
402         lea     edx,            DWORD PTR 1272893353[ebp*1+edx]
403         add     eax,            ebx
404         xor     edi,            ecx
405         xor     edi,            eax
406         mov     ebp,            DWORD PTR 28[esi]
407         add     edx,            edi
408         mov     edi,            eax
409         rol     edx,            11
410         add     edx,            eax
411         ; R2 38
412         xor     edi,            ebx
413         xor     edi,            edx
414         lea     ecx,            DWORD PTR 4139469664[ebp*1+ecx]
415         add     ecx,            edi
416         mov     ebp,            DWORD PTR 40[esi]
417         rol     ecx,            16
418         mov     edi,            edx
419         ; R2 39
420         lea     ebx,            DWORD PTR 3200236656[ebp*1+ebx]
421         add     ecx,            edx
422         xor     edi,            eax
423         xor     edi,            ecx
424         mov     ebp,            DWORD PTR 52[esi]
425         add     ebx,            edi
426         mov     edi,            ecx
427         rol     ebx,            23
428         add     ebx,            ecx
429         ; R2 40
430         xor     edi,            edx
431         xor     edi,            ebx
432         lea     eax,            DWORD PTR 681279174[ebp*1+eax]
433         add     eax,            edi
434         mov     ebp,            DWORD PTR [esi]
435         rol     eax,            4
436         mov     edi,            ebx
437         ; R2 41
438         lea     edx,            DWORD PTR 3936430074[ebp*1+edx]
439         add     eax,            ebx
440         xor     edi,            ecx
441         xor     edi,            eax
442         mov     ebp,            DWORD PTR 12[esi]
443         add     edx,            edi
444         mov     edi,            eax
445         rol     edx,            11
446         add     edx,            eax
447         ; R2 42
448         xor     edi,            ebx
449         xor     edi,            edx
450         lea     ecx,            DWORD PTR 3572445317[ebp*1+ecx]
451         add     ecx,            edi
452         mov     ebp,            DWORD PTR 24[esi]
453         rol     ecx,            16
454         mov     edi,            edx
455         ; R2 43
456         lea     ebx,            DWORD PTR 76029189[ebp*1+ebx]
457         add     ecx,            edx
458         xor     edi,            eax
459         xor     edi,            ecx
460         mov     ebp,            DWORD PTR 36[esi]
461         add     ebx,            edi
462         mov     edi,            ecx
463         rol     ebx,            23
464         add     ebx,            ecx
465         ; R2 44
466         xor     edi,            edx
467         xor     edi,            ebx
468         lea     eax,            DWORD PTR 3654602809[ebp*1+eax]
469         add     eax,            edi
470         mov     ebp,            DWORD PTR 48[esi]
471         rol     eax,            4
472         mov     edi,            ebx
473         ; R2 45
474         lea     edx,            DWORD PTR 3873151461[ebp*1+edx]
475         add     eax,            ebx
476         xor     edi,            ecx
477         xor     edi,            eax
478         mov     ebp,            DWORD PTR 60[esi]
479         add     edx,            edi
480         mov     edi,            eax
481         rol     edx,            11
482         add     edx,            eax
483         ; R2 46
484         xor     edi,            ebx
485         xor     edi,            edx
486         lea     ecx,            DWORD PTR 530742520[ebp*1+ecx]
487         add     ecx,            edi
488         mov     ebp,            DWORD PTR 8[esi]
489         rol     ecx,            16
490         mov     edi,            edx
491         ; R2 47
492         lea     ebx,            DWORD PTR 3299628645[ebp*1+ebx]
493         add     ecx,            edx
494         xor     edi,            eax
495         xor     edi,            ecx
496         mov     ebp,            DWORD PTR [esi]
497         add     ebx,            edi
498         mov     edi,            -1
499         rol     ebx,            23
500         add     ebx,            ecx
501         ; 
502         ; R3 section
503         ; R3 48
504         xor     edi,            edx
505         or      edi,            ebx
506         lea     eax,            DWORD PTR 4096336452[ebp*1+eax]
507         xor     edi,            ecx
508         mov     ebp,            DWORD PTR 28[esi]
509         add     eax,            edi
510         mov     edi,            -1
511         rol     eax,            6
512         xor     edi,            ecx
513         add     eax,            ebx
514         ; R3 49
515         or      edi,            eax
516         lea     edx,            DWORD PTR 1126891415[ebp*1+edx]
517         xor     edi,            ebx
518         mov     ebp,            DWORD PTR 56[esi]
519         add     edx,            edi
520         mov     edi,            -1
521         rol     edx,            10
522         xor     edi,            ebx
523         add     edx,            eax
524         ; R3 50
525         or      edi,            edx
526         lea     ecx,            DWORD PTR 2878612391[ebp*1+ecx]
527         xor     edi,            eax
528         mov     ebp,            DWORD PTR 20[esi]
529         add     ecx,            edi
530         mov     edi,            -1
531         rol     ecx,            15
532         xor     edi,            eax
533         add     ecx,            edx
534         ; R3 51
535         or      edi,            ecx
536         lea     ebx,            DWORD PTR 4237533241[ebp*1+ebx]
537         xor     edi,            edx
538         mov     ebp,            DWORD PTR 48[esi]
539         add     ebx,            edi
540         mov     edi,            -1
541         rol     ebx,            21
542         xor     edi,            edx
543         add     ebx,            ecx
544         ; R3 52
545         or      edi,            ebx
546         lea     eax,            DWORD PTR 1700485571[ebp*1+eax]
547         xor     edi,            ecx
548         mov     ebp,            DWORD PTR 12[esi]
549         add     eax,            edi
550         mov     edi,            -1
551         rol     eax,            6
552         xor     edi,            ecx
553         add     eax,            ebx
554         ; R3 53
555         or      edi,            eax
556         lea     edx,            DWORD PTR 2399980690[ebp*1+edx]
557         xor     edi,            ebx
558         mov     ebp,            DWORD PTR 40[esi]
559         add     edx,            edi
560         mov     edi,            -1
561         rol     edx,            10
562         xor     edi,            ebx
563         add     edx,            eax
564         ; R3 54
565         or      edi,            edx
566         lea     ecx,            DWORD PTR 4293915773[ebp*1+ecx]
567         xor     edi,            eax
568         mov     ebp,            DWORD PTR 4[esi]
569         add     ecx,            edi
570         mov     edi,            -1
571         rol     ecx,            15
572         xor     edi,            eax
573         add     ecx,            edx
574         ; R3 55
575         or      edi,            ecx
576         lea     ebx,            DWORD PTR 2240044497[ebp*1+ebx]
577         xor     edi,            edx
578         mov     ebp,            DWORD PTR 32[esi]
579         add     ebx,            edi
580         mov     edi,            -1
581         rol     ebx,            21
582         xor     edi,            edx
583         add     ebx,            ecx
584         ; R3 56
585         or      edi,            ebx
586         lea     eax,            DWORD PTR 1873313359[ebp*1+eax]
587         xor     edi,            ecx
588         mov     ebp,            DWORD PTR 60[esi]
589         add     eax,            edi
590         mov     edi,            -1
591         rol     eax,            6
592         xor     edi,            ecx
593         add     eax,            ebx
594         ; R3 57
595         or      edi,            eax
596         lea     edx,            DWORD PTR 4264355552[ebp*1+edx]
597         xor     edi,            ebx
598         mov     ebp,            DWORD PTR 24[esi]
599         add     edx,            edi
600         mov     edi,            -1
601         rol     edx,            10
602         xor     edi,            ebx
603         add     edx,            eax
604         ; R3 58
605         or      edi,            edx
606         lea     ecx,            DWORD PTR 2734768916[ebp*1+ecx]
607         xor     edi,            eax
608         mov     ebp,            DWORD PTR 52[esi]
609         add     ecx,            edi
610         mov     edi,            -1
611         rol     ecx,            15
612         xor     edi,            eax
613         add     ecx,            edx
614         ; R3 59
615         or      edi,            ecx
616         lea     ebx,            DWORD PTR 1309151649[ebp*1+ebx]
617         xor     edi,            edx
618         mov     ebp,            DWORD PTR 16[esi]
619         add     ebx,            edi
620         mov     edi,            -1
621         rol     ebx,            21
622         xor     edi,            edx
623         add     ebx,            ecx
624         ; R3 60
625         or      edi,            ebx
626         lea     eax,            DWORD PTR 4149444226[ebp*1+eax]
627         xor     edi,            ecx
628         mov     ebp,            DWORD PTR 44[esi]
629         add     eax,            edi
630         mov     edi,            -1
631         rol     eax,            6
632         xor     edi,            ecx
633         add     eax,            ebx
634         ; R3 61
635         or      edi,            eax
636         lea     edx,            DWORD PTR 3174756917[ebp*1+edx]
637         xor     edi,            ebx
638         mov     ebp,            DWORD PTR 8[esi]
639         add     edx,            edi
640         mov     edi,            -1
641         rol     edx,            10
642         xor     edi,            ebx
643         add     edx,            eax
644         ; R3 62
645         or      edi,            edx
646         lea     ecx,            DWORD PTR 718787259[ebp*1+ecx]
647         xor     edi,            eax
648         mov     ebp,            DWORD PTR 36[esi]
649         add     ecx,            edi
650         mov     edi,            -1
651         rol     ecx,            15
652         xor     edi,            eax
653         add     ecx,            edx
654         ; R3 63
655         or      edi,            ecx
656         lea     ebx,            DWORD PTR 3951481745[ebp*1+ebx]
657         xor     edi,            edx
658         mov     ebp,            DWORD PTR 24[esp]
659         add     ebx,            edi
660         add     esi,            64
661         rol     ebx,            21
662         mov     edi,            DWORD PTR [ebp]
663         add     ebx,            ecx
664         add     eax,            edi
665         mov     edi,            DWORD PTR 4[ebp]
666         add     ebx,            edi
667         mov     edi,            DWORD PTR 8[ebp]
668         add     ecx,            edi
669         mov     edi,            DWORD PTR 12[ebp]
670         add     edx,            edi
671         mov     DWORD PTR [ebp],eax
672         mov     DWORD PTR 4[ebp],ebx
673         mov     edi,            DWORD PTR [esp]
674         mov     DWORD PTR 8[ebp],ecx
675         mov     DWORD PTR 12[ebp],edx
676         cmp     edi,            esi
677         jge     L000start
678         pop     eax
679         pop     ebx
680         pop     ebp
681         pop     edi
682         pop     esi
683         ret
684 _md5_block_x86 ENDP
685 _TEXT   ENDS
686 END