diff options
Diffstat (limited to 'deps/openssl/asm/x86-win32-masm')
-rw-r--r-- | deps/openssl/asm/x86-win32-masm/aes/aes-586.asm | 14 | ||||
-rw-r--r-- | deps/openssl/asm/x86-win32-masm/bf/bf-686.asm | 2 | ||||
-rw-r--r-- | deps/openssl/asm/x86-win32-masm/bn/x86-mont.asm | 2 | ||||
-rw-r--r-- | deps/openssl/asm/x86-win32-masm/bn/x86.asm | 2 | ||||
-rw-r--r-- | deps/openssl/asm/x86-win32-masm/camellia/cmll-x86.asm | 8 | ||||
-rw-r--r-- | deps/openssl/asm/x86-win32-masm/cast/cast-586.asm | 2 | ||||
-rw-r--r-- | deps/openssl/asm/x86-win32-masm/des/crypt586.asm | 2 | ||||
-rw-r--r-- | deps/openssl/asm/x86-win32-masm/des/des-586.asm | 2 | ||||
-rw-r--r-- | deps/openssl/asm/x86-win32-masm/md5/md5-586.asm | 2 | ||||
-rw-r--r-- | deps/openssl/asm/x86-win32-masm/rc4/rc4-586.asm | 225 | ||||
-rw-r--r-- | deps/openssl/asm/x86-win32-masm/rc5/rc5-586.asm | 2 | ||||
-rw-r--r-- | deps/openssl/asm/x86-win32-masm/ripemd/rmd-586.asm | 2 | ||||
-rw-r--r-- | deps/openssl/asm/x86-win32-masm/sha/sha1-586.asm | 1264 | ||||
-rw-r--r-- | deps/openssl/asm/x86-win32-masm/sha/sha256-586.asm | 67 | ||||
-rw-r--r-- | deps/openssl/asm/x86-win32-masm/sha/sha512-586.asm | 2 | ||||
-rw-r--r-- | deps/openssl/asm/x86-win32-masm/x86cpuid.asm | 132 |
16 files changed, 802 insertions, 928 deletions
diff --git a/deps/openssl/asm/x86-win32-masm/aes/aes-586.asm b/deps/openssl/asm/x86-win32-masm/aes/aes-586.asm index e4ac96e646..22dd21fbcd 100644 --- a/deps/openssl/asm/x86-win32-masm/aes/aes-586.asm +++ b/deps/openssl/asm/x86-win32-masm/aes/aes-586.asm @@ -2975,14 +2975,14 @@ $L045exit: ret __x86_AES_set_encrypt_key ENDP ALIGN 16 -_private_AES_set_encrypt_key PROC PUBLIC -$L_private_AES_set_encrypt_key_begin:: +_AES_set_encrypt_key PROC PUBLIC +$L_AES_set_encrypt_key_begin:: call __x86_AES_set_encrypt_key ret -_private_AES_set_encrypt_key ENDP +_AES_set_encrypt_key ENDP ALIGN 16 -_private_AES_set_decrypt_key PROC PUBLIC -$L_private_AES_set_decrypt_key_begin:: +_AES_set_decrypt_key PROC PUBLIC +$L_AES_set_decrypt_key_begin:: call __x86_AES_set_encrypt_key cmp eax,0 je $L054proceed @@ -3211,12 +3211,12 @@ $L056permute: pop ebx pop ebp ret -_private_AES_set_decrypt_key ENDP +_AES_set_decrypt_key ENDP DB 65,69,83,32,102,111,114,32,120,56,54,44,32,67,82,89 DB 80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114 DB 111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 .text$ ENDS .bss SEGMENT 'BSS' -COMM _OPENSSL_ia32cap_P:QWORD +COMM _OPENSSL_ia32cap_P:DWORD .bss ENDS END diff --git a/deps/openssl/asm/x86-win32-masm/bf/bf-686.asm b/deps/openssl/asm/x86-win32-masm/bf/bf-686.asm index 2883179674..a802e7292f 100644 --- a/deps/openssl/asm/x86-win32-masm/bf/bf-686.asm +++ b/deps/openssl/asm/x86-win32-masm/bf/bf-686.asm @@ -2,7 +2,7 @@ TITLE bf-686.asm IF @Version LT 800 ECHO MASM version 8.00 or later is strongly recommended. ENDIF -.686 +.586 .MODEL FLAT OPTION DOTNAME IF @Version LT 800 diff --git a/deps/openssl/asm/x86-win32-masm/bn/x86-mont.asm b/deps/openssl/asm/x86-win32-masm/bn/x86-mont.asm index 031be4e7ea..eaad4a073a 100644 --- a/deps/openssl/asm/x86-win32-masm/bn/x86-mont.asm +++ b/deps/openssl/asm/x86-win32-masm/bn/x86-mont.asm @@ -2,7 +2,7 @@ TITLE ../openssl/crypto/bn/asm/x86-mont.asm IF @Version LT 800 ECHO MASM version 8.00 or later is strongly recommended. ENDIF -.686 +.586 .MODEL FLAT OPTION DOTNAME IF @Version LT 800 diff --git a/deps/openssl/asm/x86-win32-masm/bn/x86.asm b/deps/openssl/asm/x86-win32-masm/bn/x86.asm index 2e7a0d4aaf..d7051fa4e5 100644 --- a/deps/openssl/asm/x86-win32-masm/bn/x86.asm +++ b/deps/openssl/asm/x86-win32-masm/bn/x86.asm @@ -2,7 +2,7 @@ TITLE ../openssl/crypto/bn/asm/x86.asm IF @Version LT 800 ECHO MASM version 8.00 or later is strongly recommended. ENDIF -.686 +.586 .MODEL FLAT OPTION DOTNAME IF @Version LT 800 diff --git a/deps/openssl/asm/x86-win32-masm/camellia/cmll-x86.asm b/deps/openssl/asm/x86-win32-masm/camellia/cmll-x86.asm index e32d28135b..acdf6a2f8b 100644 --- a/deps/openssl/asm/x86-win32-masm/camellia/cmll-x86.asm +++ b/deps/openssl/asm/x86-win32-masm/camellia/cmll-x86.asm @@ -2,7 +2,7 @@ TITLE cmll-586.asm IF @Version LT 800 ECHO MASM version 8.00 or later is strongly recommended. ENDIF -.686 +.586 .MODEL FLAT OPTION DOTNAME IF @Version LT 800 @@ -1532,8 +1532,8 @@ $L013done: ret _Camellia_Ekeygen ENDP ALIGN 16 -_private_Camellia_set_key PROC PUBLIC -$L_private_Camellia_set_key_begin:: +_Camellia_set_key PROC PUBLIC +$L_Camellia_set_key_begin:: push ebx mov ecx,DWORD PTR 8[esp] mov ebx,DWORD PTR 12[esp] @@ -1563,7 +1563,7 @@ ALIGN 4 $L014done: pop ebx ret -_private_Camellia_set_key ENDP +_Camellia_set_key ENDP ALIGN 64 $LCamellia_SIGMA:: DD 2694735487,1003262091,3061508184,1286239154,3337565999,3914302142,1426019237,4057165596,283453434,3731369245,2958461122,3018244605,0,0,0,0 diff --git a/deps/openssl/asm/x86-win32-masm/cast/cast-586.asm b/deps/openssl/asm/x86-win32-masm/cast/cast-586.asm index 6f85c34d28..1f2f0708a5 100644 --- a/deps/openssl/asm/x86-win32-masm/cast/cast-586.asm +++ b/deps/openssl/asm/x86-win32-masm/cast/cast-586.asm @@ -2,7 +2,7 @@ TITLE cast-586.asm IF @Version LT 800 ECHO MASM version 8.00 or later is strongly recommended. ENDIF -.686 +.586 .MODEL FLAT OPTION DOTNAME IF @Version LT 800 diff --git a/deps/openssl/asm/x86-win32-masm/des/crypt586.asm b/deps/openssl/asm/x86-win32-masm/des/crypt586.asm index 4c82c7a265..24e474dfc5 100644 --- a/deps/openssl/asm/x86-win32-masm/des/crypt586.asm +++ b/deps/openssl/asm/x86-win32-masm/des/crypt586.asm @@ -2,7 +2,7 @@ TITLE crypt586.asm IF @Version LT 800 ECHO MASM version 8.00 or later is strongly recommended. ENDIF -.686 +.586 .MODEL FLAT OPTION DOTNAME IF @Version LT 800 diff --git a/deps/openssl/asm/x86-win32-masm/des/des-586.asm b/deps/openssl/asm/x86-win32-masm/des/des-586.asm index 24f19a6603..3c630daff9 100644 --- a/deps/openssl/asm/x86-win32-masm/des/des-586.asm +++ b/deps/openssl/asm/x86-win32-masm/des/des-586.asm @@ -2,7 +2,7 @@ TITLE des-586.asm IF @Version LT 800 ECHO MASM version 8.00 or later is strongly recommended. ENDIF -.686 +.586 .MODEL FLAT OPTION DOTNAME IF @Version LT 800 diff --git a/deps/openssl/asm/x86-win32-masm/md5/md5-586.asm b/deps/openssl/asm/x86-win32-masm/md5/md5-586.asm index 8e263de0fd..c8edae762d 100644 --- a/deps/openssl/asm/x86-win32-masm/md5/md5-586.asm +++ b/deps/openssl/asm/x86-win32-masm/md5/md5-586.asm @@ -2,7 +2,7 @@ TITLE ../openssl/crypto/md5/asm/md5-586.asm IF @Version LT 800 ECHO MASM version 8.00 or later is strongly recommended. ENDIF -.686 +.586 .MODEL FLAT OPTION DOTNAME IF @Version LT 800 diff --git a/deps/openssl/asm/x86-win32-masm/rc4/rc4-586.asm b/deps/openssl/asm/x86-win32-masm/rc4/rc4-586.asm index d179090911..3eb66f7350 100644 --- a/deps/openssl/asm/x86-win32-masm/rc4/rc4-586.asm +++ b/deps/openssl/asm/x86-win32-masm/rc4/rc4-586.asm @@ -2,14 +2,7 @@ TITLE rc4-586.asm IF @Version LT 800 ECHO MASM version 8.00 or later is strongly recommended. ENDIF -.686 -.XMM -IF @Version LT 800 -XMMWORD STRUCT 16 -DQ 2 dup (?) -XMMWORD ENDS -ENDIF - +.586 .MODEL FLAT OPTION DOTNAME IF @Version LT 800 @@ -17,7 +10,6 @@ IF @Version LT 800 ELSE .text$ SEGMENT ALIGN(64) 'CODE' ENDIF -;EXTERN _OPENSSL_ia32cap_P:NEAR ALIGN 16 _RC4 PROC PUBLIC $L_RC4_begin:: @@ -45,146 +37,11 @@ $L_RC4_begin:: mov ecx,DWORD PTR [eax*4+edi] and edx,-4 jz $L002loop1 - test edx,-8 - mov DWORD PTR 32[esp],ebp - jz $L003go4loop4 - lea ebp,DWORD PTR _OPENSSL_ia32cap_P - bt DWORD PTR [ebp],26 - jnc $L003go4loop4 - mov ebp,DWORD PTR 32[esp] - and edx,-8 - lea edx,DWORD PTR [edx*1+esi-8] - mov DWORD PTR [edi-4],edx - add bl,cl - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - inc eax - add edx,ecx - movzx eax,al - movzx edx,dl - movq mm0,QWORD PTR [esi] - mov ecx,DWORD PTR [eax*4+edi] - movd mm2,DWORD PTR [edx*4+edi] - jmp $L004loop_mmx_enter -ALIGN 16 -$L005loop_mmx: - add bl,cl - psllq mm1,56 - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - inc eax - add edx,ecx - movzx eax,al - movzx edx,dl - pxor mm2,mm1 - movq mm0,QWORD PTR [esi] - movq QWORD PTR [esi*1+ebp-8],mm2 - mov ecx,DWORD PTR [eax*4+edi] - movd mm2,DWORD PTR [edx*4+edi] -$L004loop_mmx_enter: - add bl,cl - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - inc eax - add edx,ecx - movzx eax,al - movzx edx,dl - pxor mm2,mm0 - mov ecx,DWORD PTR [eax*4+edi] - movd mm1,DWORD PTR [edx*4+edi] - add bl,cl - psllq mm1,8 - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - inc eax - add edx,ecx - movzx eax,al - movzx edx,dl - pxor mm2,mm1 - mov ecx,DWORD PTR [eax*4+edi] - movd mm1,DWORD PTR [edx*4+edi] - add bl,cl - psllq mm1,16 - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - inc eax - add edx,ecx - movzx eax,al - movzx edx,dl - pxor mm2,mm1 - mov ecx,DWORD PTR [eax*4+edi] - movd mm1,DWORD PTR [edx*4+edi] - add bl,cl - psllq mm1,24 - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - inc eax - add edx,ecx - movzx eax,al - movzx edx,dl - pxor mm2,mm1 - mov ecx,DWORD PTR [eax*4+edi] - movd mm1,DWORD PTR [edx*4+edi] - add bl,cl - psllq mm1,32 - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - inc eax - add edx,ecx - movzx eax,al - movzx edx,dl - pxor mm2,mm1 - mov ecx,DWORD PTR [eax*4+edi] - movd mm1,DWORD PTR [edx*4+edi] - add bl,cl - psllq mm1,40 - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - inc eax - add edx,ecx - movzx eax,al - movzx edx,dl - pxor mm2,mm1 - mov ecx,DWORD PTR [eax*4+edi] - movd mm1,DWORD PTR [edx*4+edi] - add bl,cl - psllq mm1,48 - mov edx,DWORD PTR [ebx*4+edi] - mov DWORD PTR [ebx*4+edi],ecx - mov DWORD PTR [eax*4+edi],edx - inc eax - add edx,ecx - movzx eax,al - movzx edx,dl - pxor mm2,mm1 - mov ecx,DWORD PTR [eax*4+edi] - movd mm1,DWORD PTR [edx*4+edi] - mov edx,ebx - xor ebx,ebx - mov bl,dl - cmp esi,DWORD PTR [edi-4] - lea esi,DWORD PTR 8[esi] - jb $L005loop_mmx - psllq mm1,56 - pxor mm2,mm1 - movq QWORD PTR [esi*1+ebp-8],mm2 - emms - cmp esi,DWORD PTR 24[esp] - je $L006done - jmp $L002loop1 -ALIGN 16 -$L003go4loop4: lea edx,DWORD PTR [edx*1+esi-4] mov DWORD PTR 28[esp],edx -$L007loop4: + mov DWORD PTR 32[esp],ebp +ALIGN 16 +$L003loop4: add bl,cl mov edx,DWORD PTR [ebx*4+edi] mov DWORD PTR [ebx*4+edi],ecx @@ -230,9 +87,9 @@ $L007loop4: mov DWORD PTR [esi*1+ecx],ebp lea esi,DWORD PTR 4[esi] mov ecx,DWORD PTR [eax*4+edi] - jb $L007loop4 + jb $L003loop4 cmp esi,DWORD PTR 24[esp] - je $L006done + je $L004done mov ebp,DWORD PTR 32[esp] ALIGN 16 $L002loop1: @@ -250,11 +107,11 @@ $L002loop1: cmp esi,DWORD PTR 24[esp] mov BYTE PTR [esi*1+ebp-1],dl jb $L002loop1 - jmp $L006done + jmp $L004done ALIGN 16 $L001RC4_CHAR: movzx ecx,BYTE PTR [eax*1+edi] -$L008cloop1: +$L005cloop1: add bl,cl movzx edx,BYTE PTR [ebx*1+edi] mov BYTE PTR [ebx*1+edi],cl @@ -267,10 +124,10 @@ $L008cloop1: movzx ecx,BYTE PTR [eax*1+edi] cmp esi,DWORD PTR 24[esp] mov BYTE PTR [esi*1+ebp-1],dl - jb $L008cloop1 -$L006done: + jb $L005cloop1 +$L004done: dec al - mov DWORD PTR [edi-4],ebx + mov BYTE PTR [edi-4],bl mov BYTE PTR [edi-8],al $L000abort: pop edi @@ -279,9 +136,10 @@ $L000abort: pop ebp ret _RC4 ENDP +;EXTERN _OPENSSL_ia32cap_P:NEAR ALIGN 16 -_private_RC4_set_key PROC PUBLIC -$L_private_RC4_set_key_begin:: +_RC4_set_key PROC PUBLIC +$L_RC4_set_key_begin:: push ebp push ebx push esi @@ -296,53 +154,53 @@ $L_private_RC4_set_key_begin:: xor eax,eax mov DWORD PTR [edi-4],ebp bt DWORD PTR [edx],20 - jc $L009c1stloop + jc $L006c1stloop ALIGN 16 -$L010w1stloop: +$L007w1stloop: mov DWORD PTR [eax*4+edi],eax add al,1 - jnc $L010w1stloop + jnc $L007w1stloop xor ecx,ecx xor edx,edx ALIGN 16 -$L011w2ndloop: +$L008w2ndloop: mov eax,DWORD PTR [ecx*4+edi] add dl,BYTE PTR [ebp*1+esi] add dl,al add ebp,1 mov ebx,DWORD PTR [edx*4+edi] - jnz $L012wnowrap + jnz $L009wnowrap mov ebp,DWORD PTR [edi-4] -$L012wnowrap: +$L009wnowrap: mov DWORD PTR [edx*4+edi],eax mov DWORD PTR [ecx*4+edi],ebx add cl,1 - jnc $L011w2ndloop - jmp $L013exit + jnc $L008w2ndloop + jmp $L010exit ALIGN 16 -$L009c1stloop: +$L006c1stloop: mov BYTE PTR [eax*1+edi],al add al,1 - jnc $L009c1stloop + jnc $L006c1stloop xor ecx,ecx xor edx,edx xor ebx,ebx ALIGN 16 -$L014c2ndloop: +$L011c2ndloop: mov al,BYTE PTR [ecx*1+edi] add dl,BYTE PTR [ebp*1+esi] add dl,al add ebp,1 mov bl,BYTE PTR [edx*1+edi] - jnz $L015cnowrap + jnz $L012cnowrap mov ebp,DWORD PTR [edi-4] -$L015cnowrap: +$L012cnowrap: mov BYTE PTR [edx*1+edi],al mov BYTE PTR [ecx*1+edi],bl add cl,1 - jnc $L014c2ndloop + jnc $L011c2ndloop mov DWORD PTR 256[edi],-1 -$L013exit: +$L010exit: xor eax,eax mov DWORD PTR [edi-8],eax mov DWORD PTR [edi-4],eax @@ -351,31 +209,24 @@ $L013exit: pop ebx pop ebp ret -_private_RC4_set_key ENDP +_RC4_set_key ENDP ALIGN 16 _RC4_options PROC PUBLIC $L_RC4_options_begin:: - call $L016pic_point -$L016pic_point: + call $L013pic_point +$L013pic_point: pop eax - lea eax,DWORD PTR ($L017opts-$L016pic_point)[eax] + lea eax,DWORD PTR ($L014opts-$L013pic_point)[eax] lea edx,DWORD PTR _OPENSSL_ia32cap_P - mov edx,DWORD PTR [edx] - bt edx,20 - jc $L0181xchar - bt edx,26 - jnc $L019ret - add eax,25 - ret -$L0181xchar: + bt DWORD PTR [edx],20 + jnc $L015skip add eax,12 -$L019ret: +$L015skip: ret ALIGN 64 -$L017opts: +$L014opts: DB 114,99,52,40,52,120,44,105,110,116,41,0 DB 114,99,52,40,49,120,44,99,104,97,114,41,0 -DB 114,99,52,40,56,120,44,109,109,120,41,0 DB 82,67,52,32,102,111,114,32,120,56,54,44,32,67,82,89 DB 80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114 DB 111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 @@ -383,6 +234,6 @@ ALIGN 64 _RC4_options ENDP .text$ ENDS .bss SEGMENT 'BSS' -COMM _OPENSSL_ia32cap_P:QWORD +COMM _OPENSSL_ia32cap_P:DWORD .bss ENDS END diff --git a/deps/openssl/asm/x86-win32-masm/rc5/rc5-586.asm b/deps/openssl/asm/x86-win32-masm/rc5/rc5-586.asm index 7ce74110e2..e699d9173f 100644 --- a/deps/openssl/asm/x86-win32-masm/rc5/rc5-586.asm +++ b/deps/openssl/asm/x86-win32-masm/rc5/rc5-586.asm @@ -2,7 +2,7 @@ TITLE rc5-586.asm IF @Version LT 800 ECHO MASM version 8.00 or later is strongly recommended. ENDIF -.686 +.586 .MODEL FLAT OPTION DOTNAME IF @Version LT 800 diff --git a/deps/openssl/asm/x86-win32-masm/ripemd/rmd-586.asm b/deps/openssl/asm/x86-win32-masm/ripemd/rmd-586.asm index 7f6458cefd..8fa61f8f98 100644 --- a/deps/openssl/asm/x86-win32-masm/ripemd/rmd-586.asm +++ b/deps/openssl/asm/x86-win32-masm/ripemd/rmd-586.asm @@ -2,7 +2,7 @@ TITLE ../openssl/crypto/ripemd/asm/rmd-586.asm IF @Version LT 800 ECHO MASM version 8.00 or later is strongly recommended. ENDIF -.686 +.586 .MODEL FLAT OPTION DOTNAME IF @Version LT 800 diff --git a/deps/openssl/asm/x86-win32-masm/sha/sha1-586.asm b/deps/openssl/asm/x86-win32-masm/sha/sha1-586.asm index 878b1d3b99..ce9f8d5b45 100644 --- a/deps/openssl/asm/x86-win32-masm/sha/sha1-586.asm +++ b/deps/openssl/asm/x86-win32-masm/sha/sha1-586.asm @@ -2,7 +2,7 @@ TITLE sha1-586.asm IF @Version LT 800 ECHO MASM version 8.00 or later is strongly recommended. ENDIF -.686 +.586 .MODEL FLAT OPTION DOTNAME IF @Version LT 800 @@ -20,12 +20,11 @@ $L_sha1_block_data_order_begin:: mov ebp,DWORD PTR 20[esp] mov esi,DWORD PTR 24[esp] mov eax,DWORD PTR 28[esp] - sub esp,76 + sub esp,64 shl eax,6 add eax,esi - mov DWORD PTR 104[esp],eax + mov DWORD PTR 92[esp],eax mov edi,DWORD PTR 16[ebp] - jmp $L000loop ALIGN 16 $L000loop: mov eax,DWORD PTR [esi] @@ -76,7 +75,7 @@ $L000loop: mov DWORD PTR 52[esp],ebx mov DWORD PTR 56[esp],ecx mov DWORD PTR 60[esp],edx - mov DWORD PTR 100[esp],esi + mov DWORD PTR 88[esp],esi mov eax,DWORD PTR [ebp] mov ebx,DWORD PTR 4[ebp] mov ecx,DWORD PTR 8[ebp] @@ -87,10 +86,10 @@ $L000loop: rol ebp,5 xor esi,edx add ebp,edi - mov edi,DWORD PTR [esp] and esi,ebx - ror ebx,2 + mov edi,DWORD PTR [esp] xor esi,edx + ror ebx,2 lea ebp,DWORD PTR 1518500249[edi*1+ebp] add ebp,esi ; 00_15 1 @@ -99,10 +98,10 @@ $L000loop: rol ebp,5 xor edi,ecx add ebp,edx - mov edx,DWORD PTR 4[esp] and edi,eax - ror eax,2 + mov edx,DWORD PTR 4[esp] xor edi,ecx + ror eax,2 lea ebp,DWORD PTR 1518500249[edx*1+ebp] add ebp,edi ; 00_15 2 @@ -111,10 +110,10 @@ $L000loop: rol ebp,5 xor edx,ebx add ebp,ecx - mov ecx,DWORD PTR 8[esp] and edx,esi - ror esi,2 + mov ecx,DWORD PTR 8[esp] xor edx,ebx + ror esi,2 lea ebp,DWORD PTR 1518500249[ecx*1+ebp] add ebp,edx ; 00_15 3 @@ -123,10 +122,10 @@ $L000loop: rol ebp,5 xor ecx,eax add ebp,ebx - mov ebx,DWORD PTR 12[esp] and ecx,edi - ror edi,2 + mov ebx,DWORD PTR 12[esp] xor ecx,eax + ror edi,2 lea ebp,DWORD PTR 1518500249[ebx*1+ebp] add ebp,ecx ; 00_15 4 @@ -135,10 +134,10 @@ $L000loop: rol ebp,5 xor ebx,esi add ebp,eax - mov eax,DWORD PTR 16[esp] and ebx,edx - ror edx,2 + mov eax,DWORD PTR 16[esp] xor ebx,esi + ror edx,2 lea ebp,DWORD PTR 1518500249[eax*1+ebp] add ebp,ebx ; 00_15 5 @@ -147,10 +146,10 @@ $L000loop: rol ebp,5 xor eax,edi add ebp,esi - mov esi,DWORD PTR 20[esp] and eax,ecx - ror ecx,2 + mov esi,DWORD PTR 20[esp] xor eax,edi + ror ecx,2 lea ebp,DWORD PTR 1518500249[esi*1+ebp] add ebp,eax ; 00_15 6 @@ -159,10 +158,10 @@ $L000loop: rol ebp,5 xor esi,edx add ebp,edi - mov edi,DWORD PTR 24[esp] and esi,ebx - ror ebx,2 + mov edi,DWORD PTR 24[esp] xor esi,edx + ror ebx,2 lea ebp,DWORD PTR 1518500249[edi*1+ebp] add ebp,esi ; 00_15 7 @@ -171,10 +170,10 @@ $L000loop: rol ebp,5 xor edi,ecx add ebp,edx - mov edx,DWORD PTR 28[esp] and edi,eax - ror eax,2 + mov edx,DWORD PTR 28[esp] xor edi,ecx + ror eax,2 lea ebp,DWORD PTR 1518500249[edx*1+ebp] add ebp,edi ; 00_15 8 @@ -183,10 +182,10 @@ $L000loop: rol ebp,5 xor edx,ebx add ebp,ecx - mov ecx,DWORD PTR 32[esp] and edx,esi - ror esi,2 + mov ecx,DWORD PTR 32[esp] xor edx,ebx + ror esi,2 lea ebp,DWORD PTR 1518500249[ecx*1+ebp] add ebp,edx ; 00_15 9 @@ -195,10 +194,10 @@ $L000loop: rol ebp,5 xor ecx,eax add ebp,ebx - mov ebx,DWORD PTR 36[esp] and ecx,edi - ror edi,2 + mov ebx,DWORD PTR 36[esp] xor ecx,eax + ror edi,2 lea ebp,DWORD PTR 1518500249[ebx*1+ebp] add ebp,ecx ; 00_15 10 @@ -207,10 +206,10 @@ $L000loop: rol ebp,5 xor ebx,esi add ebp,eax - mov eax,DWORD PTR 40[esp] and ebx,edx - ror edx,2 + mov eax,DWORD PTR 40[esp] xor ebx,esi + ror edx,2 lea ebp,DWORD PTR 1518500249[eax*1+ebp] add ebp,ebx ; 00_15 11 @@ -219,10 +218,10 @@ $L000loop: rol ebp,5 xor eax,edi add ebp,esi - mov esi,DWORD PTR 44[esp] and eax,ecx - ror ecx,2 + mov esi,DWORD PTR 44[esp] xor eax,edi + ror ecx,2 lea ebp,DWORD PTR 1518500249[esi*1+ebp] add ebp,eax ; 00_15 12 @@ -231,10 +230,10 @@ $L000loop: rol ebp,5 xor esi,edx add ebp,edi - mov edi,DWORD PTR 48[esp] and esi,ebx - ror ebx,2 + mov edi,DWORD PTR 48[esp] xor esi,edx + ror ebx,2 lea ebp,DWORD PTR 1518500249[edi*1+ebp] add ebp,esi ; 00_15 13 @@ -243,10 +242,10 @@ $L000loop: rol ebp,5 xor edi,ecx add ebp,edx - mov edx,DWORD PTR 52[esp] and edi,eax - ror eax,2 + mov edx,DWORD PTR 52[esp] xor edi,ecx + ror eax,2 lea ebp,DWORD PTR 1518500249[edx*1+ebp] add ebp,edi ; 00_15 14 @@ -255,10 +254,10 @@ $L000loop: rol ebp,5 xor edx,ebx add ebp,ecx - mov ecx,DWORD PTR 56[esp] and edx,esi - ror esi,2 + mov ecx,DWORD PTR 56[esp] xor edx,ebx + ror esi,2 lea ebp,DWORD PTR 1518500249[ecx*1+ebp] add ebp,edx ; 00_15 15 @@ -267,1099 +266,1162 @@ $L000loop: rol ebp,5 xor ecx,eax add ebp,ebx - mov ebx,DWORD PTR 60[esp] and ecx,edi - ror edi,2 + mov ebx,DWORD PTR 60[esp] xor ecx,eax + ror edi,2 lea ebp,DWORD PTR 1518500249[ebx*1+ebp] - mov ebx,DWORD PTR [esp] add ecx,ebp ; 16_19 16 + mov ebx,DWORD PTR [esp] mov ebp,edi xor ebx,DWORD PTR 8[esp] xor ebp,esi xor ebx,DWORD PTR 32[esp] and ebp,edx + ror edx,2 xor ebx,DWORD PTR 52[esp] rol ebx,1 xor ebp,esi - add eax,ebp - mov ebp,ecx - ror edx,2 mov DWORD PTR [esp],ebx - rol ebp,5 lea ebx,DWORD PTR 1518500249[eax*1+ebx] - mov eax,DWORD PTR 4[esp] + mov eax,ecx + rol eax,5 add ebx,ebp + add ebx,eax ; 16_19 17 + mov eax,DWORD PTR 4[esp] mov ebp,edx xor eax,DWORD PTR 12[esp] xor ebp,edi xor eax,DWORD PTR 36[esp] and ebp,ecx + ror ecx,2 xor eax,DWORD PTR 56[esp] rol eax,1 xor ebp,edi - add esi,ebp - mov ebp,ebx - ror ecx,2 mov DWORD PTR 4[esp],eax - rol ebp,5 lea eax,DWORD PTR 1518500249[esi*1+eax] - mov esi,DWORD PTR 8[esp] + mov esi,ebx + rol esi,5 add eax,ebp + add eax,esi ; 16_19 18 + mov esi,DWORD PTR 8[esp] mov ebp,ecx xor esi,DWORD PTR 16[esp] xor ebp,edx xor esi,DWORD PTR 40[esp] and ebp,ebx + ror ebx,2 xor esi,DWORD PTR 60[esp] rol esi,1 xor ebp,edx - add edi,ebp - mov ebp,eax - ror ebx,2 mov DWORD PTR 8[esp],esi - rol ebp,5 lea esi,DWORD PTR 1518500249[edi*1+esi] - mov edi,DWORD PTR 12[esp] + mov edi,eax + rol edi,5 add esi,ebp + add esi,edi ; 16_19 19 + mov edi,DWORD PTR 12[esp] mov ebp,ebx xor edi,DWORD PTR 20[esp] xor ebp,ecx xor edi,DWORD PTR 44[esp] and ebp,eax + ror eax,2 xor edi,DWORD PTR [esp] rol edi,1 xor ebp,ecx - add edx,ebp - mov ebp,esi - ror eax,2 mov DWORD PTR 12[esp],edi - rol ebp,5 lea edi,DWORD PTR 1518500249[edx*1+edi] - mov edx,DWORD PTR 16[esp] + mov edx,esi + rol edx,5 add edi,ebp + add edi,edx ; 20_39 20 mov ebp,esi + mov edx,DWORD PTR 16[esp] + ror esi,2 xor edx,DWORD PTR 24[esp] xor ebp,eax xor edx,DWORD PTR 48[esp] xor ebp,ebx xor edx,DWORD PTR 4[esp] rol edx,1 - add ecx,ebp - ror esi,2 - mov ebp,edi - rol ebp,5 + add ebp,ecx mov DWORD PTR 16[esp],edx - lea edx,DWORD PTR 1859775393[ecx*1+edx] - mov ecx,DWORD PTR 20[esp] - add edx,ebp + mov ecx,edi + rol ecx,5 + lea edx,DWORD PTR 1859775393[ebp*1+edx] + add edx,ecx ; 20_39 21 mov ebp,edi + mov ecx,DWORD PTR 20[esp] + ror edi,2 xor ecx,DWORD PTR 28[esp] xor ebp,esi xor ecx,DWORD PTR 52[esp] xor ebp,eax xor ecx,DWORD PTR 8[esp] rol ecx,1 - add ebx,ebp - ror edi,2 - mov ebp,edx - rol ebp,5 + add ebp,ebx mov DWORD PTR 20[esp],ecx - lea ecx,DWORD PTR 1859775393[ebx*1+ecx] - mov ebx,DWORD PTR 24[esp] - add ecx,ebp + mov ebx,edx + rol ebx,5 + lea ecx,DWORD PTR 1859775393[ebp*1+ecx] + add ecx,ebx ; 20_39 22 mov ebp,edx + mov ebx,DWORD PTR 24[esp] + ror edx,2 xor ebx,DWORD PTR 32[esp] xor ebp,edi xor ebx,DWORD PTR 56[esp] xor ebp,esi xor ebx,DWORD PTR 12[esp] rol ebx,1 - add eax,ebp - ror edx,2 - mov ebp,ecx - rol ebp,5 + add ebp,eax mov DWORD PTR 24[esp],ebx - lea ebx,DWORD PTR 1859775393[eax*1+ebx] - mov eax,DWORD PTR 28[esp] - add ebx,ebp + mov eax,ecx + rol eax,5 + lea ebx,DWORD PTR 1859775393[ebp*1+ebx] + add ebx,eax ; 20_39 23 mov ebp,ecx + mov eax,DWORD PTR 28[esp] + ror ecx,2 xor eax,DWORD PTR 36[esp] xor ebp,edx xor eax,DWORD PTR 60[esp] xor ebp,edi xor eax,DWORD PTR 16[esp] rol eax,1 - add esi,ebp - ror ecx,2 - mov ebp,ebx - rol ebp,5 + add ebp,esi mov DWORD PTR 28[esp],eax - lea eax,DWORD PTR 1859775393[esi*1+eax] - mov esi,DWORD PTR 32[esp] - add eax,ebp + mov esi,ebx + rol esi,5 + lea eax,DWORD PTR 1859775393[ebp*1+eax] + add eax,esi ; 20_39 24 mov ebp,ebx + mov esi,DWORD PTR 32[esp] + ror ebx,2 xor esi,DWORD PTR 40[esp] xor ebp,ecx xor esi,DWORD PTR [esp] xor ebp,edx xor esi,DWORD PTR 20[esp] rol esi,1 - add edi,ebp - ror ebx,2 - mov ebp,eax - rol ebp,5 + add ebp,edi mov DWORD PTR 32[esp],esi - lea esi,DWORD PTR 1859775393[edi*1+esi] - mov edi,DWORD PTR 36[esp] - add esi,ebp + mov edi,eax + rol edi,5 + lea esi,DWORD PTR 1859775393[ebp*1+esi] + add esi,edi ; 20_39 25 mov ebp,eax + mov edi,DWORD PTR 36[esp] + ror eax,2 xor edi,DWORD PTR 44[esp] xor ebp,ebx xor edi,DWORD PTR 4[esp] xor ebp,ecx xor edi,DWORD PTR 24[esp] rol edi,1 - add edx,ebp - ror eax,2 - mov ebp,esi - rol ebp,5 + add ebp,edx mov DWORD PTR 36[esp],edi - lea edi,DWORD PTR 1859775393[edx*1+edi] - mov edx,DWORD PTR 40[esp] - add edi,ebp + mov edx,esi + rol edx,5 + lea edi,DWORD PTR 1859775393[ebp*1+edi] + add edi,edx ; 20_39 26 mov ebp,esi + mov edx,DWORD PTR 40[esp] + ror esi,2 xor edx,DWORD PTR 48[esp] xor ebp,eax xor edx,DWORD PTR 8[esp] xor ebp,ebx xor edx,DWORD PTR 28[esp] rol edx,1 - add ecx,ebp - ror esi,2 - mov ebp,edi - rol ebp,5 + add ebp,ecx mov DWORD PTR 40[esp],edx - lea edx,DWORD PTR 1859775393[ecx*1+edx] - mov ecx,DWORD PTR 44[esp] - add edx,ebp + mov ecx,edi + rol ecx,5 + lea edx,DWORD PTR 1859775393[ebp*1+edx] + add edx,ecx ; 20_39 27 mov ebp,edi + mov ecx,DWORD PTR 44[esp] + ror edi,2 xor ecx,DWORD PTR 52[esp] xor ebp,esi xor ecx,DWORD PTR 12[esp] xor ebp,eax xor ecx,DWORD PTR 32[esp] rol ecx,1 - add ebx,ebp - ror edi,2 - mov ebp,edx - rol ebp,5 + add ebp,ebx mov DWORD PTR 44[esp],ecx - lea ecx,DWORD PTR 1859775393[ebx*1+ecx] - mov ebx,DWORD PTR 48[esp] - add ecx,ebp + mov ebx,edx + rol ebx,5 + lea ecx,DWORD PTR 1859775393[ebp*1+ecx] + add ecx,ebx ; 20_39 28 mov ebp,edx + mov ebx,DWORD PTR 48[esp] + ror edx,2 xor ebx,DWORD PTR 56[esp] xor ebp,edi xor ebx,DWORD PTR 16[esp] xor ebp,esi xor ebx,DWORD PTR 36[esp] rol ebx,1 - add eax,ebp - ror edx,2 - mov ebp,ecx - rol ebp,5 + add ebp,eax mov DWORD PTR 48[esp],ebx - lea ebx,DWORD PTR 1859775393[eax*1+ebx] - mov eax,DWORD PTR 52[esp] - add ebx,ebp + mov eax,ecx + rol eax,5 + lea ebx,DWORD PTR 1859775393[ebp*1+ebx] + add ebx,eax ; 20_39 29 mov ebp,ecx + mov eax,DWORD PTR 52[esp] + ror ecx,2 xor eax,DWORD PTR 60[esp] xor ebp,edx xor eax,DWORD PTR 20[esp] xor ebp,edi xor eax,DWORD PTR 40[esp] rol eax,1 - add esi,ebp - ror ecx,2 - mov ebp,ebx - rol ebp,5 + add ebp,esi mov DWORD PTR 52[esp],eax - lea eax,DWORD PTR 1859775393[esi*1+eax] - mov esi,DWORD PTR 56[esp] - add eax,ebp + mov esi,ebx + rol esi,5 + lea eax,DWORD PTR 1859775393[ebp*1+eax] + add eax,esi ; 20_39 30 mov ebp,ebx + mov esi,DWORD PTR 56[esp] + ror ebx,2 xor esi,DWORD PTR [esp] xor ebp,ecx xor esi,DWORD PTR 24[esp] xor ebp,edx xor esi,DWORD PTR 44[esp] rol esi,1 - add edi,ebp - ror ebx,2 - mov ebp,eax - rol ebp,5 + add ebp,edi mov DWORD PTR 56[esp],esi - lea esi,DWORD PTR 1859775393[edi*1+esi] - mov edi,DWORD PTR 60[esp] - add esi,ebp + mov edi,eax + rol edi,5 + lea esi,DWORD PTR 1859775393[ebp*1+esi] + add esi,edi ; 20_39 31 mov ebp,eax + mov edi,DWORD PTR 60[esp] + ror eax,2 xor edi,DWORD PTR 4[esp] xor ebp,ebx xor edi,DWORD PTR 28[esp] xor ebp,ecx xor edi,DWORD PTR 48[esp] rol edi,1 - add edx,ebp - ror eax,2 - mov ebp,esi - rol ebp,5 + add ebp,edx mov DWORD PTR 60[esp],edi - lea edi,DWORD PTR 1859775393[edx*1+edi] - mov edx,DWORD PTR [esp] - add edi,ebp + mov edx,esi + rol edx,5 + lea edi,DWORD PTR 1859775393[ebp*1+edi] + add edi,edx ; 20_39 32 mov ebp,esi + mov edx,DWORD PTR [esp] + ror esi,2 xor edx,DWORD PTR 8[esp] xor ebp,eax xor edx,DWORD PTR 32[esp] xor ebp,ebx xor edx,DWORD PTR 52[esp] rol edx,1 - add ecx,ebp - ror esi,2 - mov ebp,edi - rol ebp,5 + add ebp,ecx mov DWORD PTR [esp],edx - lea edx,DWORD PTR 1859775393[ecx*1+edx] - mov ecx,DWORD PTR 4[esp] - add edx,ebp + mov ecx,edi + rol ecx,5 + lea edx,DWORD PTR 1859775393[ebp*1+edx] + add edx,ecx ; 20_39 33 mov ebp,edi + mov ecx,DWORD PTR 4[esp] + ror edi,2 xor ecx,DWORD PTR 12[esp] xor ebp,esi xor ecx,DWORD PTR 36[esp] xor ebp,eax xor ecx,DWORD PTR 56[esp] rol ecx,1 - add ebx,ebp - ror edi,2 - mov ebp,edx - rol ebp,5 + add ebp,ebx mov DWORD PTR 4[esp],ecx - lea ecx,DWORD PTR 1859775393[ebx*1+ecx] - mov ebx,DWORD PTR 8[esp] - add ecx,ebp + mov ebx,edx + rol ebx,5 + lea ecx,DWORD PTR 1859775393[ebp*1+ecx] + add ecx,ebx ; 20_39 34 mov ebp,edx + mov ebx,DWORD PTR 8[esp] + ror edx,2 xor ebx,DWORD PTR 16[esp] xor ebp,edi xor ebx,DWORD PTR 40[esp] xor ebp,esi xor ebx,DWORD PTR 60[esp] rol ebx,1 - add eax,ebp - ror edx,2 - mov ebp,ecx - rol ebp,5 + add ebp,eax mov DWORD PTR 8[esp],ebx - lea ebx,DWORD PTR 1859775393[eax*1+ebx] - mov eax,DWORD PTR 12[esp] - add ebx,ebp + mov eax,ecx + rol eax,5 + lea ebx,DWORD PTR 1859775393[ebp*1+ebx] + add ebx,eax ; 20_39 35 mov ebp,ecx + mov eax,DWORD PTR 12[esp] + ror ecx,2 xor eax,DWORD PTR 20[esp] xor ebp,edx xor eax,DWORD PTR 44[esp] xor ebp,edi xor eax,DWORD PTR [esp] rol eax,1 - add esi,ebp - ror ecx,2 - mov ebp,ebx - rol ebp,5 + add ebp,esi mov DWORD PTR 12[esp],eax - lea eax,DWORD PTR 1859775393[esi*1+eax] - mov esi,DWORD PTR 16[esp] - add eax,ebp + mov esi,ebx + rol esi,5 + lea eax,DWORD PTR 1859775393[ebp*1+eax] + add eax,esi ; 20_39 36 mov ebp,ebx + mov esi,DWORD PTR 16[esp] + ror ebx,2 xor esi,DWORD PTR 24[esp] xor ebp,ecx xor esi,DWORD PTR 48[esp] xor ebp,edx xor esi,DWORD PTR 4[esp] rol esi,1 - add edi,ebp - ror ebx,2 - mov ebp,eax - rol ebp,5 + add ebp,edi mov DWORD PTR 16[esp],esi - lea esi,DWORD PTR 1859775393[edi*1+esi] - mov edi,DWORD PTR 20[esp] - add esi,ebp + mov edi,eax + rol edi,5 + lea esi,DWORD PTR 1859775393[ebp*1+esi] + add esi,edi ; 20_39 37 mov ebp,eax + mov edi,DWORD PTR 20[esp] + ror eax,2 xor edi,DWORD PTR 28[esp] xor ebp,ebx xor edi,DWORD PTR 52[esp] xor ebp,ecx xor edi,DWORD PTR 8[esp] rol edi,1 - add edx,ebp - ror eax,2 - mov ebp,esi - rol ebp,5 + add ebp,edx mov DWORD PTR 20[esp],edi - lea edi,DWORD PTR 1859775393[edx*1+edi] - mov edx,DWORD PTR 24[esp] - add edi,ebp + mov edx,esi + rol edx,5 + lea edi,DWORD PTR 1859775393[ebp*1+edi] + add edi,edx ; 20_39 38 mov ebp,esi + mov edx,DWORD PTR 24[esp] + ror esi,2 xor edx,DWORD PTR 32[esp] xor ebp,eax xor edx,DWORD PTR 56[esp] xor ebp,ebx xor edx,DWORD PTR 12[esp] rol edx,1 - add ecx,ebp - ror esi,2 - mov ebp,edi - rol ebp,5 + add ebp,ecx mov DWORD PTR 24[esp],edx - lea edx,DWORD PTR 1859775393[ecx*1+edx] - mov ecx,DWORD PTR 28[esp] - add edx,ebp + mov ecx,edi + rol ecx,5 + lea edx,DWORD PTR 1859775393[ebp*1+edx] + add edx,ecx ; 20_39 39 mov ebp,edi + mov ecx,DWORD PTR 28[esp] + ror edi,2 xor ecx,DWORD PTR 36[esp] xor ebp,esi xor ecx,DWORD PTR 60[esp] xor ebp,eax xor ecx,DWORD PTR 16[esp] rol ecx,1 - add ebx,ebp - ror edi,2 - mov ebp,edx - rol ebp,5 + add ebp,ebx mov DWORD PTR 28[esp],ecx - lea ecx,DWORD PTR 1859775393[ebx*1+ecx] - mov ebx,DWORD PTR 32[esp] - add ecx,ebp + mov ebx,edx + rol ebx,5 + lea ecx,DWORD PTR 1859775393[ebp*1+ecx] + add ecx,ebx ; 40_59 40 - mov ebp,edi - xor ebx,DWORD PTR 40[esp] - xor ebp,esi - xor ebx,DWORD PTR [esp] - and ebp,edx - xor ebx,DWORD PTR 20[esp] + mov ebx,DWORD PTR 32[esp] + mov ebp,DWORD PTR 40[esp] + xor ebx,ebp + mov ebp,DWORD PTR [esp] + xor ebx,ebp + mov ebp,DWORD PTR 20[esp] + xor ebx,ebp + mov ebp,edx rol ebx,1 - add ebp,eax + or ebp,edi + mov DWORD PTR 32[esp],ebx + and ebp,esi + lea ebx,DWORD PTR 2400959708[eax*1+ebx] + mov eax,edx ror edx,2 + and eax,edi + or ebp,eax mov eax,ecx rol eax,5 - mov DWORD PTR 32[esp],ebx - lea ebx,DWORD PTR 2400959708[ebp*1+ebx] - mov ebp,edi - add ebx,eax - and ebp,esi - mov eax,DWORD PTR 36[esp] add ebx,ebp + add ebx,eax ; 40_59 41 - mov ebp,edx - xor eax,DWORD PTR 44[esp] - xor ebp,edi - xor eax,DWORD PTR 4[esp] - and ebp,ecx - xor eax,DWORD PTR 24[esp] + mov eax,DWORD PTR 36[esp] + mov ebp,DWORD PTR 44[esp] + xor eax,ebp + mov ebp,DWORD PTR 4[esp] + xor eax,ebp + mov ebp,DWORD PTR 24[esp] + xor eax,ebp + mov ebp,ecx rol eax,1 - add ebp,esi + or ebp,edx + mov DWORD PTR 36[esp],eax + and ebp,edi + lea eax,DWORD PTR 2400959708[esi*1+eax] + mov esi,ecx ror ecx,2 + and esi,edx + or ebp,esi mov esi,ebx rol esi,5 - mov DWORD PTR 36[esp],eax - lea eax,DWORD PTR 2400959708[ebp*1+eax] - mov ebp,edx - add eax,esi - and ebp,edi - mov esi,DWORD PTR 40[esp] add eax,ebp + add eax,esi ; 40_59 42 - mov ebp,ecx - xor esi,DWORD PTR 48[esp] - xor ebp,edx - xor esi,DWORD PTR 8[esp] - and ebp,ebx - xor esi,DWORD PTR 28[esp] + mov esi,DWORD PTR 40[esp] + mov ebp,DWORD PTR 48[esp] + xor esi,ebp + mov ebp,DWORD PTR 8[esp] + xor esi,ebp + mov ebp,DWORD PTR 28[esp] + xor esi,ebp + mov ebp,ebx rol esi,1 - add ebp,edi + or ebp,ecx + mov DWORD PTR 40[esp],esi + and ebp,edx + lea esi,DWORD PTR 2400959708[edi*1+esi] + mov edi,ebx ror ebx,2 + and edi,ecx + or ebp,edi mov edi,eax rol edi,5 - mov DWORD PTR 40[esp],esi - lea esi,DWORD PTR 2400959708[ebp*1+esi] - mov ebp,ecx - add esi,edi - and ebp,edx - mov edi,DWORD PTR 44[esp] add esi,ebp + add esi,edi ; 40_59 43 - mov ebp,ebx - xor edi,DWORD PTR 52[esp] - xor ebp,ecx - xor edi,DWORD PTR 12[esp] - and ebp,eax - xor edi,DWORD PTR 32[esp] + mov edi,DWORD PTR 44[esp] + mov ebp,DWORD PTR 52[esp] + xor edi,ebp + mov ebp,DWORD PTR 12[esp] + xor edi,ebp + mov ebp,DWORD PTR 32[esp] + xor edi,ebp + mov ebp,eax rol edi,1 - add ebp,edx + or ebp,ebx + mov DWORD PTR 44[esp],edi + and ebp,ecx + lea edi,DWORD PTR 2400959708[edx*1+edi] + mov edx,eax ror eax,2 + and edx,ebx + or ebp,edx mov edx,esi rol edx,5 - mov DWORD PTR 44[esp],edi - lea edi,DWORD PTR 2400959708[ebp*1+edi] - mov ebp,ebx - add edi,edx - and ebp,ecx - mov edx,DWORD PTR 48[esp] add edi,ebp + add edi,edx ; 40_59 44 - mov ebp,eax - xor edx,DWORD PTR 56[esp] - xor ebp,ebx - xor edx,DWORD PTR 16[esp] - and ebp,esi - xor edx,DWORD PTR 36[esp] + mov edx,DWORD PTR 48[esp] + mov ebp,DWORD PTR 56[esp] + xor edx,ebp + mov ebp,DWORD PTR 16[esp] + xor edx,ebp + mov ebp,DWORD PTR 36[esp] + xor edx,ebp + mov ebp,esi rol edx,1 - add ebp,ecx + or ebp,eax + mov DWORD PTR 48[esp],edx + and ebp,ebx + lea edx,DWORD PTR 2400959708[ecx*1+edx] + mov ecx,esi ror esi,2 + and ecx,eax + or ebp,ecx mov ecx,edi rol ecx,5 - mov DWORD PTR 48[esp],edx - lea edx,DWORD PTR 2400959708[ebp*1+edx] - mov ebp,eax - add edx,ecx - and ebp,ebx - mov ecx,DWORD PTR 52[esp] add edx,ebp + add edx,ecx ; 40_59 45 - mov ebp,esi - xor ecx,DWORD PTR 60[esp] - xor ebp,eax - xor ecx,DWORD PTR 20[esp] - and ebp,edi - xor ecx,DWORD PTR 40[esp] + mov ecx,DWORD PTR 52[esp] + mov ebp,DWORD PTR 60[esp] + xor ecx,ebp + mov ebp,DWORD PTR 20[esp] + xor ecx,ebp + mov ebp,DWORD PTR 40[esp] + xor ecx,ebp + mov ebp,edi rol ecx,1 - add ebp,ebx + or ebp,esi + mov DWORD PTR 52[esp],ecx + and ebp,eax + lea ecx,DWORD PTR 2400959708[ebx*1+ecx] + mov ebx,edi ror edi,2 + and ebx,esi + or ebp,ebx mov ebx,edx rol ebx,5 - mov DWORD PTR 52[esp],ecx - lea ecx,DWORD PTR 2400959708[ebp*1+ecx] - mov ebp,esi - add ecx,ebx - and ebp,eax - mov ebx,DWORD PTR 56[esp] add ecx,ebp + add ecx,ebx ; 40_59 46 - mov ebp,edi - xor ebx,DWORD PTR [esp] - xor ebp,esi - xor ebx,DWORD PTR 24[esp] - and ebp,edx - xor ebx,DWORD PTR 44[esp] + mov ebx,DWORD PTR 56[esp] + mov ebp,DWORD PTR [esp] + xor ebx,ebp + mov ebp,DWORD PTR 24[esp] + xor ebx,ebp + mov ebp,DWORD PTR 44[esp] + xor ebx,ebp + mov ebp,edx rol ebx,1 - add ebp,eax + or ebp,edi + mov DWORD PTR 56[esp],ebx + and ebp,esi + lea ebx,DWORD PTR 2400959708[eax*1+ebx] + mov eax,edx ror edx,2 + and eax,edi + or ebp,eax mov eax,ecx rol eax,5 - mov DWORD PTR 56[esp],ebx - lea ebx,DWORD PTR 2400959708[ebp*1+ebx] - mov ebp,edi - add ebx,eax - and ebp,esi - mov eax,DWORD PTR 60[esp] add ebx,ebp + add ebx,eax ; 40_59 47 - mov ebp,edx - xor eax,DWORD PTR 4[esp] - xor ebp,edi - xor eax,DWORD PTR 28[esp] - and ebp,ecx - xor eax,DWORD PTR 48[esp] + mov eax,DWORD PTR 60[esp] + mov ebp,DWORD PTR 4[esp] + xor eax,ebp + mov ebp,DWORD PTR 28[esp] + xor eax,ebp + mov ebp,DWORD PTR 48[esp] + xor eax,ebp + mov ebp,ecx rol eax,1 - add ebp,esi + or ebp,edx + mov DWORD PTR 60[esp],eax + and ebp,edi + lea eax,DWORD PTR 2400959708[esi*1+eax] + mov esi,ecx ror ecx,2 + and esi,edx + or ebp,esi mov esi,ebx rol esi,5 - mov DWORD PTR 60[esp],eax - lea eax,DWORD PTR 2400959708[ebp*1+eax] - mov ebp,edx - add eax,esi - and ebp,edi - mov esi,DWORD PTR [esp] add eax,ebp + add eax,esi ; 40_59 48 - mov ebp,ecx - xor esi,DWORD PTR 8[esp] - xor ebp,edx - xor esi,DWORD PTR 32[esp] - and ebp,ebx - xor esi,DWORD PTR 52[esp] + mov esi,DWORD PTR [esp] + mov ebp,DWORD PTR 8[esp] + xor esi,ebp + mov ebp,DWORD PTR 32[esp] + xor esi,ebp + mov ebp,DWORD PTR 52[esp] + xor esi,ebp + mov ebp,ebx rol esi,1 - add ebp,edi + or ebp,ecx + mov DWORD PTR [esp],esi + and ebp,edx + lea esi,DWORD PTR 2400959708[edi*1+esi] + mov edi,ebx ror ebx,2 + and edi,ecx + or ebp,edi mov edi,eax rol edi,5 - mov DWORD PTR [esp],esi - lea esi,DWORD PTR 2400959708[ebp*1+esi] - mov ebp,ecx - add esi,edi - and ebp,edx - mov edi,DWORD PTR 4[esp] add esi,ebp + add esi,edi ; 40_59 49 - mov ebp,ebx - xor edi,DWORD PTR 12[esp] - xor ebp,ecx - xor edi,DWORD PTR 36[esp] - and ebp,eax - xor edi,DWORD PTR 56[esp] + mov edi,DWORD PTR 4[esp] + mov ebp,DWORD PTR 12[esp] + xor edi,ebp + mov ebp,DWORD PTR 36[esp] + xor edi,ebp + mov ebp,DWORD PTR 56[esp] + xor edi,ebp + mov ebp,eax rol edi,1 - add ebp,edx + or ebp,ebx + mov DWORD PTR 4[esp],edi + and ebp,ecx + lea edi,DWORD PTR 2400959708[edx*1+edi] + mov edx,eax ror eax,2 + and edx,ebx + or ebp,edx mov edx,esi rol edx,5 - mov DWORD PTR 4[esp],edi - lea edi,DWORD PTR 2400959708[ebp*1+edi] - mov ebp,ebx - add edi,edx - and ebp,ecx - mov edx,DWORD PTR 8[esp] add edi,ebp + add edi,edx ; 40_59 50 - mov ebp,eax - xor edx,DWORD PTR 16[esp] - xor ebp,ebx - xor edx,DWORD PTR 40[esp] - and ebp,esi - xor edx,DWORD PTR 60[esp] + mov edx,DWORD PTR 8[esp] + mov ebp,DWORD PTR 16[esp] + xor edx,ebp + mov ebp,DWORD PTR 40[esp] + xor edx,ebp + mov ebp,DWORD PTR 60[esp] + xor edx,ebp + mov ebp,esi rol edx,1 - add ebp,ecx + or ebp,eax + mov DWORD PTR 8[esp],edx + and ebp,ebx + lea edx,DWORD PTR 2400959708[ecx*1+edx] + mov ecx,esi ror esi,2 + and ecx,eax + or ebp,ecx mov ecx,edi rol ecx,5 - mov DWORD PTR 8[esp],edx - lea edx,DWORD PTR 2400959708[ebp*1+edx] - mov ebp,eax - add edx,ecx - and ebp,ebx - mov ecx,DWORD PTR 12[esp] add edx,ebp + add edx,ecx ; 40_59 51 - mov ebp,esi - xor ecx,DWORD PTR 20[esp] - xor ebp,eax - xor ecx,DWORD PTR 44[esp] - and ebp,edi - xor ecx,DWORD PTR [esp] + mov ecx,DWORD PTR 12[esp] + mov ebp,DWORD PTR 20[esp] + xor ecx,ebp + mov ebp,DWORD PTR 44[esp] + xor ecx,ebp + mov ebp,DWORD PTR [esp] + xor ecx,ebp + mov ebp,edi rol ecx,1 - add ebp,ebx + or ebp,esi + mov DWORD PTR 12[esp],ecx + and ebp,eax + lea ecx,DWORD PTR 2400959708[ebx*1+ecx] + mov ebx,edi ror edi,2 + and ebx,esi + or ebp,ebx mov ebx,edx rol ebx,5 - mov DWORD PTR 12[esp],ecx - lea ecx,DWORD PTR 2400959708[ebp*1+ecx] - mov ebp,esi - add ecx,ebx - and ebp,eax - mov ebx,DWORD PTR 16[esp] add ecx,ebp + add ecx,ebx ; 40_59 52 - mov ebp,edi - xor ebx,DWORD PTR 24[esp] - xor ebp,esi - xor ebx,DWORD PTR 48[esp] - and ebp,edx - xor ebx,DWORD PTR 4[esp] + mov ebx,DWORD PTR 16[esp] + mov ebp,DWORD PTR 24[esp] + xor ebx,ebp + mov ebp,DWORD PTR 48[esp] + xor ebx,ebp + mov ebp,DWORD PTR 4[esp] + xor ebx,ebp + mov ebp,edx rol ebx,1 - add ebp,eax + or ebp,edi + mov DWORD PTR 16[esp],ebx + and ebp,esi + lea ebx,DWORD PTR 2400959708[eax*1+ebx] + mov eax,edx ror edx,2 + and eax,edi + or ebp,eax mov eax,ecx rol eax,5 - mov DWORD PTR 16[esp],ebx - lea ebx,DWORD PTR 2400959708[ebp*1+ebx] - mov ebp,edi - add ebx,eax - and ebp,esi - mov eax,DWORD PTR 20[esp] add ebx,ebp + add ebx,eax ; 40_59 53 - mov ebp,edx - xor eax,DWORD PTR 28[esp] - xor ebp,edi - xor eax,DWORD PTR 52[esp] - and ebp,ecx - xor eax,DWORD PTR 8[esp] + mov eax,DWORD PTR 20[esp] + mov ebp,DWORD PTR 28[esp] + xor eax,ebp + mov ebp,DWORD PTR 52[esp] + xor eax,ebp + mov ebp,DWORD PTR 8[esp] + xor eax,ebp + mov ebp,ecx rol eax,1 - add ebp,esi + or ebp,edx + mov DWORD PTR 20[esp],eax + and ebp,edi + lea eax,DWORD PTR 2400959708[esi*1+eax] + mov esi,ecx ror ecx,2 + and esi,edx + or ebp,esi mov esi,ebx rol esi,5 - mov DWORD PTR 20[esp],eax - lea eax,DWORD PTR 2400959708[ebp*1+eax] - mov ebp,edx - add eax,esi - and ebp,edi - mov esi,DWORD PTR 24[esp] add eax,ebp + add eax,esi ; 40_59 54 - mov ebp,ecx - xor esi,DWORD PTR 32[esp] - xor ebp,edx - xor esi,DWORD PTR 56[esp] - and ebp,ebx - xor esi,DWORD PTR 12[esp] + mov esi,DWORD PTR 24[esp] + mov ebp,DWORD PTR 32[esp] + xor esi,ebp + mov ebp,DWORD PTR 56[esp] + xor esi,ebp + mov ebp,DWORD PTR 12[esp] + xor esi,ebp + mov ebp,ebx rol esi,1 - add ebp,edi + or ebp,ecx + mov DWORD PTR 24[esp],esi + and ebp,edx + lea esi,DWORD PTR 2400959708[edi*1+esi] + mov edi,ebx ror ebx,2 + and edi,ecx + or ebp,edi mov edi,eax rol edi,5 - mov DWORD PTR 24[esp],esi - lea esi,DWORD PTR 2400959708[ebp*1+esi] - mov ebp,ecx - add esi,edi - and ebp,edx - mov edi,DWORD PTR 28[esp] add esi,ebp + add esi,edi ; 40_59 55 - mov ebp,ebx - xor edi,DWORD PTR 36[esp] - xor ebp,ecx - xor edi,DWORD PTR 60[esp] - and ebp,eax - xor edi,DWORD PTR 16[esp] + mov edi,DWORD PTR 28[esp] + mov ebp,DWORD PTR 36[esp] + xor edi,ebp + mov ebp,DWORD PTR 60[esp] + xor edi,ebp + mov ebp,DWORD PTR 16[esp] + xor edi,ebp + mov ebp,eax rol edi,1 - add ebp,edx + or ebp,ebx + mov DWORD PTR 28[esp],edi + and ebp,ecx + lea edi,DWORD PTR 2400959708[edx*1+edi] + mov edx,eax ror eax,2 + and edx,ebx + or ebp,edx mov edx,esi rol edx,5 - mov DWORD PTR 28[esp],edi - lea edi,DWORD PTR 2400959708[ebp*1+edi] - mov ebp,ebx - add edi,edx - and ebp,ecx - mov edx,DWORD PTR 32[esp] add edi,ebp + add edi,edx ; 40_59 56 - mov ebp,eax - xor edx,DWORD PTR 40[esp] - xor ebp,ebx - xor edx,DWORD PTR [esp] - and ebp,esi - xor edx,DWORD PTR 20[esp] + mov edx,DWORD PTR 32[esp] + mov ebp,DWORD PTR 40[esp] + xor edx,ebp + mov ebp,DWORD PTR [esp] + xor edx,ebp + mov ebp,DWORD PTR 20[esp] + xor edx,ebp + mov ebp,esi rol edx,1 - add ebp,ecx + or ebp,eax + mov DWORD PTR 32[esp],edx + and ebp,ebx + lea edx,DWORD PTR 2400959708[ecx*1+edx] + mov ecx,esi ror esi,2 + and ecx,eax + or ebp,ecx mov ecx,edi rol ecx,5 - mov DWORD PTR 32[esp],edx - lea edx,DWORD PTR 2400959708[ebp*1+edx] - mov ebp,eax - add edx,ecx - and ebp,ebx - mov ecx,DWORD PTR 36[esp] add edx,ebp + add edx,ecx ; 40_59 57 - mov ebp,esi - xor ecx,DWORD PTR 44[esp] - xor ebp,eax - xor ecx,DWORD PTR 4[esp] - and ebp,edi - xor ecx,DWORD PTR 24[esp] + mov ecx,DWORD PTR 36[esp] + mov ebp,DWORD PTR 44[esp] + xor ecx,ebp + mov ebp,DWORD PTR 4[esp] + xor ecx,ebp + mov ebp,DWORD PTR 24[esp] + xor ecx,ebp + mov ebp,edi rol ecx,1 - add ebp,ebx + or ebp,esi + mov DWORD PTR 36[esp],ecx + and ebp,eax + lea ecx,DWORD PTR 2400959708[ebx*1+ecx] + mov ebx,edi ror edi,2 + and ebx,esi + or ebp,ebx mov ebx,edx rol ebx,5 - mov DWORD PTR 36[esp],ecx - lea ecx,DWORD PTR 2400959708[ebp*1+ecx] - mov ebp,esi - add ecx,ebx - and ebp,eax - mov ebx,DWORD PTR 40[esp] add ecx,ebp + add ecx,ebx ; 40_59 58 - mov ebp,edi - xor ebx,DWORD PTR 48[esp] - xor ebp,esi - xor ebx,DWORD PTR 8[esp] - and ebp,edx - xor ebx,DWORD PTR 28[esp] + mov ebx,DWORD PTR 40[esp] + mov ebp,DWORD PTR 48[esp] + xor ebx,ebp + mov ebp,DWORD PTR 8[esp] + xor ebx,ebp + mov ebp,DWORD PTR 28[esp] + xor ebx,ebp + mov ebp,edx rol ebx,1 - add ebp,eax + or ebp,edi + mov DWORD PTR 40[esp],ebx + and ebp,esi + lea ebx,DWORD PTR 2400959708[eax*1+ebx] + mov eax,edx ror edx,2 + and eax,edi + or ebp,eax mov eax,ecx rol eax,5 - mov DWORD PTR 40[esp],ebx - lea ebx,DWORD PTR 2400959708[ebp*1+ebx] - mov ebp,edi - add ebx,eax - and ebp,esi - mov eax,DWORD PTR 44[esp] add ebx,ebp + add ebx,eax ; 40_59 59 - mov ebp,edx - xor eax,DWORD PTR 52[esp] - xor ebp,edi - xor eax,DWORD PTR 12[esp] - and ebp,ecx - xor eax,DWORD PTR 32[esp] + mov eax,DWORD PTR 44[esp] + mov ebp,DWORD PTR 52[esp] + xor eax,ebp + mov ebp,DWORD PTR 12[esp] + xor eax,ebp + mov ebp,DWORD PTR 32[esp] + xor eax,ebp + mov ebp,ecx rol eax,1 - add ebp,esi + or ebp,edx + mov DWORD PTR 44[esp],eax + and ebp,edi + lea eax,DWORD PTR 2400959708[esi*1+eax] + mov esi,ecx ror ecx,2 + and esi,edx + or ebp,esi mov esi,ebx rol esi,5 - mov DWORD PTR 44[esp],eax - lea eax,DWORD PTR 2400959708[ebp*1+eax] - mov ebp,edx - add eax,esi - and ebp,edi - mov esi,DWORD PTR 48[esp] add eax,ebp + add eax,esi ; 20_39 60 mov ebp,ebx + mov esi,DWORD PTR 48[esp] + ror ebx,2 xor esi,DWORD PTR 56[esp] xor ebp,ecx xor esi,DWORD PTR 16[esp] xor ebp,edx xor esi,DWORD PTR 36[esp] rol esi,1 - add edi,ebp - ror ebx,2 - mov ebp,eax - rol ebp,5 + add ebp,edi mov DWORD PTR 48[esp],esi - lea esi,DWORD PTR 3395469782[edi*1+esi] - mov edi,DWORD PTR 52[esp] - add esi,ebp + mov edi,eax + rol edi,5 + lea esi,DWORD PTR 3395469782[ebp*1+esi] + add esi,edi ; 20_39 61 mov ebp,eax + mov edi,DWORD PTR 52[esp] + ror eax,2 xor edi,DWORD PTR 60[esp] xor ebp,ebx xor edi,DWORD PTR 20[esp] xor ebp,ecx xor edi,DWORD PTR 40[esp] rol edi,1 - add edx,ebp - ror eax,2 - mov ebp,esi - rol ebp,5 + add ebp,edx mov DWORD PTR 52[esp],edi - lea edi,DWORD PTR 3395469782[edx*1+edi] - mov edx,DWORD PTR 56[esp] - add edi,ebp + mov edx,esi + rol edx,5 + lea edi,DWORD PTR 3395469782[ebp*1+edi] + add edi,edx ; 20_39 62 mov ebp,esi + mov edx,DWORD PTR 56[esp] + ror esi,2 xor edx,DWORD PTR [esp] xor ebp,eax xor edx,DWORD PTR 24[esp] xor ebp,ebx xor edx,DWORD PTR 44[esp] rol edx,1 - add ecx,ebp - ror esi,2 - mov ebp,edi - rol ebp,5 + add ebp,ecx mov DWORD PTR 56[esp],edx - lea edx,DWORD PTR 3395469782[ecx*1+edx] - mov ecx,DWORD PTR 60[esp] - add edx,ebp + mov ecx,edi + rol ecx,5 + lea edx,DWORD PTR 3395469782[ebp*1+edx] + add edx,ecx ; 20_39 63 mov ebp,edi + mov ecx,DWORD PTR 60[esp] + ror edi,2 xor ecx,DWORD PTR 4[esp] xor ebp,esi xor ecx,DWORD PTR 28[esp] xor ebp,eax xor ecx,DWORD PTR 48[esp] rol ecx,1 - add ebx,ebp - ror edi,2 - mov ebp,edx - rol ebp,5 + add ebp,ebx mov DWORD PTR 60[esp],ecx - lea ecx,DWORD PTR 3395469782[ebx*1+ecx] - mov ebx,DWORD PTR [esp] - add ecx,ebp + mov ebx,edx + rol ebx,5 + lea ecx,DWORD PTR 3395469782[ebp*1+ecx] + add ecx,ebx ; 20_39 64 mov ebp,edx + mov ebx,DWORD PTR [esp] + ror edx,2 xor ebx,DWORD PTR 8[esp] xor ebp,edi xor ebx,DWORD PTR 32[esp] xor ebp,esi xor ebx,DWORD PTR 52[esp] rol ebx,1 - add eax,ebp - ror edx,2 - mov ebp,ecx - rol ebp,5 + add ebp,eax mov DWORD PTR [esp],ebx - lea ebx,DWORD PTR 3395469782[eax*1+ebx] - mov eax,DWORD PTR 4[esp] - add ebx,ebp + mov eax,ecx + rol eax,5 + lea ebx,DWORD PTR 3395469782[ebp*1+ebx] + add ebx,eax ; 20_39 65 mov ebp,ecx + mov eax,DWORD PTR 4[esp] + ror ecx,2 xor eax,DWORD PTR 12[esp] xor ebp,edx xor eax,DWORD PTR 36[esp] xor ebp,edi xor eax,DWORD PTR 56[esp] rol eax,1 - add esi,ebp - ror ecx,2 - mov ebp,ebx - rol ebp,5 + add ebp,esi mov DWORD PTR 4[esp],eax - lea eax,DWORD PTR 3395469782[esi*1+eax] - mov esi,DWORD PTR 8[esp] - add eax,ebp + mov esi,ebx + rol esi,5 + lea eax,DWORD PTR 3395469782[ebp*1+eax] + add eax,esi ; 20_39 66 mov ebp,ebx + mov esi,DWORD PTR 8[esp] + ror ebx,2 xor esi,DWORD PTR 16[esp] xor ebp,ecx xor esi,DWORD PTR 40[esp] xor ebp,edx xor esi,DWORD PTR 60[esp] rol esi,1 - add edi,ebp - ror ebx,2 - mov ebp,eax - rol ebp,5 + add ebp,edi mov DWORD PTR 8[esp],esi - lea esi,DWORD PTR 3395469782[edi*1+esi] - mov edi,DWORD PTR 12[esp] - add esi,ebp + mov edi,eax + rol edi,5 + lea esi,DWORD PTR 3395469782[ebp*1+esi] + add esi,edi ; 20_39 67 mov ebp,eax + mov edi,DWORD PTR 12[esp] + ror eax,2 xor edi,DWORD PTR 20[esp] xor ebp,ebx xor edi,DWORD PTR 44[esp] xor ebp,ecx xor edi,DWORD PTR [esp] rol edi,1 - add edx,ebp - ror eax,2 - mov ebp,esi - rol ebp,5 + add ebp,edx mov DWORD PTR 12[esp],edi - lea edi,DWORD PTR 3395469782[edx*1+edi] - mov edx,DWORD PTR 16[esp] - add edi,ebp + mov edx,esi + rol edx,5 + lea edi,DWORD PTR 3395469782[ebp*1+edi] + add edi,edx ; 20_39 68 mov ebp,esi + mov edx,DWORD PTR 16[esp] + ror esi,2 xor edx,DWORD PTR 24[esp] xor ebp,eax xor edx,DWORD PTR 48[esp] xor ebp,ebx xor edx,DWORD PTR 4[esp] rol edx,1 - add ecx,ebp - ror esi,2 - mov ebp,edi - rol ebp,5 + add ebp,ecx mov DWORD PTR 16[esp],edx - lea edx,DWORD PTR 3395469782[ecx*1+edx] - mov ecx,DWORD PTR 20[esp] - add edx,ebp + mov ecx,edi + rol ecx,5 + lea edx,DWORD PTR 3395469782[ebp*1+edx] + add edx,ecx ; 20_39 69 mov ebp,edi + mov ecx,DWORD PTR 20[esp] + ror edi,2 xor ecx,DWORD PTR 28[esp] xor ebp,esi xor ecx,DWORD PTR 52[esp] xor ebp,eax xor ecx,DWORD PTR 8[esp] rol ecx,1 - add ebx,ebp - ror edi,2 - mov ebp,edx - rol ebp,5 + add ebp,ebx mov DWORD PTR 20[esp],ecx - lea ecx,DWORD PTR 3395469782[ebx*1+ecx] - mov ebx,DWORD PTR 24[esp] - add ecx,ebp + mov ebx,edx + rol ebx,5 + lea ecx,DWORD PTR 3395469782[ebp*1+ecx] + add ecx,ebx ; 20_39 70 mov ebp,edx + mov ebx,DWORD PTR 24[esp] + ror edx,2 xor ebx,DWORD PTR 32[esp] xor ebp,edi xor ebx,DWORD PTR 56[esp] xor ebp,esi xor ebx,DWORD PTR 12[esp] rol ebx,1 - add eax,ebp - ror edx,2 - mov ebp,ecx - rol ebp,5 + add ebp,eax mov DWORD PTR 24[esp],ebx - lea ebx,DWORD PTR 3395469782[eax*1+ebx] - mov eax,DWORD PTR 28[esp] - add ebx,ebp + mov eax,ecx + rol eax,5 + lea ebx,DWORD PTR 3395469782[ebp*1+ebx] + add ebx,eax ; 20_39 71 mov ebp,ecx + mov eax,DWORD PTR 28[esp] + ror ecx,2 xor eax,DWORD PTR 36[esp] xor ebp,edx xor eax,DWORD PTR 60[esp] xor ebp,edi xor eax,DWORD PTR 16[esp] rol eax,1 - add esi,ebp - ror ecx,2 - mov ebp,ebx - rol ebp,5 + add ebp,esi mov DWORD PTR 28[esp],eax - lea eax,DWORD PTR 3395469782[esi*1+eax] - mov esi,DWORD PTR 32[esp] - add eax,ebp + mov esi,ebx + rol esi,5 + lea eax,DWORD PTR 3395469782[ebp*1+eax] + add eax,esi ; 20_39 72 mov ebp,ebx + mov esi,DWORD PTR 32[esp] + ror ebx,2 xor esi,DWORD PTR 40[esp] xor ebp,ecx xor esi,DWORD PTR [esp] xor ebp,edx xor esi,DWORD PTR 20[esp] rol esi,1 - add edi,ebp - ror ebx,2 - mov ebp,eax - rol ebp,5 + add ebp,edi mov DWORD PTR 32[esp],esi - lea esi,DWORD PTR 3395469782[edi*1+esi] - mov edi,DWORD PTR 36[esp] - add esi,ebp + mov edi,eax + rol edi,5 + lea esi,DWORD PTR 3395469782[ebp*1+esi] + add esi,edi ; 20_39 73 mov ebp,eax + mov edi,DWORD PTR 36[esp] + ror eax,2 xor edi,DWORD PTR 44[esp] xor ebp,ebx xor edi,DWORD PTR 4[esp] xor ebp,ecx xor edi,DWORD PTR 24[esp] rol edi,1 - add edx,ebp - ror eax,2 - mov ebp,esi - rol ebp,5 + add ebp,edx mov DWORD PTR 36[esp],edi - lea edi,DWORD PTR 3395469782[edx*1+edi] - mov edx,DWORD PTR 40[esp] - add edi,ebp + mov edx,esi + rol edx,5 + lea edi,DWORD PTR 3395469782[ebp*1+edi] + add edi,edx ; 20_39 74 mov ebp,esi + mov edx,DWORD PTR 40[esp] + ror esi,2 xor edx,DWORD PTR 48[esp] xor ebp,eax xor edx,DWORD PTR 8[esp] xor ebp,ebx xor edx,DWORD PTR 28[esp] rol edx,1 - add ecx,ebp - ror esi,2 - mov ebp,edi - rol ebp,5 + add ebp,ecx mov DWORD PTR 40[esp],edx - lea edx,DWORD PTR 3395469782[ecx*1+edx] - mov ecx,DWORD PTR 44[esp] - add edx,ebp + mov ecx,edi + rol ecx,5 + lea edx,DWORD PTR 3395469782[ebp*1+edx] + add edx,ecx ; 20_39 75 mov ebp,edi + mov ecx,DWORD PTR 44[esp] + ror edi,2 xor ecx,DWORD PTR 52[esp] xor ebp,esi xor ecx,DWORD PTR 12[esp] xor ebp,eax xor ecx,DWORD PTR 32[esp] rol ecx,1 - add ebx,ebp - ror edi,2 - mov ebp,edx - rol ebp,5 + add ebp,ebx mov DWORD PTR 44[esp],ecx - lea ecx,DWORD PTR 3395469782[ebx*1+ecx] - mov ebx,DWORD PTR 48[esp] - add ecx,ebp + mov ebx,edx + rol ebx,5 + lea ecx,DWORD PTR 3395469782[ebp*1+ecx] + add ecx,ebx ; 20_39 76 mov ebp,edx + mov ebx,DWORD PTR 48[esp] + ror edx,2 xor ebx,DWORD PTR 56[esp] xor ebp,edi xor ebx,DWORD PTR 16[esp] xor ebp,esi xor ebx,DWORD PTR 36[esp] rol ebx,1 - add eax,ebp - ror edx,2 - mov ebp,ecx - rol ebp,5 + add ebp,eax mov DWORD PTR 48[esp],ebx - lea ebx,DWORD PTR 3395469782[eax*1+ebx] - mov eax,DWORD PTR 52[esp] - add ebx,ebp + mov eax,ecx + rol eax,5 + lea ebx,DWORD PTR 3395469782[ebp*1+ebx] + add ebx,eax ; 20_39 77 mov ebp,ecx + mov eax,DWORD PTR 52[esp] + ror ecx,2 xor eax,DWORD PTR 60[esp] xor ebp,edx xor eax,DWORD PTR 20[esp] xor ebp,edi xor eax,DWORD PTR 40[esp] rol eax,1 - add esi,ebp - ror ecx,2 - mov ebp,ebx - rol ebp,5 - lea eax,DWORD PTR 3395469782[esi*1+eax] - mov esi,DWORD PTR 56[esp] - add eax,ebp + add ebp,esi + mov DWORD PTR 52[esp],eax + mov esi,ebx + rol esi,5 + lea eax,DWORD PTR 3395469782[ebp*1+eax] + add eax,esi ; 20_39 78 mov ebp,ebx + mov esi,DWORD PTR 56[esp] + ror ebx,2 xor esi,DWORD PTR [esp] xor ebp,ecx xor esi,DWORD PTR 24[esp] xor ebp,edx xor esi,DWORD PTR 44[esp] rol esi,1 - add edi,ebp - ror ebx,2 - mov ebp,eax - rol ebp,5 - lea esi,DWORD PTR 3395469782[edi*1+esi] - mov edi,DWORD PTR 60[esp] - add esi,ebp + add ebp,edi + mov DWORD PTR 56[esp],esi + mov edi,eax + rol edi,5 + lea esi,DWORD PTR 3395469782[ebp*1+esi] + add esi,edi ; 20_39 79 mov ebp,eax + mov edi,DWORD PTR 60[esp] + ror eax,2 xor edi,DWORD PTR 4[esp] xor ebp,ebx xor edi,DWORD PTR 28[esp] xor ebp,ecx xor edi,DWORD PTR 48[esp] rol edi,1 - add edx,ebp - ror eax,2 - mov ebp,esi - rol ebp,5 - lea edi,DWORD PTR 3395469782[edx*1+edi] - add edi,ebp - mov ebp,DWORD PTR 96[esp] - mov edx,DWORD PTR 100[esp] + add ebp,edx + mov DWORD PTR 60[esp],edi + mov edx,esi + rol edx,5 + lea edi,DWORD PTR 3395469782[ebp*1+edi] + add edi,edx + mov ebp,DWORD PTR 84[esp] + mov edx,DWORD PTR 88[esp] add edi,DWORD PTR [ebp] add esi,DWORD PTR 4[ebp] add eax,DWORD PTR 8[ebp] @@ -1368,14 +1430,14 @@ $L000loop: mov DWORD PTR [ebp],edi add edx,64 mov DWORD PTR 4[ebp],esi - cmp edx,DWORD PTR 104[esp] + cmp edx,DWORD PTR 92[esp] mov DWORD PTR 8[ebp],eax mov edi,ecx mov DWORD PTR 12[ebp],ebx mov esi,edx mov DWORD PTR 16[ebp],ecx jb $L000loop - add esp,76 + add esp,64 pop edi pop esi pop ebx diff --git a/deps/openssl/asm/x86-win32-masm/sha/sha256-586.asm b/deps/openssl/asm/x86-win32-masm/sha/sha256-586.asm index 577c38ffab..75b1dc8ac5 100644 --- a/deps/openssl/asm/x86-win32-masm/sha/sha256-586.asm +++ b/deps/openssl/asm/x86-win32-masm/sha/sha256-586.asm @@ -2,7 +2,7 @@ TITLE sha512-586.asm IF @Version LT 800 ECHO MASM version 8.00 or later is strongly recommended. ENDIF -.686 +.586 .MODEL FLAT OPTION DOTNAME IF @Version LT 800 @@ -104,30 +104,31 @@ ALIGN 16 $L00300_15: mov ebx,DWORD PTR 92[esp] mov ecx,edx - ror ecx,14 - mov esi,DWORD PTR 20[esp] - xor ecx,edx - ror ecx,5 - xor ecx,edx ror ecx,6 + mov edi,edx + ror edi,11 + mov esi,DWORD PTR 20[esp] + xor ecx,edi + ror edi,14 + xor ecx,edi mov edi,DWORD PTR 24[esp] add ebx,ecx - xor esi,edi mov DWORD PTR 16[esp],edx + xor esi,edi mov ecx,eax and esi,edx mov edx,DWORD PTR 12[esp] xor esi,edi mov edi,eax add ebx,esi - ror ecx,9 + ror ecx,2 add ebx,DWORD PTR 28[esp] - xor ecx,eax - ror ecx,11 + ror edi,13 mov esi,DWORD PTR 4[esp] - xor ecx,eax - ror ecx,2 + xor ecx,edi + ror edi,9 add edx,ebx + xor ecx,edi mov edi,DWORD PTR 8[esp] add ebx,ecx mov DWORD PTR [esp],eax @@ -149,46 +150,48 @@ ALIGN 16 $L00416_63: mov esi,ebx mov ecx,DWORD PTR 100[esp] + shr ebx,3 + ror esi,7 + xor ebx,esi ror esi,11 mov edi,ecx - xor esi,ebx - ror esi,7 - shr ebx,3 - ror edi,2 xor ebx,esi - xor edi,ecx - ror edi,17 shr ecx,10 - add ebx,DWORD PTR 156[esp] + mov esi,DWORD PTR 156[esp] + ror edi,17 + xor ecx,edi + ror edi,2 + add ebx,esi xor edi,ecx - add ebx,DWORD PTR 120[esp] - mov ecx,edx add ebx,edi - ror ecx,14 + mov ecx,edx + add ebx,DWORD PTR 120[esp] + ror ecx,6 + mov edi,edx + ror edi,11 mov esi,DWORD PTR 20[esp] - xor ecx,edx - ror ecx,5 + xor ecx,edi + ror edi,14 mov DWORD PTR 92[esp],ebx - xor ecx,edx - ror ecx,6 + xor ecx,edi mov edi,DWORD PTR 24[esp] add ebx,ecx - xor esi,edi mov DWORD PTR 16[esp],edx + xor esi,edi mov ecx,eax and esi,edx mov edx,DWORD PTR 12[esp] xor esi,edi mov edi,eax add ebx,esi - ror ecx,9 + ror ecx,2 add ebx,DWORD PTR 28[esp] - xor ecx,eax - ror ecx,11 + ror edi,13 mov esi,DWORD PTR 4[esp] - xor ecx,eax - ror ecx,2 + xor ecx,edi + ror edi,9 add edx,ebx + xor ecx,edi mov edi,DWORD PTR 8[esp] add ebx,ecx mov DWORD PTR [esp],eax diff --git a/deps/openssl/asm/x86-win32-masm/sha/sha512-586.asm b/deps/openssl/asm/x86-win32-masm/sha/sha512-586.asm index 98c1c070d7..9f3249762b 100644 --- a/deps/openssl/asm/x86-win32-masm/sha/sha512-586.asm +++ b/deps/openssl/asm/x86-win32-masm/sha/sha512-586.asm @@ -2,7 +2,7 @@ TITLE sha512-586.asm IF @Version LT 800 ECHO MASM version 8.00 or later is strongly recommended. ENDIF -.686 +.586 .MODEL FLAT OPTION DOTNAME IF @Version LT 800 diff --git a/deps/openssl/asm/x86-win32-masm/x86cpuid.asm b/deps/openssl/asm/x86-win32-masm/x86cpuid.asm index b9b1c25843..7e663d6645 100644 --- a/deps/openssl/asm/x86-win32-masm/x86cpuid.asm +++ b/deps/openssl/asm/x86-win32-masm/x86cpuid.asm @@ -2,7 +2,7 @@ TITLE x86cpuid.asm IF @Version LT 800 ECHO MASM version 8.00 or later is strongly recommended. ENDIF -.686 +.586 .MODEL FLAT OPTION DOTNAME IF @Version LT 800 @@ -27,9 +27,9 @@ $L_OPENSSL_ia32_cpuid_begin:: pushfd pop eax xor ecx,eax - xor eax,eax bt ecx,21 - jnc $L000nocpuid + jnc $L000done + xor eax,eax cpuid mov edi,eax xor eax,eax @@ -55,14 +55,7 @@ $L_OPENSSL_ia32_cpuid_begin:: jnz $L001intel mov eax,2147483648 cpuid - cmp eax,2147483649 - jb $L001intel - mov esi,eax - mov eax,2147483649 - cpuid - or ebp,ecx - and ebp,2049 - cmp esi,2147483656 + cmp eax,2147483656 jb $L001intel mov eax,2147483656 cpuid @@ -71,68 +64,46 @@ $L_OPENSSL_ia32_cpuid_begin:: mov eax,1 cpuid bt edx,28 - jnc $L002generic + jnc $L000done shr ebx,16 and ebx,255 cmp ebx,esi - ja $L002generic + ja $L000done and edx,4026531839 - jmp $L002generic + jmp $L000done $L001intel: cmp edi,4 mov edi,-1 - jb $L003nocacheinfo + jb $L002nocacheinfo mov eax,4 mov ecx,0 cpuid mov edi,eax shr edi,14 and edi,4095 -$L003nocacheinfo: +$L002nocacheinfo: mov eax,1 cpuid - and edx,3220176895 cmp ebp,0 - jne $L004notintel - or edx,1073741824 + jne $L003notP4 and ah,15 cmp ah,15 - jne $L004notintel + jne $L003notP4 or edx,1048576 -$L004notintel: +$L003notP4: bt edx,28 - jnc $L002generic + jnc $L000done and edx,4026531839 cmp edi,0 - je $L002generic + je $L000done or edx,268435456 shr ebx,16 cmp bl,1 - ja $L002generic + ja $L000done and edx,4026531839 -$L002generic: - and ebp,2048 - and ecx,4294965247 - mov esi,edx - or ebp,ecx - bt ecx,27 - jnc $L005clear_avx - xor ecx,ecx -DB 15,1,208 - and eax,6 - cmp eax,6 - je $L006done - cmp eax,2 - je $L005clear_avx -$L007clear_xmm: - and ebp,4261412861 - and esi,4278190079 -$L005clear_avx: - and ebp,4026525695 -$L006done: - mov eax,esi - mov edx,ebp -$L000nocpuid: +$L000done: + mov eax,edx + mov edx,ecx pop edi pop esi pop ebx @@ -147,9 +118,9 @@ $L_OPENSSL_rdtsc_begin:: xor edx,edx lea ecx,DWORD PTR _OPENSSL_ia32cap_P bt DWORD PTR [ecx],4 - jnc $L008notsc + jnc $L004notsc rdtsc -$L008notsc: +$L004notsc: ret _OPENSSL_rdtsc ENDP ALIGN 16 @@ -157,14 +128,14 @@ _OPENSSL_instrument_halt PROC PUBLIC $L_OPENSSL_instrument_halt_begin:: lea ecx,DWORD PTR _OPENSSL_ia32cap_P bt DWORD PTR [ecx],4 - jnc $L009nohalt + jnc $L005nohalt DD 2421723150 and eax,3 - jnz $L009nohalt + jnz $L005nohalt pushfd pop eax bt eax,9 - jnc $L009nohalt + jnc $L005nohalt rdtsc push edx push eax @@ -174,7 +145,7 @@ DD 2421723150 sbb edx,DWORD PTR 4[esp] add esp,8 ret -$L009nohalt: +$L005nohalt: xor eax,eax xor edx,edx ret @@ -185,21 +156,21 @@ $L_OPENSSL_far_spin_begin:: pushfd pop eax bt eax,9 - jnc $L010nospin + jnc $L006nospin mov eax,DWORD PTR 4[esp] mov ecx,DWORD PTR 8[esp] DD 2430111262 xor eax,eax mov edx,DWORD PTR [ecx] - jmp $L011spin + jmp $L007spin ALIGN 16 -$L011spin: +$L007spin: inc eax cmp edx,DWORD PTR [ecx] - je $L011spin + je $L007spin DD 529567888 ret -$L010nospin: +$L006nospin: xor eax,eax xor edx,edx ret @@ -212,9 +183,9 @@ $L_OPENSSL_wipe_cpu_begin:: lea ecx,DWORD PTR _OPENSSL_ia32cap_P mov ecx,DWORD PTR [ecx] bt DWORD PTR [ecx],1 - jnc $L012no_x87 + jnc $L008no_x87 DD 4007259865,4007259865,4007259865,4007259865,2430851995 -$L012no_x87: +$L008no_x87: lea eax,DWORD PTR 4[esp] ret _OPENSSL_wipe_cpu ENDP @@ -226,11 +197,11 @@ $L_OPENSSL_atomic_add_begin:: push ebx nop mov eax,DWORD PTR [edx] -$L013spin: +$L009spin: lea ebx,DWORD PTR [ecx*1+eax] nop DD 447811568 - jne $L013spin + jne $L009spin mov eax,ebx pop ebx ret @@ -267,50 +238,37 @@ $L_OPENSSL_cleanse_begin:: mov ecx,DWORD PTR 8[esp] xor eax,eax cmp ecx,7 - jae $L014lot + jae $L010lot cmp ecx,0 - je $L015ret -$L016little: + je $L011ret +$L012little: mov BYTE PTR [edx],al sub ecx,1 lea edx,DWORD PTR 1[edx] - jnz $L016little -$L015ret: + jnz $L012little +$L011ret: ret ALIGN 16 -$L014lot: +$L010lot: test edx,3 - jz $L017aligned + jz $L013aligned mov BYTE PTR [edx],al lea ecx,DWORD PTR [ecx-1] lea edx,DWORD PTR 1[edx] - jmp $L014lot -$L017aligned: + jmp $L010lot +$L013aligned: mov DWORD PTR [edx],eax lea ecx,DWORD PTR [ecx-4] test ecx,-4 lea edx,DWORD PTR 4[edx] - jnz $L017aligned + jnz $L013aligned cmp ecx,0 - jne $L016little + jne $L012little ret _OPENSSL_cleanse ENDP -ALIGN 16 -_OPENSSL_ia32_rdrand PROC PUBLIC -$L_OPENSSL_ia32_rdrand_begin:: - mov ecx,8 -$L018loop: -DB 15,199,240 - jc $L019break - loop $L018loop -$L019break: - cmp eax,0 - cmove eax,ecx - ret -_OPENSSL_ia32_rdrand ENDP .text$ ENDS .bss SEGMENT 'BSS' -COMM _OPENSSL_ia32cap_P:QWORD +COMM _OPENSSL_ia32cap_P:DWORD .bss ENDS .CRT$XCU SEGMENT DWORD PUBLIC 'DATA' EXTERN _OPENSSL_cpuid_setup:NEAR |