Function at 0x140041690
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x480
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
movaps xmmword [rax - 0x88], xmm10
movaps xmmword [rax - 0x98], xmm11
movaps xmmword [rax - 0xa8], xmm12
mov rax, qword [0x14009d090]
xor rax, rsp
mov qword [rsp + 0x400], rax
lea r14, [rsp]
sub rdx, rcx
sub r14, rcx
mov r12, r8
mov rbp, rcx
mov r15d, 0x40
test r9d, r9d
je 0x14004173d
mov rax, rcx
sub r8, rcx
mov ecx, r15d
nop dword [rax]
movdqu xmm1, xmmword [rdx + rax]
lea rax, [rax + 0x10]
pxor xmm1, xmmword [rax - 0x10]
movdqu xmmword [rax - 0x10], xmm1
movdqu xmm0, xmmword [r8 + rax - 0x10]
pxor xmm0, xmm1
movdqu xmmword [r14 + rax - 0x10], xmm0
sub rcx, 1
jne 0x140041710
jmp 0x140041788
lea rax, [rcx + 0x10]
mov ecx, 0x20
nop word [rax + rax]
movdqu xmm0, xmmword [rdx + rax - 0x10]
lea rax, [rax + 0x20]
pxor xmm0, xmmword [rax - 0x30]
movdqu xmmword [rax - 0x30], xmm0
movdqu xmmword [r14 + rax - 0x30], xmm0
movdqu xmm1, xmmword [rdx + rax - 0x20]
pxor xmm1, xmmword [rax - 0x20]
movdqu xmmword [rax - 0x20], xmm1
movdqu xmmword [r14 + rax - 0x20], xmm1
sub rcx, 1
jne 0x140041750
xor r13d, r13d
nop dword [rax + rax]
lea edx, [r13*8]
lea esi, [rdx + 2]
mov r10d, edx
add r10, r10
lea edi, [rdx + 3]
add rsi, rsi
lea r8d, [rdx + 1]
add r8, r8
lea ebx, [rdx + 6]
add rdi, rdi
lea r9d, [rdx + 4]
add r9, r9
lea r11d, [rdx + 7]
movdqu xmm3, xmmword [rbp + rsi*8]
lea ecx, [rdx + 5]
movdqa xmm10, xmm3
movdqa xmm0, xmm3
paddq xmm0, xmmword [rbp + r10*8]
add rbx, rbx
movdqu xmm2, xmmword [rbp + rdi*8]
add r11, r11
pmuludq xmm10, xmmword [rbp + r10*8]
movdqa xmm8, xmm2
pmuludq xmm8, xmmword [rbp + r8*8]
add rcx, rcx
paddq xmm10, xmm10
paddq xmm10, xmm0
paddq xmm8, xmm8
movdqa xmm1, xmm10
movdqa xmm0, xmm2
pxor xmm1, xmmword [rbp + rbx*8]
paddq xmm0, xmmword [rbp + r8*8]
vprotq xmm5, xmm1, 0xe0
paddq xmm8, xmm0
movdqa xmm1, xmm5
pmuludq xmm1, xmmword [rbp + r9*8]
movdqa xmm7, xmm5
paddq xmm7, xmmword [rbp + r9*8]
movdqa xmm0, xmm8
pxor xmm0, xmmword [rbp + r11*8]
vprotq xmm6, xmm0, 0xe0
movdqa xmm4, xmm6
paddq xmm4, xmmword [rbp + rcx*8]
paddq xmm1, xmm1
paddq xmm7, xmm1
movdqa xmm1, xmm6
pmuludq xmm1, xmmword [rbp + rcx*8]
movdqa xmm12, xmm7
paddq xmm1, xmm1
paddq xmm4, xmm1
movdqa xmm1, xmm7
pxor xmm1, xmm3
movdqa xmm0, xmm4
pxor xmm0, xmm2
vprotq xmm3, xmm0, 0xe8
vprotq xmm2, xmm1, 0xe8
movdqa xmm9, xmm2
movdqa xmm0, xmm2
paddq xmm0, xmm10
pmuludq xmm9, xmm10
movdqa xmm11, xmm3
pmuludq xmm11, xmm8
paddq xmm9, xmm9
paddq xmm9, xmm0
movdqa xmm0, xmm3
pxor xmm5, xmm9
paddq xmm11, xmm11
vprotq xmm10, xmm5, 0xf0
paddq xmm7, xmm10
pmuludq xmm12, xmm10
paddq xmm0, xmm8
paddq xmm11, xmm0
pxor xmm6, xmm11
vprotq xmm1, xmm6, 0xf0
paddq xmm12, xmm12
paddq xmm12, xmm7
movdqa xmm7, xmm4
pmuludq xmm7, xmm1
paddq xmm4, xmm1
paddq xmm7, xmm7
paddq xmm7, xmm4
pxor xmm3, xmm7
pxor xmm2, xmm12
vprotq xmm0, xmm2, 0xc1
movdqa xmm8, xmm0
movdqa xmm2, xmm1
palignr xmm2, xmm10, 8
movdqa xmm6, xmm9
palignr xmm10, xmm1, 8
vprotq xmm5, xmm3, 0xc1
palignr xmm8, xmm5, 8
palignr xmm5, xmm0, 8
paddq xmm9, xmm5
pmuludq xmm6, xmm5
paddq xmm6, xmm6
paddq xmm6, xmm9
movdqa xmm9, xmm11
pmuludq xmm9, xmm8
movdqa xmm0, xmm6
pxor xmm0, xmm10
paddq xmm11, xmm8
vprotq xmm4, xmm0, 0xe0
movdqa xmm10, xmm7
paddq xmm7, xmm4
pmuludq xmm10, xmm4
paddq xmm9, xmm9
paddq xmm9, xmm11
movdqa xmm1, xmm9
pxor xmm1, xmm2
vprotq xmm3, xmm1, 0xe0
paddq xmm10, xmm10
paddq xmm10, xmm7
movdqa xmm7, xmm12
pmuludq xmm7, xmm3
movdqa xmm0, xmm10
pxor xmm0, xmm5
paddq xmm12, xmm3
vprotq xmm5, xmm0, 0xe8
movdqa xmm1, xmm5
pmuludq xmm1, xmm6
paddq xmm7, xmm7
paddq xmm7, xmm12
movdqa xmm0, xmm7
pxor xmm0, xmm8
vprotq xmm2, xmm0, 0xe8
paddq xmm1, xmm1
movdqa xmm0, xmm5
paddq xmm0, xmm6
paddq xmm1, xmm0
movdqa xmm0, xmm9
pmuludq xmm0, xmm2
paddq xmm9, xmm2
movdqu xmmword [rbp + r10*8], xmm1
pxor xmm1, xmm4
vprotq xmm4, xmm1, 0xf0
paddq xmm0, xmm0
paddq xmm0, xmm9
movdqu xmmword [rbp + r8*8], xmm0
pxor 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
pxor xmm5, xmm10
movdqu xmmword [rbp + rcx*8], xmm10
vprotq xmm1, xmm5, 0xc1
paddq xmm0, xmm0
paddq xmm7, xmm0
movdqa xmm0, xmm1
movdqu xmmword [rbp + r9*8], xmm7
pxor xmm7, xmm2
vprotq xmm2, xmm7, 0xc1
palignr xmm0, xmm2, 8
palignr xmm2, xmm1, 8
movdqu xmmword [rbp + rsi*8], xmm0
movdqa xmm0, xmm3
movdqu xmmword [rbp + rdi*8], xmm2
palignr xmm0, xmm4, 8
inc r13d
palignr xmm4, xmm3, 8
movdqu xmmword [rbp + r11*8], xmm4
movdqu xmmword [rbp + rbx*8], xmm0
cmp r13d, 8
jb 0x140041790
mov rcx, rbp
lea rax, [rbp + 0x280]
mov edx, 8
nop word [rax + rax]
movdqu xmm2, xmmword [rax - 0x180]
movdqu xmm3, xmmword [rax - 0x100]
movdqa xmm1, xmm2
pmuludq xmm1, xmmword [rcx]
movdqa xmm8, xmm2
paddq xmm8, xmmword [rcx]
movdqa xmm7, xmm3
movdqu xmm0, xmmword [rax - 0x200]
paddq xmm7, xmm0
paddq xmm1, xmm1
paddq xmm8, xmm1
movdqa xmm1, xmm3
pmuludq xmm1, xmm0
paddq xmm1, xmm1
paddq xmm7, xmm1
movdqa xmm1, xmm8
pxor xmm1, xmmword [rax + 0x80]
movdqa xmm0, xmm7
pxor xmm0, xmmword [rax + 0x100]
vprotq xmm6, xmm0, 0xe0
movdqu xmm0, xmmword [rax - 0x80]
movdqa xmm11, xmm0
vprotq xmm5, xmm1, 0xe0
paddq xmm0, xmm5
pmuludq xmm11, xmm5
paddq xmm11, xmm11
paddq xmm11, xmm0
movdqu xmm0, xmmword [rax]
movdqa xmm10, xmm0
pxor xmm2, xmm11
paddq xmm0, xmm6
pmuludq xmm10, xmm6
vprotq xmm2, xmm2, 0xe8
movdqa xmm9, xmm2
pmuludq xmm9, xmm8
paddq xmm10, xmm10
paddq xmm10, xmm0
movdqa xmm0, xmm2
paddq xmm0, xmm8
pxor xmm3, xmm10
vprotq xmm4, xmm3, 0xe8
paddq xmm9, xmm9
movdqa xmm8, xmm4
paddq xmm9, xmm0
pmuludq xmm8, xmm7
movdqa xmm0, xmm4
paddq xmm0, xmm7
paddq xmm8, xmm8
paddq xmm8, xmm0
movdqa xmm0, xmm9
pxor xmm0, xmm5
movdqa xmm1, xmm8
vprotq xmm7, xmm0, 0xf0
pxor xmm1, xmm6
movdqa xmm0, xmm11
pmuludq xmm0, xmm7
paddq xmm11, xmm7
vprotq xmm3, xmm1, 0xf0
paddq xmm0, xmm0
paddq xmm11, xmm0
movdqa xmm0, xmm10
pmuludq xmm0, xmm3
paddq xmm10, xmm3
paddq xmm0, xmm0
paddq xmm10, xmm0
movdqa xmm0, xmm11
pxor xmm0, xmm2
movdqa xmm1, xmm10
vprotq xmm2, xmm0, 0xc1
movdqa xmm6, xmm2
movdqa xmm0, xmm9
pxor xmm1, xmm4
vprotq xmm5, xmm1, 0xc1
palignr xmm6, xmm5, 8
palignr xmm5, xmm2, 8
movdqa xmm2, xmm3
pmuludq xmm0, xmm5
paddq xmm9, xmm5
palignr xmm2, xmm7, 8
palignr xmm7, xmm3, 8
paddq xmm0, xmm0
lea rax, [rax + 0x10]
paddq xmm9, xmm0
lea rcx, [rcx + 0x10]
movdqa xmm0, xmm8
pmuludq xmm0, xmm6
paddq xmm8, xmm6
paddq xmm0, xmm0
paddq xmm8, xmm0
movdqa xmm0, xmm9
pxor xmm0, xmm7
movdqa xmm1, xmm8
pxor xmm1, xmm2
vprotq xmm4, xmm0, 0xe0
movdqa xmm0, xmm10
paddq xmm10, xmm4
pmuludq xmm0, xmm4
vprotq xmm3, xmm1, 0xe0
movdqa xmm1, xmm9
paddq xmm0, xmm0
paddq xmm10, xmm0
movdqa xmm0, xmm11
pmuludq xmm0, xmm3
paddq xmm11, xmm3
paddq xmm0, xmm0
paddq xmm11, xmm0
movdqa xmm0, xmm10
pxor xmm0, xmm5
vprotq xmm5, xmm0, 0xe8
pmuludq xmm1, xmm5
movdqa xmm0, xmm11
pxor xmm0, xmm6
paddq xmm9, xmm5
vprotq xmm2, xmm0, 0xe8
movdqa xmm0, xmm8
paddq xmm8, xmm2
pmuludq xmm0, xmm2
paddq xmm1, xmm1
paddq xmm9, xmm1
movdqu xmmword [rcx - 0x10], xmm9
pxor xmm9, xmm4
vprotq xmm4, xmm9, 0xf0
paddq xmm0, xmm0
paddq xmm8, xmm0
movdqa xmm0, xmm10
pmuludq xmm0, xmm4
paddq xmm10, xmm4
movdqu xmmword [rax - 0x210], xmm8
pxor xmm8, xmm3
vprotq xmm3, xmm8, 0xf0
paddq xmm0, xmm0
paddq xmm10, xmm0
movdqa xmm0, xmm11
pmuludq xmm0, xmm3
paddq xmm11, xmm3
movdqu xmmword [rax - 0x10], xmm10
pxor xmm10, xmm5
vprotq xmm1, xmm10, 0xc1
paddq xmm0, xmm0
paddq xmm11, xmm0
movdqa xmm0, xmm1
movdqu xmmword [rax - 0x90], xmm11
pxor xmm11, xmm2
vprotq xmm2, xmm11, 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 rdx, 1
jne 0x140041ae0
sub r12, rbp
nop dword [rax]
nop word [rax + rax]
movdqu xmm0, xmmword [r14 + rbp]
pxor xmm0, xmmword [rbp]
movdqu xmmword [rbp], xmm0
movdqu xmmword [r12 + rbp], xmm0
lea rbp, [rbp + 0x10]
sub r15, 1
jne 0x140041e00
mov rcx, qword [rsp + 0x400]
xor rcx, rsp
call fcn.140052720
lea r11, [rsp + 0x480]
mov rbx, 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 r13
pop r12
pop rdi
pop rsi
pop rbp
ret