diff options
author | ryker <> | 1998-10-05 20:13:16 +0000 |
---|---|---|
committer | ryker <> | 1998-10-05 20:13:16 +0000 |
commit | 9e43e2ac1373d5be5c6500c1bc3b1dd6ee9584b4 (patch) | |
tree | 51ff319f3510104698e541954d10ad98f9125f36 /src/lib/libcrypto/sha | |
parent | 9e77c62555877f9a64805c49d0dcd7dbfbb40f4e (diff) | |
download | openbsd-9e43e2ac1373d5be5c6500c1bc3b1dd6ee9584b4.tar.gz openbsd-9e43e2ac1373d5be5c6500c1bc3b1dd6ee9584b4.tar.bz2 openbsd-9e43e2ac1373d5be5c6500c1bc3b1dd6ee9584b4.zip |
Import of SSLeay-0.9.0b with RSA and IDEA stubbed + OpenBSD build
functionality for shared libs.
Note that routines such as sslv2_init and friends that use RSA will
not work due to lack of RSA in this library.
Needs documentation and help from ports for easy upgrade to full
functionality where legally possible.
Diffstat (limited to 'src/lib/libcrypto/sha')
-rw-r--r-- | src/lib/libcrypto/sha/Makefile.uni | 122 | ||||
-rw-r--r-- | src/lib/libcrypto/sha/asm/s1-win32.asm | 1664 | ||||
-rw-r--r-- | src/lib/libcrypto/sha/asm/sx86unix.cpp | 1948 | ||||
-rw-r--r-- | src/lib/libcrypto/sha/sha_sgst.c | 246 |
4 files changed, 3980 insertions, 0 deletions
diff --git a/src/lib/libcrypto/sha/Makefile.uni b/src/lib/libcrypto/sha/Makefile.uni new file mode 100644 index 0000000000..f3236755b2 --- /dev/null +++ b/src/lib/libcrypto/sha/Makefile.uni | |||
@@ -0,0 +1,122 @@ | |||
1 | # Targets | ||
2 | # make - twidle the options yourself :-) | ||
3 | # make cc - standard cc options | ||
4 | # make gcc - standard gcc options | ||
5 | # make x86-elf - linux-elf etc | ||
6 | # make x86-out - linux-a.out, FreeBSD etc | ||
7 | # make x86-solaris | ||
8 | # make x86-bdsi | ||
9 | |||
10 | DIR= sha | ||
11 | TOP= . | ||
12 | CC= gcc | ||
13 | CFLAG= -O3 -fomit-frame-pointer | ||
14 | |||
15 | CPP= $(CC) -E | ||
16 | INCLUDES= | ||
17 | INSTALLTOP=/usr/local/lib | ||
18 | MAKE= make | ||
19 | MAKEDEPEND= makedepend | ||
20 | MAKEFILE= Makefile.uni | ||
21 | AR= ar r | ||
22 | |||
23 | SHA_ASM_OBJ= | ||
24 | |||
25 | CFLAGS= $(INCLUDES) $(CFLAG) | ||
26 | |||
27 | GENERAL=Makefile | ||
28 | |||
29 | TEST1=shatest | ||
30 | TEST2=sha1test | ||
31 | APP1=sha | ||
32 | APP2=sha1 | ||
33 | |||
34 | TEST=$(TEST1) $(TEST2) | ||
35 | APPS=$(APP1) $(APP2) | ||
36 | |||
37 | LIB=libsha.a | ||
38 | LIBSRC=sha_dgst.c sha1dgst.c sha_one.c sha1_one.c | ||
39 | LIBOBJ=sha_dgst.o sha1dgst.o sha_one.o sha1_one.o $(SHA_ASM_OBJ) | ||
40 | |||
41 | SRC= $(LIBSRC) | ||
42 | |||
43 | EXHEADER= sha.h | ||
44 | HEADER= sha_locl.h $(EXHEADER) | ||
45 | |||
46 | ALL= $(GENERAL) $(SRC) $(HEADER) | ||
47 | |||
48 | all: $(LIB) $(TEST) $(APPS) | ||
49 | |||
50 | $(LIB): $(LIBOBJ) | ||
51 | $(AR) $(LIB) $(LIBOBJ) | ||
52 | sh $(TOP)/ranlib.sh $(LIB) | ||
53 | |||
54 | # elf | ||
55 | asm/sx86-elf.o: asm/sx86unix.cpp | ||
56 | $(CPP) -DELF asm/sx86unix.cpp | as -o asm/sx86-elf.o | ||
57 | |||
58 | # solaris | ||
59 | asm/sx86-sol.o: asm/sx86unix.cpp | ||
60 | $(CC) -E -DSOL asm/sx86unix.cpp | sed 's/^#.*//' > asm/sx86-sol.s | ||
61 | as -o asm/sx86-sol.o asm/sx86-sol.s | ||
62 | rm -f asm/sx86-sol.s | ||
63 | |||
64 | # a.out | ||
65 | asm/sx86-out.o: asm/sx86unix.cpp | ||
66 | $(CPP) -DOUT asm/sx86unix.cpp | as -o asm/sx86-out.o | ||
67 | |||
68 | # bsdi | ||
69 | asm/sx86bsdi.o: asm/sx86unix.cpp | ||
70 | $(CPP) -DBSDI asm/sx86unix.cpp | as -o asm/sx86bsdi.o | ||
71 | |||
72 | asm/sx86unix.cpp: | ||
73 | (cd asm; perl sha1-586.pl cpp >sx86unix.cpp) | ||
74 | |||
75 | test: $(TEST) | ||
76 | ./$(TEST1) | ||
77 | ./$(TEST2) | ||
78 | |||
79 | $(TEST1): $(TEST1).c $(LIB) | ||
80 | $(CC) -o $(TEST1) $(CFLAGS) $(TEST1).c $(LIB) | ||
81 | |||
82 | $(TEST2): $(TEST2).c $(LIB) | ||
83 | $(CC) -o $(TEST2) $(CFLAGS) $(TEST2).c $(LIB) | ||
84 | |||
85 | $(APP1): $(APP1).c $(LIB) | ||
86 | $(CC) -o $(APP1) $(CFLAGS) $(APP1).c $(LIB) | ||
87 | |||
88 | $(APP2): $(APP2).c $(LIB) | ||
89 | $(CC) -o $(APP2) $(CFLAGS) $(APP2).c $(LIB) | ||
90 | |||
91 | lint: | ||
92 | lint -DLINT $(INCLUDES) $(SRC)>fluff | ||
93 | |||
94 | depend: | ||
95 | $(MAKEDEPEND) $(INCLUDES) $(PROGS) $(LIBSRC) | ||
96 | |||
97 | dclean: | ||
98 | perl -pe 'if (/^# DO NOT DELETE THIS LINE/) {print; exit(0);}' $(MAKEFILE) >Makefile.new | ||
99 | mv -f Makefile.new $(MAKEFILE) | ||
100 | |||
101 | clean: | ||
102 | /bin/rm -f $(LIB) $(TEST) $(APPS) *.o asm/*.o *.obj lib tags core .pure .nfs* *.old *.bak fluff | ||
103 | |||
104 | cc: | ||
105 | $(MAKE) SHA_ASM_OBJ="" CC="cc" CFLAG="-O" all | ||
106 | |||
107 | gcc: | ||
108 | $(MAKE) SHA_ASM_OBJ="" CC="gcc" CFLAGS="-O3 -fomit-frame-pointer" all | ||
109 | |||
110 | x86-elf: | ||
111 | $(MAKE) SHA_ASM_OBJ="asm/sx86-elf.o" CFLAG="-DELF -DSHA1_ASM -DL_ENDIAN $(CFLAGS)" all | ||
112 | |||
113 | x86-out: | ||
114 | $(MAKE) SHA_ASM_OBJ="asm/sx86-out.o" CFLAG="-DOUT -DSHA1_ASM -DL_ENDIAN $(CFLAGS)" all | ||
115 | |||
116 | x86-solaris: | ||
117 | $(MAKE) SHA_ASM_OBJ="asm/sx86-sol.o" CFLAG="-DSOL -DSHA1_ASM -DL_ENDIAN $(CFLAGS)" all | ||
118 | |||
119 | x86-bdsi: | ||
120 | $(MAKE) SHA_ASM_OBJ="asm/sx86-bdsi.o" CFLAG="-DBDSI -DSHA1_ASM -DL_ENDIAN $(CFLAGS)" all | ||
121 | |||
122 | # DO NOT DELETE THIS LINE -- make depend depends on it. | ||
diff --git a/src/lib/libcrypto/sha/asm/s1-win32.asm b/src/lib/libcrypto/sha/asm/s1-win32.asm new file mode 100644 index 0000000000..61335666b9 --- /dev/null +++ b/src/lib/libcrypto/sha/asm/s1-win32.asm | |||
@@ -0,0 +1,1664 @@ | |||
1 | ; Don't even think of reading this code | ||
2 | ; It was automatically generated by sha1-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 sha1-586.asm | ||
8 | .486 | ||
9 | .model FLAT | ||
10 | _TEXT SEGMENT | ||
11 | PUBLIC _sha1_block_x86 | ||
12 | |||
13 | _sha1_block_x86 PROC NEAR | ||
14 | push esi | ||
15 | push ebp | ||
16 | mov eax, DWORD PTR 20[esp] | ||
17 | mov esi, DWORD PTR 16[esp] | ||
18 | add eax, esi | ||
19 | mov ebp, DWORD PTR 12[esp] | ||
20 | push ebx | ||
21 | sub eax, 64 | ||
22 | push edi | ||
23 | mov ebx, DWORD PTR 4[ebp] | ||
24 | sub esp, 72 | ||
25 | mov edx, DWORD PTR 12[ebp] | ||
26 | mov edi, DWORD PTR 16[ebp] | ||
27 | mov ecx, DWORD PTR 8[ebp] | ||
28 | mov DWORD PTR 68[esp],eax | ||
29 | ; First we need to setup the X array | ||
30 | mov eax, DWORD PTR [esi] | ||
31 | L000start: | ||
32 | ; First, load the words onto the stack in network byte order | ||
33 | bswap eax | ||
34 | mov DWORD PTR [esp],eax | ||
35 | mov eax, DWORD PTR 4[esi] | ||
36 | bswap eax | ||
37 | mov DWORD PTR 4[esp],eax | ||
38 | mov eax, DWORD PTR 8[esi] | ||
39 | bswap eax | ||
40 | mov DWORD PTR 8[esp],eax | ||
41 | mov eax, DWORD PTR 12[esi] | ||
42 | bswap eax | ||
43 | mov DWORD PTR 12[esp],eax | ||
44 | mov eax, DWORD PTR 16[esi] | ||
45 | bswap eax | ||
46 | mov DWORD PTR 16[esp],eax | ||
47 | mov eax, DWORD PTR 20[esi] | ||
48 | bswap eax | ||
49 | mov DWORD PTR 20[esp],eax | ||
50 | mov eax, DWORD PTR 24[esi] | ||
51 | bswap eax | ||
52 | mov DWORD PTR 24[esp],eax | ||
53 | mov eax, DWORD PTR 28[esi] | ||
54 | bswap eax | ||
55 | mov DWORD PTR 28[esp],eax | ||
56 | mov eax, DWORD PTR 32[esi] | ||
57 | bswap eax | ||
58 | mov DWORD PTR 32[esp],eax | ||
59 | mov eax, DWORD PTR 36[esi] | ||
60 | bswap eax | ||
61 | mov DWORD PTR 36[esp],eax | ||
62 | mov eax, DWORD PTR 40[esi] | ||
63 | bswap eax | ||
64 | mov DWORD PTR 40[esp],eax | ||
65 | mov eax, DWORD PTR 44[esi] | ||
66 | bswap eax | ||
67 | mov DWORD PTR 44[esp],eax | ||
68 | mov eax, DWORD PTR 48[esi] | ||
69 | bswap eax | ||
70 | mov DWORD PTR 48[esp],eax | ||
71 | mov eax, DWORD PTR 52[esi] | ||
72 | bswap eax | ||
73 | mov DWORD PTR 52[esp],eax | ||
74 | mov eax, DWORD PTR 56[esi] | ||
75 | bswap eax | ||
76 | mov DWORD PTR 56[esp],eax | ||
77 | mov eax, DWORD PTR 60[esi] | ||
78 | bswap eax | ||
79 | mov DWORD PTR 60[esp],eax | ||
80 | ; We now have the X array on the stack | ||
81 | ; starting at sp-4 | ||
82 | mov DWORD PTR 64[esp],esi | ||
83 | ; | ||
84 | ; Start processing | ||
85 | mov eax, DWORD PTR [ebp] | ||
86 | ; 00_15 0 | ||
87 | mov esi, ecx | ||
88 | mov ebp, eax | ||
89 | xor esi, edx | ||
90 | rol ebp, 5 | ||
91 | and esi, ebx | ||
92 | add ebp, edi | ||
93 | ror ebx, 1 | ||
94 | mov edi, DWORD PTR [esp] | ||
95 | ror ebx, 1 | ||
96 | xor esi, edx | ||
97 | lea ebp, DWORD PTR 1518500249[edi*1+ebp] | ||
98 | mov edi, ebx | ||
99 | add esi, ebp | ||
100 | xor edi, ecx | ||
101 | mov ebp, esi | ||
102 | and edi, eax | ||
103 | rol ebp, 5 | ||
104 | add ebp, edx | ||
105 | mov edx, DWORD PTR 4[esp] | ||
106 | ror eax, 1 | ||
107 | xor edi, ecx | ||
108 | ror eax, 1 | ||
109 | lea ebp, DWORD PTR 1518500249[edx*1+ebp] | ||
110 | add edi, ebp | ||
111 | ; 00_15 2 | ||
112 | mov edx, eax | ||
113 | mov ebp, edi | ||
114 | xor edx, ebx | ||
115 | rol ebp, 5 | ||
116 | and edx, esi | ||
117 | add ebp, ecx | ||
118 | ror esi, 1 | ||
119 | mov ecx, DWORD PTR 8[esp] | ||
120 | ror esi, 1 | ||
121 | xor edx, ebx | ||
122 | lea ebp, DWORD PTR 1518500249[ecx*1+ebp] | ||
123 | mov ecx, esi | ||
124 | add edx, ebp | ||
125 | xor ecx, eax | ||
126 | mov ebp, edx | ||
127 | and ecx, edi | ||
128 | rol ebp, 5 | ||
129 | add ebp, ebx | ||
130 | mov ebx, DWORD PTR 12[esp] | ||
131 | ror edi, 1 | ||
132 | xor ecx, eax | ||
133 | ror edi, 1 | ||
134 | lea ebp, DWORD PTR 1518500249[ebx*1+ebp] | ||
135 | add ecx, ebp | ||
136 | ; 00_15 4 | ||
137 | mov ebx, edi | ||
138 | mov ebp, ecx | ||
139 | xor ebx, esi | ||
140 | rol ebp, 5 | ||
141 | and ebx, edx | ||
142 | add ebp, eax | ||
143 | ror edx, 1 | ||
144 | mov eax, DWORD PTR 16[esp] | ||
145 | ror edx, 1 | ||
146 | xor ebx, esi | ||
147 | lea ebp, DWORD PTR 1518500249[eax*1+ebp] | ||
148 | mov eax, edx | ||
149 | add ebx, ebp | ||
150 | xor eax, edi | ||
151 | mov ebp, ebx | ||
152 | and eax, ecx | ||
153 | rol ebp, 5 | ||
154 | add ebp, esi | ||
155 | mov esi, DWORD PTR 20[esp] | ||
156 | ror ecx, 1 | ||
157 | xor eax, edi | ||
158 | ror ecx, 1 | ||
159 | lea ebp, DWORD PTR 1518500249[esi*1+ebp] | ||
160 | add eax, ebp | ||
161 | ; 00_15 6 | ||
162 | mov esi, ecx | ||
163 | mov ebp, eax | ||
164 | xor esi, edx | ||
165 | rol ebp, 5 | ||
166 | and esi, ebx | ||
167 | add ebp, edi | ||
168 | ror ebx, 1 | ||
169 | mov edi, DWORD PTR 24[esp] | ||
170 | ror ebx, 1 | ||
171 | xor esi, edx | ||
172 | lea ebp, DWORD PTR 1518500249[edi*1+ebp] | ||
173 | mov edi, ebx | ||
174 | add esi, ebp | ||
175 | xor edi, ecx | ||
176 | mov ebp, esi | ||
177 | and edi, eax | ||
178 | rol ebp, 5 | ||
179 | add ebp, edx | ||
180 | mov edx, DWORD PTR 28[esp] | ||
181 | ror eax, 1 | ||
182 | xor edi, ecx | ||
183 | ror eax, 1 | ||
184 | lea ebp, DWORD PTR 1518500249[edx*1+ebp] | ||
185 | add edi, ebp | ||
186 | ; 00_15 8 | ||
187 | mov edx, eax | ||
188 | mov ebp, edi | ||
189 | xor edx, ebx | ||
190 | rol ebp, 5 | ||
191 | and edx, esi | ||
192 | add ebp, ecx | ||
193 | ror esi, 1 | ||
194 | mov ecx, DWORD PTR 32[esp] | ||
195 | ror esi, 1 | ||
196 | xor edx, ebx | ||
197 | lea ebp, DWORD PTR 1518500249[ecx*1+ebp] | ||
198 | mov ecx, esi | ||
199 | add edx, ebp | ||
200 | xor ecx, eax | ||
201 | mov ebp, edx | ||
202 | and ecx, edi | ||
203 | rol ebp, 5 | ||
204 | add ebp, ebx | ||
205 | mov ebx, DWORD PTR 36[esp] | ||
206 | ror edi, 1 | ||
207 | xor ecx, eax | ||
208 | ror edi, 1 | ||
209 | lea ebp, DWORD PTR 1518500249[ebx*1+ebp] | ||
210 | add ecx, ebp | ||
211 | ; 00_15 10 | ||
212 | mov ebx, edi | ||
213 | mov ebp, ecx | ||
214 | xor ebx, esi | ||
215 | rol ebp, 5 | ||
216 | and ebx, edx | ||
217 | add ebp, eax | ||
218 | ror edx, 1 | ||
219 | mov eax, DWORD PTR 40[esp] | ||
220 | ror edx, 1 | ||
221 | xor ebx, esi | ||
222 | lea ebp, DWORD PTR 1518500249[eax*1+ebp] | ||
223 | mov eax, edx | ||
224 | add ebx, ebp | ||
225 | xor eax, edi | ||
226 | mov ebp, ebx | ||
227 | and eax, ecx | ||
228 | rol ebp, 5 | ||
229 | add ebp, esi | ||
230 | mov esi, DWORD PTR 44[esp] | ||
231 | ror ecx, 1 | ||
232 | xor eax, edi | ||
233 | ror ecx, 1 | ||
234 | lea ebp, DWORD PTR 1518500249[esi*1+ebp] | ||
235 | add eax, ebp | ||
236 | ; 00_15 12 | ||
237 | mov esi, ecx | ||
238 | mov ebp, eax | ||
239 | xor esi, edx | ||
240 | rol ebp, 5 | ||
241 | and esi, ebx | ||
242 | add ebp, edi | ||
243 | ror ebx, 1 | ||
244 | mov edi, DWORD PTR 48[esp] | ||
245 | ror ebx, 1 | ||
246 | xor esi, edx | ||
247 | lea ebp, DWORD PTR 1518500249[edi*1+ebp] | ||
248 | mov edi, ebx | ||
249 | add esi, ebp | ||
250 | xor edi, ecx | ||
251 | mov ebp, esi | ||
252 | and edi, eax | ||
253 | rol ebp, 5 | ||
254 | add ebp, edx | ||
255 | mov edx, DWORD PTR 52[esp] | ||
256 | ror eax, 1 | ||
257 | xor edi, ecx | ||
258 | ror eax, 1 | ||
259 | lea ebp, DWORD PTR 1518500249[edx*1+ebp] | ||
260 | add edi, ebp | ||
261 | ; 00_15 14 | ||
262 | mov edx, eax | ||
263 | mov ebp, edi | ||
264 | xor edx, ebx | ||
265 | rol ebp, 5 | ||
266 | and edx, esi | ||
267 | add ebp, ecx | ||
268 | ror esi, 1 | ||
269 | mov ecx, DWORD PTR 56[esp] | ||
270 | ror esi, 1 | ||
271 | xor edx, ebx | ||
272 | lea ebp, DWORD PTR 1518500249[ecx*1+ebp] | ||
273 | mov ecx, esi | ||
274 | add edx, ebp | ||
275 | xor ecx, eax | ||
276 | mov ebp, edx | ||
277 | and ecx, edi | ||
278 | rol ebp, 5 | ||
279 | add ebp, ebx | ||
280 | mov ebx, DWORD PTR 60[esp] | ||
281 | ror edi, 1 | ||
282 | xor ecx, eax | ||
283 | ror edi, 1 | ||
284 | lea ebp, DWORD PTR 1518500249[ebx*1+ebp] | ||
285 | add ecx, ebp | ||
286 | ; 16_19 16 | ||
287 | nop | ||
288 | mov ebp, DWORD PTR [esp] | ||
289 | mov ebx, DWORD PTR 8[esp] | ||
290 | xor ebx, ebp | ||
291 | mov ebp, DWORD PTR 32[esp] | ||
292 | xor ebx, ebp | ||
293 | mov ebp, DWORD PTR 52[esp] | ||
294 | xor ebx, ebp | ||
295 | mov ebp, edi | ||
296 | rol ebx, 1 | ||
297 | xor ebp, esi | ||
298 | mov DWORD PTR [esp],ebx | ||
299 | and ebp, edx | ||
300 | lea ebx, DWORD PTR 1518500249[eax*1+ebx] | ||
301 | xor ebp, esi | ||
302 | mov eax, ecx | ||
303 | add ebx, ebp | ||
304 | rol eax, 5 | ||
305 | ror edx, 1 | ||
306 | add ebx, eax | ||
307 | mov eax, DWORD PTR 4[esp] | ||
308 | mov ebp, DWORD PTR 12[esp] | ||
309 | xor eax, ebp | ||
310 | mov ebp, DWORD PTR 36[esp] | ||
311 | xor eax, ebp | ||
312 | mov ebp, DWORD PTR 56[esp] | ||
313 | ror edx, 1 | ||
314 | xor eax, ebp | ||
315 | rol eax, 1 | ||
316 | mov ebp, edx | ||
317 | xor ebp, edi | ||
318 | mov DWORD PTR 4[esp],eax | ||
319 | and ebp, ecx | ||
320 | lea eax, DWORD PTR 1518500249[esi*1+eax] | ||
321 | xor ebp, edi | ||
322 | mov esi, ebx | ||
323 | rol esi, 5 | ||
324 | ror ecx, 1 | ||
325 | add eax, esi | ||
326 | ror ecx, 1 | ||
327 | add eax, ebp | ||
328 | ; 16_19 18 | ||
329 | mov ebp, DWORD PTR 8[esp] | ||
330 | mov esi, DWORD PTR 16[esp] | ||
331 | xor esi, ebp | ||
332 | mov ebp, DWORD PTR 40[esp] | ||
333 | xor esi, ebp | ||
334 | mov ebp, DWORD PTR 60[esp] | ||
335 | xor esi, ebp | ||
336 | mov ebp, ecx | ||
337 | rol esi, 1 | ||
338 | xor ebp, edx | ||
339 | mov DWORD PTR 8[esp],esi | ||
340 | and ebp, ebx | ||
341 | lea esi, DWORD PTR 1518500249[edi*1+esi] | ||
342 | xor ebp, edx | ||
343 | mov edi, eax | ||
344 | add esi, ebp | ||
345 | rol edi, 5 | ||
346 | ror ebx, 1 | ||
347 | add esi, edi | ||
348 | mov edi, DWORD PTR 12[esp] | ||
349 | mov ebp, DWORD PTR 20[esp] | ||
350 | xor edi, ebp | ||
351 | mov ebp, DWORD PTR 44[esp] | ||
352 | xor edi, ebp | ||
353 | mov ebp, DWORD PTR [esp] | ||
354 | ror ebx, 1 | ||
355 | xor edi, ebp | ||
356 | rol edi, 1 | ||
357 | mov ebp, ebx | ||
358 | xor ebp, ecx | ||
359 | mov DWORD PTR 12[esp],edi | ||
360 | and ebp, eax | ||
361 | lea edi, DWORD PTR 1518500249[edx*1+edi] | ||
362 | xor ebp, ecx | ||
363 | mov edx, esi | ||
364 | rol edx, 5 | ||
365 | ror eax, 1 | ||
366 | add edi, edx | ||
367 | ror eax, 1 | ||
368 | add edi, ebp | ||
369 | ; 20_39 20 | ||
370 | mov edx, DWORD PTR 16[esp] | ||
371 | mov ebp, DWORD PTR 24[esp] | ||
372 | xor edx, ebp | ||
373 | mov ebp, DWORD PTR 48[esp] | ||
374 | xor edx, ebp | ||
375 | mov ebp, DWORD PTR 4[esp] | ||
376 | xor edx, ebp | ||
377 | mov ebp, esi | ||
378 | rol edx, 1 | ||
379 | xor ebp, eax | ||
380 | mov DWORD PTR 16[esp],edx | ||
381 | xor ebp, ebx | ||
382 | lea edx, DWORD PTR 1859775393[ecx*1+edx] | ||
383 | mov ecx, edi | ||
384 | rol ecx, 5 | ||
385 | ror esi, 1 | ||
386 | add ecx, ebp | ||
387 | ror esi, 1 | ||
388 | add edx, ecx | ||
389 | ; 20_39 21 | ||
390 | mov ecx, DWORD PTR 20[esp] | ||
391 | mov ebp, DWORD PTR 28[esp] | ||
392 | xor ecx, ebp | ||
393 | mov ebp, DWORD PTR 52[esp] | ||
394 | xor ecx, ebp | ||
395 | mov ebp, DWORD PTR 8[esp] | ||
396 | xor ecx, ebp | ||
397 | mov ebp, edi | ||
398 | rol ecx, 1 | ||
399 | xor ebp, esi | ||
400 | mov DWORD PTR 20[esp],ecx | ||
401 | xor ebp, eax | ||
402 | lea ecx, DWORD PTR 1859775393[ebx*1+ecx] | ||
403 | mov ebx, edx | ||
404 | rol ebx, 5 | ||
405 | ror edi, 1 | ||
406 | add ebx, ebp | ||
407 | ror edi, 1 | ||
408 | add ecx, ebx | ||
409 | ; 20_39 22 | ||
410 | mov ebx, DWORD PTR 24[esp] | ||
411 | mov ebp, DWORD PTR 32[esp] | ||
412 | xor ebx, ebp | ||
413 | mov ebp, DWORD PTR 56[esp] | ||
414 | xor ebx, ebp | ||
415 | mov ebp, DWORD PTR 12[esp] | ||
416 | xor ebx, ebp | ||
417 | mov ebp, edx | ||
418 | rol ebx, 1 | ||
419 | xor ebp, edi | ||
420 | mov DWORD PTR 24[esp],ebx | ||
421 | xor ebp, esi | ||
422 | lea ebx, DWORD PTR 1859775393[eax*1+ebx] | ||
423 | mov eax, ecx | ||
424 | rol eax, 5 | ||
425 | ror edx, 1 | ||
426 | add eax, ebp | ||
427 | ror edx, 1 | ||
428 | add ebx, eax | ||
429 | ; 20_39 23 | ||
430 | mov eax, DWORD PTR 28[esp] | ||
431 | mov ebp, DWORD PTR 36[esp] | ||
432 | xor eax, ebp | ||
433 | mov ebp, DWORD PTR 60[esp] | ||
434 | xor eax, ebp | ||
435 | mov ebp, DWORD PTR 16[esp] | ||
436 | xor eax, ebp | ||
437 | mov ebp, ecx | ||
438 | rol eax, 1 | ||
439 | xor ebp, edx | ||
440 | mov DWORD PTR 28[esp],eax | ||
441 | xor ebp, edi | ||
442 | lea eax, DWORD PTR 1859775393[esi*1+eax] | ||
443 | mov esi, ebx | ||
444 | rol esi, 5 | ||
445 | ror ecx, 1 | ||
446 | add esi, ebp | ||
447 | ror ecx, 1 | ||
448 | add eax, esi | ||
449 | ; 20_39 24 | ||
450 | mov esi, DWORD PTR 32[esp] | ||
451 | mov ebp, DWORD PTR 40[esp] | ||
452 | xor esi, ebp | ||
453 | mov ebp, DWORD PTR [esp] | ||
454 | xor esi, ebp | ||
455 | mov ebp, DWORD PTR 20[esp] | ||
456 | xor esi, ebp | ||
457 | mov ebp, ebx | ||
458 | rol esi, 1 | ||
459 | xor ebp, ecx | ||
460 | mov DWORD PTR 32[esp],esi | ||
461 | xor ebp, edx | ||
462 | lea esi, DWORD PTR 1859775393[edi*1+esi] | ||
463 | mov edi, eax | ||
464 | rol edi, 5 | ||
465 | ror ebx, 1 | ||
466 | add edi, ebp | ||
467 | ror ebx, 1 | ||
468 | add esi, edi | ||
469 | ; 20_39 25 | ||
470 | mov edi, DWORD PTR 36[esp] | ||
471 | mov ebp, DWORD PTR 44[esp] | ||
472 | xor edi, ebp | ||
473 | mov ebp, DWORD PTR 4[esp] | ||
474 | xor edi, ebp | ||
475 | mov ebp, DWORD PTR 24[esp] | ||
476 | xor edi, ebp | ||
477 | mov ebp, eax | ||
478 | rol edi, 1 | ||
479 | xor ebp, ebx | ||
480 | mov DWORD PTR 36[esp],edi | ||
481 | xor ebp, ecx | ||
482 | lea edi, DWORD PTR 1859775393[edx*1+edi] | ||
483 | mov edx, esi | ||
484 | rol edx, 5 | ||
485 | ror eax, 1 | ||
486 | add edx, ebp | ||
487 | ror eax, 1 | ||
488 | add edi, edx | ||
489 | ; 20_39 26 | ||
490 | mov edx, DWORD PTR 40[esp] | ||
491 | mov ebp, DWORD PTR 48[esp] | ||
492 | xor edx, ebp | ||
493 | mov ebp, DWORD PTR 8[esp] | ||
494 | xor edx, ebp | ||
495 | mov ebp, DWORD PTR 28[esp] | ||
496 | xor edx, ebp | ||
497 | mov ebp, esi | ||
498 | rol edx, 1 | ||
499 | xor ebp, eax | ||
500 | mov DWORD PTR 40[esp],edx | ||
501 | xor ebp, ebx | ||
502 | lea edx, DWORD PTR 1859775393[ecx*1+edx] | ||
503 | mov ecx, edi | ||
504 | rol ecx, 5 | ||
505 | ror esi, 1 | ||
506 | add ecx, ebp | ||
507 | ror esi, 1 | ||
508 | add edx, ecx | ||
509 | ; 20_39 27 | ||
510 | mov ecx, DWORD PTR 44[esp] | ||
511 | mov ebp, DWORD PTR 52[esp] | ||
512 | xor ecx, ebp | ||
513 | mov ebp, DWORD PTR 12[esp] | ||
514 | xor ecx, ebp | ||
515 | mov ebp, DWORD PTR 32[esp] | ||
516 | xor ecx, ebp | ||
517 | mov ebp, edi | ||
518 | rol ecx, 1 | ||
519 | xor ebp, esi | ||
520 | mov DWORD PTR 44[esp],ecx | ||
521 | xor ebp, eax | ||
522 | lea ecx, DWORD PTR 1859775393[ebx*1+ecx] | ||
523 | mov ebx, edx | ||
524 | rol ebx, 5 | ||
525 | ror edi, 1 | ||
526 | add ebx, ebp | ||
527 | ror edi, 1 | ||
528 | add ecx, ebx | ||
529 | ; 20_39 28 | ||
530 | mov ebx, DWORD PTR 48[esp] | ||
531 | mov ebp, DWORD PTR 56[esp] | ||
532 | xor ebx, ebp | ||
533 | mov ebp, DWORD PTR 16[esp] | ||
534 | xor ebx, ebp | ||
535 | mov ebp, DWORD PTR 36[esp] | ||
536 | xor ebx, ebp | ||
537 | mov ebp, edx | ||
538 | rol ebx, 1 | ||
539 | xor ebp, edi | ||
540 | mov DWORD PTR 48[esp],ebx | ||
541 | xor ebp, esi | ||
542 | lea ebx, DWORD PTR 1859775393[eax*1+ebx] | ||
543 | mov eax, ecx | ||
544 | rol eax, 5 | ||
545 | ror edx, 1 | ||
546 | add eax, ebp | ||
547 | ror edx, 1 | ||
548 | add ebx, eax | ||
549 | ; 20_39 29 | ||
550 | mov eax, DWORD PTR 52[esp] | ||
551 | mov ebp, DWORD PTR 60[esp] | ||
552 | xor eax, ebp | ||
553 | mov ebp, DWORD PTR 20[esp] | ||
554 | xor eax, ebp | ||
555 | mov ebp, DWORD PTR 40[esp] | ||
556 | xor eax, ebp | ||
557 | mov ebp, ecx | ||
558 | rol eax, 1 | ||
559 | xor ebp, edx | ||
560 | mov DWORD PTR 52[esp],eax | ||
561 | xor ebp, edi | ||
562 | lea eax, DWORD PTR 1859775393[esi*1+eax] | ||
563 | mov esi, ebx | ||
564 | rol esi, 5 | ||
565 | ror ecx, 1 | ||
566 | add esi, ebp | ||
567 | ror ecx, 1 | ||
568 | add eax, esi | ||
569 | ; 20_39 30 | ||
570 | mov esi, DWORD PTR 56[esp] | ||
571 | mov ebp, DWORD PTR [esp] | ||
572 | xor esi, ebp | ||
573 | mov ebp, DWORD PTR 24[esp] | ||
574 | xor esi, ebp | ||
575 | mov ebp, DWORD PTR 44[esp] | ||
576 | xor esi, ebp | ||
577 | mov ebp, ebx | ||
578 | rol esi, 1 | ||
579 | xor ebp, ecx | ||
580 | mov DWORD PTR 56[esp],esi | ||
581 | xor ebp, edx | ||
582 | lea esi, DWORD PTR 1859775393[edi*1+esi] | ||
583 | mov edi, eax | ||
584 | rol edi, 5 | ||
585 | ror ebx, 1 | ||
586 | add edi, ebp | ||
587 | ror ebx, 1 | ||
588 | add esi, edi | ||
589 | ; 20_39 31 | ||
590 | mov edi, DWORD PTR 60[esp] | ||
591 | mov ebp, DWORD PTR 4[esp] | ||
592 | xor edi, ebp | ||
593 | mov ebp, DWORD PTR 28[esp] | ||
594 | xor edi, ebp | ||
595 | mov ebp, DWORD PTR 48[esp] | ||
596 | xor edi, ebp | ||
597 | mov ebp, eax | ||
598 | rol edi, 1 | ||
599 | xor ebp, ebx | ||
600 | mov DWORD PTR 60[esp],edi | ||
601 | xor ebp, ecx | ||
602 | lea edi, DWORD PTR 1859775393[edx*1+edi] | ||
603 | mov edx, esi | ||
604 | rol edx, 5 | ||
605 | ror eax, 1 | ||
606 | add edx, ebp | ||
607 | ror eax, 1 | ||
608 | add edi, edx | ||
609 | ; 20_39 32 | ||
610 | mov edx, DWORD PTR [esp] | ||
611 | mov ebp, DWORD PTR 8[esp] | ||
612 | xor edx, ebp | ||
613 | mov ebp, DWORD PTR 32[esp] | ||
614 | xor edx, ebp | ||
615 | mov ebp, DWORD PTR 52[esp] | ||
616 | xor edx, ebp | ||
617 | mov ebp, esi | ||
618 | rol edx, 1 | ||
619 | xor ebp, eax | ||
620 | mov DWORD PTR [esp],edx | ||
621 | xor ebp, ebx | ||
622 | lea edx, DWORD PTR 1859775393[ecx*1+edx] | ||
623 | mov ecx, edi | ||
624 | rol ecx, 5 | ||
625 | ror esi, 1 | ||
626 | add ecx, ebp | ||
627 | ror esi, 1 | ||
628 | add edx, ecx | ||
629 | ; 20_39 33 | ||
630 | mov ecx, DWORD PTR 4[esp] | ||
631 | mov ebp, DWORD PTR 12[esp] | ||
632 | xor ecx, ebp | ||
633 | mov ebp, DWORD PTR 36[esp] | ||
634 | xor ecx, ebp | ||
635 | mov ebp, DWORD PTR 56[esp] | ||
636 | xor ecx, ebp | ||
637 | mov ebp, edi | ||
638 | rol ecx, 1 | ||
639 | xor ebp, esi | ||
640 | mov DWORD PTR 4[esp],ecx | ||
641 | xor ebp, eax | ||
642 | lea ecx, DWORD PTR 1859775393[ebx*1+ecx] | ||
643 | mov ebx, edx | ||
644 | rol ebx, 5 | ||
645 | ror edi, 1 | ||
646 | add ebx, ebp | ||
647 | ror edi, 1 | ||
648 | add ecx, ebx | ||
649 | ; 20_39 34 | ||
650 | mov ebx, DWORD PTR 8[esp] | ||
651 | mov ebp, DWORD PTR 16[esp] | ||
652 | xor ebx, ebp | ||
653 | mov ebp, DWORD PTR 40[esp] | ||
654 | xor ebx, ebp | ||
655 | mov ebp, DWORD PTR 60[esp] | ||
656 | xor ebx, ebp | ||
657 | mov ebp, edx | ||
658 | rol ebx, 1 | ||
659 | xor ebp, edi | ||
660 | mov DWORD PTR 8[esp],ebx | ||
661 | xor ebp, esi | ||
662 | lea ebx, DWORD PTR 1859775393[eax*1+ebx] | ||
663 | mov eax, ecx | ||
664 | rol eax, 5 | ||
665 | ror edx, 1 | ||
666 | add eax, ebp | ||
667 | ror edx, 1 | ||
668 | add ebx, eax | ||
669 | ; 20_39 35 | ||
670 | mov eax, DWORD PTR 12[esp] | ||
671 | mov ebp, DWORD PTR 20[esp] | ||
672 | xor eax, ebp | ||
673 | mov ebp, DWORD PTR 44[esp] | ||
674 | xor eax, ebp | ||
675 | mov ebp, DWORD PTR [esp] | ||
676 | xor eax, ebp | ||
677 | mov ebp, ecx | ||
678 | rol eax, 1 | ||
679 | xor ebp, edx | ||
680 | mov DWORD PTR 12[esp],eax | ||
681 | xor ebp, edi | ||
682 | lea eax, DWORD PTR 1859775393[esi*1+eax] | ||
683 | mov esi, ebx | ||
684 | rol esi, 5 | ||
685 | ror ecx, 1 | ||
686 | add esi, ebp | ||
687 | ror ecx, 1 | ||
688 | add eax, esi | ||
689 | ; 20_39 36 | ||
690 | mov esi, DWORD PTR 16[esp] | ||
691 | mov ebp, DWORD PTR 24[esp] | ||
692 | xor esi, ebp | ||
693 | mov ebp, DWORD PTR 48[esp] | ||
694 | xor esi, ebp | ||
695 | mov ebp, DWORD PTR 4[esp] | ||
696 | xor esi, ebp | ||
697 | mov ebp, ebx | ||
698 | rol esi, 1 | ||
699 | xor ebp, ecx | ||
700 | mov DWORD PTR 16[esp],esi | ||
701 | xor ebp, edx | ||
702 | lea esi, DWORD PTR 1859775393[edi*1+esi] | ||
703 | mov edi, eax | ||
704 | rol edi, 5 | ||
705 | ror ebx, 1 | ||
706 | add edi, ebp | ||
707 | ror ebx, 1 | ||
708 | add esi, edi | ||
709 | ; 20_39 37 | ||
710 | mov edi, DWORD PTR 20[esp] | ||
711 | mov ebp, DWORD PTR 28[esp] | ||
712 | xor edi, ebp | ||
713 | mov ebp, DWORD PTR 52[esp] | ||
714 | xor edi, ebp | ||
715 | mov ebp, DWORD PTR 8[esp] | ||
716 | xor edi, ebp | ||
717 | mov ebp, eax | ||
718 | rol edi, 1 | ||
719 | xor ebp, ebx | ||
720 | mov DWORD PTR 20[esp],edi | ||
721 | xor ebp, ecx | ||
722 | lea edi, DWORD PTR 1859775393[edx*1+edi] | ||
723 | mov edx, esi | ||
724 | rol edx, 5 | ||
725 | ror eax, 1 | ||
726 | add edx, ebp | ||
727 | ror eax, 1 | ||
728 | add edi, edx | ||
729 | ; 20_39 38 | ||
730 | mov edx, DWORD PTR 24[esp] | ||
731 | mov ebp, DWORD PTR 32[esp] | ||
732 | xor edx, ebp | ||
733 | mov ebp, DWORD PTR 56[esp] | ||
734 | xor edx, ebp | ||
735 | mov ebp, DWORD PTR 12[esp] | ||
736 | xor edx, ebp | ||
737 | mov ebp, esi | ||
738 | rol edx, 1 | ||
739 | xor ebp, eax | ||
740 | mov DWORD PTR 24[esp],edx | ||
741 | xor ebp, ebx | ||
742 | lea edx, DWORD PTR 1859775393[ecx*1+edx] | ||
743 | mov ecx, edi | ||
744 | rol ecx, 5 | ||
745 | ror esi, 1 | ||
746 | add ecx, ebp | ||
747 | ror esi, 1 | ||
748 | add edx, ecx | ||
749 | ; 20_39 39 | ||
750 | mov ecx, DWORD PTR 28[esp] | ||
751 | mov ebp, DWORD PTR 36[esp] | ||
752 | xor ecx, ebp | ||
753 | mov ebp, DWORD PTR 60[esp] | ||
754 | xor ecx, ebp | ||
755 | mov ebp, DWORD PTR 16[esp] | ||
756 | xor ecx, ebp | ||
757 | mov ebp, edi | ||
758 | rol ecx, 1 | ||
759 | xor ebp, esi | ||
760 | mov DWORD PTR 28[esp],ecx | ||
761 | xor ebp, eax | ||
762 | lea ecx, DWORD PTR 1859775393[ebx*1+ecx] | ||
763 | mov ebx, edx | ||
764 | rol ebx, 5 | ||
765 | ror edi, 1 | ||
766 | add ebx, ebp | ||
767 | ror edi, 1 | ||
768 | add ecx, ebx | ||
769 | ; 40_59 40 | ||
770 | mov ebx, DWORD PTR 32[esp] | ||
771 | mov ebp, DWORD PTR 40[esp] | ||
772 | xor ebx, ebp | ||
773 | mov ebp, DWORD PTR [esp] | ||
774 | xor ebx, ebp | ||
775 | mov ebp, DWORD PTR 20[esp] | ||
776 | xor ebx, ebp | ||
777 | mov ebp, edx | ||
778 | rol ebx, 1 | ||
779 | or ebp, edi | ||
780 | mov DWORD PTR 32[esp],ebx | ||
781 | and ebp, esi | ||
782 | lea ebx, DWORD PTR 2400959708[eax*1+ebx] | ||
783 | mov eax, edx | ||
784 | ror edx, 1 | ||
785 | and eax, edi | ||
786 | or ebp, eax | ||
787 | mov eax, ecx | ||
788 | rol eax, 5 | ||
789 | add ebp, eax | ||
790 | mov eax, DWORD PTR 36[esp] | ||
791 | add ebx, ebp | ||
792 | mov ebp, DWORD PTR 44[esp] | ||
793 | xor eax, ebp | ||
794 | mov ebp, DWORD PTR 4[esp] | ||
795 | xor eax, ebp | ||
796 | mov ebp, DWORD PTR 24[esp] | ||
797 | ror edx, 1 | ||
798 | xor eax, ebp | ||
799 | rol eax, 1 | ||
800 | mov ebp, ecx | ||
801 | mov DWORD PTR 36[esp],eax | ||
802 | or ebp, edx | ||
803 | lea eax, DWORD PTR 2400959708[esi*1+eax] | ||
804 | mov esi, ecx | ||
805 | and ebp, edi | ||
806 | and esi, edx | ||
807 | or ebp, esi | ||
808 | mov esi, ebx | ||
809 | rol esi, 5 | ||
810 | ror ecx, 1 | ||
811 | add ebp, esi | ||
812 | ror ecx, 1 | ||
813 | add eax, ebp | ||
814 | ; 40_59 41 | ||
815 | ; 40_59 42 | ||
816 | mov esi, DWORD PTR 40[esp] | ||
817 | mov ebp, DWORD PTR 48[esp] | ||
818 | xor esi, ebp | ||
819 | mov ebp, DWORD PTR 8[esp] | ||
820 | xor esi, ebp | ||
821 | mov ebp, DWORD PTR 28[esp] | ||
822 | xor esi, ebp | ||
823 | mov ebp, ebx | ||
824 | rol esi, 1 | ||
825 | or ebp, ecx | ||
826 | mov DWORD PTR 40[esp],esi | ||
827 | and ebp, edx | ||
828 | lea esi, DWORD PTR 2400959708[edi*1+esi] | ||
829 | mov edi, ebx | ||
830 | ror ebx, 1 | ||
831 | and edi, ecx | ||
832 | or ebp, edi | ||
833 | mov edi, eax | ||
834 | rol edi, 5 | ||
835 | add ebp, edi | ||
836 | mov edi, DWORD PTR 44[esp] | ||
837 | add esi, ebp | ||
838 | mov ebp, DWORD PTR 52[esp] | ||
839 | xor edi, ebp | ||
840 | mov ebp, DWORD PTR 12[esp] | ||
841 | xor edi, ebp | ||
842 | mov ebp, DWORD PTR 32[esp] | ||
843 | ror ebx, 1 | ||
844 | xor edi, ebp | ||
845 | rol edi, 1 | ||
846 | mov ebp, eax | ||
847 | mov DWORD PTR 44[esp],edi | ||
848 | or ebp, ebx | ||
849 | lea edi, DWORD PTR 2400959708[edx*1+edi] | ||
850 | mov edx, eax | ||
851 | and ebp, ecx | ||
852 | and edx, ebx | ||
853 | or ebp, edx | ||
854 | mov edx, esi | ||
855 | rol edx, 5 | ||
856 | ror eax, 1 | ||
857 | add ebp, edx | ||
858 | ror eax, 1 | ||
859 | add edi, ebp | ||
860 | ; 40_59 43 | ||
861 | ; 40_59 44 | ||
862 | mov edx, DWORD PTR 48[esp] | ||
863 | mov ebp, DWORD PTR 56[esp] | ||
864 | xor edx, ebp | ||
865 | mov ebp, DWORD PTR 16[esp] | ||
866 | xor edx, ebp | ||
867 | mov ebp, DWORD PTR 36[esp] | ||
868 | xor edx, ebp | ||
869 | mov ebp, esi | ||
870 | rol edx, 1 | ||
871 | or ebp, eax | ||
872 | mov DWORD PTR 48[esp],edx | ||
873 | and ebp, ebx | ||
874 | lea edx, DWORD PTR 2400959708[ecx*1+edx] | ||
875 | mov ecx, esi | ||
876 | ror esi, 1 | ||
877 | and ecx, eax | ||
878 | or ebp, ecx | ||
879 | mov ecx, edi | ||
880 | rol ecx, 5 | ||
881 | add ebp, ecx | ||
882 | mov ecx, DWORD PTR 52[esp] | ||
883 | add edx, ebp | ||
884 | mov ebp, DWORD PTR 60[esp] | ||
885 | xor ecx, ebp | ||
886 | mov ebp, DWORD PTR 20[esp] | ||
887 | xor ecx, ebp | ||
888 | mov ebp, DWORD PTR 40[esp] | ||
889 | ror esi, 1 | ||
890 | xor ecx, ebp | ||
891 | rol ecx, 1 | ||
892 | mov ebp, edi | ||
893 | mov DWORD PTR 52[esp],ecx | ||
894 | or ebp, esi | ||
895 | lea ecx, DWORD PTR 2400959708[ebx*1+ecx] | ||
896 | mov ebx, edi | ||
897 | and ebp, eax | ||
898 | and ebx, esi | ||
899 | or ebp, ebx | ||
900 | mov ebx, edx | ||
901 | rol ebx, 5 | ||
902 | ror edi, 1 | ||
903 | add ebp, ebx | ||
904 | ror edi, 1 | ||
905 | add ecx, ebp | ||
906 | ; 40_59 45 | ||
907 | ; 40_59 46 | ||
908 | mov ebx, DWORD PTR 56[esp] | ||
909 | mov ebp, DWORD PTR [esp] | ||
910 | xor ebx, ebp | ||
911 | mov ebp, DWORD PTR 24[esp] | ||
912 | xor ebx, ebp | ||
913 | mov ebp, DWORD PTR 44[esp] | ||
914 | xor ebx, ebp | ||
915 | mov ebp, edx | ||
916 | rol ebx, 1 | ||
917 | or ebp, edi | ||
918 | mov DWORD PTR 56[esp],ebx | ||
919 | and ebp, esi | ||
920 | lea ebx, DWORD PTR 2400959708[eax*1+ebx] | ||
921 | mov eax, edx | ||
922 | ror edx, 1 | ||
923 | and eax, edi | ||
924 | or ebp, eax | ||
925 | mov eax, ecx | ||
926 | rol eax, 5 | ||
927 | add ebp, eax | ||
928 | mov eax, DWORD PTR 60[esp] | ||
929 | add ebx, ebp | ||
930 | mov ebp, DWORD PTR 4[esp] | ||
931 | xor eax, ebp | ||
932 | mov ebp, DWORD PTR 28[esp] | ||
933 | xor eax, ebp | ||
934 | mov ebp, DWORD PTR 48[esp] | ||
935 | ror edx, 1 | ||
936 | xor eax, ebp | ||
937 | rol eax, 1 | ||
938 | mov ebp, ecx | ||
939 | mov DWORD PTR 60[esp],eax | ||
940 | or ebp, edx | ||
941 | lea eax, DWORD PTR 2400959708[esi*1+eax] | ||
942 | mov esi, ecx | ||
943 | and ebp, edi | ||
944 | and esi, edx | ||
945 | or ebp, esi | ||
946 | mov esi, ebx | ||
947 | rol esi, 5 | ||
948 | ror ecx, 1 | ||
949 | add ebp, esi | ||
950 | ror ecx, 1 | ||
951 | add eax, ebp | ||
952 | ; 40_59 47 | ||
953 | ; 40_59 48 | ||
954 | mov esi, DWORD PTR [esp] | ||
955 | mov ebp, DWORD PTR 8[esp] | ||
956 | xor esi, ebp | ||
957 | mov ebp, DWORD PTR 32[esp] | ||
958 | xor esi, ebp | ||
959 | mov ebp, DWORD PTR 52[esp] | ||
960 | xor esi, ebp | ||
961 | mov ebp, ebx | ||
962 | rol esi, 1 | ||
963 | or ebp, ecx | ||
964 | mov DWORD PTR [esp],esi | ||
965 | and ebp, edx | ||
966 | lea esi, DWORD PTR 2400959708[edi*1+esi] | ||
967 | mov edi, ebx | ||
968 | ror ebx, 1 | ||
969 | and edi, ecx | ||
970 | or ebp, edi | ||
971 | mov edi, eax | ||
972 | rol edi, 5 | ||
973 | add ebp, edi | ||
974 | mov edi, DWORD PTR 4[esp] | ||
975 | add esi, ebp | ||
976 | mov ebp, DWORD PTR 12[esp] | ||
977 | xor edi, ebp | ||
978 | mov ebp, DWORD PTR 36[esp] | ||
979 | xor edi, ebp | ||
980 | mov ebp, DWORD PTR 56[esp] | ||
981 | ror ebx, 1 | ||
982 | xor edi, ebp | ||
983 | rol edi, 1 | ||
984 | mov ebp, eax | ||
985 | mov DWORD PTR 4[esp],edi | ||
986 | or ebp, ebx | ||
987 | lea edi, DWORD PTR 2400959708[edx*1+edi] | ||
988 | mov edx, eax | ||
989 | and ebp, ecx | ||
990 | and edx, ebx | ||
991 | or ebp, edx | ||
992 | mov edx, esi | ||
993 | rol edx, 5 | ||
994 | ror eax, 1 | ||
995 | add ebp, edx | ||
996 | ror eax, 1 | ||
997 | add edi, ebp | ||
998 | ; 40_59 49 | ||
999 | ; 40_59 50 | ||
1000 | mov edx, DWORD PTR 8[esp] | ||
1001 | mov ebp, DWORD PTR 16[esp] | ||
1002 | xor edx, ebp | ||
1003 | mov ebp, DWORD PTR 40[esp] | ||
1004 | xor edx, ebp | ||
1005 | mov ebp, DWORD PTR 60[esp] | ||
1006 | xor edx, ebp | ||
1007 | mov ebp, esi | ||
1008 | rol edx, 1 | ||
1009 | or ebp, eax | ||
1010 | mov DWORD PTR 8[esp],edx | ||
1011 | and ebp, ebx | ||
1012 | lea edx, DWORD PTR 2400959708[ecx*1+edx] | ||
1013 | mov ecx, esi | ||
1014 | ror esi, 1 | ||
1015 | and ecx, eax | ||
1016 | or ebp, ecx | ||
1017 | mov ecx, edi | ||
1018 | rol ecx, 5 | ||
1019 | add ebp, ecx | ||
1020 | mov ecx, DWORD PTR 12[esp] | ||
1021 | add edx, ebp | ||
1022 | mov ebp, DWORD PTR 20[esp] | ||
1023 | xor ecx, ebp | ||
1024 | mov ebp, DWORD PTR 44[esp] | ||
1025 | xor ecx, ebp | ||
1026 | mov ebp, DWORD PTR [esp] | ||
1027 | ror esi, 1 | ||
1028 | xor ecx, ebp | ||
1029 | rol ecx, 1 | ||
1030 | mov ebp, edi | ||
1031 | mov DWORD PTR 12[esp],ecx | ||
1032 | or ebp, esi | ||
1033 | lea ecx, DWORD PTR 2400959708[ebx*1+ecx] | ||
1034 | mov ebx, edi | ||
1035 | and ebp, eax | ||
1036 | and ebx, esi | ||
1037 | or ebp, ebx | ||
1038 | mov ebx, edx | ||
1039 | rol ebx, 5 | ||
1040 | ror edi, 1 | ||
1041 | add ebp, ebx | ||
1042 | ror edi, 1 | ||
1043 | add ecx, ebp | ||
1044 | ; 40_59 51 | ||
1045 | ; 40_59 52 | ||
1046 | mov ebx, DWORD PTR 16[esp] | ||
1047 | mov ebp, DWORD PTR 24[esp] | ||
1048 | xor ebx, ebp | ||
1049 | mov ebp, DWORD PTR 48[esp] | ||
1050 | xor ebx, ebp | ||
1051 | mov ebp, DWORD PTR 4[esp] | ||
1052 | xor ebx, ebp | ||
1053 | mov ebp, edx | ||
1054 | rol ebx, 1 | ||
1055 | or ebp, edi | ||
1056 | mov DWORD PTR 16[esp],ebx | ||
1057 | and ebp, esi | ||
1058 | lea ebx, DWORD PTR 2400959708[eax*1+ebx] | ||
1059 | mov eax, edx | ||
1060 | ror edx, 1 | ||
1061 | and eax, edi | ||
1062 | or ebp, eax | ||
1063 | mov eax, ecx | ||
1064 | rol eax, 5 | ||
1065 | add ebp, eax | ||
1066 | mov eax, DWORD PTR 20[esp] | ||
1067 | add ebx, ebp | ||
1068 | mov ebp, DWORD PTR 28[esp] | ||
1069 | xor eax, ebp | ||
1070 | mov ebp, DWORD PTR 52[esp] | ||
1071 | xor eax, ebp | ||
1072 | mov ebp, DWORD PTR 8[esp] | ||
1073 | ror edx, 1 | ||
1074 | xor eax, ebp | ||
1075 | rol eax, 1 | ||
1076 | mov ebp, ecx | ||
1077 | mov DWORD PTR 20[esp],eax | ||
1078 | or ebp, edx | ||
1079 | lea eax, DWORD PTR 2400959708[esi*1+eax] | ||
1080 | mov esi, ecx | ||
1081 | and ebp, edi | ||
1082 | and esi, edx | ||
1083 | or ebp, esi | ||
1084 | mov esi, ebx | ||
1085 | rol esi, 5 | ||
1086 | ror ecx, 1 | ||
1087 | add ebp, esi | ||
1088 | ror ecx, 1 | ||
1089 | add eax, ebp | ||
1090 | ; 40_59 53 | ||
1091 | ; 40_59 54 | ||
1092 | mov esi, DWORD PTR 24[esp] | ||
1093 | mov ebp, DWORD PTR 32[esp] | ||
1094 | xor esi, ebp | ||
1095 | mov ebp, DWORD PTR 56[esp] | ||
1096 | xor esi, ebp | ||
1097 | mov ebp, DWORD PTR 12[esp] | ||
1098 | xor esi, ebp | ||
1099 | mov ebp, ebx | ||
1100 | rol esi, 1 | ||
1101 | or ebp, ecx | ||
1102 | mov DWORD PTR 24[esp],esi | ||
1103 | and ebp, edx | ||
1104 | lea esi, DWORD PTR 2400959708[edi*1+esi] | ||
1105 | mov edi, ebx | ||
1106 | ror ebx, 1 | ||
1107 | and edi, ecx | ||
1108 | or ebp, edi | ||
1109 | mov edi, eax | ||
1110 | rol edi, 5 | ||
1111 | add ebp, edi | ||
1112 | mov edi, DWORD PTR 28[esp] | ||
1113 | add esi, ebp | ||
1114 | mov ebp, DWORD PTR 36[esp] | ||
1115 | xor edi, ebp | ||
1116 | mov ebp, DWORD PTR 60[esp] | ||
1117 | xor edi, ebp | ||
1118 | mov ebp, DWORD PTR 16[esp] | ||
1119 | ror ebx, 1 | ||
1120 | xor edi, ebp | ||
1121 | rol edi, 1 | ||
1122 | mov ebp, eax | ||
1123 | mov DWORD PTR 28[esp],edi | ||
1124 | or ebp, ebx | ||
1125 | lea edi, DWORD PTR 2400959708[edx*1+edi] | ||
1126 | mov edx, eax | ||
1127 | and ebp, ecx | ||
1128 | and edx, ebx | ||
1129 | or ebp, edx | ||
1130 | mov edx, esi | ||
1131 | rol edx, 5 | ||
1132 | ror eax, 1 | ||
1133 | add ebp, edx | ||
1134 | ror eax, 1 | ||
1135 | add edi, ebp | ||
1136 | ; 40_59 55 | ||
1137 | ; 40_59 56 | ||
1138 | mov edx, DWORD PTR 32[esp] | ||
1139 | mov ebp, DWORD PTR 40[esp] | ||
1140 | xor edx, ebp | ||
1141 | mov ebp, DWORD PTR [esp] | ||
1142 | xor edx, ebp | ||
1143 | mov ebp, DWORD PTR 20[esp] | ||
1144 | xor edx, ebp | ||
1145 | mov ebp, esi | ||
1146 | rol edx, 1 | ||
1147 | or ebp, eax | ||
1148 | mov DWORD PTR 32[esp],edx | ||
1149 | and ebp, ebx | ||
1150 | lea edx, DWORD PTR 2400959708[ecx*1+edx] | ||
1151 | mov ecx, esi | ||
1152 | ror esi, 1 | ||
1153 | and ecx, eax | ||
1154 | or ebp, ecx | ||
1155 | mov ecx, edi | ||
1156 | rol ecx, 5 | ||
1157 | add ebp, ecx | ||
1158 | mov ecx, DWORD PTR 36[esp] | ||
1159 | add edx, ebp | ||
1160 | mov ebp, DWORD PTR 44[esp] | ||
1161 | xor ecx, ebp | ||
1162 | mov ebp, DWORD PTR 4[esp] | ||
1163 | xor ecx, ebp | ||
1164 | mov ebp, DWORD PTR 24[esp] | ||
1165 | ror esi, 1 | ||
1166 | xor ecx, ebp | ||
1167 | rol ecx, 1 | ||
1168 | mov ebp, edi | ||
1169 | mov DWORD PTR 36[esp],ecx | ||
1170 | or ebp, esi | ||
1171 | lea ecx, DWORD PTR 2400959708[ebx*1+ecx] | ||
1172 | mov ebx, edi | ||
1173 | and ebp, eax | ||
1174 | and ebx, esi | ||
1175 | or ebp, ebx | ||
1176 | mov ebx, edx | ||
1177 | rol ebx, 5 | ||
1178 | ror edi, 1 | ||
1179 | add ebp, ebx | ||
1180 | ror edi, 1 | ||
1181 | add ecx, ebp | ||
1182 | ; 40_59 57 | ||
1183 | ; 40_59 58 | ||
1184 | mov ebx, DWORD PTR 40[esp] | ||
1185 | mov ebp, DWORD PTR 48[esp] | ||
1186 | xor ebx, ebp | ||
1187 | mov ebp, DWORD PTR 8[esp] | ||
1188 | xor ebx, ebp | ||
1189 | mov ebp, DWORD PTR 28[esp] | ||
1190 | xor ebx, ebp | ||
1191 | mov ebp, edx | ||
1192 | rol ebx, 1 | ||
1193 | or ebp, edi | ||
1194 | mov DWORD PTR 40[esp],ebx | ||
1195 | and ebp, esi | ||
1196 | lea ebx, DWORD PTR 2400959708[eax*1+ebx] | ||
1197 | mov eax, edx | ||
1198 | ror edx, 1 | ||
1199 | and eax, edi | ||
1200 | or ebp, eax | ||
1201 | mov eax, ecx | ||
1202 | rol eax, 5 | ||
1203 | add ebp, eax | ||
1204 | mov eax, DWORD PTR 44[esp] | ||
1205 | add ebx, ebp | ||
1206 | mov ebp, DWORD PTR 52[esp] | ||
1207 | xor eax, ebp | ||
1208 | mov ebp, DWORD PTR 12[esp] | ||
1209 | xor eax, ebp | ||
1210 | mov ebp, DWORD PTR 32[esp] | ||
1211 | ror edx, 1 | ||
1212 | xor eax, ebp | ||
1213 | rol eax, 1 | ||
1214 | mov ebp, ecx | ||
1215 | mov DWORD PTR 44[esp],eax | ||
1216 | or ebp, edx | ||
1217 | lea eax, DWORD PTR 2400959708[esi*1+eax] | ||
1218 | mov esi, ecx | ||
1219 | and ebp, edi | ||
1220 | and esi, edx | ||
1221 | or ebp, esi | ||
1222 | mov esi, ebx | ||
1223 | rol esi, 5 | ||
1224 | ror ecx, 1 | ||
1225 | add ebp, esi | ||
1226 | ror ecx, 1 | ||
1227 | add eax, ebp | ||
1228 | ; 40_59 59 | ||
1229 | ; 20_39 60 | ||
1230 | mov esi, DWORD PTR 48[esp] | ||
1231 | mov ebp, DWORD PTR 56[esp] | ||
1232 | xor esi, ebp | ||
1233 | mov ebp, DWORD PTR 16[esp] | ||
1234 | xor esi, ebp | ||
1235 | mov ebp, DWORD PTR 36[esp] | ||
1236 | xor esi, ebp | ||
1237 | mov ebp, ebx | ||
1238 | rol esi, 1 | ||
1239 | xor ebp, ecx | ||
1240 | mov DWORD PTR 48[esp],esi | ||
1241 | xor ebp, edx | ||
1242 | lea esi, DWORD PTR 3395469782[edi*1+esi] | ||
1243 | mov edi, eax | ||
1244 | rol edi, 5 | ||
1245 | ror ebx, 1 | ||
1246 | add edi, ebp | ||
1247 | ror ebx, 1 | ||
1248 | add esi, edi | ||
1249 | ; 20_39 61 | ||
1250 | mov edi, DWORD PTR 52[esp] | ||
1251 | mov ebp, DWORD PTR 60[esp] | ||
1252 | xor edi, ebp | ||
1253 | mov ebp, DWORD PTR 20[esp] | ||
1254 | xor edi, ebp | ||
1255 | mov ebp, DWORD PTR 40[esp] | ||
1256 | xor edi, ebp | ||
1257 | mov ebp, eax | ||
1258 | rol edi, 1 | ||
1259 | xor ebp, ebx | ||
1260 | mov DWORD PTR 52[esp],edi | ||
1261 | xor ebp, ecx | ||
1262 | lea edi, DWORD PTR 3395469782[edx*1+edi] | ||
1263 | mov edx, esi | ||
1264 | rol edx, 5 | ||
1265 | ror eax, 1 | ||
1266 | add edx, ebp | ||
1267 | ror eax, 1 | ||
1268 | add edi, edx | ||
1269 | ; 20_39 62 | ||
1270 | mov edx, DWORD PTR 56[esp] | ||
1271 | mov ebp, DWORD PTR [esp] | ||
1272 | xor edx, ebp | ||
1273 | mov ebp, DWORD PTR 24[esp] | ||
1274 | xor edx, ebp | ||
1275 | mov ebp, DWORD PTR 44[esp] | ||
1276 | xor edx, ebp | ||
1277 | mov ebp, esi | ||
1278 | rol edx, 1 | ||
1279 | xor ebp, eax | ||
1280 | mov DWORD PTR 56[esp],edx | ||
1281 | xor ebp, ebx | ||
1282 | lea edx, DWORD PTR 3395469782[ecx*1+edx] | ||
1283 | mov ecx, edi | ||
1284 | rol ecx, 5 | ||
1285 | ror esi, 1 | ||
1286 | add ecx, ebp | ||
1287 | ror esi, 1 | ||
1288 | add edx, ecx | ||
1289 | ; 20_39 63 | ||
1290 | mov ecx, DWORD PTR 60[esp] | ||
1291 | mov ebp, DWORD PTR 4[esp] | ||
1292 | xor ecx, ebp | ||
1293 | mov ebp, DWORD PTR 28[esp] | ||
1294 | xor ecx, ebp | ||
1295 | mov ebp, DWORD PTR 48[esp] | ||
1296 | xor ecx, ebp | ||
1297 | mov ebp, edi | ||
1298 | rol ecx, 1 | ||
1299 | xor ebp, esi | ||
1300 | mov DWORD PTR 60[esp],ecx | ||
1301 | xor ebp, eax | ||
1302 | lea ecx, DWORD PTR 3395469782[ebx*1+ecx] | ||
1303 | mov ebx, edx | ||
1304 | rol ebx, 5 | ||
1305 | ror edi, 1 | ||
1306 | add ebx, ebp | ||
1307 | ror edi, 1 | ||
1308 | add ecx, ebx | ||
1309 | ; 20_39 64 | ||
1310 | mov ebx, DWORD PTR [esp] | ||
1311 | mov ebp, DWORD PTR 8[esp] | ||
1312 | xor ebx, ebp | ||
1313 | mov ebp, DWORD PTR 32[esp] | ||
1314 | xor ebx, ebp | ||
1315 | mov ebp, DWORD PTR 52[esp] | ||
1316 | xor ebx, ebp | ||
1317 | mov ebp, edx | ||
1318 | rol ebx, 1 | ||
1319 | xor ebp, edi | ||
1320 | mov DWORD PTR [esp],ebx | ||
1321 | xor ebp, esi | ||
1322 | lea ebx, DWORD PTR 3395469782[eax*1+ebx] | ||
1323 | mov eax, ecx | ||
1324 | rol eax, 5 | ||
1325 | ror edx, 1 | ||
1326 | add eax, ebp | ||
1327 | ror edx, 1 | ||
1328 | add ebx, eax | ||
1329 | ; 20_39 65 | ||
1330 | mov eax, DWORD PTR 4[esp] | ||
1331 | mov ebp, DWORD PTR 12[esp] | ||
1332 | xor eax, ebp | ||
1333 | mov ebp, DWORD PTR 36[esp] | ||
1334 | xor eax, ebp | ||
1335 | mov ebp, DWORD PTR 56[esp] | ||
1336 | xor eax, ebp | ||
1337 | mov ebp, ecx | ||
1338 | rol eax, 1 | ||
1339 | xor ebp, edx | ||
1340 | mov DWORD PTR 4[esp],eax | ||
1341 | xor ebp, edi | ||
1342 | lea eax, DWORD PTR 3395469782[esi*1+eax] | ||
1343 | mov esi, ebx | ||
1344 | rol esi, 5 | ||
1345 | ror ecx, 1 | ||
1346 | add esi, ebp | ||
1347 | ror ecx, 1 | ||
1348 | add eax, esi | ||
1349 | ; 20_39 66 | ||
1350 | mov esi, DWORD PTR 8[esp] | ||
1351 | mov ebp, DWORD PTR 16[esp] | ||
1352 | xor esi, ebp | ||
1353 | mov ebp, DWORD PTR 40[esp] | ||
1354 | xor esi, ebp | ||
1355 | mov ebp, DWORD PTR 60[esp] | ||
1356 | xor esi, ebp | ||
1357 | mov ebp, ebx | ||
1358 | rol esi, 1 | ||
1359 | xor ebp, ecx | ||
1360 | mov DWORD PTR 8[esp],esi | ||
1361 | xor ebp, edx | ||
1362 | lea esi, DWORD PTR 3395469782[edi*1+esi] | ||
1363 | mov edi, eax | ||
1364 | rol edi, 5 | ||
1365 | ror ebx, 1 | ||
1366 | add edi, ebp | ||
1367 | ror ebx, 1 | ||
1368 | add esi, edi | ||
1369 | ; 20_39 67 | ||
1370 | mov edi, DWORD PTR 12[esp] | ||
1371 | mov ebp, DWORD PTR 20[esp] | ||
1372 | xor edi, ebp | ||
1373 | mov ebp, DWORD PTR 44[esp] | ||
1374 | xor edi, ebp | ||
1375 | mov ebp, DWORD PTR [esp] | ||
1376 | xor edi, ebp | ||
1377 | mov ebp, eax | ||
1378 | rol edi, 1 | ||
1379 | xor ebp, ebx | ||
1380 | mov DWORD PTR 12[esp],edi | ||
1381 | xor ebp, ecx | ||
1382 | lea edi, DWORD PTR 3395469782[edx*1+edi] | ||
1383 | mov edx, esi | ||
1384 | rol edx, 5 | ||
1385 | ror eax, 1 | ||
1386 | add edx, ebp | ||
1387 | ror eax, 1 | ||
1388 | add edi, edx | ||
1389 | ; 20_39 68 | ||
1390 | mov edx, DWORD PTR 16[esp] | ||
1391 | mov ebp, DWORD PTR 24[esp] | ||
1392 | xor edx, ebp | ||
1393 | mov ebp, DWORD PTR 48[esp] | ||
1394 | xor edx, ebp | ||
1395 | mov ebp, DWORD PTR 4[esp] | ||
1396 | xor edx, ebp | ||
1397 | mov ebp, esi | ||
1398 | rol edx, 1 | ||
1399 | xor ebp, eax | ||
1400 | mov DWORD PTR 16[esp],edx | ||
1401 | xor ebp, ebx | ||
1402 | lea edx, DWORD PTR 3395469782[ecx*1+edx] | ||
1403 | mov ecx, edi | ||
1404 | rol ecx, 5 | ||
1405 | ror esi, 1 | ||
1406 | add ecx, ebp | ||
1407 | ror esi, 1 | ||
1408 | add edx, ecx | ||
1409 | ; 20_39 69 | ||
1410 | mov ecx, DWORD PTR 20[esp] | ||
1411 | mov ebp, DWORD PTR 28[esp] | ||
1412 | xor ecx, ebp | ||
1413 | mov ebp, DWORD PTR 52[esp] | ||
1414 | xor ecx, ebp | ||
1415 | mov ebp, DWORD PTR 8[esp] | ||
1416 | xor ecx, ebp | ||
1417 | mov ebp, edi | ||
1418 | rol ecx, 1 | ||
1419 | xor ebp, esi | ||
1420 | mov DWORD PTR 20[esp],ecx | ||
1421 | xor ebp, eax | ||
1422 | lea ecx, DWORD PTR 3395469782[ebx*1+ecx] | ||
1423 | mov ebx, edx | ||
1424 | rol ebx, 5 | ||
1425 | ror edi, 1 | ||
1426 | add ebx, ebp | ||
1427 | ror edi, 1 | ||
1428 | add ecx, ebx | ||
1429 | ; 20_39 70 | ||
1430 | mov ebx, DWORD PTR 24[esp] | ||
1431 | mov ebp, DWORD PTR 32[esp] | ||
1432 | xor ebx, ebp | ||
1433 | mov ebp, DWORD PTR 56[esp] | ||
1434 | xor ebx, ebp | ||
1435 | mov ebp, DWORD PTR 12[esp] | ||
1436 | xor ebx, ebp | ||
1437 | mov ebp, edx | ||
1438 | rol ebx, 1 | ||
1439 | xor ebp, edi | ||
1440 | mov DWORD PTR 24[esp],ebx | ||
1441 | xor ebp, esi | ||
1442 | lea ebx, DWORD PTR 3395469782[eax*1+ebx] | ||
1443 | mov eax, ecx | ||
1444 | rol eax, 5 | ||
1445 | ror edx, 1 | ||
1446 | add eax, ebp | ||
1447 | ror edx, 1 | ||
1448 | add ebx, eax | ||
1449 | ; 20_39 71 | ||
1450 | mov eax, DWORD PTR 28[esp] | ||
1451 | mov ebp, DWORD PTR 36[esp] | ||
1452 | xor eax, ebp | ||
1453 | mov ebp, DWORD PTR 60[esp] | ||
1454 | xor eax, ebp | ||
1455 | mov ebp, DWORD PTR 16[esp] | ||
1456 | xor eax, ebp | ||
1457 | mov ebp, ecx | ||
1458 | rol eax, 1 | ||
1459 | xor ebp, edx | ||
1460 | mov DWORD PTR 28[esp],eax | ||
1461 | xor ebp, edi | ||
1462 | lea eax, DWORD PTR 3395469782[esi*1+eax] | ||
1463 | mov esi, ebx | ||
1464 | rol esi, 5 | ||
1465 | ror ecx, 1 | ||
1466 | add esi, ebp | ||
1467 | ror ecx, 1 | ||
1468 | add eax, esi | ||
1469 | ; 20_39 72 | ||
1470 | mov esi, DWORD PTR 32[esp] | ||
1471 | mov ebp, DWORD PTR 40[esp] | ||
1472 | xor esi, ebp | ||
1473 | mov ebp, DWORD PTR [esp] | ||
1474 | xor esi, ebp | ||
1475 | mov ebp, DWORD PTR 20[esp] | ||
1476 | xor esi, ebp | ||
1477 | mov ebp, ebx | ||
1478 | rol esi, 1 | ||
1479 | xor ebp, ecx | ||
1480 | mov DWORD PTR 32[esp],esi | ||
1481 | xor ebp, edx | ||
1482 | lea esi, DWORD PTR 3395469782[edi*1+esi] | ||
1483 | mov edi, eax | ||
1484 | rol edi, 5 | ||
1485 | ror ebx, 1 | ||
1486 | add edi, ebp | ||
1487 | ror ebx, 1 | ||
1488 | add esi, edi | ||
1489 | ; 20_39 73 | ||
1490 | mov edi, DWORD PTR 36[esp] | ||
1491 | mov ebp, DWORD PTR 44[esp] | ||
1492 | xor edi, ebp | ||
1493 | mov ebp, DWORD PTR 4[esp] | ||
1494 | xor edi, ebp | ||
1495 | mov ebp, DWORD PTR 24[esp] | ||
1496 | xor edi, ebp | ||
1497 | mov ebp, eax | ||
1498 | rol edi, 1 | ||
1499 | xor ebp, ebx | ||
1500 | mov DWORD PTR 36[esp],edi | ||
1501 | xor ebp, ecx | ||
1502 | lea edi, DWORD PTR 3395469782[edx*1+edi] | ||
1503 | mov edx, esi | ||
1504 | rol edx, 5 | ||
1505 | ror eax, 1 | ||
1506 | add edx, ebp | ||
1507 | ror eax, 1 | ||
1508 | add edi, edx | ||
1509 | ; 20_39 74 | ||
1510 | mov edx, DWORD PTR 40[esp] | ||
1511 | mov ebp, DWORD PTR 48[esp] | ||
1512 | xor edx, ebp | ||
1513 | mov ebp, DWORD PTR 8[esp] | ||
1514 | xor edx, ebp | ||
1515 | mov ebp, DWORD PTR 28[esp] | ||
1516 | xor edx, ebp | ||
1517 | mov ebp, esi | ||
1518 | rol edx, 1 | ||
1519 | xor ebp, eax | ||
1520 | mov DWORD PTR 40[esp],edx | ||
1521 | xor ebp, ebx | ||
1522 | lea edx, DWORD PTR 3395469782[ecx*1+edx] | ||
1523 | mov ecx, edi | ||
1524 | rol ecx, 5 | ||
1525 | ror esi, 1 | ||
1526 | add ecx, ebp | ||
1527 | ror esi, 1 | ||
1528 | add edx, ecx | ||
1529 | ; 20_39 75 | ||
1530 | mov ecx, DWORD PTR 44[esp] | ||
1531 | mov ebp, DWORD PTR 52[esp] | ||
1532 | xor ecx, ebp | ||
1533 | mov ebp, DWORD PTR 12[esp] | ||
1534 | xor ecx, ebp | ||
1535 | mov ebp, DWORD PTR 32[esp] | ||
1536 | xor ecx, ebp | ||
1537 | mov ebp, edi | ||
1538 | rol ecx, 1 | ||
1539 | xor ebp, esi | ||
1540 | mov DWORD PTR 44[esp],ecx | ||
1541 | xor ebp, eax | ||
1542 | lea ecx, DWORD PTR 3395469782[ebx*1+ecx] | ||
1543 | mov ebx, edx | ||
1544 | rol ebx, 5 | ||
1545 | ror edi, 1 | ||
1546 | add ebx, ebp | ||
1547 | ror edi, 1 | ||
1548 | add ecx, ebx | ||
1549 | ; 20_39 76 | ||
1550 | mov ebx, DWORD PTR 48[esp] | ||
1551 | mov ebp, DWORD PTR 56[esp] | ||
1552 | xor ebx, ebp | ||
1553 | mov ebp, DWORD PTR 16[esp] | ||
1554 | xor ebx, ebp | ||
1555 | mov ebp, DWORD PTR 36[esp] | ||
1556 | xor ebx, ebp | ||
1557 | mov ebp, edx | ||
1558 | rol ebx, 1 | ||
1559 | xor ebp, edi | ||
1560 | mov DWORD PTR 48[esp],ebx | ||
1561 | xor ebp, esi | ||
1562 | lea ebx, DWORD PTR 3395469782[eax*1+ebx] | ||
1563 | mov eax, ecx | ||
1564 | rol eax, 5 | ||
1565 | ror edx, 1 | ||
1566 | add eax, ebp | ||
1567 | ror edx, 1 | ||
1568 | add ebx, eax | ||
1569 | ; 20_39 77 | ||
1570 | mov eax, DWORD PTR 52[esp] | ||
1571 | mov ebp, DWORD PTR 60[esp] | ||
1572 | xor eax, ebp | ||
1573 | mov ebp, DWORD PTR 20[esp] | ||
1574 | xor eax, ebp | ||
1575 | mov ebp, DWORD PTR 40[esp] | ||
1576 | xor eax, ebp | ||
1577 | mov ebp, ecx | ||
1578 | rol eax, 1 | ||
1579 | xor ebp, edx | ||
1580 | mov DWORD PTR 52[esp],eax | ||
1581 | xor ebp, edi | ||
1582 | lea eax, DWORD PTR 3395469782[esi*1+eax] | ||
1583 | mov esi, ebx | ||
1584 | rol esi, 5 | ||
1585 | ror ecx, 1 | ||
1586 | add esi, ebp | ||
1587 | ror ecx, 1 | ||
1588 | add eax, esi | ||
1589 | ; 20_39 78 | ||
1590 | mov esi, DWORD PTR 56[esp] | ||
1591 | mov ebp, DWORD PTR [esp] | ||
1592 | xor esi, ebp | ||
1593 | mov ebp, DWORD PTR 24[esp] | ||
1594 | xor esi, ebp | ||
1595 | mov ebp, DWORD PTR 44[esp] | ||
1596 | xor esi, ebp | ||
1597 | mov ebp, ebx | ||
1598 | rol esi, 1 | ||
1599 | xor ebp, ecx | ||
1600 | mov DWORD PTR 56[esp],esi | ||
1601 | xor ebp, edx | ||
1602 | lea esi, DWORD PTR 3395469782[edi*1+esi] | ||
1603 | mov edi, eax | ||
1604 | rol edi, 5 | ||
1605 | ror ebx, 1 | ||
1606 | add edi, ebp | ||
1607 | ror ebx, 1 | ||
1608 | add esi, edi | ||
1609 | ; 20_39 79 | ||
1610 | mov edi, DWORD PTR 60[esp] | ||
1611 | mov ebp, DWORD PTR 4[esp] | ||
1612 | xor edi, ebp | ||
1613 | mov ebp, DWORD PTR 28[esp] | ||
1614 | xor edi, ebp | ||
1615 | mov ebp, DWORD PTR 48[esp] | ||
1616 | xor edi, ebp | ||
1617 | mov ebp, eax | ||
1618 | rol edi, 1 | ||
1619 | xor ebp, ebx | ||
1620 | mov DWORD PTR 60[esp],edi | ||
1621 | xor ebp, ecx | ||
1622 | lea edi, DWORD PTR 3395469782[edx*1+edi] | ||
1623 | mov edx, esi | ||
1624 | rol edx, 5 | ||
1625 | add edx, ebp | ||
1626 | mov ebp, DWORD PTR 92[esp] | ||
1627 | ror eax, 1 | ||
1628 | add edi, edx | ||
1629 | ror eax, 1 | ||
1630 | ; End processing | ||
1631 | ; | ||
1632 | mov edx, DWORD PTR 12[ebp] | ||
1633 | add edx, ebx | ||
1634 | mov ebx, DWORD PTR 4[ebp] | ||
1635 | add ebx, esi | ||
1636 | mov esi, eax | ||
1637 | mov eax, DWORD PTR [ebp] | ||
1638 | mov DWORD PTR 12[ebp],edx | ||
1639 | add eax, edi | ||
1640 | mov edi, DWORD PTR 16[ebp] | ||
1641 | add edi, ecx | ||
1642 | mov ecx, DWORD PTR 8[ebp] | ||
1643 | add ecx, esi | ||
1644 | mov DWORD PTR [ebp],eax | ||
1645 | mov esi, DWORD PTR 64[esp] | ||
1646 | mov DWORD PTR 8[ebp],ecx | ||
1647 | add esi, 64 | ||
1648 | mov eax, DWORD PTR 68[esp] | ||
1649 | mov DWORD PTR 16[ebp],edi | ||
1650 | cmp eax, esi | ||
1651 | mov DWORD PTR 4[ebp],ebx | ||
1652 | jl $L001end | ||
1653 | mov eax, DWORD PTR [esi] | ||
1654 | jmp L000start | ||
1655 | $L001end: | ||
1656 | add esp, 72 | ||
1657 | pop edi | ||
1658 | pop ebx | ||
1659 | pop ebp | ||
1660 | pop esi | ||
1661 | ret | ||
1662 | _sha1_block_x86 ENDP | ||
1663 | _TEXT ENDS | ||
1664 | END | ||
diff --git a/src/lib/libcrypto/sha/asm/sx86unix.cpp b/src/lib/libcrypto/sha/asm/sx86unix.cpp new file mode 100644 index 0000000000..8366664a39 --- /dev/null +++ b/src/lib/libcrypto/sha/asm/sx86unix.cpp | |||
@@ -0,0 +1,1948 @@ | |||
1 | /* Run the C pre-processor over this file with one of the following defined | ||
2 | * ELF - elf object files, | ||
3 | * OUT - a.out object files, | ||
4 | * BSDI - BSDI style a.out object files | ||
5 | * SOL - Solaris style elf | ||
6 | */ | ||
7 | |||
8 | #define TYPE(a,b) .type a,b | ||
9 | #define SIZE(a,b) .size a,b | ||
10 | |||
11 | #if defined(OUT) || defined(BSDI) | ||
12 | #define sha1_block_x86 _sha1_block_x86 | ||
13 | |||
14 | #endif | ||
15 | |||
16 | #ifdef OUT | ||
17 | #define OK 1 | ||
18 | #define ALIGN 4 | ||
19 | #endif | ||
20 | |||
21 | #ifdef BSDI | ||
22 | #define OK 1 | ||
23 | #define ALIGN 4 | ||
24 | #undef SIZE | ||
25 | #undef TYPE | ||
26 | #define SIZE(a,b) | ||
27 | #define TYPE(a,b) | ||
28 | #endif | ||
29 | |||
30 | #if defined(ELF) || defined(SOL) | ||
31 | #define OK 1 | ||
32 | #define ALIGN 16 | ||
33 | #endif | ||
34 | |||
35 | #ifndef OK | ||
36 | You need to define one of | ||
37 | ELF - elf systems - linux-elf, NetBSD and DG-UX | ||
38 | OUT - a.out systems - linux-a.out and FreeBSD | ||
39 | SOL - solaris systems, which are elf with strange comment lines | ||
40 | BSDI - a.out with a very primative version of as. | ||
41 | #endif | ||
42 | |||
43 | /* Let the Assembler begin :-) */ | ||
44 | /* Don't even think of reading this code */ | ||
45 | /* It was automatically generated by sha1-586.pl */ | ||
46 | /* Which is a perl program used to generate the x86 assember for */ | ||
47 | /* any of elf, a.out, BSDI,Win32, or Solaris */ | ||
48 | /* eric <eay@cryptsoft.com> */ | ||
49 | |||
50 | .file "sha1-586.s" | ||
51 | .version "01.01" | ||
52 | gcc2_compiled.: | ||
53 | .text | ||
54 | .align ALIGN | ||
55 | .globl sha1_block_x86 | ||
56 | TYPE(sha1_block_x86,@function) | ||
57 | sha1_block_x86: | ||
58 | pushl %esi | ||
59 | pushl %ebp | ||
60 | movl 20(%esp), %eax | ||
61 | movl 16(%esp), %esi | ||
62 | addl %esi, %eax | ||
63 | movl 12(%esp), %ebp | ||
64 | pushl %ebx | ||
65 | subl $64, %eax | ||
66 | pushl %edi | ||
67 | movl 4(%ebp), %ebx | ||
68 | subl $72, %esp | ||
69 | movl 12(%ebp), %edx | ||
70 | movl 16(%ebp), %edi | ||
71 | movl 8(%ebp), %ecx | ||
72 | movl %eax, 68(%esp) | ||
73 | /* First we need to setup the X array */ | ||
74 | movl (%esi), %eax | ||
75 | .L000start: | ||
76 | /* First, load the words onto the stack in network byte order */ | ||
77 | .byte 15 | ||
78 | .byte 200 /* bswapl %eax */ | ||
79 | movl %eax, (%esp) | ||
80 | movl 4(%esi), %eax | ||
81 | .byte 15 | ||
82 | .byte 200 /* bswapl %eax */ | ||
83 | movl %eax, 4(%esp) | ||
84 | movl 8(%esi), %eax | ||
85 | .byte 15 | ||
86 | .byte 200 /* bswapl %eax */ | ||
87 | movl %eax, 8(%esp) | ||
88 | movl 12(%esi), %eax | ||
89 | .byte 15 | ||
90 | .byte 200 /* bswapl %eax */ | ||
91 | movl %eax, 12(%esp) | ||
92 | movl 16(%esi), %eax | ||
93 | .byte 15 | ||
94 | .byte 200 /* bswapl %eax */ | ||
95 | movl %eax, 16(%esp) | ||
96 | movl 20(%esi), %eax | ||
97 | .byte 15 | ||
98 | .byte 200 /* bswapl %eax */ | ||
99 | movl %eax, 20(%esp) | ||
100 | movl 24(%esi), %eax | ||
101 | .byte 15 | ||
102 | .byte 200 /* bswapl %eax */ | ||
103 | movl %eax, 24(%esp) | ||
104 | movl 28(%esi), %eax | ||
105 | .byte 15 | ||
106 | .byte 200 /* bswapl %eax */ | ||
107 | movl %eax, 28(%esp) | ||
108 | movl 32(%esi), %eax | ||
109 | .byte 15 | ||
110 | .byte 200 /* bswapl %eax */ | ||
111 | movl %eax, 32(%esp) | ||
112 | movl 36(%esi), %eax | ||
113 | .byte 15 | ||
114 | .byte 200 /* bswapl %eax */ | ||
115 | movl %eax, 36(%esp) | ||
116 | movl 40(%esi), %eax | ||
117 | .byte 15 | ||
118 | .byte 200 /* bswapl %eax */ | ||
119 | movl %eax, 40(%esp) | ||
120 | movl 44(%esi), %eax | ||
121 | .byte 15 | ||
122 | .byte 200 /* bswapl %eax */ | ||
123 | movl %eax, 44(%esp) | ||
124 | movl 48(%esi), %eax | ||
125 | .byte 15 | ||
126 | .byte 200 /* bswapl %eax */ | ||
127 | movl %eax, 48(%esp) | ||
128 | movl 52(%esi), %eax | ||
129 | .byte 15 | ||
130 | .byte 200 /* bswapl %eax */ | ||
131 | movl %eax, 52(%esp) | ||
132 | movl 56(%esi), %eax | ||
133 | .byte 15 | ||
134 | .byte 200 /* bswapl %eax */ | ||
135 | movl %eax, 56(%esp) | ||
136 | movl 60(%esi), %eax | ||
137 | .byte 15 | ||
138 | .byte 200 /* bswapl %eax */ | ||
139 | movl %eax, 60(%esp) | ||
140 | /* We now have the X array on the stack */ | ||
141 | /* starting at sp-4 */ | ||
142 | movl %esi, 64(%esp) | ||
143 | |||
144 | /* Start processing */ | ||
145 | movl (%ebp), %eax | ||
146 | /* 00_15 0 */ | ||
147 | movl %ecx, %esi | ||
148 | movl %eax, %ebp | ||
149 | xorl %edx, %esi | ||
150 | roll $5, %ebp | ||
151 | andl %ebx, %esi | ||
152 | addl %edi, %ebp | ||
153 | .byte 209 | ||
154 | .byte 203 /* rorl $1 %ebx */ | ||
155 | movl (%esp), %edi | ||
156 | .byte 209 | ||
157 | .byte 203 /* rorl $1 %ebx */ | ||
158 | xorl %edx, %esi | ||
159 | leal 1518500249(%ebp,%edi,1),%ebp | ||
160 | movl %ebx, %edi | ||
161 | addl %ebp, %esi | ||
162 | xorl %ecx, %edi | ||
163 | movl %esi, %ebp | ||
164 | andl %eax, %edi | ||
165 | roll $5, %ebp | ||
166 | addl %edx, %ebp | ||
167 | movl 4(%esp), %edx | ||
168 | .byte 209 | ||
169 | .byte 200 /* rorl $1 %eax */ | ||
170 | xorl %ecx, %edi | ||
171 | .byte 209 | ||
172 | .byte 200 /* rorl $1 %eax */ | ||
173 | leal 1518500249(%ebp,%edx,1),%ebp | ||
174 | addl %ebp, %edi | ||
175 | /* 00_15 2 */ | ||
176 | movl %eax, %edx | ||
177 | movl %edi, %ebp | ||
178 | xorl %ebx, %edx | ||
179 | roll $5, %ebp | ||
180 | andl %esi, %edx | ||
181 | addl %ecx, %ebp | ||
182 | .byte 209 | ||
183 | .byte 206 /* rorl $1 %esi */ | ||
184 | movl 8(%esp), %ecx | ||
185 | .byte 209 | ||
186 | .byte 206 /* rorl $1 %esi */ | ||
187 | xorl %ebx, %edx | ||
188 | leal 1518500249(%ebp,%ecx,1),%ebp | ||
189 | movl %esi, %ecx | ||
190 | addl %ebp, %edx | ||
191 | xorl %eax, %ecx | ||
192 | movl %edx, %ebp | ||
193 | andl %edi, %ecx | ||
194 | roll $5, %ebp | ||
195 | addl %ebx, %ebp | ||
196 | movl 12(%esp), %ebx | ||
197 | .byte 209 | ||
198 | .byte 207 /* rorl $1 %edi */ | ||
199 | xorl %eax, %ecx | ||
200 | .byte 209 | ||
201 | .byte 207 /* rorl $1 %edi */ | ||
202 | leal 1518500249(%ebp,%ebx,1),%ebp | ||
203 | addl %ebp, %ecx | ||
204 | /* 00_15 4 */ | ||
205 | movl %edi, %ebx | ||
206 | movl %ecx, %ebp | ||
207 | xorl %esi, %ebx | ||
208 | roll $5, %ebp | ||
209 | andl %edx, %ebx | ||
210 | addl %eax, %ebp | ||
211 | .byte 209 | ||
212 | .byte 202 /* rorl $1 %edx */ | ||
213 | movl 16(%esp), %eax | ||
214 | .byte 209 | ||
215 | .byte 202 /* rorl $1 %edx */ | ||
216 | xorl %esi, %ebx | ||
217 | leal 1518500249(%ebp,%eax,1),%ebp | ||
218 | movl %edx, %eax | ||
219 | addl %ebp, %ebx | ||
220 | xorl %edi, %eax | ||
221 | movl %ebx, %ebp | ||
222 | andl %ecx, %eax | ||
223 | roll $5, %ebp | ||
224 | addl %esi, %ebp | ||
225 | movl 20(%esp), %esi | ||
226 | .byte 209 | ||
227 | .byte 201 /* rorl $1 %ecx */ | ||
228 | xorl %edi, %eax | ||
229 | .byte 209 | ||
230 | .byte 201 /* rorl $1 %ecx */ | ||
231 | leal 1518500249(%ebp,%esi,1),%ebp | ||
232 | addl %ebp, %eax | ||
233 | /* 00_15 6 */ | ||
234 | movl %ecx, %esi | ||
235 | movl %eax, %ebp | ||
236 | xorl %edx, %esi | ||
237 | roll $5, %ebp | ||
238 | andl %ebx, %esi | ||
239 | addl %edi, %ebp | ||
240 | .byte 209 | ||
241 | .byte 203 /* rorl $1 %ebx */ | ||
242 | movl 24(%esp), %edi | ||
243 | .byte 209 | ||
244 | .byte 203 /* rorl $1 %ebx */ | ||
245 | xorl %edx, %esi | ||
246 | leal 1518500249(%ebp,%edi,1),%ebp | ||
247 | movl %ebx, %edi | ||
248 | addl %ebp, %esi | ||
249 | xorl %ecx, %edi | ||
250 | movl %esi, %ebp | ||
251 | andl %eax, %edi | ||
252 | roll $5, %ebp | ||
253 | addl %edx, %ebp | ||
254 | movl 28(%esp), %edx | ||
255 | .byte 209 | ||
256 | .byte 200 /* rorl $1 %eax */ | ||
257 | xorl %ecx, %edi | ||
258 | .byte 209 | ||
259 | .byte 200 /* rorl $1 %eax */ | ||
260 | leal 1518500249(%ebp,%edx,1),%ebp | ||
261 | addl %ebp, %edi | ||
262 | /* 00_15 8 */ | ||
263 | movl %eax, %edx | ||
264 | movl %edi, %ebp | ||
265 | xorl %ebx, %edx | ||
266 | roll $5, %ebp | ||
267 | andl %esi, %edx | ||
268 | addl %ecx, %ebp | ||
269 | .byte 209 | ||
270 | .byte 206 /* rorl $1 %esi */ | ||
271 | movl 32(%esp), %ecx | ||
272 | .byte 209 | ||
273 | .byte 206 /* rorl $1 %esi */ | ||
274 | xorl %ebx, %edx | ||
275 | leal 1518500249(%ebp,%ecx,1),%ebp | ||
276 | movl %esi, %ecx | ||
277 | addl %ebp, %edx | ||
278 | xorl %eax, %ecx | ||
279 | movl %edx, %ebp | ||
280 | andl %edi, %ecx | ||
281 | roll $5, %ebp | ||
282 | addl %ebx, %ebp | ||
283 | movl 36(%esp), %ebx | ||
284 | .byte 209 | ||
285 | .byte 207 /* rorl $1 %edi */ | ||
286 | xorl %eax, %ecx | ||
287 | .byte 209 | ||
288 | .byte 207 /* rorl $1 %edi */ | ||
289 | leal 1518500249(%ebp,%ebx,1),%ebp | ||
290 | addl %ebp, %ecx | ||
291 | /* 00_15 10 */ | ||
292 | movl %edi, %ebx | ||
293 | movl %ecx, %ebp | ||
294 | xorl %esi, %ebx | ||
295 | roll $5, %ebp | ||
296 | andl %edx, %ebx | ||
297 | addl %eax, %ebp | ||
298 | .byte 209 | ||
299 | .byte 202 /* rorl $1 %edx */ | ||
300 | movl 40(%esp), %eax | ||
301 | .byte 209 | ||
302 | .byte 202 /* rorl $1 %edx */ | ||
303 | xorl %esi, %ebx | ||
304 | leal 1518500249(%ebp,%eax,1),%ebp | ||
305 | movl %edx, %eax | ||
306 | addl %ebp, %ebx | ||
307 | xorl %edi, %eax | ||
308 | movl %ebx, %ebp | ||
309 | andl %ecx, %eax | ||
310 | roll $5, %ebp | ||
311 | addl %esi, %ebp | ||
312 | movl 44(%esp), %esi | ||
313 | .byte 209 | ||
314 | .byte 201 /* rorl $1 %ecx */ | ||
315 | xorl %edi, %eax | ||
316 | .byte 209 | ||
317 | .byte 201 /* rorl $1 %ecx */ | ||
318 | leal 1518500249(%ebp,%esi,1),%ebp | ||
319 | addl %ebp, %eax | ||
320 | /* 00_15 12 */ | ||
321 | movl %ecx, %esi | ||
322 | movl %eax, %ebp | ||
323 | xorl %edx, %esi | ||
324 | roll $5, %ebp | ||
325 | andl %ebx, %esi | ||
326 | addl %edi, %ebp | ||
327 | .byte 209 | ||
328 | .byte 203 /* rorl $1 %ebx */ | ||
329 | movl 48(%esp), %edi | ||
330 | .byte 209 | ||
331 | .byte 203 /* rorl $1 %ebx */ | ||
332 | xorl %edx, %esi | ||
333 | leal 1518500249(%ebp,%edi,1),%ebp | ||
334 | movl %ebx, %edi | ||
335 | addl %ebp, %esi | ||
336 | xorl %ecx, %edi | ||
337 | movl %esi, %ebp | ||
338 | andl %eax, %edi | ||
339 | roll $5, %ebp | ||
340 | addl %edx, %ebp | ||
341 | movl 52(%esp), %edx | ||
342 | .byte 209 | ||
343 | .byte 200 /* rorl $1 %eax */ | ||
344 | xorl %ecx, %edi | ||
345 | .byte 209 | ||
346 | .byte 200 /* rorl $1 %eax */ | ||
347 | leal 1518500249(%ebp,%edx,1),%ebp | ||
348 | addl %ebp, %edi | ||
349 | /* 00_15 14 */ | ||
350 | movl %eax, %edx | ||
351 | movl %edi, %ebp | ||
352 | xorl %ebx, %edx | ||
353 | roll $5, %ebp | ||
354 | andl %esi, %edx | ||
355 | addl %ecx, %ebp | ||
356 | .byte 209 | ||
357 | .byte 206 /* rorl $1 %esi */ | ||
358 | movl 56(%esp), %ecx | ||
359 | .byte 209 | ||
360 | .byte 206 /* rorl $1 %esi */ | ||
361 | xorl %ebx, %edx | ||
362 | leal 1518500249(%ebp,%ecx,1),%ebp | ||
363 | movl %esi, %ecx | ||
364 | addl %ebp, %edx | ||
365 | xorl %eax, %ecx | ||
366 | movl %edx, %ebp | ||
367 | andl %edi, %ecx | ||
368 | roll $5, %ebp | ||
369 | addl %ebx, %ebp | ||
370 | movl 60(%esp), %ebx | ||
371 | .byte 209 | ||
372 | .byte 207 /* rorl $1 %edi */ | ||
373 | xorl %eax, %ecx | ||
374 | .byte 209 | ||
375 | .byte 207 /* rorl $1 %edi */ | ||
376 | leal 1518500249(%ebp,%ebx,1),%ebp | ||
377 | addl %ebp, %ecx | ||
378 | /* 16_19 16 */ | ||
379 | nop | ||
380 | movl (%esp), %ebp | ||
381 | movl 8(%esp), %ebx | ||
382 | xorl %ebp, %ebx | ||
383 | movl 32(%esp), %ebp | ||
384 | xorl %ebp, %ebx | ||
385 | movl 52(%esp), %ebp | ||
386 | xorl %ebp, %ebx | ||
387 | movl %edi, %ebp | ||
388 | .byte 209 | ||
389 | .byte 195 /* roll $1 %ebx */ | ||
390 | xorl %esi, %ebp | ||
391 | movl %ebx, (%esp) | ||
392 | andl %edx, %ebp | ||
393 | leal 1518500249(%ebx,%eax,1),%ebx | ||
394 | xorl %esi, %ebp | ||
395 | movl %ecx, %eax | ||
396 | addl %ebp, %ebx | ||
397 | roll $5, %eax | ||
398 | .byte 209 | ||
399 | .byte 202 /* rorl $1 %edx */ | ||
400 | addl %eax, %ebx | ||
401 | movl 4(%esp), %eax | ||
402 | movl 12(%esp), %ebp | ||
403 | xorl %ebp, %eax | ||
404 | movl 36(%esp), %ebp | ||
405 | xorl %ebp, %eax | ||
406 | movl 56(%esp), %ebp | ||
407 | .byte 209 | ||
408 | .byte 202 /* rorl $1 %edx */ | ||
409 | xorl %ebp, %eax | ||
410 | .byte 209 | ||
411 | .byte 192 /* roll $1 %eax */ | ||
412 | movl %edx, %ebp | ||
413 | xorl %edi, %ebp | ||
414 | movl %eax, 4(%esp) | ||
415 | andl %ecx, %ebp | ||
416 | leal 1518500249(%eax,%esi,1),%eax | ||
417 | xorl %edi, %ebp | ||
418 | movl %ebx, %esi | ||
419 | roll $5, %esi | ||
420 | .byte 209 | ||
421 | .byte 201 /* rorl $1 %ecx */ | ||
422 | addl %esi, %eax | ||
423 | .byte 209 | ||
424 | .byte 201 /* rorl $1 %ecx */ | ||
425 | addl %ebp, %eax | ||
426 | /* 16_19 18 */ | ||
427 | movl 8(%esp), %ebp | ||
428 | movl 16(%esp), %esi | ||
429 | xorl %ebp, %esi | ||
430 | movl 40(%esp), %ebp | ||
431 | xorl %ebp, %esi | ||
432 | movl 60(%esp), %ebp | ||
433 | xorl %ebp, %esi | ||
434 | movl %ecx, %ebp | ||
435 | .byte 209 | ||
436 | .byte 198 /* roll $1 %esi */ | ||
437 | xorl %edx, %ebp | ||
438 | movl %esi, 8(%esp) | ||
439 | andl %ebx, %ebp | ||
440 | leal 1518500249(%esi,%edi,1),%esi | ||
441 | xorl %edx, %ebp | ||
442 | movl %eax, %edi | ||
443 | addl %ebp, %esi | ||
444 | roll $5, %edi | ||
445 | .byte 209 | ||
446 | .byte 203 /* rorl $1 %ebx */ | ||
447 | addl %edi, %esi | ||
448 | movl 12(%esp), %edi | ||
449 | movl 20(%esp), %ebp | ||
450 | xorl %ebp, %edi | ||
451 | movl 44(%esp), %ebp | ||
452 | xorl %ebp, %edi | ||
453 | movl (%esp), %ebp | ||
454 | .byte 209 | ||
455 | .byte 203 /* rorl $1 %ebx */ | ||
456 | xorl %ebp, %edi | ||
457 | .byte 209 | ||
458 | .byte 199 /* roll $1 %edi */ | ||
459 | movl %ebx, %ebp | ||
460 | xorl %ecx, %ebp | ||
461 | movl %edi, 12(%esp) | ||
462 | andl %eax, %ebp | ||
463 | leal 1518500249(%edi,%edx,1),%edi | ||
464 | xorl %ecx, %ebp | ||
465 | movl %esi, %edx | ||
466 | roll $5, %edx | ||
467 | .byte 209 | ||
468 | .byte 200 /* rorl $1 %eax */ | ||
469 | addl %edx, %edi | ||
470 | .byte 209 | ||
471 | .byte 200 /* rorl $1 %eax */ | ||
472 | addl %ebp, %edi | ||
473 | /* 20_39 20 */ | ||
474 | movl 16(%esp), %edx | ||
475 | movl 24(%esp), %ebp | ||
476 | xorl %ebp, %edx | ||
477 | movl 48(%esp), %ebp | ||
478 | xorl %ebp, %edx | ||
479 | movl 4(%esp), %ebp | ||
480 | xorl %ebp, %edx | ||
481 | movl %esi, %ebp | ||
482 | .byte 209 | ||
483 | .byte 194 /* roll $1 %edx */ | ||
484 | xorl %eax, %ebp | ||
485 | movl %edx, 16(%esp) | ||
486 | xorl %ebx, %ebp | ||
487 | leal 1859775393(%edx,%ecx,1),%edx | ||
488 | movl %edi, %ecx | ||
489 | roll $5, %ecx | ||
490 | .byte 209 | ||
491 | .byte 206 /* rorl $1 %esi */ | ||
492 | addl %ebp, %ecx | ||
493 | .byte 209 | ||
494 | .byte 206 /* rorl $1 %esi */ | ||
495 | addl %ecx, %edx | ||
496 | /* 20_39 21 */ | ||
497 | movl 20(%esp), %ecx | ||
498 | movl 28(%esp), %ebp | ||
499 | xorl %ebp, %ecx | ||
500 | movl 52(%esp), %ebp | ||
501 | xorl %ebp, %ecx | ||
502 | movl 8(%esp), %ebp | ||
503 | xorl %ebp, %ecx | ||
504 | movl %edi, %ebp | ||
505 | .byte 209 | ||
506 | .byte 193 /* roll $1 %ecx */ | ||
507 | xorl %esi, %ebp | ||
508 | movl %ecx, 20(%esp) | ||
509 | xorl %eax, %ebp | ||
510 | leal 1859775393(%ecx,%ebx,1),%ecx | ||
511 | movl %edx, %ebx | ||
512 | roll $5, %ebx | ||
513 | .byte 209 | ||
514 | .byte 207 /* rorl $1 %edi */ | ||
515 | addl %ebp, %ebx | ||
516 | .byte 209 | ||
517 | .byte 207 /* rorl $1 %edi */ | ||
518 | addl %ebx, %ecx | ||
519 | /* 20_39 22 */ | ||
520 | movl 24(%esp), %ebx | ||
521 | movl 32(%esp), %ebp | ||
522 | xorl %ebp, %ebx | ||
523 | movl 56(%esp), %ebp | ||
524 | xorl %ebp, %ebx | ||
525 | movl 12(%esp), %ebp | ||
526 | xorl %ebp, %ebx | ||
527 | movl %edx, %ebp | ||
528 | .byte 209 | ||
529 | .byte 195 /* roll $1 %ebx */ | ||
530 | xorl %edi, %ebp | ||
531 | movl %ebx, 24(%esp) | ||
532 | xorl %esi, %ebp | ||
533 | leal 1859775393(%ebx,%eax,1),%ebx | ||
534 | movl %ecx, %eax | ||
535 | roll $5, %eax | ||
536 | .byte 209 | ||
537 | .byte 202 /* rorl $1 %edx */ | ||
538 | addl %ebp, %eax | ||
539 | .byte 209 | ||
540 | .byte 202 /* rorl $1 %edx */ | ||
541 | addl %eax, %ebx | ||
542 | /* 20_39 23 */ | ||
543 | movl 28(%esp), %eax | ||
544 | movl 36(%esp), %ebp | ||
545 | xorl %ebp, %eax | ||
546 | movl 60(%esp), %ebp | ||
547 | xorl %ebp, %eax | ||
548 | movl 16(%esp), %ebp | ||
549 | xorl %ebp, %eax | ||
550 | movl %ecx, %ebp | ||
551 | .byte 209 | ||
552 | .byte 192 /* roll $1 %eax */ | ||
553 | xorl %edx, %ebp | ||
554 | movl %eax, 28(%esp) | ||
555 | xorl %edi, %ebp | ||
556 | leal 1859775393(%eax,%esi,1),%eax | ||
557 | movl %ebx, %esi | ||
558 | roll $5, %esi | ||
559 | .byte 209 | ||
560 | .byte 201 /* rorl $1 %ecx */ | ||
561 | addl %ebp, %esi | ||
562 | .byte 209 | ||
563 | .byte 201 /* rorl $1 %ecx */ | ||
564 | addl %esi, %eax | ||
565 | /* 20_39 24 */ | ||
566 | movl 32(%esp), %esi | ||
567 | movl 40(%esp), %ebp | ||
568 | xorl %ebp, %esi | ||
569 | movl (%esp), %ebp | ||
570 | xorl %ebp, %esi | ||
571 | movl 20(%esp), %ebp | ||
572 | xorl %ebp, %esi | ||
573 | movl %ebx, %ebp | ||
574 | .byte 209 | ||
575 | .byte 198 /* roll $1 %esi */ | ||
576 | xorl %ecx, %ebp | ||
577 | movl %esi, 32(%esp) | ||
578 | xorl %edx, %ebp | ||
579 | leal 1859775393(%esi,%edi,1),%esi | ||
580 | movl %eax, %edi | ||
581 | roll $5, %edi | ||
582 | .byte 209 | ||
583 | .byte 203 /* rorl $1 %ebx */ | ||
584 | addl %ebp, %edi | ||
585 | .byte 209 | ||
586 | .byte 203 /* rorl $1 %ebx */ | ||
587 | addl %edi, %esi | ||
588 | /* 20_39 25 */ | ||
589 | movl 36(%esp), %edi | ||
590 | movl 44(%esp), %ebp | ||
591 | xorl %ebp, %edi | ||
592 | movl 4(%esp), %ebp | ||
593 | xorl %ebp, %edi | ||
594 | movl 24(%esp), %ebp | ||
595 | xorl %ebp, %edi | ||
596 | movl %eax, %ebp | ||
597 | .byte 209 | ||
598 | .byte 199 /* roll $1 %edi */ | ||
599 | xorl %ebx, %ebp | ||
600 | movl %edi, 36(%esp) | ||
601 | xorl %ecx, %ebp | ||
602 | leal 1859775393(%edi,%edx,1),%edi | ||
603 | movl %esi, %edx | ||
604 | roll $5, %edx | ||
605 | .byte 209 | ||
606 | .byte 200 /* rorl $1 %eax */ | ||
607 | addl %ebp, %edx | ||
608 | .byte 209 | ||
609 | .byte 200 /* rorl $1 %eax */ | ||
610 | addl %edx, %edi | ||
611 | /* 20_39 26 */ | ||
612 | movl 40(%esp), %edx | ||
613 | movl 48(%esp), %ebp | ||
614 | xorl %ebp, %edx | ||
615 | movl 8(%esp), %ebp | ||
616 | xorl %ebp, %edx | ||
617 | movl 28(%esp), %ebp | ||
618 | xorl %ebp, %edx | ||
619 | movl %esi, %ebp | ||
620 | .byte 209 | ||
621 | .byte 194 /* roll $1 %edx */ | ||
622 | xorl %eax, %ebp | ||
623 | movl %edx, 40(%esp) | ||
624 | xorl %ebx, %ebp | ||
625 | leal 1859775393(%edx,%ecx,1),%edx | ||
626 | movl %edi, %ecx | ||
627 | roll $5, %ecx | ||
628 | .byte 209 | ||
629 | .byte 206 /* rorl $1 %esi */ | ||
630 | addl %ebp, %ecx | ||
631 | .byte 209 | ||
632 | .byte 206 /* rorl $1 %esi */ | ||
633 | addl %ecx, %edx | ||
634 | /* 20_39 27 */ | ||
635 | movl 44(%esp), %ecx | ||
636 | movl 52(%esp), %ebp | ||
637 | xorl %ebp, %ecx | ||
638 | movl 12(%esp), %ebp | ||
639 | xorl %ebp, %ecx | ||
640 | movl 32(%esp), %ebp | ||
641 | xorl %ebp, %ecx | ||
642 | movl %edi, %ebp | ||
643 | .byte 209 | ||
644 | .byte 193 /* roll $1 %ecx */ | ||
645 | xorl %esi, %ebp | ||
646 | movl %ecx, 44(%esp) | ||
647 | xorl %eax, %ebp | ||
648 | leal 1859775393(%ecx,%ebx,1),%ecx | ||
649 | movl %edx, %ebx | ||
650 | roll $5, %ebx | ||
651 | .byte 209 | ||
652 | .byte 207 /* rorl $1 %edi */ | ||
653 | addl %ebp, %ebx | ||
654 | .byte 209 | ||
655 | .byte 207 /* rorl $1 %edi */ | ||
656 | addl %ebx, %ecx | ||
657 | /* 20_39 28 */ | ||
658 | movl 48(%esp), %ebx | ||
659 | movl 56(%esp), %ebp | ||
660 | xorl %ebp, %ebx | ||
661 | movl 16(%esp), %ebp | ||
662 | xorl %ebp, %ebx | ||
663 | movl 36(%esp), %ebp | ||
664 | xorl %ebp, %ebx | ||
665 | movl %edx, %ebp | ||
666 | .byte 209 | ||
667 | .byte 195 /* roll $1 %ebx */ | ||
668 | xorl %edi, %ebp | ||
669 | movl %ebx, 48(%esp) | ||
670 | xorl %esi, %ebp | ||
671 | leal 1859775393(%ebx,%eax,1),%ebx | ||
672 | movl %ecx, %eax | ||
673 | roll $5, %eax | ||
674 | .byte 209 | ||
675 | .byte 202 /* rorl $1 %edx */ | ||
676 | addl %ebp, %eax | ||
677 | .byte 209 | ||
678 | .byte 202 /* rorl $1 %edx */ | ||
679 | addl %eax, %ebx | ||
680 | /* 20_39 29 */ | ||
681 | movl 52(%esp), %eax | ||
682 | movl 60(%esp), %ebp | ||
683 | xorl %ebp, %eax | ||
684 | movl 20(%esp), %ebp | ||
685 | xorl %ebp, %eax | ||
686 | movl 40(%esp), %ebp | ||
687 | xorl %ebp, %eax | ||
688 | movl %ecx, %ebp | ||
689 | .byte 209 | ||
690 | .byte 192 /* roll $1 %eax */ | ||
691 | xorl %edx, %ebp | ||
692 | movl %eax, 52(%esp) | ||
693 | xorl %edi, %ebp | ||
694 | leal 1859775393(%eax,%esi,1),%eax | ||
695 | movl %ebx, %esi | ||
696 | roll $5, %esi | ||
697 | .byte 209 | ||
698 | .byte 201 /* rorl $1 %ecx */ | ||
699 | addl %ebp, %esi | ||
700 | .byte 209 | ||
701 | .byte 201 /* rorl $1 %ecx */ | ||
702 | addl %esi, %eax | ||
703 | /* 20_39 30 */ | ||
704 | movl 56(%esp), %esi | ||
705 | movl (%esp), %ebp | ||
706 | xorl %ebp, %esi | ||
707 | movl 24(%esp), %ebp | ||
708 | xorl %ebp, %esi | ||
709 | movl 44(%esp), %ebp | ||
710 | xorl %ebp, %esi | ||
711 | movl %ebx, %ebp | ||
712 | .byte 209 | ||
713 | .byte 198 /* roll $1 %esi */ | ||
714 | xorl %ecx, %ebp | ||
715 | movl %esi, 56(%esp) | ||
716 | xorl %edx, %ebp | ||
717 | leal 1859775393(%esi,%edi,1),%esi | ||
718 | movl %eax, %edi | ||
719 | roll $5, %edi | ||
720 | .byte 209 | ||
721 | .byte 203 /* rorl $1 %ebx */ | ||
722 | addl %ebp, %edi | ||
723 | .byte 209 | ||
724 | .byte 203 /* rorl $1 %ebx */ | ||
725 | addl %edi, %esi | ||
726 | /* 20_39 31 */ | ||
727 | movl 60(%esp), %edi | ||
728 | movl 4(%esp), %ebp | ||
729 | xorl %ebp, %edi | ||
730 | movl 28(%esp), %ebp | ||
731 | xorl %ebp, %edi | ||
732 | movl 48(%esp), %ebp | ||
733 | xorl %ebp, %edi | ||
734 | movl %eax, %ebp | ||
735 | .byte 209 | ||
736 | .byte 199 /* roll $1 %edi */ | ||
737 | xorl %ebx, %ebp | ||
738 | movl %edi, 60(%esp) | ||
739 | xorl %ecx, %ebp | ||
740 | leal 1859775393(%edi,%edx,1),%edi | ||
741 | movl %esi, %edx | ||
742 | roll $5, %edx | ||
743 | .byte 209 | ||
744 | .byte 200 /* rorl $1 %eax */ | ||
745 | addl %ebp, %edx | ||
746 | .byte 209 | ||
747 | .byte 200 /* rorl $1 %eax */ | ||
748 | addl %edx, %edi | ||
749 | /* 20_39 32 */ | ||
750 | movl (%esp), %edx | ||
751 | movl 8(%esp), %ebp | ||
752 | xorl %ebp, %edx | ||
753 | movl 32(%esp), %ebp | ||
754 | xorl %ebp, %edx | ||
755 | movl 52(%esp), %ebp | ||
756 | xorl %ebp, %edx | ||
757 | movl %esi, %ebp | ||
758 | .byte 209 | ||
759 | .byte 194 /* roll $1 %edx */ | ||
760 | xorl %eax, %ebp | ||
761 | movl %edx, (%esp) | ||
762 | xorl %ebx, %ebp | ||
763 | leal 1859775393(%edx,%ecx,1),%edx | ||
764 | movl %edi, %ecx | ||
765 | roll $5, %ecx | ||
766 | .byte 209 | ||
767 | .byte 206 /* rorl $1 %esi */ | ||
768 | addl %ebp, %ecx | ||
769 | .byte 209 | ||
770 | .byte 206 /* rorl $1 %esi */ | ||
771 | addl %ecx, %edx | ||
772 | /* 20_39 33 */ | ||
773 | movl 4(%esp), %ecx | ||
774 | movl 12(%esp), %ebp | ||
775 | xorl %ebp, %ecx | ||
776 | movl 36(%esp), %ebp | ||
777 | xorl %ebp, %ecx | ||
778 | movl 56(%esp), %ebp | ||
779 | xorl %ebp, %ecx | ||
780 | movl %edi, %ebp | ||
781 | .byte 209 | ||
782 | .byte 193 /* roll $1 %ecx */ | ||
783 | xorl %esi, %ebp | ||
784 | movl %ecx, 4(%esp) | ||
785 | xorl %eax, %ebp | ||
786 | leal 1859775393(%ecx,%ebx,1),%ecx | ||
787 | movl %edx, %ebx | ||
788 | roll $5, %ebx | ||
789 | .byte 209 | ||
790 | .byte 207 /* rorl $1 %edi */ | ||
791 | addl %ebp, %ebx | ||
792 | .byte 209 | ||
793 | .byte 207 /* rorl $1 %edi */ | ||
794 | addl %ebx, %ecx | ||
795 | /* 20_39 34 */ | ||
796 | movl 8(%esp), %ebx | ||
797 | movl 16(%esp), %ebp | ||
798 | xorl %ebp, %ebx | ||
799 | movl 40(%esp), %ebp | ||
800 | xorl %ebp, %ebx | ||
801 | movl 60(%esp), %ebp | ||
802 | xorl %ebp, %ebx | ||
803 | movl %edx, %ebp | ||
804 | .byte 209 | ||
805 | .byte 195 /* roll $1 %ebx */ | ||
806 | xorl %edi, %ebp | ||
807 | movl %ebx, 8(%esp) | ||
808 | xorl %esi, %ebp | ||
809 | leal 1859775393(%ebx,%eax,1),%ebx | ||
810 | movl %ecx, %eax | ||
811 | roll $5, %eax | ||
812 | .byte 209 | ||
813 | .byte 202 /* rorl $1 %edx */ | ||
814 | addl %ebp, %eax | ||
815 | .byte 209 | ||
816 | .byte 202 /* rorl $1 %edx */ | ||
817 | addl %eax, %ebx | ||
818 | /* 20_39 35 */ | ||
819 | movl 12(%esp), %eax | ||
820 | movl 20(%esp), %ebp | ||
821 | xorl %ebp, %eax | ||
822 | movl 44(%esp), %ebp | ||
823 | xorl %ebp, %eax | ||
824 | movl (%esp), %ebp | ||
825 | xorl %ebp, %eax | ||
826 | movl %ecx, %ebp | ||
827 | .byte 209 | ||
828 | .byte 192 /* roll $1 %eax */ | ||
829 | xorl %edx, %ebp | ||
830 | movl %eax, 12(%esp) | ||
831 | xorl %edi, %ebp | ||
832 | leal 1859775393(%eax,%esi,1),%eax | ||
833 | movl %ebx, %esi | ||
834 | roll $5, %esi | ||
835 | .byte 209 | ||
836 | .byte 201 /* rorl $1 %ecx */ | ||
837 | addl %ebp, %esi | ||
838 | .byte 209 | ||
839 | .byte 201 /* rorl $1 %ecx */ | ||
840 | addl %esi, %eax | ||
841 | /* 20_39 36 */ | ||
842 | movl 16(%esp), %esi | ||
843 | movl 24(%esp), %ebp | ||
844 | xorl %ebp, %esi | ||
845 | movl 48(%esp), %ebp | ||
846 | xorl %ebp, %esi | ||
847 | movl 4(%esp), %ebp | ||
848 | xorl %ebp, %esi | ||
849 | movl %ebx, %ebp | ||
850 | .byte 209 | ||
851 | .byte 198 /* roll $1 %esi */ | ||
852 | xorl %ecx, %ebp | ||
853 | movl %esi, 16(%esp) | ||
854 | xorl %edx, %ebp | ||
855 | leal 1859775393(%esi,%edi,1),%esi | ||
856 | movl %eax, %edi | ||
857 | roll $5, %edi | ||
858 | .byte 209 | ||
859 | .byte 203 /* rorl $1 %ebx */ | ||
860 | addl %ebp, %edi | ||
861 | .byte 209 | ||
862 | .byte 203 /* rorl $1 %ebx */ | ||
863 | addl %edi, %esi | ||
864 | /* 20_39 37 */ | ||
865 | movl 20(%esp), %edi | ||
866 | movl 28(%esp), %ebp | ||
867 | xorl %ebp, %edi | ||
868 | movl 52(%esp), %ebp | ||
869 | xorl %ebp, %edi | ||
870 | movl 8(%esp), %ebp | ||
871 | xorl %ebp, %edi | ||
872 | movl %eax, %ebp | ||
873 | .byte 209 | ||
874 | .byte 199 /* roll $1 %edi */ | ||
875 | xorl %ebx, %ebp | ||
876 | movl %edi, 20(%esp) | ||
877 | xorl %ecx, %ebp | ||
878 | leal 1859775393(%edi,%edx,1),%edi | ||
879 | movl %esi, %edx | ||
880 | roll $5, %edx | ||
881 | .byte 209 | ||
882 | .byte 200 /* rorl $1 %eax */ | ||
883 | addl %ebp, %edx | ||
884 | .byte 209 | ||
885 | .byte 200 /* rorl $1 %eax */ | ||
886 | addl %edx, %edi | ||
887 | /* 20_39 38 */ | ||
888 | movl 24(%esp), %edx | ||
889 | movl 32(%esp), %ebp | ||
890 | xorl %ebp, %edx | ||
891 | movl 56(%esp), %ebp | ||
892 | xorl %ebp, %edx | ||
893 | movl 12(%esp), %ebp | ||
894 | xorl %ebp, %edx | ||
895 | movl %esi, %ebp | ||
896 | .byte 209 | ||
897 | .byte 194 /* roll $1 %edx */ | ||
898 | xorl %eax, %ebp | ||
899 | movl %edx, 24(%esp) | ||
900 | xorl %ebx, %ebp | ||
901 | leal 1859775393(%edx,%ecx,1),%edx | ||
902 | movl %edi, %ecx | ||
903 | roll $5, %ecx | ||
904 | .byte 209 | ||
905 | .byte 206 /* rorl $1 %esi */ | ||
906 | addl %ebp, %ecx | ||
907 | .byte 209 | ||
908 | .byte 206 /* rorl $1 %esi */ | ||
909 | addl %ecx, %edx | ||
910 | /* 20_39 39 */ | ||
911 | movl 28(%esp), %ecx | ||
912 | movl 36(%esp), %ebp | ||
913 | xorl %ebp, %ecx | ||
914 | movl 60(%esp), %ebp | ||
915 | xorl %ebp, %ecx | ||
916 | movl 16(%esp), %ebp | ||
917 | xorl %ebp, %ecx | ||
918 | movl %edi, %ebp | ||
919 | .byte 209 | ||
920 | .byte 193 /* roll $1 %ecx */ | ||
921 | xorl %esi, %ebp | ||
922 | movl %ecx, 28(%esp) | ||
923 | xorl %eax, %ebp | ||
924 | leal 1859775393(%ecx,%ebx,1),%ecx | ||
925 | movl %edx, %ebx | ||
926 | roll $5, %ebx | ||
927 | .byte 209 | ||
928 | .byte 207 /* rorl $1 %edi */ | ||
929 | addl %ebp, %ebx | ||
930 | .byte 209 | ||
931 | .byte 207 /* rorl $1 %edi */ | ||
932 | addl %ebx, %ecx | ||
933 | /* 40_59 40 */ | ||
934 | movl 32(%esp), %ebx | ||
935 | movl 40(%esp), %ebp | ||
936 | xorl %ebp, %ebx | ||
937 | movl (%esp), %ebp | ||
938 | xorl %ebp, %ebx | ||
939 | movl 20(%esp), %ebp | ||
940 | xorl %ebp, %ebx | ||
941 | movl %edx, %ebp | ||
942 | .byte 209 | ||
943 | .byte 195 /* roll $1 %ebx */ | ||
944 | orl %edi, %ebp | ||
945 | movl %ebx, 32(%esp) | ||
946 | andl %esi, %ebp | ||
947 | leal 2400959708(%ebx,%eax,1),%ebx | ||
948 | movl %edx, %eax | ||
949 | .byte 209 | ||
950 | .byte 202 /* rorl $1 %edx */ | ||
951 | andl %edi, %eax | ||
952 | orl %eax, %ebp | ||
953 | movl %ecx, %eax | ||
954 | roll $5, %eax | ||
955 | addl %eax, %ebp | ||
956 | movl 36(%esp), %eax | ||
957 | addl %ebp, %ebx | ||
958 | movl 44(%esp), %ebp | ||
959 | xorl %ebp, %eax | ||
960 | movl 4(%esp), %ebp | ||
961 | xorl %ebp, %eax | ||
962 | movl 24(%esp), %ebp | ||
963 | .byte 209 | ||
964 | .byte 202 /* rorl $1 %edx */ | ||
965 | xorl %ebp, %eax | ||
966 | .byte 209 | ||
967 | .byte 192 /* roll $1 %eax */ | ||
968 | movl %ecx, %ebp | ||
969 | movl %eax, 36(%esp) | ||
970 | orl %edx, %ebp | ||
971 | leal 2400959708(%eax,%esi,1),%eax | ||
972 | movl %ecx, %esi | ||
973 | andl %edi, %ebp | ||
974 | andl %edx, %esi | ||
975 | orl %esi, %ebp | ||
976 | movl %ebx, %esi | ||
977 | roll $5, %esi | ||
978 | .byte 209 | ||
979 | .byte 201 /* rorl $1 %ecx */ | ||
980 | addl %esi, %ebp | ||
981 | .byte 209 | ||
982 | .byte 201 /* rorl $1 %ecx */ | ||
983 | addl %ebp, %eax | ||
984 | /* 40_59 41 */ | ||
985 | /* 40_59 42 */ | ||
986 | movl 40(%esp), %esi | ||
987 | movl 48(%esp), %ebp | ||
988 | xorl %ebp, %esi | ||
989 | movl 8(%esp), %ebp | ||
990 | xorl %ebp, %esi | ||
991 | movl 28(%esp), %ebp | ||
992 | xorl %ebp, %esi | ||
993 | movl %ebx, %ebp | ||
994 | .byte 209 | ||
995 | .byte 198 /* roll $1 %esi */ | ||
996 | orl %ecx, %ebp | ||
997 | movl %esi, 40(%esp) | ||
998 | andl %edx, %ebp | ||
999 | leal 2400959708(%esi,%edi,1),%esi | ||
1000 | movl %ebx, %edi | ||
1001 | .byte 209 | ||
1002 | .byte 203 /* rorl $1 %ebx */ | ||
1003 | andl %ecx, %edi | ||
1004 | orl %edi, %ebp | ||
1005 | movl %eax, %edi | ||
1006 | roll $5, %edi | ||
1007 | addl %edi, %ebp | ||
1008 | movl 44(%esp), %edi | ||
1009 | addl %ebp, %esi | ||
1010 | movl 52(%esp), %ebp | ||
1011 | xorl %ebp, %edi | ||
1012 | movl 12(%esp), %ebp | ||
1013 | xorl %ebp, %edi | ||
1014 | movl 32(%esp), %ebp | ||
1015 | .byte 209 | ||
1016 | .byte 203 /* rorl $1 %ebx */ | ||
1017 | xorl %ebp, %edi | ||
1018 | .byte 209 | ||
1019 | .byte 199 /* roll $1 %edi */ | ||
1020 | movl %eax, %ebp | ||
1021 | movl %edi, 44(%esp) | ||
1022 | orl %ebx, %ebp | ||
1023 | leal 2400959708(%edi,%edx,1),%edi | ||
1024 | movl %eax, %edx | ||
1025 | andl %ecx, %ebp | ||
1026 | andl %ebx, %edx | ||
1027 | orl %edx, %ebp | ||
1028 | movl %esi, %edx | ||
1029 | roll $5, %edx | ||
1030 | .byte 209 | ||
1031 | .byte 200 /* rorl $1 %eax */ | ||
1032 | addl %edx, %ebp | ||
1033 | .byte 209 | ||
1034 | .byte 200 /* rorl $1 %eax */ | ||
1035 | addl %ebp, %edi | ||
1036 | /* 40_59 43 */ | ||
1037 | /* 40_59 44 */ | ||
1038 | movl 48(%esp), %edx | ||
1039 | movl 56(%esp), %ebp | ||
1040 | xorl %ebp, %edx | ||
1041 | movl 16(%esp), %ebp | ||
1042 | xorl %ebp, %edx | ||
1043 | movl 36(%esp), %ebp | ||
1044 | xorl %ebp, %edx | ||
1045 | movl %esi, %ebp | ||
1046 | .byte 209 | ||
1047 | .byte 194 /* roll $1 %edx */ | ||
1048 | orl %eax, %ebp | ||
1049 | movl %edx, 48(%esp) | ||
1050 | andl %ebx, %ebp | ||
1051 | leal 2400959708(%edx,%ecx,1),%edx | ||
1052 | movl %esi, %ecx | ||
1053 | .byte 209 | ||
1054 | .byte 206 /* rorl $1 %esi */ | ||
1055 | andl %eax, %ecx | ||
1056 | orl %ecx, %ebp | ||
1057 | movl %edi, %ecx | ||
1058 | roll $5, %ecx | ||
1059 | addl %ecx, %ebp | ||
1060 | movl 52(%esp), %ecx | ||
1061 | addl %ebp, %edx | ||
1062 | movl 60(%esp), %ebp | ||
1063 | xorl %ebp, %ecx | ||
1064 | movl 20(%esp), %ebp | ||
1065 | xorl %ebp, %ecx | ||
1066 | movl 40(%esp), %ebp | ||
1067 | .byte 209 | ||
1068 | .byte 206 /* rorl $1 %esi */ | ||
1069 | xorl %ebp, %ecx | ||
1070 | .byte 209 | ||
1071 | .byte 193 /* roll $1 %ecx */ | ||
1072 | movl %edi, %ebp | ||
1073 | movl %ecx, 52(%esp) | ||
1074 | orl %esi, %ebp | ||
1075 | leal 2400959708(%ecx,%ebx,1),%ecx | ||
1076 | movl %edi, %ebx | ||
1077 | andl %eax, %ebp | ||
1078 | andl %esi, %ebx | ||
1079 | orl %ebx, %ebp | ||
1080 | movl %edx, %ebx | ||
1081 | roll $5, %ebx | ||
1082 | .byte 209 | ||
1083 | .byte 207 /* rorl $1 %edi */ | ||
1084 | addl %ebx, %ebp | ||
1085 | .byte 209 | ||
1086 | .byte 207 /* rorl $1 %edi */ | ||
1087 | addl %ebp, %ecx | ||
1088 | /* 40_59 45 */ | ||
1089 | /* 40_59 46 */ | ||
1090 | movl 56(%esp), %ebx | ||
1091 | movl (%esp), %ebp | ||
1092 | xorl %ebp, %ebx | ||
1093 | movl 24(%esp), %ebp | ||
1094 | xorl %ebp, %ebx | ||
1095 | movl 44(%esp), %ebp | ||
1096 | xorl %ebp, %ebx | ||
1097 | movl %edx, %ebp | ||
1098 | .byte 209 | ||
1099 | .byte 195 /* roll $1 %ebx */ | ||
1100 | orl %edi, %ebp | ||
1101 | movl %ebx, 56(%esp) | ||
1102 | andl %esi, %ebp | ||
1103 | leal 2400959708(%ebx,%eax,1),%ebx | ||
1104 | movl %edx, %eax | ||
1105 | .byte 209 | ||
1106 | .byte 202 /* rorl $1 %edx */ | ||
1107 | andl %edi, %eax | ||
1108 | orl %eax, %ebp | ||
1109 | movl %ecx, %eax | ||
1110 | roll $5, %eax | ||
1111 | addl %eax, %ebp | ||
1112 | movl 60(%esp), %eax | ||
1113 | addl %ebp, %ebx | ||
1114 | movl 4(%esp), %ebp | ||
1115 | xorl %ebp, %eax | ||
1116 | movl 28(%esp), %ebp | ||
1117 | xorl %ebp, %eax | ||
1118 | movl 48(%esp), %ebp | ||
1119 | .byte 209 | ||
1120 | .byte 202 /* rorl $1 %edx */ | ||
1121 | xorl %ebp, %eax | ||
1122 | .byte 209 | ||
1123 | .byte 192 /* roll $1 %eax */ | ||
1124 | movl %ecx, %ebp | ||
1125 | movl %eax, 60(%esp) | ||
1126 | orl %edx, %ebp | ||
1127 | leal 2400959708(%eax,%esi,1),%eax | ||
1128 | movl %ecx, %esi | ||
1129 | andl %edi, %ebp | ||
1130 | andl %edx, %esi | ||
1131 | orl %esi, %ebp | ||
1132 | movl %ebx, %esi | ||
1133 | roll $5, %esi | ||
1134 | .byte 209 | ||
1135 | .byte 201 /* rorl $1 %ecx */ | ||
1136 | addl %esi, %ebp | ||
1137 | .byte 209 | ||
1138 | .byte 201 /* rorl $1 %ecx */ | ||
1139 | addl %ebp, %eax | ||
1140 | /* 40_59 47 */ | ||
1141 | /* 40_59 48 */ | ||
1142 | movl (%esp), %esi | ||
1143 | movl 8(%esp), %ebp | ||
1144 | xorl %ebp, %esi | ||
1145 | movl 32(%esp), %ebp | ||
1146 | xorl %ebp, %esi | ||
1147 | movl 52(%esp), %ebp | ||
1148 | xorl %ebp, %esi | ||
1149 | movl %ebx, %ebp | ||
1150 | .byte 209 | ||
1151 | .byte 198 /* roll $1 %esi */ | ||
1152 | orl %ecx, %ebp | ||
1153 | movl %esi, (%esp) | ||
1154 | andl %edx, %ebp | ||
1155 | leal 2400959708(%esi,%edi,1),%esi | ||
1156 | movl %ebx, %edi | ||
1157 | .byte 209 | ||
1158 | .byte 203 /* rorl $1 %ebx */ | ||
1159 | andl %ecx, %edi | ||
1160 | orl %edi, %ebp | ||
1161 | movl %eax, %edi | ||
1162 | roll $5, %edi | ||
1163 | addl %edi, %ebp | ||
1164 | movl 4(%esp), %edi | ||
1165 | addl %ebp, %esi | ||
1166 | movl 12(%esp), %ebp | ||
1167 | xorl %ebp, %edi | ||
1168 | movl 36(%esp), %ebp | ||
1169 | xorl %ebp, %edi | ||
1170 | movl 56(%esp), %ebp | ||
1171 | .byte 209 | ||
1172 | .byte 203 /* rorl $1 %ebx */ | ||
1173 | xorl %ebp, %edi | ||
1174 | .byte 209 | ||
1175 | .byte 199 /* roll $1 %edi */ | ||
1176 | movl %eax, %ebp | ||
1177 | movl %edi, 4(%esp) | ||
1178 | orl %ebx, %ebp | ||
1179 | leal 2400959708(%edi,%edx,1),%edi | ||
1180 | movl %eax, %edx | ||
1181 | andl %ecx, %ebp | ||
1182 | andl %ebx, %edx | ||
1183 | orl %edx, %ebp | ||
1184 | movl %esi, %edx | ||
1185 | roll $5, %edx | ||
1186 | .byte 209 | ||
1187 | .byte 200 /* rorl $1 %eax */ | ||
1188 | addl %edx, %ebp | ||
1189 | .byte 209 | ||
1190 | .byte 200 /* rorl $1 %eax */ | ||
1191 | addl %ebp, %edi | ||
1192 | /* 40_59 49 */ | ||
1193 | /* 40_59 50 */ | ||
1194 | movl 8(%esp), %edx | ||
1195 | movl 16(%esp), %ebp | ||
1196 | xorl %ebp, %edx | ||
1197 | movl 40(%esp), %ebp | ||
1198 | xorl %ebp, %edx | ||
1199 | movl 60(%esp), %ebp | ||
1200 | xorl %ebp, %edx | ||
1201 | movl %esi, %ebp | ||
1202 | .byte 209 | ||
1203 | .byte 194 /* roll $1 %edx */ | ||
1204 | orl %eax, %ebp | ||
1205 | movl %edx, 8(%esp) | ||
1206 | andl %ebx, %ebp | ||
1207 | leal 2400959708(%edx,%ecx,1),%edx | ||
1208 | movl %esi, %ecx | ||
1209 | .byte 209 | ||
1210 | .byte 206 /* rorl $1 %esi */ | ||
1211 | andl %eax, %ecx | ||
1212 | orl %ecx, %ebp | ||
1213 | movl %edi, %ecx | ||
1214 | roll $5, %ecx | ||
1215 | addl %ecx, %ebp | ||
1216 | movl 12(%esp), %ecx | ||
1217 | addl %ebp, %edx | ||
1218 | movl 20(%esp), %ebp | ||
1219 | xorl %ebp, %ecx | ||
1220 | movl 44(%esp), %ebp | ||
1221 | xorl %ebp, %ecx | ||
1222 | movl (%esp), %ebp | ||
1223 | .byte 209 | ||
1224 | .byte 206 /* rorl $1 %esi */ | ||
1225 | xorl %ebp, %ecx | ||
1226 | .byte 209 | ||
1227 | .byte 193 /* roll $1 %ecx */ | ||
1228 | movl %edi, %ebp | ||
1229 | movl %ecx, 12(%esp) | ||
1230 | orl %esi, %ebp | ||
1231 | leal 2400959708(%ecx,%ebx,1),%ecx | ||
1232 | movl %edi, %ebx | ||
1233 | andl %eax, %ebp | ||
1234 | andl %esi, %ebx | ||
1235 | orl %ebx, %ebp | ||
1236 | movl %edx, %ebx | ||
1237 | roll $5, %ebx | ||
1238 | .byte 209 | ||
1239 | .byte 207 /* rorl $1 %edi */ | ||
1240 | addl %ebx, %ebp | ||
1241 | .byte 209 | ||
1242 | .byte 207 /* rorl $1 %edi */ | ||
1243 | addl %ebp, %ecx | ||
1244 | /* 40_59 51 */ | ||
1245 | /* 40_59 52 */ | ||
1246 | movl 16(%esp), %ebx | ||
1247 | movl 24(%esp), %ebp | ||
1248 | xorl %ebp, %ebx | ||
1249 | movl 48(%esp), %ebp | ||
1250 | xorl %ebp, %ebx | ||
1251 | movl 4(%esp), %ebp | ||
1252 | xorl %ebp, %ebx | ||
1253 | movl %edx, %ebp | ||
1254 | .byte 209 | ||
1255 | .byte 195 /* roll $1 %ebx */ | ||
1256 | orl %edi, %ebp | ||
1257 | movl %ebx, 16(%esp) | ||
1258 | andl %esi, %ebp | ||
1259 | leal 2400959708(%ebx,%eax,1),%ebx | ||
1260 | movl %edx, %eax | ||
1261 | .byte 209 | ||
1262 | .byte 202 /* rorl $1 %edx */ | ||
1263 | andl %edi, %eax | ||
1264 | orl %eax, %ebp | ||
1265 | movl %ecx, %eax | ||
1266 | roll $5, %eax | ||
1267 | addl %eax, %ebp | ||
1268 | movl 20(%esp), %eax | ||
1269 | addl %ebp, %ebx | ||
1270 | movl 28(%esp), %ebp | ||
1271 | xorl %ebp, %eax | ||
1272 | movl 52(%esp), %ebp | ||
1273 | xorl %ebp, %eax | ||
1274 | movl 8(%esp), %ebp | ||
1275 | .byte 209 | ||
1276 | .byte 202 /* rorl $1 %edx */ | ||
1277 | xorl %ebp, %eax | ||
1278 | .byte 209 | ||
1279 | .byte 192 /* roll $1 %eax */ | ||
1280 | movl %ecx, %ebp | ||
1281 | movl %eax, 20(%esp) | ||
1282 | orl %edx, %ebp | ||
1283 | leal 2400959708(%eax,%esi,1),%eax | ||
1284 | movl %ecx, %esi | ||
1285 | andl %edi, %ebp | ||
1286 | andl %edx, %esi | ||
1287 | orl %esi, %ebp | ||
1288 | movl %ebx, %esi | ||
1289 | roll $5, %esi | ||
1290 | .byte 209 | ||
1291 | .byte 201 /* rorl $1 %ecx */ | ||
1292 | addl %esi, %ebp | ||
1293 | .byte 209 | ||
1294 | .byte 201 /* rorl $1 %ecx */ | ||
1295 | addl %ebp, %eax | ||
1296 | /* 40_59 53 */ | ||
1297 | /* 40_59 54 */ | ||
1298 | movl 24(%esp), %esi | ||
1299 | movl 32(%esp), %ebp | ||
1300 | xorl %ebp, %esi | ||
1301 | movl 56(%esp), %ebp | ||
1302 | xorl %ebp, %esi | ||
1303 | movl 12(%esp), %ebp | ||
1304 | xorl %ebp, %esi | ||
1305 | movl %ebx, %ebp | ||
1306 | .byte 209 | ||
1307 | .byte 198 /* roll $1 %esi */ | ||
1308 | orl %ecx, %ebp | ||
1309 | movl %esi, 24(%esp) | ||
1310 | andl %edx, %ebp | ||
1311 | leal 2400959708(%esi,%edi,1),%esi | ||
1312 | movl %ebx, %edi | ||
1313 | .byte 209 | ||
1314 | .byte 203 /* rorl $1 %ebx */ | ||
1315 | andl %ecx, %edi | ||
1316 | orl %edi, %ebp | ||
1317 | movl %eax, %edi | ||
1318 | roll $5, %edi | ||
1319 | addl %edi, %ebp | ||
1320 | movl 28(%esp), %edi | ||
1321 | addl %ebp, %esi | ||
1322 | movl 36(%esp), %ebp | ||
1323 | xorl %ebp, %edi | ||
1324 | movl 60(%esp), %ebp | ||
1325 | xorl %ebp, %edi | ||
1326 | movl 16(%esp), %ebp | ||
1327 | .byte 209 | ||
1328 | .byte 203 /* rorl $1 %ebx */ | ||
1329 | xorl %ebp, %edi | ||
1330 | .byte 209 | ||
1331 | .byte 199 /* roll $1 %edi */ | ||
1332 | movl %eax, %ebp | ||
1333 | movl %edi, 28(%esp) | ||
1334 | orl %ebx, %ebp | ||
1335 | leal 2400959708(%edi,%edx,1),%edi | ||
1336 | movl %eax, %edx | ||
1337 | andl %ecx, %ebp | ||
1338 | andl %ebx, %edx | ||
1339 | orl %edx, %ebp | ||
1340 | movl %esi, %edx | ||
1341 | roll $5, %edx | ||
1342 | .byte 209 | ||
1343 | .byte 200 /* rorl $1 %eax */ | ||
1344 | addl %edx, %ebp | ||
1345 | .byte 209 | ||
1346 | .byte 200 /* rorl $1 %eax */ | ||
1347 | addl %ebp, %edi | ||
1348 | /* 40_59 55 */ | ||
1349 | /* 40_59 56 */ | ||
1350 | movl 32(%esp), %edx | ||
1351 | movl 40(%esp), %ebp | ||
1352 | xorl %ebp, %edx | ||
1353 | movl (%esp), %ebp | ||
1354 | xorl %ebp, %edx | ||
1355 | movl 20(%esp), %ebp | ||
1356 | xorl %ebp, %edx | ||
1357 | movl %esi, %ebp | ||
1358 | .byte 209 | ||
1359 | .byte 194 /* roll $1 %edx */ | ||
1360 | orl %eax, %ebp | ||
1361 | movl %edx, 32(%esp) | ||
1362 | andl %ebx, %ebp | ||
1363 | leal 2400959708(%edx,%ecx,1),%edx | ||
1364 | movl %esi, %ecx | ||
1365 | .byte 209 | ||
1366 | .byte 206 /* rorl $1 %esi */ | ||
1367 | andl %eax, %ecx | ||
1368 | orl %ecx, %ebp | ||
1369 | movl %edi, %ecx | ||
1370 | roll $5, %ecx | ||
1371 | addl %ecx, %ebp | ||
1372 | movl 36(%esp), %ecx | ||
1373 | addl %ebp, %edx | ||
1374 | movl 44(%esp), %ebp | ||
1375 | xorl %ebp, %ecx | ||
1376 | movl 4(%esp), %ebp | ||
1377 | xorl %ebp, %ecx | ||
1378 | movl 24(%esp), %ebp | ||
1379 | .byte 209 | ||
1380 | .byte 206 /* rorl $1 %esi */ | ||
1381 | xorl %ebp, %ecx | ||
1382 | .byte 209 | ||
1383 | .byte 193 /* roll $1 %ecx */ | ||
1384 | movl %edi, %ebp | ||
1385 | movl %ecx, 36(%esp) | ||
1386 | orl %esi, %ebp | ||
1387 | leal 2400959708(%ecx,%ebx,1),%ecx | ||
1388 | movl %edi, %ebx | ||
1389 | andl %eax, %ebp | ||
1390 | andl %esi, %ebx | ||
1391 | orl %ebx, %ebp | ||
1392 | movl %edx, %ebx | ||
1393 | roll $5, %ebx | ||
1394 | .byte 209 | ||
1395 | .byte 207 /* rorl $1 %edi */ | ||
1396 | addl %ebx, %ebp | ||
1397 | .byte 209 | ||
1398 | .byte 207 /* rorl $1 %edi */ | ||
1399 | addl %ebp, %ecx | ||
1400 | /* 40_59 57 */ | ||
1401 | /* 40_59 58 */ | ||
1402 | movl 40(%esp), %ebx | ||
1403 | movl 48(%esp), %ebp | ||
1404 | xorl %ebp, %ebx | ||
1405 | movl 8(%esp), %ebp | ||
1406 | xorl %ebp, %ebx | ||
1407 | movl 28(%esp), %ebp | ||
1408 | xorl %ebp, %ebx | ||
1409 | movl %edx, %ebp | ||
1410 | .byte 209 | ||
1411 | .byte 195 /* roll $1 %ebx */ | ||
1412 | orl %edi, %ebp | ||
1413 | movl %ebx, 40(%esp) | ||
1414 | andl %esi, %ebp | ||
1415 | leal 2400959708(%ebx,%eax,1),%ebx | ||
1416 | movl %edx, %eax | ||
1417 | .byte 209 | ||
1418 | .byte 202 /* rorl $1 %edx */ | ||
1419 | andl %edi, %eax | ||
1420 | orl %eax, %ebp | ||
1421 | movl %ecx, %eax | ||
1422 | roll $5, %eax | ||
1423 | addl %eax, %ebp | ||
1424 | movl 44(%esp), %eax | ||
1425 | addl %ebp, %ebx | ||
1426 | movl 52(%esp), %ebp | ||
1427 | xorl %ebp, %eax | ||
1428 | movl 12(%esp), %ebp | ||
1429 | xorl %ebp, %eax | ||
1430 | movl 32(%esp), %ebp | ||
1431 | .byte 209 | ||
1432 | .byte 202 /* rorl $1 %edx */ | ||
1433 | xorl %ebp, %eax | ||
1434 | .byte 209 | ||
1435 | .byte 192 /* roll $1 %eax */ | ||
1436 | movl %ecx, %ebp | ||
1437 | movl %eax, 44(%esp) | ||
1438 | orl %edx, %ebp | ||
1439 | leal 2400959708(%eax,%esi,1),%eax | ||
1440 | movl %ecx, %esi | ||
1441 | andl %edi, %ebp | ||
1442 | andl %edx, %esi | ||
1443 | orl %esi, %ebp | ||
1444 | movl %ebx, %esi | ||
1445 | roll $5, %esi | ||
1446 | .byte 209 | ||
1447 | .byte 201 /* rorl $1 %ecx */ | ||
1448 | addl %esi, %ebp | ||
1449 | .byte 209 | ||
1450 | .byte 201 /* rorl $1 %ecx */ | ||
1451 | addl %ebp, %eax | ||
1452 | /* 40_59 59 */ | ||
1453 | /* 20_39 60 */ | ||
1454 | movl 48(%esp), %esi | ||
1455 | movl 56(%esp), %ebp | ||
1456 | xorl %ebp, %esi | ||
1457 | movl 16(%esp), %ebp | ||
1458 | xorl %ebp, %esi | ||
1459 | movl 36(%esp), %ebp | ||
1460 | xorl %ebp, %esi | ||
1461 | movl %ebx, %ebp | ||
1462 | .byte 209 | ||
1463 | .byte 198 /* roll $1 %esi */ | ||
1464 | xorl %ecx, %ebp | ||
1465 | movl %esi, 48(%esp) | ||
1466 | xorl %edx, %ebp | ||
1467 | leal 3395469782(%esi,%edi,1),%esi | ||
1468 | movl %eax, %edi | ||
1469 | roll $5, %edi | ||
1470 | .byte 209 | ||
1471 | .byte 203 /* rorl $1 %ebx */ | ||
1472 | addl %ebp, %edi | ||
1473 | .byte 209 | ||
1474 | .byte 203 /* rorl $1 %ebx */ | ||
1475 | addl %edi, %esi | ||
1476 | /* 20_39 61 */ | ||
1477 | movl 52(%esp), %edi | ||
1478 | movl 60(%esp), %ebp | ||
1479 | xorl %ebp, %edi | ||
1480 | movl 20(%esp), %ebp | ||
1481 | xorl %ebp, %edi | ||
1482 | movl 40(%esp), %ebp | ||
1483 | xorl %ebp, %edi | ||
1484 | movl %eax, %ebp | ||
1485 | .byte 209 | ||
1486 | .byte 199 /* roll $1 %edi */ | ||
1487 | xorl %ebx, %ebp | ||
1488 | movl %edi, 52(%esp) | ||
1489 | xorl %ecx, %ebp | ||
1490 | leal 3395469782(%edi,%edx,1),%edi | ||
1491 | movl %esi, %edx | ||
1492 | roll $5, %edx | ||
1493 | .byte 209 | ||
1494 | .byte 200 /* rorl $1 %eax */ | ||
1495 | addl %ebp, %edx | ||
1496 | .byte 209 | ||
1497 | .byte 200 /* rorl $1 %eax */ | ||
1498 | addl %edx, %edi | ||
1499 | /* 20_39 62 */ | ||
1500 | movl 56(%esp), %edx | ||
1501 | movl (%esp), %ebp | ||
1502 | xorl %ebp, %edx | ||
1503 | movl 24(%esp), %ebp | ||
1504 | xorl %ebp, %edx | ||
1505 | movl 44(%esp), %ebp | ||
1506 | xorl %ebp, %edx | ||
1507 | movl %esi, %ebp | ||
1508 | .byte 209 | ||
1509 | .byte 194 /* roll $1 %edx */ | ||
1510 | xorl %eax, %ebp | ||
1511 | movl %edx, 56(%esp) | ||
1512 | xorl %ebx, %ebp | ||
1513 | leal 3395469782(%edx,%ecx,1),%edx | ||
1514 | movl %edi, %ecx | ||
1515 | roll $5, %ecx | ||
1516 | .byte 209 | ||
1517 | .byte 206 /* rorl $1 %esi */ | ||
1518 | addl %ebp, %ecx | ||
1519 | .byte 209 | ||
1520 | .byte 206 /* rorl $1 %esi */ | ||
1521 | addl %ecx, %edx | ||
1522 | /* 20_39 63 */ | ||
1523 | movl 60(%esp), %ecx | ||
1524 | movl 4(%esp), %ebp | ||
1525 | xorl %ebp, %ecx | ||
1526 | movl 28(%esp), %ebp | ||
1527 | xorl %ebp, %ecx | ||
1528 | movl 48(%esp), %ebp | ||
1529 | xorl %ebp, %ecx | ||
1530 | movl %edi, %ebp | ||
1531 | .byte 209 | ||
1532 | .byte 193 /* roll $1 %ecx */ | ||
1533 | xorl %esi, %ebp | ||
1534 | movl %ecx, 60(%esp) | ||
1535 | xorl %eax, %ebp | ||
1536 | leal 3395469782(%ecx,%ebx,1),%ecx | ||
1537 | movl %edx, %ebx | ||
1538 | roll $5, %ebx | ||
1539 | .byte 209 | ||
1540 | .byte 207 /* rorl $1 %edi */ | ||
1541 | addl %ebp, %ebx | ||
1542 | .byte 209 | ||
1543 | .byte 207 /* rorl $1 %edi */ | ||
1544 | addl %ebx, %ecx | ||
1545 | /* 20_39 64 */ | ||
1546 | movl (%esp), %ebx | ||
1547 | movl 8(%esp), %ebp | ||
1548 | xorl %ebp, %ebx | ||
1549 | movl 32(%esp), %ebp | ||
1550 | xorl %ebp, %ebx | ||
1551 | movl 52(%esp), %ebp | ||
1552 | xorl %ebp, %ebx | ||
1553 | movl %edx, %ebp | ||
1554 | .byte 209 | ||
1555 | .byte 195 /* roll $1 %ebx */ | ||
1556 | xorl %edi, %ebp | ||
1557 | movl %ebx, (%esp) | ||
1558 | xorl %esi, %ebp | ||
1559 | leal 3395469782(%ebx,%eax,1),%ebx | ||
1560 | movl %ecx, %eax | ||
1561 | roll $5, %eax | ||
1562 | .byte 209 | ||
1563 | .byte 202 /* rorl $1 %edx */ | ||
1564 | addl %ebp, %eax | ||
1565 | .byte 209 | ||
1566 | .byte 202 /* rorl $1 %edx */ | ||
1567 | addl %eax, %ebx | ||
1568 | /* 20_39 65 */ | ||
1569 | movl 4(%esp), %eax | ||
1570 | movl 12(%esp), %ebp | ||
1571 | xorl %ebp, %eax | ||
1572 | movl 36(%esp), %ebp | ||
1573 | xorl %ebp, %eax | ||
1574 | movl 56(%esp), %ebp | ||
1575 | xorl %ebp, %eax | ||
1576 | movl %ecx, %ebp | ||
1577 | .byte 209 | ||
1578 | .byte 192 /* roll $1 %eax */ | ||
1579 | xorl %edx, %ebp | ||
1580 | movl %eax, 4(%esp) | ||
1581 | xorl %edi, %ebp | ||
1582 | leal 3395469782(%eax,%esi,1),%eax | ||
1583 | movl %ebx, %esi | ||
1584 | roll $5, %esi | ||
1585 | .byte 209 | ||
1586 | .byte 201 /* rorl $1 %ecx */ | ||
1587 | addl %ebp, %esi | ||
1588 | .byte 209 | ||
1589 | .byte 201 /* rorl $1 %ecx */ | ||
1590 | addl %esi, %eax | ||
1591 | /* 20_39 66 */ | ||
1592 | movl 8(%esp), %esi | ||
1593 | movl 16(%esp), %ebp | ||
1594 | xorl %ebp, %esi | ||
1595 | movl 40(%esp), %ebp | ||
1596 | xorl %ebp, %esi | ||
1597 | movl 60(%esp), %ebp | ||
1598 | xorl %ebp, %esi | ||
1599 | movl %ebx, %ebp | ||
1600 | .byte 209 | ||
1601 | .byte 198 /* roll $1 %esi */ | ||
1602 | xorl %ecx, %ebp | ||
1603 | movl %esi, 8(%esp) | ||
1604 | xorl %edx, %ebp | ||
1605 | leal 3395469782(%esi,%edi,1),%esi | ||
1606 | movl %eax, %edi | ||
1607 | roll $5, %edi | ||
1608 | .byte 209 | ||
1609 | .byte 203 /* rorl $1 %ebx */ | ||
1610 | addl %ebp, %edi | ||
1611 | .byte 209 | ||
1612 | .byte 203 /* rorl $1 %ebx */ | ||
1613 | addl %edi, %esi | ||
1614 | /* 20_39 67 */ | ||
1615 | movl 12(%esp), %edi | ||
1616 | movl 20(%esp), %ebp | ||
1617 | xorl %ebp, %edi | ||
1618 | movl 44(%esp), %ebp | ||
1619 | xorl %ebp, %edi | ||
1620 | movl (%esp), %ebp | ||
1621 | xorl %ebp, %edi | ||
1622 | movl %eax, %ebp | ||
1623 | .byte 209 | ||
1624 | .byte 199 /* roll $1 %edi */ | ||
1625 | xorl %ebx, %ebp | ||
1626 | movl %edi, 12(%esp) | ||
1627 | xorl %ecx, %ebp | ||
1628 | leal 3395469782(%edi,%edx,1),%edi | ||
1629 | movl %esi, %edx | ||
1630 | roll $5, %edx | ||
1631 | .byte 209 | ||
1632 | .byte 200 /* rorl $1 %eax */ | ||
1633 | addl %ebp, %edx | ||
1634 | .byte 209 | ||
1635 | .byte 200 /* rorl $1 %eax */ | ||
1636 | addl %edx, %edi | ||
1637 | /* 20_39 68 */ | ||
1638 | movl 16(%esp), %edx | ||
1639 | movl 24(%esp), %ebp | ||
1640 | xorl %ebp, %edx | ||
1641 | movl 48(%esp), %ebp | ||
1642 | xorl %ebp, %edx | ||
1643 | movl 4(%esp), %ebp | ||
1644 | xorl %ebp, %edx | ||
1645 | movl %esi, %ebp | ||
1646 | .byte 209 | ||
1647 | .byte 194 /* roll $1 %edx */ | ||
1648 | xorl %eax, %ebp | ||
1649 | movl %edx, 16(%esp) | ||
1650 | xorl %ebx, %ebp | ||
1651 | leal 3395469782(%edx,%ecx,1),%edx | ||
1652 | movl %edi, %ecx | ||
1653 | roll $5, %ecx | ||
1654 | .byte 209 | ||
1655 | .byte 206 /* rorl $1 %esi */ | ||
1656 | addl %ebp, %ecx | ||
1657 | .byte 209 | ||
1658 | .byte 206 /* rorl $1 %esi */ | ||
1659 | addl %ecx, %edx | ||
1660 | /* 20_39 69 */ | ||
1661 | movl 20(%esp), %ecx | ||
1662 | movl 28(%esp), %ebp | ||
1663 | xorl %ebp, %ecx | ||
1664 | movl 52(%esp), %ebp | ||
1665 | xorl %ebp, %ecx | ||
1666 | movl 8(%esp), %ebp | ||
1667 | xorl %ebp, %ecx | ||
1668 | movl %edi, %ebp | ||
1669 | .byte 209 | ||
1670 | .byte 193 /* roll $1 %ecx */ | ||
1671 | xorl %esi, %ebp | ||
1672 | movl %ecx, 20(%esp) | ||
1673 | xorl %eax, %ebp | ||
1674 | leal 3395469782(%ecx,%ebx,1),%ecx | ||
1675 | movl %edx, %ebx | ||
1676 | roll $5, %ebx | ||
1677 | .byte 209 | ||
1678 | .byte 207 /* rorl $1 %edi */ | ||
1679 | addl %ebp, %ebx | ||
1680 | .byte 209 | ||
1681 | .byte 207 /* rorl $1 %edi */ | ||
1682 | addl %ebx, %ecx | ||
1683 | /* 20_39 70 */ | ||
1684 | movl 24(%esp), %ebx | ||
1685 | movl 32(%esp), %ebp | ||
1686 | xorl %ebp, %ebx | ||
1687 | movl 56(%esp), %ebp | ||
1688 | xorl %ebp, %ebx | ||
1689 | movl 12(%esp), %ebp | ||
1690 | xorl %ebp, %ebx | ||
1691 | movl %edx, %ebp | ||
1692 | .byte 209 | ||
1693 | .byte 195 /* roll $1 %ebx */ | ||
1694 | xorl %edi, %ebp | ||
1695 | movl %ebx, 24(%esp) | ||
1696 | xorl %esi, %ebp | ||
1697 | leal 3395469782(%ebx,%eax,1),%ebx | ||
1698 | movl %ecx, %eax | ||
1699 | roll $5, %eax | ||
1700 | .byte 209 | ||
1701 | .byte 202 /* rorl $1 %edx */ | ||
1702 | addl %ebp, %eax | ||
1703 | .byte 209 | ||
1704 | .byte 202 /* rorl $1 %edx */ | ||
1705 | addl %eax, %ebx | ||
1706 | /* 20_39 71 */ | ||
1707 | movl 28(%esp), %eax | ||
1708 | movl 36(%esp), %ebp | ||
1709 | xorl %ebp, %eax | ||
1710 | movl 60(%esp), %ebp | ||
1711 | xorl %ebp, %eax | ||
1712 | movl 16(%esp), %ebp | ||
1713 | xorl %ebp, %eax | ||
1714 | movl %ecx, %ebp | ||
1715 | .byte 209 | ||
1716 | .byte 192 /* roll $1 %eax */ | ||
1717 | xorl %edx, %ebp | ||
1718 | movl %eax, 28(%esp) | ||
1719 | xorl %edi, %ebp | ||
1720 | leal 3395469782(%eax,%esi,1),%eax | ||
1721 | movl %ebx, %esi | ||
1722 | roll $5, %esi | ||
1723 | .byte 209 | ||
1724 | .byte 201 /* rorl $1 %ecx */ | ||
1725 | addl %ebp, %esi | ||
1726 | .byte 209 | ||
1727 | .byte 201 /* rorl $1 %ecx */ | ||
1728 | addl %esi, %eax | ||
1729 | /* 20_39 72 */ | ||
1730 | movl 32(%esp), %esi | ||
1731 | movl 40(%esp), %ebp | ||
1732 | xorl %ebp, %esi | ||
1733 | movl (%esp), %ebp | ||
1734 | xorl %ebp, %esi | ||
1735 | movl 20(%esp), %ebp | ||
1736 | xorl %ebp, %esi | ||
1737 | movl %ebx, %ebp | ||
1738 | .byte 209 | ||
1739 | .byte 198 /* roll $1 %esi */ | ||
1740 | xorl %ecx, %ebp | ||
1741 | movl %esi, 32(%esp) | ||
1742 | xorl %edx, %ebp | ||
1743 | leal 3395469782(%esi,%edi,1),%esi | ||
1744 | movl %eax, %edi | ||
1745 | roll $5, %edi | ||
1746 | .byte 209 | ||
1747 | .byte 203 /* rorl $1 %ebx */ | ||
1748 | addl %ebp, %edi | ||
1749 | .byte 209 | ||
1750 | .byte 203 /* rorl $1 %ebx */ | ||
1751 | addl %edi, %esi | ||
1752 | /* 20_39 73 */ | ||
1753 | movl 36(%esp), %edi | ||
1754 | movl 44(%esp), %ebp | ||
1755 | xorl %ebp, %edi | ||
1756 | movl 4(%esp), %ebp | ||
1757 | xorl %ebp, %edi | ||
1758 | movl 24(%esp), %ebp | ||
1759 | xorl %ebp, %edi | ||
1760 | movl %eax, %ebp | ||
1761 | .byte 209 | ||
1762 | .byte 199 /* roll $1 %edi */ | ||
1763 | xorl %ebx, %ebp | ||
1764 | movl %edi, 36(%esp) | ||
1765 | xorl %ecx, %ebp | ||
1766 | leal 3395469782(%edi,%edx,1),%edi | ||
1767 | movl %esi, %edx | ||
1768 | roll $5, %edx | ||
1769 | .byte 209 | ||
1770 | .byte 200 /* rorl $1 %eax */ | ||
1771 | addl %ebp, %edx | ||
1772 | .byte 209 | ||
1773 | .byte 200 /* rorl $1 %eax */ | ||
1774 | addl %edx, %edi | ||
1775 | /* 20_39 74 */ | ||
1776 | movl 40(%esp), %edx | ||
1777 | movl 48(%esp), %ebp | ||
1778 | xorl %ebp, %edx | ||
1779 | movl 8(%esp), %ebp | ||
1780 | xorl %ebp, %edx | ||
1781 | movl 28(%esp), %ebp | ||
1782 | xorl %ebp, %edx | ||
1783 | movl %esi, %ebp | ||
1784 | .byte 209 | ||
1785 | .byte 194 /* roll $1 %edx */ | ||
1786 | xorl %eax, %ebp | ||
1787 | movl %edx, 40(%esp) | ||
1788 | xorl %ebx, %ebp | ||
1789 | leal 3395469782(%edx,%ecx,1),%edx | ||
1790 | movl %edi, %ecx | ||
1791 | roll $5, %ecx | ||
1792 | .byte 209 | ||
1793 | .byte 206 /* rorl $1 %esi */ | ||
1794 | addl %ebp, %ecx | ||
1795 | .byte 209 | ||
1796 | .byte 206 /* rorl $1 %esi */ | ||
1797 | addl %ecx, %edx | ||
1798 | /* 20_39 75 */ | ||
1799 | movl 44(%esp), %ecx | ||
1800 | movl 52(%esp), %ebp | ||
1801 | xorl %ebp, %ecx | ||
1802 | movl 12(%esp), %ebp | ||
1803 | xorl %ebp, %ecx | ||
1804 | movl 32(%esp), %ebp | ||
1805 | xorl %ebp, %ecx | ||
1806 | movl %edi, %ebp | ||
1807 | .byte 209 | ||
1808 | .byte 193 /* roll $1 %ecx */ | ||
1809 | xorl %esi, %ebp | ||
1810 | movl %ecx, 44(%esp) | ||
1811 | xorl %eax, %ebp | ||
1812 | leal 3395469782(%ecx,%ebx,1),%ecx | ||
1813 | movl %edx, %ebx | ||
1814 | roll $5, %ebx | ||
1815 | .byte 209 | ||
1816 | .byte 207 /* rorl $1 %edi */ | ||
1817 | addl %ebp, %ebx | ||
1818 | .byte 209 | ||
1819 | .byte 207 /* rorl $1 %edi */ | ||
1820 | addl %ebx, %ecx | ||
1821 | /* 20_39 76 */ | ||
1822 | movl 48(%esp), %ebx | ||
1823 | movl 56(%esp), %ebp | ||
1824 | xorl %ebp, %ebx | ||
1825 | movl 16(%esp), %ebp | ||
1826 | xorl %ebp, %ebx | ||
1827 | movl 36(%esp), %ebp | ||
1828 | xorl %ebp, %ebx | ||
1829 | movl %edx, %ebp | ||
1830 | .byte 209 | ||
1831 | .byte 195 /* roll $1 %ebx */ | ||
1832 | xorl %edi, %ebp | ||
1833 | movl %ebx, 48(%esp) | ||
1834 | xorl %esi, %ebp | ||
1835 | leal 3395469782(%ebx,%eax,1),%ebx | ||
1836 | movl %ecx, %eax | ||
1837 | roll $5, %eax | ||
1838 | .byte 209 | ||
1839 | .byte 202 /* rorl $1 %edx */ | ||
1840 | addl %ebp, %eax | ||
1841 | .byte 209 | ||
1842 | .byte 202 /* rorl $1 %edx */ | ||
1843 | addl %eax, %ebx | ||
1844 | /* 20_39 77 */ | ||
1845 | movl 52(%esp), %eax | ||
1846 | movl 60(%esp), %ebp | ||
1847 | xorl %ebp, %eax | ||
1848 | movl 20(%esp), %ebp | ||
1849 | xorl %ebp, %eax | ||
1850 | movl 40(%esp), %ebp | ||
1851 | xorl %ebp, %eax | ||
1852 | movl %ecx, %ebp | ||
1853 | .byte 209 | ||
1854 | .byte 192 /* roll $1 %eax */ | ||
1855 | xorl %edx, %ebp | ||
1856 | movl %eax, 52(%esp) | ||
1857 | xorl %edi, %ebp | ||
1858 | leal 3395469782(%eax,%esi,1),%eax | ||
1859 | movl %ebx, %esi | ||
1860 | roll $5, %esi | ||
1861 | .byte 209 | ||
1862 | .byte 201 /* rorl $1 %ecx */ | ||
1863 | addl %ebp, %esi | ||
1864 | .byte 209 | ||
1865 | .byte 201 /* rorl $1 %ecx */ | ||
1866 | addl %esi, %eax | ||
1867 | /* 20_39 78 */ | ||
1868 | movl 56(%esp), %esi | ||
1869 | movl (%esp), %ebp | ||
1870 | xorl %ebp, %esi | ||
1871 | movl 24(%esp), %ebp | ||
1872 | xorl %ebp, %esi | ||
1873 | movl 44(%esp), %ebp | ||
1874 | xorl %ebp, %esi | ||
1875 | movl %ebx, %ebp | ||
1876 | .byte 209 | ||
1877 | .byte 198 /* roll $1 %esi */ | ||
1878 | xorl %ecx, %ebp | ||
1879 | movl %esi, 56(%esp) | ||
1880 | xorl %edx, %ebp | ||
1881 | leal 3395469782(%esi,%edi,1),%esi | ||
1882 | movl %eax, %edi | ||
1883 | roll $5, %edi | ||
1884 | .byte 209 | ||
1885 | .byte 203 /* rorl $1 %ebx */ | ||
1886 | addl %ebp, %edi | ||
1887 | .byte 209 | ||
1888 | .byte 203 /* rorl $1 %ebx */ | ||
1889 | addl %edi, %esi | ||
1890 | /* 20_39 79 */ | ||
1891 | movl 60(%esp), %edi | ||
1892 | movl 4(%esp), %ebp | ||
1893 | xorl %ebp, %edi | ||
1894 | movl 28(%esp), %ebp | ||
1895 | xorl %ebp, %edi | ||
1896 | movl 48(%esp), %ebp | ||
1897 | xorl %ebp, %edi | ||
1898 | movl %eax, %ebp | ||
1899 | .byte 209 | ||
1900 | .byte 199 /* roll $1 %edi */ | ||
1901 | xorl %ebx, %ebp | ||
1902 | movl %edi, 60(%esp) | ||
1903 | xorl %ecx, %ebp | ||
1904 | leal 3395469782(%edi,%edx,1),%edi | ||
1905 | movl %esi, %edx | ||
1906 | roll $5, %edx | ||
1907 | addl %ebp, %edx | ||
1908 | movl 92(%esp), %ebp | ||
1909 | .byte 209 | ||
1910 | .byte 200 /* rorl $1 %eax */ | ||
1911 | addl %edx, %edi | ||
1912 | .byte 209 | ||
1913 | .byte 200 /* rorl $1 %eax */ | ||
1914 | /* End processing */ | ||
1915 | |||
1916 | movl 12(%ebp), %edx | ||
1917 | addl %ebx, %edx | ||
1918 | movl 4(%ebp), %ebx | ||
1919 | addl %esi, %ebx | ||
1920 | movl %eax, %esi | ||
1921 | movl (%ebp), %eax | ||
1922 | movl %edx, 12(%ebp) | ||
1923 | addl %edi, %eax | ||
1924 | movl 16(%ebp), %edi | ||
1925 | addl %ecx, %edi | ||
1926 | movl 8(%ebp), %ecx | ||
1927 | addl %esi, %ecx | ||
1928 | movl %eax, (%ebp) | ||
1929 | movl 64(%esp), %esi | ||
1930 | movl %ecx, 8(%ebp) | ||
1931 | addl $64, %esi | ||
1932 | movl 68(%esp), %eax | ||
1933 | movl %edi, 16(%ebp) | ||
1934 | cmpl %esi, %eax | ||
1935 | movl %ebx, 4(%ebp) | ||
1936 | jl .L001end | ||
1937 | movl (%esi), %eax | ||
1938 | jmp .L000start | ||
1939 | .L001end: | ||
1940 | addl $72, %esp | ||
1941 | popl %edi | ||
1942 | popl %ebx | ||
1943 | popl %ebp | ||
1944 | popl %esi | ||
1945 | ret | ||
1946 | .sha1_block_x86_end: | ||
1947 | SIZE(sha1_block_x86,.sha1_block_x86_end-sha1_block_x86) | ||
1948 | .ident "desasm.pl" | ||
diff --git a/src/lib/libcrypto/sha/sha_sgst.c b/src/lib/libcrypto/sha/sha_sgst.c new file mode 100644 index 0000000000..8a16801328 --- /dev/null +++ b/src/lib/libcrypto/sha/sha_sgst.c | |||
@@ -0,0 +1,246 @@ | |||
1 | /* crypto/sha/sha_sgst.c */ | ||
2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | ||
3 | * All rights reserved. | ||
4 | * | ||
5 | * This package is an SSL implementation written | ||
6 | * by Eric Young (eay@cryptsoft.com). | ||
7 | * The implementation was written so as to conform with Netscapes SSL. | ||
8 | * | ||
9 | * This library is free for commercial and non-commercial use as long as | ||
10 | * the following conditions are aheared to. The following conditions | ||
11 | * apply to all code found in this distribution, be it the RC4, RSA, | ||
12 | * lhash, DES, etc., code; not just the SSL code. The SSL documentation | ||
13 | * included with this distribution is covered by the same copyright terms | ||
14 | * except that the holder is Tim Hudson (tjh@cryptsoft.com). | ||
15 | * | ||
16 | * Copyright remains Eric Young's, and as such any Copyright notices in | ||
17 | * the code are not to be removed. | ||
18 | * If this package is used in a product, Eric Young should be given attribution | ||
19 | * as the author of the parts of the library used. | ||
20 | * This can be in the form of a textual message at program startup or | ||
21 | * in documentation (online or textual) provided with the package. | ||
22 | * | ||
23 | * Redistribution and use in source and binary forms, with or without | ||
24 | * modification, are permitted provided that the following conditions | ||
25 | * are met: | ||
26 | * 1. Redistributions of source code must retain the copyright | ||
27 | * notice, this list of conditions and the following disclaimer. | ||
28 | * 2. Redistributions in binary form must reproduce the above copyright | ||
29 | * notice, this list of conditions and the following disclaimer in the | ||
30 | * documentation and/or other materials provided with the distribution. | ||
31 | * 3. All advertising materials mentioning features or use of this software | ||
32 | * must display the following acknowledgement: | ||
33 | * "This product includes cryptographic software written by | ||
34 | * Eric Young (eay@cryptsoft.com)" | ||
35 | * The word 'cryptographic' can be left out if the rouines from the library | ||
36 | * being used are not cryptographic related :-). | ||
37 | * 4. If you include any Windows specific code (or a derivative thereof) from | ||
38 | * the apps directory (application code) you must include an acknowledgement: | ||
39 | * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" | ||
40 | * | ||
41 | * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND | ||
42 | * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | ||
43 | * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | ||
44 | * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE | ||
45 | * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||
46 | * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS | ||
47 | * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | ||
48 | * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | ||
49 | * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | ||
50 | * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | ||
51 | * SUCH DAMAGE. | ||
52 | * | ||
53 | * The licence and distribution terms for any publically available version or | ||
54 | * derivative of this code cannot be changed. i.e. this code cannot simply be | ||
55 | * copied and put under another distribution licence | ||
56 | * [including the GNU Public Licence.] | ||
57 | */ | ||
58 | |||
59 | #include <stdlib.h> | ||
60 | #include <string.h> | ||
61 | |||
62 | #ifdef undef | ||
63 | /* one or the other needs to be defined */ | ||
64 | #ifndef SHA_1 /* FIPE 180-1 */ | ||
65 | #define SHA_0 /* FIPS 180 */ | ||
66 | #endif | ||
67 | #endif | ||
68 | |||
69 | #define ULONG unsigned long | ||
70 | #define UCHAR unsigned char | ||
71 | #define UINT unsigned int | ||
72 | |||
73 | #ifdef NOCONST | ||
74 | #define const | ||
75 | #endif | ||
76 | |||
77 | #undef c2nl | ||
78 | #define c2nl(c,l) (l =(((unsigned long)(*((c)++)))<<24), \ | ||
79 | l|=(((unsigned long)(*((c)++)))<<16), \ | ||
80 | l|=(((unsigned long)(*((c)++)))<< 8), \ | ||
81 | l|=(((unsigned long)(*((c)++))) )) | ||
82 | |||
83 | #undef p_c2nl | ||
84 | #define p_c2nl(c,l,n) { \ | ||
85 | switch (n) { \ | ||
86 | case 0: l =((unsigned long)(*((c)++)))<<24; \ | ||
87 | case 1: l|=((unsigned long)(*((c)++)))<<16; \ | ||
88 | case 2: l|=((unsigned long)(*((c)++)))<< 8; \ | ||
89 | case 3: l|=((unsigned long)(*((c)++))); \ | ||
90 | } \ | ||
91 | } | ||
92 | |||
93 | #undef c2nl_p | ||
94 | /* NOTE the pointer is not incremented at the end of this */ | ||
95 | #define c2nl_p(c,l,n) { \ | ||
96 | l=0; \ | ||
97 | (c)+=n; \ | ||
98 | switch (n) { \ | ||
99 | case 3: l =((unsigned long)(*(--(c))))<< 8; \ | ||
100 | case 2: l|=((unsigned long)(*(--(c))))<<16; \ | ||
101 | case 1: l|=((unsigned long)(*(--(c))))<<24; \ | ||
102 | } \ | ||
103 | } | ||
104 | |||
105 | #undef p_c2nl_p | ||
106 | #define p_c2nl_p(c,l,sc,len) { \ | ||
107 | switch (sc) \ | ||
108 | { \ | ||
109 | case 0: l =((unsigned long)(*((c)++)))<<24; \ | ||
110 | if (--len == 0) break; \ | ||
111 | case 1: l|=((unsigned long)(*((c)++)))<<16; \ | ||
112 | if (--len == 0) break; \ | ||
113 | case 2: l|=((unsigned long)(*((c)++)))<< 8; \ | ||
114 | } \ | ||
115 | } | ||
116 | |||
117 | #undef nl2c | ||
118 | #define nl2c(l,c) (*((c)++)=(unsigned char)(((l)>>24)&0xff), \ | ||
119 | *((c)++)=(unsigned char)(((l)>>16)&0xff), \ | ||
120 | *((c)++)=(unsigned char)(((l)>> 8)&0xff), \ | ||
121 | *((c)++)=(unsigned char)(((l) )&0xff)) | ||
122 | |||
123 | #undef c2l | ||
124 | #define c2l(c,l) (l =(((unsigned long)(*((c)++))) ), \ | ||
125 | l|=(((unsigned long)(*((c)++)))<< 8), \ | ||
126 | l|=(((unsigned long)(*((c)++)))<<16), \ | ||
127 | l|=(((unsigned long)(*((c)++)))<<24)) | ||
128 | |||
129 | #undef p_c2l | ||
130 | #define p_c2l(c,l,n) { \ | ||
131 | switch (n) { \ | ||
132 | case 0: l =((unsigned long)(*((c)++))); \ | ||
133 | case 1: l|=((unsigned long)(*((c)++)))<< 8; \ | ||
134 | case 2: l|=((unsigned long)(*((c)++)))<<16; \ | ||
135 | case 3: l|=((unsigned long)(*((c)++)))<<24; \ | ||
136 | } \ | ||
137 | } | ||
138 | |||
139 | #undef c2l_p | ||
140 | /* NOTE the pointer is not incremented at the end of this */ | ||
141 | #define c2l_p(c,l,n) { \ | ||
142 | l=0; \ | ||
143 | (c)+=n; \ | ||
144 | switch (n) { \ | ||
145 | case 3: l =((unsigned long)(*(--(c))))<<16; \ | ||
146 | case 2: l|=((unsigned long)(*(--(c))))<< 8; \ | ||
147 | case 1: l|=((unsigned long)(*(--(c)))); \ | ||
148 | } \ | ||
149 | } | ||
150 | |||
151 | #undef p_c2l_p | ||
152 | #define p_c2l_p(c,l,sc,len) { \ | ||
153 | switch (sc) \ | ||
154 | { \ | ||
155 | case 0: l =((unsigned long)(*((c)++))); \ | ||
156 | if (--len == 0) break; \ | ||
157 | case 1: l|=((unsigned long)(*((c)++)))<< 8; \ | ||
158 | if (--len == 0) break; \ | ||
159 | case 2: l|=((unsigned long)(*((c)++)))<<16; \ | ||
160 | } \ | ||
161 | } | ||
162 | |||
163 | #undef l2c | ||
164 | #define l2c(l,c) (*((c)++)=(unsigned char)(((l) )&0xff), \ | ||
165 | *((c)++)=(unsigned char)(((l)>> 8)&0xff), \ | ||
166 | *((c)++)=(unsigned char)(((l)>>16)&0xff), \ | ||
167 | *((c)++)=(unsigned char)(((l)>>24)&0xff)) | ||
168 | |||
169 | #undef ROTATE | ||
170 | #if defined(WIN32) | ||
171 | #define ROTATE(a,n) _lrotl(a,n) | ||
172 | #else | ||
173 | #define ROTATE(a,n) (((a)<<(n))|(((a)&0xffffffff)>>(32-(n)))) | ||
174 | #endif | ||
175 | |||
176 | /* A nice byte order reversal from Wei Dai <weidai@eskimo.com> */ | ||
177 | #if defined(WIN32) | ||
178 | /* 5 instructions with rotate instruction, else 9 */ | ||
179 | #define Endian_Reverse32(a) \ | ||
180 | { \ | ||
181 | unsigned long l=(a); \ | ||
182 | (a)=((ROTATE(l,8)&0x00FF00FF)|(ROTATE(l,24)&0xFF00FF00)); \ | ||
183 | } | ||
184 | #else | ||
185 | /* 6 instructions with rotate instruction, else 8 */ | ||
186 | #define Endian_Reverse32(a) \ | ||
187 | { \ | ||
188 | unsigned long l=(a); \ | ||
189 | l=(((l&0xFF00FF00)>>8L)|((l&0x00FF00FF)<<8L)); \ | ||
190 | (a)=ROTATE(l,16L); \ | ||
191 | } | ||
192 | #endif | ||
193 | |||
194 | /* As pointed out by Wei Dai <weidai@eskimo.com>, F() below can be | ||
195 | * simplified to the code in F_00_19. Wei attributes these optimisations | ||
196 | * to Peter Gutmann's SHS code, and he attributes it to Rich Schroeppel. | ||
197 | * #define F(x,y,z) (((x) & (y)) | ((~(x)) & (z))) | ||
198 | * I've just become aware of another tweak to be made, again from Wei Dai, | ||
199 | * in F_40_59, (x&a)|(y&a) -> (x|y)&a | ||
200 | */ | ||
201 | #define F_00_19(b,c,d) ((((c) ^ (d)) & (b)) ^ (d)) | ||
202 | #define F_20_39(b,c,d) ((b) ^ (c) ^ (d)) | ||
203 | #define F_40_59(b,c,d) (((b) & (c)) | (((b)|(c)) & (d))) | ||
204 | #define F_60_79(b,c,d) F_20_39(b,c,d) | ||
205 | |||
206 | #ifdef SHA_0 | ||
207 | #undef Xupdate | ||
208 | #define Xupdate(a,i,ia,ib,ic,id) X[(i)&0x0f]=(a)=\ | ||
209 | (ia[(i)&0x0f]^ib[((i)+2)&0x0f]^ic[((i)+8)&0x0f]^id[((i)+13)&0x0f]); | ||
210 | #endif | ||
211 | #ifdef SHA_1 | ||
212 | #undef Xupdate | ||
213 | #define Xupdate(a,i,ia,ib,ic,id) (a)=\ | ||
214 | (ia[(i)&0x0f]^ib[((i)+2)&0x0f]^ic[((i)+8)&0x0f]^id[((i)+13)&0x0f]);\ | ||
215 | X[(i)&0x0f]=(a)=ROTATE((a),1); | ||
216 | #endif | ||
217 | |||
218 | #define BODY_00_15(i,a,b,c,d,e,f,xa) \ | ||
219 | (f)=xa[i]+(e)+K_00_19+ROTATE((a),5)+F_00_19((b),(c),(d)); \ | ||
220 | (b)=ROTATE((b),30); | ||
221 | |||
222 | #define BODY_16_19(i,a,b,c,d,e,f,xa,xb,xc,xd) \ | ||
223 | Xupdate(f,i,xa,xb,xc,xd); \ | ||
224 | (f)+=(e)+K_00_19+ROTATE((a),5)+F_00_19((b),(c),(d)); \ | ||
225 | (b)=ROTATE((b),30); | ||
226 | |||
227 | #define BODY_20_31(i,a,b,c,d,e,f,xa,xb,xc,xd) \ | ||
228 | Xupdate(f,i,xa,xb,xc,xd); \ | ||
229 | (f)+=(e)+K_20_39+ROTATE((a),5)+F_20_39((b),(c),(d)); \ | ||
230 | (b)=ROTATE((b),30); | ||
231 | |||
232 | #define BODY_32_39(i,a,b,c,d,e,f,xa) \ | ||
233 | Xupdate(f,i,xa,xa,xa,xa); \ | ||
234 | (f)+=(e)+K_20_39+ROTATE((a),5)+F_20_39((b),(c),(d)); \ | ||
235 | (b)=ROTATE((b),30); | ||
236 | |||
237 | #define BODY_40_59(i,a,b,c,d,e,f,xa) \ | ||
238 | Xupdate(f,i,xa,xa,xa,xa); \ | ||
239 | (f)+=(e)+K_40_59+ROTATE((a),5)+F_40_59((b),(c),(d)); \ | ||
240 | (b)=ROTATE((b),30); | ||
241 | |||
242 | #define BODY_60_79(i,a,b,c,d,e,f,xa) \ | ||
243 | Xupdate(f,i,xa,xa,xa,xa); \ | ||
244 | (f)=X[(i)&0x0f]+(e)+K_60_79+ROTATE((a),5)+F_60_79((b),(c),(d)); \ | ||
245 | (b)=ROTATE((b),30); | ||
246 | |||