Function at 0x180002d70
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x60
mov rax, qword [0x180006008]
xor rax, rsp
mov qword [rsp + 0x50], rax
mov rbx, rdx
xor esi, esi
xor edx, edx
mov r12, rcx
xor r14d, r14d
nop dword [rax + rax]
movzx ecx, byte [rsi + r12]
test cl, cl
je 0x180002dd4
cmp esi, 0x40
je 0x180002dd4
mov byte [rsp + rdx + 0x30], cl
inc esi
inc edx
cmp edx, 0x10
jne 0x180002fea
jmp 0x180002fd8
mov eax, edx
lea r8, [rsp + 0x30]
add r8, rax
mov ecx, 0x10
sub ecx, edx
xor eax, eax
mov rdi, r8
rep stosb byte [rdi], al
mov byte [r8], 0x80
cmp edx, 0xc
jb 0x180002fca
movaps xmm0, xmmword [rsp + 0x30]
lea r15d, [rax + 2]
movdqa xmmword [rsp + 0x40], xmm0
mov r9, rbx
mov r10d, dword [rsp + 0x4c]
mov edx, ebx
mov r11d, dword [rsp + 0x48]
mov ebp, dword [rsp + 0x44]
mov edi, dword [rsp + 0x40]
shr r9, 0x20
mov r8d, r9d
mov qword [rsp + 0x20], rbx
mov r13d, r9d
nop
mov ecx, edx
shr r8d, 0x1d
mov eax, edx
shl ecx, 0x18
shr eax, 8
mov edx, ecx
or edx, eax
ror r10d, 8
add edx, r9d
lea eax, [r13*8]
xor edx, edi
or r8d, eax
xor r8d, edx
mov ecx, ebp
ror edx, 8
mov eax, ebp
add edx, r8d
shr eax, 8
ror r8d, 0x1d
shl ecx, 0x18
mov ebp, ecx
mov ecx, edi
or ebp, eax
shr ecx, 0x1d
add ebp, edi
lea eax, [r15 - 2]
xor ebp, eax
lea eax, [rdi*8]
mov edi, ecx
mov ecx, r11d
or edi, eax
shl ecx, 0x18
xor edi, ebp
mov eax, r11d
xor edx, edi
shr eax, 8
xor r8d, edx
ror ebp, 8
ror edx, 8
mov r11d, ecx
add edx, r8d
or r11d, eax
add r11d, edi
ror r8d, 0x1d
ror edi, 0x1d
lea eax, [r15 - 1]
xor r11d, eax
lea eax, [r15 + 1]
xor edi, r11d
ror r11d, 8
xor edx, edi
add r10d, edi
xor r8d, edx
ror edi, 0x1d
ror edx, 8
xor r10d, r15d
add edx, r8d
xor edi, r10d
xor edx, edi
ror r8d, 0x1d
xor r8d, edx
add ebp, edi
ror edx, 8
xor ebp, eax
add edx, r8d
ror edi, 0x1d
xor edi, ebp
ror r8d, 0x1d
xor edx, edi
lea eax, [r15 + 2]
xor r8d, edx
add r11d, edi
ror edx, 8
xor r11d, eax
add edx, r8d
ror edi, 0x1d
xor edi, r11d
ror r8d, 0x1d
xor edx, edi
xor r8d, edx
ror r10d, 8
add r10d, edi
ror edx, 8
add edx, r8d
ror edi, 0x1d
ror r8d, 0x1d
lea eax, [r15 + 3]
xor r10d, eax
ror ebp, 8
xor edi, r10d
ror r11d, 8
xor edx, edi
ror r10d, 8
xor r8d, edx
lea eax, [r15 + 4]
add ebp, edi
ror edx, 8
add edx, r8d
ror edi, 0x1d
xor ebp, eax
ror r8d, 0x1d
xor edi, ebp
lea eax, [r15 + 5]
xor edx, edi
add r11d, edi
xor r8d, edx
ror edi, 0x1d
xor r11d, eax
ror edx, 8
xor edi, r11d
lea eax, [r15 + 6]
add edx, r8d
add r10d, edi
xor edx, edi
ror r8d, 0x1d
xor r10d, eax
ror edi, 0x1d
xor r8d, edx
add r15d, 9
xor edi, r10d
mov r9d, r8d
mov r13d, r8d
lea eax, [r15 - 2]
cmp eax, 0x1b
jb 0x180002e30
mov dword [rsp + 0x20], edx
lea rdi, [rsp + 0x30]
mov dword [rsp + 0x24], r8d
mov ecx, 0x10
xor rbx, qword [rsp + 0x20]
xor eax, eax
rep stosb byte [rdi], al
lea eax, [rsi*8]
inc r14d
mov dword [rsp + 0x3c], eax
mov rdx, rbx
lea rcx, [rsp + 0x30]
call fcn.180002b50
xor rbx, rax
xor edx, edx
test r14d, r14d
je 0x180002db0
mov rax, rbx
mov rcx, qword [rsp + 0x50]
xor rcx, rsp
call fcn.180003040
lea r11, [rsp + 0x60]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret