Function at 0x1402036a0
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x20], rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x480
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
mov rax, qword [0x14051f680]
xor rax, rsp
mov qword [rsp + 0x400], rax
lea r10, [rsp]
sub rdx, rcx
sub r10, rcx
mov r15, r8
mov r14d, 0x40
test r9d, r9d
je 0x14020374b
mov r9, r8
mov rax, rcx
sub r9, rcx
mov r8d, r14d
nop word [rax + rax]
movdqu xmm1, xmmword [rax + rdx]
lea rax, [rax + 0x10]
xorps xmm1, xmmword [rax - 0x10]
movdqu xmmword [rax - 0x10], xmm1
movdqu xmm0, xmmword [rax + r9 - 0x10]
xorps xmm0, xmm1
movdqu xmmword [rax + r10 - 0x10], xmm0
sub r8, 1
jne 0x140203720
jmp 0x140203799
lea rax, [rcx + 0x10]
mov r8d, 0x20
nop word [rax + rax]
movdqu xmm1, xmmword [rax]
movdqu xmm0, xmmword [rdx + rax - 0x10]
lea rax, [rax + 0x20]
xorps xmm0, xmmword [rax - 0x30]
movdqu xmmword [rax - 0x30], xmm0
movdqu xmmword [rax + r10 - 0x30], xmm0
movdqu xmm0, xmmword [rdx + rax - 0x20]
xorps xmm1, xmm0
movdqu xmmword [rax - 0x20], xmm1
movdqu xmmword [rax + r10 - 0x20], xmm1
sub r8, 1
jne 0x140203760
xor r12d, r12d
nop dword [rax]
lea eax, [r12*8]
lea ebp, [rax + 2]
mov r11d, eax
add r11, r11
lea esi, [rax + 3]
add rbp, rbp
lea r9d, [rax + 1]
add r9, r9
lea edi, [rax + 6]
add rsi, rsi
lea r10d, [rax + 4]
add r10, r10
lea ebx, [rax + 7]
movdqu xmm3, xmmword [rcx + rbp*8]
lea edx, [rax + 5]
movdqa xmm10, xmm3
movdqa xmm0, xmm3
paddq xmm0, xmmword [rcx + r11*8]
add rdi, rdi
movdqu xmm2, xmmword [rcx + rsi*8]
add rbx, rbx
pmuludq xmm10, xmmword [rcx + r11*8]
movdqa xmm6, xmm2
pmuludq xmm6, xmmword [rcx + r9*8]
add rdx, rdx
paddq xmm10, xmm10
paddq xmm10, xmm0
paddq xmm6, xmm6
movdqa xmm0, xmm2
movdqa xmm1, xmm10
xorps xmm1, xmmword [rcx + rdi*8]
paddq xmm0, xmmword [rcx + r9*8]
vprotq xmm5, xmm1, 0xe0
paddq xmm6, xmm0
movdqa xmm1, xmm5
pmuludq xmm1, xmmword [rcx + r10*8]
movdqa xmm8, xmm5
paddq xmm8, xmmword [rcx + r10*8]
movdqa xmm0, xmm6
xorps xmm0, xmmword [rcx + rbx*8]
vprotq xmm7, xmm0, 0xe0
movdqa xmm4, xmm7
paddq xmm4, xmmword [rcx + rdx*8]
paddq xmm1, xmm1
paddq xmm8, xmm1
movdqa xmm1, xmm7
pmuludq xmm1, xmmword [rcx + rdx*8]
movdqa xmm11, xmm8
paddq xmm1, xmm1
paddq xmm4, xmm1
movdqa xmm1, xmm8
xorps xmm1, xmm3
movdqa xmm0, xmm4
xorps xmm0, xmm2
vprotq xmm2, xmm1, 0xe8
vprotq xmm3, xmm0, 0xe8
movdqa xmm1, xmm2
movdqa xmm0, xmm3
pmuludq xmm1, xmm10
movdqa xmm9, xmm2
pmuludq xmm0, xmm6
movdqa xmm12, xmm3
paddq xmm12, xmm6
paddq xmm9, xmm10
paddq xmm1, xmm1
paddq xmm9, xmm1
paddq xmm0, xmm0
xorps xmm5, xmm9
paddq xmm12, xmm0
vprotq xmm6, xmm5, 0xf0
movdqa xmm5, xmm4
pmuludq xmm11, xmm6
xorps xmm7, xmm12
paddq xmm8, xmm6
vprotq xmm1, xmm7, 0xf0
pmuludq xmm5, xmm1
paddq xmm4, xmm1
paddq xmm11, xmm11
paddq xmm11, xmm8
paddq xmm5, xmm5
paddq xmm5, xmm4
xorps xmm2, xmm11
movdqa xmm4, xmm9
vprotq xmm0, xmm2, 0xc1
movdqa xmm10, xmm0
movdqa xmm2, xmm1
palignr xmm2, xmm6, 8
xorps xmm3, xmm5
palignr xmm6, xmm1, 8
vprotq xmm7, xmm3, 0xc1
palignr xmm10, xmm7, 8
palignr xmm7, xmm0, 8
movdqa xmm0, xmm12
pmuludq xmm0, xmm10
paddq xmm9, xmm7
pmuludq xmm4, xmm7
paddq xmm12, xmm10
paddq xmm0, xmm0
paddq xmm12, xmm0
paddq xmm4, xmm4
paddq xmm4, xmm9
movdqa xmm0, xmm12
xorps xmm0, xmm2
movdqa xmm1, xmm4
xorps xmm1, xmm6
vprotq xmm6, xmm0, 0xe0
vprotq xmm3, xmm1, 0xe0
movdqa xmm1, xmm3
movdqa xmm8, xmm3
pmuludq xmm1, xmm5
paddq xmm8, xmm5
movdqa xmm0, xmm6
movdqa xmm9, xmm6
pmuludq xmm0, xmm11
paddq xmm9, xmm11
paddq xmm1, xmm1
paddq xmm8, xmm1
paddq xmm0, xmm0
paddq xmm9, xmm0
movdqa xmm0, xmm8
xorps xmm0, xmm7
vprotq xmm7, xmm0, 0xe8
movdqa xmm0, xmm9
movdqa xmm1, xmm7
xorps xmm0, xmm10
pmuludq xmm1, xmm4
vprotq xmm5, xmm0, 0xe8
movdqa xmm0, xmm12
movdqa xmm2, xmm7
pmuludq xmm0, xmm5
paddq xmm2, xmm4
paddq xmm12, xmm5
paddq xmm1, xmm1
paddq xmm2, xmm1
movdqa xmm1, xmm8
xorps xmm3, xmm2
movdqu xmmword [rcx + r11*8], xmm2
paddq xmm0, xmm0
paddq xmm0, xmm12
xorps xmm6, xmm0
movdqu xmmword [rcx + r9*8], xmm0
vprotq xmm4, xmm3, 0xf0
pmuludq xmm1, xmm4
movdqa xmm0, xmm9
vprotq xmm3, xmm6, 0xf0
pmuludq xmm0, xmm3
paddq xmm8, xmm4
paddq xmm9, xmm3
paddq xmm1, xmm1
paddq xmm1, xmm8
paddq xmm0, xmm0
movdqu xmmword [rcx + rdx*8], xmm1
paddq xmm0, xmm9
xorps xmm7, xmm1
movdqu xmmword [rcx + r10*8], xmm0
xorps xmm0, xmm5
vprotq xmm2, xmm0, 0xc1
vprotq xmm1, xmm7, 0xc1
movdqa xmm0, xmm1
palignr xmm0, xmm2, 8
movdqu xmmword [rcx + rbp*8], xmm0
palignr xmm2, xmm1, 8
movdqa xmm0, xmm3
movdqu xmmword [rcx + rsi*8], xmm2
palignr xmm0, xmm4, 8
inc r12d
palignr xmm4, xmm3, 8
movdqu xmmword [rcx + rbx*8], xmm4
movdqu xmmword [rcx + rdi*8], xmm0
cmp r12d, 8
jb 0x1402037a0
mov rdx, rcx
lea rax, [rcx + 0x280]
mov r8d, 8
nop dword [rax]
nop word [rax + rax]
movdqu xmm2, xmmword [rax - 0x180]
movdqu xmm3, xmmword [rax - 0x100]
movdqa xmm10, xmm2
pmuludq xmm10, xmmword [rdx]
movdqa xmm0, xmm2
paddq xmm0, xmmword [rdx]
movdqa xmm7, xmm3
movdqu xmm1, xmmword [rax - 0x200]
pmuludq xmm7, xmm1
paddq xmm10, xmm10
paddq xmm10, xmm0
movdqa xmm0, xmm3
paddq xmm0, xmm1
movdqa xmm1, xmm10
xorps xmm1, xmmword [rax + 0x80]
paddq xmm7, xmm7
paddq xmm7, xmm0
vprotq xmm5, xmm1, 0xe0
movdqa xmm0, xmm7
xorps xmm0, xmmword [rax + 0x100]
vprotq xmm6, xmm0, 0xe0
movdqu xmm0, xmmword [rax - 0x80]
movdqa xmm9, xmm0
paddq xmm0, xmm5
pmuludq xmm9, xmm5
paddq xmm9, xmm9
paddq xmm9, xmm0
movdqu xmm0, xmmword [rax]
movdqa xmm8, xmm0
xorps xmm2, xmm9
paddq xmm0, xmm6
pmuludq xmm8, xmm6
vprotq xmm2, xmm2, 0xe8
movdqa xmm11, xmm2
movdqa xmm12, xmm9
pmuludq xmm11, xmm10
paddq xmm8, xmm8
paddq xmm8, xmm0
movdqa xmm0, xmm2
paddq xmm0, xmm10
xorps xmm3, xmm8
vprotq xmm4, xmm3, 0xe8
movdqa xmm10, xmm4
paddq xmm11, xmm11
paddq xmm11, xmm0
pmuludq xmm10, xmm7
movdqa xmm0, xmm4
paddq xmm0, xmm7
paddq xmm10, xmm10
paddq xmm10, xmm0
movdqa xmm0, xmm11
xorps xmm0, xmm5
movdqa xmm1, xmm10
xorps xmm1, xmm6
movdqa xmm6, xmm8
vprotq xmm7, xmm0, 0xf0
vprotq xmm3, xmm1, 0xf0
pmuludq xmm12, xmm7
paddq xmm8, xmm3
pmuludq xmm6, xmm3
paddq xmm9, xmm7
paddq xmm12, xmm12
paddq xmm12, xmm9
paddq xmm6, xmm6
paddq xmm6, xmm8
movdqa xmm0, xmm12
xorps xmm0, xmm2
movdqa xmm1, xmm6
xorps xmm1, xmm4
movdqa xmm4, xmm11
vprotq xmm2, xmm0, 0xc1
movdqa xmm8, xmm2
vprotq xmm5, xmm1, 0xc1
palignr xmm8, xmm5, 8
palignr xmm5, xmm2, 8
movdqa xmm2, xmm3
pmuludq xmm4, xmm5
paddq xmm11, xmm5
palignr xmm2, xmm7, 8
palignr xmm7, xmm3, 8
paddq xmm4, xmm4
lea rax, [rax + 0x10]
movdqa xmm9, xmm10
pmuludq xmm9, xmm8
paddq xmm10, xmm8
lea rdx, [rdx + 0x10]
paddq xmm4, xmm11
movdqa xmm1, xmm4
xorps xmm1, xmm7
movdqa xmm7, xmm12
paddq xmm9, xmm9
paddq xmm9, xmm10
movdqa xmm10, xmm6
movdqa xmm0, xmm9
xorps xmm0, xmm2
vprotq xmm3, xmm0, 0xe0
pmuludq xmm7, xmm3
paddq xmm12, xmm3
vprotq xmm2, xmm1, 0xe0
pmuludq xmm10, xmm2
paddq xmm6, xmm2
movdqa xmm1, xmm4
paddq xmm7, xmm7
paddq xmm7, xmm12
paddq xmm10, xmm10
paddq xmm10, xmm6
movdqa xmm0, xmm10
xorps xmm0, xmm5
vprotq xmm6, xmm0, 0xe8
pmuludq xmm1, xmm6
movdqa xmm0, xmm7
xorps xmm0, xmm8
paddq xmm4, xmm6
vprotq xmm5, xmm0, 0xe8
movdqa xmm0, xmm9
paddq xmm9, xmm5
pmuludq xmm0, xmm5
paddq xmm1, xmm1
paddq xmm1, xmm4
movdqu xmmword [rdx - 0x10], xmm1
xorps xmm1, xmm2
vprotq xmm4, xmm1, 0xf0
paddq xmm0, xmm0
paddq xmm0, xmm9
movdqu xmmword [rax - 0x210], xmm0
xorps xmm0, xmm3
vprotq xmm3, xmm0, 0xf0
movdqa xmm0, xmm10
paddq xmm10, xmm4
pmuludq xmm0, xmm4
paddq xmm0, xmm0
paddq xmm10, xmm0
movdqa xmm0, xmm7
pmuludq xmm0, xmm3
paddq xmm7, xmm3
movdqu xmmword [rax - 0x10], xmm10
xorps xmm10, xmm6
vprotq xmm1, xmm10, 0xc1
paddq xmm0, xmm0
paddq xmm7, xmm0
movdqa xmm0, xmm1
movdqu xmmword [rax - 0x90], xmm7
xorps xmm7, xmm5
vprotq xmm2, xmm7, 0xc1
palignr xmm0, xmm2, 8
movdqu xmmword [rax - 0x190], xmm0
movdqa xmm0, xmm3
palignr xmm0, xmm4, 8
palignr xmm4, xmm3, 8
palignr xmm2, xmm1, 8
movdqu xmmword [rax + 0xf0], xmm4
movdqu xmmword [rax - 0x110], xmm2
movdqu xmmword [rax + 0x70], xmm0
sub r8, 1
jne 0x140203ad0
lea rax, [rsp]
sub rax, rcx
sub r15, rcx
movdqu xmm0, xmmword [rax + rcx]
xorps xmm0, xmmword [rcx]
movdqu xmmword [rcx], xmm0
movdqu xmmword [r15 + rcx], xmm0
lea rcx, [rcx + 0x10]
sub r14, 1
jne 0x140203dd3
mov rcx, qword [rsp + 0x400]
xor rcx, rsp
call fcn.14036d350
lea r11, [rsp + 0x480]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret