Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(226)

Unified Diff: third_party/boringssl/win-x86/crypto/sha/sha1-586.asm

Issue 2354623003: Pull boringssl generated source from boringssl_gen (Closed)
Patch Set: . Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/boringssl/win-x86/crypto/sha/sha1-586.asm
diff --git a/third_party/boringssl/win-x86/crypto/sha/sha1-586.asm b/third_party/boringssl/win-x86/crypto/sha/sha1-586.asm
deleted file mode 100644
index cee8c6262646a11d0cc1cec8b710c3c5403101db..0000000000000000000000000000000000000000
--- a/third_party/boringssl/win-x86/crypto/sha/sha1-586.asm
+++ /dev/null
@@ -1,3808 +0,0 @@
-%ifidn __OUTPUT_FORMAT__,obj
-section code use32 class=code align=64
-%elifidn __OUTPUT_FORMAT__,win32
-%ifdef __YASM_VERSION_ID__
-%if __YASM_VERSION_ID__ < 01010000h
-%error yasm version 1.1.0 or later needed.
-%endif
-; Yasm automatically includes .00 and complains about redefining it.
-; https://www.tortall.net/projects/yasm/manual/html/objfmt-win32-safeseh.html
-%else
-$@feat.00 equ 1
-%endif
-section .text code align=64
-%else
-section .text code
-%endif
-;extern _OPENSSL_ia32cap_P
-global _sha1_block_data_order
-align 16
-_sha1_block_data_order:
-L$_sha1_block_data_order_begin:
- push ebp
- push ebx
- push esi
- push edi
- call L$000pic_point
-L$000pic_point:
- pop ebp
- lea esi,[_OPENSSL_ia32cap_P]
- lea ebp,[(L$K_XX_XX-L$000pic_point)+ebp]
- mov eax,DWORD [esi]
- mov edx,DWORD [4+esi]
- test edx,512
- jz NEAR L$001x86
- mov ecx,DWORD [8+esi]
- test eax,16777216
- jz NEAR L$001x86
- and edx,268435456
- and eax,1073741824
- or eax,edx
- cmp eax,1342177280
- je NEAR L$avx_shortcut
- jmp NEAR L$ssse3_shortcut
-align 16
-L$001x86:
- mov ebp,DWORD [20+esp]
- mov esi,DWORD [24+esp]
- mov eax,DWORD [28+esp]
- sub esp,76
- shl eax,6
- add eax,esi
- mov DWORD [104+esp],eax
- mov edi,DWORD [16+ebp]
- jmp NEAR L$002loop
-align 16
-L$002loop:
- mov eax,DWORD [esi]
- mov ebx,DWORD [4+esi]
- mov ecx,DWORD [8+esi]
- mov edx,DWORD [12+esi]
- bswap eax
- bswap ebx
- bswap ecx
- bswap edx
- mov DWORD [esp],eax
- mov DWORD [4+esp],ebx
- mov DWORD [8+esp],ecx
- mov DWORD [12+esp],edx
- mov eax,DWORD [16+esi]
- mov ebx,DWORD [20+esi]
- mov ecx,DWORD [24+esi]
- mov edx,DWORD [28+esi]
- bswap eax
- bswap ebx
- bswap ecx
- bswap edx
- mov DWORD [16+esp],eax
- mov DWORD [20+esp],ebx
- mov DWORD [24+esp],ecx
- mov DWORD [28+esp],edx
- mov eax,DWORD [32+esi]
- mov ebx,DWORD [36+esi]
- mov ecx,DWORD [40+esi]
- mov edx,DWORD [44+esi]
- bswap eax
- bswap ebx
- bswap ecx
- bswap edx
- mov DWORD [32+esp],eax
- mov DWORD [36+esp],ebx
- mov DWORD [40+esp],ecx
- mov DWORD [44+esp],edx
- mov eax,DWORD [48+esi]
- mov ebx,DWORD [52+esi]
- mov ecx,DWORD [56+esi]
- mov edx,DWORD [60+esi]
- bswap eax
- bswap ebx
- bswap ecx
- bswap edx
- mov DWORD [48+esp],eax
- mov DWORD [52+esp],ebx
- mov DWORD [56+esp],ecx
- mov DWORD [60+esp],edx
- mov DWORD [100+esp],esi
- mov eax,DWORD [ebp]
- mov ebx,DWORD [4+ebp]
- mov ecx,DWORD [8+ebp]
- mov edx,DWORD [12+ebp]
- ; 00_15 0
- mov esi,ecx
- mov ebp,eax
- rol ebp,5
- xor esi,edx
- add ebp,edi
- mov edi,DWORD [esp]
- and esi,ebx
- ror ebx,2
- xor esi,edx
- lea ebp,[1518500249+edi*1+ebp]
- add ebp,esi
- ; 00_15 1
- mov edi,ebx
- mov esi,ebp
- rol ebp,5
- xor edi,ecx
- add ebp,edx
- mov edx,DWORD [4+esp]
- and edi,eax
- ror eax,2
- xor edi,ecx
- lea ebp,[1518500249+edx*1+ebp]
- add ebp,edi
- ; 00_15 2
- mov edx,eax
- mov edi,ebp
- rol ebp,5
- xor edx,ebx
- add ebp,ecx
- mov ecx,DWORD [8+esp]
- and edx,esi
- ror esi,2
- xor edx,ebx
- lea ebp,[1518500249+ecx*1+ebp]
- add ebp,edx
- ; 00_15 3
- mov ecx,esi
- mov edx,ebp
- rol ebp,5
- xor ecx,eax
- add ebp,ebx
- mov ebx,DWORD [12+esp]
- and ecx,edi
- ror edi,2
- xor ecx,eax
- lea ebp,[1518500249+ebx*1+ebp]
- add ebp,ecx
- ; 00_15 4
- mov ebx,edi
- mov ecx,ebp
- rol ebp,5
- xor ebx,esi
- add ebp,eax
- mov eax,DWORD [16+esp]
- and ebx,edx
- ror edx,2
- xor ebx,esi
- lea ebp,[1518500249+eax*1+ebp]
- add ebp,ebx
- ; 00_15 5
- mov eax,edx
- mov ebx,ebp
- rol ebp,5
- xor eax,edi
- add ebp,esi
- mov esi,DWORD [20+esp]
- and eax,ecx
- ror ecx,2
- xor eax,edi
- lea ebp,[1518500249+esi*1+ebp]
- add ebp,eax
- ; 00_15 6
- mov esi,ecx
- mov eax,ebp
- rol ebp,5
- xor esi,edx
- add ebp,edi
- mov edi,DWORD [24+esp]
- and esi,ebx
- ror ebx,2
- xor esi,edx
- lea ebp,[1518500249+edi*1+ebp]
- add ebp,esi
- ; 00_15 7
- mov edi,ebx
- mov esi,ebp
- rol ebp,5
- xor edi,ecx
- add ebp,edx
- mov edx,DWORD [28+esp]
- and edi,eax
- ror eax,2
- xor edi,ecx
- lea ebp,[1518500249+edx*1+ebp]
- add ebp,edi
- ; 00_15 8
- mov edx,eax
- mov edi,ebp
- rol ebp,5
- xor edx,ebx
- add ebp,ecx
- mov ecx,DWORD [32+esp]
- and edx,esi
- ror esi,2
- xor edx,ebx
- lea ebp,[1518500249+ecx*1+ebp]
- add ebp,edx
- ; 00_15 9
- mov ecx,esi
- mov edx,ebp
- rol ebp,5
- xor ecx,eax
- add ebp,ebx
- mov ebx,DWORD [36+esp]
- and ecx,edi
- ror edi,2
- xor ecx,eax
- lea ebp,[1518500249+ebx*1+ebp]
- add ebp,ecx
- ; 00_15 10
- mov ebx,edi
- mov ecx,ebp
- rol ebp,5
- xor ebx,esi
- add ebp,eax
- mov eax,DWORD [40+esp]
- and ebx,edx
- ror edx,2
- xor ebx,esi
- lea ebp,[1518500249+eax*1+ebp]
- add ebp,ebx
- ; 00_15 11
- mov eax,edx
- mov ebx,ebp
- rol ebp,5
- xor eax,edi
- add ebp,esi
- mov esi,DWORD [44+esp]
- and eax,ecx
- ror ecx,2
- xor eax,edi
- lea ebp,[1518500249+esi*1+ebp]
- add ebp,eax
- ; 00_15 12
- mov esi,ecx
- mov eax,ebp
- rol ebp,5
- xor esi,edx
- add ebp,edi
- mov edi,DWORD [48+esp]
- and esi,ebx
- ror ebx,2
- xor esi,edx
- lea ebp,[1518500249+edi*1+ebp]
- add ebp,esi
- ; 00_15 13
- mov edi,ebx
- mov esi,ebp
- rol ebp,5
- xor edi,ecx
- add ebp,edx
- mov edx,DWORD [52+esp]
- and edi,eax
- ror eax,2
- xor edi,ecx
- lea ebp,[1518500249+edx*1+ebp]
- add ebp,edi
- ; 00_15 14
- mov edx,eax
- mov edi,ebp
- rol ebp,5
- xor edx,ebx
- add ebp,ecx
- mov ecx,DWORD [56+esp]
- and edx,esi
- ror esi,2
- xor edx,ebx
- lea ebp,[1518500249+ecx*1+ebp]
- add ebp,edx
- ; 00_15 15
- mov ecx,esi
- mov edx,ebp
- rol ebp,5
- xor ecx,eax
- add ebp,ebx
- mov ebx,DWORD [60+esp]
- and ecx,edi
- ror edi,2
- xor ecx,eax
- lea ebp,[1518500249+ebx*1+ebp]
- mov ebx,DWORD [esp]
- add ecx,ebp
- ; 16_19 16
- mov ebp,edi
- xor ebx,DWORD [8+esp]
- xor ebp,esi
- xor ebx,DWORD [32+esp]
- and ebp,edx
- xor ebx,DWORD [52+esp]
- rol ebx,1
- xor ebp,esi
- add eax,ebp
- mov ebp,ecx
- ror edx,2
- mov DWORD [esp],ebx
- rol ebp,5
- lea ebx,[1518500249+eax*1+ebx]
- mov eax,DWORD [4+esp]
- add ebx,ebp
- ; 16_19 17
- mov ebp,edx
- xor eax,DWORD [12+esp]
- xor ebp,edi
- xor eax,DWORD [36+esp]
- and ebp,ecx
- xor eax,DWORD [56+esp]
- rol eax,1
- xor ebp,edi
- add esi,ebp
- mov ebp,ebx
- ror ecx,2
- mov DWORD [4+esp],eax
- rol ebp,5
- lea eax,[1518500249+esi*1+eax]
- mov esi,DWORD [8+esp]
- add eax,ebp
- ; 16_19 18
- mov ebp,ecx
- xor esi,DWORD [16+esp]
- xor ebp,edx
- xor esi,DWORD [40+esp]
- and ebp,ebx
- xor esi,DWORD [60+esp]
- rol esi,1
- xor ebp,edx
- add edi,ebp
- mov ebp,eax
- ror ebx,2
- mov DWORD [8+esp],esi
- rol ebp,5
- lea esi,[1518500249+edi*1+esi]
- mov edi,DWORD [12+esp]
- add esi,ebp
- ; 16_19 19
- mov ebp,ebx
- xor edi,DWORD [20+esp]
- xor ebp,ecx
- xor edi,DWORD [44+esp]
- and ebp,eax
- xor edi,DWORD [esp]
- rol edi,1
- xor ebp,ecx
- add edx,ebp
- mov ebp,esi
- ror eax,2
- mov DWORD [12+esp],edi
- rol ebp,5
- lea edi,[1518500249+edx*1+edi]
- mov edx,DWORD [16+esp]
- add edi,ebp
- ; 20_39 20
- mov ebp,esi
- xor edx,DWORD [24+esp]
- xor ebp,eax
- xor edx,DWORD [48+esp]
- xor ebp,ebx
- xor edx,DWORD [4+esp]
- rol edx,1
- add ecx,ebp
- ror esi,2
- mov ebp,edi
- rol ebp,5
- mov DWORD [16+esp],edx
- lea edx,[1859775393+ecx*1+edx]
- mov ecx,DWORD [20+esp]
- add edx,ebp
- ; 20_39 21
- mov ebp,edi
- xor ecx,DWORD [28+esp]
- xor ebp,esi
- xor ecx,DWORD [52+esp]
- xor ebp,eax
- xor ecx,DWORD [8+esp]
- rol ecx,1
- add ebx,ebp
- ror edi,2
- mov ebp,edx
- rol ebp,5
- mov DWORD [20+esp],ecx
- lea ecx,[1859775393+ebx*1+ecx]
- mov ebx,DWORD [24+esp]
- add ecx,ebp
- ; 20_39 22
- mov ebp,edx
- xor ebx,DWORD [32+esp]
- xor ebp,edi
- xor ebx,DWORD [56+esp]
- xor ebp,esi
- xor ebx,DWORD [12+esp]
- rol ebx,1
- add eax,ebp
- ror edx,2
- mov ebp,ecx
- rol ebp,5
- mov DWORD [24+esp],ebx
- lea ebx,[1859775393+eax*1+ebx]
- mov eax,DWORD [28+esp]
- add ebx,ebp
- ; 20_39 23
- mov ebp,ecx
- xor eax,DWORD [36+esp]
- xor ebp,edx
- xor eax,DWORD [60+esp]
- xor ebp,edi
- xor eax,DWORD [16+esp]
- rol eax,1
- add esi,ebp
- ror ecx,2
- mov ebp,ebx
- rol ebp,5
- mov DWORD [28+esp],eax
- lea eax,[1859775393+esi*1+eax]
- mov esi,DWORD [32+esp]
- add eax,ebp
- ; 20_39 24
- mov ebp,ebx
- xor esi,DWORD [40+esp]
- xor ebp,ecx
- xor esi,DWORD [esp]
- xor ebp,edx
- xor esi,DWORD [20+esp]
- rol esi,1
- add edi,ebp
- ror ebx,2
- mov ebp,eax
- rol ebp,5
- mov DWORD [32+esp],esi
- lea esi,[1859775393+edi*1+esi]
- mov edi,DWORD [36+esp]
- add esi,ebp
- ; 20_39 25
- mov ebp,eax
- xor edi,DWORD [44+esp]
- xor ebp,ebx
- xor edi,DWORD [4+esp]
- xor ebp,ecx
- xor edi,DWORD [24+esp]
- rol edi,1
- add edx,ebp
- ror eax,2
- mov ebp,esi
- rol ebp,5
- mov DWORD [36+esp],edi
- lea edi,[1859775393+edx*1+edi]
- mov edx,DWORD [40+esp]
- add edi,ebp
- ; 20_39 26
- mov ebp,esi
- xor edx,DWORD [48+esp]
- xor ebp,eax
- xor edx,DWORD [8+esp]
- xor ebp,ebx
- xor edx,DWORD [28+esp]
- rol edx,1
- add ecx,ebp
- ror esi,2
- mov ebp,edi
- rol ebp,5
- mov DWORD [40+esp],edx
- lea edx,[1859775393+ecx*1+edx]
- mov ecx,DWORD [44+esp]
- add edx,ebp
- ; 20_39 27
- mov ebp,edi
- xor ecx,DWORD [52+esp]
- xor ebp,esi
- xor ecx,DWORD [12+esp]
- xor ebp,eax
- xor ecx,DWORD [32+esp]
- rol ecx,1
- add ebx,ebp
- ror edi,2
- mov ebp,edx
- rol ebp,5
- mov DWORD [44+esp],ecx
- lea ecx,[1859775393+ebx*1+ecx]
- mov ebx,DWORD [48+esp]
- add ecx,ebp
- ; 20_39 28
- mov ebp,edx
- xor ebx,DWORD [56+esp]
- xor ebp,edi
- xor ebx,DWORD [16+esp]
- xor ebp,esi
- xor ebx,DWORD [36+esp]
- rol ebx,1
- add eax,ebp
- ror edx,2
- mov ebp,ecx
- rol ebp,5
- mov DWORD [48+esp],ebx
- lea ebx,[1859775393+eax*1+ebx]
- mov eax,DWORD [52+esp]
- add ebx,ebp
- ; 20_39 29
- mov ebp,ecx
- xor eax,DWORD [60+esp]
- xor ebp,edx
- xor eax,DWORD [20+esp]
- xor ebp,edi
- xor eax,DWORD [40+esp]
- rol eax,1
- add esi,ebp
- ror ecx,2
- mov ebp,ebx
- rol ebp,5
- mov DWORD [52+esp],eax
- lea eax,[1859775393+esi*1+eax]
- mov esi,DWORD [56+esp]
- add eax,ebp
- ; 20_39 30
- mov ebp,ebx
- xor esi,DWORD [esp]
- xor ebp,ecx
- xor esi,DWORD [24+esp]
- xor ebp,edx
- xor esi,DWORD [44+esp]
- rol esi,1
- add edi,ebp
- ror ebx,2
- mov ebp,eax
- rol ebp,5
- mov DWORD [56+esp],esi
- lea esi,[1859775393+edi*1+esi]
- mov edi,DWORD [60+esp]
- add esi,ebp
- ; 20_39 31
- mov ebp,eax
- xor edi,DWORD [4+esp]
- xor ebp,ebx
- xor edi,DWORD [28+esp]
- xor ebp,ecx
- xor edi,DWORD [48+esp]
- rol edi,1
- add edx,ebp
- ror eax,2
- mov ebp,esi
- rol ebp,5
- mov DWORD [60+esp],edi
- lea edi,[1859775393+edx*1+edi]
- mov edx,DWORD [esp]
- add edi,ebp
- ; 20_39 32
- mov ebp,esi
- xor edx,DWORD [8+esp]
- xor ebp,eax
- xor edx,DWORD [32+esp]
- xor ebp,ebx
- xor edx,DWORD [52+esp]
- rol edx,1
- add ecx,ebp
- ror esi,2
- mov ebp,edi
- rol ebp,5
- mov DWORD [esp],edx
- lea edx,[1859775393+ecx*1+edx]
- mov ecx,DWORD [4+esp]
- add edx,ebp
- ; 20_39 33
- mov ebp,edi
- xor ecx,DWORD [12+esp]
- xor ebp,esi
- xor ecx,DWORD [36+esp]
- xor ebp,eax
- xor ecx,DWORD [56+esp]
- rol ecx,1
- add ebx,ebp
- ror edi,2
- mov ebp,edx
- rol ebp,5
- mov DWORD [4+esp],ecx
- lea ecx,[1859775393+ebx*1+ecx]
- mov ebx,DWORD [8+esp]
- add ecx,ebp
- ; 20_39 34
- mov ebp,edx
- xor ebx,DWORD [16+esp]
- xor ebp,edi
- xor ebx,DWORD [40+esp]
- xor ebp,esi
- xor ebx,DWORD [60+esp]
- rol ebx,1
- add eax,ebp
- ror edx,2
- mov ebp,ecx
- rol ebp,5
- mov DWORD [8+esp],ebx
- lea ebx,[1859775393+eax*1+ebx]
- mov eax,DWORD [12+esp]
- add ebx,ebp
- ; 20_39 35
- mov ebp,ecx
- xor eax,DWORD [20+esp]
- xor ebp,edx
- xor eax,DWORD [44+esp]
- xor ebp,edi
- xor eax,DWORD [esp]
- rol eax,1
- add esi,ebp
- ror ecx,2
- mov ebp,ebx
- rol ebp,5
- mov DWORD [12+esp],eax
- lea eax,[1859775393+esi*1+eax]
- mov esi,DWORD [16+esp]
- add eax,ebp
- ; 20_39 36
- mov ebp,ebx
- xor esi,DWORD [24+esp]
- xor ebp,ecx
- xor esi,DWORD [48+esp]
- xor ebp,edx
- xor esi,DWORD [4+esp]
- rol esi,1
- add edi,ebp
- ror ebx,2
- mov ebp,eax
- rol ebp,5
- mov DWORD [16+esp],esi
- lea esi,[1859775393+edi*1+esi]
- mov edi,DWORD [20+esp]
- add esi,ebp
- ; 20_39 37
- mov ebp,eax
- xor edi,DWORD [28+esp]
- xor ebp,ebx
- xor edi,DWORD [52+esp]
- xor ebp,ecx
- xor edi,DWORD [8+esp]
- rol edi,1
- add edx,ebp
- ror eax,2
- mov ebp,esi
- rol ebp,5
- mov DWORD [20+esp],edi
- lea edi,[1859775393+edx*1+edi]
- mov edx,DWORD [24+esp]
- add edi,ebp
- ; 20_39 38
- mov ebp,esi
- xor edx,DWORD [32+esp]
- xor ebp,eax
- xor edx,DWORD [56+esp]
- xor ebp,ebx
- xor edx,DWORD [12+esp]
- rol edx,1
- add ecx,ebp
- ror esi,2
- mov ebp,edi
- rol ebp,5
- mov DWORD [24+esp],edx
- lea edx,[1859775393+ecx*1+edx]
- mov ecx,DWORD [28+esp]
- add edx,ebp
- ; 20_39 39
- mov ebp,edi
- xor ecx,DWORD [36+esp]
- xor ebp,esi
- xor ecx,DWORD [60+esp]
- xor ebp,eax
- xor ecx,DWORD [16+esp]
- rol ecx,1
- add ebx,ebp
- ror edi,2
- mov ebp,edx
- rol ebp,5
- mov DWORD [28+esp],ecx
- lea ecx,[1859775393+ebx*1+ecx]
- mov ebx,DWORD [32+esp]
- add ecx,ebp
- ; 40_59 40
- mov ebp,edi
- xor ebx,DWORD [40+esp]
- xor ebp,esi
- xor ebx,DWORD [esp]
- and ebp,edx
- xor ebx,DWORD [20+esp]
- rol ebx,1
- add ebp,eax
- ror edx,2
- mov eax,ecx
- rol eax,5
- mov DWORD [32+esp],ebx
- lea ebx,[2400959708+ebp*1+ebx]
- mov ebp,edi
- add ebx,eax
- and ebp,esi
- mov eax,DWORD [36+esp]
- add ebx,ebp
- ; 40_59 41
- mov ebp,edx
- xor eax,DWORD [44+esp]
- xor ebp,edi
- xor eax,DWORD [4+esp]
- and ebp,ecx
- xor eax,DWORD [24+esp]
- rol eax,1
- add ebp,esi
- ror ecx,2
- mov esi,ebx
- rol esi,5
- mov DWORD [36+esp],eax
- lea eax,[2400959708+ebp*1+eax]
- mov ebp,edx
- add eax,esi
- and ebp,edi
- mov esi,DWORD [40+esp]
- add eax,ebp
- ; 40_59 42
- mov ebp,ecx
- xor esi,DWORD [48+esp]
- xor ebp,edx
- xor esi,DWORD [8+esp]
- and ebp,ebx
- xor esi,DWORD [28+esp]
- rol esi,1
- add ebp,edi
- ror ebx,2
- mov edi,eax
- rol edi,5
- mov DWORD [40+esp],esi
- lea esi,[2400959708+ebp*1+esi]
- mov ebp,ecx
- add esi,edi
- and ebp,edx
- mov edi,DWORD [44+esp]
- add esi,ebp
- ; 40_59 43
- mov ebp,ebx
- xor edi,DWORD [52+esp]
- xor ebp,ecx
- xor edi,DWORD [12+esp]
- and ebp,eax
- xor edi,DWORD [32+esp]
- rol edi,1
- add ebp,edx
- ror eax,2
- mov edx,esi
- rol edx,5
- mov DWORD [44+esp],edi
- lea edi,[2400959708+ebp*1+edi]
- mov ebp,ebx
- add edi,edx
- and ebp,ecx
- mov edx,DWORD [48+esp]
- add edi,ebp
- ; 40_59 44
- mov ebp,eax
- xor edx,DWORD [56+esp]
- xor ebp,ebx
- xor edx,DWORD [16+esp]
- and ebp,esi
- xor edx,DWORD [36+esp]
- rol edx,1
- add ebp,ecx
- ror esi,2
- mov ecx,edi
- rol ecx,5
- mov DWORD [48+esp],edx
- lea edx,[2400959708+ebp*1+edx]
- mov ebp,eax
- add edx,ecx
- and ebp,ebx
- mov ecx,DWORD [52+esp]
- add edx,ebp
- ; 40_59 45
- mov ebp,esi
- xor ecx,DWORD [60+esp]
- xor ebp,eax
- xor ecx,DWORD [20+esp]
- and ebp,edi
- xor ecx,DWORD [40+esp]
- rol ecx,1
- add ebp,ebx
- ror edi,2
- mov ebx,edx
- rol ebx,5
- mov DWORD [52+esp],ecx
- lea ecx,[2400959708+ebp*1+ecx]
- mov ebp,esi
- add ecx,ebx
- and ebp,eax
- mov ebx,DWORD [56+esp]
- add ecx,ebp
- ; 40_59 46
- mov ebp,edi
- xor ebx,DWORD [esp]
- xor ebp,esi
- xor ebx,DWORD [24+esp]
- and ebp,edx
- xor ebx,DWORD [44+esp]
- rol ebx,1
- add ebp,eax
- ror edx,2
- mov eax,ecx
- rol eax,5
- mov DWORD [56+esp],ebx
- lea ebx,[2400959708+ebp*1+ebx]
- mov ebp,edi
- add ebx,eax
- and ebp,esi
- mov eax,DWORD [60+esp]
- add ebx,ebp
- ; 40_59 47
- mov ebp,edx
- xor eax,DWORD [4+esp]
- xor ebp,edi
- xor eax,DWORD [28+esp]
- and ebp,ecx
- xor eax,DWORD [48+esp]
- rol eax,1
- add ebp,esi
- ror ecx,2
- mov esi,ebx
- rol esi,5
- mov DWORD [60+esp],eax
- lea eax,[2400959708+ebp*1+eax]
- mov ebp,edx
- add eax,esi
- and ebp,edi
- mov esi,DWORD [esp]
- add eax,ebp
- ; 40_59 48
- mov ebp,ecx
- xor esi,DWORD [8+esp]
- xor ebp,edx
- xor esi,DWORD [32+esp]
- and ebp,ebx
- xor esi,DWORD [52+esp]
- rol esi,1
- add ebp,edi
- ror ebx,2
- mov edi,eax
- rol edi,5
- mov DWORD [esp],esi
- lea esi,[2400959708+ebp*1+esi]
- mov ebp,ecx
- add esi,edi
- and ebp,edx
- mov edi,DWORD [4+esp]
- add esi,ebp
- ; 40_59 49
- mov ebp,ebx
- xor edi,DWORD [12+esp]
- xor ebp,ecx
- xor edi,DWORD [36+esp]
- and ebp,eax
- xor edi,DWORD [56+esp]
- rol edi,1
- add ebp,edx
- ror eax,2
- mov edx,esi
- rol edx,5
- mov DWORD [4+esp],edi
- lea edi,[2400959708+ebp*1+edi]
- mov ebp,ebx
- add edi,edx
- and ebp,ecx
- mov edx,DWORD [8+esp]
- add edi,ebp
- ; 40_59 50
- mov ebp,eax
- xor edx,DWORD [16+esp]
- xor ebp,ebx
- xor edx,DWORD [40+esp]
- and ebp,esi
- xor edx,DWORD [60+esp]
- rol edx,1
- add ebp,ecx
- ror esi,2
- mov ecx,edi
- rol ecx,5
- mov DWORD [8+esp],edx
- lea edx,[2400959708+ebp*1+edx]
- mov ebp,eax
- add edx,ecx
- and ebp,ebx
- mov ecx,DWORD [12+esp]
- add edx,ebp
- ; 40_59 51
- mov ebp,esi
- xor ecx,DWORD [20+esp]
- xor ebp,eax
- xor ecx,DWORD [44+esp]
- and ebp,edi
- xor ecx,DWORD [esp]
- rol ecx,1
- add ebp,ebx
- ror edi,2
- mov ebx,edx
- rol ebx,5
- mov DWORD [12+esp],ecx
- lea ecx,[2400959708+ebp*1+ecx]
- mov ebp,esi
- add ecx,ebx
- and ebp,eax
- mov ebx,DWORD [16+esp]
- add ecx,ebp
- ; 40_59 52
- mov ebp,edi
- xor ebx,DWORD [24+esp]
- xor ebp,esi
- xor ebx,DWORD [48+esp]
- and ebp,edx
- xor ebx,DWORD [4+esp]
- rol ebx,1
- add ebp,eax
- ror edx,2
- mov eax,ecx
- rol eax,5
- mov DWORD [16+esp],ebx
- lea ebx,[2400959708+ebp*1+ebx]
- mov ebp,edi
- add ebx,eax
- and ebp,esi
- mov eax,DWORD [20+esp]
- add ebx,ebp
- ; 40_59 53
- mov ebp,edx
- xor eax,DWORD [28+esp]
- xor ebp,edi
- xor eax,DWORD [52+esp]
- and ebp,ecx
- xor eax,DWORD [8+esp]
- rol eax,1
- add ebp,esi
- ror ecx,2
- mov esi,ebx
- rol esi,5
- mov DWORD [20+esp],eax
- lea eax,[2400959708+ebp*1+eax]
- mov ebp,edx
- add eax,esi
- and ebp,edi
- mov esi,DWORD [24+esp]
- add eax,ebp
- ; 40_59 54
- mov ebp,ecx
- xor esi,DWORD [32+esp]
- xor ebp,edx
- xor esi,DWORD [56+esp]
- and ebp,ebx
- xor esi,DWORD [12+esp]
- rol esi,1
- add ebp,edi
- ror ebx,2
- mov edi,eax
- rol edi,5
- mov DWORD [24+esp],esi
- lea esi,[2400959708+ebp*1+esi]
- mov ebp,ecx
- add esi,edi
- and ebp,edx
- mov edi,DWORD [28+esp]
- add esi,ebp
- ; 40_59 55
- mov ebp,ebx
- xor edi,DWORD [36+esp]
- xor ebp,ecx
- xor edi,DWORD [60+esp]
- and ebp,eax
- xor edi,DWORD [16+esp]
- rol edi,1
- add ebp,edx
- ror eax,2
- mov edx,esi
- rol edx,5
- mov DWORD [28+esp],edi
- lea edi,[2400959708+ebp*1+edi]
- mov ebp,ebx
- add edi,edx
- and ebp,ecx
- mov edx,DWORD [32+esp]
- add edi,ebp
- ; 40_59 56
- mov ebp,eax
- xor edx,DWORD [40+esp]
- xor ebp,ebx
- xor edx,DWORD [esp]
- and ebp,esi
- xor edx,DWORD [20+esp]
- rol edx,1
- add ebp,ecx
- ror esi,2
- mov ecx,edi
- rol ecx,5
- mov DWORD [32+esp],edx
- lea edx,[2400959708+ebp*1+edx]
- mov ebp,eax
- add edx,ecx
- and ebp,ebx
- mov ecx,DWORD [36+esp]
- add edx,ebp
- ; 40_59 57
- mov ebp,esi
- xor ecx,DWORD [44+esp]
- xor ebp,eax
- xor ecx,DWORD [4+esp]
- and ebp,edi
- xor ecx,DWORD [24+esp]
- rol ecx,1
- add ebp,ebx
- ror edi,2
- mov ebx,edx
- rol ebx,5
- mov DWORD [36+esp],ecx
- lea ecx,[2400959708+ebp*1+ecx]
- mov ebp,esi
- add ecx,ebx
- and ebp,eax
- mov ebx,DWORD [40+esp]
- add ecx,ebp
- ; 40_59 58
- mov ebp,edi
- xor ebx,DWORD [48+esp]
- xor ebp,esi
- xor ebx,DWORD [8+esp]
- and ebp,edx
- xor ebx,DWORD [28+esp]
- rol ebx,1
- add ebp,eax
- ror edx,2
- mov eax,ecx
- rol eax,5
- mov DWORD [40+esp],ebx
- lea ebx,[2400959708+ebp*1+ebx]
- mov ebp,edi
- add ebx,eax
- and ebp,esi
- mov eax,DWORD [44+esp]
- add ebx,ebp
- ; 40_59 59
- mov ebp,edx
- xor eax,DWORD [52+esp]
- xor ebp,edi
- xor eax,DWORD [12+esp]
- and ebp,ecx
- xor eax,DWORD [32+esp]
- rol eax,1
- add ebp,esi
- ror ecx,2
- mov esi,ebx
- rol esi,5
- mov DWORD [44+esp],eax
- lea eax,[2400959708+ebp*1+eax]
- mov ebp,edx
- add eax,esi
- and ebp,edi
- mov esi,DWORD [48+esp]
- add eax,ebp
- ; 20_39 60
- mov ebp,ebx
- xor esi,DWORD [56+esp]
- xor ebp,ecx
- xor esi,DWORD [16+esp]
- xor ebp,edx
- xor esi,DWORD [36+esp]
- rol esi,1
- add edi,ebp
- ror ebx,2
- mov ebp,eax
- rol ebp,5
- mov DWORD [48+esp],esi
- lea esi,[3395469782+edi*1+esi]
- mov edi,DWORD [52+esp]
- add esi,ebp
- ; 20_39 61
- mov ebp,eax
- xor edi,DWORD [60+esp]
- xor ebp,ebx
- xor edi,DWORD [20+esp]
- xor ebp,ecx
- xor edi,DWORD [40+esp]
- rol edi,1
- add edx,ebp
- ror eax,2
- mov ebp,esi
- rol ebp,5
- mov DWORD [52+esp],edi
- lea edi,[3395469782+edx*1+edi]
- mov edx,DWORD [56+esp]
- add edi,ebp
- ; 20_39 62
- mov ebp,esi
- xor edx,DWORD [esp]
- xor ebp,eax
- xor edx,DWORD [24+esp]
- xor ebp,ebx
- xor edx,DWORD [44+esp]
- rol edx,1
- add ecx,ebp
- ror esi,2
- mov ebp,edi
- rol ebp,5
- mov DWORD [56+esp],edx
- lea edx,[3395469782+ecx*1+edx]
- mov ecx,DWORD [60+esp]
- add edx,ebp
- ; 20_39 63
- mov ebp,edi
- xor ecx,DWORD [4+esp]
- xor ebp,esi
- xor ecx,DWORD [28+esp]
- xor ebp,eax
- xor ecx,DWORD [48+esp]
- rol ecx,1
- add ebx,ebp
- ror edi,2
- mov ebp,edx
- rol ebp,5
- mov DWORD [60+esp],ecx
- lea ecx,[3395469782+ebx*1+ecx]
- mov ebx,DWORD [esp]
- add ecx,ebp
- ; 20_39 64
- mov ebp,edx
- xor ebx,DWORD [8+esp]
- xor ebp,edi
- xor ebx,DWORD [32+esp]
- xor ebp,esi
- xor ebx,DWORD [52+esp]
- rol ebx,1
- add eax,ebp
- ror edx,2
- mov ebp,ecx
- rol ebp,5
- mov DWORD [esp],ebx
- lea ebx,[3395469782+eax*1+ebx]
- mov eax,DWORD [4+esp]
- add ebx,ebp
- ; 20_39 65
- mov ebp,ecx
- xor eax,DWORD [12+esp]
- xor ebp,edx
- xor eax,DWORD [36+esp]
- xor ebp,edi
- xor eax,DWORD [56+esp]
- rol eax,1
- add esi,ebp
- ror ecx,2
- mov ebp,ebx
- rol ebp,5
- mov DWORD [4+esp],eax
- lea eax,[3395469782+esi*1+eax]
- mov esi,DWORD [8+esp]
- add eax,ebp
- ; 20_39 66
- mov ebp,ebx
- xor esi,DWORD [16+esp]
- xor ebp,ecx
- xor esi,DWORD [40+esp]
- xor ebp,edx
- xor esi,DWORD [60+esp]
- rol esi,1
- add edi,ebp
- ror ebx,2
- mov ebp,eax
- rol ebp,5
- mov DWORD [8+esp],esi
- lea esi,[3395469782+edi*1+esi]
- mov edi,DWORD [12+esp]
- add esi,ebp
- ; 20_39 67
- mov ebp,eax
- xor edi,DWORD [20+esp]
- xor ebp,ebx
- xor edi,DWORD [44+esp]
- xor ebp,ecx
- xor edi,DWORD [esp]
- rol edi,1
- add edx,ebp
- ror eax,2
- mov ebp,esi
- rol ebp,5
- mov DWORD [12+esp],edi
- lea edi,[3395469782+edx*1+edi]
- mov edx,DWORD [16+esp]
- add edi,ebp
- ; 20_39 68
- mov ebp,esi
- xor edx,DWORD [24+esp]
- xor ebp,eax
- xor edx,DWORD [48+esp]
- xor ebp,ebx
- xor edx,DWORD [4+esp]
- rol edx,1
- add ecx,ebp
- ror esi,2
- mov ebp,edi
- rol ebp,5
- mov DWORD [16+esp],edx
- lea edx,[3395469782+ecx*1+edx]
- mov ecx,DWORD [20+esp]
- add edx,ebp
- ; 20_39 69
- mov ebp,edi
- xor ecx,DWORD [28+esp]
- xor ebp,esi
- xor ecx,DWORD [52+esp]
- xor ebp,eax
- xor ecx,DWORD [8+esp]
- rol ecx,1
- add ebx,ebp
- ror edi,2
- mov ebp,edx
- rol ebp,5
- mov DWORD [20+esp],ecx
- lea ecx,[3395469782+ebx*1+ecx]
- mov ebx,DWORD [24+esp]
- add ecx,ebp
- ; 20_39 70
- mov ebp,edx
- xor ebx,DWORD [32+esp]
- xor ebp,edi
- xor ebx,DWORD [56+esp]
- xor ebp,esi
- xor ebx,DWORD [12+esp]
- rol ebx,1
- add eax,ebp
- ror edx,2
- mov ebp,ecx
- rol ebp,5
- mov DWORD [24+esp],ebx
- lea ebx,[3395469782+eax*1+ebx]
- mov eax,DWORD [28+esp]
- add ebx,ebp
- ; 20_39 71
- mov ebp,ecx
- xor eax,DWORD [36+esp]
- xor ebp,edx
- xor eax,DWORD [60+esp]
- xor ebp,edi
- xor eax,DWORD [16+esp]
- rol eax,1
- add esi,ebp
- ror ecx,2
- mov ebp,ebx
- rol ebp,5
- mov DWORD [28+esp],eax
- lea eax,[3395469782+esi*1+eax]
- mov esi,DWORD [32+esp]
- add eax,ebp
- ; 20_39 72
- mov ebp,ebx
- xor esi,DWORD [40+esp]
- xor ebp,ecx
- xor esi,DWORD [esp]
- xor ebp,edx
- xor esi,DWORD [20+esp]
- rol esi,1
- add edi,ebp
- ror ebx,2
- mov ebp,eax
- rol ebp,5
- mov DWORD [32+esp],esi
- lea esi,[3395469782+edi*1+esi]
- mov edi,DWORD [36+esp]
- add esi,ebp
- ; 20_39 73
- mov ebp,eax
- xor edi,DWORD [44+esp]
- xor ebp,ebx
- xor edi,DWORD [4+esp]
- xor ebp,ecx
- xor edi,DWORD [24+esp]
- rol edi,1
- add edx,ebp
- ror eax,2
- mov ebp,esi
- rol ebp,5
- mov DWORD [36+esp],edi
- lea edi,[3395469782+edx*1+edi]
- mov edx,DWORD [40+esp]
- add edi,ebp
- ; 20_39 74
- mov ebp,esi
- xor edx,DWORD [48+esp]
- xor ebp,eax
- xor edx,DWORD [8+esp]
- xor ebp,ebx
- xor edx,DWORD [28+esp]
- rol edx,1
- add ecx,ebp
- ror esi,2
- mov ebp,edi
- rol ebp,5
- mov DWORD [40+esp],edx
- lea edx,[3395469782+ecx*1+edx]
- mov ecx,DWORD [44+esp]
- add edx,ebp
- ; 20_39 75
- mov ebp,edi
- xor ecx,DWORD [52+esp]
- xor ebp,esi
- xor ecx,DWORD [12+esp]
- xor ebp,eax
- xor ecx,DWORD [32+esp]
- rol ecx,1
- add ebx,ebp
- ror edi,2
- mov ebp,edx
- rol ebp,5
- mov DWORD [44+esp],ecx
- lea ecx,[3395469782+ebx*1+ecx]
- mov ebx,DWORD [48+esp]
- add ecx,ebp
- ; 20_39 76
- mov ebp,edx
- xor ebx,DWORD [56+esp]
- xor ebp,edi
- xor ebx,DWORD [16+esp]
- xor ebp,esi
- xor ebx,DWORD [36+esp]
- rol ebx,1
- add eax,ebp
- ror edx,2
- mov ebp,ecx
- rol ebp,5
- mov DWORD [48+esp],ebx
- lea ebx,[3395469782+eax*1+ebx]
- mov eax,DWORD [52+esp]
- add ebx,ebp
- ; 20_39 77
- mov ebp,ecx
- xor eax,DWORD [60+esp]
- xor ebp,edx
- xor eax,DWORD [20+esp]
- xor ebp,edi
- xor eax,DWORD [40+esp]
- rol eax,1
- add esi,ebp
- ror ecx,2
- mov ebp,ebx
- rol ebp,5
- lea eax,[3395469782+esi*1+eax]
- mov esi,DWORD [56+esp]
- add eax,ebp
- ; 20_39 78
- mov ebp,ebx
- xor esi,DWORD [esp]
- xor ebp,ecx
- xor esi,DWORD [24+esp]
- xor ebp,edx
- xor esi,DWORD [44+esp]
- rol esi,1
- add edi,ebp
- ror ebx,2
- mov ebp,eax
- rol ebp,5
- lea esi,[3395469782+edi*1+esi]
- mov edi,DWORD [60+esp]
- add esi,ebp
- ; 20_39 79
- mov ebp,eax
- xor edi,DWORD [4+esp]
- xor ebp,ebx
- xor edi,DWORD [28+esp]
- xor ebp,ecx
- xor edi,DWORD [48+esp]
- rol edi,1
- add edx,ebp
- ror eax,2
- mov ebp,esi
- rol ebp,5
- lea edi,[3395469782+edx*1+edi]
- add edi,ebp
- mov ebp,DWORD [96+esp]
- mov edx,DWORD [100+esp]
- add edi,DWORD [ebp]
- add esi,DWORD [4+ebp]
- add eax,DWORD [8+ebp]
- add ebx,DWORD [12+ebp]
- add ecx,DWORD [16+ebp]
- mov DWORD [ebp],edi
- add edx,64
- mov DWORD [4+ebp],esi
- cmp edx,DWORD [104+esp]
- mov DWORD [8+ebp],eax
- mov edi,ecx
- mov DWORD [12+ebp],ebx
- mov esi,edx
- mov DWORD [16+ebp],ecx
- jb NEAR L$002loop
- add esp,76
- pop edi
- pop esi
- pop ebx
- pop ebp
- ret
-align 16
-__sha1_block_data_order_ssse3:
- push ebp
- push ebx
- push esi
- push edi
- call L$003pic_point
-L$003pic_point:
- pop ebp
- lea ebp,[(L$K_XX_XX-L$003pic_point)+ebp]
-L$ssse3_shortcut:
- movdqa xmm7,[ebp]
- movdqa xmm0,[16+ebp]
- movdqa xmm1,[32+ebp]
- movdqa xmm2,[48+ebp]
- movdqa xmm6,[64+ebp]
- mov edi,DWORD [20+esp]
- mov ebp,DWORD [24+esp]
- mov edx,DWORD [28+esp]
- mov esi,esp
- sub esp,208
- and esp,-64
- movdqa [112+esp],xmm0
- movdqa [128+esp],xmm1
- movdqa [144+esp],xmm2
- shl edx,6
- movdqa [160+esp],xmm7
- add edx,ebp
- movdqa [176+esp],xmm6
- add ebp,64
- mov DWORD [192+esp],edi
- mov DWORD [196+esp],ebp
- mov DWORD [200+esp],edx
- mov DWORD [204+esp],esi
- mov eax,DWORD [edi]
- mov ebx,DWORD [4+edi]
- mov ecx,DWORD [8+edi]
- mov edx,DWORD [12+edi]
- mov edi,DWORD [16+edi]
- mov esi,ebx
- movdqu xmm0,[ebp-64]
- movdqu xmm1,[ebp-48]
- movdqu xmm2,[ebp-32]
- movdqu xmm3,[ebp-16]
-db 102,15,56,0,198
-db 102,15,56,0,206
-db 102,15,56,0,214
- movdqa [96+esp],xmm7
-db 102,15,56,0,222
- paddd xmm0,xmm7
- paddd xmm1,xmm7
- paddd xmm2,xmm7
- movdqa [esp],xmm0
- psubd xmm0,xmm7
- movdqa [16+esp],xmm1
- psubd xmm1,xmm7
- movdqa [32+esp],xmm2
- mov ebp,ecx
- psubd xmm2,xmm7
- xor ebp,edx
- pshufd xmm4,xmm0,238
- and esi,ebp
- jmp NEAR L$004loop
-align 16
-L$004loop:
- ror ebx,2
- xor esi,edx
- mov ebp,eax
- punpcklqdq xmm4,xmm1
- movdqa xmm6,xmm3
- add edi,DWORD [esp]
- xor ebx,ecx
- paddd xmm7,xmm3
- movdqa [64+esp],xmm0
- rol eax,5
- add edi,esi
- psrldq xmm6,4
- and ebp,ebx
- xor ebx,ecx
- pxor xmm4,xmm0
- add edi,eax
- ror eax,7
- pxor xmm6,xmm2
- xor ebp,ecx
- mov esi,edi
- add edx,DWORD [4+esp]
- pxor xmm4,xmm6
- xor eax,ebx
- rol edi,5
- movdqa [48+esp],xmm7
- add edx,ebp
- and esi,eax
- movdqa xmm0,xmm4
- xor eax,ebx
- add edx,edi
- ror edi,7
- movdqa xmm6,xmm4
- xor esi,ebx
- pslldq xmm0,12
- paddd xmm4,xmm4
- mov ebp,edx
- add ecx,DWORD [8+esp]
- psrld xmm6,31
- xor edi,eax
- rol edx,5
- movdqa xmm7,xmm0
- add ecx,esi
- and ebp,edi
- xor edi,eax
- psrld xmm0,30
- add ecx,edx
- ror edx,7
- por xmm4,xmm6
- xor ebp,eax
- mov esi,ecx
- add ebx,DWORD [12+esp]
- pslld xmm7,2
- xor edx,edi
- rol ecx,5
- pxor xmm4,xmm0
- movdqa xmm0,[96+esp]
- add ebx,ebp
- and esi,edx
- pxor xmm4,xmm7
- pshufd xmm5,xmm1,238
- xor edx,edi
- add ebx,ecx
- ror ecx,7
- xor esi,edi
- mov ebp,ebx
- punpcklqdq xmm5,xmm2
- movdqa xmm7,xmm4
- add eax,DWORD [16+esp]
- xor ecx,edx
- paddd xmm0,xmm4
- movdqa [80+esp],xmm1
- rol ebx,5
- add eax,esi
- psrldq xmm7,4
- and ebp,ecx
- xor ecx,edx
- pxor xmm5,xmm1
- add eax,ebx
- ror ebx,7
- pxor xmm7,xmm3
- xor ebp,edx
- mov esi,eax
- add edi,DWORD [20+esp]
- pxor xmm5,xmm7
- xor ebx,ecx
- rol eax,5
- movdqa [esp],xmm0
- add edi,ebp
- and esi,ebx
- movdqa xmm1,xmm5
- xor ebx,ecx
- add edi,eax
- ror eax,7
- movdqa xmm7,xmm5
- xor esi,ecx
- pslldq xmm1,12
- paddd xmm5,xmm5
- mov ebp,edi
- add edx,DWORD [24+esp]
- psrld xmm7,31
- xor eax,ebx
- rol edi,5
- movdqa xmm0,xmm1
- add edx,esi
- and ebp,eax
- xor eax,ebx
- psrld xmm1,30
- add edx,edi
- ror edi,7
- por xmm5,xmm7
- xor ebp,ebx
- mov esi,edx
- add ecx,DWORD [28+esp]
- pslld xmm0,2
- xor edi,eax
- rol edx,5
- pxor xmm5,xmm1
- movdqa xmm1,[112+esp]
- add ecx,ebp
- and esi,edi
- pxor xmm5,xmm0
- pshufd xmm6,xmm2,238
- xor edi,eax
- add ecx,edx
- ror edx,7
- xor esi,eax
- mov ebp,ecx
- punpcklqdq xmm6,xmm3
- movdqa xmm0,xmm5
- add ebx,DWORD [32+esp]
- xor edx,edi
- paddd xmm1,xmm5
- movdqa [96+esp],xmm2
- rol ecx,5
- add ebx,esi
- psrldq xmm0,4
- and ebp,edx
- xor edx,edi
- pxor xmm6,xmm2
- add ebx,ecx
- ror ecx,7
- pxor xmm0,xmm4
- xor ebp,edi
- mov esi,ebx
- add eax,DWORD [36+esp]
- pxor xmm6,xmm0
- xor ecx,edx
- rol ebx,5
- movdqa [16+esp],xmm1
- add eax,ebp
- and esi,ecx
- movdqa xmm2,xmm6
- xor ecx,edx
- add eax,ebx
- ror ebx,7
- movdqa xmm0,xmm6
- xor esi,edx
- pslldq xmm2,12
- paddd xmm6,xmm6
- mov ebp,eax
- add edi,DWORD [40+esp]
- psrld xmm0,31
- xor ebx,ecx
- rol eax,5
- movdqa xmm1,xmm2
- add edi,esi
- and ebp,ebx
- xor ebx,ecx
- psrld xmm2,30
- add edi,eax
- ror eax,7
- por xmm6,xmm0
- xor ebp,ecx
- movdqa xmm0,[64+esp]
- mov esi,edi
- add edx,DWORD [44+esp]
- pslld xmm1,2
- xor eax,ebx
- rol edi,5
- pxor xmm6,xmm2
- movdqa xmm2,[112+esp]
- add edx,ebp
- and esi,eax
- pxor xmm6,xmm1
- pshufd xmm7,xmm3,238
- xor eax,ebx
- add edx,edi
- ror edi,7
- xor esi,ebx
- mov ebp,edx
- punpcklqdq xmm7,xmm4
- movdqa xmm1,xmm6
- add ecx,DWORD [48+esp]
- xor edi,eax
- paddd xmm2,xmm6
- movdqa [64+esp],xmm3
- rol edx,5
- add ecx,esi
- psrldq xmm1,4
- and ebp,edi
- xor edi,eax
- pxor xmm7,xmm3
- add ecx,edx
- ror edx,7
- pxor xmm1,xmm5
- xor ebp,eax
- mov esi,ecx
- add ebx,DWORD [52+esp]
- pxor xmm7,xmm1
- xor edx,edi
- rol ecx,5
- movdqa [32+esp],xmm2
- add ebx,ebp
- and esi,edx
- movdqa xmm3,xmm7
- xor edx,edi
- add ebx,ecx
- ror ecx,7
- movdqa xmm1,xmm7
- xor esi,edi
- pslldq xmm3,12
- paddd xmm7,xmm7
- mov ebp,ebx
- add eax,DWORD [56+esp]
- psrld xmm1,31
- xor ecx,edx
- rol ebx,5
- movdqa xmm2,xmm3
- add eax,esi
- and ebp,ecx
- xor ecx,edx
- psrld xmm3,30
- add eax,ebx
- ror ebx,7
- por xmm7,xmm1
- xor ebp,edx
- movdqa xmm1,[80+esp]
- mov esi,eax
- add edi,DWORD [60+esp]
- pslld xmm2,2
- xor ebx,ecx
- rol eax,5
- pxor xmm7,xmm3
- movdqa xmm3,[112+esp]
- add edi,ebp
- and esi,ebx
- pxor xmm7,xmm2
- pshufd xmm2,xmm6,238
- xor ebx,ecx
- add edi,eax
- ror eax,7
- pxor xmm0,xmm4
- punpcklqdq xmm2,xmm7
- xor esi,ecx
- mov ebp,edi
- add edx,DWORD [esp]
- pxor xmm0,xmm1
- movdqa [80+esp],xmm4
- xor eax,ebx
- rol edi,5
- movdqa xmm4,xmm3
- add edx,esi
- paddd xmm3,xmm7
- and ebp,eax
- pxor xmm0,xmm2
- xor eax,ebx
- add edx,edi
- ror edi,7
- xor ebp,ebx
- movdqa xmm2,xmm0
- movdqa [48+esp],xmm3
- mov esi,edx
- add ecx,DWORD [4+esp]
- xor edi,eax
- rol edx,5
- pslld xmm0,2
- add ecx,ebp
- and esi,edi
- psrld xmm2,30
- xor edi,eax
- add ecx,edx
- ror edx,7
- xor esi,eax
- mov ebp,ecx
- add ebx,DWORD [8+esp]
- xor edx,edi
- rol ecx,5
- por xmm0,xmm2
- add ebx,esi
- and ebp,edx
- movdqa xmm2,[96+esp]
- xor edx,edi
- add ebx,ecx
- add eax,DWORD [12+esp]
- xor ebp,edi
- mov esi,ebx
- pshufd xmm3,xmm7,238
- rol ebx,5
- add eax,ebp
- xor esi,edx
- ror ecx,7
- add eax,ebx
- add edi,DWORD [16+esp]
- pxor xmm1,xmm5
- punpcklqdq xmm3,xmm0
- xor esi,ecx
- mov ebp,eax
- rol eax,5
- pxor xmm1,xmm2
- movdqa [96+esp],xmm5
- add edi,esi
- xor ebp,ecx
- movdqa xmm5,xmm4
- ror ebx,7
- paddd xmm4,xmm0
- add edi,eax
- pxor xmm1,xmm3
- add edx,DWORD [20+esp]
- xor ebp,ebx
- mov esi,edi
- rol edi,5
- movdqa xmm3,xmm1
- movdqa [esp],xmm4
- add edx,ebp
- xor esi,ebx
- ror eax,7
- add edx,edi
- pslld xmm1,2
- add ecx,DWORD [24+esp]
- xor esi,eax
- psrld xmm3,30
- mov ebp,edx
- rol edx,5
- add ecx,esi
- xor ebp,eax
- ror edi,7
- add ecx,edx
- por xmm1,xmm3
- add ebx,DWORD [28+esp]
- xor ebp,edi
- movdqa xmm3,[64+esp]
- mov esi,ecx
- rol ecx,5
- add ebx,ebp
- xor esi,edi
- ror edx,7
- pshufd xmm4,xmm0,238
- add ebx,ecx
- add eax,DWORD [32+esp]
- pxor xmm2,xmm6
- punpcklqdq xmm4,xmm1
- xor esi,edx
- mov ebp,ebx
- rol ebx,5
- pxor xmm2,xmm3
- movdqa [64+esp],xmm6
- add eax,esi
- xor ebp,edx
- movdqa xmm6,[128+esp]
- ror ecx,7
- paddd xmm5,xmm1
- add eax,ebx
- pxor xmm2,xmm4
- add edi,DWORD [36+esp]
- xor ebp,ecx
- mov esi,eax
- rol eax,5
- movdqa xmm4,xmm2
- movdqa [16+esp],xmm5
- add edi,ebp
- xor esi,ecx
- ror ebx,7
- add edi,eax
- pslld xmm2,2
- add edx,DWORD [40+esp]
- xor esi,ebx
- psrld xmm4,30
- mov ebp,edi
- rol edi,5
- add edx,esi
- xor ebp,ebx
- ror eax,7
- add edx,edi
- por xmm2,xmm4
- add ecx,DWORD [44+esp]
- xor ebp,eax
- movdqa xmm4,[80+esp]
- mov esi,edx
- rol edx,5
- add ecx,ebp
- xor esi,eax
- ror edi,7
- pshufd xmm5,xmm1,238
- add ecx,edx
- add ebx,DWORD [48+esp]
- pxor xmm3,xmm7
- punpcklqdq xmm5,xmm2
- xor esi,edi
- mov ebp,ecx
- rol ecx,5
- pxor xmm3,xmm4
- movdqa [80+esp],xmm7
- add ebx,esi
- xor ebp,edi
- movdqa xmm7,xmm6
- ror edx,7
- paddd xmm6,xmm2
- add ebx,ecx
- pxor xmm3,xmm5
- add eax,DWORD [52+esp]
- xor ebp,edx
- mov esi,ebx
- rol ebx,5
- movdqa xmm5,xmm3
- movdqa [32+esp],xmm6
- add eax,ebp
- xor esi,edx
- ror ecx,7
- add eax,ebx
- pslld xmm3,2
- add edi,DWORD [56+esp]
- xor esi,ecx
- psrld xmm5,30
- mov ebp,eax
- rol eax,5
- add edi,esi
- xor ebp,ecx
- ror ebx,7
- add edi,eax
- por xmm3,xmm5
- add edx,DWORD [60+esp]
- xor ebp,ebx
- movdqa xmm5,[96+esp]
- mov esi,edi
- rol edi,5
- add edx,ebp
- xor esi,ebx
- ror eax,7
- pshufd xmm6,xmm2,238
- add edx,edi
- add ecx,DWORD [esp]
- pxor xmm4,xmm0
- punpcklqdq xmm6,xmm3
- xor esi,eax
- mov ebp,edx
- rol edx,5
- pxor xmm4,xmm5
- movdqa [96+esp],xmm0
- add ecx,esi
- xor ebp,eax
- movdqa xmm0,xmm7
- ror edi,7
- paddd xmm7,xmm3
- add ecx,edx
- pxor xmm4,xmm6
- add ebx,DWORD [4+esp]
- xor ebp,edi
- mov esi,ecx
- rol ecx,5
- movdqa xmm6,xmm4
- movdqa [48+esp],xmm7
- add ebx,ebp
- xor esi,edi
- ror edx,7
- add ebx,ecx
- pslld xmm4,2
- add eax,DWORD [8+esp]
- xor esi,edx
- psrld xmm6,30
- mov ebp,ebx
- rol ebx,5
- add eax,esi
- xor ebp,edx
- ror ecx,7
- add eax,ebx
- por xmm4,xmm6
- add edi,DWORD [12+esp]
- xor ebp,ecx
- movdqa xmm6,[64+esp]
- mov esi,eax
- rol eax,5
- add edi,ebp
- xor esi,ecx
- ror ebx,7
- pshufd xmm7,xmm3,238
- add edi,eax
- add edx,DWORD [16+esp]
- pxor xmm5,xmm1
- punpcklqdq xmm7,xmm4
- xor esi,ebx
- mov ebp,edi
- rol edi,5
- pxor xmm5,xmm6
- movdqa [64+esp],xmm1
- add edx,esi
- xor ebp,ebx
- movdqa xmm1,xmm0
- ror eax,7
- paddd xmm0,xmm4
- add edx,edi
- pxor xmm5,xmm7
- add ecx,DWORD [20+esp]
- xor ebp,eax
- mov esi,edx
- rol edx,5
- movdqa xmm7,xmm5
- movdqa [esp],xmm0
- add ecx,ebp
- xor esi,eax
- ror edi,7
- add ecx,edx
- pslld xmm5,2
- add ebx,DWORD [24+esp]
- xor esi,edi
- psrld xmm7,30
- mov ebp,ecx
- rol ecx,5
- add ebx,esi
- xor ebp,edi
- ror edx,7
- add ebx,ecx
- por xmm5,xmm7
- add eax,DWORD [28+esp]
- movdqa xmm7,[80+esp]
- ror ecx,7
- mov esi,ebx
- xor ebp,edx
- rol ebx,5
- pshufd xmm0,xmm4,238
- add eax,ebp
- xor esi,ecx
- xor ecx,edx
- add eax,ebx
- add edi,DWORD [32+esp]
- pxor xmm6,xmm2
- punpcklqdq xmm0,xmm5
- and esi,ecx
- xor ecx,edx
- ror ebx,7
- pxor xmm6,xmm7
- movdqa [80+esp],xmm2
- mov ebp,eax
- xor esi,ecx
- rol eax,5
- movdqa xmm2,xmm1
- add edi,esi
- paddd xmm1,xmm5
- xor ebp,ebx
- pxor xmm6,xmm0
- xor ebx,ecx
- add edi,eax
- add edx,DWORD [36+esp]
- and ebp,ebx
- movdqa xmm0,xmm6
- movdqa [16+esp],xmm1
- xor ebx,ecx
- ror eax,7
- mov esi,edi
- xor ebp,ebx
- rol edi,5
- pslld xmm6,2
- add edx,ebp
- xor esi,eax
- psrld xmm0,30
- xor eax,ebx
- add edx,edi
- add ecx,DWORD [40+esp]
- and esi,eax
- xor eax,ebx
- ror edi,7
- por xmm6,xmm0
- mov ebp,edx
- xor esi,eax
- movdqa xmm0,[96+esp]
- rol edx,5
- add ecx,esi
- xor ebp,edi
- xor edi,eax
- add ecx,edx
- pshufd xmm1,xmm5,238
- add ebx,DWORD [44+esp]
- and ebp,edi
- xor edi,eax
- ror edx,7
- mov esi,ecx
- xor ebp,edi
- rol ecx,5
- add ebx,ebp
- xor esi,edx
- xor edx,edi
- add ebx,ecx
- add eax,DWORD [48+esp]
- pxor xmm7,xmm3
- punpcklqdq xmm1,xmm6
- and esi,edx
- xor edx,edi
- ror ecx,7
- pxor xmm7,xmm0
- movdqa [96+esp],xmm3
- mov ebp,ebx
- xor esi,edx
- rol ebx,5
- movdqa xmm3,[144+esp]
- add eax,esi
- paddd xmm2,xmm6
- xor ebp,ecx
- pxor xmm7,xmm1
- xor ecx,edx
- add eax,ebx
- add edi,DWORD [52+esp]
- and ebp,ecx
- movdqa xmm1,xmm7
- movdqa [32+esp],xmm2
- xor ecx,edx
- ror ebx,7
- mov esi,eax
- xor ebp,ecx
- rol eax,5
- pslld xmm7,2
- add edi,ebp
- xor esi,ebx
- psrld xmm1,30
- xor ebx,ecx
- add edi,eax
- add edx,DWORD [56+esp]
- and esi,ebx
- xor ebx,ecx
- ror eax,7
- por xmm7,xmm1
- mov ebp,edi
- xor esi,ebx
- movdqa xmm1,[64+esp]
- rol edi,5
- add edx,esi
- xor ebp,eax
- xor eax,ebx
- add edx,edi
- pshufd xmm2,xmm6,238
- add ecx,DWORD [60+esp]
- and ebp,eax
- xor eax,ebx
- ror edi,7
- mov esi,edx
- xor ebp,eax
- rol edx,5
- add ecx,ebp
- xor esi,edi
- xor edi,eax
- add ecx,edx
- add ebx,DWORD [esp]
- pxor xmm0,xmm4
- punpcklqdq xmm2,xmm7
- and esi,edi
- xor edi,eax
- ror edx,7
- pxor xmm0,xmm1
- movdqa [64+esp],xmm4
- mov ebp,ecx
- xor esi,edi
- rol ecx,5
- movdqa xmm4,xmm3
- add ebx,esi
- paddd xmm3,xmm7
- xor ebp,edx
- pxor xmm0,xmm2
- xor edx,edi
- add ebx,ecx
- add eax,DWORD [4+esp]
- and ebp,edx
- movdqa xmm2,xmm0
- movdqa [48+esp],xmm3
- xor edx,edi
- ror ecx,7
- mov esi,ebx
- xor ebp,edx
- rol ebx,5
- pslld xmm0,2
- add eax,ebp
- xor esi,ecx
- psrld xmm2,30
- xor ecx,edx
- add eax,ebx
- add edi,DWORD [8+esp]
- and esi,ecx
- xor ecx,edx
- ror ebx,7
- por xmm0,xmm2
- mov ebp,eax
- xor esi,ecx
- movdqa xmm2,[80+esp]
- rol eax,5
- add edi,esi
- xor ebp,ebx
- xor ebx,ecx
- add edi,eax
- pshufd xmm3,xmm7,238
- add edx,DWORD [12+esp]
- and ebp,ebx
- xor ebx,ecx
- ror eax,7
- mov esi,edi
- xor ebp,ebx
- rol edi,5
- add edx,ebp
- xor esi,eax
- xor eax,ebx
- add edx,edi
- add ecx,DWORD [16+esp]
- pxor xmm1,xmm5
- punpcklqdq xmm3,xmm0
- and esi,eax
- xor eax,ebx
- ror edi,7
- pxor xmm1,xmm2
- movdqa [80+esp],xmm5
- mov ebp,edx
- xor esi,eax
- rol edx,5
- movdqa xmm5,xmm4
- add ecx,esi
- paddd xmm4,xmm0
- xor ebp,edi
- pxor xmm1,xmm3
- xor edi,eax
- add ecx,edx
- add ebx,DWORD [20+esp]
- and ebp,edi
- movdqa xmm3,xmm1
- movdqa [esp],xmm4
- xor edi,eax
- ror edx,7
- mov esi,ecx
- xor ebp,edi
- rol ecx,5
- pslld xmm1,2
- add ebx,ebp
- xor esi,edx
- psrld xmm3,30
- xor edx,edi
- add ebx,ecx
- add eax,DWORD [24+esp]
- and esi,edx
- xor edx,edi
- ror ecx,7
- por xmm1,xmm3
- mov ebp,ebx
- xor esi,edx
- movdqa xmm3,[96+esp]
- rol ebx,5
- add eax,esi
- xor ebp,ecx
- xor ecx,edx
- add eax,ebx
- pshufd xmm4,xmm0,238
- add edi,DWORD [28+esp]
- and ebp,ecx
- xor ecx,edx
- ror ebx,7
- mov esi,eax
- xor ebp,ecx
- rol eax,5
- add edi,ebp
- xor esi,ebx
- xor ebx,ecx
- add edi,eax
- add edx,DWORD [32+esp]
- pxor xmm2,xmm6
- punpcklqdq xmm4,xmm1
- and esi,ebx
- xor ebx,ecx
- ror eax,7
- pxor xmm2,xmm3
- movdqa [96+esp],xmm6
- mov ebp,edi
- xor esi,ebx
- rol edi,5
- movdqa xmm6,xmm5
- add edx,esi
- paddd xmm5,xmm1
- xor ebp,eax
- pxor xmm2,xmm4
- xor eax,ebx
- add edx,edi
- add ecx,DWORD [36+esp]
- and ebp,eax
- movdqa xmm4,xmm2
- movdqa [16+esp],xmm5
- xor eax,ebx
- ror edi,7
- mov esi,edx
- xor ebp,eax
- rol edx,5
- pslld xmm2,2
- add ecx,ebp
- xor esi,edi
- psrld xmm4,30
- xor edi,eax
- add ecx,edx
- add ebx,DWORD [40+esp]
- and esi,edi
- xor edi,eax
- ror edx,7
- por xmm2,xmm4
- mov ebp,ecx
- xor esi,edi
- movdqa xmm4,[64+esp]
- rol ecx,5
- add ebx,esi
- xor ebp,edx
- xor edx,edi
- add ebx,ecx
- pshufd xmm5,xmm1,238
- add eax,DWORD [44+esp]
- and ebp,edx
- xor edx,edi
- ror ecx,7
- mov esi,ebx
- xor ebp,edx
- rol ebx,5
- add eax,ebp
- xor esi,edx
- add eax,ebx
- add edi,DWORD [48+esp]
- pxor xmm3,xmm7
- punpcklqdq xmm5,xmm2
- xor esi,ecx
- mov ebp,eax
- rol eax,5
- pxor xmm3,xmm4
- movdqa [64+esp],xmm7
- add edi,esi
- xor ebp,ecx
- movdqa xmm7,xmm6
- ror ebx,7
- paddd xmm6,xmm2
- add edi,eax
- pxor xmm3,xmm5
- add edx,DWORD [52+esp]
- xor ebp,ebx
- mov esi,edi
- rol edi,5
- movdqa xmm5,xmm3
- movdqa [32+esp],xmm6
- add edx,ebp
- xor esi,ebx
- ror eax,7
- add edx,edi
- pslld xmm3,2
- add ecx,DWORD [56+esp]
- xor esi,eax
- psrld xmm5,30
- mov ebp,edx
- rol edx,5
- add ecx,esi
- xor ebp,eax
- ror edi,7
- add ecx,edx
- por xmm3,xmm5
- add ebx,DWORD [60+esp]
- xor ebp,edi
- mov esi,ecx
- rol ecx,5
- add ebx,ebp
- xor esi,edi
- ror edx,7
- add ebx,ecx
- add eax,DWORD [esp]
- xor esi,edx
- mov ebp,ebx
- rol ebx,5
- add eax,esi
- xor ebp,edx
- ror ecx,7
- paddd xmm7,xmm3
- add eax,ebx
- add edi,DWORD [4+esp]
- xor ebp,ecx
- mov esi,eax
- movdqa [48+esp],xmm7
- rol eax,5
- add edi,ebp
- xor esi,ecx
- ror ebx,7
- add edi,eax
- add edx,DWORD [8+esp]
- xor esi,ebx
- mov ebp,edi
- rol edi,5
- add edx,esi
- xor ebp,ebx
- ror eax,7
- add edx,edi
- add ecx,DWORD [12+esp]
- xor ebp,eax
- mov esi,edx
- rol edx,5
- add ecx,ebp
- xor esi,eax
- ror edi,7
- add ecx,edx
- mov ebp,DWORD [196+esp]
- cmp ebp,DWORD [200+esp]
- je NEAR L$005done
- movdqa xmm7,[160+esp]
- movdqa xmm6,[176+esp]
- movdqu xmm0,[ebp]
- movdqu xmm1,[16+ebp]
- movdqu xmm2,[32+ebp]
- movdqu xmm3,[48+ebp]
- add ebp,64
-db 102,15,56,0,198
- mov DWORD [196+esp],ebp
- movdqa [96+esp],xmm7
- add ebx,DWORD [16+esp]
- xor esi,edi
- mov ebp,ecx
- rol ecx,5
- add ebx,esi
- xor ebp,edi
- ror edx,7
-db 102,15,56,0,206
- add ebx,ecx
- add eax,DWORD [20+esp]
- xor ebp,edx
- mov esi,ebx
- paddd xmm0,xmm7
- rol ebx,5
- add eax,ebp
- xor esi,edx
- ror ecx,7
- movdqa [esp],xmm0
- add eax,ebx
- add edi,DWORD [24+esp]
- xor esi,ecx
- mov ebp,eax
- psubd xmm0,xmm7
- rol eax,5
- add edi,esi
- xor ebp,ecx
- ror ebx,7
- add edi,eax
- add edx,DWORD [28+esp]
- xor ebp,ebx
- mov esi,edi
- rol edi,5
- add edx,ebp
- xor esi,ebx
- ror eax,7
- add edx,edi
- add ecx,DWORD [32+esp]
- xor esi,eax
- mov ebp,edx
- rol edx,5
- add ecx,esi
- xor ebp,eax
- ror edi,7
-db 102,15,56,0,214
- add ecx,edx
- add ebx,DWORD [36+esp]
- xor ebp,edi
- mov esi,ecx
- paddd xmm1,xmm7
- rol ecx,5
- add ebx,ebp
- xor esi,edi
- ror edx,7
- movdqa [16+esp],xmm1
- add ebx,ecx
- add eax,DWORD [40+esp]
- xor esi,edx
- mov ebp,ebx
- psubd xmm1,xmm7
- rol ebx,5
- add eax,esi
- xor ebp,edx
- ror ecx,7
- add eax,ebx
- add edi,DWORD [44+esp]
- xor ebp,ecx
- mov esi,eax
- rol eax,5
- add edi,ebp
- xor esi,ecx
- ror ebx,7
- add edi,eax
- add edx,DWORD [48+esp]
- xor esi,ebx
- mov ebp,edi
- rol edi,5
- add edx,esi
- xor ebp,ebx
- ror eax,7
-db 102,15,56,0,222
- add edx,edi
- add ecx,DWORD [52+esp]
- xor ebp,eax
- mov esi,edx
- paddd xmm2,xmm7
- rol edx,5
- add ecx,ebp
- xor esi,eax
- ror edi,7
- movdqa [32+esp],xmm2
- add ecx,edx
- add ebx,DWORD [56+esp]
- xor esi,edi
- mov ebp,ecx
- psubd xmm2,xmm7
- rol ecx,5
- add ebx,esi
- xor ebp,edi
- ror edx,7
- add ebx,ecx
- add eax,DWORD [60+esp]
- xor ebp,edx
- mov esi,ebx
- rol ebx,5
- add eax,ebp
- ror ecx,7
- add eax,ebx
- mov ebp,DWORD [192+esp]
- add eax,DWORD [ebp]
- add esi,DWORD [4+ebp]
- add ecx,DWORD [8+ebp]
- mov DWORD [ebp],eax
- add edx,DWORD [12+ebp]
- mov DWORD [4+ebp],esi
- add edi,DWORD [16+ebp]
- mov DWORD [8+ebp],ecx
- mov ebx,ecx
- mov DWORD [12+ebp],edx
- xor ebx,edx
- mov DWORD [16+ebp],edi
- mov ebp,esi
- pshufd xmm4,xmm0,238
- and esi,ebx
- mov ebx,ebp
- jmp NEAR L$004loop
-align 16
-L$005done:
- add ebx,DWORD [16+esp]
- xor esi,edi
- mov ebp,ecx
- rol ecx,5
- add ebx,esi
- xor ebp,edi
- ror edx,7
- add ebx,ecx
- add eax,DWORD [20+esp]
- xor ebp,edx
- mov esi,ebx
- rol ebx,5
- add eax,ebp
- xor esi,edx
- ror ecx,7
- add eax,ebx
- add edi,DWORD [24+esp]
- xor esi,ecx
- mov ebp,eax
- rol eax,5
- add edi,esi
- xor ebp,ecx
- ror ebx,7
- add edi,eax
- add edx,DWORD [28+esp]
- xor ebp,ebx
- mov esi,edi
- rol edi,5
- add edx,ebp
- xor esi,ebx
- ror eax,7
- add edx,edi
- add ecx,DWORD [32+esp]
- xor esi,eax
- mov ebp,edx
- rol edx,5
- add ecx,esi
- xor ebp,eax
- ror edi,7
- add ecx,edx
- add ebx,DWORD [36+esp]
- xor ebp,edi
- mov esi,ecx
- rol ecx,5
- add ebx,ebp
- xor esi,edi
- ror edx,7
- add ebx,ecx
- add eax,DWORD [40+esp]
- xor esi,edx
- mov ebp,ebx
- rol ebx,5
- add eax,esi
- xor ebp,edx
- ror ecx,7
- add eax,ebx
- add edi,DWORD [44+esp]
- xor ebp,ecx
- mov esi,eax
- rol eax,5
- add edi,ebp
- xor esi,ecx
- ror ebx,7
- add edi,eax
- add edx,DWORD [48+esp]
- xor esi,ebx
- mov ebp,edi
- rol edi,5
- add edx,esi
- xor ebp,ebx
- ror eax,7
- add edx,edi
- add ecx,DWORD [52+esp]
- xor ebp,eax
- mov esi,edx
- rol edx,5
- add ecx,ebp
- xor esi,eax
- ror edi,7
- add ecx,edx
- add ebx,DWORD [56+esp]
- xor esi,edi
- mov ebp,ecx
- rol ecx,5
- add ebx,esi
- xor ebp,edi
- ror edx,7
- add ebx,ecx
- add eax,DWORD [60+esp]
- xor ebp,edx
- mov esi,ebx
- rol ebx,5
- add eax,ebp
- ror ecx,7
- add eax,ebx
- mov ebp,DWORD [192+esp]
- add eax,DWORD [ebp]
- mov esp,DWORD [204+esp]
- add esi,DWORD [4+ebp]
- add ecx,DWORD [8+ebp]
- mov DWORD [ebp],eax
- add edx,DWORD [12+ebp]
- mov DWORD [4+ebp],esi
- add edi,DWORD [16+ebp]
- mov DWORD [8+ebp],ecx
- mov DWORD [12+ebp],edx
- mov DWORD [16+ebp],edi
- pop edi
- pop esi
- pop ebx
- pop ebp
- ret
-align 16
-__sha1_block_data_order_avx:
- push ebp
- push ebx
- push esi
- push edi
- call L$006pic_point
-L$006pic_point:
- pop ebp
- lea ebp,[(L$K_XX_XX-L$006pic_point)+ebp]
-L$avx_shortcut:
- vzeroall
- vmovdqa xmm7,[ebp]
- vmovdqa xmm0,[16+ebp]
- vmovdqa xmm1,[32+ebp]
- vmovdqa xmm2,[48+ebp]
- vmovdqa xmm6,[64+ebp]
- mov edi,DWORD [20+esp]
- mov ebp,DWORD [24+esp]
- mov edx,DWORD [28+esp]
- mov esi,esp
- sub esp,208
- and esp,-64
- vmovdqa [112+esp],xmm0
- vmovdqa [128+esp],xmm1
- vmovdqa [144+esp],xmm2
- shl edx,6
- vmovdqa [160+esp],xmm7
- add edx,ebp
- vmovdqa [176+esp],xmm6
- add ebp,64
- mov DWORD [192+esp],edi
- mov DWORD [196+esp],ebp
- mov DWORD [200+esp],edx
- mov DWORD [204+esp],esi
- mov eax,DWORD [edi]
- mov ebx,DWORD [4+edi]
- mov ecx,DWORD [8+edi]
- mov edx,DWORD [12+edi]
- mov edi,DWORD [16+edi]
- mov esi,ebx
- vmovdqu xmm0,[ebp-64]
- vmovdqu xmm1,[ebp-48]
- vmovdqu xmm2,[ebp-32]
- vmovdqu xmm3,[ebp-16]
- vpshufb xmm0,xmm0,xmm6
- vpshufb xmm1,xmm1,xmm6
- vpshufb xmm2,xmm2,xmm6
- vmovdqa [96+esp],xmm7
- vpshufb xmm3,xmm3,xmm6
- vpaddd xmm4,xmm0,xmm7
- vpaddd xmm5,xmm1,xmm7
- vpaddd xmm6,xmm2,xmm7
- vmovdqa [esp],xmm4
- mov ebp,ecx
- vmovdqa [16+esp],xmm5
- xor ebp,edx
- vmovdqa [32+esp],xmm6
- and esi,ebp
- jmp NEAR L$007loop
-align 16
-L$007loop:
- shrd ebx,ebx,2
- xor esi,edx
- vpalignr xmm4,xmm1,xmm0,8
- mov ebp,eax
- add edi,DWORD [esp]
- vpaddd xmm7,xmm7,xmm3
- vmovdqa [64+esp],xmm0
- xor ebx,ecx
- shld eax,eax,5
- vpsrldq xmm6,xmm3,4
- add edi,esi
- and ebp,ebx
- vpxor xmm4,xmm4,xmm0
- xor ebx,ecx
- add edi,eax
- vpxor xmm6,xmm6,xmm2
- shrd eax,eax,7
- xor ebp,ecx
- vmovdqa [48+esp],xmm7
- mov esi,edi
- add edx,DWORD [4+esp]
- vpxor xmm4,xmm4,xmm6
- xor eax,ebx
- shld edi,edi,5
- add edx,ebp
- and esi,eax
- vpsrld xmm6,xmm4,31
- xor eax,ebx
- add edx,edi
- shrd edi,edi,7
- xor esi,ebx
- vpslldq xmm0,xmm4,12
- vpaddd xmm4,xmm4,xmm4
- mov ebp,edx
- add ecx,DWORD [8+esp]
- xor edi,eax
- shld edx,edx,5
- vpsrld xmm7,xmm0,30
- vpor xmm4,xmm4,xmm6
- add ecx,esi
- and ebp,edi
- xor edi,eax
- add ecx,edx
- vpslld xmm0,xmm0,2
- shrd edx,edx,7
- xor ebp,eax
- vpxor xmm4,xmm4,xmm7
- mov esi,ecx
- add ebx,DWORD [12+esp]
- xor edx,edi
- shld ecx,ecx,5
- vpxor xmm4,xmm4,xmm0
- add ebx,ebp
- and esi,edx
- vmovdqa xmm0,[96+esp]
- xor edx,edi
- add ebx,ecx
- shrd ecx,ecx,7
- xor esi,edi
- vpalignr xmm5,xmm2,xmm1,8
- mov ebp,ebx
- add eax,DWORD [16+esp]
- vpaddd xmm0,xmm0,xmm4
- vmovdqa [80+esp],xmm1
- xor ecx,edx
- shld ebx,ebx,5
- vpsrldq xmm7,xmm4,4
- add eax,esi
- and ebp,ecx
- vpxor xmm5,xmm5,xmm1
- xor ecx,edx
- add eax,ebx
- vpxor xmm7,xmm7,xmm3
- shrd ebx,ebx,7
- xor ebp,edx
- vmovdqa [esp],xmm0
- mov esi,eax
- add edi,DWORD [20+esp]
- vpxor xmm5,xmm5,xmm7
- xor ebx,ecx
- shld eax,eax,5
- add edi,ebp
- and esi,ebx
- vpsrld xmm7,xmm5,31
- xor ebx,ecx
- add edi,eax
- shrd eax,eax,7
- xor esi,ecx
- vpslldq xmm1,xmm5,12
- vpaddd xmm5,xmm5,xmm5
- mov ebp,edi
- add edx,DWORD [24+esp]
- xor eax,ebx
- shld edi,edi,5
- vpsrld xmm0,xmm1,30
- vpor xmm5,xmm5,xmm7
- add edx,esi
- and ebp,eax
- xor eax,ebx
- add edx,edi
- vpslld xmm1,xmm1,2
- shrd edi,edi,7
- xor ebp,ebx
- vpxor xmm5,xmm5,xmm0
- mov esi,edx
- add ecx,DWORD [28+esp]
- xor edi,eax
- shld edx,edx,5
- vpxor xmm5,xmm5,xmm1
- add ecx,ebp
- and esi,edi
- vmovdqa xmm1,[112+esp]
- xor edi,eax
- add ecx,edx
- shrd edx,edx,7
- xor esi,eax
- vpalignr xmm6,xmm3,xmm2,8
- mov ebp,ecx
- add ebx,DWORD [32+esp]
- vpaddd xmm1,xmm1,xmm5
- vmovdqa [96+esp],xmm2
- xor edx,edi
- shld ecx,ecx,5
- vpsrldq xmm0,xmm5,4
- add ebx,esi
- and ebp,edx
- vpxor xmm6,xmm6,xmm2
- xor edx,edi
- add ebx,ecx
- vpxor xmm0,xmm0,xmm4
- shrd ecx,ecx,7
- xor ebp,edi
- vmovdqa [16+esp],xmm1
- mov esi,ebx
- add eax,DWORD [36+esp]
- vpxor xmm6,xmm6,xmm0
- xor ecx,edx
- shld ebx,ebx,5
- add eax,ebp
- and esi,ecx
- vpsrld xmm0,xmm6,31
- xor ecx,edx
- add eax,ebx
- shrd ebx,ebx,7
- xor esi,edx
- vpslldq xmm2,xmm6,12
- vpaddd xmm6,xmm6,xmm6
- mov ebp,eax
- add edi,DWORD [40+esp]
- xor ebx,ecx
- shld eax,eax,5
- vpsrld xmm1,xmm2,30
- vpor xmm6,xmm6,xmm0
- add edi,esi
- and ebp,ebx
- xor ebx,ecx
- add edi,eax
- vpslld xmm2,xmm2,2
- vmovdqa xmm0,[64+esp]
- shrd eax,eax,7
- xor ebp,ecx
- vpxor xmm6,xmm6,xmm1
- mov esi,edi
- add edx,DWORD [44+esp]
- xor eax,ebx
- shld edi,edi,5
- vpxor xmm6,xmm6,xmm2
- add edx,ebp
- and esi,eax
- vmovdqa xmm2,[112+esp]
- xor eax,ebx
- add edx,edi
- shrd edi,edi,7
- xor esi,ebx
- vpalignr xmm7,xmm4,xmm3,8
- mov ebp,edx
- add ecx,DWORD [48+esp]
- vpaddd xmm2,xmm2,xmm6
- vmovdqa [64+esp],xmm3
- xor edi,eax
- shld edx,edx,5
- vpsrldq xmm1,xmm6,4
- add ecx,esi
- and ebp,edi
- vpxor xmm7,xmm7,xmm3
- xor edi,eax
- add ecx,edx
- vpxor xmm1,xmm1,xmm5
- shrd edx,edx,7
- xor ebp,eax
- vmovdqa [32+esp],xmm2
- mov esi,ecx
- add ebx,DWORD [52+esp]
- vpxor xmm7,xmm7,xmm1
- xor edx,edi
- shld ecx,ecx,5
- add ebx,ebp
- and esi,edx
- vpsrld xmm1,xmm7,31
- xor edx,edi
- add ebx,ecx
- shrd ecx,ecx,7
- xor esi,edi
- vpslldq xmm3,xmm7,12
- vpaddd xmm7,xmm7,xmm7
- mov ebp,ebx
- add eax,DWORD [56+esp]
- xor ecx,edx
- shld ebx,ebx,5
- vpsrld xmm2,xmm3,30
- vpor xmm7,xmm7,xmm1
- add eax,esi
- and ebp,ecx
- xor ecx,edx
- add eax,ebx
- vpslld xmm3,xmm3,2
- vmovdqa xmm1,[80+esp]
- shrd ebx,ebx,7
- xor ebp,edx
- vpxor xmm7,xmm7,xmm2
- mov esi,eax
- add edi,DWORD [60+esp]
- xor ebx,ecx
- shld eax,eax,5
- vpxor xmm7,xmm7,xmm3
- add edi,ebp
- and esi,ebx
- vmovdqa xmm3,[112+esp]
- xor ebx,ecx
- add edi,eax
- vpalignr xmm2,xmm7,xmm6,8
- vpxor xmm0,xmm0,xmm4
- shrd eax,eax,7
- xor esi,ecx
- mov ebp,edi
- add edx,DWORD [esp]
- vpxor xmm0,xmm0,xmm1
- vmovdqa [80+esp],xmm4
- xor eax,ebx
- shld edi,edi,5
- vmovdqa xmm4,xmm3
- vpaddd xmm3,xmm3,xmm7
- add edx,esi
- and ebp,eax
- vpxor xmm0,xmm0,xmm2
- xor eax,ebx
- add edx,edi
- shrd edi,edi,7
- xor ebp,ebx
- vpsrld xmm2,xmm0,30
- vmovdqa [48+esp],xmm3
- mov esi,edx
- add ecx,DWORD [4+esp]
- xor edi,eax
- shld edx,edx,5
- vpslld xmm0,xmm0,2
- add ecx,ebp
- and esi,edi
- xor edi,eax
- add ecx,edx
- shrd edx,edx,7
- xor esi,eax
- mov ebp,ecx
- add ebx,DWORD [8+esp]
- vpor xmm0,xmm0,xmm2
- xor edx,edi
- shld ecx,ecx,5
- vmovdqa xmm2,[96+esp]
- add ebx,esi
- and ebp,edx
- xor edx,edi
- add ebx,ecx
- add eax,DWORD [12+esp]
- xor ebp,edi
- mov esi,ebx
- shld ebx,ebx,5
- add eax,ebp
- xor esi,edx
- shrd ecx,ecx,7
- add eax,ebx
- vpalignr xmm3,xmm0,xmm7,8
- vpxor xmm1,xmm1,xmm5
- add edi,DWORD [16+esp]
- xor esi,ecx
- mov ebp,eax
- shld eax,eax,5
- vpxor xmm1,xmm1,xmm2
- vmovdqa [96+esp],xmm5
- add edi,esi
- xor ebp,ecx
- vmovdqa xmm5,xmm4
- vpaddd xmm4,xmm4,xmm0
- shrd ebx,ebx,7
- add edi,eax
- vpxor xmm1,xmm1,xmm3
- add edx,DWORD [20+esp]
- xor ebp,ebx
- mov esi,edi
- shld edi,edi,5
- vpsrld xmm3,xmm1,30
- vmovdqa [esp],xmm4
- add edx,ebp
- xor esi,ebx
- shrd eax,eax,7
- add edx,edi
- vpslld xmm1,xmm1,2
- add ecx,DWORD [24+esp]
- xor esi,eax
- mov ebp,edx
- shld edx,edx,5
- add ecx,esi
- xor ebp,eax
- shrd edi,edi,7
- add ecx,edx
- vpor xmm1,xmm1,xmm3
- add ebx,DWORD [28+esp]
- xor ebp,edi
- vmovdqa xmm3,[64+esp]
- mov esi,ecx
- shld ecx,ecx,5
- add ebx,ebp
- xor esi,edi
- shrd edx,edx,7
- add ebx,ecx
- vpalignr xmm4,xmm1,xmm0,8
- vpxor xmm2,xmm2,xmm6
- add eax,DWORD [32+esp]
- xor esi,edx
- mov ebp,ebx
- shld ebx,ebx,5
- vpxor xmm2,xmm2,xmm3
- vmovdqa [64+esp],xmm6
- add eax,esi
- xor ebp,edx
- vmovdqa xmm6,[128+esp]
- vpaddd xmm5,xmm5,xmm1
- shrd ecx,ecx,7
- add eax,ebx
- vpxor xmm2,xmm2,xmm4
- add edi,DWORD [36+esp]
- xor ebp,ecx
- mov esi,eax
- shld eax,eax,5
- vpsrld xmm4,xmm2,30
- vmovdqa [16+esp],xmm5
- add edi,ebp
- xor esi,ecx
- shrd ebx,ebx,7
- add edi,eax
- vpslld xmm2,xmm2,2
- add edx,DWORD [40+esp]
- xor esi,ebx
- mov ebp,edi
- shld edi,edi,5
- add edx,esi
- xor ebp,ebx
- shrd eax,eax,7
- add edx,edi
- vpor xmm2,xmm2,xmm4
- add ecx,DWORD [44+esp]
- xor ebp,eax
- vmovdqa xmm4,[80+esp]
- mov esi,edx
- shld edx,edx,5
- add ecx,ebp
- xor esi,eax
- shrd edi,edi,7
- add ecx,edx
- vpalignr xmm5,xmm2,xmm1,8
- vpxor xmm3,xmm3,xmm7
- add ebx,DWORD [48+esp]
- xor esi,edi
- mov ebp,ecx
- shld ecx,ecx,5
- vpxor xmm3,xmm3,xmm4
- vmovdqa [80+esp],xmm7
- add ebx,esi
- xor ebp,edi
- vmovdqa xmm7,xmm6
- vpaddd xmm6,xmm6,xmm2
- shrd edx,edx,7
- add ebx,ecx
- vpxor xmm3,xmm3,xmm5
- add eax,DWORD [52+esp]
- xor ebp,edx
- mov esi,ebx
- shld ebx,ebx,5
- vpsrld xmm5,xmm3,30
- vmovdqa [32+esp],xmm6
- add eax,ebp
- xor esi,edx
- shrd ecx,ecx,7
- add eax,ebx
- vpslld xmm3,xmm3,2
- add edi,DWORD [56+esp]
- xor esi,ecx
- mov ebp,eax
- shld eax,eax,5
- add edi,esi
- xor ebp,ecx
- shrd ebx,ebx,7
- add edi,eax
- vpor xmm3,xmm3,xmm5
- add edx,DWORD [60+esp]
- xor ebp,ebx
- vmovdqa xmm5,[96+esp]
- mov esi,edi
- shld edi,edi,5
- add edx,ebp
- xor esi,ebx
- shrd eax,eax,7
- add edx,edi
- vpalignr xmm6,xmm3,xmm2,8
- vpxor xmm4,xmm4,xmm0
- add ecx,DWORD [esp]
- xor esi,eax
- mov ebp,edx
- shld edx,edx,5
- vpxor xmm4,xmm4,xmm5
- vmovdqa [96+esp],xmm0
- add ecx,esi
- xor ebp,eax
- vmovdqa xmm0,xmm7
- vpaddd xmm7,xmm7,xmm3
- shrd edi,edi,7
- add ecx,edx
- vpxor xmm4,xmm4,xmm6
- add ebx,DWORD [4+esp]
- xor ebp,edi
- mov esi,ecx
- shld ecx,ecx,5
- vpsrld xmm6,xmm4,30
- vmovdqa [48+esp],xmm7
- add ebx,ebp
- xor esi,edi
- shrd edx,edx,7
- add ebx,ecx
- vpslld xmm4,xmm4,2
- add eax,DWORD [8+esp]
- xor esi,edx
- mov ebp,ebx
- shld ebx,ebx,5
- add eax,esi
- xor ebp,edx
- shrd ecx,ecx,7
- add eax,ebx
- vpor xmm4,xmm4,xmm6
- add edi,DWORD [12+esp]
- xor ebp,ecx
- vmovdqa xmm6,[64+esp]
- mov esi,eax
- shld eax,eax,5
- add edi,ebp
- xor esi,ecx
- shrd ebx,ebx,7
- add edi,eax
- vpalignr xmm7,xmm4,xmm3,8
- vpxor xmm5,xmm5,xmm1
- add edx,DWORD [16+esp]
- xor esi,ebx
- mov ebp,edi
- shld edi,edi,5
- vpxor xmm5,xmm5,xmm6
- vmovdqa [64+esp],xmm1
- add edx,esi
- xor ebp,ebx
- vmovdqa xmm1,xmm0
- vpaddd xmm0,xmm0,xmm4
- shrd eax,eax,7
- add edx,edi
- vpxor xmm5,xmm5,xmm7
- add ecx,DWORD [20+esp]
- xor ebp,eax
- mov esi,edx
- shld edx,edx,5
- vpsrld xmm7,xmm5,30
- vmovdqa [esp],xmm0
- add ecx,ebp
- xor esi,eax
- shrd edi,edi,7
- add ecx,edx
- vpslld xmm5,xmm5,2
- add ebx,DWORD [24+esp]
- xor esi,edi
- mov ebp,ecx
- shld ecx,ecx,5
- add ebx,esi
- xor ebp,edi
- shrd edx,edx,7
- add ebx,ecx
- vpor xmm5,xmm5,xmm7
- add eax,DWORD [28+esp]
- vmovdqa xmm7,[80+esp]
- shrd ecx,ecx,7
- mov esi,ebx
- xor ebp,edx
- shld ebx,ebx,5
- add eax,ebp
- xor esi,ecx
- xor ecx,edx
- add eax,ebx
- vpalignr xmm0,xmm5,xmm4,8
- vpxor xmm6,xmm6,xmm2
- add edi,DWORD [32+esp]
- and esi,ecx
- xor ecx,edx
- shrd ebx,ebx,7
- vpxor xmm6,xmm6,xmm7
- vmovdqa [80+esp],xmm2
- mov ebp,eax
- xor esi,ecx
- vmovdqa xmm2,xmm1
- vpaddd xmm1,xmm1,xmm5
- shld eax,eax,5
- add edi,esi
- vpxor xmm6,xmm6,xmm0
- xor ebp,ebx
- xor ebx,ecx
- add edi,eax
- add edx,DWORD [36+esp]
- vpsrld xmm0,xmm6,30
- vmovdqa [16+esp],xmm1
- and ebp,ebx
- xor ebx,ecx
- shrd eax,eax,7
- mov esi,edi
- vpslld xmm6,xmm6,2
- xor ebp,ebx
- shld edi,edi,5
- add edx,ebp
- xor esi,eax
- xor eax,ebx
- add edx,edi
- add ecx,DWORD [40+esp]
- and esi,eax
- vpor xmm6,xmm6,xmm0
- xor eax,ebx
- shrd edi,edi,7
- vmovdqa xmm0,[96+esp]
- mov ebp,edx
- xor esi,eax
- shld edx,edx,5
- add ecx,esi
- xor ebp,edi
- xor edi,eax
- add ecx,edx
- add ebx,DWORD [44+esp]
- and ebp,edi
- xor edi,eax
- shrd edx,edx,7
- mov esi,ecx
- xor ebp,edi
- shld ecx,ecx,5
- add ebx,ebp
- xor esi,edx
- xor edx,edi
- add ebx,ecx
- vpalignr xmm1,xmm6,xmm5,8
- vpxor xmm7,xmm7,xmm3
- add eax,DWORD [48+esp]
- and esi,edx
- xor edx,edi
- shrd ecx,ecx,7
- vpxor xmm7,xmm7,xmm0
- vmovdqa [96+esp],xmm3
- mov ebp,ebx
- xor esi,edx
- vmovdqa xmm3,[144+esp]
- vpaddd xmm2,xmm2,xmm6
- shld ebx,ebx,5
- add eax,esi
- vpxor xmm7,xmm7,xmm1
- xor ebp,ecx
- xor ecx,edx
- add eax,ebx
- add edi,DWORD [52+esp]
- vpsrld xmm1,xmm7,30
- vmovdqa [32+esp],xmm2
- and ebp,ecx
- xor ecx,edx
- shrd ebx,ebx,7
- mov esi,eax
- vpslld xmm7,xmm7,2
- xor ebp,ecx
- shld eax,eax,5
- add edi,ebp
- xor esi,ebx
- xor ebx,ecx
- add edi,eax
- add edx,DWORD [56+esp]
- and esi,ebx
- vpor xmm7,xmm7,xmm1
- xor ebx,ecx
- shrd eax,eax,7
- vmovdqa xmm1,[64+esp]
- mov ebp,edi
- xor esi,ebx
- shld edi,edi,5
- add edx,esi
- xor ebp,eax
- xor eax,ebx
- add edx,edi
- add ecx,DWORD [60+esp]
- and ebp,eax
- xor eax,ebx
- shrd edi,edi,7
- mov esi,edx
- xor ebp,eax
- shld edx,edx,5
- add ecx,ebp
- xor esi,edi
- xor edi,eax
- add ecx,edx
- vpalignr xmm2,xmm7,xmm6,8
- vpxor xmm0,xmm0,xmm4
- add ebx,DWORD [esp]
- and esi,edi
- xor edi,eax
- shrd edx,edx,7
- vpxor xmm0,xmm0,xmm1
- vmovdqa [64+esp],xmm4
- mov ebp,ecx
- xor esi,edi
- vmovdqa xmm4,xmm3
- vpaddd xmm3,xmm3,xmm7
- shld ecx,ecx,5
- add ebx,esi
- vpxor xmm0,xmm0,xmm2
- xor ebp,edx
- xor edx,edi
- add ebx,ecx
- add eax,DWORD [4+esp]
- vpsrld xmm2,xmm0,30
- vmovdqa [48+esp],xmm3
- and ebp,edx
- xor edx,edi
- shrd ecx,ecx,7
- mov esi,ebx
- vpslld xmm0,xmm0,2
- xor ebp,edx
- shld ebx,ebx,5
- add eax,ebp
- xor esi,ecx
- xor ecx,edx
- add eax,ebx
- add edi,DWORD [8+esp]
- and esi,ecx
- vpor xmm0,xmm0,xmm2
- xor ecx,edx
- shrd ebx,ebx,7
- vmovdqa xmm2,[80+esp]
- mov ebp,eax
- xor esi,ecx
- shld eax,eax,5
- add edi,esi
- xor ebp,ebx
- xor ebx,ecx
- add edi,eax
- add edx,DWORD [12+esp]
- and ebp,ebx
- xor ebx,ecx
- shrd eax,eax,7
- mov esi,edi
- xor ebp,ebx
- shld edi,edi,5
- add edx,ebp
- xor esi,eax
- xor eax,ebx
- add edx,edi
- vpalignr xmm3,xmm0,xmm7,8
- vpxor xmm1,xmm1,xmm5
- add ecx,DWORD [16+esp]
- and esi,eax
- xor eax,ebx
- shrd edi,edi,7
- vpxor xmm1,xmm1,xmm2
- vmovdqa [80+esp],xmm5
- mov ebp,edx
- xor esi,eax
- vmovdqa xmm5,xmm4
- vpaddd xmm4,xmm4,xmm0
- shld edx,edx,5
- add ecx,esi
- vpxor xmm1,xmm1,xmm3
- xor ebp,edi
- xor edi,eax
- add ecx,edx
- add ebx,DWORD [20+esp]
- vpsrld xmm3,xmm1,30
- vmovdqa [esp],xmm4
- and ebp,edi
- xor edi,eax
- shrd edx,edx,7
- mov esi,ecx
- vpslld xmm1,xmm1,2
- xor ebp,edi
- shld ecx,ecx,5
- add ebx,ebp
- xor esi,edx
- xor edx,edi
- add ebx,ecx
- add eax,DWORD [24+esp]
- and esi,edx
- vpor xmm1,xmm1,xmm3
- xor edx,edi
- shrd ecx,ecx,7
- vmovdqa xmm3,[96+esp]
- mov ebp,ebx
- xor esi,edx
- shld ebx,ebx,5
- add eax,esi
- xor ebp,ecx
- xor ecx,edx
- add eax,ebx
- add edi,DWORD [28+esp]
- and ebp,ecx
- xor ecx,edx
- shrd ebx,ebx,7
- mov esi,eax
- xor ebp,ecx
- shld eax,eax,5
- add edi,ebp
- xor esi,ebx
- xor ebx,ecx
- add edi,eax
- vpalignr xmm4,xmm1,xmm0,8
- vpxor xmm2,xmm2,xmm6
- add edx,DWORD [32+esp]
- and esi,ebx
- xor ebx,ecx
- shrd eax,eax,7
- vpxor xmm2,xmm2,xmm3
- vmovdqa [96+esp],xmm6
- mov ebp,edi
- xor esi,ebx
- vmovdqa xmm6,xmm5
- vpaddd xmm5,xmm5,xmm1
- shld edi,edi,5
- add edx,esi
- vpxor xmm2,xmm2,xmm4
- xor ebp,eax
- xor eax,ebx
- add edx,edi
- add ecx,DWORD [36+esp]
- vpsrld xmm4,xmm2,30
- vmovdqa [16+esp],xmm5
- and ebp,eax
- xor eax,ebx
- shrd edi,edi,7
- mov esi,edx
- vpslld xmm2,xmm2,2
- xor ebp,eax
- shld edx,edx,5
- add ecx,ebp
- xor esi,edi
- xor edi,eax
- add ecx,edx
- add ebx,DWORD [40+esp]
- and esi,edi
- vpor xmm2,xmm2,xmm4
- xor edi,eax
- shrd edx,edx,7
- vmovdqa xmm4,[64+esp]
- mov ebp,ecx
- xor esi,edi
- shld ecx,ecx,5
- add ebx,esi
- xor ebp,edx
- xor edx,edi
- add ebx,ecx
- add eax,DWORD [44+esp]
- and ebp,edx
- xor edx,edi
- shrd ecx,ecx,7
- mov esi,ebx
- xor ebp,edx
- shld ebx,ebx,5
- add eax,ebp
- xor esi,edx
- add eax,ebx
- vpalignr xmm5,xmm2,xmm1,8
- vpxor xmm3,xmm3,xmm7
- add edi,DWORD [48+esp]
- xor esi,ecx
- mov ebp,eax
- shld eax,eax,5
- vpxor xmm3,xmm3,xmm4
- vmovdqa [64+esp],xmm7
- add edi,esi
- xor ebp,ecx
- vmovdqa xmm7,xmm6
- vpaddd xmm6,xmm6,xmm2
- shrd ebx,ebx,7
- add edi,eax
- vpxor xmm3,xmm3,xmm5
- add edx,DWORD [52+esp]
- xor ebp,ebx
- mov esi,edi
- shld edi,edi,5
- vpsrld xmm5,xmm3,30
- vmovdqa [32+esp],xmm6
- add edx,ebp
- xor esi,ebx
- shrd eax,eax,7
- add edx,edi
- vpslld xmm3,xmm3,2
- add ecx,DWORD [56+esp]
- xor esi,eax
- mov ebp,edx
- shld edx,edx,5
- add ecx,esi
- xor ebp,eax
- shrd edi,edi,7
- add ecx,edx
- vpor xmm3,xmm3,xmm5
- add ebx,DWORD [60+esp]
- xor ebp,edi
- mov esi,ecx
- shld ecx,ecx,5
- add ebx,ebp
- xor esi,edi
- shrd edx,edx,7
- add ebx,ecx
- add eax,DWORD [esp]
- vpaddd xmm7,xmm7,xmm3
- xor esi,edx
- mov ebp,ebx
- shld ebx,ebx,5
- add eax,esi
- vmovdqa [48+esp],xmm7
- xor ebp,edx
- shrd ecx,ecx,7
- add eax,ebx
- add edi,DWORD [4+esp]
- xor ebp,ecx
- mov esi,eax
- shld eax,eax,5
- add edi,ebp
- xor esi,ecx
- shrd ebx,ebx,7
- add edi,eax
- add edx,DWORD [8+esp]
- xor esi,ebx
- mov ebp,edi
- shld edi,edi,5
- add edx,esi
- xor ebp,ebx
- shrd eax,eax,7
- add edx,edi
- add ecx,DWORD [12+esp]
- xor ebp,eax
- mov esi,edx
- shld edx,edx,5
- add ecx,ebp
- xor esi,eax
- shrd edi,edi,7
- add ecx,edx
- mov ebp,DWORD [196+esp]
- cmp ebp,DWORD [200+esp]
- je NEAR L$008done
- vmovdqa xmm7,[160+esp]
- vmovdqa xmm6,[176+esp]
- vmovdqu xmm0,[ebp]
- vmovdqu xmm1,[16+ebp]
- vmovdqu xmm2,[32+ebp]
- vmovdqu xmm3,[48+ebp]
- add ebp,64
- vpshufb xmm0,xmm0,xmm6
- mov DWORD [196+esp],ebp
- vmovdqa [96+esp],xmm7
- add ebx,DWORD [16+esp]
- xor esi,edi
- vpshufb xmm1,xmm1,xmm6
- mov ebp,ecx
- shld ecx,ecx,5
- vpaddd xmm4,xmm0,xmm7
- add ebx,esi
- xor ebp,edi
- shrd edx,edx,7
- add ebx,ecx
- vmovdqa [esp],xmm4
- add eax,DWORD [20+esp]
- xor ebp,edx
- mov esi,ebx
- shld ebx,ebx,5
- add eax,ebp
- xor esi,edx
- shrd ecx,ecx,7
- add eax,ebx
- add edi,DWORD [24+esp]
- xor esi,ecx
- mov ebp,eax
- shld eax,eax,5
- add edi,esi
- xor ebp,ecx
- shrd ebx,ebx,7
- add edi,eax
- add edx,DWORD [28+esp]
- xor ebp,ebx
- mov esi,edi
- shld edi,edi,5
- add edx,ebp
- xor esi,ebx
- shrd eax,eax,7
- add edx,edi
- add ecx,DWORD [32+esp]
- xor esi,eax
- vpshufb xmm2,xmm2,xmm6
- mov ebp,edx
- shld edx,edx,5
- vpaddd xmm5,xmm1,xmm7
- add ecx,esi
- xor ebp,eax
- shrd edi,edi,7
- add ecx,edx
- vmovdqa [16+esp],xmm5
- add ebx,DWORD [36+esp]
- xor ebp,edi
- mov esi,ecx
- shld ecx,ecx,5
- add ebx,ebp
- xor esi,edi
- shrd edx,edx,7
- add ebx,ecx
- add eax,DWORD [40+esp]
- xor esi,edx
- mov ebp,ebx
- shld ebx,ebx,5
- add eax,esi
- xor ebp,edx
- shrd ecx,ecx,7
- add eax,ebx
- add edi,DWORD [44+esp]
- xor ebp,ecx
- mov esi,eax
- shld eax,eax,5
- add edi,ebp
- xor esi,ecx
- shrd ebx,ebx,7
- add edi,eax
- add edx,DWORD [48+esp]
- xor esi,ebx
- vpshufb xmm3,xmm3,xmm6
- mov ebp,edi
- shld edi,edi,5
- vpaddd xmm6,xmm2,xmm7
- add edx,esi
- xor ebp,ebx
- shrd eax,eax,7
- add edx,edi
- vmovdqa [32+esp],xmm6
- add ecx,DWORD [52+esp]
- xor ebp,eax
- mov esi,edx
- shld edx,edx,5
- add ecx,ebp
- xor esi,eax
- shrd edi,edi,7
- add ecx,edx
- add ebx,DWORD [56+esp]
- xor esi,edi
- mov ebp,ecx
- shld ecx,ecx,5
- add ebx,esi
- xor ebp,edi
- shrd edx,edx,7
- add ebx,ecx
- add eax,DWORD [60+esp]
- xor ebp,edx
- mov esi,ebx
- shld ebx,ebx,5
- add eax,ebp
- shrd ecx,ecx,7
- add eax,ebx
- mov ebp,DWORD [192+esp]
- add eax,DWORD [ebp]
- add esi,DWORD [4+ebp]
- add ecx,DWORD [8+ebp]
- mov DWORD [ebp],eax
- add edx,DWORD [12+ebp]
- mov DWORD [4+ebp],esi
- add edi,DWORD [16+ebp]
- mov ebx,ecx
- mov DWORD [8+ebp],ecx
- xor ebx,edx
- mov DWORD [12+ebp],edx
- mov DWORD [16+ebp],edi
- mov ebp,esi
- and esi,ebx
- mov ebx,ebp
- jmp NEAR L$007loop
-align 16
-L$008done:
- add ebx,DWORD [16+esp]
- xor esi,edi
- mov ebp,ecx
- shld ecx,ecx,5
- add ebx,esi
- xor ebp,edi
- shrd edx,edx,7
- add ebx,ecx
- add eax,DWORD [20+esp]
- xor ebp,edx
- mov esi,ebx
- shld ebx,ebx,5
- add eax,ebp
- xor esi,edx
- shrd ecx,ecx,7
- add eax,ebx
- add edi,DWORD [24+esp]
- xor esi,ecx
- mov ebp,eax
- shld eax,eax,5
- add edi,esi
- xor ebp,ecx
- shrd ebx,ebx,7
- add edi,eax
- add edx,DWORD [28+esp]
- xor ebp,ebx
- mov esi,edi
- shld edi,edi,5
- add edx,ebp
- xor esi,ebx
- shrd eax,eax,7
- add edx,edi
- add ecx,DWORD [32+esp]
- xor esi,eax
- mov ebp,edx
- shld edx,edx,5
- add ecx,esi
- xor ebp,eax
- shrd edi,edi,7
- add ecx,edx
- add ebx,DWORD [36+esp]
- xor ebp,edi
- mov esi,ecx
- shld ecx,ecx,5
- add ebx,ebp
- xor esi,edi
- shrd edx,edx,7
- add ebx,ecx
- add eax,DWORD [40+esp]
- xor esi,edx
- mov ebp,ebx
- shld ebx,ebx,5
- add eax,esi
- xor ebp,edx
- shrd ecx,ecx,7
- add eax,ebx
- add edi,DWORD [44+esp]
- xor ebp,ecx
- mov esi,eax
- shld eax,eax,5
- add edi,ebp
- xor esi,ecx
- shrd ebx,ebx,7
- add edi,eax
- add edx,DWORD [48+esp]
- xor esi,ebx
- mov ebp,edi
- shld edi,edi,5
- add edx,esi
- xor ebp,ebx
- shrd eax,eax,7
- add edx,edi
- add ecx,DWORD [52+esp]
- xor ebp,eax
- mov esi,edx
- shld edx,edx,5
- add ecx,ebp
- xor esi,eax
- shrd edi,edi,7
- add ecx,edx
- add ebx,DWORD [56+esp]
- xor esi,edi
- mov ebp,ecx
- shld ecx,ecx,5
- add ebx,esi
- xor ebp,edi
- shrd edx,edx,7
- add ebx,ecx
- add eax,DWORD [60+esp]
- xor ebp,edx
- mov esi,ebx
- shld ebx,ebx,5
- add eax,ebp
- shrd ecx,ecx,7
- add eax,ebx
- vzeroall
- mov ebp,DWORD [192+esp]
- add eax,DWORD [ebp]
- mov esp,DWORD [204+esp]
- add esi,DWORD [4+ebp]
- add ecx,DWORD [8+ebp]
- mov DWORD [ebp],eax
- add edx,DWORD [12+ebp]
- mov DWORD [4+ebp],esi
- add edi,DWORD [16+ebp]
- mov DWORD [8+ebp],ecx
- mov DWORD [12+ebp],edx
- mov DWORD [16+ebp],edi
- pop edi
- pop esi
- pop ebx
- pop ebp
- ret
-align 64
-L$K_XX_XX:
-dd 1518500249,1518500249,1518500249,1518500249
-dd 1859775393,1859775393,1859775393,1859775393
-dd 2400959708,2400959708,2400959708,2400959708
-dd 3395469782,3395469782,3395469782,3395469782
-dd 66051,67438087,134810123,202182159
-db 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0
-db 83,72,65,49,32,98,108,111,99,107,32,116,114,97,110,115
-db 102,111,114,109,32,102,111,114,32,120,56,54,44,32,67,82
-db 89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112
-db 114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
-segment .bss
-common _OPENSSL_ia32cap_P 16
« no previous file with comments | « third_party/boringssl/win-x86/crypto/rc4/rc4-586.asm ('k') | third_party/boringssl/win-x86/crypto/sha/sha256-586.asm » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698