summaryrefslogtreecommitdiffstats
path: root/CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni-sha1-x86_64.nasm
diff options
context:
space:
mode:
Diffstat (limited to 'CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni-sha1-x86_64.nasm')
-rw-r--r--CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni-sha1-x86_64.nasm1916
1 files changed, 0 insertions, 1916 deletions
diff --git a/CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni-sha1-x86_64.nasm b/CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni-sha1-x86_64.nasm
deleted file mode 100644
index f4fd9ca50d..0000000000
--- a/CryptoPkg/Library/OpensslLib/X64/crypto/aes/aesni-sha1-x86_64.nasm
+++ /dev/null
@@ -1,1916 +0,0 @@
-; WARNING: do not edit!
-; Generated from openssl/crypto/aes/asm/aesni-sha1-x86_64.pl
-;
-; Copyright 2011-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 aesni_cbc_sha1_enc
-
-ALIGN 32
-aesni_cbc_sha1_enc:
-
-
- mov r10d,DWORD[((OPENSSL_ia32cap_P+0))]
- mov r11,QWORD[((OPENSSL_ia32cap_P+4))]
- bt r11,61
- jc NEAR aesni_cbc_sha1_enc_shaext
- jmp NEAR aesni_cbc_sha1_enc_ssse3
- DB 0F3h,0C3h ;repret
-
-
-
-ALIGN 32
-aesni_cbc_sha1_enc_ssse3:
- mov QWORD[8+rsp],rdi ;WIN64 prologue
- mov QWORD[16+rsp],rsi
- mov rax,rsp
-$L$SEH_begin_aesni_cbc_sha1_enc_ssse3:
- mov rdi,rcx
- mov rsi,rdx
- mov rdx,r8
- mov rcx,r9
- mov r8,QWORD[40+rsp]
- mov r9,QWORD[48+rsp]
-
-
-
- mov r10,QWORD[56+rsp]
-
-
- push rbx
-
- push rbp
-
- push r12
-
- push r13
-
- push r14
-
- push r15
-
- lea rsp,[((-264))+rsp]
-
-
-
- movaps XMMWORD[(96+0)+rsp],xmm6
- movaps XMMWORD[(96+16)+rsp],xmm7
- movaps XMMWORD[(96+32)+rsp],xmm8
- movaps XMMWORD[(96+48)+rsp],xmm9
- movaps XMMWORD[(96+64)+rsp],xmm10
- movaps XMMWORD[(96+80)+rsp],xmm11
- movaps XMMWORD[(96+96)+rsp],xmm12
- movaps XMMWORD[(96+112)+rsp],xmm13
- movaps XMMWORD[(96+128)+rsp],xmm14
- movaps XMMWORD[(96+144)+rsp],xmm15
-$L$prologue_ssse3:
- mov r12,rdi
- mov r13,rsi
- mov r14,rdx
- lea r15,[112+rcx]
- movdqu xmm2,XMMWORD[r8]
- mov QWORD[88+rsp],r8
- shl r14,6
- sub r13,r12
- mov r8d,DWORD[((240-112))+r15]
- add r14,r10
-
- lea r11,[K_XX_XX]
- mov eax,DWORD[r9]
- mov ebx,DWORD[4+r9]
- mov ecx,DWORD[8+r9]
- mov edx,DWORD[12+r9]
- mov esi,ebx
- mov ebp,DWORD[16+r9]
- mov edi,ecx
- xor edi,edx
- and esi,edi
-
- movdqa xmm3,XMMWORD[64+r11]
- movdqa xmm13,XMMWORD[r11]
- movdqu xmm4,XMMWORD[r10]
- movdqu xmm5,XMMWORD[16+r10]
- movdqu xmm6,XMMWORD[32+r10]
- movdqu xmm7,XMMWORD[48+r10]
-DB 102,15,56,0,227
-DB 102,15,56,0,235
-DB 102,15,56,0,243
- add r10,64
- paddd xmm4,xmm13
-DB 102,15,56,0,251
- paddd xmm5,xmm13
- paddd xmm6,xmm13
- movdqa XMMWORD[rsp],xmm4
- psubd xmm4,xmm13
- movdqa XMMWORD[16+rsp],xmm5
- psubd xmm5,xmm13
- movdqa XMMWORD[32+rsp],xmm6
- psubd xmm6,xmm13
- movups xmm15,XMMWORD[((-112))+r15]
- movups xmm0,XMMWORD[((16-112))+r15]
- jmp NEAR $L$oop_ssse3
-ALIGN 32
-$L$oop_ssse3:
- ror ebx,2
- movups xmm14,XMMWORD[r12]
- xorps xmm14,xmm15
- xorps xmm2,xmm14
- movups xmm1,XMMWORD[((-80))+r15]
-DB 102,15,56,220,208
- pshufd xmm8,xmm4,238
- xor esi,edx
- movdqa xmm12,xmm7
- paddd xmm13,xmm7
- mov edi,eax
- add ebp,DWORD[rsp]
- punpcklqdq xmm8,xmm5
- xor ebx,ecx
- rol eax,5
- add ebp,esi
- psrldq xmm12,4
- and edi,ebx
- xor ebx,ecx
- pxor xmm8,xmm4
- add ebp,eax
- ror eax,7
- pxor xmm12,xmm6
- xor edi,ecx
- mov esi,ebp
- add edx,DWORD[4+rsp]
- pxor xmm8,xmm12
- xor eax,ebx
- rol ebp,5
- movdqa XMMWORD[48+rsp],xmm13
- add edx,edi
- movups xmm0,XMMWORD[((-64))+r15]
-DB 102,15,56,220,209
- and esi,eax
- movdqa xmm3,xmm8
- xor eax,ebx
- add edx,ebp
- ror ebp,7
- movdqa xmm12,xmm8
- xor esi,ebx
- pslldq xmm3,12
- paddd xmm8,xmm8
- mov edi,edx
- add ecx,DWORD[8+rsp]
- psrld xmm12,31
- xor ebp,eax
- rol edx,5
- add ecx,esi
- movdqa xmm13,xmm3
- and edi,ebp
- xor ebp,eax
- psrld xmm3,30
- add ecx,edx
- ror edx,7
- por xmm8,xmm12
- xor edi,eax
- mov esi,ecx
- add ebx,DWORD[12+rsp]
- movups xmm1,XMMWORD[((-48))+r15]
-DB 102,15,56,220,208
- pslld xmm13,2
- pxor xmm8,xmm3
- xor edx,ebp
- movdqa xmm3,XMMWORD[r11]
- rol ecx,5
- add ebx,edi
- and esi,edx
- pxor xmm8,xmm13
- xor edx,ebp
- add ebx,ecx
- ror ecx,7
- pshufd xmm9,xmm5,238
- xor esi,ebp
- movdqa xmm13,xmm8
- paddd xmm3,xmm8
- mov edi,ebx
- add eax,DWORD[16+rsp]
- punpcklqdq xmm9,xmm6
- xor ecx,edx
- rol ebx,5
- add eax,esi
- psrldq xmm13,4
- and edi,ecx
- xor ecx,edx
- pxor xmm9,xmm5
- add eax,ebx
- ror ebx,7
- movups xmm0,XMMWORD[((-32))+r15]
-DB 102,15,56,220,209
- pxor xmm13,xmm7
- xor edi,edx
- mov esi,eax
- add ebp,DWORD[20+rsp]
- pxor xmm9,xmm13
- xor ebx,ecx
- rol eax,5
- movdqa XMMWORD[rsp],xmm3
- add ebp,edi
- and esi,ebx
- movdqa xmm12,xmm9
- xor ebx,ecx
- add ebp,eax
- ror eax,7
- movdqa xmm13,xmm9
- xor esi,ecx
- pslldq xmm12,12
- paddd xmm9,xmm9
- mov edi,ebp
- add edx,DWORD[24+rsp]
- psrld xmm13,31
- xor eax,ebx
- rol ebp,5
- add edx,esi
- movups xmm1,XMMWORD[((-16))+r15]
-DB 102,15,56,220,208
- movdqa xmm3,xmm12
- and edi,eax
- xor eax,ebx
- psrld xmm12,30
- add edx,ebp
- ror ebp,7
- por xmm9,xmm13
- xor edi,ebx
- mov esi,edx
- add ecx,DWORD[28+rsp]
- pslld xmm3,2
- pxor xmm9,xmm12
- xor ebp,eax
- movdqa xmm12,XMMWORD[16+r11]
- rol edx,5
- add ecx,edi
- and esi,ebp
- pxor xmm9,xmm3
- xor ebp,eax
- add ecx,edx
- ror edx,7
- pshufd xmm10,xmm6,238
- xor esi,eax
- movdqa xmm3,xmm9
- paddd xmm12,xmm9
- mov edi,ecx
- add ebx,DWORD[32+rsp]
- movups xmm0,XMMWORD[r15]
-DB 102,15,56,220,209
- punpcklqdq xmm10,xmm7
- xor edx,ebp
- rol ecx,5
- add ebx,esi
- psrldq xmm3,4
- and edi,edx
- xor edx,ebp
- pxor xmm10,xmm6
- add ebx,ecx
- ror ecx,7
- pxor xmm3,xmm8
- xor edi,ebp
- mov esi,ebx
- add eax,DWORD[36+rsp]
- pxor xmm10,xmm3
- xor ecx,edx
- rol ebx,5
- movdqa XMMWORD[16+rsp],xmm12
- add eax,edi
- and esi,ecx
- movdqa xmm13,xmm10
- xor ecx,edx
- add eax,ebx
- ror ebx,7
- movups xmm1,XMMWORD[16+r15]
-DB 102,15,56,220,208
- movdqa xmm3,xmm10
- xor esi,edx
- pslldq xmm13,12
- paddd xmm10,xmm10
- mov edi,eax
- add ebp,DWORD[40+rsp]
- psrld xmm3,31
- xor ebx,ecx
- rol eax,5
- add ebp,esi
- movdqa xmm12,xmm13
- and edi,ebx
- xor ebx,ecx
- psrld xmm13,30
- add ebp,eax
- ror eax,7
- por xmm10,xmm3
- xor edi,ecx
- mov esi,ebp
- add edx,DWORD[44+rsp]
- pslld xmm12,2
- pxor xmm10,xmm13
- xor eax,ebx
- movdqa xmm13,XMMWORD[16+r11]
- rol ebp,5
- add edx,edi
- movups xmm0,XMMWORD[32+r15]
-DB 102,15,56,220,209
- and esi,eax
- pxor xmm10,xmm12
- xor eax,ebx
- add edx,ebp
- ror ebp,7
- pshufd xmm11,xmm7,238
- xor esi,ebx
- movdqa xmm12,xmm10
- paddd xmm13,xmm10
- mov edi,edx
- add ecx,DWORD[48+rsp]
- punpcklqdq xmm11,xmm8
- xor ebp,eax
- rol edx,5
- add ecx,esi
- psrldq xmm12,4
- and edi,ebp
- xor ebp,eax
- pxor xmm11,xmm7
- add ecx,edx
- ror edx,7
- pxor xmm12,xmm9
- xor edi,eax
- mov esi,ecx
- add ebx,DWORD[52+rsp]
- movups xmm1,XMMWORD[48+r15]
-DB 102,15,56,220,208
- pxor xmm11,xmm12
- xor edx,ebp
- rol ecx,5
- movdqa XMMWORD[32+rsp],xmm13
- add ebx,edi
- and esi,edx
- movdqa xmm3,xmm11
- xor edx,ebp
- add ebx,ecx
- ror ecx,7
- movdqa xmm12,xmm11
- xor esi,ebp
- pslldq xmm3,12
- paddd xmm11,xmm11
- mov edi,ebx
- add eax,DWORD[56+rsp]
- psrld xmm12,31
- xor ecx,edx
- rol ebx,5
- add eax,esi
- movdqa xmm13,xmm3
- and edi,ecx
- xor ecx,edx
- psrld xmm3,30
- add eax,ebx
- ror ebx,7
- cmp r8d,11
- jb NEAR $L$aesenclast1
- movups xmm0,XMMWORD[64+r15]
-DB 102,15,56,220,209
- movups xmm1,XMMWORD[80+r15]
-DB 102,15,56,220,208
- je NEAR $L$aesenclast1
- movups xmm0,XMMWORD[96+r15]
-DB 102,15,56,220,209
- movups xmm1,XMMWORD[112+r15]
-DB 102,15,56,220,208
-$L$aesenclast1:
-DB 102,15,56,221,209
- movups xmm0,XMMWORD[((16-112))+r15]
- por xmm11,xmm12
- xor edi,edx
- mov esi,eax
- add ebp,DWORD[60+rsp]
- pslld xmm13,2
- pxor xmm11,xmm3
- xor ebx,ecx
- movdqa xmm3,XMMWORD[16+r11]
- rol eax,5
- add ebp,edi
- and esi,ebx
- pxor xmm11,xmm13
- pshufd xmm13,xmm10,238
- xor ebx,ecx
- add ebp,eax
- ror eax,7
- pxor xmm4,xmm8
- xor esi,ecx
- mov edi,ebp
- add edx,DWORD[rsp]
- punpcklqdq xmm13,xmm11
- xor eax,ebx
- rol ebp,5
- pxor xmm4,xmm5
- add edx,esi
- movups xmm14,XMMWORD[16+r12]
- xorps xmm14,xmm15
- movups XMMWORD[r13*1+r12],xmm2
- xorps xmm2,xmm14
- movups xmm1,XMMWORD[((-80))+r15]
-DB 102,15,56,220,208
- and edi,eax
- movdqa xmm12,xmm3
- xor eax,ebx
- paddd xmm3,xmm11
- add edx,ebp
- pxor xmm4,xmm13
- ror ebp,7
- xor edi,ebx
- mov esi,edx
- add ecx,DWORD[4+rsp]
- movdqa xmm13,xmm4
- xor ebp,eax
- rol edx,5
- movdqa XMMWORD[48+rsp],xmm3
- add ecx,edi
- and esi,ebp
- xor ebp,eax
- pslld xmm4,2
- add ecx,edx
- ror edx,7
- psrld xmm13,30
- xor esi,eax
- mov edi,ecx
- add ebx,DWORD[8+rsp]
- movups xmm0,XMMWORD[((-64))+r15]
-DB 102,15,56,220,209
- por xmm4,xmm13
- xor edx,ebp
- rol ecx,5
- pshufd xmm3,xmm11,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 xmm5,xmm9
- add ebp,DWORD[16+rsp]
- movups xmm1,XMMWORD[((-48))+r15]
-DB 102,15,56,220,208
- xor esi,ecx
- punpcklqdq xmm3,xmm4
- mov edi,eax
- rol eax,5
- pxor xmm5,xmm6
- add ebp,esi
- xor edi,ecx
- movdqa xmm13,xmm12
- ror ebx,7
- paddd xmm12,xmm4
- add ebp,eax
- pxor xmm5,xmm3
- add edx,DWORD[20+rsp]
- xor edi,ebx
- mov esi,ebp
- rol ebp,5
- movdqa xmm3,xmm5
- add edx,edi
- xor esi,ebx
- movdqa XMMWORD[rsp],xmm12
- ror eax,7
- add edx,ebp
- add ecx,DWORD[24+rsp]
- pslld xmm5,2
- xor esi,eax
- mov edi,edx
- psrld xmm3,30
- rol edx,5
- add ecx,esi
- movups xmm0,XMMWORD[((-32))+r15]
-DB 102,15,56,220,209
- xor edi,eax
- ror ebp,7
- por xmm5,xmm3
- add ecx,edx
- add ebx,DWORD[28+rsp]
- pshufd xmm12,xmm4,238
- xor edi,ebp
- mov esi,ecx
- rol ecx,5
- add ebx,edi
- xor esi,ebp
- ror edx,7
- add ebx,ecx
- pxor xmm6,xmm10
- add eax,DWORD[32+rsp]
- xor esi,edx
- punpcklqdq xmm12,xmm5
- mov edi,ebx
- rol ebx,5
- pxor xmm6,xmm7
- add eax,esi
- xor edi,edx
- movdqa xmm3,XMMWORD[32+r11]
- ror ecx,7
- paddd xmm13,xmm5
- add eax,ebx
- pxor xmm6,xmm12
- add ebp,DWORD[36+rsp]
- movups xmm1,XMMWORD[((-16))+r15]
-DB 102,15,56,220,208
- xor edi,ecx
- mov esi,eax
- rol eax,5
- movdqa xmm12,xmm6
- add ebp,edi
- xor esi,ecx
- movdqa XMMWORD[16+rsp],xmm13
- ror ebx,7
- add ebp,eax
- add edx,DWORD[40+rsp]
- pslld xmm6,2
- xor esi,ebx
- mov edi,ebp
- psrld xmm12,30
- rol ebp,5
- add edx,esi
- xor edi,ebx
- ror eax,7
- por xmm6,xmm12
- add edx,ebp
- add ecx,DWORD[44+rsp]
- pshufd xmm13,xmm5,238
- xor edi,eax
- mov esi,edx
- rol edx,5
- add ecx,edi
- movups xmm0,XMMWORD[r15]
-DB 102,15,56,220,209
- xor esi,eax
- ror ebp,7
- add ecx,edx
- pxor xmm7,xmm11
- add ebx,DWORD[48+rsp]
- xor esi,ebp
- punpcklqdq xmm13,xmm6
- mov edi,ecx
- rol ecx,5
- pxor xmm7,xmm8
- add ebx,esi
- xor edi,ebp
- movdqa xmm12,xmm3
- ror edx,7
- paddd xmm3,xmm6
- add ebx,ecx
- pxor xmm7,xmm13
- add eax,DWORD[52+rsp]
- xor edi,edx
- mov esi,ebx
- rol ebx,5
- movdqa xmm13,xmm7
- add eax,edi
- xor esi,edx
- movdqa XMMWORD[32+rsp],xmm3
- ror ecx,7
- add eax,ebx
- add ebp,DWORD[56+rsp]
- movups xmm1,XMMWORD[16+r15]
-DB 102,15,56,220,208
- pslld xmm7,2
- xor esi,ecx
- mov edi,eax
- psrld xmm13,30
- rol eax,5
- add ebp,esi
- xor edi,ecx
- ror ebx,7
- por xmm7,xmm13
- add ebp,eax
- add edx,DWORD[60+rsp]
- pshufd xmm3,xmm6,238
- xor edi,ebx
- mov esi,ebp
- rol ebp,5
- add edx,edi
- xor esi,ebx
- ror eax,7
- add edx,ebp
- pxor xmm8,xmm4
- add ecx,DWORD[rsp]
- xor esi,eax
- punpcklqdq xmm3,xmm7
- mov edi,edx
- rol edx,5
- pxor xmm8,xmm9
- add ecx,esi
- movups xmm0,XMMWORD[32+r15]
-DB 102,15,56,220,209
- xor edi,eax
- movdqa xmm13,xmm12
- ror ebp,7
- paddd xmm12,xmm7
- add ecx,edx
- pxor xmm8,xmm3
- add ebx,DWORD[4+rsp]
- xor edi,ebp
- mov esi,ecx
- rol ecx,5
- movdqa xmm3,xmm8
- add ebx,edi
- xor esi,ebp
- movdqa XMMWORD[48+rsp],xmm12
- ror edx,7
- add ebx,ecx
- add eax,DWORD[8+rsp]
- pslld xmm8,2
- xor esi,edx
- mov edi,ebx
- psrld xmm3,30
- rol ebx,5
- add eax,esi
- xor edi,edx
- ror ecx,7
- por xmm8,xmm3
- add eax,ebx
- add ebp,DWORD[12+rsp]
- movups xmm1,XMMWORD[48+r15]
-DB 102,15,56,220,208
- pshufd xmm12,xmm7,238
- xor edi,ecx
- mov esi,eax
- rol eax,5
- add ebp,edi
- xor esi,ecx
- ror ebx,7
- add ebp,eax
- pxor xmm9,xmm5
- add edx,DWORD[16+rsp]
- xor esi,ebx
- punpcklqdq xmm12,xmm8
- mov edi,ebp
- rol ebp,5
- pxor xmm9,xmm10
- add edx,esi
- xor edi,ebx
- movdqa xmm3,xmm13
- ror eax,7
- paddd xmm13,xmm8
- add edx,ebp
- pxor xmm9,xmm12
- add ecx,DWORD[20+rsp]
- xor edi,eax
- mov esi,edx
- rol edx,5
- movdqa xmm12,xmm9
- add ecx,edi
- cmp r8d,11
- jb NEAR $L$aesenclast2
- movups xmm0,XMMWORD[64+r15]
-DB 102,15,56,220,209
- movups xmm1,XMMWORD[80+r15]
-DB 102,15,56,220,208
- je NEAR $L$aesenclast2
- movups xmm0,XMMWORD[96+r15]
-DB 102,15,56,220,209
- movups xmm1,XMMWORD[112+r15]
-DB 102,15,56,220,208
-$L$aesenclast2:
-DB 102,15,56,221,209
- movups xmm0,XMMWORD[((16-112))+r15]
- xor esi,eax
- movdqa XMMWORD[rsp],xmm13
- ror ebp,7
- add ecx,edx
- add ebx,DWORD[24+rsp]
- pslld xmm9,2
- xor esi,ebp
- mov edi,ecx
- psrld xmm12,30
- rol ecx,5
- add ebx,esi
- xor edi,ebp
- ror edx,7
- por xmm9,xmm12
- add ebx,ecx
- add eax,DWORD[28+rsp]
- pshufd xmm13,xmm8,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 xmm10,xmm6
- add ebp,DWORD[32+rsp]
- movups xmm14,XMMWORD[32+r12]
- xorps xmm14,xmm15
- movups XMMWORD[16+r12*1+r13],xmm2
- xorps xmm2,xmm14
- movups xmm1,XMMWORD[((-80))+r15]
-DB 102,15,56,220,208
- and esi,ecx
- xor ecx,edx
- ror ebx,7
- punpcklqdq xmm13,xmm9
- mov edi,eax
- xor esi,ecx
- pxor xmm10,xmm11
- rol eax,5
- add ebp,esi
- movdqa xmm12,xmm3
- xor edi,ebx
- paddd xmm3,xmm9
- xor ebx,ecx
- pxor xmm10,xmm13
- add ebp,eax
- add edx,DWORD[36+rsp]
- and edi,ebx
- xor ebx,ecx
- ror eax,7
- movdqa xmm13,xmm10
- mov esi,ebp
- xor edi,ebx
- movdqa XMMWORD[16+rsp],xmm3
- rol ebp,5
- add edx,edi
- movups xmm0,XMMWORD[((-64))+r15]
-DB 102,15,56,220,209
- xor esi,eax
- pslld xmm10,2
- xor eax,ebx
- add edx,ebp
- psrld xmm13,30
- add ecx,DWORD[40+rsp]
- and esi,eax
- xor eax,ebx
- por xmm10,xmm13
- ror ebp,7
- mov edi,edx
- xor esi,eax
- rol edx,5
- pshufd xmm3,xmm9,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
- movups xmm1,XMMWORD[((-48))+r15]
-DB 102,15,56,220,208
- mov esi,ecx
- xor edi,ebp
- rol ecx,5
- add ebx,edi
- xor esi,edx
- xor edx,ebp
- add ebx,ecx
- pxor xmm11,xmm7
- add eax,DWORD[48+rsp]
- and esi,edx
- xor edx,ebp
- ror ecx,7
- punpcklqdq xmm3,xmm10
- mov edi,ebx
- xor esi,edx
- pxor xmm11,xmm4
- rol ebx,5
- add eax,esi
- movdqa xmm13,XMMWORD[48+r11]
- xor edi,ecx
- paddd xmm12,xmm10
- xor ecx,edx
- pxor xmm11,xmm3
- add eax,ebx
- add ebp,DWORD[52+rsp]
- movups xmm0,XMMWORD[((-32))+r15]
-DB 102,15,56,220,209
- and edi,ecx
- xor ecx,edx
- ror ebx,7
- movdqa xmm3,xmm11
- mov esi,eax
- xor edi,ecx
- movdqa XMMWORD[32+rsp],xmm12
- rol eax,5
- add ebp,edi
- xor esi,ebx
- pslld xmm11,2
- xor ebx,ecx
- add ebp,eax
- psrld xmm3,30
- add edx,DWORD[56+rsp]
- and esi,ebx
- xor ebx,ecx
- por xmm11,xmm3
- ror eax,7
- mov edi,ebp
- xor esi,ebx
- rol ebp,5
- pshufd xmm12,xmm10,238
- add edx,esi
- movups xmm1,XMMWORD[((-16))+r15]
-DB 102,15,56,220,208
- 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 xmm4,xmm8
- add ebx,DWORD[rsp]
- and esi,ebp
- xor ebp,eax
- ror edx,7
- movups xmm0,XMMWORD[r15]
-DB 102,15,56,220,209
- punpcklqdq xmm12,xmm11
- mov edi,ecx
- xor esi,ebp
- pxor xmm4,xmm5
- rol ecx,5
- add ebx,esi
- movdqa xmm3,xmm13
- xor edi,edx
- paddd xmm13,xmm11
- xor edx,ebp
- pxor xmm4,xmm12
- add ebx,ecx
- add eax,DWORD[4+rsp]
- and edi,edx
- xor edx,ebp
- ror ecx,7
- movdqa xmm12,xmm4
- mov esi,ebx
- xor edi,edx
- movdqa XMMWORD[48+rsp],xmm13
- rol ebx,5
- add eax,edi
- xor esi,ecx
- pslld xmm4,2
- xor ecx,edx
- add eax,ebx
- psrld xmm12,30
- add ebp,DWORD[8+rsp]
- movups xmm1,XMMWORD[16+r15]
-DB 102,15,56,220,208
- and esi,ecx
- xor ecx,edx
- por xmm4,xmm12
- ror ebx,7
- mov edi,eax
- xor esi,ecx
- rol eax,5
- pshufd xmm13,xmm11,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
- movups xmm0,XMMWORD[32+r15]
-DB 102,15,56,220,209
- xor esi,eax
- xor eax,ebx
- add edx,ebp
- pxor xmm5,xmm9
- add ecx,DWORD[16+rsp]
- and esi,eax
- xor eax,ebx
- ror ebp,7
- punpcklqdq xmm13,xmm4
- mov edi,edx
- xor esi,eax
- pxor xmm5,xmm6
- rol edx,5
- add ecx,esi
- movdqa xmm12,xmm3
- xor edi,ebp
- paddd xmm3,xmm4
- xor ebp,eax
- pxor xmm5,xmm13
- add ecx,edx
- add ebx,DWORD[20+rsp]
- and edi,ebp
- xor ebp,eax
- ror edx,7
- movups xmm1,XMMWORD[48+r15]
-DB 102,15,56,220,208
- movdqa xmm13,xmm5
- mov esi,ecx
- xor edi,ebp
- movdqa XMMWORD[rsp],xmm3
- rol ecx,5
- add ebx,edi
- xor esi,edx
- pslld xmm5,2
- xor edx,ebp
- add ebx,ecx
- psrld xmm13,30
- add eax,DWORD[24+rsp]
- and esi,edx
- xor edx,ebp
- por xmm5,xmm13
- ror ecx,7
- mov edi,ebx
- xor esi,edx
- rol ebx,5
- pshufd xmm3,xmm4,238
- add eax,esi
- xor edi,ecx
- xor ecx,edx
- add eax,ebx
- add ebp,DWORD[28+rsp]
- cmp r8d,11
- jb NEAR $L$aesenclast3
- movups xmm0,XMMWORD[64+r15]
-DB 102,15,56,220,209
- movups xmm1,XMMWORD[80+r15]
-DB 102,15,56,220,208
- je NEAR $L$aesenclast3
- movups xmm0,XMMWORD[96+r15]
-DB 102,15,56,220,209
- movups xmm1,XMMWORD[112+r15]
-DB 102,15,56,220,208
-$L$aesenclast3:
-DB 102,15,56,221,209
- movups xmm0,XMMWORD[((16-112))+r15]
- 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 xmm6,xmm10
- add edx,DWORD[32+rsp]
- and esi,ebx
- xor ebx,ecx
- ror eax,7
- punpcklqdq xmm3,xmm5
- mov edi,ebp
- xor esi,ebx
- pxor xmm6,xmm7
- rol ebp,5
- add edx,esi
- movups xmm14,XMMWORD[48+r12]
- xorps xmm14,xmm15
- movups XMMWORD[32+r12*1+r13],xmm2
- xorps xmm2,xmm14
- movups xmm1,XMMWORD[((-80))+r15]
-DB 102,15,56,220,208
- movdqa xmm13,xmm12
- xor edi,eax
- paddd xmm12,xmm5
- xor eax,ebx
- pxor xmm6,xmm3
- add edx,ebp
- add ecx,DWORD[36+rsp]
- and edi,eax
- xor eax,ebx
- ror ebp,7
- movdqa xmm3,xmm6
- mov esi,edx
- xor edi,eax
- movdqa XMMWORD[16+rsp],xmm12
- rol edx,5
- add ecx,edi
- xor esi,ebp
- pslld xmm6,2
- xor ebp,eax
- add ecx,edx
- psrld xmm3,30
- add ebx,DWORD[40+rsp]
- and esi,ebp
- xor ebp,eax
- por xmm6,xmm3
- ror edx,7
- movups xmm0,XMMWORD[((-64))+r15]
-DB 102,15,56,220,209
- mov edi,ecx
- xor esi,ebp
- rol ecx,5
- pshufd xmm12,xmm5,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 xmm7,xmm11
- add ebp,DWORD[48+rsp]
- movups xmm1,XMMWORD[((-48))+r15]
-DB 102,15,56,220,208
- xor esi,ecx
- punpcklqdq xmm12,xmm6
- mov edi,eax
- rol eax,5
- pxor xmm7,xmm8
- add ebp,esi
- xor edi,ecx
- movdqa xmm3,xmm13
- ror ebx,7
- paddd xmm13,xmm6
- add ebp,eax
- pxor xmm7,xmm12
- add edx,DWORD[52+rsp]
- xor edi,ebx
- mov esi,ebp
- rol ebp,5
- movdqa xmm12,xmm7
- add edx,edi
- xor esi,ebx
- movdqa XMMWORD[32+rsp],xmm13
- ror eax,7
- add edx,ebp
- add ecx,DWORD[56+rsp]
- pslld xmm7,2
- xor esi,eax
- mov edi,edx
- psrld xmm12,30
- rol edx,5
- add ecx,esi
- movups xmm0,XMMWORD[((-32))+r15]
-DB 102,15,56,220,209
- xor edi,eax
- ror ebp,7
- por xmm7,xmm12
- 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 xmm3,xmm7
- add eax,esi
- xor edi,edx
- movdqa XMMWORD[48+rsp],xmm3
- ror ecx,7
- add eax,ebx
- add ebp,DWORD[4+rsp]
- movups xmm1,XMMWORD[((-16))+r15]
-DB 102,15,56,220,208
- 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
- movups xmm0,XMMWORD[r15]
-DB 102,15,56,220,209
- xor esi,eax
- ror ebp,7
- add ecx,edx
- cmp r10,r14
- je NEAR $L$done_ssse3
- movdqa xmm3,XMMWORD[64+r11]
- movdqa xmm13,XMMWORD[r11]
- movdqu xmm4,XMMWORD[r10]
- movdqu xmm5,XMMWORD[16+r10]
- movdqu xmm6,XMMWORD[32+r10]
- movdqu xmm7,XMMWORD[48+r10]
-DB 102,15,56,0,227
- add r10,64
- add ebx,DWORD[16+rsp]
- xor esi,ebp
- mov edi,ecx
-DB 102,15,56,0,235
- rol ecx,5
- add ebx,esi
- xor edi,ebp
- ror edx,7
- paddd xmm4,xmm13
- add ebx,ecx
- add eax,DWORD[20+rsp]
- xor edi,edx
- mov esi,ebx
- movdqa XMMWORD[rsp],xmm4
- rol ebx,5
- add eax,edi
- xor esi,edx
- ror ecx,7
- psubd xmm4,xmm13
- add eax,ebx
- add ebp,DWORD[24+rsp]
- movups xmm1,XMMWORD[16+r15]
-DB 102,15,56,220,208
- 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,243
- rol edx,5
- add ecx,esi
- movups xmm0,XMMWORD[32+r15]
-DB 102,15,56,220,209
- xor edi,eax
- ror ebp,7
- paddd xmm5,xmm13
- add ecx,edx
- add ebx,DWORD[36+rsp]
- xor edi,ebp
- mov esi,ecx
- movdqa XMMWORD[16+rsp],xmm5
- rol ecx,5
- add ebx,edi
- xor esi,ebp
- ror edx,7
- psubd xmm5,xmm13
- 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]
- movups xmm1,XMMWORD[48+r15]
-DB 102,15,56,220,208
- 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,251
- rol ebp,5
- add edx,esi
- xor edi,ebx
- ror eax,7
- paddd xmm6,xmm13
- add edx,ebp
- add ecx,DWORD[52+rsp]
- xor edi,eax
- mov esi,edx
- movdqa XMMWORD[32+rsp],xmm6
- rol edx,5
- add ecx,edi
- cmp r8d,11
- jb NEAR $L$aesenclast4
- movups xmm0,XMMWORD[64+r15]
-DB 102,15,56,220,209
- movups xmm1,XMMWORD[80+r15]
-DB 102,15,56,220,208
- je NEAR $L$aesenclast4
- movups xmm0,XMMWORD[96+r15]
-DB 102,15,56,220,209
- movups xmm1,XMMWORD[112+r15]
-DB 102,15,56,220,208
-$L$aesenclast4:
-DB 102,15,56,221,209
- movups xmm0,XMMWORD[((16-112))+r15]
- xor esi,eax
- ror ebp,7
- psubd xmm6,xmm13
- 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
- movups XMMWORD[48+r12*1+r13],xmm2
- lea r12,[64+r12]
-
- add eax,DWORD[r9]
- add esi,DWORD[4+r9]
- add ecx,DWORD[8+r9]
- add edx,DWORD[12+r9]
- mov DWORD[r9],eax
- add ebp,DWORD[16+r9]
- mov DWORD[4+r9],esi
- mov ebx,esi
- mov DWORD[8+r9],ecx
- mov edi,ecx
- mov DWORD[12+r9],edx
- xor edi,edx
- mov DWORD[16+r9],ebp
- and esi,edi
- jmp NEAR $L$oop_ssse3
-
-$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]
- movups xmm1,XMMWORD[16+r15]
-DB 102,15,56,220,208
- 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
- movups xmm0,XMMWORD[32+r15]
-DB 102,15,56,220,209
- 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]
- movups xmm1,XMMWORD[48+r15]
-DB 102,15,56,220,208
- 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
- cmp r8d,11
- jb NEAR $L$aesenclast5
- movups xmm0,XMMWORD[64+r15]
-DB 102,15,56,220,209
- movups xmm1,XMMWORD[80+r15]
-DB 102,15,56,220,208
- je NEAR $L$aesenclast5
- movups xmm0,XMMWORD[96+r15]
-DB 102,15,56,220,209
- movups xmm1,XMMWORD[112+r15]
-DB 102,15,56,220,208
-$L$aesenclast5:
-DB 102,15,56,221,209
- movups xmm0,XMMWORD[((16-112))+r15]
- 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
- movups XMMWORD[48+r12*1+r13],xmm2
- mov r8,QWORD[88+rsp]
-
- add eax,DWORD[r9]
- add esi,DWORD[4+r9]
- add ecx,DWORD[8+r9]
- mov DWORD[r9],eax
- add edx,DWORD[12+r9]
- mov DWORD[4+r9],esi
- add ebp,DWORD[16+r9]
- mov DWORD[8+r9],ecx
- mov DWORD[12+r9],edx
- mov DWORD[16+r9],ebp
- movups XMMWORD[r8],xmm2
- movaps xmm6,XMMWORD[((96+0))+rsp]
- movaps xmm7,XMMWORD[((96+16))+rsp]
- movaps xmm8,XMMWORD[((96+32))+rsp]
- movaps xmm9,XMMWORD[((96+48))+rsp]
- movaps xmm10,XMMWORD[((96+64))+rsp]
- movaps xmm11,XMMWORD[((96+80))+rsp]
- movaps xmm12,XMMWORD[((96+96))+rsp]
- movaps xmm13,XMMWORD[((96+112))+rsp]
- movaps xmm14,XMMWORD[((96+128))+rsp]
- movaps xmm15,XMMWORD[((96+144))+rsp]
- lea rsi,[264+rsp]
-
- mov r15,QWORD[rsi]
-
- mov r14,QWORD[8+rsi]
-
- mov r13,QWORD[16+rsi]
-
- mov r12,QWORD[24+rsi]
-
- mov rbp,QWORD[32+rsi]
-
- mov rbx,QWORD[40+rsi]
-
- lea rsp,[48+rsi]
-
-$L$epilogue_ssse3:
- mov rdi,QWORD[8+rsp] ;WIN64 epilogue
- mov rsi,QWORD[16+rsp]
- DB 0F3h,0C3h ;repret
-
-$L$SEH_end_aesni_cbc_sha1_enc_ssse3:
-ALIGN 64
-K_XX_XX:
- DD 0x5a827999,0x5a827999,0x5a827999,0x5a827999
- DD 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1
- DD 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc
- DD 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6
- DD 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f
-DB 0xf,0xe,0xd,0xc,0xb,0xa,0x9,0x8,0x7,0x6,0x5,0x4,0x3,0x2,0x1,0x0
-
-DB 65,69,83,78,73,45,67,66,67,43,83,72,65,49,32,115
-DB 116,105,116,99,104,32,102,111,114,32,120,56,54,95,54,52
-DB 44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32
-DB 60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111
-DB 114,103,62,0
-ALIGN 64
-
-ALIGN 32
-aesni_cbc_sha1_enc_shaext:
- mov QWORD[8+rsp],rdi ;WIN64 prologue
- mov QWORD[16+rsp],rsi
- mov rax,rsp
-$L$SEH_begin_aesni_cbc_sha1_enc_shaext:
- mov rdi,rcx
- mov rsi,rdx
- mov rdx,r8
- mov rcx,r9
- mov r8,QWORD[40+rsp]
- mov r9,QWORD[48+rsp]
-
-
-
- mov r10,QWORD[56+rsp]
- lea rsp,[((-168))+rsp]
- movaps XMMWORD[(-8-160)+rax],xmm6
- movaps XMMWORD[(-8-144)+rax],xmm7
- movaps XMMWORD[(-8-128)+rax],xmm8
- movaps XMMWORD[(-8-112)+rax],xmm9
- movaps XMMWORD[(-8-96)+rax],xmm10
- movaps XMMWORD[(-8-80)+rax],xmm11
- movaps XMMWORD[(-8-64)+rax],xmm12
- movaps XMMWORD[(-8-48)+rax],xmm13
- movaps XMMWORD[(-8-32)+rax],xmm14
- movaps XMMWORD[(-8-16)+rax],xmm15
-$L$prologue_shaext:
- movdqu xmm8,XMMWORD[r9]
- movd xmm9,DWORD[16+r9]
- movdqa xmm7,XMMWORD[((K_XX_XX+80))]
-
- mov r11d,DWORD[240+rcx]
- sub rsi,rdi
- movups xmm15,XMMWORD[rcx]
- movups xmm2,XMMWORD[r8]
- movups xmm0,XMMWORD[16+rcx]
- lea rcx,[112+rcx]
-
- pshufd xmm8,xmm8,27
- pshufd xmm9,xmm9,27
- jmp NEAR $L$oop_shaext
-
-ALIGN 16
-$L$oop_shaext:
- movups xmm14,XMMWORD[rdi]
- xorps xmm14,xmm15
- xorps xmm2,xmm14
- movups xmm1,XMMWORD[((-80))+rcx]
-DB 102,15,56,220,208
- movdqu xmm3,XMMWORD[r10]
- movdqa xmm12,xmm9
-DB 102,15,56,0,223
- movdqu xmm4,XMMWORD[16+r10]
- movdqa xmm11,xmm8
- movups xmm0,XMMWORD[((-64))+rcx]
-DB 102,15,56,220,209
-DB 102,15,56,0,231
-
- paddd xmm9,xmm3
- movdqu xmm5,XMMWORD[32+r10]
- lea r10,[64+r10]
- pxor xmm3,xmm12
- movups xmm1,XMMWORD[((-48))+rcx]
-DB 102,15,56,220,208
- pxor xmm3,xmm12
- movdqa xmm10,xmm8
-DB 102,15,56,0,239
-DB 69,15,58,204,193,0
-DB 68,15,56,200,212
- movups xmm0,XMMWORD[((-32))+rcx]
-DB 102,15,56,220,209
-DB 15,56,201,220
- movdqu xmm6,XMMWORD[((-16))+r10]
- movdqa xmm9,xmm8
-DB 102,15,56,0,247
- movups xmm1,XMMWORD[((-16))+rcx]
-DB 102,15,56,220,208
-DB 69,15,58,204,194,0
-DB 68,15,56,200,205
- pxor xmm3,xmm5
-DB 15,56,201,229
- movups xmm0,XMMWORD[rcx]
-DB 102,15,56,220,209
- movdqa xmm10,xmm8
-DB 69,15,58,204,193,0
-DB 68,15,56,200,214
- movups xmm1,XMMWORD[16+rcx]
-DB 102,15,56,220,208
-DB 15,56,202,222
- pxor xmm4,xmm6
-DB 15,56,201,238
- movups xmm0,XMMWORD[32+rcx]
-DB 102,15,56,220,209
- movdqa xmm9,xmm8
-DB 69,15,58,204,194,0
-DB 68,15,56,200,203
- movups xmm1,XMMWORD[48+rcx]
-DB 102,15,56,220,208
-DB 15,56,202,227
- pxor xmm5,xmm3
-DB 15,56,201,243
- cmp r11d,11
- jb NEAR $L$aesenclast6
- movups xmm0,XMMWORD[64+rcx]
-DB 102,15,56,220,209
- movups xmm1,XMMWORD[80+rcx]
-DB 102,15,56,220,208
- je NEAR $L$aesenclast6
- movups xmm0,XMMWORD[96+rcx]
-DB 102,15,56,220,209
- movups xmm1,XMMWORD[112+rcx]
-DB 102,15,56,220,208
-$L$aesenclast6:
-DB 102,15,56,221,209
- movups xmm0,XMMWORD[((16-112))+rcx]
- movdqa xmm10,xmm8
-DB 69,15,58,204,193,0
-DB 68,15,56,200,212
- movups xmm14,XMMWORD[16+rdi]
- xorps xmm14,xmm15
- movups XMMWORD[rdi*1+rsi],xmm2
- xorps xmm2,xmm14
- movups xmm1,XMMWORD[((-80))+rcx]
-DB 102,15,56,220,208
-DB 15,56,202,236
- pxor xmm6,xmm4
-DB 15,56,201,220
- movups xmm0,XMMWORD[((-64))+rcx]
-DB 102,15,56,220,209
- movdqa xmm9,xmm8
-DB 69,15,58,204,194,1
-DB 68,15,56,200,205
- movups xmm1,XMMWORD[((-48))+rcx]
-DB 102,15,56,220,208
-DB 15,56,202,245
- pxor xmm3,xmm5
-DB 15,56,201,229
- movups xmm0,XMMWORD[((-32))+rcx]
-DB 102,15,56,220,209
- movdqa xmm10,xmm8
-DB 69,15,58,204,193,1
-DB 68,15,56,200,214
- movups xmm1,XMMWORD[((-16))+rcx]
-DB 102,15,56,220,208
-DB 15,56,202,222
- pxor xmm4,xmm6
-DB 15,56,201,238
- movups xmm0,XMMWORD[rcx]
-DB 102,15,56,220,209
- movdqa xmm9,xmm8
-DB 69,15,58,204,194,1
-DB 68,15,56,200,203
- movups xmm1,XMMWORD[16+rcx]
-DB 102,15,56,220,208
-DB 15,56,202,227
- pxor xmm5,xmm3
-DB 15,56,201,243
- movups xmm0,XMMWORD[32+rcx]
-DB 102,15,56,220,209
- movdqa xmm10,xmm8
-DB 69,15,58,204,193,1
-DB 68,15,56,200,212
- movups xmm1,XMMWORD[48+rcx]
-DB 102,15,56,220,208
-DB 15,56,202,236
- pxor xmm6,xmm4
-DB 15,56,201,220
- cmp r11d,11
- jb NEAR $L$aesenclast7
- movups xmm0,XMMWORD[64+rcx]
-DB 102,15,56,220,209
- movups xmm1,XMMWORD[80+rcx]
-DB 102,15,56,220,208
- je NEAR $L$aesenclast7
- movups xmm0,XMMWORD[96+rcx]
-DB 102,15,56,220,209
- movups xmm1,XMMWORD[112+rcx]
-DB 102,15,56,220,208
-$L$aesenclast7:
-DB 102,15,56,221,209
- movups xmm0,XMMWORD[((16-112))+rcx]
- movdqa xmm9,xmm8
-DB 69,15,58,204,194,1
-DB 68,15,56,200,205
- movups xmm14,XMMWORD[32+rdi]
- xorps xmm14,xmm15
- movups XMMWORD[16+rdi*1+rsi],xmm2
- xorps xmm2,xmm14
- movups xmm1,XMMWORD[((-80))+rcx]
-DB 102,15,56,220,208
-DB 15,56,202,245
- pxor xmm3,xmm5
-DB 15,56,201,229
- movups xmm0,XMMWORD[((-64))+rcx]
-DB 102,15,56,220,209
- movdqa xmm10,xmm8
-DB 69,15,58,204,193,2
-DB 68,15,56,200,214
- movups xmm1,XMMWORD[((-48))+rcx]
-DB 102,15,56,220,208
-DB 15,56,202,222
- pxor xmm4,xmm6
-DB 15,56,201,238
- movups xmm0,XMMWORD[((-32))+rcx]
-DB 102,15,56,220,209
- movdqa xmm9,xmm8
-DB 69,15,58,204,194,2
-DB 68,15,56,200,203
- movups xmm1,XMMWORD[((-16))+rcx]
-DB 102,15,56,220,208
-DB 15,56,202,227
- pxor xmm5,xmm3
-DB 15,56,201,243
- movups xmm0,XMMWORD[rcx]
-DB 102,15,56,220,209
- movdqa xmm10,xmm8
-DB 69,15,58,204,193,2
-DB 68,15,56,200,212
- movups xmm1,XMMWORD[16+rcx]
-DB 102,15,56,220,208
-DB 15,56,202,236
- pxor xmm6,xmm4
-DB 15,56,201,220
- movups xmm0,XMMWORD[32+rcx]
-DB 102,15,56,220,209
- movdqa xmm9,xmm8
-DB 69,15,58,204,194,2
-DB 68,15,56,200,205
- movups xmm1,XMMWORD[48+rcx]
-DB 102,15,56,220,208
-DB 15,56,202,245
- pxor xmm3,xmm5
-DB 15,56,201,229
- cmp r11d,11
- jb NEAR $L$aesenclast8
- movups xmm0,XMMWORD[64+rcx]
-DB 102,15,56,220,209
- movups xmm1,XMMWORD[80+rcx]
-DB 102,15,56,220,208
- je NEAR $L$aesenclast8
- movups xmm0,XMMWORD[96+rcx]
-DB 102,15,56,220,209
- movups xmm1,XMMWORD[112+rcx]
-DB 102,15,56,220,208
-$L$aesenclast8:
-DB 102,15,56,221,209
- movups xmm0,XMMWORD[((16-112))+rcx]
- movdqa xmm10,xmm8
-DB 69,15,58,204,193,2
-DB 68,15,56,200,214
- movups xmm14,XMMWORD[48+rdi]
- xorps xmm14,xmm15
- movups XMMWORD[32+rdi*1+rsi],xmm2
- xorps xmm2,xmm14
- movups xmm1,XMMWORD[((-80))+rcx]
-DB 102,15,56,220,208
-DB 15,56,202,222
- pxor xmm4,xmm6
-DB 15,56,201,238
- movups xmm0,XMMWORD[((-64))+rcx]
-DB 102,15,56,220,209
- movdqa xmm9,xmm8
-DB 69,15,58,204,194,3
-DB 68,15,56,200,203
- movups xmm1,XMMWORD[((-48))+rcx]
-DB 102,15,56,220,208
-DB 15,56,202,227
- pxor xmm5,xmm3
-DB 15,56,201,243
- movups xmm0,XMMWORD[((-32))+rcx]
-DB 102,15,56,220,209
- movdqa xmm10,xmm8
-DB 69,15,58,204,193,3
-DB 68,15,56,200,212
-DB 15,56,202,236
- pxor xmm6,xmm4
- movups xmm1,XMMWORD[((-16))+rcx]
-DB 102,15,56,220,208
- movdqa xmm9,xmm8
-DB 69,15,58,204,194,3
-DB 68,15,56,200,205
-DB 15,56,202,245
- movups xmm0,XMMWORD[rcx]
-DB 102,15,56,220,209
- movdqa xmm5,xmm12
- movdqa xmm10,xmm8
-DB 69,15,58,204,193,3
-DB 68,15,56,200,214
- movups xmm1,XMMWORD[16+rcx]
-DB 102,15,56,220,208
- movdqa xmm9,xmm8
-DB 69,15,58,204,194,3
-DB 68,15,56,200,205
- movups xmm0,XMMWORD[32+rcx]
-DB 102,15,56,220,209
- movups xmm1,XMMWORD[48+rcx]
-DB 102,15,56,220,208
- cmp r11d,11
- jb NEAR $L$aesenclast9
- movups xmm0,XMMWORD[64+rcx]
-DB 102,15,56,220,209
- movups xmm1,XMMWORD[80+rcx]
-DB 102,15,56,220,208
- je NEAR $L$aesenclast9
- movups xmm0,XMMWORD[96+rcx]
-DB 102,15,56,220,209
- movups xmm1,XMMWORD[112+rcx]
-DB 102,15,56,220,208
-$L$aesenclast9:
-DB 102,15,56,221,209
- movups xmm0,XMMWORD[((16-112))+rcx]
- dec rdx
-
- paddd xmm8,xmm11
- movups XMMWORD[48+rdi*1+rsi],xmm2
- lea rdi,[64+rdi]
- jnz NEAR $L$oop_shaext
-
- pshufd xmm8,xmm8,27
- pshufd xmm9,xmm9,27
- movups XMMWORD[r8],xmm2
- movdqu XMMWORD[r9],xmm8
- movd DWORD[16+r9],xmm9
- movaps xmm6,XMMWORD[((-8-160))+rax]
- movaps xmm7,XMMWORD[((-8-144))+rax]
- movaps xmm8,XMMWORD[((-8-128))+rax]
- movaps xmm9,XMMWORD[((-8-112))+rax]
- movaps xmm10,XMMWORD[((-8-96))+rax]
- movaps xmm11,XMMWORD[((-8-80))+rax]
- movaps xmm12,XMMWORD[((-8-64))+rax]
- movaps xmm13,XMMWORD[((-8-48))+rax]
- movaps xmm14,XMMWORD[((-8-32))+rax]
- movaps xmm15,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_aesni_cbc_sha1_enc_shaext:
-EXTERN __imp_RtlVirtualUnwind
-
-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[152+r8]
-
- mov r10d,DWORD[4+r11]
- lea r10,[r10*1+rsi]
- cmp rbx,r10
- jae NEAR $L$common_seh_tail
- lea r10,[aesni_cbc_sha1_enc_shaext]
- cmp rbx,r10
- jb NEAR $L$seh_no_shaext
-
- lea rsi,[rax]
- lea rdi,[512+r8]
- mov ecx,20
- DD 0xa548f3fc
- lea rax,[168+rax]
- jmp NEAR $L$common_seh_tail
-$L$seh_no_shaext:
- lea rsi,[96+rax]
- lea rdi,[512+r8]
- mov ecx,20
- DD 0xa548f3fc
- lea rax,[264+rax]
-
- mov r15,QWORD[rax]
- mov r14,QWORD[8+rax]
- mov r13,QWORD[16+rax]
- mov r12,QWORD[24+rax]
- mov rbp,QWORD[32+rax]
- mov rbx,QWORD[40+rax]
- lea rax,[48+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
- mov QWORD[240+r8],r15
-
-$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_aesni_cbc_sha1_enc_ssse3 wrt ..imagebase
- DD $L$SEH_end_aesni_cbc_sha1_enc_ssse3 wrt ..imagebase
- DD $L$SEH_info_aesni_cbc_sha1_enc_ssse3 wrt ..imagebase
- DD $L$SEH_begin_aesni_cbc_sha1_enc_shaext wrt ..imagebase
- DD $L$SEH_end_aesni_cbc_sha1_enc_shaext wrt ..imagebase
- DD $L$SEH_info_aesni_cbc_sha1_enc_shaext wrt ..imagebase
-section .xdata rdata align=8
-ALIGN 8
-$L$SEH_info_aesni_cbc_sha1_enc_ssse3:
-DB 9,0,0,0
- DD ssse3_handler wrt ..imagebase
- DD $L$prologue_ssse3 wrt ..imagebase,$L$epilogue_ssse3 wrt ..imagebase
-$L$SEH_info_aesni_cbc_sha1_enc_shaext:
-DB 9,0,0,0
- DD ssse3_handler wrt ..imagebase
- DD $L$prologue_shaext wrt ..imagebase,$L$epilogue_shaext wrt ..imagebase