summaryrefslogtreecommitdiffstats
path: root/CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha1-x86_64.nasm
diff options
context:
space:
mode:
Diffstat (limited to 'CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha1-x86_64.nasm')
-rw-r--r--CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha1-x86_64.nasm2884
1 files changed, 0 insertions, 2884 deletions
diff --git a/CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha1-x86_64.nasm b/CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha1-x86_64.nasm
deleted file mode 100644
index c6d68d348f..0000000000
--- a/CryptoPkg/Library/OpensslLib/X64/crypto/sha/sha1-x86_64.nasm
+++ /dev/null
@@ -1,2884 +0,0 @@
-; WARNING: do not edit!
-; Generated from openssl/crypto/sha/asm/sha1-x86_64.pl
-;
-; Copyright 2006-2020 The OpenSSL Project Authors. All Rights Reserved.
-;
-; Licensed under the OpenSSL license (the "License"). You may not use
-; this file except in compliance with the License. You can obtain a copy
-; in the file LICENSE in the source distribution or at
-; https://www.openssl.org/source/license.html
-
-default rel
-%define XMMWORD
-%define YMMWORD
-%define ZMMWORD
-section .text code align=64
-
-EXTERN OPENSSL_ia32cap_P
-
-global sha1_block_data_order
-
-ALIGN 16
-sha1_block_data_order:
- mov QWORD[8+rsp],rdi ;WIN64 prologue
- mov QWORD[16+rsp],rsi
- mov rax,rsp
-$L$SEH_begin_sha1_block_data_order:
- mov rdi,rcx
- mov rsi,rdx
- mov rdx,r8
-
-
-
- mov r9d,DWORD[((OPENSSL_ia32cap_P+0))]
- mov r8d,DWORD[((OPENSSL_ia32cap_P+4))]
- mov r10d,DWORD[((OPENSSL_ia32cap_P+8))]
- test r8d,512
- jz NEAR $L$ialu
- test r10d,536870912
- jnz NEAR _shaext_shortcut
- jmp NEAR _ssse3_shortcut
-
-ALIGN 16
-$L$ialu:
- mov rax,rsp
-
- push rbx
-
- push rbp
-
- push r12
-
- push r13
-
- push r14
-
- mov r8,rdi
- sub rsp,72
- mov r9,rsi
- and rsp,-64
- mov r10,rdx
- mov QWORD[64+rsp],rax
-
-$L$prologue:
-
- mov esi,DWORD[r8]
- mov edi,DWORD[4+r8]
- mov r11d,DWORD[8+r8]
- mov r12d,DWORD[12+r8]
- mov r13d,DWORD[16+r8]
- jmp NEAR $L$loop
-
-ALIGN 16
-$L$loop:
- mov edx,DWORD[r9]
- bswap edx
- mov ebp,DWORD[4+r9]
- mov eax,r12d
- mov DWORD[rsp],edx
- mov ecx,esi
- bswap ebp
- xor eax,r11d
- rol ecx,5
- and eax,edi
- lea r13d,[1518500249+r13*1+rdx]
- add r13d,ecx
- xor eax,r12d
- rol edi,30
- add r13d,eax
- mov r14d,DWORD[8+r9]
- mov eax,r11d
- mov DWORD[4+rsp],ebp
- mov ecx,r13d
- bswap r14d
- xor eax,edi
- rol ecx,5
- and eax,esi
- lea r12d,[1518500249+r12*1+rbp]
- add r12d,ecx
- xor eax,r11d
- rol esi,30
- add r12d,eax
- mov edx,DWORD[12+r9]
- mov eax,edi
- mov DWORD[8+rsp],r14d
- mov ecx,r12d
- bswap edx
- xor eax,esi
- rol ecx,5
- and eax,r13d
- lea r11d,[1518500249+r11*1+r14]
- add r11d,ecx
- xor eax,edi
- rol r13d,30
- add r11d,eax
- mov ebp,DWORD[16+r9]
- mov eax,esi
- mov DWORD[12+rsp],edx
- mov ecx,r11d
- bswap ebp
- xor eax,r13d
- rol ecx,5
- and eax,r12d
- lea edi,[1518500249+rdi*1+rdx]
- add edi,ecx
- xor eax,esi
- rol r12d,30
- add edi,eax
- mov r14d,DWORD[20+r9]
- mov eax,r13d
- mov DWORD[16+rsp],ebp
- mov ecx,edi
- bswap r14d
- xor eax,r12d
- rol ecx,5
- and eax,r11d
- lea esi,[1518500249+rsi*1+rbp]
- add esi,ecx
- xor eax,r13d
- rol r11d,30
- add esi,eax
- mov edx,DWORD[24+r9]
- mov eax,r12d
- mov DWORD[20+rsp],r14d
- mov ecx,esi
- bswap edx
- xor eax,r11d
- rol ecx,5
- and eax,edi
- lea r13d,[1518500249+r13*1+r14]
- add r13d,ecx
- xor eax,r12d
- rol edi,30
- add r13d,eax
- mov ebp,DWORD[28+r9]
- mov eax,r11d
- mov DWORD[24+rsp],edx
- mov ecx,r13d
- bswap ebp
- xor eax,edi
- rol ecx,5
- and eax,esi
- lea r12d,[1518500249+r12*1+rdx]
- add r12d,ecx
- xor eax,r11d
- rol esi,30
- add r12d,eax
- mov r14d,DWORD[32+r9]
- mov eax,edi
- mov DWORD[28+rsp],ebp
- mov ecx,r12d
- bswap r14d
- xor eax,esi
- rol ecx,5
- and eax,r13d
- lea r11d,[1518500249+r11*1+rbp]
- add r11d,ecx
- xor eax,edi
- rol r13d,30
- add r11d,eax
- mov edx,DWORD[36+r9]
- mov eax,esi
- mov DWORD[32+rsp],r14d
- mov ecx,r11d
- bswap edx
- xor eax,r13d
- rol ecx,5
- and eax,r12d
- lea edi,[1518500249+rdi*1+r14]
- add edi,ecx
- xor eax,esi
- rol r12d,30
- add edi,eax
- mov ebp,DWORD[40+r9]
- mov eax,r13d
- mov DWORD[36+rsp],edx
- mov ecx,edi
- bswap ebp
- xor eax,r12d
- rol ecx,5
- and eax,r11d
- lea esi,[1518500249+rsi*1+rdx]
- add esi,ecx
- xor eax,r13d
- rol r11d,30
- add esi,eax
- mov r14d,DWORD[44+r9]
- mov eax,r12d
- mov DWORD[40+rsp],ebp
- mov ecx,esi
- bswap r14d
- xor eax,r11d
- rol ecx,5
- and eax,edi
- lea r13d,[1518500249+r13*1+rbp]
- add r13d,ecx
- xor eax,r12d
- rol edi,30
- add r13d,eax
- mov edx,DWORD[48+r9]
- mov eax,r11d
- mov DWORD[44+rsp],r14d
- mov ecx,r13d
- bswap edx
- xor eax,edi
- rol ecx,5
- and eax,esi
- lea r12d,[1518500249+r12*1+r14]
- add r12d,ecx
- xor eax,r11d
- rol esi,30
- add r12d,eax
- mov ebp,DWORD[52+r9]
- mov eax,edi
- mov DWORD[48+rsp],edx
- mov ecx,r12d
- bswap ebp
- xor eax,esi
- rol ecx,5
- and eax,r13d
- lea r11d,[1518500249+r11*1+rdx]
- add r11d,ecx
- xor eax,edi
- rol r13d,30
- add r11d,eax
- mov r14d,DWORD[56+r9]
- mov eax,esi
- mov DWORD[52+rsp],ebp
- mov ecx,r11d
- bswap r14d
- xor eax,r13d
- rol ecx,5
- and eax,r12d
- lea edi,[1518500249+rdi*1+rbp]
- add edi,ecx
- xor eax,esi
- rol r12d,30
- add edi,eax
- mov edx,DWORD[60+r9]
- mov eax,r13d
- mov DWORD[56+rsp],r14d
- mov ecx,edi
- bswap edx
- xor eax,r12d
- rol ecx,5
- and eax,r11d
- lea esi,[1518500249+rsi*1+r14]
- add esi,ecx
- xor eax,r13d
- rol r11d,30
- add esi,eax
- xor ebp,DWORD[rsp]
- mov eax,r12d
- mov DWORD[60+rsp],edx
- mov ecx,esi
- xor ebp,DWORD[8+rsp]
- xor eax,r11d
- rol ecx,5
- xor ebp,DWORD[32+rsp]
- and eax,edi
- lea r13d,[1518500249+r13*1+rdx]
- rol edi,30
- xor eax,r12d
- add r13d,ecx
- rol ebp,1
- add r13d,eax
- xor r14d,DWORD[4+rsp]
- mov eax,r11d
- mov DWORD[rsp],ebp
- mov ecx,r13d
- xor r14d,DWORD[12+rsp]
- xor eax,edi
- rol ecx,5
- xor r14d,DWORD[36+rsp]
- and eax,esi
- lea r12d,[1518500249+r12*1+rbp]
- rol esi,30
- xor eax,r11d
- add r12d,ecx
- rol r14d,1
- add r12d,eax
- xor edx,DWORD[8+rsp]
- mov eax,edi
- mov DWORD[4+rsp],r14d
- mov ecx,r12d
- xor edx,DWORD[16+rsp]
- xor eax,esi
- rol ecx,5
- xor edx,DWORD[40+rsp]
- and eax,r13d
- lea r11d,[1518500249+r11*1+r14]
- rol r13d,30
- xor eax,edi
- add r11d,ecx
- rol edx,1
- add r11d,eax
- xor ebp,DWORD[12+rsp]
- mov eax,esi
- mov DWORD[8+rsp],edx
- mov ecx,r11d
- xor ebp,DWORD[20+rsp]
- xor eax,r13d
- rol ecx,5
- xor ebp,DWORD[44+rsp]
- and eax,r12d
- lea edi,[1518500249+rdi*1+rdx]
- rol r12d,30
- xor eax,esi
- add edi,ecx
- rol ebp,1
- add edi,eax
- xor r14d,DWORD[16+rsp]
- mov eax,r13d
- mov DWORD[12+rsp],ebp
- mov ecx,edi
- xor r14d,DWORD[24+rsp]
- xor eax,r12d
- rol ecx,5
- xor r14d,DWORD[48+rsp]
- and eax,r11d
- lea esi,[1518500249+rsi*1+rbp]
- rol r11d,30
- xor eax,r13d
- add esi,ecx
- rol r14d,1
- add esi,eax
- xor edx,DWORD[20+rsp]
- mov eax,edi
- mov DWORD[16+rsp],r14d
- mov ecx,esi
- xor edx,DWORD[28+rsp]
- xor eax,r12d
- rol ecx,5
- xor edx,DWORD[52+rsp]
- lea r13d,[1859775393+r13*1+r14]
- xor eax,r11d
- add r13d,ecx
- rol edi,30
- add r13d,eax
- rol edx,1
- xor ebp,DWORD[24+rsp]
- mov eax,esi
- mov DWORD[20+rsp],edx
- mov ecx,r13d
- xor ebp,DWORD[32+rsp]
- xor eax,r11d
- rol ecx,5
- xor ebp,DWORD[56+rsp]
- lea r12d,[1859775393+r12*1+rdx]
- xor eax,edi
- add r12d,ecx
- rol esi,30
- add r12d,eax
- rol ebp,1
- xor r14d,DWORD[28+rsp]
- mov eax,r13d
- mov DWORD[24+rsp],ebp
- mov ecx,r12d
- xor r14d,DWORD[36+rsp]
- xor eax,edi
- rol ecx,5
- xor r14d,DWORD[60+rsp]
- lea r11d,[1859775393+r11*1+rbp]
- xor eax,esi
- add r11d,ecx
- rol r13d,30
- add r11d,eax
- rol r14d,1
- xor edx,DWORD[32+rsp]
- mov eax,r12d
- mov DWORD[28+rsp],r14d
- mov ecx,r11d
- xor edx,DWORD[40+rsp]
- xor eax,esi
- rol ecx,5
- xor edx,DWORD[rsp]
- lea edi,[1859775393+rdi*1+r14]
- xor eax,r13d
- add edi,ecx
- rol r12d,30
- add edi,eax
- rol edx,1
- xor ebp,DWORD[36+rsp]
- mov eax,r11d
- mov DWORD[32+rsp],edx
- mov ecx,edi
- xor ebp,DWORD[44+rsp]
- xor eax,r13d
- rol ecx,5
- xor ebp,DWORD[4+rsp]
- lea esi,[1859775393+rsi*1+rdx]
- xor eax,r12d
- add esi,ecx
- rol r11d,30
- add esi,eax
- rol ebp,1
- xor r14d,DWORD[40+rsp]
- mov eax,edi
- mov DWORD[36+rsp],ebp
- mov ecx,esi
- xor r14d,DWORD[48+rsp]
- xor eax,r12d
- rol ecx,5
- xor r14d,DWORD[8+rsp]
- lea r13d,[1859775393+r13*1+rbp]
- xor eax,r11d
- add r13d,ecx
- rol edi,30
- add r13d,eax
- rol r14d,1
- xor edx,DWORD[44+rsp]
- mov eax,esi
- mov DWORD[40+rsp],r14d
- mov ecx,r13d
- xor edx,DWORD[52+rsp]
- xor eax,r11d
- rol ecx,5
- xor edx,DWORD[12+rsp]
- lea r12d,[1859775393+r12*1+r14]
- xor eax,edi
- add r12d,ecx
- rol esi,30
- add r12d,eax
- rol edx,1
- xor ebp,DWORD[48+rsp]
- mov eax,r13d
- mov DWORD[44+rsp],edx
- mov ecx,r12d
- xor ebp,DWORD[56+rsp]
- xor eax,edi
- rol ecx,5
- xor ebp,DWORD[16+rsp]
- lea r11d,[1859775393+r11*1+rdx]
- xor eax,esi
- add r11d,ecx
- rol r13d,30
- add r11d,eax
- rol ebp,1
- xor r14d,DWORD[52+rsp]
- mov eax,r12d
- mov DWORD[48+rsp],ebp
- mov ecx,r11d
- xor r14d,DWORD[60+rsp]
- xor eax,esi
- rol ecx,5
- xor r14d,DWORD[20+rsp]
- lea edi,[1859775393+rdi*1+rbp]
- xor eax,r13d
- add edi,ecx
- rol r12d,30
- add edi,eax
- rol r14d,1
- xor edx,DWORD[56+rsp]
- mov eax,r11d
- mov DWORD[52+rsp],r14d
- mov ecx,edi
- xor edx,DWORD[rsp]
- xor eax,r13d
- rol ecx,5
- xor edx,DWORD[24+rsp]
- lea esi,[1859775393+rsi*1+r14]
- xor eax,r12d
- add esi,ecx
- rol r11d,30
- add esi,eax
- rol edx,1
- xor ebp,DWORD[60+rsp]
- mov eax,edi
- mov DWORD[56+rsp],edx
- mov ecx,esi
- xor ebp,DWORD[4+rsp]
- xor eax,r12d
- rol ecx,5
- xor ebp,DWORD[28+rsp]
- lea r13d,[1859775393+r13*1+rdx]
- xor eax,r11d
- add r13d,ecx
- rol edi,30
- add r13d,eax
- rol ebp,1
- xor r14d,DWORD[rsp]
- mov eax,esi
- mov DWORD[60+rsp],ebp
- mov ecx,r13d
- xor r14d,DWORD[8+rsp]
- xor eax,r11d
- rol ecx,5
- xor r14d,DWORD[32+rsp]
- lea r12d,[1859775393+r12*1+rbp]
- xor eax,edi
- add r12d,ecx
- rol esi,30
- add r12d,eax
- rol r14d,1
- xor edx,DWORD[4+rsp]
- mov eax,r13d
- mov DWORD[rsp],r14d
- mov ecx,r12d
- xor edx,DWORD[12+rsp]
- xor eax,edi
- rol ecx,5
- xor edx,DWORD[36+rsp]
- lea r11d,[1859775393+r11*1+r14]
- xor eax,esi
- add r11d,ecx
- rol r13d,30
- add r11d,eax
- rol edx,1
- xor ebp,DWORD[8+rsp]
- mov eax,r12d
- mov DWORD[4+rsp],edx
- mov ecx,r11d
- xor ebp,DWORD[16+rsp]
- xor eax,esi
- rol ecx,5
- xor ebp,DWORD[40+rsp]
- lea edi,[1859775393+rdi*1+rdx]
- xor eax,r13d
- add edi,ecx
- rol r12d,30
- add edi,eax
- rol ebp,1
- xor r14d,DWORD[12+rsp]
- mov eax,r11d
- mov DWORD[8+rsp],ebp
- mov ecx,edi
- xor r14d,DWORD[20+rsp]
- xor eax,r13d
- rol ecx,5
- xor r14d,DWORD[44+rsp]
- lea esi,[1859775393+rsi*1+rbp]
- xor eax,r12d
- add esi,ecx
- rol r11d,30
- add esi,eax
- rol r14d,1
- xor edx,DWORD[16+rsp]
- mov eax,edi
- mov DWORD[12+rsp],r14d
- mov ecx,esi
- xor edx,DWORD[24+rsp]
- xor eax,r12d
- rol ecx,5
- xor edx,DWORD[48+rsp]
- lea r13d,[1859775393+r13*1+r14]
- xor eax,r11d
- add r13d,ecx
- rol edi,30
- add r13d,eax
- rol edx,1
- xor ebp,DWORD[20+rsp]
- mov eax,esi
- mov DWORD[16+rsp],edx
- mov ecx,r13d
- xor ebp,DWORD[28+rsp]
- xor eax,r11d
- rol ecx,5
- xor ebp,DWORD[52+rsp]
- lea r12d,[1859775393+r12*1+rdx]
- xor eax,edi
- add r12d,ecx
- rol esi,30
- add r12d,eax
- rol ebp,1
- xor r14d,DWORD[24+rsp]
- mov eax,r13d
- mov DWORD[20+rsp],ebp
- mov ecx,r12d
- xor r14d,DWORD[32+rsp]
- xor eax,edi
- rol ecx,5
- xor r14d,DWORD[56+rsp]
- lea r11d,[1859775393+r11*1+rbp]
- xor eax,esi
- add r11d,ecx
- rol r13d,30
- add r11d,eax
- rol r14d,1
- xor edx,DWORD[28+rsp]
- mov eax,r12d
- mov DWORD[24+rsp],r14d
- mov ecx,r11d
- xor edx,DWORD[36+rsp]
- xor eax,esi
- rol ecx,5
- xor edx,DWORD[60+rsp]
- lea edi,[1859775393+rdi*1+r14]
- xor eax,r13d
- add edi,ecx
- rol r12d,30
- add edi,eax
- rol edx,1
- xor ebp,DWORD[32+rsp]
- mov eax,r11d
- mov DWORD[28+rsp],edx
- mov ecx,edi
- xor ebp,DWORD[40+rsp]
- xor eax,r13d
- rol ecx,5
- xor ebp,DWORD[rsp]
- lea esi,[1859775393+rsi*1+rdx]
- xor eax,r12d
- add esi,ecx
- rol r11d,30
- add esi,eax
- rol ebp,1
- xor r14d,DWORD[36+rsp]
- mov eax,r12d
- mov DWORD[32+rsp],ebp
- mov ebx,r12d
- xor r14d,DWORD[44+rsp]
- and eax,r11d
- mov ecx,esi
- xor r14d,DWORD[4+rsp]
- lea r13d,[((-1894007588))+r13*1+rbp]
- xor ebx,r11d
- rol ecx,5
- add r13d,eax
- rol r14d,1
- and ebx,edi
- add r13d,ecx
- rol edi,30
- add r13d,ebx
- xor edx,DWORD[40+rsp]
- mov eax,r11d
- mov DWORD[36+rsp],r14d
- mov ebx,r11d
- xor edx,DWORD[48+rsp]
- and eax,edi
- mov ecx,r13d
- xor edx,DWORD[8+rsp]
- lea r12d,[((-1894007588))+r12*1+r14]
- xor ebx,edi
- rol ecx,5
- add r12d,eax
- rol edx,1
- and ebx,esi
- add r12d,ecx
- rol esi,30
- add r12d,ebx
- xor ebp,DWORD[44+rsp]
- mov eax,edi
- mov DWORD[40+rsp],edx
- mov ebx,edi
- xor ebp,DWORD[52+rsp]
- and eax,esi
- mov ecx,r12d
- xor ebp,DWORD[12+rsp]
- lea r11d,[((-1894007588))+r11*1+rdx]
- xor ebx,esi
- rol ecx,5
- add r11d,eax
- rol ebp,1
- and ebx,r13d
- add r11d,ecx
- rol r13d,30
- add r11d,ebx
- xor r14d,DWORD[48+rsp]
- mov eax,esi
- mov DWORD[44+rsp],ebp
- mov ebx,esi
- xor r14d,DWORD[56+rsp]
- and eax,r13d
- mov ecx,r11d
- xor r14d,DWORD[16+rsp]
- lea edi,[((-1894007588))+rdi*1+rbp]
- xor ebx,r13d
- rol ecx,5
- add edi,eax
- rol r14d,1
- and ebx,r12d
- add edi,ecx
- rol r12d,30
- add edi,ebx
- xor edx,DWORD[52+rsp]
- mov eax,r13d
- mov DWORD[48+rsp],r14d
- mov ebx,r13d
- xor edx,DWORD[60+rsp]
- and eax,r12d
- mov ecx,edi
- xor edx,DWORD[20+rsp]
- lea esi,[((-1894007588))+rsi*1+r14]
- xor ebx,r12d
- rol ecx,5
- add esi,eax
- rol edx,1
- and ebx,r11d
- add esi,ecx
- rol r11d,30
- add esi,ebx
- xor ebp,DWORD[56+rsp]
- mov eax,r12d
- mov DWORD[52+rsp],edx
- mov ebx,r12d
- xor ebp,DWORD[rsp]
- and eax,r11d
- mov ecx,esi
- xor ebp,DWORD[24+rsp]
- lea r13d,[((-1894007588))+r13*1+rdx]
- xor ebx,r11d
- rol ecx,5
- add r13d,eax
- rol ebp,1
- and ebx,edi
- add r13d,ecx
- rol edi,30
- add r13d,ebx
- xor r14d,DWORD[60+rsp]
- mov eax,r11d
- mov DWORD[56+rsp],ebp
- mov ebx,r11d
- xor r14d,DWORD[4+rsp]
- and eax,edi
- mov ecx,r13d
- xor r14d,DWORD[28+rsp]
- lea r12d,[((-1894007588))+r12*1+rbp]
- xor ebx,edi
- rol ecx,5
- add r12d,eax
- rol r14d,1
- and ebx,esi
- add r12d,ecx
- rol esi,30
- add r12d,ebx
- xor edx,DWORD[rsp]
- mov eax,edi
- mov DWORD[60+rsp],r14d
- mov ebx,edi
- xor edx,DWORD[8+rsp]
- and eax,esi
- mov ecx,r12d
- xor edx,DWORD[32+rsp]
- lea r11d,[((-1894007588))+r11*1+r14]
- xor ebx,esi
- rol ecx,5
- add r11d,eax
- rol edx,1
- and ebx,r13d
- add r11d,ecx
- rol r13d,30
- add r11d,ebx
- xor ebp,DWORD[4+rsp]
- mov eax,esi
- mov DWORD[rsp],edx
- mov ebx,esi
- xor ebp,DWORD[12+rsp]
- and eax,r13d
- mov ecx,r11d
- xor ebp,DWORD[36+rsp]
- lea edi,[((-1894007588))+rdi*1+rdx]
- xor ebx,r13d
- rol ecx,5
- add edi,eax
- rol ebp,1
- and ebx,r12d
- add edi,ecx
- rol r12d,30
- add edi,ebx
- xor r14d,DWORD[8+rsp]
- mov eax,r13d
- mov DWORD[4+rsp],ebp
- mov ebx,r13d
- xor r14d,DWORD[16+rsp]
- and eax,r12d
- mov ecx,edi
- xor r14d,DWORD[40+rsp]
- lea esi,[((-1894007588))+rsi*1+rbp]
- xor ebx,r12d
- rol ecx,5
- add esi,eax
- rol r14d,1
- and ebx,r11d
- add esi,ecx
- rol r11d,30
- add esi,ebx
- xor edx,DWORD[12+rsp]
- mov eax,r12d
- mov DWORD[8+rsp],r14d
- mov ebx,r12d
- xor edx,DWORD[20+rsp]
- and eax,r11d
- mov ecx,esi
- xor edx,DWORD[44+rsp]
- lea r13d,[((-1894007588))+r13*1+r14]
- xor ebx,r11d
- rol ecx,5
- add r13d,eax
- rol edx,1
- and ebx,edi
- add r13d,ecx
- rol edi,30
- add r13d,ebx
- xor ebp,DWORD[16+rsp]
- mov eax,r11d
- mov DWORD[12+rsp],edx
- mov ebx,r11d
- xor ebp,DWORD[24+rsp]
- and eax,edi
- mov ecx,r13d
- xor ebp,DWORD[48+rsp]
- lea r12d,[((-1894007588))+r12*1+rdx]
- xor ebx,edi
- rol ecx,5
- add r12d,eax
- rol ebp,1
- and ebx,esi
- add r12d,ecx
- rol esi,30
- add r12d,ebx
- xor r14d,DWORD[20+rsp]
- mov eax,edi
- mov DWORD[16+rsp],ebp
- mov ebx,edi
- xor r14d,DWORD[28+rsp]
- and eax,esi
- mov ecx,r12d
- xor r14d,DWORD[52+rsp]
- lea r11d,[((-1894007588))+r11*1+rbp]
- xor ebx,esi
- rol ecx,5
- add r11d,eax
- rol r14d,1
- and ebx,r13d
- add r11d,ecx
- rol r13d,30
- add r11d,ebx
- xor edx,DWORD[24+rsp]
- mov eax,esi
- mov DWORD[20+rsp],r14d
- mov ebx,esi
- xor edx,DWORD[32+rsp]
- and eax,r13d
- mov ecx,r11d
- xor edx,DWORD[56+rsp]
- lea edi,[((-1894007588))+rdi*1+r14]
- xor ebx,r13d
- rol ecx,5
- add edi,eax
- rol edx,1
- and ebx,r12d
- add edi,ecx
- rol r12d,30
- add edi,ebx
- xor ebp,DWORD[28+rsp]
- mov eax,r13d
- mov DWORD[24+rsp],edx
- mov ebx,r13d
- xor ebp,DWORD[36+rsp]
- and eax,r12d
- mov ecx,edi
- xor ebp,DWORD[60+rsp]
- lea esi,[((-1894007588))+rsi*1+rdx]
- xor ebx,r12d
- rol ecx,5
- add esi,eax
- rol ebp,1
- and ebx,r11d
- add esi,ecx
- rol r11d,30
- add esi,ebx
- xor r14d,DWORD[32+rsp]
- mov eax,r12d
- mov DWORD[28+rsp],ebp
- mov ebx,r12d
- xor r14d,DWORD[40+rsp]
- and eax,r11d
- mov ecx,esi
- xor r14d,DWORD[rsp]
- lea r13d,[((-1894007588))+r13*1+rbp]
- xor ebx,r11d
- rol ecx,5
- add r13d,eax
- rol r14d,1
- and ebx,edi
- add r13d,ecx
- rol edi,30
- add r13d,ebx
- xor edx,DWORD[36+rsp]
- mov eax,r11d
- mov DWORD[32+rsp],r14d
- mov ebx,r11d
- xor edx,DWORD[44+rsp]
- and eax,edi
- mov ecx,r13d
- xor edx,DWORD[4+rsp]
- lea r12d,[((-1894007588))+r12*1+r14]
- xor ebx,edi
- rol ecx,5
- add r12d,eax
- rol edx,1
- and ebx,esi
- add r12d,ecx
- rol esi,30
- add r12d,ebx
- xor ebp,DWORD[40+rsp]
- mov eax,edi
- mov DWORD[36+rsp],edx
- mov ebx,edi
- xor ebp,DWORD[48+rsp]
- and eax,esi
- mov ecx,r12d
- xor ebp,DWORD[8+rsp]
- lea r11d,[((-1894007588))+r11*1+rdx]
- xor ebx,esi
- rol ecx,5
- add r11d,eax
- rol ebp,1
- and ebx,r13d
- add r11d,ecx
- rol r13d,30
- add r11d,ebx
- xor r14d,DWORD[44+rsp]
- mov eax,esi
- mov DWORD[40+rsp],ebp
- mov ebx,esi
- xor r14d,DWORD[52+rsp]
- and eax,r13d
- mov ecx,r11d
- xor r14d,DWORD[12+rsp]
- lea edi,[((-1894007588))+rdi*1+rbp]
- xor ebx,r13d
- rol ecx,5
- add edi,eax
- rol r14d,1
- and ebx,r12d
- add edi,ecx
- rol r12d,30
- add edi,ebx
- xor edx,DWORD[48+rsp]
- mov eax,r13d
- mov DWORD[44+rsp],r14d
- mov ebx,r13d
- xor edx,DWORD[56+rsp]
- and eax,r12d
- mov ecx,edi
- xor edx,DWORD[16+rsp]
- lea esi,[((-1894007588))+rsi*1+r14]
- xor ebx,r12d
- rol ecx,5
- add esi,eax
- rol edx,1
- and ebx,r11d
- add esi,ecx
- rol r11d,30
- add esi,ebx
- xor ebp,DWORD[52+rsp]
- mov eax,edi
- mov DWORD[48+rsp],edx
- mov ecx,esi
- xor ebp,DWORD[60+rsp]
- xor eax,r12d
- rol ecx,5
- xor ebp,DWORD[20+rsp]
- lea r13d,[((-899497514))+r13*1+rdx]
- xor eax,r11d
- add r13d,ecx
- rol edi,30
- add r13d,eax
- rol ebp,1
- xor r14d,DWORD[56+rsp]
- mov eax,esi
- mov DWORD[52+rsp],ebp
- mov ecx,r13d
- xor r14d,DWORD[rsp]
- xor eax,r11d
- rol ecx,5
- xor r14d,DWORD[24+rsp]
- lea r12d,[((-899497514))+r12*1+rbp]
- xor eax,edi
- add r12d,ecx
- rol esi,30
- add r12d,eax
- rol r14d,1
- xor edx,DWORD[60+rsp]
- mov eax,r13d
- mov DWORD[56+rsp],r14d
- mov ecx,r12d
- xor edx,DWORD[4+rsp]
- xor eax,edi
- rol ecx,5
- xor edx,DWORD[28+rsp]
- lea r11d,[((-899497514))+r11*1+r14]
- xor eax,esi
- add r11d,ecx
- rol r13d,30
- add r11d,eax
- rol edx,1
- xor ebp,DWORD[rsp]
- mov eax,r12d
- mov DWORD[60+rsp],edx
- mov ecx,r11d
- xor ebp,DWORD[8+rsp]
- xor eax,esi
- rol ecx,5
- xor ebp,DWORD[32+rsp]
- lea edi,[((-899497514))+rdi*1+rdx]
- xor eax,r13d
- add edi,ecx
- rol r12d,30
- add edi,eax
- rol ebp,1
- xor r14d,DWORD[4+rsp]
- mov eax,r11d
- mov DWORD[rsp],ebp
- mov ecx,edi
- xor r14d,DWORD[12+rsp]
- xor eax,r13d
- rol ecx,5
- xor r14d,DWORD[36+rsp]
- lea esi,[((-899497514))+rsi*1+rbp]
- xor eax,r12d
- add esi,ecx
- rol r11d,30
- add esi,eax
- rol r14d,1
- xor edx,DWORD[8+rsp]
- mov eax,edi
- mov DWORD[4+rsp],r14d
- mov ecx,esi
- xor edx,DWORD[16+rsp]
- xor eax,r12d
- rol ecx,5
- xor edx,DWORD[40+rsp]
- lea r13d,[((-899497514))+r13*1+r14]
- xor eax,r11d
- add r13d,ecx
- rol edi,30
- add r13d,eax
- rol edx,1
- xor ebp,DWORD[12+rsp]
- mov eax,esi
- mov DWORD[8+rsp],edx
- mov ecx,r13d
- xor ebp,DWORD[20+rsp]
- xor eax,r11d
- rol ecx,5
- xor ebp,DWORD[44+rsp]
- lea r12d,[((-899497514))+r12*1+rdx]
- xor eax,edi
- add r12d,ecx
- rol esi,30
- add r12d,eax
- rol ebp,1
- xor r14d,DWORD[16+rsp]
- mov eax,r13d
- mov DWORD[12+rsp],ebp
- mov ecx,r12d
- xor r14d,DWORD[24+rsp]
- xor eax,edi
- rol ecx,5
- xor r14d,DWORD[48+rsp]
- lea r11d,[((-899497514))+r11*1+rbp]
- xor eax,esi
- add r11d,ecx
- rol r13d,30
- add r11d,eax
- rol r14d,1
- xor edx,DWORD[20+rsp]
- mov eax,r12d
- mov DWORD[16+rsp],r14d
- mov ecx,r11d
- xor edx,DWORD[28+rsp]
- xor eax,esi
- rol ecx,5
- xor edx,DWORD[52+rsp]
- lea edi,[((-899497514))+rdi*1+r14]
- xor eax,r13d
- add edi,ecx
- rol r12d,30
- add edi,eax
- rol edx,1
- xor ebp,DWORD[24+rsp]
- mov eax,r11d
- mov DWORD[20+rsp],edx
- mov ecx,edi
- xor ebp,DWORD[32+rsp]
- xor eax,r13d
- rol ecx,5
- xor ebp,DWORD[56+rsp]
- lea esi,[((-899497514))+rsi*1+rdx]
- xor eax,r12d
- add esi,ecx
- rol r11d,30
- add esi,eax
- rol ebp,1
- xor r14d,DWORD[28+rsp]
- mov eax,edi
- mov DWORD[24+rsp],ebp
- mov ecx,esi
- xor r14d,DWORD[36+rsp]
- xor eax,r12d
- rol ecx,5
- xor r14d,DWORD[60+rsp]
- lea r13d,[((-899497514))+r13*1+rbp]
- xor eax,r11d
- add r13d,ecx
- rol edi,30
- add r13d,eax
- rol r14d,1
- xor edx,DWORD[32+rsp]
- mov eax,esi
- mov DWORD[28+rsp],r14d
- mov ecx,r13d
- xor edx,DWORD[40+rsp]
- xor eax,r11d
- rol ecx,5
- xor edx,DWORD[rsp]
- lea r12d,[((-899497514))+r12*1+r14]
- xor eax,edi
- add r12d,ecx
- rol esi,30
- add r12d,eax
- rol edx,1
- xor ebp,DWORD[36+rsp]
- mov eax,r13d
-
- mov ecx,r12d
- xor ebp,DWORD[44+rsp]
- xor eax,edi
- rol ecx,5
- xor ebp,DWORD[4+rsp]
- lea r11d,[((-899497514))+r11*1+rdx]
- xor eax,esi
- add r11d,ecx
- rol r13d,30
- add r11d,eax
- rol ebp,1
- xor r14d,DWORD[40+rsp]
- mov eax,r12d
-
- mov ecx,r11d
- xor r14d,DWORD[48+rsp]
- xor eax,esi
- rol ecx,5
- xor r14d,DWORD[8+rsp]
- lea edi,[((-899497514))+rdi*1+rbp]
- xor eax,r13d
- add edi,ecx
- rol r12d,30
- add edi,eax
- rol r14d,1
- xor edx,DWORD[44+rsp]
- mov eax,r11d
-
- mov ecx,edi
- xor edx,DWORD[52+rsp]
- xor eax,r13d
- rol ecx,5
- xor edx,DWORD[12+rsp]
- lea esi,[((-899497514))+rsi*1+r14]
- xor eax,r12d
- add esi,ecx
- rol r11d,30
- add esi,eax
- rol edx,1
- xor ebp,DWORD[48+rsp]
- mov eax,edi
-
- mov ecx,esi
- xor ebp,DWORD[56+rsp]
- xor eax,r12d
- rol ecx,5
- xor ebp,DWORD[16+rsp]
- lea r13d,[((-899497514))+r13*1+rdx]
- xor eax,r11d
- add r13d,ecx
- rol edi,30
- add r13d,eax
- rol ebp,1
- xor r14d,DWORD[52+rsp]
- mov eax,esi
-
- mov ecx,r13d
- xor r14d,DWORD[60+rsp]
- xor eax,r11d
- rol ecx,5
- xor r14d,DWORD[20+rsp]
- lea r12d,[((-899497514))+r12*1+rbp]
- xor eax,edi
- add r12d,ecx
- rol esi,30
- add r12d,eax
- rol r14d,1
- xor edx,DWORD[56+rsp]
- mov eax,r13d
-
- mov ecx,r12d
- xor edx,DWORD[rsp]
- xor eax,edi
- rol ecx,5
- xor edx,DWORD[24+rsp]
- lea r11d,[((-899497514))+r11*1+r14]
- xor eax,esi
- add r11d,ecx
- rol r13d,30
- add r11d,eax
- rol edx,1
- xor ebp,DWORD[60+rsp]
- mov eax,r12d
-
- mov ecx,r11d
- xor ebp,DWORD[4+rsp]
- xor eax,esi
- rol ecx,5
- xor ebp,DWORD[28+rsp]
- lea edi,[((-899497514))+rdi*1+rdx]
- xor eax,r13d
- add edi,ecx
- rol r12d,30
- add edi,eax
- rol ebp,1
- mov eax,r11d
- mov ecx,edi
- xor eax,r13d
- lea esi,[((-899497514))+rsi*1+rbp]
- rol ecx,5
- xor eax,r12d
- add esi,ecx
- rol r11d,30
- add esi,eax
- add esi,DWORD[r8]
- add edi,DWORD[4+r8]
- add r11d,DWORD[8+r8]
- add r12d,DWORD[12+r8]
- add r13d,DWORD[16+r8]
- mov DWORD[r8],esi
- mov DWORD[4+r8],edi
- mov DWORD[8+r8],r11d
- mov DWORD[12+r8],r12d
- mov DWORD[16+r8],r13d
-
- sub r10,1
- lea r9,[64+r9]
- jnz NEAR $L$loop
-
- mov rsi,QWORD[64+rsp]
-
- mov r14,QWORD[((-40))+rsi]
-
- mov r13,QWORD[((-32))+rsi]
-
- mov r12,QWORD[((-24))+rsi]
-
- mov rbp,QWORD[((-16))+rsi]
-
- mov rbx,QWORD[((-8))+rsi]
-
- lea rsp,[rsi]
-
-$L$epilogue:
- mov rdi,QWORD[8+rsp] ;WIN64 epilogue
- mov rsi,QWORD[16+rsp]
- DB 0F3h,0C3h ;repret
-
-$L$SEH_end_sha1_block_data_order:
-
-ALIGN 32
-sha1_block_data_order_shaext:
- mov QWORD[8+rsp],rdi ;WIN64 prologue
- mov QWORD[16+rsp],rsi
- mov rax,rsp
-$L$SEH_begin_sha1_block_data_order_shaext:
- mov rdi,rcx
- mov rsi,rdx
- mov rdx,r8
-
-
-_shaext_shortcut:
-
- lea rsp,[((-72))+rsp]
- movaps XMMWORD[(-8-64)+rax],xmm6
- movaps XMMWORD[(-8-48)+rax],xmm7
- movaps XMMWORD[(-8-32)+rax],xmm8
- movaps XMMWORD[(-8-16)+rax],xmm9
-$L$prologue_shaext:
- movdqu xmm0,XMMWORD[rdi]
- movd xmm1,DWORD[16+rdi]
- movdqa xmm3,XMMWORD[((K_XX_XX+160))]
-
- movdqu xmm4,XMMWORD[rsi]
- pshufd xmm0,xmm0,27
- movdqu xmm5,XMMWORD[16+rsi]
- pshufd xmm1,xmm1,27
- movdqu xmm6,XMMWORD[32+rsi]
-DB 102,15,56,0,227
- movdqu xmm7,XMMWORD[48+rsi]
-DB 102,15,56,0,235
-DB 102,15,56,0,243
- movdqa xmm9,xmm1
-DB 102,15,56,0,251
- jmp NEAR $L$oop_shaext
-
-ALIGN 16
-$L$oop_shaext:
- dec rdx
- lea r8,[64+rsi]
- paddd xmm1,xmm4
- cmovne rsi,r8
- movdqa xmm8,xmm0
-DB 15,56,201,229
- movdqa xmm2,xmm0
-DB 15,58,204,193,0
-DB 15,56,200,213
- pxor xmm4,xmm6
-DB 15,56,201,238
-DB 15,56,202,231
-
- movdqa xmm1,xmm0
-DB 15,58,204,194,0
-DB 15,56,200,206
- pxor xmm5,xmm7
-DB 15,56,202,236
-DB 15,56,201,247
- movdqa xmm2,xmm0
-DB 15,58,204,193,0
-DB 15,56,200,215
- pxor xmm6,xmm4
-DB 15,56,201,252
-DB 15,56,202,245
-
- movdqa xmm1,xmm0
-DB 15,58,204,194,0
-DB 15,56,200,204
- pxor xmm7,xmm5
-DB 15,56,202,254
-DB 15,56,201,229
- movdqa xmm2,xmm0
-DB 15,58,204,193,0
-DB 15,56,200,213
- pxor xmm4,xmm6
-DB 15,56,201,238
-DB 15,56,202,231
-
- movdqa xmm1,xmm0
-DB 15,58,204,194,1
-DB 15,56,200,206
- pxor xmm5,xmm7
-DB 15,56,202,236
-DB 15,56,201,247
- movdqa xmm2,xmm0
-DB 15,58,204,193,1
-DB 15,56,200,215
- pxor xmm6,xmm4
-DB 15,56,201,252
-DB 15,56,202,245
-
- movdqa xmm1,xmm0
-DB 15,58,204,194,1
-DB 15,56,200,204
- pxor xmm7,xmm5
-DB 15,56,202,254
-DB 15,56,201,229
- movdqa xmm2,xmm0
-DB 15,58,204,193,1
-DB 15,56,200,213
- pxor xmm4,xmm6
-DB 15,56,201,238
-DB 15,56,202,231
-
- movdqa xmm1,xmm0
-DB 15,58,204,194,1
-DB 15,56,200,206
- pxor xmm5,xmm7
-DB 15,56,202,236
-DB 15,56,201,247
- movdqa xmm2,xmm0
-DB 15,58,204,193,2
-DB 15,56,200,215
- pxor xmm6,xmm4
-DB 15,56,201,252
-DB 15,56,202,245
-
- movdqa xmm1,xmm0
-DB 15,58,204,194,2
-DB 15,56,200,204
- pxor xmm7,xmm5
-DB 15,56,202,254
-DB 15,56,201,229
- movdqa xmm2,xmm0
-DB 15,58,204,193,2
-DB 15,56,200,213
- pxor xmm4,xmm6
-DB 15,56,201,238
-DB 15,56,202,231
-
- movdqa xmm1,xmm0
-DB 15,58,204,194,2
-DB 15,56,200,206
- pxor xmm5,xmm7
-DB 15,56,202,236
-DB 15,56,201,247
- movdqa xmm2,xmm0
-DB 15,58,204,193,2
-DB 15,56,200,215
- pxor xmm6,xmm4
-DB 15,56,201,252
-DB 15,56,202,245
-
- movdqa xmm1,xmm0
-DB 15,58,204,194,3
-DB 15,56,200,204
- pxor xmm7,xmm5
-DB 15,56,202,254
- movdqu xmm4,XMMWORD[rsi]
- movdqa xmm2,xmm0
-DB 15,58,204,193,3
-DB 15,56,200,213
- movdqu xmm5,XMMWORD[16+rsi]
-DB 102,15,56,0,227
-
- movdqa xmm1,xmm0
-DB 15,58,204,194,3
-DB 15,56,200,206
- movdqu xmm6,XMMWORD[32+rsi]
-DB 102,15,56,0,235
-
- movdqa xmm2,xmm0
-DB 15,58,204,193,3
-DB 15,56,200,215
- movdqu xmm7,XMMWORD[48+rsi]
-DB 102,15,56,0,243
-
- movdqa xmm1,xmm0
-DB 15,58,204,194,3
-DB 65,15,56,200,201
-DB 102,15,56,0,251
-
- paddd xmm0,xmm8
- movdqa xmm9,xmm1
-
- jnz NEAR $L$oop_shaext
-
- pshufd xmm0,xmm0,27
- pshufd xmm1,xmm1,27
- movdqu XMMWORD[rdi],xmm0
- movd DWORD[16+rdi],xmm1
- movaps xmm6,XMMWORD[((-8-64))+rax]
- movaps xmm7,XMMWORD[((-8-48))+rax]
- movaps xmm8,XMMWORD[((-8-32))+rax]
- movaps xmm9,XMMWORD[((-8-16))+rax]
- mov rsp,rax
-$L$epilogue_shaext:
- mov rdi,QWORD[8+rsp] ;WIN64 epilogue
- mov rsi,QWORD[16+rsp]
- DB 0F3h,0C3h ;repret
-
-$L$SEH_end_sha1_block_data_order_shaext:
-
-ALIGN 16
-sha1_block_data_order_ssse3:
- mov QWORD[8+rsp],rdi ;WIN64 prologue
- mov QWORD[16+rsp],rsi
- mov rax,rsp
-$L$SEH_begin_sha1_block_data_order_ssse3:
- mov rdi,rcx
- mov rsi,rdx
- mov rdx,r8
-
-
-_ssse3_shortcut:
-
- mov r11,rsp
-
- push rbx
-
- push rbp
-
- push r12
-
- push r13
-
- push r14
-
- lea rsp,[((-160))+rsp]
- movaps XMMWORD[(-40-96)+r11],xmm6
- movaps XMMWORD[(-40-80)+r11],xmm7
- movaps XMMWORD[(-40-64)+r11],xmm8
- movaps XMMWORD[(-40-48)+r11],xmm9
- movaps XMMWORD[(-40-32)+r11],xmm10
- movaps XMMWORD[(-40-16)+r11],xmm11
-$L$prologue_ssse3:
- and rsp,-64
- mov r8,rdi
- mov r9,rsi
- mov r10,rdx
-
- shl r10,6
- add r10,r9
- lea r14,[((K_XX_XX+64))]
-
- mov eax,DWORD[r8]
- mov ebx,DWORD[4+r8]
- mov ecx,DWORD[8+r8]
- mov edx,DWORD[12+r8]
- mov esi,ebx
- mov ebp,DWORD[16+r8]
- mov edi,ecx
- xor edi,edx
- and esi,edi
-
- movdqa xmm6,XMMWORD[64+r14]
- movdqa xmm9,XMMWORD[((-64))+r14]
- movdqu xmm0,XMMWORD[r9]
- movdqu xmm1,XMMWORD[16+r9]
- movdqu xmm2,XMMWORD[32+r9]
- movdqu xmm3,XMMWORD[48+r9]
-DB 102,15,56,0,198
-DB 102,15,56,0,206
-DB 102,15,56,0,214
- add r9,64
- paddd xmm0,xmm9
-DB 102,15,56,0,222
- paddd xmm1,xmm9
- paddd xmm2,xmm9
- movdqa XMMWORD[rsp],xmm0
- psubd xmm0,xmm9
- movdqa XMMWORD[16+rsp],xmm1
- psubd xmm1,xmm9
- movdqa XMMWORD[32+rsp],xmm2
- psubd xmm2,xmm9
- jmp NEAR $L$oop_ssse3
-ALIGN 16
-$L$oop_ssse3:
- ror ebx,2
- pshufd xmm4,xmm0,238
- xor esi,edx
- movdqa xmm8,xmm3
- paddd xmm9,xmm3
- mov edi,eax
- add ebp,DWORD[rsp]
- punpcklqdq xmm4,xmm1
- xor ebx,ecx
- rol eax,5
- add ebp,esi
- psrldq xmm8,4
- and edi,ebx
- xor ebx,ecx
- pxor xmm4,xmm0
- add ebp,eax
- ror eax,7
- pxor xmm8,xmm2
- xor edi,ecx
- mov esi,ebp
- add edx,DWORD[4+rsp]
- pxor xmm4,xmm8
- xor eax,ebx
- rol ebp,5
- movdqa XMMWORD[48+rsp],xmm9
- add edx,edi
- and esi,eax
- movdqa xmm10,xmm4
- xor eax,ebx
- add edx,ebp
- ror ebp,7
- movdqa xmm8,xmm4
- xor esi,ebx
- pslldq xmm10,12
- paddd xmm4,xmm4
- mov edi,edx
- add ecx,DWORD[8+rsp]
- psrld xmm8,31
- xor ebp,eax
- rol edx,5
- add ecx,esi
- movdqa xmm9,xmm10
- and edi,ebp
- xor ebp,eax
- psrld xmm10,30
- add ecx,edx
- ror edx,7
- por xmm4,xmm8
- xor edi,eax
- mov esi,ecx
- add ebx,DWORD[12+rsp]
- pslld xmm9,2
- pxor xmm4,xmm10
- xor edx,ebp
- movdqa xmm10,XMMWORD[((-64))+r14]
- rol ecx,5
- add ebx,edi
- and esi,edx
- pxor xmm4,xmm9
- xor edx,ebp
- add ebx,ecx
- ror ecx,7
- pshufd xmm5,xmm1,238
- xor esi,ebp
- movdqa xmm9,xmm4
- paddd xmm10,xmm4
- mov edi,ebx
- add eax,DWORD[16+rsp]
- punpcklqdq xmm5,xmm2
- xor ecx,edx
- rol ebx,5
- add eax,esi
- psrldq xmm9,4
- and edi,ecx
- xor ecx,edx
- pxor xmm5,xmm1
- add eax,ebx
- ror ebx,7
- pxor xmm9,xmm3
- xor edi,edx
- mov esi,eax
- add ebp,DWORD[20+rsp]
- pxor xmm5,xmm9
- xor ebx,ecx
- rol eax,5
- movdqa XMMWORD[rsp],xmm10
- add ebp,edi
- and esi,ebx
- movdqa xmm8,xmm5
- xor ebx,ecx
- add ebp,eax
- ror eax,7
- movdqa xmm9,xmm5
- xor esi,ecx
- pslldq xmm8,12
- paddd xmm5,xmm5
- mov edi,ebp
- add edx,DWORD[24+rsp]
- psrld xmm9,31
- xor eax,ebx
- rol ebp,5
- add edx,esi
- movdqa xmm10,xmm8
- and edi,eax
- xor eax,ebx
- psrld xmm8,30
- add edx,ebp
- ror ebp,7
- por xmm5,xmm9
- xor edi,ebx
- mov esi,edx
- add ecx,DWORD[28+rsp]
- pslld xmm10,2
- pxor xmm5,xmm8
- xor ebp,eax
- movdqa xmm8,XMMWORD[((-32))+r14]
- rol edx,5
- add ecx,edi
- and esi,ebp
- pxor xmm5,xmm10
- xor ebp,eax
- add ecx,edx
- ror edx,7
- pshufd xmm6,xmm2,238
- xor esi,eax
- movdqa xmm10,xmm5
- paddd xmm8,xmm5
- mov edi,ecx
- add ebx,DWORD[32+rsp]
- punpcklqdq xmm6,xmm3
- xor edx,ebp
- rol ecx,5
- add ebx,esi
- psrldq xmm10,4
- and edi,edx
- xor edx,ebp
- pxor xmm6,xmm2
- add ebx,ecx
- ror ecx,7
- pxor xmm10,xmm4
- xor edi,ebp
- mov esi,ebx
- add eax,DWORD[36+rsp]
- pxor xmm6,xmm10
- xor ecx,edx
- rol ebx,5
- movdqa XMMWORD[16+rsp],xmm8
- add eax,edi
- and esi,ecx
- movdqa xmm9,xmm6
- xor ecx,edx
- add eax,ebx
- ror ebx,7
- movdqa xmm10,xmm6
- xor esi,edx
- pslldq xmm9,12
- paddd xmm6,xmm6
- mov edi,eax
- add ebp,DWORD[40+rsp]
- psrld xmm10,31
- xor ebx,ecx
- rol eax,5
- add ebp,esi
- movdqa xmm8,xmm9
- and edi,ebx
- xor ebx,ecx
- psrld xmm9,30
- add ebp,eax
- ror eax,7
- por xmm6,xmm10
- xor edi,ecx
- mov esi,ebp
- add edx,DWORD[44+rsp]
- pslld xmm8,2
- pxor xmm6,xmm9
- xor eax,ebx
- movdqa xmm9,XMMWORD[((-32))+r14]
- rol ebp,5
- add edx,edi
- and esi,eax
- pxor xmm6,xmm8
- xor eax,ebx
- add edx,ebp
- ror ebp,7
- pshufd xmm7,xmm3,238
- xor esi,ebx
- movdqa xmm8,xmm6
- paddd xmm9,xmm6
- mov edi,edx
- add ecx,DWORD[48+rsp]
- punpcklqdq xmm7,xmm4
- xor ebp,eax
- rol edx,5
- add ecx,esi
- psrldq xmm8,4
- and edi,ebp
- xor ebp,eax
- pxor xmm7,xmm3
- add ecx,edx
- ror edx,7
- pxor xmm8,xmm5
- xor edi,eax
- mov esi,ecx
- add ebx,DWORD[52+rsp]
- pxor xmm7,xmm8
- xor edx,ebp
- rol ecx,5
- movdqa XMMWORD[32+rsp],xmm9
- add ebx,edi
- and esi,edx
- movdqa xmm10,xmm7
- xor edx,ebp
- add ebx,ecx
- ror ecx,7
- movdqa xmm8,xmm7
- xor esi,ebp
- pslldq xmm10,12
- paddd xmm7,xmm7
- mov edi,ebx
- add eax,DWORD[56+rsp]
- psrld xmm8,31
- xor ecx,edx
- rol ebx,5
- add eax,esi
- movdqa xmm9,xmm10
- and edi,ecx
- xor ecx,edx
- psrld xmm10,30
- add eax,ebx
- ror ebx,7
- por xmm7,xmm8
- xor edi,edx
- mov esi,eax
- add ebp,DWORD[60+rsp]
- pslld xmm9,2
- pxor xmm7,xmm10
- xor ebx,ecx
- movdqa xmm10,XMMWORD[((-32))+r14]
- rol eax,5
- add ebp,edi
- and esi,ebx
- pxor xmm7,xmm9
- pshufd xmm9,xmm6,238
- xor ebx,ecx
- add ebp,eax
- ror eax,7
- pxor xmm0,xmm4
- xor esi,ecx
- mov edi,ebp
- add edx,DWORD[rsp]
- punpcklqdq xmm9,xmm7
- xor eax,ebx
- rol ebp,5
- pxor xmm0,xmm1
- add edx,esi
- and edi,eax
- movdqa xmm8,xmm10
- xor eax,ebx
- paddd xmm10,xmm7
- add edx,ebp
- pxor xmm0,xmm9
- ror ebp,7
- xor edi,ebx
- mov esi,edx
- add ecx,DWORD[4+rsp]
- movdqa xmm9,xmm0
- xor ebp,eax
- rol edx,5
- movdqa XMMWORD[48+rsp],xmm10
- add ecx,edi
- and esi,ebp
- xor ebp,eax
- pslld xmm0,2
- add ecx,edx
- ror edx,7
- psrld xmm9,30
- xor esi,eax
- mov edi,ecx
- add ebx,DWORD[8+rsp]
- por xmm0,xmm9
- xor edx,ebp
- rol ecx,5
- pshufd xmm10,xmm7,238
- add ebx,esi
- and edi,edx
- xor edx,ebp
- add ebx,ecx
- add eax,DWORD[12+rsp]
- xor edi,ebp
- mov esi,ebx
- rol ebx,5
- add eax,edi
- xor esi,edx
- ror ecx,7
- add eax,ebx
- pxor xmm1,xmm5
- add ebp,DWORD[16+rsp]
- xor esi,ecx
- punpcklqdq xmm10,xmm0
- mov edi,eax
- rol eax,5
- pxor xmm1,xmm2
- add ebp,esi
- xor edi,ecx
- movdqa xmm9,xmm8
- ror ebx,7
- paddd xmm8,xmm0
- add ebp,eax
- pxor xmm1,xmm10
- add edx,DWORD[20+rsp]
- xor edi,ebx
- mov esi,ebp
- rol ebp,5
- movdqa xmm10,xmm1
- add edx,edi
- xor esi,ebx
- movdqa XMMWORD[rsp],xmm8
- ror eax,7
- add edx,ebp
- add ecx,DWORD[24+rsp]
- pslld xmm1,2
- xor esi,eax
- mov edi,edx
- psrld xmm10,30
- rol edx,5
- add ecx,esi
- xor edi,eax
- ror ebp,7
- por xmm1,xmm10
- add ecx,edx
- add ebx,DWORD[28+rsp]
- pshufd xmm8,xmm0,238
- xor edi,ebp
- mov esi,ecx
- rol ecx,5
- add ebx,edi
- xor esi,ebp
- ror edx,7
- add ebx,ecx
- pxor xmm2,xmm6
- add eax,DWORD[32+rsp]
- xor esi,edx
- punpcklqdq xmm8,xmm1
- mov edi,ebx
- rol ebx,5
- pxor xmm2,xmm3
- add eax,esi
- xor edi,edx
- movdqa xmm10,XMMWORD[r14]
- ror ecx,7
- paddd xmm9,xmm1
- add eax,ebx
- pxor xmm2,xmm8
- add ebp,DWORD[36+rsp]
- xor edi,ecx
- mov esi,eax
- rol eax,5
- movdqa xmm8,xmm2
- add ebp,edi
- xor esi,ecx
- movdqa XMMWORD[16+rsp],xmm9
- ror ebx,7
- add ebp,eax
- add edx,DWORD[40+rsp]
- pslld xmm2,2
- xor esi,ebx
- mov edi,ebp
- psrld xmm8,30
- rol ebp,5
- add edx,esi
- xor edi,ebx
- ror eax,7
- por xmm2,xmm8
- add edx,ebp
- add ecx,DWORD[44+rsp]
- pshufd xmm9,xmm1,238
- xor edi,eax
- mov esi,edx
- rol edx,5
- add ecx,edi
- xor esi,eax
- ror ebp,7
- add ecx,edx
- pxor xmm3,xmm7
- add ebx,DWORD[48+rsp]
- xor esi,ebp
- punpcklqdq xmm9,xmm2
- mov edi,ecx
- rol ecx,5
- pxor xmm3,xmm4
- add ebx,esi
- xor edi,ebp
- movdqa xmm8,xmm10
- ror edx,7
- paddd xmm10,xmm2
- add ebx,ecx
- pxor xmm3,xmm9
- add eax,DWORD[52+rsp]
- xor edi,edx
- mov esi,ebx
- rol ebx,5
- movdqa xmm9,xmm3
- add eax,edi
- xor esi,edx
- movdqa XMMWORD[32+rsp],xmm10
- ror ecx,7
- add eax,ebx
- add ebp,DWORD[56+rsp]
- pslld xmm3,2
- xor esi,ecx
- mov edi,eax
- psrld xmm9,30
- rol eax,5
- add ebp,esi
- xor edi,ecx
- ror ebx,7
- por xmm3,xmm9
- add ebp,eax
- add edx,DWORD[60+rsp]
- pshufd xmm10,xmm2,238
- xor edi,ebx
- mov esi,ebp
- rol ebp,5
- add edx,edi
- xor esi,ebx
- ror eax,7
- add edx,ebp
- pxor xmm4,xmm0
- add ecx,DWORD[rsp]
- xor esi,eax
- punpcklqdq xmm10,xmm3
- mov edi,edx
- rol edx,5
- pxor xmm4,xmm5
- add ecx,esi
- xor edi,eax
- movdqa xmm9,xmm8
- ror ebp,7
- paddd xmm8,xmm3
- add ecx,edx
- pxor xmm4,xmm10
- add ebx,DWORD[4+rsp]
- xor edi,ebp
- mov esi,ecx
- rol ecx,5
- movdqa xmm10,xmm4
- add ebx,edi
- xor esi,ebp
- movdqa XMMWORD[48+rsp],xmm8
- ror edx,7
- add ebx,ecx
- add eax,DWORD[8+rsp]
- pslld xmm4,2
- xor esi,edx
- mov edi,ebx
- psrld xmm10,30
- rol ebx,5
- add eax,esi
- xor edi,edx
- ror ecx,7
- por xmm4,xmm10
- add eax,ebx
- add ebp,DWORD[12+rsp]
- pshufd xmm8,xmm3,238
- xor edi,ecx
- mov esi,eax
- rol eax,5
- add ebp,edi
- xor esi,ecx
- ror ebx,7
- add ebp,eax
- pxor xmm5,xmm1
- add edx,DWORD[16+rsp]
- xor esi,ebx
- punpcklqdq xmm8,xmm4
- mov edi,ebp
- rol ebp,5
- pxor xmm5,xmm6
- add edx,esi
- xor edi,ebx
- movdqa xmm10,xmm9
- ror eax,7
- paddd xmm9,xmm4
- add edx,ebp
- pxor xmm5,xmm8
- add ecx,DWORD[20+rsp]
- xor edi,eax
- mov esi,edx
- rol edx,5
- movdqa xmm8,xmm5
- add ecx,edi
- xor esi,eax
- movdqa XMMWORD[rsp],xmm9
- ror ebp,7
- add ecx,edx
- add ebx,DWORD[24+rsp]
- pslld xmm5,2
- xor esi,ebp
- mov edi,ecx
- psrld xmm8,30
- rol ecx,5
- add ebx,esi
- xor edi,ebp
- ror edx,7
- por xmm5,xmm8
- add ebx,ecx
- add eax,DWORD[28+rsp]
- pshufd xmm9,xmm4,238
- ror ecx,7
- mov esi,ebx
- xor edi,edx
- rol ebx,5
- add eax,edi
- xor esi,ecx
- xor ecx,edx
- add eax,ebx
- pxor xmm6,xmm2
- add ebp,DWORD[32+rsp]
- and esi,ecx
- xor ecx,edx
- ror ebx,7
- punpcklqdq xmm9,xmm5
- mov edi,eax
- xor esi,ecx
- pxor xmm6,xmm7
- rol eax,5
- add ebp,esi
- movdqa xmm8,xmm10
- xor edi,ebx
- paddd xmm10,xmm5
- xor ebx,ecx
- pxor xmm6,xmm9
- add ebp,eax
- add edx,DWORD[36+rsp]
- and edi,ebx
- xor ebx,ecx
- ror eax,7
- movdqa xmm9,xmm6
- mov esi,ebp
- xor edi,ebx
- movdqa XMMWORD[16+rsp],xmm10
- rol ebp,5
- add edx,edi
- xor esi,eax
- pslld xmm6,2
- xor eax,ebx
- add edx,ebp
- psrld xmm9,30
- add ecx,DWORD[40+rsp]
- and esi,eax
- xor eax,ebx
- por xmm6,xmm9
- ror ebp,7
- mov edi,edx
- xor esi,eax
- rol edx,5
- pshufd xmm10,xmm5,238
- add ecx,esi
- xor edi,ebp
- xor ebp,eax
- add ecx,edx
- add ebx,DWORD[44+rsp]
- and edi,ebp
- xor ebp,eax
- ror edx,7
- mov esi,ecx
- xor edi,ebp
- rol ecx,5
- add ebx,edi
- xor esi,edx
- xor edx,ebp
- add ebx,ecx
- pxor xmm7,xmm3
- add eax,DWORD[48+rsp]
- and esi,edx
- xor edx,ebp
- ror ecx,7
- punpcklqdq xmm10,xmm6
- mov edi,ebx
- xor esi,edx
- pxor xmm7,xmm0
- rol ebx,5
- add eax,esi
- movdqa xmm9,XMMWORD[32+r14]
- xor edi,ecx
- paddd xmm8,xmm6
- xor ecx,edx
- pxor xmm7,xmm10
- add eax,ebx
- add ebp,DWORD[52+rsp]
- and edi,ecx
- xor ecx,edx
- ror ebx,7
- movdqa xmm10,xmm7
- mov esi,eax
- xor edi,ecx
- movdqa XMMWORD[32+rsp],xmm8
- rol eax,5
- add ebp,edi
- xor esi,ebx
- pslld xmm7,2
- xor ebx,ecx
- add ebp,eax
- psrld xmm10,30
- add edx,DWORD[56+rsp]
- and esi,ebx
- xor ebx,ecx
- por xmm7,xmm10
- ror eax,7
- mov edi,ebp
- xor esi,ebx
- rol ebp,5
- pshufd xmm8,xmm6,238
- add edx,esi
- xor edi,eax
- xor eax,ebx
- add edx,ebp
- add ecx,DWORD[60+rsp]
- and edi,eax
- xor eax,ebx
- ror ebp,7
- mov esi,edx
- xor edi,eax
- rol edx,5
- add ecx,edi
- xor esi,ebp
- xor ebp,eax
- add ecx,edx
- pxor xmm0,xmm4
- add ebx,DWORD[rsp]
- and esi,ebp
- xor ebp,eax
- ror edx,7
- punpcklqdq xmm8,xmm7
- mov edi,ecx
- xor esi,ebp
- pxor xmm0,xmm1
- rol ecx,5
- add ebx,esi
- movdqa xmm10,xmm9
- xor edi,edx
- paddd xmm9,xmm7
- xor edx,ebp
- pxor xmm0,xmm8
- add ebx,ecx
- add eax,DWORD[4+rsp]
- and edi,edx
- xor edx,ebp
- ror ecx,7
- movdqa xmm8,xmm0
- mov esi,ebx
- xor edi,edx
- movdqa XMMWORD[48+rsp],xmm9
- rol ebx,5
- add eax,edi
- xor esi,ecx
- pslld xmm0,2
- xor ecx,edx
- add eax,ebx
- psrld xmm8,30
- add ebp,DWORD[8+rsp]
- and esi,ecx
- xor ecx,edx
- por xmm0,xmm8
- ror ebx,7
- mov edi,eax
- xor esi,ecx
- rol eax,5
- pshufd xmm9,xmm7,238
- add ebp,esi
- xor edi,ebx
- xor ebx,ecx
- add ebp,eax
- add edx,DWORD[12+rsp]
- and edi,ebx
- xor ebx,ecx
- ror eax,7
- mov esi,ebp
- xor edi,ebx
- rol ebp,5
- add edx,edi
- xor esi,eax
- xor eax,ebx
- add edx,ebp
- pxor xmm1,xmm5
- add ecx,DWORD[16+rsp]
- and esi,eax
- xor eax,ebx
- ror ebp,7
- punpcklqdq xmm9,xmm0
- mov edi,edx
- xor esi,eax
- pxor xmm1,xmm2
- rol edx,5
- add ecx,esi
- movdqa xmm8,xmm10
- xor edi,ebp
- paddd xmm10,xmm0
- xor ebp,eax
- pxor xmm1,xmm9
- add ecx,edx
- add ebx,DWORD[20+rsp]
- and edi,ebp
- xor ebp,eax
- ror edx,7
- movdqa xmm9,xmm1
- mov esi,ecx
- xor edi,ebp
- movdqa XMMWORD[rsp],xmm10
- rol ecx,5
- add ebx,edi
- xor esi,edx
- pslld xmm1,2
- xor edx,ebp
- add ebx,ecx
- psrld xmm9,30
- add eax,DWORD[24+rsp]
- and esi,edx
- xor edx,ebp
- por xmm1,xmm9
- ror ecx,7
- mov edi,ebx
- xor esi,edx
- rol ebx,5
- pshufd xmm10,xmm0,238
- add eax,esi
- xor edi,ecx
- xor ecx,edx
- add eax,ebx
- add ebp,DWORD[28+rsp]
- and edi,ecx
- xor ecx,edx
- ror ebx,7
- mov esi,eax
- xor edi,ecx
- rol eax,5
- add ebp,edi
- xor esi,ebx
- xor ebx,ecx
- add ebp,eax
- pxor xmm2,xmm6
- add edx,DWORD[32+rsp]
- and esi,ebx
- xor ebx,ecx
- ror eax,7
- punpcklqdq xmm10,xmm1
- mov edi,ebp
- xor esi,ebx
- pxor xmm2,xmm3
- rol ebp,5
- add edx,esi
- movdqa xmm9,xmm8
- xor edi,eax
- paddd xmm8,xmm1
- xor eax,ebx
- pxor xmm2,xmm10
- add edx,ebp
- add ecx,DWORD[36+rsp]
- and edi,eax
- xor eax,ebx
- ror ebp,7
- movdqa xmm10,xmm2
- mov esi,edx
- xor edi,eax
- movdqa XMMWORD[16+rsp],xmm8
- rol edx,5
- add ecx,edi
- xor esi,ebp
- pslld xmm2,2
- xor ebp,eax
- add ecx,edx
- psrld xmm10,30
- add ebx,DWORD[40+rsp]
- and esi,ebp
- xor ebp,eax
- por xmm2,xmm10
- ror edx,7
- mov edi,ecx
- xor esi,ebp
- rol ecx,5
- pshufd xmm8,xmm1,238
- add ebx,esi
- xor edi,edx
- xor edx,ebp
- add ebx,ecx
- add eax,DWORD[44+rsp]
- and edi,edx
- xor edx,ebp
- ror ecx,7
- mov esi,ebx
- xor edi,edx
- rol ebx,5
- add eax,edi
- xor esi,edx
- add eax,ebx
- pxor xmm3,xmm7
- add ebp,DWORD[48+rsp]
- xor esi,ecx
- punpcklqdq xmm8,xmm2
- mov edi,eax
- rol eax,5
- pxor xmm3,xmm4
- add ebp,esi
- xor edi,ecx
- movdqa xmm10,xmm9
- ror ebx,7
- paddd xmm9,xmm2
- add ebp,eax
- pxor xmm3,xmm8
- add edx,DWORD[52+rsp]
- xor edi,ebx
- mov esi,ebp
- rol ebp,5
- movdqa xmm8,xmm3
- add edx,edi
- xor esi,ebx
- movdqa XMMWORD[32+rsp],xmm9
- ror eax,7
- add edx,ebp
- add ecx,DWORD[56+rsp]
- pslld xmm3,2
- xor esi,eax
- mov edi,edx
- psrld xmm8,30
- rol edx,5
- add ecx,esi
- xor edi,eax
- ror ebp,7
- por xmm3,xmm8
- add ecx,edx
- add ebx,DWORD[60+rsp]
- xor edi,ebp
- mov esi,ecx
- rol ecx,5
- add ebx,edi
- xor esi,ebp
- ror edx,7
- add ebx,ecx
- add eax,DWORD[rsp]
- xor esi,edx
- mov edi,ebx
- rol ebx,5
- paddd xmm10,xmm3
- add eax,esi
- xor edi,edx
- movdqa XMMWORD[48+rsp],xmm10
- ror ecx,7
- add eax,ebx
- add ebp,DWORD[4+rsp]
- xor edi,ecx
- mov esi,eax
- rol eax,5
- add ebp,edi
- xor esi,ecx
- ror ebx,7
- add ebp,eax
- add edx,DWORD[8+rsp]
- xor esi,ebx
- mov edi,ebp
- rol ebp,5
- add edx,esi
- xor edi,ebx
- ror eax,7
- add edx,ebp
- add ecx,DWORD[12+rsp]
- xor edi,eax
- mov esi,edx
- rol edx,5
- add ecx,edi
- xor esi,eax
- ror ebp,7
- add ecx,edx
- cmp r9,r10
- je NEAR $L$done_ssse3
- movdqa xmm6,XMMWORD[64+r14]
- movdqa xmm9,XMMWORD[((-64))+r14]
- movdqu xmm0,XMMWORD[r9]
- movdqu xmm1,XMMWORD[16+r9]
- movdqu xmm2,XMMWORD[32+r9]
- movdqu xmm3,XMMWORD[48+r9]
-DB 102,15,56,0,198
- add r9,64
- add ebx,DWORD[16+rsp]
- xor esi,ebp
- mov edi,ecx
-DB 102,15,56,0,206
- rol ecx,5
- add ebx,esi
- xor edi,ebp
- ror edx,7
- paddd xmm0,xmm9
- add ebx,ecx
- add eax,DWORD[20+rsp]
- xor edi,edx
- mov esi,ebx
- movdqa XMMWORD[rsp],xmm0
- rol ebx,5
- add eax,edi
- xor esi,edx
- ror ecx,7
- psubd xmm0,xmm9
- add eax,ebx
- add ebp,DWORD[24+rsp]
- xor esi,ecx
- mov edi,eax
- rol eax,5
- add ebp,esi
- xor edi,ecx
- ror ebx,7
- add ebp,eax
- add edx,DWORD[28+rsp]
- xor edi,ebx
- mov esi,ebp
- rol ebp,5
- add edx,edi
- xor esi,ebx
- ror eax,7
- add edx,ebp
- add ecx,DWORD[32+rsp]
- xor esi,eax
- mov edi,edx
-DB 102,15,56,0,214
- rol edx,5
- add ecx,esi
- xor edi,eax
- ror ebp,7
- paddd xmm1,xmm9
- add ecx,edx
- add ebx,DWORD[36+rsp]
- xor edi,ebp
- mov esi,ecx
- movdqa XMMWORD[16+rsp],xmm1
- rol ecx,5
- add ebx,edi
- xor esi,ebp
- ror edx,7
- psubd xmm1,xmm9
- add ebx,ecx
- add eax,DWORD[40+rsp]
- xor esi,edx
- mov edi,ebx
- rol ebx,5
- add eax,esi
- xor edi,edx
- ror ecx,7
- add eax,ebx
- add ebp,DWORD[44+rsp]
- xor edi,ecx
- mov esi,eax
- rol eax,5
- add ebp,edi
- xor esi,ecx
- ror ebx,7
- add ebp,eax
- add edx,DWORD[48+rsp]
- xor esi,ebx
- mov edi,ebp
-DB 102,15,56,0,222
- rol ebp,5
- add edx,esi
- xor edi,ebx
- ror eax,7
- paddd xmm2,xmm9
- add edx,ebp
- add ecx,DWORD[52+rsp]
- xor edi,eax
- mov esi,edx
- movdqa XMMWORD[32+rsp],xmm2
- rol edx,5
- add ecx,edi
- xor esi,eax
- ror ebp,7
- psubd xmm2,xmm9
- add ecx,edx
- add ebx,DWORD[56+rsp]
- xor esi,ebp
- mov edi,ecx
- rol ecx,5
- add ebx,esi
- xor edi,ebp
- ror edx,7
- add ebx,ecx
- add eax,DWORD[60+rsp]
- xor edi,edx
- mov esi,ebx
- rol ebx,5
- add eax,edi
- ror ecx,7
- add eax,ebx
- add eax,DWORD[r8]
- add esi,DWORD[4+r8]
- add ecx,DWORD[8+r8]
- add edx,DWORD[12+r8]
- mov DWORD[r8],eax
- add ebp,DWORD[16+r8]
- mov DWORD[4+r8],esi
- mov ebx,esi
- mov DWORD[8+r8],ecx
- mov edi,ecx
- mov DWORD[12+r8],edx
- xor edi,edx
- mov DWORD[16+r8],ebp
- and esi,edi
- jmp NEAR $L$oop_ssse3
-
-ALIGN 16
-$L$done_ssse3:
- add ebx,DWORD[16+rsp]
- xor esi,ebp
- mov edi,ecx
- rol ecx,5
- add ebx,esi
- xor edi,ebp
- ror edx,7
- add ebx,ecx
- add eax,DWORD[20+rsp]
- xor edi,edx
- mov esi,ebx
- rol ebx,5
- add eax,edi
- xor esi,edx
- ror ecx,7
- add eax,ebx
- add ebp,DWORD[24+rsp]
- xor esi,ecx
- mov edi,eax
- rol eax,5
- add ebp,esi
- xor edi,ecx
- ror ebx,7
- add ebp,eax
- add edx,DWORD[28+rsp]
- xor edi,ebx
- mov esi,ebp
- rol ebp,5
- add edx,edi
- xor esi,ebx
- ror eax,7
- add edx,ebp
- add ecx,DWORD[32+rsp]
- xor esi,eax
- mov edi,edx
- rol edx,5
- add ecx,esi
- xor edi,eax
- ror ebp,7
- add ecx,edx
- add ebx,DWORD[36+rsp]
- xor edi,ebp
- mov esi,ecx
- rol ecx,5
- add ebx,edi
- xor esi,ebp
- ror edx,7
- add ebx,ecx
- add eax,DWORD[40+rsp]
- xor esi,edx
- mov edi,ebx
- rol ebx,5
- add eax,esi
- xor edi,edx
- ror ecx,7
- add eax,ebx
- add ebp,DWORD[44+rsp]
- xor edi,ecx
- mov esi,eax
- rol eax,5
- add ebp,edi
- xor esi,ecx
- ror ebx,7
- add ebp,eax
- add edx,DWORD[48+rsp]
- xor esi,ebx
- mov edi,ebp
- rol ebp,5
- add edx,esi
- xor edi,ebx
- ror eax,7
- add edx,ebp
- add ecx,DWORD[52+rsp]
- xor edi,eax
- mov esi,edx
- rol edx,5
- add ecx,edi
- xor esi,eax
- ror ebp,7
- add ecx,edx
- add ebx,DWORD[56+rsp]
- xor esi,ebp
- mov edi,ecx
- rol ecx,5
- add ebx,esi
- xor edi,ebp
- ror edx,7
- add ebx,ecx
- add eax,DWORD[60+rsp]
- xor edi,edx
- mov esi,ebx
- rol ebx,5
- add eax,edi
- ror ecx,7
- add eax,ebx
- add eax,DWORD[r8]
- add esi,DWORD[4+r8]
- add ecx,DWORD[8+r8]
- mov DWORD[r8],eax
- add edx,DWORD[12+r8]
- mov DWORD[4+r8],esi
- add ebp,DWORD[16+r8]
- mov DWORD[8+r8],ecx
- mov DWORD[12+r8],edx
- mov DWORD[16+r8],ebp
- movaps xmm6,XMMWORD[((-40-96))+r11]
- movaps xmm7,XMMWORD[((-40-80))+r11]
- movaps xmm8,XMMWORD[((-40-64))+r11]
- movaps xmm9,XMMWORD[((-40-48))+r11]
- movaps xmm10,XMMWORD[((-40-32))+r11]
- movaps xmm11,XMMWORD[((-40-16))+r11]
- mov r14,QWORD[((-40))+r11]
-
- mov r13,QWORD[((-32))+r11]
-
- mov r12,QWORD[((-24))+r11]
-
- mov rbp,QWORD[((-16))+r11]
-
- mov rbx,QWORD[((-8))+r11]
-
- lea rsp,[r11]
-
-$L$epilogue_ssse3:
- mov rdi,QWORD[8+rsp] ;WIN64 epilogue
- mov rsi,QWORD[16+rsp]
- DB 0F3h,0C3h ;repret
-
-$L$SEH_end_sha1_block_data_order_ssse3:
-ALIGN 64
-K_XX_XX:
- DD 0x5a827999,0x5a827999,0x5a827999,0x5a827999
- DD 0x5a827999,0x5a827999,0x5a827999,0x5a827999
- DD 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1
- DD 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1
- DD 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc
- DD 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc
- DD 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6
- DD 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6
- DD 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f
- DD 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f
-DB 0xf,0xe,0xd,0xc,0xb,0xa,0x9,0x8,0x7,0x6,0x5,0x4,0x3,0x2,0x1,0x0
-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,95,54,52,44
-DB 32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60
-DB 97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114
-DB 103,62,0
-ALIGN 64
-EXTERN __imp_RtlVirtualUnwind
-
-ALIGN 16
-se_handler:
- push rsi
- push rdi
- push rbx
- push rbp
- push r12
- push r13
- push r14
- push r15
- pushfq
- sub rsp,64
-
- mov rax,QWORD[120+r8]
- mov rbx,QWORD[248+r8]
-
- lea r10,[$L$prologue]
- cmp rbx,r10
- jb NEAR $L$common_seh_tail
-
- mov rax,QWORD[152+r8]
-
- lea r10,[$L$epilogue]
- cmp rbx,r10
- jae NEAR $L$common_seh_tail
-
- mov rax,QWORD[64+rax]
-
- mov rbx,QWORD[((-8))+rax]
- mov rbp,QWORD[((-16))+rax]
- mov r12,QWORD[((-24))+rax]
- mov r13,QWORD[((-32))+rax]
- mov r14,QWORD[((-40))+rax]
- mov QWORD[144+r8],rbx
- mov QWORD[160+r8],rbp
- mov QWORD[216+r8],r12
- mov QWORD[224+r8],r13
- mov QWORD[232+r8],r14
-
- jmp NEAR $L$common_seh_tail
-
-
-ALIGN 16
-shaext_handler:
- push rsi
- push rdi
- push rbx
- push rbp
- push r12
- push r13
- push r14
- push r15
- pushfq
- sub rsp,64
-
- mov rax,QWORD[120+r8]
- mov rbx,QWORD[248+r8]
-
- lea r10,[$L$prologue_shaext]
- cmp rbx,r10
- jb NEAR $L$common_seh_tail
-
- lea r10,[$L$epilogue_shaext]
- cmp rbx,r10
- jae NEAR $L$common_seh_tail
-
- lea rsi,[((-8-64))+rax]
- lea rdi,[512+r8]
- mov ecx,8
- DD 0xa548f3fc
-
- jmp NEAR $L$common_seh_tail
-
-
-ALIGN 16
-ssse3_handler:
- push rsi
- push rdi
- push rbx
- push rbp
- push r12
- push r13
- push r14
- push r15
- pushfq
- sub rsp,64
-
- mov rax,QWORD[120+r8]
- mov rbx,QWORD[248+r8]
-
- mov rsi,QWORD[8+r9]
- mov r11,QWORD[56+r9]
-
- mov r10d,DWORD[r11]
- lea r10,[r10*1+rsi]
- cmp rbx,r10
- jb NEAR $L$common_seh_tail
-
- mov rax,QWORD[208+r8]
-
- mov r10d,DWORD[4+r11]
- lea r10,[r10*1+rsi]
- cmp rbx,r10
- jae NEAR $L$common_seh_tail
-
- lea rsi,[((-40-96))+rax]
- lea rdi,[512+r8]
- mov ecx,12
- DD 0xa548f3fc
-
- mov rbx,QWORD[((-8))+rax]
- mov rbp,QWORD[((-16))+rax]
- mov r12,QWORD[((-24))+rax]
- mov r13,QWORD[((-32))+rax]
- mov r14,QWORD[((-40))+rax]
- mov QWORD[144+r8],rbx
- mov QWORD[160+r8],rbp
- mov QWORD[216+r8],r12
- mov QWORD[224+r8],r13
- mov QWORD[232+r8],r14
-
-$L$common_seh_tail:
- mov rdi,QWORD[8+rax]
- mov rsi,QWORD[16+rax]
- mov QWORD[152+r8],rax
- mov QWORD[168+r8],rsi
- mov QWORD[176+r8],rdi
-
- mov rdi,QWORD[40+r9]
- mov rsi,r8
- mov ecx,154
- DD 0xa548f3fc
-
- mov rsi,r9
- xor rcx,rcx
- mov rdx,QWORD[8+rsi]
- mov r8,QWORD[rsi]
- mov r9,QWORD[16+rsi]
- mov r10,QWORD[40+rsi]
- lea r11,[56+rsi]
- lea r12,[24+rsi]
- mov QWORD[32+rsp],r10
- mov QWORD[40+rsp],r11
- mov QWORD[48+rsp],r12
- mov QWORD[56+rsp],rcx
- call QWORD[__imp_RtlVirtualUnwind]
-
- mov eax,1
- add rsp,64
- popfq
- pop r15
- pop r14
- pop r13
- pop r12
- pop rbp
- pop rbx
- pop rdi
- pop rsi
- DB 0F3h,0C3h ;repret
-
-
-section .pdata rdata align=4
-ALIGN 4
- DD $L$SEH_begin_sha1_block_data_order wrt ..imagebase
- DD $L$SEH_end_sha1_block_data_order wrt ..imagebase
- DD $L$SEH_info_sha1_block_data_order wrt ..imagebase
- DD $L$SEH_begin_sha1_block_data_order_shaext wrt ..imagebase
- DD $L$SEH_end_sha1_block_data_order_shaext wrt ..imagebase
- DD $L$SEH_info_sha1_block_data_order_shaext wrt ..imagebase
- DD $L$SEH_begin_sha1_block_data_order_ssse3 wrt ..imagebase
- DD $L$SEH_end_sha1_block_data_order_ssse3 wrt ..imagebase
- DD $L$SEH_info_sha1_block_data_order_ssse3 wrt ..imagebase
-section .xdata rdata align=8
-ALIGN 8
-$L$SEH_info_sha1_block_data_order:
-DB 9,0,0,0
- DD se_handler wrt ..imagebase
-$L$SEH_info_sha1_block_data_order_shaext:
-DB 9,0,0,0
- DD shaext_handler wrt ..imagebase
-$L$SEH_info_sha1_block_data_order_ssse3:
-DB 9,0,0,0
- DD ssse3_handler wrt ..imagebase
- DD $L$prologue_ssse3 wrt ..imagebase,$L$epilogue_ssse3 wrt ..imagebase