Function at 0x140009870
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x220
mov rax, qword [0x14045f040]
xor rax, rsp
mov qword [rsp + 0x210], rax
mov esi, 4
lea rbp, [0x140463a64]
mov r11d, esi
lea rbx, [rsp + 0x20]
mov r13, rcx
nop dword [rax + rax]
movzx edx, byte [rbp]
xor edi, edi
mov r10d, edx
mov eax, edx
and eax, 1
shr r10d, 1
dec r10d
or eax, 2
mov ecx, r10d
lea r8d, [rdi + 1]
shl eax, cl
mov r9d, r11d
sub r9d, eax
test r10d, r10d
je 0x140009944
mov qword [rsp], rbp
mov r14d, edx
lea rbp, [0x140000000]
mov r15d, eax
nop dword [rax]
mov eax, r8d
mov edx, r9d
sub rax, r14
shr r9d, 1
add rax, r15
and edx, 1
add r8d, r8d
or r8d, edx
mov ecx, dword [r13 + rax*4 + 0x28b4c]
mov eax, edx
sub ecx, edx
neg eax
xor rcx, rax
shr rcx, 2
and ecx, 0x1ff
add edi, dword [rbp + rcx*4 + 0x464260]
sub r10d, 1
jne 0x140009900
mov rbp, qword [rsp]
mov dword [rbx], edi
inc r11d
add rbx, 4
inc rsi
inc rbp
cmp r11d, 0x80
jb 0x1400098c0
lea rdi, [rsp + 0x10]
mov ebp, 4
sub rdi, r13
lea rbx, [r13 + 0x32ebc]
sub rdi, 0x332bc
lea rsi, [r13 + 0x332c4]
lea r15, [0x140463a61]
lea r14, [0x140000000]
mov eax, dword [r13 + 0x33b00]
xor r10d, r10d
test eax, eax
je 0x1400099f9
nop
mov eax, r10d
or eax, 0x40
xor r9d, r9d
nop dword [rax]
mov ecx, eax
mov edx, eax
shr rcx, 1
and edx, 1
shr eax, 1
mov r8d, dword [rbx + rcx*4 - 0xa76c]
mov ecx, edx
sub r8d, edx
neg ecx
xor r8, rcx
shr r8, 2
and r8d, 0x1ff
add r9d, dword [r14 + r8*4 + 0x464260]
cmp eax, 1
jne 0x1400099b0
mov dword [rbx + r10*4], r9d
inc r10d
mov eax, dword [r13 + 0x33b00]
cmp r10d, eax
jb 0x1400099a0
mov edx, 0xe
cmp eax, edx
jbe 0x140009a21
mov eax, edx
lea rcx, [rbx + rax*4]
mov eax, edx
shr eax, 1
inc edx
shl eax, 6
sub eax, 0x140
add dword [rcx], eax
cmp edx, dword [r13 + 0x33b00]
jb 0x140009a02
mov eax, dword [rbx]
lea r9, [rsi + 0xc]
mov dword [rsi - 8], eax
mov edx, 6
mov eax, dword [rbx + 4]
mov r10d, edx
mov dword [rsi - 4], eax
mov eax, dword [rbx + 8]
mov dword [rsi], eax
lea r11d, [rdx - 2]
mov eax, dword [rbx + 0xc]
mov dword [rsi + 4], eax
nop word [rax + rax]
lea eax, [rdx - 2]
cmp eax, 0x800
jae 0x140009a65
movzx eax, byte [r10 + r14 + 0x463a5e]
jmp 0x140009a93
cmp eax, 0x200000
mov rax, r11
jae 0x140009a82
shr rax, 0xa
movzx eax, byte [rax + r14 + 0x463a60]
add rax, 0x14
jmp 0x140009a93
shr rax, 0x14
movzx eax, byte [rax + r14 + 0x463a60]
add rax, 0x28
mov eax, dword [rbx + rax*4]
lea rcx, [r14 + 0x463a60]
add eax, dword [r9 + rdi - 4]
lea r8d, [rdx - 1]
add rcx, r10
mov dword [r9 - 4], eax
cmp r8d, 0x800
jae 0x140009abc
movzx eax, byte [rcx - 1]
jmp 0x140009aef
mov rax, rcx
sub rax, r15
cmp r8d, 0x200000
jae 0x140009ade
shr rax, 0xa
movzx eax, byte [rax + r14 + 0x463a60]
add rax, 0x14
jmp 0x140009aef
shr rax, 0x14
movzx eax, byte [rax + r14 + 0x463a60]
add rax, 0x28
mov eax, dword [rbx + rax*4]
add eax, dword [r9 + rdi]
mov dword [r9], eax
cmp edx, 0x800
jae 0x140009b06
movzx eax, byte [rcx]
jmp 0x140009b35
mov rax, r10
cmp edx, 0x200000
jae 0x140009b24
shr rax, 0xa
movzx eax, byte [rax + r14 + 0x463a60]
add rax, 0x14
jmp 0x140009b35
shr rax, 0x14
movzx eax, byte [rax + r14 + 0x463a60]
add rax, 0x28
mov eax, dword [rbx + rax*4]
lea r8d, [rdx + 1]
add eax, dword [r9 + rdi + 4]
mov dword [r9 + 4], eax
cmp r8d, 0x800
jae 0x140009b54
movzx eax, byte [rcx + 1]
jmp 0x140009b85
lea rax, [r11 + 3]
cmp r8d, 0x200000
jae 0x140009b74
shr rax, 0xa
movzx eax, byte [rax + r14 + 0x463a60]
add rax, 0x14
jmp 0x140009b85
shr rax, 0x14
movzx eax, byte [rax + r14 + 0x463a60]
add rax, 0x28
mov eax, dword [rbx + rax*4]
add edx, 4
add eax, dword [r9 + rdi + 8]
add r11, 4
mov dword [r9 + 8], eax
add r10, 4
add r9, 0x10
lea eax, [rdx - 2]
cmp eax, 0x80
jb 0x140009a50
add rbx, 0x100
add rsi, 0x200
sub rdi, 0x200
sub rbp, 1
jne 0x140009990
mov dword [r13 + 0x33b20], ebp
mov rcx, qword [rsp + 0x210]
xor rcx, rsp
call fcn.1402e2560
lea r11, [rsp + 0x220]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret