Function at 0x140004cc0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push r12
push r13
push r14
push r15
sub rsp, 0x50
mov ecx, dword [rsp + 0xb8]
lea r12d, [rdx + 0x288]
mov rbx, qword [rsp + 0xa0]
mov r14d, r9d
xor r14d, 0x4ba
mov r15d, r9d
xor r15d, 0x629
xor r9d, r9d
lea eax, [rcx - 0x17e]
mov dword [rsp + 0xb8], eax
lea ebp, [rcx - 0x5fd]
mov eax, dword [rsp + 0xa8]
xor ecx, 0x38e3
lea r8d, [rax - 0x479]
lea r13d, [rax + 0x1e5]
mov eax, r14d
xor eax, 0xf01
cmp ecx, eax
je 0x140004e6d
lea rax, [0x140054750]
mov r10d, r9d
mov qword [rbx + 0xc0], rax
nop
mov ecx, dword [rbx + 0x100]
lea eax, [rcx - 0x3c]
or dword [rbx + 0x58], eax
mov eax, 1
xor ecx, dword [rbx + 0x144]
mov dword [rbx + 0x100], ecx
sub eax, dword [rbx + 0x84]
add dword [rbx + 0x48], eax
mov rax, qword [rbx + 0xc0]
mov edx, dword [r10 + rax]
add r10, 4
mov eax, dword [rbx + 0xb0]
sub eax, 0x5d335
add dword [rbx + 0x20], eax
mov eax, dword [rbx + 0x128]
xor eax, 1
add dword [rbx + 0xc8], eax
mov eax, 0xcbb79
sub eax, dword [rbx + 0x154]
add dword [rbx + 0x130], eax
imul edx, dword [rbx + 0x74]
mov eax, dword [rbx + 4]
mov ecx, dword [rbx + 0x168]
add eax, 0xa0311
add dword [rbx + 0x128], eax
mov eax, dword [rbx + 0x58]
add eax, 0xfffa9a5e
add ecx, eax
add dword [rbx + 0xb4], ecx
mov eax, dword [rbx]
movsxd rcx, dword [rbx + 0x88]
add eax, 0x10c4c4
add dword [rbx + 0x128], eax
mov rax, qword [rbx + 0xe0]
mov byte [rcx + rax], dl
inc dword [rbx + 0x88]
mov eax, dword [rbx + 0xc8]
sub eax, dword [rbx + 0x94]
sub eax, 0xde37
add dword [rbx], eax
mov eax, dword [rbx]
mov edx, dword [rbx + 0xfc]
add eax, 0x10c4c4
add dword [rbx + 0x68], eax
mov ecx, dword [rbx + 0x58]
mov eax, dword [rbx + 0x90]
add ecx, edx
imul eax, ecx
mov ecx, dword [rbx + 0x94]
mov dword [rbx + 0x90], eax
mov eax, dword [rbx + 0xd8]
sub eax, 0x117bfb
imul ecx, eax
mov dword [rbx + 0x94], ecx
sub edx, dword [rbx + 0x128]
inc edx
xor edx, ecx
mov dword [rbx + 0x94], edx
cmp r10, 0x1860
jl 0x140004d50
lea eax, [r13 + 0x35e]
cmp r8d, eax
je 0x140005002
lea rax, [0x140053170]
mov dword [rbx + 0x74], 0x3cf3cf3d
mov qword [rbx + 0xc0], rax
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rbx + 0xc0]
mov r8d, dword [rax + r9]
add r9, 4
imul r8d, dword [rbx + 0x74]
mov eax, dword [rbx + 0x154]
sub eax, 0xcbb79
add dword [rbx + 0xd8], eax
mov eax, dword [rbx + 0x48]
mov ecx, dword [rbx + 0x94]
add eax, 0xffecccb5
add ecx, eax
mov edx, r8d
or dword [rbx + 0x154], ecx
mov eax, dword [rbx + 0x118]
sub eax, dword [rbx + 0x100]
mov ecx, dword [rbx + 0xb4]
sub eax, 0x194cb8
xor dword [rbx + 0xfc], eax
sub ecx, 0x71cfa
mov eax, dword [rbx + 0x5c]
xor eax, 0x10
shr edx, 8
add dword [rbx + 0x20], eax
mov eax, dword [rbx + 0xb0]
imul eax, ecx
mov dword [rbx + 0xb0], eax
mov eax, dword [rbx + 0x84]
mov ecx, dword [rbx + 0xc8]
xor ecx, 0xde36
imul eax, ecx
mov ecx, dword [rbx + 0x90]
mov dword [rbx + 0x84], eax
mov eax, dword [rbx + 0x34]
add eax, 0xfff51713
add ecx, eax
add dword [rbx + 0x68], ecx
movsxd rcx, dword [rbx + 0x88]
mov rax, qword [rbx + 0xe0]
mov byte [rcx + rax], dl
inc dword [rbx + 0x88]
mov eax, dword [rbx + 0x168]
xor eax, dword [rbx + 0x144]
sub eax, 0x565a1
xor dword [rbx + 0x130], eax
mov eax, dword [rbx + 0xfc]
mov ecx, dword [rbx + 0x68]
sub ecx, eax
xor ecx, eax
mov eax, dword [rbx + 0x144]
xor eax, dword [rbx + 0x110]
xor ecx, 0x15349
add eax, 0xaab73
mov dword [rbx + 0xfc], ecx
or dword [rbx + 0x118], eax
mov eax, dword [rbx + 0x20]
add eax, dword [rbx + 0x84]
movsxd rcx, dword [rbx + 0x88]
xor eax, 0xf449a
add dword [rbx + 0x100], eax
mov rax, qword [rbx + 0xe0]
mov byte [rcx + rax], r8b
mov eax, dword [rbx + 0x128]
inc dword [rbx + 0x88]
dec eax
or dword [rbx + 0xb4], eax
mov eax, dword [rbx + 0x168]
sub eax, 0x565a1
xor dword [rbx + 0x48], eax
cmp r9, 0x1530
jl 0x140004ea0
jmp 0x140005132
mov edx, dword [rbx + 0x168]
mov r11d, ebp
mov r10d, dword [rbx + 0xd4]
sub r11d, r8d
xor r10d, dword [rbx + 0x68]
mov eax, edx
mov r8d, dword [rbx + 0xb0]
and r10d, 0x38bb
sub eax, dword [rbx + 0x24]
xor r8d, 0x330b
and eax, dword [rbx + 0x58]
sub r8d, dword [rbx + 0x48]
mov ecx, dword [rsp + 0xb8]
mov qword [rsp + 0x80], rsi
mov esi, dword [rbx + 0xd8]
xor r11d, esi
mov qword [rsp + 0x88], rdi
mov edi, dword [rbx + 0x128]
imul r9d, edx, 0x38bb
and edi, 0x3107
mov dword [rsp + 0x40], edi
lea edx, [rsi + 0x3580]
mov dword [rsp + 0x38], r11d
mov dword [rsp + 0x30], r10d
mov qword [rsp + 0x28], rbx
mov dword [rsp + 0x20], eax
call fcn.140001be0
mov eax, dword [rbx + 0x108]
lea r11d, [r14 + 0x3ac3]
add eax, dword [rbx + 0x100]
mov edi, dword [rbx + 0x114]
add eax, r13d
add edi, dword [rbx + 0x6c]
add ebp, eax
mov ecx, dword [rbx + 0xcc]
sub r12d, ebp
sub r15d, dword [rbx + 0x94]
add ecx, 0x3243
mov r10d, dword [rbx + 0xc]
xor edi, r14d
sub r15d, dword [rbx + 0x68]
add r10d, ecx
mov r9d, dword [rbx + 0x150]
lea ecx, [r12 + 0x3580]
mov edx, dword [rbx + 0x124]
xor r9d, ebp
mov r8d, dword [rbx + 0x128]
and r9d, r14d
add edx, dword [rbx + 0x80]
or r8d, 0x38e3
add edx, dword [rbx]
mov dword [rsp + 0x40], edi
mov dword [rsp + 0x38], r15d
mov dword [rsp + 0x30], r10d
mov qword [rsp + 0x28], rbx
mov dword [rsp + 0x20], r11d
call fcn.140001be0
mov rdi, qword [rsp + 0x88]
mov rsi, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x90]
xor ebp, 0x821
mov eax, ebp
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rbp
ret