Function at 0x140007b80
Capabilities:
Encrypt data using salsa20 or chacha

Disassembly:
push r14
push rsi
push rdi
push rbx
sub rsp, 0x148
movaps xmmword [rsp + 0x130], xmm15
movaps xmmword [rsp + 0x120], xmm14
movaps xmmword [rsp + 0x110], xmm13
movaps xmmword [rsp + 0x100], xmm12
movaps xmmword [rsp + 0xf0], xmm11
movaps xmmword [rsp + 0xe0], xmm10
movaps xmmword [rsp + 0xd0], xmm9
movaps xmmword [rsp + 0xc0], xmm8
movdqa xmmword [rsp + 0xb0], xmm7
movaps xmmword [rsp + 0xa0], xmm6
mov rsi, qword [0x140438078]
mov rax, qword [rsi]
test rax, rax
je 0x1400072be
and eax, 0x8000
xor r9d, r9d
or rax, r9
je 0x1400072e4
movaps xmm6, xmmword [rsp + 0xa0]
movaps xmm7, xmmword [rsp + 0xb0]
movaps xmm8, xmmword [rsp + 0xc0]
movaps xmm9, xmmword [rsp + 0xd0]
movaps xmm10, xmmword [rsp + 0xe0]
movaps xmm11, xmmword [rsp + 0xf0]
movaps xmm12, xmmword [rsp + 0x100]
movaps xmm13, xmmword [rsp + 0x110]
movaps xmm14, xmmword [rsp + 0x120]
movaps xmm15, xmmword [rsp + 0x130]
add rsp, 0x148
pop rbx
pop rdi
pop rsi
pop r14
jmp 0x140007b80
mov rdi, r8
mov r14, rcx
mov ebx, edx
call fcn.14003f100
mov edx, ebx
mov rcx, r14
mov r8, rdi
and eax, 0x8000
xor r9d, r9d
or rax, r9
jne 0x140007255
mov rax, qword [rsi]
test rax, rax
je 0x140007366
and eax, 0x4000
xor r9d, r9d
or rax, r9
je 0x14000738c
movaps xmm6, xmmword [rsp + 0xa0]
movaps xmm7, xmmword [rsp + 0xb0]
movaps xmm8, xmmword [rsp + 0xc0]
movaps xmm9, xmmword [rsp + 0xd0]
movaps xmm10, xmmword [rsp + 0xe0]
movaps xmm11, xmmword [rsp + 0xf0]
movaps xmm12, xmmword [rsp + 0x100]
movaps xmm13, xmmword [rsp + 0x110]
movaps xmm14, xmmword [rsp + 0x120]
movaps xmm15, xmmword [rsp + 0x130]
add rsp, 0x148
pop rbx
pop rdi
pop rsi
pop r14
jmp 0x140007f00
mov rdi, r8
mov r14, rcx
mov ebx, edx
call fcn.14003f100
mov edx, ebx
mov rcx, r14
mov r8, rdi
and eax, 0x4000
xor r9d, r9d
or rax, r9
jne 0x1400072fd
mov rax, qword [rsi]
test rax, rax
je 0x14000740e
and eax, 0x400
xor r9d, r9d
or rax, r9
je 0x140007434
movaps xmm6, xmmword [rsp + 0xa0]
movaps xmm7, xmmword [rsp + 0xb0]
movaps xmm8, xmmword [rsp + 0xc0]
movaps xmm9, xmmword [rsp + 0xd0]
movaps xmm10, xmmword [rsp + 0xe0]
movaps xmm11, xmmword [rsp + 0xf0]
movaps xmm12, xmmword [rsp + 0x100]
movaps xmm13, xmmword [rsp + 0x110]
movaps xmm14, xmmword [rsp + 0x120]
movaps xmm15, xmmword [rsp + 0x130]
add rsp, 0x148
pop rbx
pop rdi
pop rsi
pop r14
jmp 0x1400085a0
mov rdi, r8
mov r14, rcx
mov ebx, edx
call fcn.14003f100
mov edx, ebx
mov rcx, r14
mov r8, rdi
and eax, 0x400
xor r9d, r9d
or rax, r9
jne 0x1400073a5
mov rax, qword [rsi]
test rax, rax
je 0x1400074b6
and eax, 0x200
xor r9d, r9d
or rax, r9
je 0x1400074dc
movaps xmm6, xmmword [rsp + 0xa0]
movaps xmm7, xmmword [rsp + 0xb0]
movaps xmm8, xmmword [rsp + 0xc0]
movaps xmm9, xmmword [rsp + 0xd0]
movaps xmm10, xmmword [rsp + 0xe0]
movaps xmm11, xmmword [rsp + 0xf0]
movaps xmm12, xmmword [rsp + 0x100]
movaps xmm13, xmmword [rsp + 0x110]
movaps xmm14, xmmword [rsp + 0x120]
movaps xmm15, xmmword [rsp + 0x130]
add rsp, 0x148
pop rbx
pop rdi
pop rsi
pop r14
jmp 0x140008cc0
mov rsi, r8
mov rbx, rcx
mov edi, edx
call fcn.14003f100
mov edx, edi
mov rcx, rbx
mov r8, rsi
and eax, 0x200
xor r9d, r9d
or rax, r9
jne 0x14000744d
movdqa xmm11, xmmword [rcx]
movdqa xmm3, xmmword [rcx + 0x10]
movdqa xmm8, xmmword [rcx + 0x20]
movd xmm1, dword [0x140421e60]
paddq xmm1, xmm8
movd xmm0, dword [0x140421e64]
paddq xmm0, xmm8
movd xmm4, dword [0x140421e68]
paddq xmm4, xmm8
test edx, edx
movdqa xmmword [rsp + 0x80], xmm8
movdqa xmmword [rsp + 0x70], xmm1
movdqa xmmword [rsp + 0x60], xmm0
movdqa xmmword [rsp + 0x30], xmm3
movdqa xmmword [rsp + 0x50], xmm4
je 0x1400079f5
movdqa xmm6, xmmword [str.expand_32_byte_k]
movdqa xmm5, xmm11
movdqa xmm15, xmm11
movdqa xmm13, xmm11
movdqa xmmword [rsp + 0x40], xmm11
movdqa xmm14, xmm3
movdqa xmm12, xmm3
movdqa xmmword [rsp + 0x20], xmm3
movdqa xmm2, xmm8
movdqa xmm9, xmm6
movdqa xmm8, xmm6
movdqa xmm10, xmm6
nop
paddd xmm6, xmm5
paddd xmm9, xmm15
paddd xmm8, xmm13
paddd xmm10, xmm11
pxor xmm2, xmm6
pxor xmm1, xmm9
pxor xmm0, xmm8
pxor xmm4, xmm10
pshuflw xmm2, xmm2, 0xb1
pshufhw xmm2, xmm2, 0xb1
pshuflw xmm1, xmm1, 0xb1
pshufhw xmm1, xmm1, 0xb1
pshuflw xmm0, xmm0, 0xb1
pshufhw xmm0, xmm0, 0xb1
pshuflw xmm4, xmm4, 0xb1
pshufhw xmm4, xmm4, 0xb1
paddd xmm3, xmm2
paddd xmm14, xmm1
paddd xmm12, xmm0
movdqa xmm7, xmmword [rsp + 0x20]
paddd xmm7, xmm4
movdqa xmmword [rsp + 0x20], xmm7
pxor xmm5, xmm3
movdqa xmm7, xmm5
psrld xmm7, 0x14
pslld xmm5, 0xc
por xmm5, xmm7
pxor xmm15, xmm14
movdqa xmm7, xmm15
psrld xmm7, 0x14
pslld xmm15, 0xc
por xmm15, xmm7
pxor xmm13, xmm12
movdqa xmm7, xmm13
psrld xmm7, 0x14
pslld xmm13, 0xc
por xmm13, xmm7
pxor xmm11, xmmword [rsp + 0x20]
movdqa xmm7, xmm11
psrld xmm7, 0x14
pslld xmm11, 0xc
por xmm11, xmm7
paddd xmm6, xmm5
paddd xmm9, xmm15
paddd xmm8, xmm13
paddd xmm10, xmm11
pxor xmm2, xmm6
movdqa xmm7, xmm2
psrld xmm7, 0x18
pslld xmm2, 8
por xmm2, xmm7
pxor xmm1, xmm9
movdqa xmm7, xmm1
psrld xmm7, 0x18
pslld xmm1, 8
por xmm1, xmm7
pxor xmm0, xmm8
movdqa xmm7, xmm0
psrld xmm7, 0x18
pslld xmm0, 8
por xmm0, xmm7
pxor xmm4, xmm10
movdqa xmm7, xmm4
psrld xmm7, 0x18
pslld xmm4, 8
por xmm4, xmm7
paddd xmm3, xmm2
paddd xmm14, xmm1
paddd xmm12, xmm0
movdqa xmm7, xmmword [rsp + 0x20]
paddd xmm7, xmm4
movdqa xmmword [rsp + 0x20], xmm7
pxor xmm5, xmm3
pxor xmm15, xmm14
pxor xmm13, xmm12
pxor xmm11, xmm7
movdqa xmm7, xmm5
psrld xmm7, 0x19
pslld xmm5, 7
por xmm5, xmm7
movdqa xmm7, xmm15
psrld xmm7, 0x19
pslld xmm15, 7
por xmm15, xmm7
movdqa xmm7, xmm13
psrld xmm7, 0x19
pslld xmm13, 7
por xmm13, xmm7
movdqa xmm7, xmm11
psrld xmm7, 0x19
pslld xmm11, 7
por xmm11, xmm7
pshufd xmm5, xmm5, 0x39
pshufd xmm15, xmm15, 0x39
pshufd xmm13, xmm13, 0x39
pshufd xmm11, xmm11, 0x39
pshufd xmm3, xmm3, 0x4e
pshufd xmm14, xmm14, 0x4e
pshufd xmm12, xmm12, 0x4e
pshufd xmm7, xmmword [rsp + 0x20], 0x4e
movdqa xmmword [rsp + 0x20], xmm7
pshufd xmm2, xmm2, 0x93
pshufd xmm1, xmm1, 0x93
pshufd xmm7, xmm0, 0x93
pshufd xmm0, xmm4, 0x93
movdqa xmmword [rsp + 0x90], xmm0
paddd xmm6, xmm5
paddd xmm9, xmm15
paddd xmm8, xmm13
paddd xmm10, xmm11
pshuflw xmm0, xmm6, 0xb1
pshufhw xmm4, xmm0, 0xb1
pshuflw xmm0, xmm2, 0xb1
pshufhw xmm0, xmm0, 0xb1
pxor xmm0, xmm4
pshuflw xmm2, xmm9, 0xb1
pshufhw xmm2, xmm2, 0xb1
pshuflw xmm1, xmm1, 0xb1
pshufhw xmm1, xmm1, 0xb1
pxor xmm1, xmm2
pshuflw xmm2, xmm8, 0xb1
pshufhw xmm2, xmm2, 0xb1
pshuflw xmm4, xmm7, 0xb1
pshufhw xmm4, xmm4, 0xb1
pxor xmm4, xmm2
pshuflw xmm2, xmm10, 0xb1
pshufhw xmm2, xmm2, 0xb1
pshuflw xmm7, xmmword [rsp + 0x90], 0xb1
pshufhw xmm7, xmm7, 0xb1
pxor xmm7, xmm2
paddd xmm3, xmm0
paddd xmm14, xmm1
paddd xmm12, xmm4
movdqa xmm2, xmmword [rsp + 0x20]
paddd xmm2, xmm7
movdqa xmmword [rsp + 0x20], xmm2
pxor xmm5, xmm3
pxor xmm15, xmm14
pxor xmm13, xmm12
pxor xmm11, xmm2
movdqa xmm2, xmm5
psrld xmm2, 0x14
pslld xmm5, 0xc
por xmm5, xmm2
movdqa xmm2, xmm15
psrld xmm2, 0x14
pslld xmm15, 0xc
por xmm15, xmm2
movdqa xmm2, xmm13
psrld xmm2, 0x14
pslld xmm13, 0xc
por xmm13, xmm2
movdqa xmm2, xmm11
psrld xmm2, 0x14
pslld xmm11, 0xc
por xmm11, xmm2
paddd xmm6, xmm5
paddd xmm9, xmm15
paddd xmm8, xmm13
paddd xmm10, xmm11
pxor xmm0, xmm6
movdqa xmm2, xmm0
psrld xmm2, 0x18
pslld xmm0, 8
por xmm0, xmm2
pxor xmm1, xmm9
movdqa xmm2, xmm1
psrld xmm2, 0x18
pslld xmm1, 8
por xmm1, xmm2
pxor xmm4, xmm8
movdqa xmm2, xmm4
psrld xmm2, 0x18
pslld xmm4, 8
por xmm4, xmm2
pxor xmm7, xmm10
movdqa xmm2, xmm7
psrld xmm2, 0x18
pslld xmm7, 8
por xmm7, xmm2
paddd xmm3, xmm0
paddd xmm14, xmm1
paddd xmm12, xmm4
movdqa xmm2, xmmword [rsp + 0x20]
paddd xmm2, xmm7
movdqa xmmword [rsp + 0x20], xmm2
pxor xmm5, xmm3
pxor xmm15, xmm14
pxor xmm13, xmm12
pxor xmm11, xmm2
movdqa xmm2, xmm5
psrld xmm2, 0x19
pslld xmm5, 7
por xmm5, xmm2
movdqa xmm2, xmm15
psrld xmm2, 0x19
pslld xmm15, 7
por xmm15, xmm2
movdqa xmm2, xmm13
psrld xmm2, 0x19
pslld xmm13, 7
por xmm13, xmm2
movdqa xmm2, xmm11
psrld xmm2, 0x19
pslld xmm11, 7
por xmm11, xmm2
pshufd xmm5, xmm5, 0x93
pshufd xmm15, xmm15, 0x93
pshufd xmm13, xmm13, 0x93
pshufd xmm11, xmm11, 0x93
pshufd xmm3, xmm3, 0x4e
pshufd xmm14, xmm14, 0x4e
pshufd xmm12, xmm12, 0x4e
pshufd xmm2, xmmword [rsp + 0x20], 0x4e
movdqa xmmword [rsp + 0x20], xmm2
pshufd xmm2, xmm0, 0x39
pshufd xmm1, xmm1, 0x39
pshufd xmm0, xmm4, 0x39
pshufd xmm4, xmm7, 0x39
dec edx
jne 0x140007580
movdqa xmm7, xmmword [str.expand_32_byte_k]
paddd xmm6, xmm7
paddd xmm9, xmm7
paddd xmm8, xmm7
paddd xmm10, xmm7
movdqa xmm7, xmmword [rsp + 0x40]
jmp 0x140007a36
movdqa xmm10, xmmword [0x140421e30]
movdqa xmm2, xmm8
movdqa xmm8, xmm10
movdqa xmm9, xmm10
movdqa xmm6, xmm10
movdqa xmmword [rsp + 0x20], xmm3
movdqa xmm12, xmm3
movdqa xmm14, xmm3
movdqa xmm7, xmm11
movdqa xmm13, xmm11
movdqa xmm15, xmm11
movdqa xmm5, xmm11
paddd xmm5, xmm7
paddd xmm15, xmm7
paddd xmm13, xmm7
paddd xmm11, xmm7
movdqa xmm7, xmmword [rsp + 0x30]
paddd xmm3, xmm7
paddd xmm14, xmm7
paddd xmm12, xmm7
movdqa xmm7, xmmword [rsp + 0x20]
paddd xmm7, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x20], xmm7
paddd xmm1, xmmword [rsp + 0x70]
paddd xmm0, xmmword [rsp + 0x60]
paddd xmm4, xmmword [rsp + 0x50]
movdqu xmmword [r8], xmm6
movdqu xmmword [r8 + 0x10], xmm5
movdqu xmmword [r8 + 0x20], xmm3
movdqa xmm3, xmmword [rsp + 0x80]
paddd xmm2, xmm3
movdqu xmmword [r8 + 0x30], xmm2
movdqu xmmword [r8 + 0x40], xmm9
movdqu xmmword [r8 + 0x50], xmm15
movdqu xmmword [r8 + 0x60], xmm14
movdqu xmmword [r8 + 0x70], xmm1
movdqu xmmword [r8 + 0x80], xmm8
movdqu xmmword [r8 + 0x90], xmm13
movdqu xmmword [r8 + 0xa0], xmm12
movdqu xmmword [r8 + 0xb0], xmm0
movdqu xmmword [r8 + 0xc0], xmm10
movdqu xmmword [r8 + 0xd0], xmm11
movaps xmm0, xmmword [rsp + 0x20]
movups xmmword [r8 + 0xe0], xmm0
movdqu xmmword [r8 + 0xf0], xmm4
paddq xmm3, xmmword [0x140421e50]
movdqa xmmword [rcx + 0x20], xmm3
movaps xmm6, xmmword [rsp + 0xa0]
movaps xmm7, xmmword [rsp + 0xb0]
movaps xmm8, xmmword [rsp + 0xc0]
movaps xmm9, xmmword [rsp + 0xd0]
movaps xmm10, xmmword [rsp + 0xe0]
movaps xmm11, xmmword [rsp + 0xf0]
movaps xmm12, xmmword [rsp + 0x100]
movaps xmm13, xmmword [rsp + 0x110]
movaps xmm14, xmmword [rsp + 0x120]
movaps xmm15, xmmword [rsp + 0x130]
add rsp, 0x148
pop rbx
pop rdi
pop rsi
pop r14
ret
sub rsp, 0xa8
vmovdqa xmmword [rsp + 0x90], xmm15
vmovdqa xmmword [rsp + 0x80], xmm14
vmovdqa xmmword [rsp + 0x70], xmm13
vmovaps xmmword [rsp + 0x60], xmm12
vmovaps xmmword [rsp + 0x50], xmm11
vmovaps xmmword [rsp + 0x40], xmm10
vmovaps xmmword [rsp + 0x30], xmm9
vmovaps xmmword [rsp + 0x20], xmm8
vmovaps xmmword [rsp + 0x10], xmm7
vmovaps xmmword [rsp], xmm6
vbroadcasti128 ymm0, xmmword [rcx + 0x20]
vpaddq xmm2, xmm0, xmmword [0x140421e00]
vpaddq ymm1, ymm0, ymmword [0x140421e80]
vbroadcasti128 ymm3, xmmword [rcx + 0x10]
vinserti128 ymm2, ymm0, xmm2, 1
vbroadcasti128 ymm4, xmmword [rcx]
test edx, edx
je 0x140007df1
vbroadcasti128 ymm13, xmmword [str.expand_32_byte_k]
vbroadcasti128 ymm5, xmmword [0x140421ec0]
vmovdqa ymm6, ymmword [0x140421ea0]
vmovdqa ymm14, ymm13
vmovdqa ymm8, ymm4
vmovdqa ymm7, ymm4
vmovdqa ymm10, ymm3
vmovdqa ymm9, ymm3
vmovdqa ymm12, ymm2
vmovdqa ymm11, ymm1
nop
vpaddd ymm13, ymm8, ymm13
vpaddd ymm14, ymm14, ymm7
vpxor ymm12, ymm12, ymm13
vpxor ymm11, ymm11, ymm14
vpshuflw ymm12, ymm12, 0xb1
vpshufhw ymm12, ymm12, 0xb1
vpshuflw ymm11, ymm11, 0xb1
vpshufhw ymm11, ymm11, 0xb1
vpaddd ymm10, ymm10, ymm12
vpaddd ymm9, ymm9, ymm11
vpxor ymm8, ymm10, ymm8
vpsrld ymm15, ymm8, 0x14
vpslld ymm8, ymm8, 0xc
vpor ymm8, ymm8, ymm15
vpxor ymm7, ymm9, ymm7
vpsrld ymm15, ymm7, 0x14
vpslld ymm7, ymm7, 0xc
vpor ymm7, ymm15, ymm7
vpaddd ymm13, ymm8, ymm13
vpaddd ymm14, ymm14, ymm7
vpshufb ymm15, ymm13, ymm5
vpshufb ymm12, ymm12, ymm5
vpxor ymm12, ymm12, ymm15
vpshufb ymm15, ymm14, ymm5
vpshufb ymm11, ymm11, ymm5
vpxor ymm11, ymm11, ymm15
vpaddd ymm10, ymm10, ymm12
vpaddd ymm9, ymm9, ymm11
vpxor ymm8, ymm10, ymm8
vpxor ymm7, ymm9, ymm7
vpsrld ymm15, ymm8, 0x19
vpslld ymm8, ymm8, 7
vpor ymm8, ymm8, ymm15
vpsrld ymm15, ymm7, 0x19
vpslld ymm7, ymm7, 7
vpor ymm7, ymm15, ymm7
vpshufd ymm8, ymm8, 0x39
vpshufd ymm7, ymm7, 0x39
vpshufd ymm10, ymm10, 0x4e
vpshufd ymm9, ymm9, 0x4e
vpaddd ymm13, ymm8, ymm13
vpaddd ymm14, ymm14, ymm7
vpshuflw ymm15, ymm13, 0xb1
vpshufhw ymm15, ymm15, 0xb1
vpshufb ymm12, ymm12, ymm6
vpxor ymm12, ymm12, ymm15
vpshuflw ymm15, ymm14, 0xb1
vpshufhw ymm15, ymm15, 0xb1
vpshufb ymm11, ymm11, ymm6
vpxor ymm11, ymm11, ymm15
vpaddd ymm10, ymm10, ymm12
vpaddd ymm9, ymm9, ymm11
vpxor ymm8, ymm10, ymm8
vpxor ymm7, ymm9, ymm7
vpsrld ymm15, ymm8, 0x14
vpslld ymm8, ymm8, 0xc
vpor ymm8, ymm8, ymm15
vpsrld ymm15, ymm7, 0x14
vpslld ymm7, ymm7, 0xc
vpor ymm7, ymm15, ymm7
vpaddd ymm13, ymm8, ymm13
vpaddd ymm14, ymm14, ymm7
vpxor ymm12, ymm12, ymm13
vpshufb ymm12, ymm12, ymm5
vpxor ymm11, ymm11, ymm14
vpshufb ymm11, ymm11, ymm5
vpaddd ymm10, ymm10, ymm12
vpaddd ymm9, ymm9, ymm11
vpxor ymm8, ymm10, ymm8
vpxor ymm7, ymm9, ymm7
vpsrld ymm15, ymm8, 0x19
vpslld ymm8, ymm8, 7
vpor ymm8, ymm8, ymm15
vpsrld ymm15, ymm7, 0x19
vpslld ymm7, ymm7, 7
vpor ymm7, ymm15, ymm7
vpshufd ymm8, ymm8, 0x93
vpshufd ymm7, ymm7, 0x93
vpshufd ymm10, ymm10, 0x4e
vpshufd ymm9, ymm9, 0x4e
vpshufd ymm12, ymm12, 0x39
vpshufd ymm11, ymm11, 0x39
dec edx
jne 0x140007c30
vbroadcasti128 ymm5, xmmword [str.expand_32_byte_k]
vpaddd ymm6, ymm13, ymm5
vpaddd ymm5, ymm14, ymm5
jmp 0x140007e16
vbroadcasti128 ymm5, xmmword [0x140421e30]
vmovdqa ymm11, ymm1
vmovdqa ymm12, ymm2
vmovdqa ymm9, ymm3
vmovdqa ymm10, ymm3
vmovdqa ymm7, ymm4
vmovdqa ymm8, ymm4
vmovdqa ymm6, ymm5
vpaddd ymm8, ymm8, ymm4
vpaddd ymm4, ymm7, ymm4
vpaddd ymm7, ymm10, ymm3
vpaddd ymm3, ymm9, ymm3
vpaddd ymm2, ymm12, ymm2
vpaddd ymm1, ymm11, ymm1
vinserti128 ymm9, ymm6, xmm8, 1
vperm2i128 ymm6, ymm6, ymm8, 0x31
vinserti128 ymm8, ymm5, xmm4, 1
vperm2i128 ymm4, ymm5, ymm4, 0x31
vinserti128 ymm5, ymm7, xmm2, 1
vperm2i128 ymm2, ymm7, ymm2, 0x31
vinserti128 ymm7, ymm3, xmm1, 1
vperm2i128 ymm1, ymm3, ymm1, 0x31
vmovdqu ymmword [r8], ymm9
vmovdqu ymmword [r8 + 0x20], ymm5
vmovdqu ymmword [r8 + 0x40], ymm6
vmovdqu ymmword [r8 + 0x60], ymm2
vmovdqu ymmword [r8 + 0x80], ymm8
vmovdqu ymmword [r8 + 0xa0], ymm7
vmovdqu ymmword [r8 + 0xc0], ymm4
vmovdqu ymmword [r8 + 0xe0], ymm1
vpaddq xmm0, xmm0, xmmword [0x140421e50]
vmovdqa xmmword [rcx + 0x20], xmm0
vzeroupper
vmovaps xmm6, xmmword [rsp]
vmovaps xmm7, xmmword [rsp + 0x10]
vmovaps xmm8, xmmword [rsp + 0x20]
vmovaps xmm9, xmmword [rsp + 0x30]
vmovaps xmm10, xmmword [rsp + 0x40]
vmovaps xmm11, xmmword [rsp + 0x50]
vmovaps xmm12, xmmword [rsp + 0x60]
vmovaps xmm13, xmmword [rsp + 0x70]
vmovaps xmm14, xmmword [rsp + 0x80]
vmovaps xmm15, xmmword [rsp + 0x90]
add rsp, 0xa8
ret
sub rsp, 0x178
vmovaps xmmword [rsp + 0x160], xmm15
vmovaps xmmword [rsp + 0x150], xmm14
vmovaps xmmword [rsp + 0x140], xmm13
vmovaps xmmword [rsp + 0x130], xmm12
vmovaps xmmword [rsp + 0x120], xmm11
vmovaps xmmword [rsp + 0x110], xmm10
vmovaps xmmword [rsp + 0x100], xmm9
vmovdqa xmmword [rsp + 0xf0], xmm8
vmovaps xmmword [rsp + 0xe0], xmm7
vmovaps xmmword [rsp + 0xd0], xmm6
vmovdqa xmm9, xmmword [rcx]
vmovdqa xmm2, xmmword [rcx + 0x20]
vpaddq xmm12, xmm2, xmmword [0x140421e00]
vpaddq xmm14, xmm2, xmmword [0x140421e10]
vmovdqa xmm5, xmmword [rcx + 0x10]
vpaddq xmm0, xmm2, xmmword [0x140421e20]
test edx, edx
vmovdqa xmmword [rsp + 0xb0], xmm0
je 0x140008405
vmovdqa xmm3, xmmword [str.expand_32_byte_k]
vmovdqa xmm13, xmm9
vmovdqa xmm1, xmm9
vmovdqa xmm15, xmm9
vmovdqa xmmword [rsp + 0x70], xmm9
vmovdqa xmm10, xmm9
vmovdqa xmm9, xmm3
vmovdqa xmm6, xmm5
vmovdqa xmmword [rsp], xmm5
vmovdqa xmm11, xmm5
vmovdqa xmmword [rsp + 0x60], xmm5
vmovdqa xmm8, xmm5
vmovdqa xmmword [rsp + 0xa0], xmm2
vmovdqa xmmword [rsp + 0x90], xmm12
vmovdqa xmmword [rsp + 0x80], xmm14
vmovdqa xmmword [rsp + 0x10], xmm0
vmovdqa xmm7, xmm3
vmovdqa xmm0, xmm3
nop dword [rax]
vmovdqa xmm4, xmm13
vpaddd xmm13, xmm9, xmm13
vpxor xmm2, xmm13, xmm2
vpshuflw xmm2, xmm2, 0xb1
vpshufhw xmm5, xmm2, 0xb1
vpaddd xmm2, xmm6, xmm5
vmovdqa xmmword [rsp + 0x50], xmm2
vpxor xmm4, xmm2, xmm4
vpsrld xmm6, xmm4, 0x14
vpslld xmm4, xmm4, 0xc
vpor xmm2, xmm4, xmm6
vmovdqa xmmword [rsp + 0xc0], xmm2
vmovdqa xmm2, xmm11
vpaddd xmm11, xmm7, xmm1
vpxor xmm6, xmm12, xmm11
vpshuflw xmm6, xmm6, 0xb1
vpshufhw xmm9, xmm6, 0xb1
vpaddd xmm6, xmm9, xmmword [rsp]
vpxor xmm7, xmm6, xmm1
vpsrld xmm12, xmm7, 0x14
vpslld xmm7, xmm7, 0xc
vpor xmm7, xmm12, xmm7
vpaddd xmm4, xmm15, xmm3
vpxor xmm3, xmm14, xmm4
vpshuflw xmm3, xmm3, 0xb1
vpshufhw xmm1, xmm3, 0xb1
vpaddd xmm2, xmm2, xmm1
vmovdqa xmmword [rsp], xmm2
vpxor xmm2, xmm15, xmm2
vpsrld xmm3, xmm2, 0x14
vpslld xmm2, xmm2, 0xc
vpor xmm14, xmm2, xmm3
vpaddd xmm3, xmm10, xmm0
vpxor xmm2, xmm3, xmmword [rsp + 0x10]
vpshuflw xmm2, xmm2, 0xb1
vpshufhw xmm0, xmm2, 0xb1
vpaddd xmm15, xmm8, xmm0
vpxor xmm2, xmm15, xmm10
vpsrld xmm12, xmm2, 0x14
vpslld xmm2, xmm2, 0xc
vpor xmm8, xmm12, xmm2
vmovdqa xmm2, xmmword [rsp + 0xc0]
vpaddd xmm12, xmm13, xmm2
vmovdqa xmmword [rsp + 0x30], xmm12
vmovdqa xmm10, xmmword [0x140421ec0]
vpshufb xmm5, xmm5, xmm10
vpshufb xmm12, xmm12, xmm10
vpxor xmm12, xmm12, xmm5
vpaddd xmm5, xmm11, xmm7
vpshufb xmm9, xmm9, xmm10
vpshufb xmm11, xmm5, xmm10
vpxor xmm11, xmm9, xmm11
vpaddd xmm9, xmm14, xmm4
vpshufb xmm1, xmm1, xmm10
vpshufb xmm4, xmm9, xmm10
vpxor xmm4, xmm1, xmm4
vpaddd xmm1, xmm8, xmm3
vmovdqa xmmword [rsp + 0x10], xmm1
vpshufb xmm0, xmm0, xmm10
vpshufb xmm1, xmm1, xmm10
vpxor xmm1, xmm0, xmm1
vmovdqa xmmword [rsp + 0x20], xmm1
vpaddd xmm0, xmm12, xmmword [rsp + 0x50]
vmovdqa xmmword [rsp + 0x40], xmm0
vpxor xmm3, xmm0, xmm2
vpsrld xmm13, xmm3, 0x19
vpslld xmm3, xmm3, 7
vpor xmm3, xmm13, xmm3
vpaddd xmm13, xmm11, xmm6
vpxor xmm6, xmm13, xmm7
vpsrld xmm7, xmm6, 0x19
vpslld xmm6, xmm6, 7
vpor xmm0, xmm6, xmm7
vpaddd xmm7, xmm4, xmmword [rsp]
vpxor xmm6, xmm14, xmm7
vpsrld xmm14, xmm6, 0x19
vpslld xmm6, xmm6, 7
vpor xmm14, xmm14, xmm6
vpaddd xmm6, xmm15, xmm1
vpxor xmm2, xmm8, xmm6
vmovdqa xmm8, xmm6
vpsrld xmm6, xmm2, 0x19
vpslld xmm2, xmm2, 7
vpor xmm2, xmm2, xmm6
vpshufd xmm6, xmm3, 0x39
vpaddd xmm1, xmm6, xmmword [rsp + 0x30]
vmovdqa xmmword [rsp + 0x30], xmm1
vpshuflw xmm3, xmm1, 0xb1
vpshufhw xmm3, xmm3, 0xb1
vmovdqa xmm1, xmmword [0x140421ed0]
vpshufb xmm12, xmm12, xmm1
vpxor xmm12, xmm12, xmm3
vpshufd xmm15, xmm0, 0x39
vpaddd xmm0, xmm15, xmm5
vmovdqa xmmword [rsp + 0x50], xmm0
vpshuflw xmm0, xmm0, 0xb1
vpshufhw xmm0, xmm0, 0xb1
vpshufb xmm5, xmm11, xmm1
vpxor xmm5, xmm5, xmm0
vpshufd xmm0, xmm14, 0x39
vpaddd xmm3, xmm9, xmm0
vmovdqa xmmword [rsp], xmm3
vpshuflw xmm9, xmm3, 0xb1
vpshufhw xmm9, xmm9, 0xb1
vpshufb xmm4, xmm4, xmm1
vpxor xmm4, xmm9, xmm4
vpshufd xmm9, xmm2, 0x39
vpaddd xmm2, xmm9, xmmword [rsp + 0x10]
vmovdqa xmmword [rsp + 0x10], xmm2
vpshuflw xmm2, xmm2, 0xb1
vpshufhw xmm2, xmm2, 0xb1
vmovdqa xmm3, xmmword [rsp + 0x20]
vpshufb xmm1, xmm3, xmm1
vpxor xmm2, xmm1, xmm2
vmovdqa xmmword [rsp + 0x20], xmm2
vpshufd xmm1, xmmword [rsp + 0x40], 0x4e
vpaddd xmm3, xmm12, xmm1
vpxor xmm1, xmm3, xmm6
vpsrld xmm6, xmm1, 0x14
vpslld xmm1, xmm1, 0xc
vpor xmm1, xmm1, xmm6
vpshufd xmm6, xmm13, 0x4e
vpaddd xmm14, xmm6, xmm5
vpxor xmm6, xmm14, xmm15
vpsrld xmm11, xmm6, 0x14
vpslld xmm6, xmm6, 0xc
vpor xmm6, xmm11, xmm6
vpshufd xmm7, xmm7, 0x4e
vpaddd xmm11, xmm7, xmm4
vpxor xmm0, xmm11, xmm0
vpsrld xmm7, xmm0, 0x14
vpslld xmm0, xmm0, 0xc
vpor xmm15, xmm0, xmm7
vpshufd xmm0, xmm8, 0x4e
vpaddd xmm8, xmm0, xmm2
vpxor xmm0, xmm8, xmm9
vpsrld xmm7, xmm0, 0x14
vpslld xmm0, xmm0, 0xc
vpor xmm13, xmm0, xmm7
vpaddd xmm0, xmm1, xmmword [rsp + 0x30]
vmovdqa xmmword [rsp + 0x40], xmm0
vpxor xmm0, xmm12, xmm0
vpshufb xmm9, xmm0, xmm10
vpaddd xmm12, xmm9, xmm3
vpxor xmm0, xmm12, xmm1
vpsrld xmm1, xmm0, 0x19
vpslld xmm0, xmm0, 7
vpor xmm1, xmm0, xmm1
vpaddd xmm7, xmm6, xmmword [rsp + 0x50]
vpxor xmm0, xmm5, xmm7
vpshufb xmm5, xmm0, xmm10
vpaddd xmm2, xmm14, xmm5
vpxor xmm0, xmm2, xmm6
vpsrld xmm3, xmm0, 0x19
vpslld xmm0, xmm0, 7
vpor xmm6, xmm0, xmm3
vpaddd xmm3, xmm15, xmmword [rsp]
vpxor xmm0, xmm4, xmm3
vpshufb xmm14, xmm0, xmm10
vpaddd xmm11, xmm11, xmm14
vpxor xmm0, xmm11, xmm15
vpsrld xmm4, xmm0, 0x19
vpslld xmm0, xmm0, 7
vpor xmm15, xmm0, xmm4
vpaddd xmm0, xmm13, xmmword [rsp + 0x10]
vpxor xmm4, xmm0, xmmword [rsp + 0x20]
vpshufb xmm4, xmm4, xmm10
vpaddd xmm8, xmm8, xmm4
vpxor xmm13, xmm8, xmm13
vpsrld xmm10, xmm13, 0x19
vpslld xmm13, xmm13, 7
vpor xmm10, xmm13, xmm10
vpshufd xmm13, xmm1, 0x93
vpshufd xmm1, xmm6, 0x93
vpshufd xmm15, xmm15, 0x93
vpshufd xmm10, xmm10, 0x93
vpshufd xmm6, xmm12, 0x4e
vpshufd xmm2, xmm2, 0x4e
vmovdqa xmmword [rsp], xmm2
vpshufd xmm11, xmm11, 0x4e
vpshufd xmm8, xmm8, 0x4e
vpshufd xmm2, xmm9, 0x39
vmovdqa xmm9, xmmword [rsp + 0x40]
vpshufd xmm12, xmm5, 0x39
vpshufd xmm14, xmm14, 0x39
vpshufd xmm4, xmm4, 0x39
vmovdqa xmmword [rsp + 0x10], xmm4
dec edx
jne 0x140008000
vmovdqa xmm5, xmmword [str.expand_32_byte_k]
vpaddd xmm4, xmm9, xmm5
vmovdqa xmmword [rsp + 0x20], xmm4
vpaddd xmm4, xmm7, xmm5
vmovdqa xmmword [rsp + 0x30], xmm4
vpaddd xmm3, xmm3, xmm5
vmovdqa xmmword [rsp + 0x40], xmm3
vpaddd xmm0, xmm0, xmm5
vmovdqa xmmword [rsp + 0x50], xmm0
vmovdqa xmm3, xmmword [rsp + 0xa0]
vmovdqa xmm7, xmmword [rsp + 0x90]
vmovdqa xmm4, xmmword [rsp + 0x80]
vmovdqa xmm9, xmmword [rsp + 0x70]
vmovdqa xmm5, xmmword [rsp + 0x60]
vmovdqa xmm0, xmm13
vmovdqa xmm13, xmm8
jmp 0x14000845a
vmovaps xmm1, xmmword [0x140421e30]
vmovaps xmmword [rsp + 0x40], xmm1
vmovaps xmmword [rsp + 0x30], xmm1
vmovaps xmmword [rsp + 0x50], xmm1
vmovaps xmmword [rsp + 0x20], xmm1
vmovdqa xmmword [rsp + 0x10], xmm0
vmovdqa xmm4, xmm14
vmovdqa xmm7, xmm12
vmovdqa xmm3, xmm2
vmovdqa xmm13, xmm5
vmovdqa xmm11, xmm5
vmovdqa xmmword [rsp], xmm5
vmovdqa xmm6, xmm5
vmovdqa xmm10, xmm9
vmovdqa xmm15, xmm9
vmovdqa xmm1, xmm9
vmovdqa xmm0, xmm9
vpaddd xmm0, xmm9, xmm0
vpaddd xmm1, xmm9, xmm1
vpaddd xmm8, xmm15, xmm9
vpaddd xmm9, xmm10, xmm9
vpaddd xmm6, xmm6, xmm5
vpaddd xmm10, xmm5, xmmword [rsp]
vpaddd xmm11, xmm11, xmm5
vpaddd xmm13, xmm13, xmm5
vpaddd xmm12, xmm12, xmm7
vpaddd xmm14, xmm14, xmm4
vmovdqa xmm4, xmmword [rsp + 0xb0]
vpaddd xmm15, xmm4, xmmword [rsp + 0x10]
vmovaps xmm4, xmmword [rsp + 0x20]
vmovups xmmword [r8], xmm4
vpaddd xmm2, xmm2, xmm3
vmovdqu xmmword [r8 + 0x10], xmm0
vmovdqu xmmword [r8 + 0x20], xmm6
vmovdqu xmmword [r8 + 0x30], xmm2
vmovaps xmm0, xmmword [rsp + 0x30]
vmovups xmmword [r8 + 0x40], xmm0
vmovdqu xmmword [r8 + 0x50], xmm1
vmovdqu xmmword [r8 + 0x60], xmm10
vmovdqu xmmword [r8 + 0x70], xmm12
vmovaps xmm0, xmmword [rsp + 0x40]
vmovups xmmword [r8 + 0x80], xmm0
vmovdqu xmmword [r8 + 0x90], xmm8
vmovdqu xmmword [r8 + 0xa0], xmm11
vmovdqu xmmword [r8 + 0xb0], xmm14
vmovaps xmm0, xmmword [rsp + 0x50]
vmovups xmmword [r8 + 0xc0], xmm0
vmovdqu xmmword [r8 + 0xd0], xmm9
vmovdqu xmmword [r8 + 0xe0], xmm13
vmovdqu xmmword [r8 + 0xf0], xmm15
vpaddq xmm0, xmm3, xmmword [0x140421e50]
vmovdqa xmmword [rcx + 0x20], xmm0
vzeroupper
vmovaps xmm6, xmmword [rsp + 0xd0]
vmovaps xmm7, xmmword [rsp + 0xe0]
vmovaps xmm8, xmmword [rsp + 0xf0]
vmovaps xmm9, xmmword [rsp + 0x100]
vmovaps xmm10, xmmword [rsp + 0x110]
vmovaps xmm11, xmmword [rsp + 0x120]
vmovaps xmm12, xmmword [rsp + 0x130]
vmovaps xmm13, xmmword [rsp + 0x140]
vmovaps xmm14, xmmword [rsp + 0x150]
vmovaps xmm15, xmmword [rsp + 0x160]
add rsp, 0x178
ret
sub rsp, 0x148
movaps xmmword [rsp + 0x130], xmm15
movaps xmmword [rsp + 0x120], xmm14
movaps xmmword [rsp + 0x110], xmm13
movaps xmmword [rsp + 0x100], xmm12
movaps xmmword [rsp + 0xf0], xmm11
movaps xmmword [rsp + 0xe0], xmm10
movaps xmmword [rsp + 0xd0], xmm9
movaps xmmword [rsp + 0xc0], xmm8
movaps xmmword [rsp + 0xb0], xmm7
movaps xmmword [rsp + 0xa0], xmm6
movdqa xmm13, xmmword [rcx]
movdqa xmm12, xmmword [rcx + 0x10]
movdqa xmm3, xmmword [rcx + 0x20]
pmovsxbq xmm0, word [0x140421ee0]
paddq xmm0, xmm3
pmovsxbq xmm11, word [0x140421ee2]
paddq xmm11, xmm3
pmovsxbq xmm10, word [0x140421ee4]
paddq xmm10, xmm3
test edx, edx
movdqa xmmword [rsp + 0x80], xmm3
movdqa xmmword [rsp + 0x70], xmm0
movdqa xmmword [rsp + 0x60], xmm11
movdqa xmmword [rsp + 0x30], xmm12
movdqa xmmword [rsp + 0x50], xmm10
je 0x140008b37
movdqa xmm6, xmmword [str.expand_32_byte_k]
movdqa xmm2, xmm13
movdqa xmm5, xmm13
movdqa xmm15, xmm13
movdqa xmmword [rsp + 0x40], xmm13
movdqa xmm1, xmm12
movdqa xmm14, xmm12
movdqa xmmword [rsp], xmm12
movdqa xmmword [rsp + 0x10], xmm12
movdqa xmm9, xmm6
movdqa xmm8, xmm6
movdqa xmm7, xmm6
nop dword [rax]
paddd xmm6, xmm2
paddd xmm9, xmm5
paddd xmm8, xmm15
paddd xmm7, xmm13
pxor xmm3, xmm6
pxor xmm0, xmm9
pxor xmm11, xmm8
pxor xmm10, xmm7
pshuflw xmm4, xmm3, 0xb1
pshufhw xmm3, xmm4, 0xb1
movdqa xmmword [rsp + 0x20], xmm3
pshuflw xmm0, xmm0, 0xb1
pshufhw xmm4, xmm0, 0xb1
pshuflw xmm11, xmm11, 0xb1
pshufhw xmm11, xmm11, 0xb1
pshuflw xmm10, xmm10, 0xb1
pshufhw xmm10, xmm10, 0xb1
paddd xmm1, xmm3
paddd xmm14, xmm4
movdqa xmm12, xmmword [rsp]
paddd xmm12, xmm11
movdqa xmm0, xmm14
movdqa xmmword [rsp + 0x90], xmm14
movdqa xmm14, xmm12
movdqa xmmword [rsp], xmm12
movdqa xmm3, xmmword [rsp + 0x10]
paddd xmm3, xmm10
movdqa xmmword [rsp + 0x10], xmm3
pxor xmm2, xmm1
movdqa xmm12, xmm2
psrld xmm12, 0x14
pslld xmm2, 0xc
por xmm2, xmm12
pxor xmm5, xmm0
movdqa xmm12, xmm5
psrld xmm12, 0x14
pslld xmm5, 0xc
por xmm5, xmm12
pxor xmm15, xmm14
movdqa xmm12, xmm15
psrld xmm12, 0x14
pslld xmm15, 0xc
por xmm15, xmm12
pxor xmm13, xmm3
movdqa xmm12, xmm13
psrld xmm12, 0x14
pslld xmm13, 0xc
por xmm13, xmm12
paddd xmm6, xmm2
paddd xmm9, xmm5
paddd xmm8, xmm15
paddd xmm7, xmm13
movdqa xmm12, xmm6
movdqa xmm14, xmmword [0x140421ec0]
pshufb xmm12, xmm14
movdqa xmm0, xmmword [rsp + 0x20]
pshufb xmm0, xmm14
pxor xmm0, xmm12
movdqa xmmword [rsp + 0x20], xmm0
movdqa xmm12, xmm9
pshufb xmm12, xmm14
pshufb xmm4, xmm14
pxor xmm4, xmm12
movdqa xmm12, xmm8
pshufb xmm12, xmm14
pshufb xmm11, xmm14
pxor xmm11, xmm12
movdqa xmm12, xmm7
pshufb xmm12, xmm14
pshufb xmm10, xmm14
pxor xmm10, xmm12
paddd xmm1, xmm0
movdqa xmm3, xmmword [rsp + 0x90]
paddd xmm3, xmm4
movdqa xmm12, xmmword [rsp]
paddd xmm12, xmm11
movdqa xmm0, xmmword [rsp + 0x10]
paddd xmm0, xmm10
pxor xmm2, xmm1
pxor xmm5, xmm3
pxor xmm15, xmm12
movdqa xmm14, xmm12
pxor xmm13, xmm0
movdqa xmm12, xmm2
psrld xmm12, 0x19
pslld xmm2, 7
por xmm2, xmm12
movdqa xmm12, xmm5
psrld xmm12, 0x19
pslld xmm5, 7
por xmm5, xmm12
movdqa xmm12, xmm15
psrld xmm12, 0x19
pslld xmm15, 7
por xmm15, xmm12
movdqa xmm12, xmm13
psrld xmm12, 0x19
pslld xmm13, 7
por xmm13, xmm12
pshufd xmm2, xmm2, 0x39
pshufd xmm5, xmm5, 0x39
pshufd xmm15, xmm15, 0x39
pshufd xmm13, xmm13, 0x39
pshufd xmm1, xmm1, 0x4e
movdqa xmmword [rsp + 0x10], xmm1
pshufd xmm1, xmm3, 0x4e
movdqa xmmword [rsp], xmm1
pshufd xmm14, xmm14, 0x4e
pshufd xmm12, xmm0, 0x4e
paddd xmm6, xmm2
paddd xmm9, xmm5
paddd xmm8, xmm15
paddd xmm7, xmm13
pshuflw xmm1, xmm6, 0xb1
pshufhw xmm1, xmm1, 0xb1
movdqa xmm3, xmmword [0x140421ed0]
movdqa xmm0, xmmword [rsp + 0x20]
pshufb xmm0, xmm3
pxor xmm0, xmm1
pshuflw xmm1, xmm9, 0xb1
pshufhw xmm1, xmm1, 0xb1
pshufb xmm4, xmm3
pxor xmm4, xmm1
pshuflw xmm1, xmm8, 0xb1
pshufhw xmm1, xmm1, 0xb1
pshufb xmm11, xmm3
pxor xmm11, xmm1
pshuflw xmm1, xmm7, 0xb1
pshufhw xmm1, xmm1, 0xb1
pshufb xmm10, xmm3
pxor xmm10, xmm1
movdqa xmm3, xmmword [rsp + 0x10]
paddd xmm3, xmm0
movdqa xmm1, xmmword [rsp]
paddd xmm1, xmm4
movdqa xmmword [rsp], xmm1
paddd xmm14, xmm11
paddd xmm12, xmm10
pxor xmm2, xmm3
pxor xmm5, xmm1
pxor xmm15, xmm14
pxor xmm13, xmm12
movdqa xmm1, xmm2
psrld xmm1, 0x14
pslld xmm2, 0xc
por xmm2, xmm1
movdqa xmm1, xmm5
psrld xmm1, 0x14
pslld xmm5, 0xc
por xmm5, xmm1
movdqa xmm1, xmm15
psrld xmm1, 0x14
pslld xmm15, 0xc
por xmm15, xmm1
movdqa xmm1, xmm13
psrld xmm1, 0x14
pslld xmm13, 0xc
por xmm13, xmm1
paddd xmm6, xmm2
paddd xmm9, xmm5
paddd xmm8, xmm15
paddd xmm7, xmm13
pxor xmm0, xmm6
movdqa xmm1, xmmword [0x140421ec0]
pshufb xmm0, xmm1
pxor xmm4, xmm9
pshufb xmm4, xmm1
pxor xmm11, xmm8
pshufb xmm11, xmm1
pxor xmm10, xmm7
pshufb xmm10, xmm1
paddd xmm3, xmm0
movdqa xmm1, xmmword [rsp]
paddd xmm1, xmm4
movdqa xmmword [rsp], xmm1
paddd xmm14, xmm11
paddd xmm12, xmm10
pxor xmm2, xmm3
pxor xmm5, xmm1
pxor xmm15, xmm14
pxor xmm13, xmm12
movdqa xmm1, xmm2
psrld xmm1, 0x19
pslld xmm2, 7
por xmm2, xmm1
movdqa xmm1, xmm5
psrld xmm1, 0x19
pslld xmm5, 7
por xmm5, xmm1
movdqa xmm1, xmm15
psrld xmm1, 0x19
pslld xmm15, 7
por xmm15, xmm1
movdqa xmm1, xmm13
psrld xmm1, 0x19
pslld xmm13, 7
por xmm13, xmm1
pshufd xmm2, xmm2, 0x93
pshufd xmm5, xmm5, 0x93
pshufd xmm15, xmm15, 0x93
pshufd xmm13, xmm13, 0x93
pshufd xmm1, xmm3, 0x4e
pshufd xmm3, xmmword [rsp], 0x4e
pshufd xmm14, xmm14, 0x4e
movdqa xmmword [rsp], xmm14
movdqa xmm14, xmm3
pshufd xmm3, xmm12, 0x4e
movdqa xmmword [rsp + 0x10], xmm3
pshufd xmm3, xmm0, 0x39
pshufd xmm0, xmm4, 0x39
pshufd xmm11, xmm11, 0x39
pshufd xmm10, xmm10, 0x39
dec edx
jne 0x1400086b0
movdqa xmm12, xmmword [str.expand_32_byte_k]
paddd xmm6, xmm12
paddd xmm9, xmm12
paddd xmm8, xmm12
paddd xmm7, xmm12
movdqa xmm4, xmmword [rsp + 0x30]
movdqa xmm12, xmmword [rsp + 0x40]
jmp 0x140008b7d
movdqa xmm7, xmmword [0x140421e30]
movdqa xmm8, xmm7
movdqa xmm9, xmm7
movdqa xmm6, xmm7
movdqa xmmword [rsp + 0x10], xmm12
movdqa xmmword [rsp], xmm12
movdqa xmm14, xmm12
movdqa xmm4, xmm12
movdqa xmm1, xmm12
movdqa xmm12, xmm13
movdqa xmm15, xmm13
movdqa xmm5, xmm13
movdqa xmm2, xmm13
paddd xmm2, xmm12
paddd xmm5, xmm12
paddd xmm15, xmm12
paddd xmm13, xmm12
paddd xmm1, xmm4
paddd xmm14, xmm4
movdqa xmm12, xmmword [rsp]
paddd xmm12, xmm4
movdqa xmm4, xmmword [rsp + 0x10]
paddd xmm4, xmmword [rsp + 0x30]
paddd xmm0, xmmword [rsp + 0x70]
paddd xmm11, xmmword [rsp + 0x60]
paddd xmm10, xmmword [rsp + 0x50]
movdqu xmmword [r8], xmm6
movdqu xmmword [r8 + 0x10], xmm2
movdqu xmmword [r8 + 0x20], xmm1
movdqa xmm1, xmmword [rsp + 0x80]
paddd xmm3, xmm1
movdqu xmmword [r8 + 0x30], xmm3
movdqu xmmword [r8 + 0x40], xmm9
movdqu xmmword [r8 + 0x50], xmm5
movdqu xmmword [r8 + 0x60], xmm14
movdqu xmmword [r8 + 0x70], xmm0
movdqu xmmword [r8 + 0x80], xmm8
movdqu xmmword [r8 + 0x90], xmm15
movdqu xmmword [r8 + 0xa0], xmm12
movdqu xmmword [r8 + 0xb0], xmm11
movdqu xmmword [r8 + 0xc0], xmm7
movdqu xmmword [r8 + 0xd0], xmm13
movdqu xmmword [r8 + 0xe0], xmm4
movdqu xmmword [r8 + 0xf0], xmm10
paddq xmm1, xmmword [0x140421e50]
movdqa xmmword [rcx + 0x20], xmm1
movaps xmm6, xmmword [rsp + 0xa0]
movaps xmm7, xmmword [rsp + 0xb0]
movaps xmm8, xmmword [rsp + 0xc0]
movaps xmm9, xmmword [rsp + 0xd0]
movaps xmm10, xmmword [rsp + 0xe0]
movaps xmm11, xmmword [rsp + 0xf0]
movaps xmm12, xmmword [rsp + 0x100]
movaps xmm13, xmmword [rsp + 0x110]
movaps xmm14, xmmword [rsp + 0x120]
movaps xmm15, xmmword [rsp + 0x130]
add rsp, 0x148
ret
sub rsp, 0x148
movaps xmmword [rsp + 0x130], xmm15
movaps xmmword [rsp + 0x120], xmm14
movaps xmmword [rsp + 0x110], xmm13
movaps xmmword [rsp + 0x100], xmm12
movaps xmmword [rsp + 0xf0], xmm11
movaps xmmword [rsp + 0xe0], xmm10
movaps xmmword [rsp + 0xd0], xmm9
movaps xmmword [rsp + 0xc0], xmm8
movaps xmmword [rsp + 0xb0], xmm7
movaps xmmword [rsp + 0xa0], xmm6
movdqa xmm13, xmmword [rcx]
movdqa xmm12, xmmword [rcx + 0x10]
movdqa xmm3, xmmword [rcx + 0x20]
movd xmm0, dword [0x140421e60]
paddq xmm0, xmm3
movd xmm11, dword [0x140421e64]
paddq xmm11, xmm3
movd xmm10, dword [0x140421e68]
paddq xmm10, xmm3
test edx, edx
movdqa xmmword [rsp + 0x80], xmm3
movdqa xmmword [rsp + 0x70], xmm0
movdqa xmmword [rsp + 0x60], xmm11
movdqa xmmword [rsp + 0x30], xmm12
movdqa xmmword [rsp + 0x50], xmm10
je 0x140009257
movdqa xmm6, xmmword [str.expand_32_byte_k]
movdqa xmm2, xmm13
movdqa xmm5, xmm13
movdqa xmm15, xmm13
movdqa xmmword [rsp + 0x40], xmm13
movdqa xmm1, xmm12
movdqa xmm14, xmm12
movdqa xmmword [rsp], xmm12
movdqa xmmword [rsp + 0x10], xmm12
movdqa xmm9, xmm6
movdqa xmm8, xmm6
movdqa xmm7, xmm6
nop word cs:[rax + rax]
paddd xmm6, xmm2
paddd xmm9, xmm5
paddd xmm8, xmm15
paddd xmm7, xmm13
pxor xmm3, xmm6
pxor xmm0, xmm9
pxor xmm11, xmm8
pxor xmm10, xmm7
pshuflw xmm4, xmm3, 0xb1
pshufhw xmm3, xmm4, 0xb1
movdqa xmmword [rsp + 0x20], xmm3
pshuflw xmm0, xmm0, 0xb1
pshufhw xmm4, xmm0, 0xb1
pshuflw xmm11, xmm11, 0xb1
pshufhw xmm11, xmm11, 0xb1
pshuflw xmm10, xmm10, 0xb1
pshufhw xmm10, xmm10, 0xb1
paddd xmm1, xmm3
paddd xmm14, xmm4
movdqa xmm12, xmmword [rsp]
paddd xmm12, xmm11
movdqa xmm0, xmm14
movdqa xmmword [rsp + 0x90], xmm14
movdqa xmm14, xmm12
movdqa xmmword [rsp], xmm12
movdqa xmm3, xmmword [rsp + 0x10]
paddd xmm3, xmm10
movdqa xmmword [rsp + 0x10], xmm3
pxor xmm2, xmm1
movdqa xmm12, xmm2
psrld xmm12, 0x14
pslld xmm2, 0xc
por xmm2, xmm12
pxor xmm5, xmm0
movdqa xmm12, xmm5
psrld xmm12, 0x14
pslld xmm5, 0xc
por xmm5, xmm12
pxor xmm15, xmm14
movdqa xmm12, xmm15
psrld xmm12, 0x14
pslld xmm15, 0xc
por xmm15, xmm12
pxor xmm13, xmm3
movdqa xmm12, xmm13
psrld xmm12, 0x14
pslld xmm13, 0xc
por xmm13, xmm12
paddd xmm6, xmm2
paddd xmm9, xmm5
paddd xmm8, xmm15
paddd xmm7, xmm13
movdqa xmm12, xmm6
movdqa xmm14, xmmword [0x140421ec0]
pshufb xmm12, xmm14
movdqa xmm0, xmmword [rsp + 0x20]
pshufb xmm0, xmm14
pxor xmm0, xmm12
movdqa xmmword [rsp + 0x20], xmm0
movdqa xmm12, xmm9
pshufb xmm12, xmm14
pshufb xmm4, xmm14
pxor xmm4, xmm12
movdqa xmm12, xmm8
pshufb xmm12, xmm14
pshufb xmm11, xmm14
pxor xmm11, xmm12
movdqa xmm12, xmm7
pshufb xmm12, xmm14
pshufb xmm10, xmm14
pxor xmm10, xmm12
paddd xmm1, xmm0
movdqa xmm3, xmmword [rsp + 0x90]
paddd xmm3, xmm4
movdqa xmm12, xmmword [rsp]
paddd xmm12, xmm11
movdqa xmm0, xmmword [rsp + 0x10]
paddd xmm0, xmm10
pxor xmm2, xmm1
pxor xmm5, xmm3
pxor xmm15, xmm12
movdqa xmm14, xmm12
pxor xmm13, xmm0
movdqa xmm12, xmm2
psrld xmm12, 0x19
pslld xmm2, 7
por xmm2, xmm12
movdqa xmm12, xmm5
psrld xmm12, 0x19
pslld xmm5, 7
por xmm5, xmm12
movdqa xmm12, xmm15
psrld xmm12, 0x19
pslld xmm15, 7
por xmm15, xmm12
movdqa xmm12, xmm13
psrld xmm12, 0x19
pslld xmm13, 7
por xmm13, xmm12
pshufd xmm2, xmm2, 0x39
pshufd xmm5, xmm5, 0x39
pshufd xmm15, xmm15, 0x39
pshufd xmm13, xmm13, 0x39
pshufd xmm1, xmm1, 0x4e
movdqa xmmword [rsp + 0x10], xmm1
pshufd xmm1, xmm3, 0x4e
movdqa xmmword [rsp], xmm1
pshufd xmm14, xmm14, 0x4e
pshufd xmm12, xmm0, 0x4e
paddd xmm6, xmm2
paddd xmm9, xmm5
paddd xmm8, xmm15
paddd xmm7, xmm13
pshuflw xmm1, xmm6, 0xb1
pshufhw xmm1, xmm1, 0xb1
movdqa xmm3, xmmword [0x140421ed0]
movdqa xmm0, xmmword [rsp + 0x20]
pshufb xmm0, xmm3
pxor xmm0, xmm1
pshuflw xmm1, xmm9, 0xb1
pshufhw xmm1, xmm1, 0xb1
pshufb xmm4, xmm3
pxor xmm4, xmm1
pshuflw xmm1, xmm8, 0xb1
pshufhw xmm1, xmm1, 0xb1
pshufb xmm11, xmm3
pxor xmm11, xmm1
pshuflw xmm1, xmm7, 0xb1
pshufhw xmm1, xmm1, 0xb1
pshufb xmm10, xmm3
pxor xmm10, xmm1
movdqa xmm3, xmmword [rsp + 0x10]
paddd xmm3, xmm0
movdqa xmm1, xmmword [rsp]
paddd xmm1, xmm4
movdqa xmmword [rsp], xmm1
paddd xmm14, xmm11
paddd xmm12, xmm10
pxor xmm2, xmm3
pxor xmm5, xmm1
pxor xmm15, xmm14
pxor xmm13, xmm12
movdqa xmm1, xmm2
psrld xmm1, 0x14
pslld xmm2, 0xc
por xmm2, xmm1
movdqa xmm1, xmm5
psrld xmm1, 0x14
pslld xmm5, 0xc
por xmm5, xmm1
movdqa xmm1, xmm15
psrld xmm1, 0x14
pslld xmm15, 0xc
por xmm15, xmm1
movdqa xmm1, xmm13
psrld xmm1, 0x14
pslld xmm13, 0xc
por xmm13, xmm1
paddd xmm6, xmm2
paddd xmm9, xmm5
paddd xmm8, xmm15
paddd xmm7, xmm13
pxor xmm0, xmm6
movdqa xmm1, xmmword [0x140421ec0]
pshufb xmm0, xmm1
pxor xmm4, xmm9
pshufb xmm4, xmm1
pxor xmm11, xmm8
pshufb xmm11, xmm1
pxor xmm10, xmm7
pshufb xmm10, xmm1
paddd xmm3, xmm0
movdqa xmm1, xmmword [rsp]
paddd xmm1, xmm4
movdqa xmmword [rsp], xmm1
paddd xmm14, xmm11
paddd xmm12, xmm10
pxor xmm2, xmm3
pxor xmm5, xmm1
pxor xmm15, xmm14
pxor xmm13, xmm12
movdqa xmm1, xmm2
psrld xmm1, 0x19
pslld xmm2, 7
por xmm2, xmm1
movdqa xmm1, xmm5
psrld xmm1, 0x19
pslld xmm5, 7
por xmm5, xmm1
movdqa xmm1, xmm15
psrld xmm1, 0x19
pslld xmm15, 7
por xmm15, xmm1
movdqa xmm1, xmm13
psrld xmm1, 0x19
pslld xmm13, 7
por xmm13, xmm1
pshufd xmm2, xmm2, 0x93
pshufd xmm5, xmm5, 0x93
pshufd xmm15, xmm15, 0x93
pshufd xmm13, xmm13, 0x93
pshufd xmm1, xmm3, 0x4e
pshufd xmm3, xmmword [rsp], 0x4e
pshufd xmm14, xmm14, 0x4e
movdqa xmmword [rsp], xmm14
movdqa xmm14, xmm3
pshufd xmm3, xmm12, 0x4e
movdqa xmmword [rsp + 0x10], xmm3
pshufd xmm3, xmm0, 0x39
pshufd xmm0, xmm4, 0x39
pshufd xmm11, xmm11, 0x39
pshufd xmm10, xmm10, 0x39
dec edx
jne 0x140008dd0
movdqa xmm12, xmmword [str.expand_32_byte_k]
paddd xmm6, xmm12
paddd xmm9, xmm12
paddd xmm8, xmm12
paddd xmm7, xmm12
movdqa xmm4, xmmword [rsp + 0x30]
movdqa xmm12, xmmword [rsp + 0x40]
jmp 0x14000929d
movdqa xmm7, xmmword [0x140421e30]
movdqa xmm8, xmm7
movdqa xmm9, xmm7
movdqa xmm6, xmm7
movdqa xmmword [rsp + 0x10], xmm12
movdqa xmmword [rsp], xmm12
movdqa xmm14, xmm12
movdqa xmm4, xmm12
movdqa xmm1, xmm12
movdqa xmm12, xmm13
movdqa xmm15, xmm13
movdqa xmm5, xmm13
movdqa xmm2, xmm13
paddd xmm2, xmm12
paddd xmm5, xmm12
paddd xmm15, xmm12
paddd xmm13, xmm12
paddd xmm1, xmm4
paddd xmm14, xmm4
movdqa xmm12, xmmword [rsp]
paddd xmm12, xmm4
movdqa xmm4, xmmword [rsp + 0x10]
paddd xmm4, xmmword [rsp + 0x30]
paddd xmm0, xmmword [rsp + 0x70]
paddd xmm11, xmmword [rsp + 0x60]
paddd xmm10, xmmword [rsp + 0x50]
movdqu xmmword [r8], xmm6
movdqu xmmword [r8 + 0x10], xmm2
movdqu xmmword [r8 + 0x20], xmm1
movdqa xmm1, xmmword [rsp + 0x80]
paddd xmm3, xmm1
movdqu xmmword [r8 + 0x30], xmm3
movdqu xmmword [r8 + 0x40], xmm9
movdqu xmmword [r8 + 0x50], xmm5
movdqu xmmword [r8 + 0x60], xmm14
movdqu xmmword [r8 + 0x70], xmm0
movdqu xmmword [r8 + 0x80], xmm8
movdqu xmmword [r8 + 0x90], xmm15
movdqu xmmword [r8 + 0xa0], xmm12
movdqu xmmword [r8 + 0xb0], xmm11
movdqu xmmword [r8 + 0xc0], xmm7
movdqu xmmword [r8 + 0xd0], xmm13
movdqu xmmword [r8 + 0xe0], xmm4
movdqu xmmword [r8 + 0xf0], xmm10
paddq xmm1, xmmword [0x140421e50]
movdqa xmmword [rcx + 0x20], xmm1
movaps xmm6, xmmword [rsp + 0xa0]
movaps xmm7, xmmword [rsp + 0xb0]
movaps xmm8, xmmword [rsp + 0xc0]
movaps xmm9, xmmword [rsp + 0xd0]
movaps xmm10, xmmword [rsp + 0xe0]
movaps xmm11, xmmword [rsp + 0xf0]
movaps xmm12, xmmword [rsp + 0x100]
movaps xmm13, xmmword [rsp + 0x110]
movaps xmm14, xmmword [rsp + 0x120]
movaps xmm15, xmmword [rsp + 0x130]
add rsp, 0x148
ret