summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/md5/asm/m5-win32.asm
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/libcrypto/md5/asm/m5-win32.asm')
-rw-r--r--src/lib/libcrypto/md5/asm/m5-win32.asm55
1 files changed, 28 insertions, 27 deletions
diff --git a/src/lib/libcrypto/md5/asm/m5-win32.asm b/src/lib/libcrypto/md5/asm/m5-win32.asm
index c2081da746..51f5f17ca3 100644
--- a/src/lib/libcrypto/md5/asm/m5-win32.asm
+++ b/src/lib/libcrypto/md5/asm/m5-win32.asm
@@ -8,15 +8,16 @@
8 .386 8 .386
9.model FLAT 9.model FLAT
10_TEXT SEGMENT 10_TEXT SEGMENT
11PUBLIC _md5_block_x86 11PUBLIC _md5_block_asm_host_order
12 12
13_md5_block_x86 PROC NEAR 13_md5_block_asm_host_order PROC NEAR
14 push esi 14 push esi
15 push edi 15 push edi
16 mov edi, DWORD PTR 12[esp] 16 mov edi, DWORD PTR 12[esp]
17 mov esi, DWORD PTR 16[esp] 17 mov esi, DWORD PTR 16[esp]
18 mov ecx, DWORD PTR 20[esp] 18 mov ecx, DWORD PTR 20[esp]
19 push ebp 19 push ebp
20 shl ecx, 6
20 push ebx 21 push ebx
21 add ecx, esi 22 add ecx, esi
22 sub ecx, 64 23 sub ecx, 64
@@ -34,161 +35,161 @@ L000start:
34 xor edi, edx 35 xor edi, edx
35 and edi, ebx 36 and edi, ebx
36 lea eax, DWORD PTR 3614090360[ebp*1+eax] 37 lea eax, DWORD PTR 3614090360[ebp*1+eax]
37 mov ebp, DWORD PTR 4[esi]
38 xor edi, edx 38 xor edi, edx
39 add eax, edi 39 add eax, edi
40 mov edi, ebx 40 mov edi, ebx
41 rol eax, 7 41 rol eax, 7
42 mov ebp, DWORD PTR 4[esi]
42 add eax, ebx 43 add eax, ebx
43 ; R0 1 44 ; R0 1
44 xor edi, ecx 45 xor edi, ecx
45 and edi, eax 46 and edi, eax
46 lea edx, DWORD PTR 3905402710[ebp*1+edx] 47 lea edx, DWORD PTR 3905402710[ebp*1+edx]
47 mov ebp, DWORD PTR 8[esi]
48 xor edi, ecx 48 xor edi, ecx
49 add edx, edi 49 add edx, edi
50 mov edi, eax 50 mov edi, eax
51 rol edx, 12 51 rol edx, 12
52 mov ebp, DWORD PTR 8[esi]
52 add edx, eax 53 add edx, eax
53 ; R0 2 54 ; R0 2
54 xor edi, ebx 55 xor edi, ebx
55 and edi, edx 56 and edi, edx
56 lea ecx, DWORD PTR 606105819[ebp*1+ecx] 57 lea ecx, DWORD PTR 606105819[ebp*1+ecx]
57 mov ebp, DWORD PTR 12[esi]
58 xor edi, ebx 58 xor edi, ebx
59 add ecx, edi 59 add ecx, edi
60 mov edi, edx 60 mov edi, edx
61 rol ecx, 17 61 rol ecx, 17
62 mov ebp, DWORD PTR 12[esi]
62 add ecx, edx 63 add ecx, edx
63 ; R0 3 64 ; R0 3
64 xor edi, eax 65 xor edi, eax
65 and edi, ecx 66 and edi, ecx
66 lea ebx, DWORD PTR 3250441966[ebp*1+ebx] 67 lea ebx, DWORD PTR 3250441966[ebp*1+ebx]
67 mov ebp, DWORD PTR 16[esi]
68 xor edi, eax 68 xor edi, eax
69 add ebx, edi 69 add ebx, edi
70 mov edi, ecx 70 mov edi, ecx
71 rol ebx, 22 71 rol ebx, 22
72 mov ebp, DWORD PTR 16[esi]
72 add ebx, ecx 73 add ebx, ecx
73 ; R0 4 74 ; R0 4
74 xor edi, edx 75 xor edi, edx
75 and edi, ebx 76 and edi, ebx
76 lea eax, DWORD PTR 4118548399[ebp*1+eax] 77 lea eax, DWORD PTR 4118548399[ebp*1+eax]
77 mov ebp, DWORD PTR 20[esi]
78 xor edi, edx 78 xor edi, edx
79 add eax, edi 79 add eax, edi
80 mov edi, ebx 80 mov edi, ebx
81 rol eax, 7 81 rol eax, 7
82 mov ebp, DWORD PTR 20[esi]
82 add eax, ebx 83 add eax, ebx
83 ; R0 5 84 ; R0 5
84 xor edi, ecx 85 xor edi, ecx
85 and edi, eax 86 and edi, eax
86 lea edx, DWORD PTR 1200080426[ebp*1+edx] 87 lea edx, DWORD PTR 1200080426[ebp*1+edx]
87 mov ebp, DWORD PTR 24[esi]
88 xor edi, ecx 88 xor edi, ecx
89 add edx, edi 89 add edx, edi
90 mov edi, eax 90 mov edi, eax
91 rol edx, 12 91 rol edx, 12
92 mov ebp, DWORD PTR 24[esi]
92 add edx, eax 93 add edx, eax
93 ; R0 6 94 ; R0 6
94 xor edi, ebx 95 xor edi, ebx
95 and edi, edx 96 and edi, edx
96 lea ecx, DWORD PTR 2821735955[ebp*1+ecx] 97 lea ecx, DWORD PTR 2821735955[ebp*1+ecx]
97 mov ebp, DWORD PTR 28[esi]
98 xor edi, ebx 98 xor edi, ebx
99 add ecx, edi 99 add ecx, edi
100 mov edi, edx 100 mov edi, edx
101 rol ecx, 17 101 rol ecx, 17
102 mov ebp, DWORD PTR 28[esi]
102 add ecx, edx 103 add ecx, edx
103 ; R0 7 104 ; R0 7
104 xor edi, eax 105 xor edi, eax
105 and edi, ecx 106 and edi, ecx
106 lea ebx, DWORD PTR 4249261313[ebp*1+ebx] 107 lea ebx, DWORD PTR 4249261313[ebp*1+ebx]
107 mov ebp, DWORD PTR 32[esi]
108 xor edi, eax 108 xor edi, eax
109 add ebx, edi 109 add ebx, edi
110 mov edi, ecx 110 mov edi, ecx
111 rol ebx, 22 111 rol ebx, 22
112 mov ebp, DWORD PTR 32[esi]
112 add ebx, ecx 113 add ebx, ecx
113 ; R0 8 114 ; R0 8
114 xor edi, edx 115 xor edi, edx
115 and edi, ebx 116 and edi, ebx
116 lea eax, DWORD PTR 1770035416[ebp*1+eax] 117 lea eax, DWORD PTR 1770035416[ebp*1+eax]
117 mov ebp, DWORD PTR 36[esi]
118 xor edi, edx 118 xor edi, edx
119 add eax, edi 119 add eax, edi
120 mov edi, ebx 120 mov edi, ebx
121 rol eax, 7 121 rol eax, 7
122 mov ebp, DWORD PTR 36[esi]
122 add eax, ebx 123 add eax, ebx
123 ; R0 9 124 ; R0 9
124 xor edi, ecx 125 xor edi, ecx
125 and edi, eax 126 and edi, eax
126 lea edx, DWORD PTR 2336552879[ebp*1+edx] 127 lea edx, DWORD PTR 2336552879[ebp*1+edx]
127 mov ebp, DWORD PTR 40[esi]
128 xor edi, ecx 128 xor edi, ecx
129 add edx, edi 129 add edx, edi
130 mov edi, eax 130 mov edi, eax
131 rol edx, 12 131 rol edx, 12
132 mov ebp, DWORD PTR 40[esi]
132 add edx, eax 133 add edx, eax
133 ; R0 10 134 ; R0 10
134 xor edi, ebx 135 xor edi, ebx
135 and edi, edx 136 and edi, edx
136 lea ecx, DWORD PTR 4294925233[ebp*1+ecx] 137 lea ecx, DWORD PTR 4294925233[ebp*1+ecx]
137 mov ebp, DWORD PTR 44[esi]
138 xor edi, ebx 138 xor edi, ebx
139 add ecx, edi 139 add ecx, edi
140 mov edi, edx 140 mov edi, edx
141 rol ecx, 17 141 rol ecx, 17
142 mov ebp, DWORD PTR 44[esi]
142 add ecx, edx 143 add ecx, edx
143 ; R0 11 144 ; R0 11
144 xor edi, eax 145 xor edi, eax
145 and edi, ecx 146 and edi, ecx
146 lea ebx, DWORD PTR 2304563134[ebp*1+ebx] 147 lea ebx, DWORD PTR 2304563134[ebp*1+ebx]
147 mov ebp, DWORD PTR 48[esi]
148 xor edi, eax 148 xor edi, eax
149 add ebx, edi 149 add ebx, edi
150 mov edi, ecx 150 mov edi, ecx
151 rol ebx, 22 151 rol ebx, 22
152 mov ebp, DWORD PTR 48[esi]
152 add ebx, ecx 153 add ebx, ecx
153 ; R0 12 154 ; R0 12
154 xor edi, edx 155 xor edi, edx
155 and edi, ebx 156 and edi, ebx
156 lea eax, DWORD PTR 1804603682[ebp*1+eax] 157 lea eax, DWORD PTR 1804603682[ebp*1+eax]
157 mov ebp, DWORD PTR 52[esi]
158 xor edi, edx 158 xor edi, edx
159 add eax, edi 159 add eax, edi
160 mov edi, ebx 160 mov edi, ebx
161 rol eax, 7 161 rol eax, 7
162 mov ebp, DWORD PTR 52[esi]
162 add eax, ebx 163 add eax, ebx
163 ; R0 13 164 ; R0 13
164 xor edi, ecx 165 xor edi, ecx
165 and edi, eax 166 and edi, eax
166 lea edx, DWORD PTR 4254626195[ebp*1+edx] 167 lea edx, DWORD PTR 4254626195[ebp*1+edx]
167 mov ebp, DWORD PTR 56[esi]
168 xor edi, ecx 168 xor edi, ecx
169 add edx, edi 169 add edx, edi
170 mov edi, eax 170 mov edi, eax
171 rol edx, 12 171 rol edx, 12
172 mov ebp, DWORD PTR 56[esi]
172 add edx, eax 173 add edx, eax
173 ; R0 14 174 ; R0 14
174 xor edi, ebx 175 xor edi, ebx
175 and edi, edx 176 and edi, edx
176 lea ecx, DWORD PTR 2792965006[ebp*1+ecx] 177 lea ecx, DWORD PTR 2792965006[ebp*1+ecx]
177 mov ebp, DWORD PTR 60[esi]
178 xor edi, ebx 178 xor edi, ebx
179 add ecx, edi 179 add ecx, edi
180 mov edi, edx 180 mov edi, edx
181 rol ecx, 17 181 rol ecx, 17
182 mov ebp, DWORD PTR 60[esi]
182 add ecx, edx 183 add ecx, edx
183 ; R0 15 184 ; R0 15
184 xor edi, eax 185 xor edi, eax
185 and edi, ecx 186 and edi, ecx
186 lea ebx, DWORD PTR 1236535329[ebp*1+ebx] 187 lea ebx, DWORD PTR 1236535329[ebp*1+ebx]
187 mov ebp, DWORD PTR 4[esi]
188 xor edi, eax 188 xor edi, eax
189 add ebx, edi 189 add ebx, edi
190 mov edi, ecx 190 mov edi, ecx
191 rol ebx, 22 191 rol ebx, 22
192 mov ebp, DWORD PTR 4[esi]
192 add ebx, ecx 193 add ebx, ecx
193 ; 194 ;
194 ; R1 section 195 ; R1 section
@@ -359,8 +360,8 @@ L000start:
359 xor edi, ebx 360 xor edi, ebx
360 lea eax, DWORD PTR 4294588738[ebp*1+eax] 361 lea eax, DWORD PTR 4294588738[ebp*1+eax]
361 add eax, edi 362 add eax, edi
362 mov ebp, DWORD PTR 32[esi]
363 rol eax, 4 363 rol eax, 4
364 mov ebp, DWORD PTR 32[esi]
364 mov edi, ebx 365 mov edi, ebx
365 ; R2 33 366 ; R2 33
366 lea edx, DWORD PTR 2272392833[ebp*1+edx] 367 lea edx, DWORD PTR 2272392833[ebp*1+edx]
@@ -377,8 +378,8 @@ L000start:
377 xor edi, edx 378 xor edi, edx
378 lea ecx, DWORD PTR 1839030562[ebp*1+ecx] 379 lea ecx, DWORD PTR 1839030562[ebp*1+ecx]
379 add ecx, edi 380 add ecx, edi
380 mov ebp, DWORD PTR 56[esi]
381 rol ecx, 16 381 rol ecx, 16
382 mov ebp, DWORD PTR 56[esi]
382 mov edi, edx 383 mov edi, edx
383 ; R2 35 384 ; R2 35
384 lea ebx, DWORD PTR 4259657740[ebp*1+ebx] 385 lea ebx, DWORD PTR 4259657740[ebp*1+ebx]
@@ -395,8 +396,8 @@ L000start:
395 xor edi, ebx 396 xor edi, ebx
396 lea eax, DWORD PTR 2763975236[ebp*1+eax] 397 lea eax, DWORD PTR 2763975236[ebp*1+eax]
397 add eax, edi 398 add eax, edi
398 mov ebp, DWORD PTR 16[esi]
399 rol eax, 4 399 rol eax, 4
400 mov ebp, DWORD PTR 16[esi]
400 mov edi, ebx 401 mov edi, ebx
401 ; R2 37 402 ; R2 37
402 lea edx, DWORD PTR 1272893353[ebp*1+edx] 403 lea edx, DWORD PTR 1272893353[ebp*1+edx]
@@ -413,8 +414,8 @@ L000start:
413 xor edi, edx 414 xor edi, edx
414 lea ecx, DWORD PTR 4139469664[ebp*1+ecx] 415 lea ecx, DWORD PTR 4139469664[ebp*1+ecx]
415 add ecx, edi 416 add ecx, edi
416 mov ebp, DWORD PTR 40[esi]
417 rol ecx, 16 417 rol ecx, 16
418 mov ebp, DWORD PTR 40[esi]
418 mov edi, edx 419 mov edi, edx
419 ; R2 39 420 ; R2 39
420 lea ebx, DWORD PTR 3200236656[ebp*1+ebx] 421 lea ebx, DWORD PTR 3200236656[ebp*1+ebx]
@@ -431,8 +432,8 @@ L000start:
431 xor edi, ebx 432 xor edi, ebx
432 lea eax, DWORD PTR 681279174[ebp*1+eax] 433 lea eax, DWORD PTR 681279174[ebp*1+eax]
433 add eax, edi 434 add eax, edi
434 mov ebp, DWORD PTR [esi]
435 rol eax, 4 435 rol eax, 4
436 mov ebp, DWORD PTR [esi]
436 mov edi, ebx 437 mov edi, ebx
437 ; R2 41 438 ; R2 41
438 lea edx, DWORD PTR 3936430074[ebp*1+edx] 439 lea edx, DWORD PTR 3936430074[ebp*1+edx]
@@ -449,8 +450,8 @@ L000start:
449 xor edi, edx 450 xor edi, edx
450 lea ecx, DWORD PTR 3572445317[ebp*1+ecx] 451 lea ecx, DWORD PTR 3572445317[ebp*1+ecx]
451 add ecx, edi 452 add ecx, edi
452 mov ebp, DWORD PTR 24[esi]
453 rol ecx, 16 453 rol ecx, 16
454 mov ebp, DWORD PTR 24[esi]
454 mov edi, edx 455 mov edi, edx
455 ; R2 43 456 ; R2 43
456 lea ebx, DWORD PTR 76029189[ebp*1+ebx] 457 lea ebx, DWORD PTR 76029189[ebp*1+ebx]
@@ -467,8 +468,8 @@ L000start:
467 xor edi, ebx 468 xor edi, ebx
468 lea eax, DWORD PTR 3654602809[ebp*1+eax] 469 lea eax, DWORD PTR 3654602809[ebp*1+eax]
469 add eax, edi 470 add eax, edi
470 mov ebp, DWORD PTR 48[esi]
471 rol eax, 4 471 rol eax, 4
472 mov ebp, DWORD PTR 48[esi]
472 mov edi, ebx 473 mov edi, ebx
473 ; R2 45 474 ; R2 45
474 lea edx, DWORD PTR 3873151461[ebp*1+edx] 475 lea edx, DWORD PTR 3873151461[ebp*1+edx]
@@ -485,8 +486,8 @@ L000start:
485 xor edi, edx 486 xor edi, edx
486 lea ecx, DWORD PTR 530742520[ebp*1+ecx] 487 lea ecx, DWORD PTR 530742520[ebp*1+ecx]
487 add ecx, edi 488 add ecx, edi
488 mov ebp, DWORD PTR 8[esi]
489 rol ecx, 16 489 rol ecx, 16
490 mov ebp, DWORD PTR 8[esi]
490 mov edi, edx 491 mov edi, edx
491 ; R2 47 492 ; R2 47
492 lea ebx, DWORD PTR 3299628645[ebp*1+ebx] 493 lea ebx, DWORD PTR 3299628645[ebp*1+ebx]
@@ -681,6 +682,6 @@ L000start:
681 pop edi 682 pop edi
682 pop esi 683 pop esi
683 ret 684 ret
684_md5_block_x86 ENDP 685_md5_block_asm_host_order ENDP
685_TEXT ENDS 686_TEXT ENDS
686END 687END