Function at 0x180013f00
Capabilities:
Encode data using xor

Disassembly:
test r9, r9
je 0x180014e58
push rbx
sub rsp, 0x2f0
mov rax, qword [0x1800575c0]
xor rax, rsp
mov qword [rsp + 0x230], rax
mov qword [rsp + 0x2e8], rsi
mov rbx, r9
movaps xmmword [rsp + 0x2c0], xmm7
mov r10, rdx
movdqa xmm7, xmmword [0x18003f700]
mov r11, rcx
movaps xmmword [rsp + 0x2b0], xmm8
mov r9d, 0xa
movdqa xmm8, xmmword [0x18003f710]
movaps xmmword [rsp + 0x2d0], xmm6
movaps xmmword [rsp + 0x2a0], xmm9
movaps xmmword [rsp + 0x290], xmm10
movaps xmmword [rsp + 0x280], xmm11
movaps xmmword [rsp + 0x270], xmm12
cmp rbx, 0x100
jb 0x180014983
movd xmm0, dword [rcx]
mov rdx, rbx
movd xmm1, dword [rcx + 4]
movd xmm2, dword [rcx + 8]
movd xmm3, dword [rcx + 0xc]
movd xmm4, dword [rcx + 0x10]
movd xmm5, dword [rcx + 0x14]
movd xmm6, dword [rcx + 0x18]
movd xmm9, dword [rcx + 0x1c]
movd xmm10, dword [rcx + 0x20]
movd xmm11, dword [rcx + 0x24]
movd xmm12, dword [rcx + 0x28]
movaps xmmword [rsp + 0x260], xmm13
movd xmm13, dword [rcx + 0x2c]
movaps xmmword [rsp + 0x250], xmm14
movd xmm14, dword [rcx + 0x38]
shr rdx, 8
movaps xmmword [rsp + 0x240], xmm15
movd xmm15, dword [rcx + 0x3c]
imul rax, rdx, 0xffffffffffffff00
pshufd xmm0, xmm0, 0
pshufd xmm1, xmm1, 0
pshufd xmm2, xmm2, 0
pshufd xmm3, xmm3, 0
pshufd xmm4, xmm4, 0
pshufd xmm5, xmm5, 0
add rbx, rax
pshufd xmm6, xmm6, 0
pshufd xmm9, xmm9, 0
pshufd xmm10, xmm10, 0
pshufd xmm11, xmm11, 0
pshufd xmm12, xmm12, 0
pshufd xmm13, xmm13, 0
pshufd xmm14, xmm14, 0
pshufd xmm15, xmm15, 0
movdqa xmmword [rsp + 0xf0], xmm0
movdqa xmmword [rsp + 0x100], xmm1
movdqa xmmword [rsp + 0x110], xmm2
movdqa xmmword [rsp + 0x120], xmm3
movdqa xmmword [rsp + 0x130], xmm4
movdqa xmmword [rsp + 0x140], xmm5
movdqa xmmword [rsp + 0x150], xmm6
movdqa xmmword [rsp + 0x160], xmm9
movdqa xmmword [rsp + 0x170], xmm10
movdqa xmmword [rsp + 0x190], xmm11
movdqa xmmword [rsp + 0x180], xmm12
movdqa xmmword [rsp + 0x1a0], xmm13
movdqa xmmword [rsp + 0x1d0], xmm14
movdqa xmmword [rsp + 0x1e0], xmm15
nop
mov eax, dword [r11 + 0x30]
mov ecx, dword [r11 + 0x34]
shl rcx, 0x20
or rcx, rax
movdqa xmmword [rsp + 0xc0], xmm2
movdqa xmmword [rsp + 0xb0], xmm6
mov rax, r9
movdqa xmmword [rsp + 0x40], xmm0
movdqa xmmword [rsp + 0x50], xmm1
movdqa xmm1, xmmword [0x18003f460]
movq xmm0, rcx
punpcklqdq xmm0, xmm0
add rcx, 4
paddq xmm1, xmm0
movdqa xmmword [rsp + 0xd0], xmm9
movdqa xmm9, xmm10
mov dword [r11 + 0x30], ecx
movdqa xmm2, xmm0
shr rcx, 0x20
paddq xmm2, xmmword [0x18003f450]
movdqa xmm6, xmm2
movdqa xmmword [rsp + 0x60], xmm5
punpckldq xmm6, xmm1
movdqa xmm5, xmm15
movdqa xmm10, xmm6
punpckhdq xmm2, xmm1
punpckldq xmm10, xmm2
punpckhdq xmm6, xmm2
movdqa xmmword [rsp + 0x70], xmm12
movdqa xmm12, xmm14
movdqa xmmword [rsp + 0x1b0], xmm10
movdqa xmmword [rsp + 0xe0], xmm3
movdqa xmmword [rsp + 0x80], xmm13
movdqa xmmword [rsp + 0x1c0], xmm6
mov dword [r11 + 0x34], ecx
jmp 0x1800141c7
movdqa xmm5, xmmword [rsp + 0x20]
movdqa xmm9, xmmword [rsp + 0x30]
movdqa xmm11, xmmword [rsp + 0xa0]
movdqa xmm2, xmm4
paddd xmm2, xmmword [rsp + 0x40]
xorps xmm10, xmm2
pshufb xmm10, xmm7
movdqa xmm3, xmm10
paddd xmm3, xmm9
movdqa xmm0, xmm3
xorps xmm0, xmm4
movdqa xmm1, xmm0
pslld xmm0, 0xc
psrld xmm1, 0x14
orps xmm1, xmm0
movdqa xmm9, xmm1
paddd xmm9, xmm2
movdqa xmm2, xmmword [rsp + 0x60]
paddd xmm2, xmmword [rsp + 0x50]
xorps xmm10, xmm9
xorps xmm6, xmm2
pshufb xmm6, xmm7
pshufb xmm10, xmm8
movdqa xmm13, xmm10
movdqa xmmword [rsp + 0x30], xmm10
paddd xmm13, xmm3
movdqa xmm3, xmm6
paddd xmm3, xmm11
movdqa xmm0, xmm13
xorps xmm0, xmm1
movdqa xmm15, xmm0
pslld xmm0, 7
psrld xmm15, 0x19
orps xmm15, xmm0
movdqa xmm0, xmm3
xorps xmm0, xmmword [rsp + 0x60]
movdqa xmm1, xmm0
pslld xmm0, 0xc
psrld xmm1, 0x14
orps xmm1, xmm0
movdqa xmm10, xmm1
paddd xmm10, xmm2
movdqa xmm2, xmmword [rsp + 0xb0]
paddd xmm2, xmmword [rsp + 0xc0]
xorps xmm6, xmm10
pshufb xmm6, xmm8
xorps xmm12, xmm2
pshufb xmm12, xmm7
movdqa xmm14, xmm6
movdqa xmmword [rsp + 0x90], xmm6
paddd xmm14, xmm3
movdqa xmm3, xmm12
paddd xmm3, xmmword [rsp + 0x70]
movdqa xmm0, xmm14
xorps xmm0, xmm1
movdqa xmm6, xmm0
pslld xmm0, 7
psrld xmm6, 0x19
orps xmm6, xmm0
movdqa xmm0, xmm3
xorps xmm0, xmmword [rsp + 0xb0]
movdqa xmm1, xmm0
pslld xmm0, 0xc
psrld xmm1, 0x14
orps xmm1, xmm0
movdqa xmm11, xmm1
paddd xmm11, xmm2
movdqa xmm2, xmmword [rsp + 0xd0]
paddd xmm2, xmmword [rsp + 0xe0]
xorps xmm12, xmm11
pshufb xmm12, xmm8
xorps xmm5, xmm2
pshufb xmm5, xmmword [0x18003f700]
movdqa xmm4, xmm12
movdqa xmmword [rsp + 0xa0], xmm12
paddd xmm4, xmm3
movdqa xmm3, xmm5
paddd xmm3, xmmword [rsp + 0x80]
movdqa xmm0, xmm4
xorps xmm0, xmm1
movdqa xmm7, xmm0
pslld xmm0, 7
psrld xmm7, 0x19
orps xmm7, xmm0
movdqa xmm0, xmm3
xorps xmm0, xmmword [rsp + 0xd0]
movdqa xmm1, xmm0
pslld xmm0, 0xc
psrld xmm1, 0x14
orps xmm1, xmm0
movdqa xmm12, xmm1
paddd xmm12, xmm2
movdqa xmm2, xmm6
paddd xmm2, xmm9
xorps xmm5, xmm12
pshufb xmm5, xmm8
movdqa xmmword [rsp + 0x20], xmm5
paddd xmm5, xmm3
movdqa xmm0, xmm5
xorps xmm0, xmm1
movdqa xmm1, xmmword [rsp + 0x20]
movdqa xmm8, xmm0
xorps xmm1, xmm2
pshufb xmm1, xmmword [0x18003f700]
pslld xmm0, 7
movdqa xmmword [rsp + 0x20], xmm1
movdqa xmm3, xmm1
paddd xmm3, xmm4
psrld xmm8, 0x19
orps xmm8, xmm0
movdqa xmm0, xmm3
xorps xmm0, xmm6
movdqa xmm6, xmmword [rsp + 0x90]
movdqa xmm1, xmm0
pslld xmm0, 0xc
psrld xmm1, 0x14
orps xmm1, xmm0
movdqa xmm0, xmmword [rsp + 0x20]
movdqa xmm4, xmm1
paddd xmm4, xmm2
movdqa xmm2, xmm7
xorps xmm0, xmm4
movdqa xmmword [rsp + 0x40], xmm4
pshufb xmm0, xmmword [0x18003f710]
paddd xmm2, xmm10
movdqa xmm10, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x20], xmm0
xorps xmm10, xmm2
pshufb xmm10, xmmword [0x18003f700]
paddd xmm0, xmm3
movdqa xmmword [rsp + 0x70], xmm0
movdqa xmm3, xmm10
xorps xmm0, xmm1
paddd xmm3, xmm5
movdqa xmm1, xmm0
pslld xmm0, 7
psrld xmm1, 0x19
orps xmm1, xmm0
movdqa xmm0, xmm3
xorps xmm0, xmm7
movdqa xmmword [rsp + 0x60], xmm1
movdqa xmm7, xmmword [0x18003f700]
movdqa xmm1, xmm0
pslld xmm0, 0xc
psrld xmm1, 0x14
orps xmm1, xmm0
movdqa xmm0, xmm1
paddd xmm0, xmm2
movdqa xmm2, xmm8
xorps xmm10, xmm0
movdqa xmmword [rsp + 0x50], xmm0
pshufb xmm10, xmmword [0x18003f710]
paddd xmm2, xmm11
movdqa xmm0, xmm10
xorps xmm6, xmm2
paddd xmm0, xmm3
movdqa xmmword [rsp + 0x80], xmm0
xorps xmm0, xmm1
movdqa xmm9, xmm0
pslld xmm0, 7
pshufb xmm6, xmm7
psrld xmm9, 0x19
orps xmm9, xmm0
movdqa xmm3, xmm6
movdqa xmmword [rsp + 0xb0], xmm9
paddd xmm3, xmm13
movdqa xmm0, xmm3
xorps xmm0, xmm8
movdqa xmm8, xmmword [0x18003f710]
movdqa xmm1, xmm0
pslld xmm0, 0xc
psrld xmm1, 0x14
orps xmm1, xmm0
movdqa xmm13, xmm1
paddd xmm13, xmm2
movdqa xmm2, xmm15
movdqa xmmword [rsp + 0xc0], xmm13
paddd xmm2, xmm12
movdqa xmm12, xmmword [rsp + 0xa0]
xorps xmm6, xmm13
xorps xmm12, xmm2
pshufb xmm12, xmm7
pshufb xmm6, xmm8
movdqa xmm0, xmm6
paddd xmm0, xmm3
movdqa xmm3, xmm12
movdqa xmmword [rsp + 0x30], xmm0
xorps xmm0, xmm1
movdqa xmm11, xmm0
pslld xmm0, 7
psrld xmm11, 0x19
paddd xmm3, xmm14
orps xmm11, xmm0
movdqa xmm0, xmm3
movdqa xmmword [rsp + 0xd0], xmm11
xorps xmm0, xmm15
movdqa xmm1, xmm0
pslld xmm0, 0xc
psrld xmm1, 0x14
orps xmm1, xmm0
movdqa xmm14, xmm1
paddd xmm14, xmm2
movdqa xmmword [rsp + 0xe0], xmm14
xorps xmm12, xmm14
pshufb xmm12, xmm8
movdqa xmm15, xmm12
paddd xmm15, xmm3
movdqa xmmword [rsp + 0xa0], xmm15
movdqa xmm0, xmm15
xorps xmm0, xmm1
movdqa xmm4, xmm0
pslld xmm0, 7
psrld xmm4, 0x19
orps xmm4, xmm0
movdqa xmmword [rsp + 0x90], xmm4
sub rax, 1
jne 0x1800141b0
movdqa xmm5, xmmword [rsp + 0xf0]
paddd xmm5, xmmword [rsp + 0x40]
movdqa xmm4, xmmword [rsp + 0x110]
movdqa xmm3, xmm5
movdqa xmm1, xmmword [rsp + 0x100]
paddd xmm4, xmm13
paddd xmm1, xmmword [rsp + 0x50]
movdqa xmm2, xmm4
movdqa xmm0, xmmword [rsp + 0x120]
movdqa xmm13, xmmword [rsp + 0x1a0]
paddd xmm0, xmm14
punpckhdq xmm5, xmm1
punpckldq xmm3, xmm1
punpckhdq xmm4, xmm0
movdqa xmm1, xmm3
punpckldq xmm2, xmm0
movdqu xmm0, xmmword [r10]
punpcklqdq xmm1, xmm2
xorps xmm1, xmm0
punpckhqdq xmm3, xmm2
movdqu xmmword [r8], xmm1
movdqu xmm0, xmmword [r10 + 0x40]
movdqa xmm1, xmm5
punpckhqdq xmm5, xmm4
punpcklqdq xmm1, xmm4
xorps xmm3, xmm0
movdqa xmm4, xmmword [rsp + 0x150]
movdqu xmmword [r8 + 0x40], xmm3
movdqu xmm0, xmmword [r10 + 0x80]
paddd xmm4, xmm9
xorps xmm1, xmm0
movdqa xmm2, xmm4
movdqu xmmword [r8 + 0x80], xmm1
movdqu xmm0, xmmword [r10 + 0xc0]
movdqa xmm1, xmmword [rsp + 0x140]
paddd xmm1, xmmword [rsp + 0x60]
xorps xmm5, xmm0
movdqa xmm0, xmmword [rsp + 0x160]
movdqu xmmword [r8 + 0xc0], xmm5
movdqa xmm5, xmmword [rsp + 0x130]
paddd xmm0, xmm11
paddd xmm5, xmmword [rsp + 0x90]
movdqa xmm11, xmmword [rsp + 0x190]
movdqa xmm3, xmm5
punpckhdq xmm5, xmm1
punpckldq xmm3, xmm1
punpckhdq xmm4, xmm0
movdqa xmm1, xmm3
punpckldq xmm2, xmm0
movdqu xmm0, xmmword [r10 + 0x10]
punpcklqdq xmm1, xmm2
xorps xmm1, xmm0
punpckhqdq xmm3, xmm2
movdqu xmmword [r8 + 0x10], xmm1
movdqu xmm0, xmmword [r10 + 0x50]
movdqa xmm1, xmm5
punpckhqdq xmm5, xmm4
xorps xmm3, xmm0
punpcklqdq xmm1, xmm4
movdqa xmm4, xmmword [rsp + 0x180]
paddd xmm4, xmmword [rsp + 0x70]
movdqu xmmword [r8 + 0x50], xmm3
movdqu xmm0, xmmword [r10 + 0x90]
movdqa xmm2, xmm4
xorps xmm1, xmm0
movdqu xmmword [r8 + 0x90], xmm1
movdqu xmm0, xmmword [r10 + 0xd0]
movdqa xmm1, xmm11
xorps xmm5, xmm0
paddd xmm1, xmm15
movdqu xmmword [r8 + 0xd0], xmm5
movdqa xmm5, xmmword [rsp + 0x170]
movdqa xmm0, xmm13
paddd xmm5, xmmword [rsp + 0x30]
paddd xmm0, xmmword [rsp + 0x80]
movdqa xmm3, xmm5
punpckldq xmm3, xmm1
punpckhdq xmm5, xmm1
movdqa xmm1, xmm3
punpckldq xmm2, xmm0
punpckhdq xmm4, xmm0
movdqu xmm0, xmmword [r10 + 0x20]
movdqa xmm14, xmmword [rsp + 0x1d0]
movdqa xmm15, xmmword [rsp + 0x1e0]
movdqa xmm9, xmmword [rsp + 0x1c0]
punpcklqdq xmm1, xmm2
paddd xmm9, xmm6
movdqa xmm6, xmmword [rsp + 0x150]
xorps xmm1, xmm0
movdqu xmmword [r8 + 0x20], xmm1
movdqu xmm0, xmmword [r10 + 0x60]
punpckhqdq xmm3, xmm2
movdqa xmm1, xmm5
xorps xmm3, xmm0
punpcklqdq xmm1, xmm4
movdqu xmmword [r8 + 0x60], xmm3
movdqu xmm0, xmmword [r10 + 0xa0]
punpckhqdq xmm5, xmm4
movdqa xmm4, xmm14
xorps xmm1, xmm0
paddd xmm4, xmm12
movdqa xmm12, xmmword [rsp + 0x180]
movdqa xmm2, xmm4
movdqu xmmword [r8 + 0xa0], xmm1
movdqu xmm0, xmmword [r10 + 0xe0]
xorps xmm5, xmm0
movdqa xmm0, xmm15
paddd xmm0, xmmword [rsp + 0x20]
movdqu xmmword [r8 + 0xe0], xmm5
movdqa xmm5, xmmword [rsp + 0x1b0]
punpckldq xmm2, xmm0
paddd xmm5, xmm10
movdqa xmm10, xmmword [rsp + 0x170]
movdqa xmm3, xmm5
punpckhdq xmm4, xmm0
movdqu xmm0, xmmword [r10 + 0x30]
punpckldq xmm3, xmm9
punpckhdq xmm5, xmm9
movdqa xmm1, xmm3
movdqa xmm9, xmmword [rsp + 0x160]
punpcklqdq xmm1, xmm2
xorps xmm1, xmm0
punpckhqdq xmm3, xmm2
movdqa xmm2, xmmword [rsp + 0x110]
movdqu xmmword [r8 + 0x30], xmm1
movdqu xmm0, xmmword [r10 + 0x70]
movdqa xmm1, xmm5
punpckhqdq xmm5, xmm4
xorps xmm3, xmm0
punpcklqdq xmm1, xmm4
movdqa xmm4, xmmword [rsp + 0x130]
movdqu xmmword [r8 + 0x70], xmm3
movdqu xmm0, xmmword [r10 + 0xb0]
movdqa xmm3, xmmword [rsp + 0x120]
xorps xmm1, xmm0
movdqu xmmword [r8 + 0xb0], xmm1
movdqu xmm0, xmmword [r10 + 0xf0]
add r10, 0x100
movdqa xmm1, xmmword [rsp + 0x100]
xorps xmm5, xmm0
movdqa xmm0, xmmword [rsp + 0xf0]
movdqu xmmword [r8 + 0xf0], xmm5
add r8, 0x100
movdqa xmm5, xmmword [rsp + 0x140]
sub rdx, 1
jne 0x1800140e0
movaps xmm15, xmmword [rsp + 0x240]
movaps xmm14, xmmword [rsp + 0x250]
movaps xmm13, xmmword [rsp + 0x260]
mov qword [rsp + 0x2e0], rdi
cmp rbx, 0x40
jb 0x180014b39
mov rdi, rbx
shr rdi, 6
imul rax, rdi, 0xffffffffffffffc0
add rbx, rax
nop dword [rax]
nop word [rax + rax]
movdqu xmm12, xmmword [r11]
mov rax, r9
movdqu xmm9, xmmword [r11 + 0x10]
movdqu xmm10, xmmword [r11 + 0x20]
movdqu xmm11, xmmword [r11 + 0x30]
movdqa xmm4, xmm12
movdqa xmm2, xmm9
movdqa xmm6, xmm10
movdqa xmm5, xmm11
nop
movdqa xmm3, xmm2
paddd xmm3, xmm4
xorps xmm5, xmm3
pshufb xmm5, xmm7
movdqa xmm4, xmm5
paddd xmm4, xmm6
movdqa xmm0, xmm4
xorps xmm0, xmm2
movdqa xmm1, xmm0
pslld xmm0, 0xc
psrld xmm1, 0x14
xorps xmm1, xmm0
movdqa xmm2, xmm1
paddd xmm2, xmm3
xorps xmm5, xmm2
pshufb xmm5, xmm8
pshufd xmm6, xmm5, 0x4e
movdqa xmm3, xmm5
paddd xmm3, xmm4
pshufd xmm4, xmm2, 0x93
pshufd xmm5, xmm3, 0x39
movdqa xmm0, xmm3
xorps xmm0, xmm1
movdqa xmm1, xmm0
pslld xmm0, 7
psrld xmm1, 0x19
xorps xmm1, xmm0
paddd xmm4, xmm1
xorps xmm6, xmm4
pshufb xmm6, xmm7
paddd xmm5, xmm6
movdqa xmm0, xmm5
xorps xmm0, xmm1
movdqa xmm2, xmm0
pslld xmm0, 0xc
psrld xmm2, 0x14
xorps xmm2, xmm0
movdqa xmm0, xmm2
paddd xmm0, xmm4
pshufd xmm4, xmm0, 0x39
xorps xmm6, xmm0
pshufb xmm6, xmm8
movdqa xmm0, xmm6
paddd xmm0, xmm5
pshufd xmm5, xmm6, 0x4e
pshufd xmm6, xmm0, 0x93
movdqa xmm1, xmm0
xorps xmm1, xmm2
movdqa xmm2, xmm1
pslld xmm1, 7
psrld xmm2, 0x19
xorps xmm2, xmm1
sub rax, 1
jne 0x1800149e0
movdqu xmm0, xmmword [r10 + 0x10]
paddd xmm9, xmm2
paddd xmm10, xmm6
xorps xmm9, xmm0
paddd xmm11, xmm5
movdqu xmm0, xmmword [r10 + 0x20]
paddd xmm12, xmm4
xorps xmm10, xmm0
movdqu xmm0, xmmword [r10 + 0x30]
xorps xmm11, xmm0
movdqu xmm0, xmmword [r10]
movdqu xmmword [r8 + 0x10], xmm9
movdqu xmmword [r8 + 0x20], xmm10
movdqu xmmword [r8 + 0x30], xmm11
xorps xmm12, xmm0
movdqu xmmword [r8], xmm12
mov edx, dword [r11 + 0x34]
add dword [r11 + 0x30], 1
lea eax, [rdx + 1]
cmovne eax, edx
add r8, 0x40
add r10, 0x40
mov dword [r11 + 0x34], eax
sub rdi, 1
jne 0x1800149b0
mov rsi, qword [rsp + 0x2e8]
test rbx, rbx
je 0x180014dfb
movdqu xmm9, xmmword [r11]
movdqu xmm10, xmmword [r11 + 0x10]
movdqu xmm11, xmmword [r11 + 0x20]
movdqu xmm12, xmmword [r11 + 0x30]
movdqa xmm4, xmm9
movdqa xmm2, xmm10
movdqa xmm0, xmm11
movdqa xmm5, xmm12
nop word [rax + rax]
movdqa xmm3, xmm2
paddd xmm3, xmm4
xorps xmm5, xmm3
pshufb xmm5, xmm7
movdqa xmm4, xmm5
paddd xmm4, xmm0
movdqa xmm0, xmm4
xorps xmm0, xmm2
movdqa xmm1, xmm0
pslld xmm0, 0xc
psrld xmm1, 0x14
xorps xmm1, xmm0
movdqa xmm2, xmm1
paddd xmm2, xmm3
xorps xmm5, xmm2
pshufb xmm5, xmm8
pshufd xmm6, xmm5, 0x4e
movdqa xmm3, xmm5
paddd xmm3, xmm4
pshufd xmm4, xmm2, 0x93
pshufd xmm5, xmm3, 0x39
movdqa xmm0, xmm3
xorps xmm0, xmm1
movdqa xmm1, xmm0
pslld xmm0, 7
psrld xmm1, 0x19
xorps xmm1, xmm0
paddd xmm4, xmm1
xorps xmm6, xmm4
pshufb xmm6, xmm7
paddd xmm5, xmm6
movdqa xmm0, xmm5
xorps xmm0, xmm1
movdqa xmm2, xmm0
pslld xmm0, 0xc
psrld xmm2, 0x14
xorps xmm2, xmm0
movdqa xmm0, xmm2
paddd xmm0, xmm4
pshufd xmm4, xmm0, 0x39
xorps xmm6, xmm0
pshufb xmm6, xmm8
movdqa xmm0, xmm6
paddd xmm0, xmm5
pshufd xmm5, xmm6, 0x4e
movdqa xmm1, xmm0
pshufd xmm0, xmm0, 0x93
xorps xmm1, xmm2
movdqa xmm2, xmm1
pslld xmm1, 7
psrld xmm2, 0x19
xorps xmm2, xmm1
sub r9, 1
jne 0x180014b80
xor ecx, ecx
paddd xmm9, xmm4
movdqu xmmword [rsp + 0x1f0], xmm9
paddd xmm10, xmm2
movdqu xmmword [rsp + 0x200], xmm10
paddd xmm11, xmm0
movdqu xmmword [rsp + 0x210], xmm11
paddd xmm5, xmm12
movdqu xmmword [rsp + 0x220], xmm5
mov edx, ecx
cmp rbx, 8
jb 0x180014dc2
lea eax, [rbx - 1]
mov r9d, eax
lea r11, [rax + r8]
lea rax, [rsp + 0x1f0]
add rax, r9
cmp r8, rax
ja 0x180014cd6
lea rax, [rsp + 0x1f0]
cmp r11, rax
jae 0x180014dc2
lea rax, [r9 + r10]
cmp r8, rax
ja 0x180014ce8
cmp r11, r10
jae 0x180014dc2
cmp rbx, 0x40
jb 0x180014d8f
mov rdi, rbx
mov r11, rbx
and edi, 0x3f
sub r11, rdi
mov r9d, 0x20
nop dword [rax]
nop dword [rax + rax]
movdqu xmm0, xmmword [rsp + rcx + 0x1f0]
lea eax, [r9 - 0x10]
add edx, 0x40
movdqu xmm1, xmmword [r10 + rcx]
xorps xmm1, xmm0
movdqu xmm0, xmmword [r10 + rax]
movdqu xmmword [r8 + rcx], xmm1
mov ecx, edx
movdqu xmm1, xmmword [rsp + rax + 0x1f0]
xorps xmm1, xmm0
movdqu xmmword [rax + r8], xmm1
mov eax, r9d
movdqu xmm0, xmmword [r10 + rax]
movdqu xmm1, xmmword [rsp + rax + 0x1f0]
xorps xmm1, xmm0
movdqu xmmword [rax + r8], xmm1
lea eax, [r9 + 0x10]
add r9d, 0x40
movdqu xmm1, xmmword [rsp + rax + 0x1f0]
movdqu xmm0, xmmword [r10 + rax]
xorps xmm1, xmm0
movdqu xmmword [rax + r8], xmm1
cmp rcx, r11
jb 0x180014d10
cmp rdi, 8
jb 0x180014dc2
mov rcx, rbx
and rcx, 0xfffffffffffffff8
mov eax, edx
nop dword [rax + rax]
movq xmm1, qword [r10 + rax]
add edx, 8
movq xmm0, qword [rsp + rax + 0x1f0]
xorps xmm1, xmm0
movq qword [r8 + rax], xmm1
mov eax, edx
cmp rax, rcx
jb 0x180014da0
mov ecx, edx
cmp rcx, rbx
jae 0x180014de9
nop dword [rax]
movzx eax, byte [r10 + rcx]
inc edx
xor al, byte [rsp + rcx + 0x1f0]
mov byte [r8 + rcx], al
mov ecx, edx
cmp rcx, rbx
jb 0x180014dd0
mov edx, 0x40
lea rcx, [rsp + 0x1f0]
call fcn.180007de0
mov rdi, qword [rsp + 0x2e0]
movaps xmm10, xmmword [rsp + 0x290]
movaps xmm9, xmmword [rsp + 0x2a0]
movaps xmm11, xmmword [rsp + 0x280]
movaps xmm6, xmmword [rsp + 0x2d0]
movaps xmm12, xmmword [rsp + 0x270]
movaps xmm7, xmmword [rsp + 0x2c0]
movaps xmm8, xmmword [rsp + 0x2b0]
mov rcx, qword [rsp + 0x230]
xor rcx, rsp
call fcn.180024a40
add rsp, 0x2f0
pop rbx
ret