Function at 0x1800349a9
Capabilities:
Encode data using xor

Disassembly:
test r8, r8
je 0x180034c61
mov r11, rsp
push r12
sub rsp, 0x2e0
mov rax, qword [0x1802a8008]
xor rax, rsp
mov qword [rsp + 0x2b0], rax
mov qword [r11 + 0x10], rbx
xor r12d, r12d
mov qword [r11 + 0x18], rbp
mov qword [r11 + 0x20], rsi
mov qword [r11 - 0x10], rdi
mov qword [r11 - 0x18], r13
mov qword [r11 - 0x20], r14
mov qword [r11 - 0x28], r15
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x20], rdx
mov qword [rsp + 8], rcx
mov dword [rsp], r12d
nop dword [rax]
mov r9d, r12d
lea r11, [rsp + 0x30]
shl r9d, 7
add r9, rdx
xor r10d, r10d
nop dword [rax]
nop word [rax + rax]
lea eax, [r10*8]
inc r10d
movzx r8d, byte [rax + r9]
lea r11, [r11 + 8]
shl r8, 8
mov edx, eax
movzx eax, byte [r9 + rax + 1]
or r8, rax
shl r8, 8
movzx eax, byte [r9 + rdx + 2]
or r8, rax
movzx eax, byte [r9 + rdx + 3]
shl r8, 8
or r8, rax
movzx eax, byte [r9 + rdx + 4]
shl r8, 8
or r8, rax
movzx eax, byte [r9 + rdx + 5]
shl r8, 8
or r8, rax
movzx eax, byte [r9 + rdx + 6]
shl r8, 8
or r8, rax
movzx eax, byte [r9 + rdx + 7]
shl r8, 8
or r8, rax
mov qword [r11 - 8], r8
cmp r10d, 0x10
jb 0x180034a20
lea r11, [rsp + 0xb0]
mov ebx, 0x40
lea r10, [rsp + 0xa0]
mov rdx, qword [r10]
lea r11, [r11 + 8]
mov r8, qword [r10 - 0x68]
lea r10, [r10 + 8]
mov r9, rdx
mov rax, rdx
ror r9, 0x13
shr rdx, 6
rol rax, 3
xor r9, rax
mov rax, r8
xor r9, rdx
ror rax, 1
mov rdx, r8
shr r8, 7
ror rdx, 8
xor rdx, rax
xor rdx, r8
add r9, rdx
add r9, qword [r10 - 0x78]
add r9, qword [r10 - 0x30]
mov qword [r11 - 8], r9
sub rbx, 1
jne 0x180034ab0
mov r11, qword [rcx + 0x10]
lea r12, [0x180203bf0]
mov rbx, qword [rcx + 0x18]
xor esi, esi
mov rdi, qword [rcx + 0x20]
mov r13, qword [rcx + 0x28]
mov r10, qword [rcx + 0x30]
mov rbp, qword [rcx + 0x38]
mov r14, qword [rcx + 0x40]
mov r15, qword [rcx + 0x48]
lea ecx, [rsi + 0x50]
nop
mov r9, r10
lea rsi, [rsi + 8]
rol r9, 0x17
mov rax, r10
ror rax, 0x12
mov rdx, r10
xor r9, rax
not rdx
and rdx, r14
mov rax, r10
ror rax, 0xe
mov r8, r11
xor r9, rax
rol r8, 0x1e
mov rax, rbp
and rax, r10
xor rdx, rax
mov rax, r11
add r9, rdx
ror rax, 0x1c
add r9, qword [rsi + r12 - 8]
xor r8, rax
add r9, qword [rsp + rsi + 0x28]
mov rax, r11
rol rax, 0x19
add r9, r15
xor r8, rax
mov rdx, rbx
xor rdx, rdi
mov rax, rbx
and rax, rdi
and rdx, r11
xor rdx, rax
mov r15, r14
add r8, rdx
mov r14, rbp
mov rbp, r10
lea r10, [r9 + r13]
mov r13, rdi
mov rdi, rbx
mov rbx, r11
lea r11, [r8 + r9]
sub rcx, 1
jne 0x180034b30
mov rcx, qword [rsp + 8]
mov rax, r15
mov r12d, dword [rsp]
mov rdx, qword [rsp + 0x20]
inc r12d
mov qword [rsp + 0x10], r15
add qword [rcx + 0x10], r11
add qword [rcx + 0x48], rax
add qword [rcx + 0x18], rbx
add qword [rcx + 0x20], rdi
add qword [rcx + 0x28], r13
add qword [rcx + 0x30], r10
add qword [rcx + 0x38], rbp
add qword [rcx + 0x40], r14
mov eax, r12d
mov dword [rsp], r12d
cmp rax, qword [rsp + 0x18]
jb 0x180034a00
mov r15, qword [rsp + 0x2c0]
mov r14, qword [rsp + 0x2c8]
mov r13, qword [rsp + 0x2d0]
mov rdi, qword [rsp + 0x2d8]
mov rsi, qword [rsp + 0x308]
mov rbp, qword [rsp + 0x300]
mov rbx, qword [rsp + 0x2f8]
mov rcx, qword [rsp + 0x2b0]
xor rcx, rsp
call fcn.1801e6050
add rsp, 0x2e0
pop r12
ret