Function at 0x14004ea0d
Capabilities:
Encrypt data using aes via x86 extensions

Disassembly:
mov r10d, dword [0x140391620]
mov r11, qword [0x140391624]
bt r11, 0x3d
jb 0x140050f40
and r11d, 0x10000000
and r10d, 0x40000000
or r10d, r11d
cmp r10d, 0x50000000
je 0x14004fc60
jmp 0x14004ea00
mov qword [rsp + 8], rdi
mov qword [rsp + 0x10], rsi
mov rax, rsp
mov rdi, rcx
mov rsi, rdx
mov rdx, r8
mov rcx, r9
mov r8, qword [rsp + 0x28]
mov r9, qword [rsp + 0x30]
mov r10, qword [rsp + 0x38]
push rbx
push rbp
push r12
push r13
push r14
push r15
lea rsp, [rsp - 0x108]
movaps xmmword [rsp + 0x60], xmm6
movaps xmmword [rsp + 0x70], xmm7
movaps xmmword [rsp + 0x80], xmm8
movaps xmmword [rsp + 0x90], xmm9
movaps xmmword [rsp + 0xa0], xmm10
movaps xmmword [rsp + 0xb0], xmm11
movaps xmmword [rsp + 0xc0], xmm12
movaps xmmword [rsp + 0xd0], xmm13
movaps xmmword [rsp + 0xe0], xmm14
movaps xmmword [rsp + 0xf0], xmm15
mov r12, rdi
mov r13, rsi
mov r14, rdx
lea r15, [rcx + 0x70]
movdqu xmm2, xmmword [r8]
mov qword [rsp + 0x58], r8
shl r14, 6
sub r13, r12
mov r8d, dword [r15 + 0x80]
add r14, r10
lea r11, [0x140050e80]
mov eax, dword [r9]
mov ebx, dword [r9 + 4]
mov ecx, dword [r9 + 8]
mov edx, dword [r9 + 0xc]
mov esi, ebx
mov ebp, dword [r9 + 0x10]
mov edi, ecx
xor edi, edx
and esi, edi
movdqa xmm3, xmmword [r11 + 0x40]
movdqa xmm13, xmmword [r11]
movdqu xmm4, xmmword [r10]
movdqu xmm5, xmmword [r10 + 0x10]
movdqu xmm6, xmmword [r10 + 0x20]
movdqu xmm7, xmmword [r10 + 0x30]
pshufb xmm4, xmm3
pshufb xmm5, xmm3
pshufb xmm6, xmm3
add r10, 0x40
paddd xmm4, xmm13
pshufb xmm7, xmm3
paddd xmm5, xmm13
paddd xmm6, xmm13
movdqa xmmword [rsp], xmm4
psubd xmm4, xmm13
movdqa xmmword [rsp + 0x10], xmm5
psubd xmm5, xmm13
movdqa xmmword [rsp + 0x20], xmm6
psubd xmm6, xmm13
movups xmm15, xmmword [r15 - 0x70]
movups xmm0, xmmword [r15 - 0x60]
jmp 0x14004eb60
ror ebx, 2
movups xmm14, xmmword [r12]
xorps xmm14, xmm15
xorps xmm2, xmm14
movups xmm1, xmmword [r15 - 0x50]
aesenc xmm2, xmm0
pshufd xmm8, xmm4, 0xee
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 [rsp + 4]
pxor xmm8, xmm12
xor eax, ebx
rol ebp, 5
movdqa xmmword [rsp + 0x30], xmm13
add edx, edi
movups xmm0, xmmword [r15 - 0x40]
aesenc xmm2, xmm1
and esi, eax
movdqa xmm3, xmm8
xor eax, ebx
add edx, ebp
ror ebp, 7
movdqa xmm12, xmm8
xor esi, ebx
pslldq xmm3, 0xc
paddd xmm8, xmm8
mov edi, edx
add ecx, dword [rsp + 8]
psrld xmm12, 0x1f
xor ebp, eax
rol edx, 5
add ecx, esi
movdqa xmm13, xmm3
and edi, ebp
xor ebp, eax
psrld xmm3, 0x1e
add ecx, edx
ror edx, 7
por xmm8, xmm12
xor edi, eax
mov esi, ecx
add ebx, dword [rsp + 0xc]
movups xmm1, xmmword [r15 - 0x30]
aesenc xmm2, xmm0
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, 0xee
xor esi, ebp
movdqa xmm13, xmm8
paddd xmm3, xmm8
mov edi, ebx
add eax, dword [rsp + 0x10]
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 [r15 - 0x20]
aesenc xmm2, xmm1
pxor xmm13, xmm7
xor edi, edx
mov esi, eax
add ebp, dword [rsp + 0x14]
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, 0xc
paddd xmm9, xmm9
mov edi, ebp
add edx, dword [rsp + 0x18]
psrld xmm13, 0x1f
xor eax, ebx
rol ebp, 5
add edx, esi
movups xmm1, xmmword [r15 - 0x10]
aesenc xmm2, xmm0
movdqa xmm3, xmm12
and edi, eax
xor eax, ebx
psrld xmm12, 0x1e
add edx, ebp
ror ebp, 7
por xmm9, xmm13
xor edi, ebx
mov esi, edx
add ecx, dword [rsp + 0x1c]
pslld xmm3, 2
pxor xmm9, xmm12
xor ebp, eax
movdqa xmm12, xmmword [r11 + 0x10]
rol edx, 5
add ecx, edi
and esi, ebp
pxor xmm9, xmm3
xor ebp, eax
add ecx, edx
ror edx, 7
pshufd xmm10, xmm6, 0xee
xor esi, eax
movdqa xmm3, xmm9
paddd xmm12, xmm9
mov edi, ecx
add ebx, dword [rsp + 0x20]
movups xmm0, xmmword [r15]
aesenc xmm2, xmm1
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 [rsp + 0x24]
pxor xmm10, xmm3
xor ecx, edx
rol ebx, 5
movdqa xmmword [rsp + 0x10], xmm12
add eax, edi
and esi, ecx
movdqa xmm13, xmm10
xor ecx, edx
add eax, ebx
ror ebx, 7
movups xmm1, xmmword [r15 + 0x10]
aesenc xmm2, xmm0
movdqa xmm3, xmm10
xor esi, edx
pslldq xmm13, 0xc
paddd xmm10, xmm10
mov edi, eax
add ebp, dword [rsp + 0x28]
psrld xmm3, 0x1f
xor ebx, ecx
rol eax, 5
add ebp, esi
movdqa xmm12, xmm13
and edi, ebx
xor ebx, ecx
psrld xmm13, 0x1e
add ebp, eax
ror eax, 7
por xmm10, xmm3
xor edi, ecx
mov esi, ebp
add edx, dword [rsp + 0x2c]
pslld xmm12, 2
pxor xmm10, xmm13
xor eax, ebx
movdqa xmm13, xmmword [r11 + 0x10]
rol ebp, 5
add edx, edi
movups xmm0, xmmword [r15 + 0x20]
aesenc xmm2, xmm1
and esi, eax
pxor xmm10, xmm12
xor eax, ebx
add edx, ebp
ror ebp, 7
pshufd xmm11, xmm7, 0xee
xor esi, ebx
movdqa xmm12, xmm10
paddd xmm13, xmm10
mov edi, edx
add ecx, dword [rsp + 0x30]
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 [rsp + 0x34]
movups xmm1, xmmword [r15 + 0x30]
aesenc xmm2, xmm0
pxor xmm11, xmm12
xor edx, ebp
rol ecx, 5
movdqa xmmword [rsp + 0x20], 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, 0xc
paddd xmm11, xmm11
mov edi, ebx
add eax, dword [rsp + 0x38]
psrld xmm12, 0x1f
xor ecx, edx
rol ebx, 5
add eax, esi
movdqa xmm13, xmm3
and edi, ecx
xor ecx, edx
psrld xmm3, 0x1e
add eax, ebx
ror ebx, 7
cmp r8d, 0xb
jb 0x14004ef03
movups xmm0, xmmword [r15 + 0x40]
aesenc xmm2, xmm1
movups xmm1, xmmword [r15 + 0x50]
aesenc xmm2, xmm0
je 0x14004ef03
movups xmm0, xmmword [r15 + 0x60]
aesenc xmm2, xmm1
movups xmm1, xmmword [r15 + 0x70]
aesenc xmm2, xmm0
aesenclast xmm2, xmm1
movups xmm0, xmmword [r15 - 0x60]
por xmm11, xmm12
xor edi, edx
mov esi, eax
add ebp, dword [rsp + 0x3c]
pslld xmm13, 2
pxor xmm11, xmm3
xor ebx, ecx
movdqa xmm3, xmmword [r11 + 0x10]
rol eax, 5
add ebp, edi
and esi, ebx
pxor xmm11, xmm13
pshufd xmm13, xmm10, 0xee
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 [r12 + 0x10]
xorps xmm14, xmm15
movups xmmword [r12 + r13], xmm2
xorps xmm2, xmm14
movups xmm1, xmmword [r15 - 0x50]
aesenc xmm2, xmm0
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 [rsp + 4]
movdqa xmm13, xmm4
xor ebp, eax
rol edx, 5
movdqa xmmword [rsp + 0x30], xmm3
add ecx, edi
and esi, ebp
xor ebp, eax
pslld xmm4, 2
add ecx, edx
ror edx, 7
psrld xmm13, 0x1e
xor esi, eax
mov edi, ecx
add ebx, dword [rsp + 8]
movups xmm0, xmmword [r15 - 0x40]
aesenc xmm2, xmm1
por xmm4, xmm13
xor edx, ebp
rol ecx, 5
pshufd xmm3, xmm11, 0xee
add ebx, esi
and edi, edx
xor edx, ebp
add ebx, ecx
add eax, dword [rsp + 0xc]
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 [rsp + 0x10]
movups xmm1, xmmword [r15 - 0x30]
aesenc xmm2, xmm0
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 [rsp + 0x14]
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 [rsp + 0x18]
pslld xmm5, 2
xor esi, eax
mov edi, edx
psrld xmm3, 0x1e
rol edx, 5
add ecx, esi
movups xmm0, xmmword [r15 - 0x20]
aesenc xmm2, xmm1
xor edi, eax
ror ebp, 7
por xmm5, xmm3
add ecx, edx
add ebx, dword [rsp + 0x1c]
pshufd xmm12, xmm4, 0xee
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 [rsp + 0x20]
xor esi, edx
punpcklqdq xmm12, xmm5
mov edi, ebx
rol ebx, 5
pxor xmm6, xmm7
add eax, esi
xor edi, edx
movdqa xmm3, xmmword [r11 + 0x20]
ror ecx, 7
paddd xmm13, xmm5
add eax, ebx
pxor xmm6, xmm12
add ebp, dword [rsp + 0x24]
movups xmm1, xmmword [r15 - 0x10]
aesenc xmm2, xmm0
xor edi, ecx
mov esi, eax
rol eax, 5
movdqa xmm12, xmm6
add ebp, edi
xor esi, ecx
movdqa xmmword [rsp + 0x10], xmm13
ror ebx, 7
add ebp, eax
add edx, dword [rsp + 0x28]
pslld xmm6, 2
xor esi, ebx
mov edi, ebp
psrld xmm12, 0x1e
rol ebp, 5
add edx, esi
xor edi, ebx
ror eax, 7
por xmm6, xmm12
add edx, ebp
add ecx, dword [rsp + 0x2c]
pshufd xmm13, xmm5, 0xee
xor edi, eax
mov esi, edx
rol edx, 5
add ecx, edi
movups xmm0, xmmword [r15]
aesenc xmm2, xmm1
xor esi, eax
ror ebp, 7
add ecx, edx
pxor xmm7, xmm11
add ebx, dword [rsp + 0x30]
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 [rsp + 0x34]
xor edi, edx
mov esi, ebx
rol ebx, 5
movdqa xmm13, xmm7
add eax, edi
xor esi, edx
movdqa xmmword [rsp + 0x20], xmm3
ror ecx, 7
add eax, ebx
add ebp, dword [rsp + 0x38]
movups xmm1, xmmword [r15 + 0x10]
aesenc xmm2, xmm0
pslld xmm7, 2
xor esi, ecx
mov edi, eax
psrld xmm13, 0x1e
rol eax, 5
add ebp, esi
xor edi, ecx
ror ebx, 7
por xmm7, xmm13
add ebp, eax
add edx, dword [rsp + 0x3c]
pshufd xmm3, xmm6, 0xee
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 [r15 + 0x20]
aesenc xmm2, xmm1
xor edi, eax
movdqa xmm13, xmm12
ror ebp, 7
paddd xmm12, xmm7
add ecx, edx
pxor xmm8, xmm3
add ebx, dword [rsp + 4]
xor edi, ebp
mov esi, ecx
rol ecx, 5
movdqa xmm3, xmm8
add ebx, edi
xor esi, ebp
movdqa xmmword [rsp + 0x30], xmm12
ror edx, 7
add ebx, ecx
add eax, dword [rsp + 8]
pslld xmm8, 2
xor esi, edx
mov edi, ebx
psrld xmm3, 0x1e
rol ebx, 5
add eax, esi
xor edi, edx
ror ecx, 7
por xmm8, xmm3
add eax, ebx
add ebp, dword [rsp + 0xc]
movups xmm1, xmmword [r15 + 0x30]
aesenc xmm2, xmm0
pshufd xmm12, xmm7, 0xee
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 [rsp + 0x10]
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 [rsp + 0x14]
xor edi, eax
mov esi, edx
rol edx, 5
movdqa xmm12, xmm9
add ecx, edi
cmp r8d, 0xb
jb 0x14004f2f0
movups xmm0, xmmword [r15 + 0x40]
aesenc xmm2, xmm1
movups xmm1, xmmword [r15 + 0x50]
aesenc xmm2, xmm0
je 0x14004f2f0
movups xmm0, xmmword [r15 + 0x60]
aesenc xmm2, xmm1
movups xmm1, xmmword [r15 + 0x70]
aesenc xmm2, xmm0
aesenclast xmm2, xmm1
movups xmm0, xmmword [r15 - 0x60]
xor esi, eax
movdqa xmmword [rsp], xmm13
ror ebp, 7
add ecx, edx
add ebx, dword [rsp + 0x18]
pslld xmm9, 2
xor esi, ebp
mov edi, ecx
psrld xmm12, 0x1e
rol ecx, 5
add ebx, esi
xor edi, ebp
ror edx, 7
por xmm9, xmm12
add ebx, ecx
add eax, dword [rsp + 0x1c]
pshufd xmm13, xmm8, 0xee
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 [rsp + 0x20]
movups xmm14, xmmword [r12 + 0x20]
xorps xmm14, xmm15
movups xmmword [r13 + r12 + 0x10], xmm2
xorps xmm2, xmm14
movups xmm1, xmmword [r15 - 0x50]
aesenc xmm2, xmm0
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 [rsp + 0x24]
and edi, ebx
xor ebx, ecx
ror eax, 7
movdqa xmm13, xmm10
mov esi, ebp
xor edi, ebx
movdqa xmmword [rsp + 0x10], xmm3
rol ebp, 5
add edx, edi
movups xmm0, xmmword [r15 - 0x40]
aesenc xmm2, xmm1
xor esi, eax
pslld xmm10, 2
xor eax, ebx
add edx, ebp
psrld xmm13, 0x1e
add ecx, dword [rsp + 0x28]
and esi, eax
xor eax, ebx
por xmm10, xmm13
ror ebp, 7
mov edi, edx
xor esi, eax
rol edx, 5
pshufd xmm3, xmm9, 0xee
add ecx, esi
xor edi, ebp
xor ebp, eax
add ecx, edx
add ebx, dword [rsp + 0x2c]
and edi, ebp
xor ebp, eax
ror edx, 7
movups xmm1, xmmword [r15 - 0x30]
aesenc xmm2, xmm0
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 [rsp + 0x30]
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 [r11 + 0x30]
xor edi, ecx
paddd xmm12, xmm10
xor ecx, edx
pxor xmm11, xmm3
add eax, ebx
add ebp, dword [rsp + 0x34]
movups xmm0, xmmword [r15 - 0x20]
aesenc xmm2, xmm1
and edi, ecx
xor ecx, edx
ror ebx, 7
movdqa xmm3, xmm11
mov esi, eax
xor edi, ecx
movdqa xmmword [rsp + 0x20], xmm12
rol eax, 5
add ebp, edi
xor esi, ebx
pslld xmm11, 2
xor ebx, ecx
add ebp, eax
psrld xmm3, 0x1e
add edx, dword [rsp + 0x38]
and esi, ebx
xor ebx, ecx
por xmm11, xmm3
ror eax, 7
mov edi, ebp
xor esi, ebx
rol ebp, 5
pshufd xmm12, xmm10, 0xee
add edx, esi
movups xmm1, xmmword [r15 - 0x10]
aesenc xmm2, xmm0
xor edi, eax
xor eax, ebx
add edx, ebp
add ecx, dword [rsp + 0x3c]
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]
aesenc xmm2, xmm1
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 [rsp + 4]
and edi, edx
xor edx, ebp
ror ecx, 7
movdqa xmm12, xmm4
mov esi, ebx
xor edi, edx
movdqa xmmword [rsp + 0x30], xmm13
rol ebx, 5
add eax, edi
xor esi, ecx
pslld xmm4, 2
xor ecx, edx
add eax, ebx
psrld xmm12, 0x1e
add ebp, dword [rsp + 8]
movups xmm1, xmmword [r15 + 0x10]
aesenc xmm2, xmm0
and esi, ecx
xor ecx, edx
por xmm4, xmm12
ror ebx, 7
mov edi, eax
xor esi, ecx
rol eax, 5
pshufd xmm13, xmm11, 0xee
add ebp, esi
xor edi, ebx
xor ebx, ecx
add ebp, eax
add edx, dword [rsp + 0xc]
and edi, ebx
xor ebx, ecx
ror eax, 7
mov esi, ebp
xor edi, ebx
rol ebp, 5
add edx, edi
movups xmm0, xmmword [r15 + 0x20]
aesenc xmm2, xmm1
xor esi, eax
xor eax, ebx
add edx, ebp
pxor xmm5, xmm9
add ecx, dword [rsp + 0x10]
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 [rsp + 0x14]
and edi, ebp
xor ebp, eax
ror edx, 7
movups xmm1, xmmword [r15 + 0x30]
aesenc xmm2, xmm0
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, 0x1e
add eax, dword [rsp + 0x18]
and esi, edx
xor edx, ebp
por xmm5, xmm13
ror ecx, 7
mov edi, ebx
xor esi, edx
rol ebx, 5
pshufd xmm3, xmm4, 0xee
add eax, esi
xor edi, ecx
xor ecx, edx
add eax, ebx
add ebp, dword [rsp + 0x1c]
cmp r8d, 0xb
jb 0x14004f669
movups xmm0, xmmword [r15 + 0x40]
aesenc xmm2, xmm1
movups xmm1, xmmword [r15 + 0x50]
aesenc xmm2, xmm0
je 0x14004f669
movups xmm0, xmmword [r15 + 0x60]
aesenc xmm2, xmm1
movups xmm1, xmmword [r15 + 0x70]
aesenc xmm2, xmm0
aesenclast xmm2, xmm1
movups xmm0, xmmword [r15 - 0x60]
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 [rsp + 0x20]
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 [r12 + 0x30]
xorps xmm14, xmm15
movups xmmword [r13 + r12 + 0x20], xmm2
xorps xmm2, xmm14
movups xmm1, xmmword [r15 - 0x50]
aesenc xmm2, xmm0
movdqa xmm13, xmm12
xor edi, eax
paddd xmm12, xmm5
xor eax, ebx
pxor xmm6, xmm3
add edx, ebp
add ecx, dword [rsp + 0x24]
and edi, eax
xor eax, ebx
ror ebp, 7
movdqa xmm3, xmm6
mov esi, edx
xor edi, eax
movdqa xmmword [rsp + 0x10], xmm12
rol edx, 5
add ecx, edi
xor esi, ebp
pslld xmm6, 2
xor ebp, eax
add ecx, edx
psrld xmm3, 0x1e
add ebx, dword [rsp + 0x28]
and esi, ebp
xor ebp, eax
por xmm6, xmm3
ror edx, 7
movups xmm0, xmmword [r15 - 0x40]
aesenc xmm2, xmm1
mov edi, ecx
xor esi, ebp
rol ecx, 5
pshufd xmm12, xmm5, 0xee
add ebx, esi
xor edi, edx
xor edx, ebp
add ebx, ecx
add eax, dword [rsp + 0x2c]
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 [rsp + 0x30]
movups xmm1, xmmword [r15 - 0x30]
aesenc xmm2, xmm0
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 [rsp + 0x34]
xor edi, ebx
mov esi, ebp
rol ebp, 5
movdqa xmm12, xmm7
add edx, edi
xor esi, ebx
movdqa xmmword [rsp + 0x20], xmm13
ror eax, 7
add edx, ebp
add ecx, dword [rsp + 0x38]
pslld xmm7, 2
xor esi, eax
mov edi, edx
psrld xmm12, 0x1e
rol edx, 5
add ecx, esi
movups xmm0, xmmword [r15 - 0x20]
aesenc xmm2, xmm1
xor edi, eax
ror ebp, 7
por xmm7, xmm12
add ecx, edx
add ebx, dword [rsp + 0x3c]
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 [rsp + 0x30], xmm3
ror ecx, 7
add eax, ebx
add ebp, dword [rsp + 4]
movups xmm1, xmmword [r15 - 0x10]
aesenc xmm2, xmm0
xor edi, ecx
mov esi, eax
rol eax, 5
add ebp, edi
xor esi, ecx
ror ebx, 7
add ebp, eax
add edx, dword [rsp + 8]
xor esi, ebx
mov edi, ebp
rol ebp, 5
add edx, esi
xor edi, ebx
ror eax, 7
add edx, ebp
add ecx, dword [rsp + 0xc]
xor edi, eax
mov esi, edx
rol edx, 5
add ecx, edi
movups xmm0, xmmword [r15]
aesenc xmm2, xmm1
xor esi, eax
ror ebp, 7
add ecx, edx
cmp r10, r14
je 0x14004fa51
movdqa xmm3, xmmword [r11 + 0x40]
movdqa xmm13, xmmword [r11]
movdqu xmm4, xmmword [r10]
movdqu xmm5, xmmword [r10 + 0x10]
movdqu xmm6, xmmword [r10 + 0x20]
movdqu xmm7, xmmword [r10 + 0x30]
pshufb xmm4, xmm3
add r10, 0x40
add ebx, dword [rsp + 0x10]
xor esi, ebp
mov edi, ecx
pshufb xmm5, xmm3
rol ecx, 5
add ebx, esi
xor edi, ebp
ror edx, 7
paddd xmm4, xmm13
add ebx, ecx
add eax, dword [rsp + 0x14]
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 [rsp + 0x18]
movups xmm1, xmmword [r15 + 0x10]
aesenc xmm2, xmm0
xor esi, ecx
mov edi, eax
rol eax, 5
add ebp, esi
xor edi, ecx
ror ebx, 7
add ebp, eax
add edx, dword [rsp + 0x1c]
xor edi, ebx
mov esi, ebp
rol ebp, 5
add edx, edi
xor esi, ebx
ror eax, 7
add edx, ebp
add ecx, dword [rsp + 0x20]
xor esi, eax
mov edi, edx
pshufb xmm6, xmm3
rol edx, 5
add ecx, esi
movups xmm0, xmmword [r15 + 0x20]
aesenc xmm2, xmm1
xor edi, eax
ror ebp, 7
paddd xmm5, xmm13
add ecx, edx
add ebx, dword [rsp + 0x24]
xor edi, ebp
mov esi, ecx
movdqa xmmword [rsp + 0x10], xmm5
rol ecx, 5
add ebx, edi
xor esi, ebp
ror edx, 7
psubd xmm5, xmm13
add ebx, ecx
add eax, dword [rsp + 0x28]
xor esi, edx
mov edi, ebx
rol ebx, 5
add eax, esi
xor edi, edx
ror ecx, 7
add eax, ebx
add ebp, dword [rsp + 0x2c]
movups xmm1, xmmword [r15 + 0x30]
aesenc xmm2, xmm0
xor edi, ecx
mov esi, eax
rol eax, 5
add ebp, edi
xor esi, ecx
ror ebx, 7
add ebp, eax
add edx, dword [rsp + 0x30]
xor esi, ebx
mov edi, ebp
pshufb xmm7, xmm3
rol ebp, 5
add edx, esi
xor edi, ebx
ror eax, 7
paddd xmm6, xmm13
add edx, ebp
add ecx, dword [rsp + 0x34]
xor edi, eax
mov esi, edx
movdqa xmmword [rsp + 0x20], xmm6
rol edx, 5
add ecx, edi
cmp r8d, 0xb
jb 0x14004f9d7
movups xmm0, xmmword [r15 + 0x40]
aesenc xmm2, xmm1
movups xmm1, xmmword [r15 + 0x50]
aesenc xmm2, xmm0
je 0x14004f9d7
movups xmm0, xmmword [r15 + 0x60]
aesenc xmm2, xmm1
movups xmm1, xmmword [r15 + 0x70]
aesenc xmm2, xmm0
aesenclast xmm2, xmm1
movups xmm0, xmmword [r15 - 0x60]
xor esi, eax
ror ebp, 7
psubd xmm6, xmm13
add ecx, edx
add ebx, dword [rsp + 0x38]
xor esi, ebp
mov edi, ecx
rol ecx, 5
add ebx, esi
xor edi, ebp
ror edx, 7
add ebx, ecx
add eax, dword [rsp + 0x3c]
xor edi, edx
mov esi, ebx
rol ebx, 5
add eax, edi
ror ecx, 7
add eax, ebx
movups xmmword [r13 + r12 + 0x30], xmm2
lea r12, [r12 + 0x40]
add eax, dword [r9]
add esi, dword [r9 + 4]
add ecx, dword [r9 + 8]
add edx, dword [r9 + 0xc]
mov dword [r9], eax
add ebp, dword [r9 + 0x10]
mov dword [r9 + 4], esi
mov ebx, esi
mov dword [r9 + 8], ecx
mov edi, ecx
mov dword [r9 + 0xc], edx
xor edi, edx
mov dword [r9 + 0x10], ebp
and esi, edi
jmp 0x14004eb60
add ebx, dword [rsp + 0x10]
xor esi, ebp
mov edi, ecx
rol ecx, 5
add ebx, esi
xor edi, ebp
ror edx, 7
add ebx, ecx
add eax, dword [rsp + 0x14]
xor edi, edx
mov esi, ebx
rol ebx, 5
add eax, edi
xor esi, edx
ror ecx, 7
add eax, ebx
add ebp, dword [rsp + 0x18]
movups xmm1, xmmword [r15 + 0x10]
aesenc xmm2, xmm0
xor esi, ecx
mov edi, eax
rol eax, 5
add ebp, esi
xor edi, ecx
ror ebx, 7
add ebp, eax
add edx, dword [rsp + 0x1c]
xor edi, ebx
mov esi, ebp
rol ebp, 5
add edx, edi
xor esi, ebx
ror eax, 7
add edx, ebp
add ecx, dword [rsp + 0x20]
xor esi, eax
mov edi, edx
rol edx, 5
add ecx, esi
movups xmm0, xmmword [r15 + 0x20]
aesenc xmm2, xmm1
xor edi, eax
ror ebp, 7
add ecx, edx
add ebx, dword [rsp + 0x24]
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 + 0x28]
xor esi, edx
mov edi, ebx
rol ebx, 5
add eax, esi
xor edi, edx
ror ecx, 7
add eax, ebx
add ebp, dword [rsp + 0x2c]
movups xmm1, xmmword [r15 + 0x30]
aesenc xmm2, xmm0
xor edi, ecx
mov esi, eax
rol eax, 5
add ebp, edi
xor esi, ecx
ror ebx, 7
add ebp, eax
add edx, dword [rsp + 0x30]
xor esi, ebx
mov edi, ebp
rol ebp, 5
add edx, esi
xor edi, ebx
ror eax, 7
add edx, ebp
add ecx, dword [rsp + 0x34]
xor edi, eax
mov esi, edx
rol edx, 5
add ecx, edi
cmp r8d, 0xb
jb 0x14004fb60
movups xmm0, xmmword [r15 + 0x40]
aesenc xmm2, xmm1
movups xmm1, xmmword [r15 + 0x50]
aesenc xmm2, xmm0
je 0x14004fb60
movups xmm0, xmmword [r15 + 0x60]
aesenc xmm2, xmm1
movups xmm1, xmmword [r15 + 0x70]
aesenc xmm2, xmm0
aesenclast xmm2, xmm1
movups xmm0, xmmword [r15 - 0x60]
xor esi, eax
ror ebp, 7
add ecx, edx
add ebx, dword [rsp + 0x38]
xor esi, ebp
mov edi, ecx
rol ecx, 5
add ebx, esi
xor edi, ebp
ror edx, 7
add ebx, ecx
add eax, dword [rsp + 0x3c]
xor edi, edx
mov esi, ebx
rol ebx, 5
add eax, edi
ror ecx, 7
add eax, ebx
movups xmmword [r13 + r12 + 0x30], xmm2
mov r8, qword [rsp + 0x58]
add eax, dword [r9]
add esi, dword [r9 + 4]
add ecx, dword [r9 + 8]
mov dword [r9], eax
add edx, dword [r9 + 0xc]
mov dword [r9 + 4], esi
add ebp, dword [r9 + 0x10]
mov dword [r9 + 8], ecx
mov dword [r9 + 0xc], edx
mov dword [r9 + 0x10], ebp
movups xmmword [r8], xmm2
movaps xmm6, xmmword [rsp + 0x60]
movaps xmm7, xmmword [rsp + 0x70]
movaps xmm8, xmmword [rsp + 0x80]
movaps xmm9, xmmword [rsp + 0x90]
movaps xmm10, xmmword [rsp + 0xa0]
movaps xmm11, xmmword [rsp + 0xb0]
movaps xmm12, xmmword [rsp + 0xc0]
movaps xmm13, xmmword [rsp + 0xd0]
movaps xmm14, xmmword [rsp + 0xe0]
movaps xmm15, xmmword [rsp + 0xf0]
lea rsi, [rsp + 0x108]
mov r15, qword [rsi]
mov r14, qword [rsi + 8]
mov r13, qword [rsi + 0x10]
mov r12, qword [rsi + 0x18]
mov rbp, qword [rsi + 0x20]
mov rbx, qword [rsi + 0x28]
lea rsp, [rsi + 0x30]
mov rdi, qword [rsp + 8]
mov rsi, qword [rsp + 0x10]
repz ret
mov qword [rsp + 8], rdi
mov qword [rsp + 0x10], rsi
mov rax, rsp
mov rdi, rcx
mov rsi, rdx
mov rdx, r8
mov rcx, r9
mov r8, qword [rsp + 0x28]
mov r9, qword [rsp + 0x30]
mov r10, qword [rsp + 0x38]
push rbx
push rbp
push r12
push r13
push r14
push r15
lea rsp, [rsp - 0x108]
movaps xmmword [rsp + 0x60], xmm6
movaps xmmword [rsp + 0x70], xmm7
movaps xmmword [rsp + 0x80], xmm8
movaps xmmword [rsp + 0x90], xmm9
movaps xmmword [rsp + 0xa0], xmm10
movaps xmmword [rsp + 0xb0], xmm11
movaps xmmword [rsp + 0xc0], xmm12
movaps xmmword [rsp + 0xd0], xmm13
movaps xmmword [rsp + 0xe0], xmm14
movaps xmmword [rsp + 0xf0], xmm15
vzeroall
mov r12, rdi
mov r13, rsi
mov r14, rdx
lea r15, [rcx + 0x70]
vmovdqu xmm12, xmmword [r8]
mov qword [rsp + 0x58], r8
shl r14, 6
sub r13, r12
mov r8d, dword [r15 + 0x80]
add r14, r10
lea r11, [0x140050e80]
mov eax, dword [r9]
mov ebx, dword [r9 + 4]
mov ecx, dword [r9 + 8]
mov edx, dword [r9 + 0xc]
mov esi, ebx
mov ebp, dword [r9 + 0x10]
mov edi, ecx
xor edi, edx
and esi, edi
vmovdqa xmm6, xmmword [r11 + 0x40]
vmovdqa xmm10, xmmword [r11]
vmovdqu xmm0, xmmword [r10]
vmovdqu xmm1, xmmword [r10 + 0x10]
vmovdqu xmm2, xmmword [r10 + 0x20]
vmovdqu xmm3, xmmword [r10 + 0x30]
vpshufb xmm0, xmm0, xmm6
add r10, 0x40
vpshufb xmm1, xmm1, xmm6
vpshufb xmm2, xmm2, xmm6
vpshufb xmm3, xmm3, xmm6
vpaddd xmm4, xmm0, xmm10
vpaddd xmm5, xmm1, xmm10
vpaddd xmm6, xmm2, xmm10
vmovdqa xmmword [rsp], xmm4
vmovdqa xmmword [rsp + 0x10], xmm5
vmovdqa xmmword [rsp + 0x20], xmm6
vmovups xmm15, xmmword [r15 - 0x70]
vmovups xmm14, xmmword [r15 - 0x60]
jmp 0x14004fdc0
mov qword [rsp + 8], rdi
mov qword [rsp + 0x10], rsi
mov rax, rsp
mov rdi, rcx
mov rsi, rdx
mov rdx, r8
mov rcx, r9
mov r8, qword [rsp + 0x28]
mov r9, qword [rsp + 0x30]
mov r10, qword [rsp + 0x38]
lea rsp, [rsp - 0xa8]
movaps xmmword [rax - 0xa8], xmm6
movaps xmmword [rax - 0x98], xmm7
movaps xmmword [rax - 0x88], xmm8
movaps xmmword [rax - 0x78], xmm9
movaps xmmword [rax - 0x68], xmm10
movaps xmmword [rax - 0x58], xmm11
movaps xmmword [rax - 0x48], xmm12
movaps xmmword [rax - 0x38], xmm13
movaps xmmword [rax - 0x28], xmm14
movaps xmmword [rax - 0x18], xmm15
movdqu xmm8, xmmword [r9]
movd xmm9, dword [r9 + 0x10]
movdqa xmm7, xmmword [0x140050ed0]
mov r11d, dword [rcx + 0xf0]
sub rsi, rdi
movups xmm15, xmmword [rcx]
movups xmm2, xmmword [r8]
movups xmm0, xmmword [rcx + 0x10]
lea rcx, [rcx + 0x70]
pshufd xmm8, xmm8, 0x1b
pshufd xmm9, xmm9, 0x1b
jmp 0x140050ff0
movups xmm14, xmmword [rdi]
xorps xmm14, xmm15
xorps xmm2, xmm14
movups xmm1, xmmword [rcx - 0x50]
aesenc xmm2, xmm0
movdqu xmm3, xmmword [r10]
movdqa xmm12, xmm9
pshufb xmm3, xmm7
movdqu xmm4, xmmword [r10 + 0x10]
movdqa xmm11, xmm8
movups xmm0, xmmword [rcx - 0x40]
aesenc xmm2, xmm1
pshufb xmm4, xmm7
paddd xmm9, xmm3
movdqu xmm5, xmmword [r10 + 0x20]
lea r10, [r10 + 0x40]
pxor xmm3, xmm12
movups xmm1, xmmword [rcx - 0x30]
aesenc xmm2, xmm0
pxor xmm3, xmm12
movdqa xmm10, xmm8
pshufb xmm5, xmm7
sha1rnds4 xmm8, xmm9, 0
sha1nexte xmm10, xmm4
movups xmm0, xmmword [rcx - 0x20]
aesenc xmm2, xmm1
sha1msg1 xmm3, xmm4
movdqu xmm6, xmmword [r10 - 0x10]
movdqa xmm9, xmm8
pshufb xmm6, xmm7
movups xmm1, xmmword [rcx - 0x10]
aesenc xmm2, xmm0
sha1rnds4 xmm8, xmm10, 0
sha1nexte xmm9, xmm5
pxor xmm3, xmm5
sha1msg1 xmm4, xmm5
movups xmm0, xmmword [rcx]
aesenc xmm2, xmm1
movdqa xmm10, xmm8
sha1rnds4 xmm8, xmm9, 0
sha1nexte xmm10, xmm6
movups xmm1, xmmword [rcx + 0x10]
aesenc xmm2, xmm0
sha1msg2 xmm3, xmm6
pxor xmm4, xmm6
sha1msg1 xmm5, xmm6
movups xmm0, xmmword [rcx + 0x20]
aesenc xmm2, xmm1
movdqa xmm9, xmm8
sha1rnds4 xmm8, xmm10, 0
sha1nexte xmm9, xmm3
movups xmm1, xmmword [rcx + 0x30]
aesenc xmm2, xmm0
sha1msg2 xmm4, xmm3
pxor xmm5, xmm3
sha1msg1 xmm6, xmm3
cmp r11d, 0xb
jb 0x140051124
movups xmm0, xmmword [rcx + 0x40]
aesenc xmm2, xmm1
movups xmm1, xmmword [rcx + 0x50]
aesenc xmm2, xmm0
je 0x140051124
movups xmm0, xmmword [rcx + 0x60]
aesenc xmm2, xmm1
movups xmm1, xmmword [rcx + 0x70]
aesenc xmm2, xmm0
aesenclast xmm2, xmm1
movups xmm0, xmmword [rcx - 0x60]
movdqa xmm10, xmm8
sha1rnds4 xmm8, xmm9, 0
sha1nexte xmm10, xmm4
movups xmm14, xmmword [rdi + 0x10]
xorps xmm14, xmm15
movups xmmword [rsi + rdi], xmm2
xorps xmm2, xmm14
movups xmm1, xmmword [rcx - 0x50]
aesenc xmm2, xmm0
sha1msg2 xmm5, xmm4
pxor xmm6, xmm4
sha1msg1 xmm3, xmm4
movups xmm0, xmmword [rcx - 0x40]
aesenc xmm2, xmm1
movdqa xmm9, xmm8
sha1rnds4 xmm8, xmm10, 1
sha1nexte xmm9, xmm5
movups xmm1, xmmword [rcx - 0x30]
aesenc xmm2, xmm0
sha1msg2 xmm6, xmm5
pxor xmm3, xmm5
sha1msg1 xmm4, xmm5
movups xmm0, xmmword [rcx - 0x20]
aesenc xmm2, xmm1
movdqa xmm10, xmm8
sha1rnds4 xmm8, xmm9, 1
sha1nexte xmm10, xmm6
movups xmm1, xmmword [rcx - 0x10]
aesenc xmm2, xmm0
sha1msg2 xmm3, xmm6
pxor xmm4, xmm6
sha1msg1 xmm5, xmm6
movups xmm0, xmmword [rcx]
aesenc xmm2, xmm1
movdqa xmm9, xmm8
sha1rnds4 xmm8, xmm10, 1
sha1nexte xmm9, xmm3
movups xmm1, xmmword [rcx + 0x10]
aesenc xmm2, xmm0
sha1msg2 xmm4, xmm3
pxor xmm5, xmm3
sha1msg1 xmm6, xmm3
movups xmm0, xmmword [rcx + 0x20]
aesenc xmm2, xmm1
movdqa xmm10, xmm8
sha1rnds4 xmm8, xmm9, 1
sha1nexte xmm10, xmm4
movups xmm1, xmmword [rcx + 0x30]
aesenc xmm2, xmm0
sha1msg2 xmm5, xmm4
pxor xmm6, xmm4
sha1msg1 xmm3, xmm4
cmp r11d, 0xb
jb 0x140051246
movups xmm0, xmmword [rcx + 0x40]
aesenc xmm2, xmm1
movups xmm1, xmmword [rcx + 0x50]
aesenc xmm2, xmm0
je 0x140051246
movups xmm0, xmmword [rcx + 0x60]
aesenc xmm2, xmm1
movups xmm1, xmmword [rcx + 0x70]
aesenc xmm2, xmm0
aesenclast xmm2, xmm1
movups xmm0, xmmword [rcx - 0x60]
movdqa xmm9, xmm8
sha1rnds4 xmm8, xmm10, 1
sha1nexte xmm9, xmm5
movups xmm14, xmmword [rdi + 0x20]
xorps xmm14, xmm15
movups xmmword [rsi + rdi + 0x10], xmm2
xorps xmm2, xmm14
movups xmm1, xmmword [rcx - 0x50]
aesenc xmm2, xmm0
sha1msg2 xmm6, xmm5
pxor xmm3, xmm5
sha1msg1 xmm4, xmm5
movups xmm0, xmmword [rcx - 0x40]
aesenc xmm2, xmm1
movdqa xmm10, xmm8
sha1rnds4 xmm8, xmm9, 2
sha1nexte xmm10, xmm6
movups xmm1, xmmword [rcx - 0x30]
aesenc xmm2, xmm0
sha1msg2 xmm3, xmm6
pxor xmm4, xmm6
sha1msg1 xmm5, xmm6
movups xmm0, xmmword [rcx - 0x20]
aesenc xmm2, xmm1
movdqa xmm9, xmm8
sha1rnds4 xmm8, xmm10, 2
sha1nexte xmm9, xmm3
movups xmm1, xmmword [rcx - 0x10]
aesenc xmm2, xmm0
sha1msg2 xmm4, xmm3
pxor xmm5, xmm3
sha1msg1 xmm6, xmm3
movups xmm0, xmmword [rcx]
aesenc xmm2, xmm1
movdqa xmm10, xmm8
sha1rnds4 xmm8, xmm9, 2
sha1nexte xmm10, xmm4
movups xmm1, xmmword [rcx + 0x10]
aesenc xmm2, xmm0
sha1msg2 xmm5, xmm4
pxor xmm6, xmm4
sha1msg1 xmm3, xmm4
movups xmm0, xmmword [rcx + 0x20]
aesenc xmm2, xmm1
movdqa xmm9, xmm8
sha1rnds4 xmm8, xmm10, 2
sha1nexte xmm9, xmm5
movups xmm1, xmmword [rcx + 0x30]
aesenc xmm2, xmm0
sha1msg2 xmm6, xmm5
pxor xmm3, xmm5
sha1msg1 xmm4, xmm5
cmp r11d, 0xb
jb 0x140051369
movups xmm0, xmmword [rcx + 0x40]
aesenc xmm2, xmm1
movups xmm1, xmmword [rcx + 0x50]
aesenc xmm2, xmm0
je 0x140051369
movups xmm0, xmmword [rcx + 0x60]
aesenc xmm2, xmm1
movups xmm1, xmmword [rcx + 0x70]
aesenc xmm2, xmm0
aesenclast xmm2, xmm1
movups xmm0, xmmword [rcx - 0x60]
movdqa xmm10, xmm8
sha1rnds4 xmm8, xmm9, 2
sha1nexte xmm10, xmm6
movups xmm14, xmmword [rdi + 0x30]
xorps xmm14, xmm15
movups xmmword [rsi + rdi + 0x20], xmm2
xorps xmm2, xmm14
movups xmm1, xmmword [rcx - 0x50]
aesenc xmm2, xmm0
sha1msg2 xmm3, xmm6
pxor xmm4, xmm6
sha1msg1 xmm5, xmm6
movups xmm0, xmmword [rcx - 0x40]
aesenc xmm2, xmm1
movdqa xmm9, xmm8
sha1rnds4 xmm8, xmm10, 3
sha1nexte xmm9, xmm3
movups xmm1, xmmword [rcx - 0x30]
aesenc xmm2, xmm0
sha1msg2 xmm4, xmm3
pxor xmm5, xmm3
sha1msg1 xmm6, xmm3
movups xmm0, xmmword [rcx - 0x20]
aesenc xmm2, xmm1
movdqa xmm10, xmm8
sha1rnds4 xmm8, xmm9, 3
sha1nexte xmm10, xmm4
sha1msg2 xmm5, xmm4
pxor xmm6, xmm4
movups xmm1, xmmword [rcx - 0x10]
aesenc xmm2, xmm0
movdqa xmm9, xmm8
sha1rnds4 xmm8, xmm10, 3
sha1nexte xmm9, xmm5
sha1msg2 xmm6, xmm5
movups xmm0, xmmword [rcx]
aesenc xmm2, xmm1
movdqa xmm5, xmm12
movdqa xmm10, xmm8
sha1rnds4 xmm8, xmm9, 3
sha1nexte xmm10, xmm6
movups xmm1, xmmword [rcx + 0x10]
aesenc xmm2, xmm0
movdqa xmm9, xmm8
sha1rnds4 xmm8, xmm10, 3
sha1nexte xmm9, xmm5
movups xmm0, xmmword [rcx + 0x20]
aesenc xmm2, xmm1
movups xmm1, xmmword [rcx + 0x30]
aesenc xmm2, xmm0
cmp r11d, 0xb
jb 0x140051489
movups xmm0, xmmword [rcx + 0x40]
aesenc xmm2, xmm1
movups xmm1, xmmword [rcx + 0x50]
aesenc xmm2, xmm0
je 0x140051489
movups xmm0, xmmword [rcx + 0x60]
aesenc xmm2, xmm1
movups xmm1, xmmword [rcx + 0x70]
aesenc xmm2, xmm0
aesenclast xmm2, xmm1
movups xmm0, xmmword [rcx - 0x60]
dec rdx
paddd xmm8, xmm11
movups xmmword [rsi + rdi + 0x30], xmm2
lea rdi, [rdi + 0x40]
jne 0x140050ff0
pshufd xmm8, xmm8, 0x1b
pshufd xmm9, xmm9, 0x1b
movups xmmword [r8], xmm2
movdqu xmmword [r9], xmm8
movd dword [r9 + 0x10], xmm9
movaps xmm6, xmmword [rax - 0xa8]
movaps xmm7, xmmword [rax - 0x98]
movaps xmm8, xmmword [rax - 0x88]
movaps xmm9, xmmword [rax - 0x78]
movaps xmm10, xmmword [rax - 0x68]
movaps xmm11, xmmword [rax - 0x58]
movaps xmm12, xmmword [rax - 0x48]
movaps xmm13, xmmword [rax - 0x38]
movaps xmm14, xmmword [rax - 0x28]
movaps xmm15, xmmword [rax - 0x18]
mov rsp, rax
mov rdi, qword [rsp + 8]
mov rsi, qword [rsp + 0x10]
repz ret