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

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x5d0
movdqa xmmword [rsp + 0x5c0], xmm15
movdqa xmmword [rsp + 0x5b0], xmm14
movdqa xmmword [rsp + 0x5a0], xmm13
movdqa xmmword [rsp + 0x590], xmm12
movdqa xmmword [rsp + 0x580], xmm11
movdqa xmmword [rsp + 0x570], xmm10
movdqa xmmword [rsp + 0x560], xmm9
movdqa xmmword [rsp + 0x550], xmm8
movdqa xmmword [rsp + 0x540], xmm7
movaps xmmword [rsp + 0x530], xmm6
mov eax, dword [0x141596aa0]
and eax, dword [0x141596aa4]
add eax, 0x5fa078cc
mov r8d, eax
xor r8d, 0x902b02d4
xor eax, 0x48008829
or eax, 0xb27f17d4
or r8d, 0x4d80e82b
and r8d, eax
mov dword [rsp + 0x3c], r8d
mov dword [rsp + 0x14], 0x6510dbc0
lea rax, [rsp + 0x14]
mov qword [rsp + 8], rax
movdqa xmm6, xmmword [0x14024a150]
mov eax, 0x84d8f0d2
mov r8d, 0x23c66939
mov r9d, 0x76ea4137
mov r10d, 0x28d0c0e8
mov r11d, 0xd8d171e7
mov esi, 0xd57384d0
mov edi, 0xd5e6e7dd
jmp 0x140113c48
mov ebx, dword [str._f_rlO]
add ebx, dword [0x141596acc]
mov ebp, ebx
and ebp, 0x1931314a
add ebp, ebp
sub ebx, ebp
add ebx, 0xee6ec0f6
and ebx, 0x4c3ce138
cmp ebx, 0x4364af05
movd xmm0, dword [rsp + 0x7c]
pshufd xmm0, xmm0, 0xe1
pshufd xmm1, xmmword [rsp + 0x1e0], 0xe1
por xmm1, xmm0
movdqa xmm0, xmm1
pand xmm0, xmm6
movd xmm2, dword [rsp + 0x78]
movdqa xmm3, xmm0
pcmpeqd xmm5, xmm5
pxor xmm3, xmm5
movdqa xmm4, xmm2
pxor xmm4, xmm5
por xmm4, xmm3
movdqa xmm3, xmmword [0x14024a230]
pandn xmm0, xmm3
pand xmm1, xmmword [0x14024a240]
por xmm1, xmm0
movdqa xmm0, xmm3
pandn xmm0, xmm2
pandn xmm2, xmm3
por xmm2, xmm0
pxor xmm2, xmm1
pxor xmm4, xmm5
por xmm4, xmm2
movdqa xmmword [rsp + 0x1b0], xmm4
movaps xmm0, xmmword [rcx]
movaps xmmword [rsp + 0x60], xmm0
movdqa xmm0, xmmword [rcx + 0x10]
movdqa xmmword [rsp + 0x50], xmm0
mov ebx, 0xc63ac672
cmovb ebx, eax
nop dword [rax]
mov r14, qword [rsp + 8]
mov dword [r14], ebx
mov ebx, dword [rsp + 0x14]
cmp ebx, 0xfce2ea1c
jg 0x140113cc0
cmp ebx, 0xd57384cf
jle 0x140113d00
cmp ebx, 0xd8d171e6
jle 0x1401145b4
cmp ebx, 0xe15e4500
je 0x14011478e
cmp ebx, 0xe42c6d61
jne 0x140114bf0
mov ebx, dword [0x141596ab0]
or ebx, dword [0x141596ab4]
mov ebp, ebx
xor ebp, 0x4756cf47
and ebx, 0x38a930b8
add ebx, ebx
sub ebx, ebp
xor ebx, 0xecefd487
imul ebx, ebx, 0x2d72a01a
cmp ebx, 0xab8539cf
mov ebx, 0x76ea4137
cmovb ebx, esi
jmp 0x140113c40
cmp ebx, 0x3452cb60
jg 0x140114580
cmp ebx, 0x28d0c0e7
jg 0x140114628
cmp ebx, 0xfce2ea1d
je 0x140114953
cmp ebx, 0x23c66939
je 0x140114bd0
jmp 0x140113c48
cmp ebx, 0xa0dc488d
jg 0x14011466b
cmp ebx, 0x84d8f0d2
je 0x140113b7c
cmp ebx, 0x85a7719e
jne 0x140113c48
movdqa xmm3, xmmword [rsp + 0x2d0]
movdqa xmm13, xmmword [rsp + 0x210]
paddd xmm13, xmm3
movdqa xmm9, xmmword [rsp + 0x2e0]
movdqa xmm12, xmmword [rsp + 0x220]
movdqa xmm0, xmm9
pand xmm0, xmm12
por xmm12, xmm9
paddd xmm12, xmm0
movdqa xmm1, xmmword [rsp + 0x2c0]
movdqa xmm14, xmmword [rsp + 0x230]
paddd xmm14, xmm1
movdqa xmm5, xmmword [rsp + 0x2b0]
movdqa xmm0, xmmword [rsp + 0x240]
paddd xmm0, xmm5
movdqa xmm8, xmm0
movdqa xmmword [rsp + 0x20], xmm0
movdqa xmm0, xmmword [rsp + 0x260]
movdqa xmm2, xmm0
pxor xmm2, xmm13
pandn xmm2, xmm13
paddq xmm2, xmm2
movdqa xmm6, xmm13
psubq xmm6, xmm2
paddq xmm6, xmm0
movdqa xmm0, xmmword [rsp + 0x250]
pxor xmm0, xmm12
movdqa xmm7, xmmword [rsp + 0x200]
pxor xmm7, xmm14
movdqa xmm4, xmmword [rsp + 0x1f0]
movdqa xmm2, xmm8
pandn xmm2, xmm4
pandn xmm4, xmm8
por xmm4, xmm2
pshuflw xmm2, xmm6, 0xb1
pshufhw xmm10, xmm2, 0xb1
pshuflw xmm0, xmm0, 0xb1
pshufhw xmm2, xmm0, 0xb1
pshuflw xmm0, xmm7, 0xb1
pshufhw xmm7, xmm0, 0xb1
movdqa xmm11, xmmword [rsp + 0x2a0]
paddd xmm11, xmm10
movdqa xmmword [rsp + 0x40], xmm11
movdqa xmm8, xmmword [rsp + 0x290]
movdqa xmm6, xmm8
pand xmm6, xmm2
por xmm8, xmm2
paddd xmm8, xmm6
movdqa xmm0, xmmword [rsp + 0x280]
paddd xmm0, xmm7
movdqa xmmword [rsp + 0x90], xmm0
movdqa xmm6, xmm11
pandn xmm6, xmm3
pandn xmm3, xmm11
por xmm3, xmm6
movdqa xmm6, xmm8
pxor xmm6, xmm9
pandn xmm6, xmm9
paddd xmm6, xmm6
psubd xmm9, xmm6
movdqa xmm11, xmm0
pxor xmm11, xmmword [0x140249800]
movdqa xmm6, xmm0
pandn xmm6, xmm1
por xmm11, xmm1
pshuflw xmm1, xmm4, 0xb1
pshufhw xmm15, xmm1, 0xb1
pandn xmm6, xmm11
movdqa xmm11, xmmword [rsp + 0x270]
paddd xmm11, xmm15
movdqa xmm1, xmm11
pand xmm1, xmm5
por xmm5, xmm11
pxor xmm5, xmmword [0x140249800]
por xmm5, xmm1
movdqa xmm1, xmm3
psrld xmm1, 0x14
pslld xmm3, 0xc
por xmm3, xmm1
paddd xmm9, xmm8
movdqa xmm1, xmm9
psrld xmm1, 0x14
pslld xmm9, 0xc
por xmm9, xmm1
pxor xmm6, xmmword [0x140249800]
movdqa xmm1, xmm6
psrld xmm1, 0x14
pslld xmm6, 0xc
por xmm6, xmm1
pxor xmm5, xmmword [0x140249800]
movdqa xmm1, xmm5
psrld xmm1, 0x14
pslld xmm5, 0xc
por xmm5, xmm1
paddd xmm13, xmm3
movdqa xmm1, xmm13
pandn xmm1, xmm10
pandn xmm10, xmm13
por xmm10, xmm1
paddd xmm12, xmm9
movdqa xmm1, xmm12
pxor xmm1, xmmword [0x140249800]
movdqa xmm4, xmm12
pandn xmm4, xmm2
por xmm1, xmm2
pandn xmm4, xmm1
paddd xmm14, xmm6
movdqa xmm1, xmm14
movdqa xmm0, xmmword [0x14024a200]
pandn xmm1, xmm0
movdqa xmm2, xmm0
pandn xmm2, xmm14
por xmm2, xmm1
movdqa xmm1, xmm0
pandn xmm1, xmm7
pandn xmm7, xmm0
por xmm7, xmm1
pxor xmm7, xmm2
movdqa xmm1, xmmword [rsp + 0x20]
paddd xmm1, xmm5
movdqa xmmword [rsp + 0x20], xmm1
movdqa xmm0, xmmword [0x140249a60]
pshufb xmm1, xmm0
pshufb xmm15, xmm0
pxor xmm15, xmm1
pshufb xmm4, xmm0
movdqa xmm1, xmm4
pxor xmm1, xmmword [0x140249800]
pandn xmm4, xmm8
por xmm8, xmm1
paddd xmm8, xmm4
pshufb xmm10, xmm0
movdqa xmm4, xmmword [rsp + 0x40]
paddd xmm4, xmm10
movdqa xmmword [rsp + 0x40], xmm4
movdqa xmm2, xmm4
pxor xmm2, xmmword [0x140249800]
por xmm4, xmm3
pxor xmm3, xmmword [0x140249800]
por xmm3, xmm2
pand xmm3, xmm4
movdqa xmm2, xmm8
pandn xmm2, xmm9
pandn xmm9, xmm8
por xmm9, xmm2
pshufb xmm7, xmmword [0x140249a60]
movdqa xmm0, xmmword [rsp + 0x90]
paddd xmm0, xmm7
movdqa xmmword [rsp + 0x90], xmm0
movdqa xmm4, xmm6
pxor xmm4, xmmword [0x140249800]
por xmm4, xmm0
pandn xmm6, xmm0
pxor xmm4, xmmword [0x140249800]
por xmm4, xmm6
paddd xmm11, xmm15
movdqa xmm2, xmm11
pxor xmm2, xmmword [0x140249800]
por xmm2, xmm5
pxor xmm5, xmmword [0x140249800]
por xmm5, xmm11
pand xmm5, xmm2
movdqa xmm2, xmm3
psrld xmm2, 0x19
pslld xmm3, 7
por xmm3, xmm2
movdqa xmm2, xmm9
psrld xmm2, 0x19
pslld xmm9, 7
por xmm9, xmm2
movdqa xmm2, xmm4
psrld xmm2, 0x19
pslld xmm4, 7
por xmm4, xmm2
pxor xmm5, xmmword [0x140249800]
movdqa xmm2, xmm5
psrld xmm2, 0x19
pslld xmm5, 7
por xmm5, xmm2
pshufd xmm2, xmm9, 0x39
movdqa xmm6, xmm2
pand xmm6, xmm12
paddd xmm6, xmm6
pxor xmm12, xmm2
paddd xmm12, xmm6
pshufd xmm9, xmm4, 0x39
movdqa xmm4, xmm9
pand xmm4, xmm14
paddd xmm4, xmm4
pxor xmm14, xmm9
paddd xmm14, xmm4
pshufd xmm4, xmm1, 0x93
movdqa xmm1, xmm12
pxor xmm1, xmm4
pandn xmm1, xmm4
paddd xmm1, xmm1
psubd xmm4, xmm1
pshufd xmm1, xmm7, 0x93
movdqa xmm0, xmm14
pand xmm0, xmm1
paddd xmm0, xmm0
paddd xmm1, xmm14
psubd xmm1, xmm0
pshufd xmm3, xmm3, 0x39
paddd xmm13, xmm3
pshuflw xmm0, xmm13, 0xb1
pshufhw xmm0, xmm0, 0xb1
movdqa xmm6, xmmword [0x14024a1d0]
pshufb xmm10, xmm6
pxor xmm10, xmm0
pshufd xmm0, xmm5, 0x39
movdqa xmm5, xmmword [rsp + 0x20]
paddd xmm5, xmm0
movdqa xmmword [rsp + 0x20], xmm5
pshuflw xmm5, xmm5, 0xb1
pshufhw xmm5, xmm5, 0xb1
pshufb xmm15, xmm6
pxor xmm15, xmm5
pshufd xmm6, xmm8, 0x4e
paddd xmm4, xmm12
pshuflw xmm4, xmm4, 0xb1
pshufhw xmm4, xmm4, 0xb1
movdqa xmm5, xmm6
pand xmm5, xmm4
paddd xmm5, xmm5
pxor xmm6, xmm4
paddd xmm6, xmm5
movdqa xmm5, xmm6
pand xmm5, xmm2
por xmm2, xmm6
pandn xmm5, xmm2
pshufd xmm8, xmm11, 0x4e
paddd xmm8, xmm15
movdqa xmm2, xmm8
movdqa xmm7, xmmword [0x14024a210]
pandn xmm2, xmm7
movdqa xmm11, xmm7
pandn xmm11, xmm8
por xmm11, xmm2
movdqa xmm2, xmm7
pandn xmm2, xmm0
pandn xmm0, xmm7
por xmm0, xmm2
pxor xmm0, xmm11
pshufd xmm7, xmmword [rsp + 0x40], 0x4e
paddd xmm7, xmm10
pxor xmm3, xmm7
movdqa xmm2, xmm3
psrld xmm2, 0x14
pslld xmm3, 0xc
por xmm3, xmm2
movdqa xmm2, xmm5
psrld xmm2, 0x14
pslld xmm5, 0xc
por xmm5, xmm2
pshufd xmm11, xmmword [rsp + 0x90], 0x4e
pshuflw xmm1, xmm1, 0xb1
pshufhw xmm1, xmm1, 0xb1
paddd xmm11, xmm1
pxor xmm9, xmm11
movdqa xmm2, xmm9
psrld xmm2, 0x14
pslld xmm9, 0xc
por xmm9, xmm2
movdqa xmm2, xmm0
psrld xmm2, 0x14
pslld xmm0, 0xc
por xmm0, xmm2
movdqa xmm2, xmm3
pand xmm2, xmm13
paddd xmm2, xmm2
pxor xmm13, xmm3
paddd xmm13, xmm2
movdqa xmmword [rsp + 0x520], xmm13
paddd xmm12, xmm5
movdqa xmmword [rsp + 0x510], xmm12
pxor xmm13, xmm10
pcmpeqd xmm10, xmm10
movdqa xmm2, xmm12
pandn xmm2, xmm4
pxor xmm12, xmm10
por xmm12, xmm4
paddd xmm14, xmm9
movdqa xmmword [rsp + 0x500], xmm14
pxor xmm12, xmm10
por xmm12, xmm2
movdqa xmm2, xmm14
pand xmm2, xmm1
paddd xmm14, xmm1
movdqa xmm4, xmmword [rsp + 0x20]
paddd xmm4, xmm0
movdqa xmmword [rsp + 0x4f0], xmm4
paddd xmm2, xmm2
psubd xmm14, xmm2
movdqa xmm1, xmm4
pxor xmm1, xmm15
pandn xmm1, xmm15
paddd xmm1, xmm1
psubd xmm15, xmm1
paddd xmm15, xmm4
movdqa xmm10, xmmword [0x140249a60]
pshufb xmm12, xmm10
pshufb xmm15, xmm10
movdqa xmm1, xmm6
pand xmm1, xmm12
paddd xmm1, xmm1
pxor xmm6, xmm12
paddd xmm6, xmm1
paddd xmm8, xmm15
movdqa xmm4, xmmword [0x14024a220]
movdqa xmm1, xmm4
pandn xmm1, xmm8
movdqa xmm2, xmm8
pandn xmm2, xmm4
por xmm1, xmm2
movdqa xmm2, xmm4
pandn xmm2, xmm0
pandn xmm0, xmm4
por xmm0, xmm2
pshufb xmm13, xmm10
pshufb xmm14, xmm10
paddd xmm7, xmm13
paddd xmm11, xmm14
pxor xmm3, xmm7
pxor xmm5, xmm6
pxor xmm9, xmm11
pxor xmm0, xmm1
movdqa xmm1, xmm3
psrld xmm1, 0x19
pslld xmm3, 7
por xmm3, xmm1
movdqa xmm1, xmm5
psrld xmm1, 0x19
pslld xmm5, 7
por xmm5, xmm1
movdqa xmm1, xmm9
psrld xmm1, 0x19
pslld xmm9, 7
por xmm9, xmm1
movdqa xmm1, xmm0
psrld xmm1, 0x19
pslld xmm0, 7
por xmm0, xmm1
pshufd xmm1, xmm3, 0x93
movdqa xmmword [rsp + 0x4e0], xmm1
pshufd xmm1, xmm5, 0x93
movdqa xmmword [rsp + 0x4d0], xmm1
pshufd xmm1, xmm9, 0x93
movdqa xmmword [rsp + 0x4c0], xmm1
pshufd xmm0, xmm0, 0x93
movdqa xmmword [rsp + 0x4b0], xmm0
pshufd xmm0, xmm7, 0x4e
movdqa xmmword [rsp + 0x4a0], xmm0
pshufd xmm0, xmm6, 0x4e
movdqa xmm6, xmmword [0x14024a150]
movdqa xmmword [rsp + 0x490], xmm0
pshufd xmm0, xmm11, 0x4e
movdqa xmmword [rsp + 0x480], xmm0
pshufd xmm0, xmm8, 0x4e
movdqa xmmword [rsp + 0x470], xmm0
pshufd xmm0, xmm13, 0x39
movdqa xmmword [rsp + 0x460], xmm0
movdqa xmmword [rsp + 0x420], xmm0
pshufd xmm0, xmm12, 0x39
movdqa xmmword [rsp + 0x450], xmm0
movdqa xmmword [rsp + 0x410], xmm0
pshufd xmm0, xmm14, 0x39
movdqa xmmword [rsp + 0x440], xmm0
movdqa xmmword [rsp + 0x400], xmm0
mov ebx, dword [0x141596ad0]
mov ebp, dword [0x141596ad4]
mov r14d, ebx
not r14d
and r14d, ebp
mov r15d, ebp
not r15d
and r15d, ebx
imul r15d, r14d
mov r14d, ebx
and r14d, ebp
or ebx, ebp
imul ebx, r14d
add ebx, r15d
add ebx, 0x217d7ce1
mov ebp, ebx
and ebp, 0x68e9f260
add ebp, ebp
sub ebx, ebp
add ebx, 0x3651e133
mov ebp, dword [rsp + 0x38]
inc ebp
mov dword [rsp + 0x1c], ebp
cmp dword [rsp + 0x1c], 6
pshufd xmm0, xmm15, 0x39
sete byte [rsp + 0x13]
movdqa xmmword [rsp + 0x430], xmm0
movdqa xmmword [rsp + 0x3f0], xmm0
cmp ebx, 0x1a172d1b
mov ebx, 0xe15e4500
cmovb ebx, r8d
jmp 0x140113c40
cmp ebx, 0x6510dbbf
jg 0x140114761
cmp ebx, 0x3452cb61
je 0x140114963
cmp ebx, 0x5b67409b
jne 0x140113c48
mov rbx, qword [rsp + 8]
mov dword [rbx], 0x84d8f0d2
jmp 0x140113c48
cmp ebx, 0xd57384d0
je 0x140114973
cmp ebx, 0xd5e6e7dd
jne 0x140113c48
mov ebx, dword [0x141596aa8]
mov ebp, dword [0x141596aac]
mov r14d, ebx
not r14d
and r14d, ebp
not ebp
and ebp, ebx
sub ebp, r14d
imul ebx, ebp, 0x713828df
xor ebx, 0x4c203a29
or ebx, 0xb1ddc146
lea r14, [rcx + 0x20]
cmp ebx, 0x5a128bac
mov qword [rsp + 0xa8], r14
movdqa xmm0, xmmword [rcx + 0x20]
movdqa xmmword [rsp + 0x80], xmm0
mov ebx, 0x3452cb61
cmove ebx, r10d
jmp 0x140113c40
cmp ebx, 0x28d0c0e8
je 0x140114ab6
cmp ebx, 0x2fa650fa
jne 0x140113c48
mov ebx, dword [0x141596ac0]
sub ebx, dword [0x141596ac4]
add ebx, 0x476eddf2
or ebx, 0x2588f4cc
cmp ebx, 0xa4c4c08e
mov ebx, 0x5b67409b
cmovne ebx, eax
jmp 0x140113c40
cmp ebx, 0xa0dc488e
je 0x140114ac6
cmp ebx, 0xc63ac672
jne 0x140113c48
mov rbx, qword [rsp + 8]
mov dword [rbx], 0xa0dc488e
movdqa xmm0, xmmword [rsp + 0x80]
movdqa xmm1, xmmword [rsp + 0x1d0]
movaps xmm2, xmmword [rsp + 0x1c0]
movdqa xmm3, xmmword [rsp + 0x1b0]
movdqa xmm4, xmmword [rsp + 0x60]
movdqa xmm5, xmmword [rsp + 0x50]
mov dword [rsp + 0x18], 0
movdqa xmmword [rsp + 0x1a0], xmm3
movaps xmmword [rsp + 0x190], xmm2
movdqa xmm2, xmmword [0x14024a130]
movdqa xmmword [rsp + 0x180], xmm2
movdqa xmmword [rsp + 0x170], xmm2
movdqa xmmword [rsp + 0x160], xmm2
movdqa xmmword [rsp + 0x150], xmm2
movdqa xmmword [rsp + 0x140], xmm1
movdqa xmmword [rsp + 0x130], xmm0
movdqa xmmword [rsp + 0x120], xmm5
movdqa xmmword [rsp + 0x110], xmm5
movdqa xmmword [rsp + 0x100], xmm5
movdqa xmmword [rsp + 0xf0], xmm5
movdqa xmmword [rsp + 0xe0], xmm4
movdqa xmmword [rsp + 0xd0], xmm4
movdqa xmmword [rsp + 0xc0], xmm4
movdqa xmmword [rsp + 0xb0], xmm4
jmp 0x140113c48
cmp ebx, 0x76ea4137
je 0x140114be0
cmp ebx, 0x6510dbc0
jne 0x140113c48
cmp dword [rsp + 0x3c], 0x18017b44
mov ebx, 0x28d0c0e8
cmovne ebx, edi
jmp 0x140113c40
cmp byte [rsp + 0x13], 0
mov ebx, 0xa0dc488e
cmovne ebx, r11d
mov r14, qword [rsp + 8]
mov dword [r14], ebx
movaps xmm0, xmmword [rsp + 0x3f0]
movaps xmmword [rsp + 0x1a0], xmm0
movaps xmm0, xmmword [rsp + 0x400]
movaps xmmword [rsp + 0x190], xmm0
movaps xmm0, xmmword [rsp + 0x410]
movaps xmmword [rsp + 0x140], xmm0
movaps xmm0, xmmword [rsp + 0x420]
movaps xmmword [rsp + 0x130], xmm0
movaps xmm0, xmmword [rsp + 0x520]
movaps xmmword [rsp + 0x180], xmm0
movaps xmmword [rsp + 0x3e0], xmm0
movaps xmm0, xmmword [rsp + 0x510]
movaps xmmword [rsp + 0x170], xmm0
movaps xmmword [rsp + 0x3d0], xmm0
movaps xmm0, xmmword [rsp + 0x500]
movaps xmmword [rsp + 0x160], xmm0
movaps xmmword [rsp + 0x3c0], xmm0
movaps xmm0, xmmword [rsp + 0x4f0]
movaps xmmword [rsp + 0x150], xmm0
movaps xmmword [rsp + 0x3b0], xmm0
movaps xmm0, xmmword [rsp + 0x4e0]
movaps xmmword [rsp + 0xc0], xmm0
movaps xmmword [rsp + 0x3a0], xmm0
movaps xmm0, xmmword [rsp + 0x4d0]
movaps xmmword [rsp + 0xb0], xmm0
movaps xmmword [rsp + 0x390], xmm0
movaps xmm0, xmmword [rsp + 0x4c0]
movaps xmmword [rsp + 0xd0], xmm0
movaps xmmword [rsp + 0x380], xmm0
movaps xmm0, xmmword [rsp + 0x4b0]
movaps xmmword [rsp + 0xe0], xmm0
movaps xmmword [rsp + 0x370], xmm0
movaps xmm0, xmmword [rsp + 0x4a0]
movaps xmmword [rsp + 0xf0], xmm0
movaps xmmword [rsp + 0x360], xmm0
movaps xmm0, xmmword [rsp + 0x490]
movaps xmmword [rsp + 0x100], xmm0
movaps xmmword [rsp + 0x350], xmm0
movaps xmm0, xmmword [rsp + 0x480]
movaps xmmword [rsp + 0x110], xmm0
movaps xmmword [rsp + 0x340], xmm0
movaps xmm0, xmmword [rsp + 0x470]
movaps xmmword [rsp + 0x120], xmm0
movaps xmmword [rsp + 0x330], xmm0
movaps xmm0, xmmword [rsp + 0x460]
movaps xmmword [rsp + 0x320], xmm0
movaps xmm0, xmmword [rsp + 0x450]
movaps xmmword [rsp + 0x310], xmm0
movaps xmm0, xmmword [rsp + 0x440]
movaps xmmword [rsp + 0x300], xmm0
movdqa xmm0, xmmword [rsp + 0x430]
movdqa xmmword [rsp + 0x2f0], xmm0
mov ebx, dword [rsp + 0x1c]
mov dword [rsp + 0x18], ebx
jmp 0x140113c48
mov rbx, qword [rsp + 8]
mov dword [rbx], 0x2fa650fa
jmp 0x140113c48
mov rbx, qword [rsp + 8]
mov dword [rbx], 0xe42c6d61
jmp 0x140113c48
mov ebx, dword [0x141596ab8]
mov ebp, dword [0x141596abc]
not ebx
not ebp
or ebp, ebx
not ebp
imul ebp, ebp, 0x498a3011
mov ebx, ebp
not ebx
or ebx, 0x472d0dad
add ebx, ebp
mov r14, qword [rsp + 0x80]
lea r15, [r14 + 1]
movd xmm1, r15d
mov r12, r15
shr r12, 0x20
lea r15, [r14 + 2]
movdqa xmm2, xmmword [rsp + 0x80]
movdqa xmm0, xmm2
pslldq xmm0, 8
shufps xmm0, xmm2, 0xe8
movd xmm2, r12d
movaps xmm3, xmm0
andnps xmm3, xmm2
movaps xmm4, xmm2
xorps xmm4, xmm0
paddd xmm4, xmm2
movd xmm2, r15d
shr r15, 0x20
lea r12, [r14 + 3]
cmp ebx, 0xe81970bb
mov qword [rsp + 0xa0], r14
movaps xmmword [rsp + 0x1e0], xmm0
psubd xmm4, xmm3
pshufd xmm3, xmm4, 0xe1
movdqa xmm4, xmm3
pxor xmm4, xmmword [0x14024a160]
por xmm3, xmm6
pand xmm3, xmm4
movaps xmm4, xmm0
pcmpeqd xmm7, xmm7
xorps xmm4, xmm7
por xmm1, xmm3
movdqa xmmword [rsp + 0x1d0], xmm1
movd xmm1, r15d
movdqa xmm3, xmm1
pxor xmm3, xmm7
por xmm3, xmm4
movdqa xmm5, xmmword [0x14024a250]
movdqa xmm4, xmm5
pandn xmm4, xmm1
pandn xmm1, xmm5
por xmm1, xmm4
movdqa xmm4, xmm5
pandn xmm4, xmm0
pandn xmm0, xmm5
por xmm0, xmm4
pxor xmm0, xmm1
pxor xmm3, xmm7
por xmm3, xmm0
movdqa xmm0, xmm3
pslldq xmm0, 8
shufps xmm0, xmm3, 0xe8
movaps xmm1, xmm0
xorps xmm1, xmm2
andnps xmm2, xmm0
paddq xmm1, xmm0
psubq xmm1, xmm2
movdqa xmmword [rsp + 0x1c0], xmm1
mov qword [rsp + 0x78], r12
mov ebx, 0xfce2ea1d
cmove ebx, r9d
jmp 0x140113c40
mov rbx, qword [rsp + 8]
mov dword [rbx], 0xd5e6e7dd
jmp 0x140113c48
movaps xmm0, xmmword [rsp + 0xb0]
movaps xmmword [rsp + 0x2e0], xmm0
movaps xmm0, xmmword [rsp + 0xc0]
movaps xmmword [rsp + 0x2d0], xmm0
movaps xmm0, xmmword [rsp + 0xd0]
movaps xmmword [rsp + 0x2c0], xmm0
movaps xmm0, xmmword [rsp + 0xe0]
movaps xmmword [rsp + 0x2b0], xmm0
movaps xmm0, xmmword [rsp + 0xf0]
movaps xmmword [rsp + 0x2a0], xmm0
movaps xmm0, xmmword [rsp + 0x100]
movaps xmmword [rsp + 0x290], xmm0
movaps xmm0, xmmword [rsp + 0x110]
movaps xmmword [rsp + 0x280], xmm0
movaps xmm0, xmmword [rsp + 0x120]
movaps xmmword [rsp + 0x270], xmm0
movaps xmm0, xmmword [rsp + 0x130]
movaps xmmword [rsp + 0x260], xmm0
movaps xmm0, xmmword [rsp + 0x140]
movaps xmmword [rsp + 0x250], xmm0
movaps xmm0, xmmword [rsp + 0x150]
movaps xmmword [rsp + 0x240], xmm0
movaps xmm0, xmmword [rsp + 0x160]
movaps xmmword [rsp + 0x230], xmm0
movaps xmm0, xmmword [rsp + 0x170]
movaps xmmword [rsp + 0x220], xmm0
movaps xmm0, xmmword [rsp + 0x180]
movaps xmmword [rsp + 0x210], xmm0
movaps xmm0, xmmword [rsp + 0x190]
movaps xmmword [rsp + 0x200], xmm0
movdqa xmm0, xmmword [rsp + 0x1a0]
movdqa xmmword [rsp + 0x1f0], xmm0
mov ebx, dword [rsp + 0x18]
mov dword [rsp + 0x38], ebx
mov rbx, qword [rsp + 8]
mov dword [rbx], 0x85a7719e
jmp 0x140113c48
mov rbx, qword [rsp + 8]
mov dword [rbx], 0xd57384d0
jmp 0x140113c48
cmp ebx, 0xd8d171e7
jne 0x140113c48
movaps xmm0, xmmword [rsp + 0x2f0]
movaps xmmword [rsp + 0x20], xmm0
movdqa xmm2, xmmword [rsp + 0x300]
movdqa xmm5, xmmword [rsp + 0x310]
movdqa xmm9, xmmword [rsp + 0x320]
movaps xmm0, xmmword [rsp + 0x330]
movaps xmmword [rsp + 0x40], xmm0
movdqa xmm4, xmmword [rsp + 0x340]
movdqa xmm7, xmmword [rsp + 0x350]
movdqa xmm10, xmmword [rsp + 0x360]
movdqa xmm3, xmmword [rsp + 0x370]
movdqa xmm6, xmmword [rsp + 0x380]
movdqa xmm8, xmmword [rsp + 0x3c0]
movdqa xmm11, xmm8
movdqa xmm1, xmmword [0x14024a130]
pand xmm11, xmm1
paddd xmm11, xmm11
pxor xmm8, xmm1
paddd xmm8, xmm11
mov rax, qword [rsp + 0xa0]
mov ecx, eax
and ecx, 4
xor rax, 4
lea rax, [rax + rcx*2]
movd xmm11, eax
shr rax, 0x20
movd xmm12, eax
pshufd xmm12, xmm12, 0xe1
pshufd xmm13, xmmword [rsp + 0x1e0], 0xe1
por xmm12, xmm13
pcmpeqd xmm14, xmm14
pxor xmm13, xmm14
por xmm13, xmmword [0x14024a150]
paddq xmm13, xmm12
movdqa xmm12, xmmword [rsp + 0x390]
psubq xmm13, xmm14
movdqa xmm14, xmm11
pand xmm14, xmm13
paddq xmm13, xmm11
movdqa xmm15, xmmword [rsp + 0x3a0]
psubq xmm13, xmm14
movdqa xmm11, xmmword [rsp + 0x3b0]
paddd xmm11, xmm1
paddd xmm1, xmmword [rsp + 0x3e0]
mov rax, qword [rsp + 0xa8]
movdqa xmm14, xmmword [rsp + 0x3d0]
movdqa xmm0, xmmword [rsp + 0x80]
movdqa xmmword [rax], xmm13
movdqu xmmword [rdx], xmm1
paddd xmm15, xmmword [rsp + 0x60]
movdqu xmmword [rdx + 0x10], xmm15
paddd xmm10, xmmword [rsp + 0x50]
movdqu xmmword [rdx + 0x20], xmm10
movdqa xmm10, xmm9
pand xmm10, xmm0
por xmm9, xmm0
paddd xmm9, xmm10
movdqu xmmword [rdx + 0x30], xmm9
psubd xmm14, xmmword [0x14024a140]
paddd xmm12, xmmword [rsp + 0x60]
movdqu xmmword [rdx + 0x40], xmm14
movdqu xmmword [rdx + 0x50], xmm12
paddd xmm7, xmmword [rsp + 0x50]
movdqu xmmword [rdx + 0x60], xmm7
paddd xmm5, xmmword [rsp + 0x1d0]
movdqu xmmword [rdx + 0x70], xmm5
movdqu xmmword [rdx + 0x80], xmm8
paddd xmm6, xmmword [rsp + 0x60]
movdqu xmmword [rdx + 0x90], xmm6
movdqa xmm0, xmmword [rsp + 0x1c0]
paddd xmm4, xmmword [rsp + 0x50]
movdqu xmmword [rdx + 0xa0], xmm4
movdqa xmm4, xmm2
pand xmm4, xmm0
pxor xmm2, xmm0
paddd xmm4, xmm4
paddd xmm2, xmm4
movdqu xmmword [rdx + 0xb0], xmm2
paddd xmm3, xmmword [rsp + 0x60]
movdqu xmmword [rdx + 0xc0], xmm11
movdqu xmmword [rdx + 0xd0], xmm3
movdqa xmm0, xmmword [rsp + 0x40]
paddd xmm0, xmmword [rsp + 0x50]
movdqu xmmword [rdx + 0xe0], xmm0
movdqa xmm0, xmmword [rsp + 0x20]
paddd xmm0, xmmword [rsp + 0x1b0]
movdqu xmmword [rdx + 0xf0], xmm0
movaps xmm6, xmmword [rsp + 0x530]
movaps xmm7, xmmword [rsp + 0x540]
movaps xmm8, xmmword [rsp + 0x550]
movaps xmm9, xmmword [rsp + 0x560]
movaps xmm10, xmmword [rsp + 0x570]
movaps xmm11, xmmword [rsp + 0x580]
movaps xmm12, xmmword [rsp + 0x590]
movaps xmm13, xmmword [rsp + 0x5a0]
movaps xmm14, xmmword [rsp + 0x5b0]
movaps xmm15, xmmword [rsp + 0x5c0]
add rsp, 0x5d0
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret