Function at 0x1800e79a0
Capabilities:
Encode data using xor

Disassembly:
mov r11, rsp
push rsi
sub rsp, 0x940
mov rax, qword [0x18025e100]
xor rax, rsp
mov qword [rsp + 0x910], rax
mov qword [r11 + 0x18], rbp
mov qword [r11 - 0x18], r12
mov qword [r11 - 0x20], r13
mov r13, rcx
lea rcx, [r11 - 0x528]
xor edx, edx
mov r8d, 0x4e8
call fcn.18024adb8
lea rcx, [rsp + 0x120]
xor edx, edx
mov r8d, 0x300
call fcn.18024adb8
lea rcx, [rsp + 0x60]
xor edx, edx
mov r8d, 0xc0
call fcn.18024adb8
mov r12, qword [r13 + 0x19550]
mov r10, qword [r13]
mov ecx, dword [r12 + 0x78]
mov eax, dword [r12 + 0x10]
mov r9, qword [r12 + 0x28]
and ecx, 0xfffff
xor edx, edx
mov r8b, 1
div ecx
mov ecx, dword [r12 + 0x20]
lea rdx, [rsp + 0x60]
mov ebp, eax
lea rax, [rsp + 0x420]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ecx
mov rcx, r13
call qword [r10 + 0x1b0]
mov esi, eax
test eax, eax
js 0x1800e7c80
mov qword [rsp + 0x958], rbx
mov qword [rsp + 0x938], rdi
mov qword [rsp + 0x920], r14
xor r14d, r14d
mov edi, r14d
test ebp, ebp
je 0x1800e7b1a
mov rbx, r14
mov rax, qword [r12 + 0x18]
mov r8d, dword [r12 + 0x78]
mov r10, qword [r13]
and r8d, 0xfffff
mov qword [rsp + 0x30], r14
mov ecx, r8d
imul ecx, edi
lea r9, [rax + rcx*8]
mov eax, edi
lea rcx, [rax + rax*2]
lea rax, [rsp + 0x50]
shl rcx, 6
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r8d
lea rdx, [rsp + rcx + 0x120]
xor r8d, r8d
mov rcx, r13
call qword [r10 + 0x1b0]
mov esi, eax
test eax, eax
js 0x1800e7c68
lea rcx, [rsp + rbx + 0x4e8]
lea rdx, [rsp + rbx + 0x120]
mov r8d, 0xc0
call sub.msvcrt.dll_memcpy
inc edi
add rbx, 0xc0
cmp edi, ebp
jb 0x1800e7a92
cmp dword [rsp + 0x4e8], 4
mov rax, qword [r12 + 0x18]
mov rcx, qword [rax]
jne 0x1800e7b5c
movss xmm1, dword [0x180068820]
lea rax, [rsp + 0x588]
mov ecx, 4
movss xmm0, dword [rax]
add rax, 4
sub rcx, 1
xorps xmm0, xmm1
movss dword [rax - 4], xmm0
jne 0x1800e7b41
jmp 0x1800e7bd4
mov eax, dword [rcx + 0xf8]
btc eax, 0xa
and eax, 0x1f80
je 0x1800e7ba5
cmp eax, 0x400
je 0x1800e7b9e
cmp eax, 0x800
je 0x1800e7b9e
cmp eax, 0x1000
je 0x1800e7b97
cmp eax, 0x1400
je 0x1800e7b90
mov esi, 0x80004005
jmp 0x1800e7bcc
mov eax, 3
jmp 0x1800e7ba8
mov eax, 2
jmp 0x1800e7ba8
mov eax, 1
jmp 0x1800e7ba8
mov eax, r14d
mov dword [rsp + 0x574], eax
test eax, eax
je 0x1800e7bc9
mov dword [rsp + 0x570], 1
mov dword [rsp + 0x578], 1
mov esi, r14d
test esi, esi
js 0x1800e7c68
lea rcx, [rsp + 0x428]
lea rdx, [rsp + 0x60]
mov r8d, 0xc0
call sub.msvcrt.dll_memcpy
mov rcx, qword [r13 + 0x19718]
lea eax, [rbp + 1]
lea rdx, [rsp + 0x420]
mov dword [rsp + 0x8a8], eax
mov dword [rsp + 0x8ac], r14d
mov dword [rsp + 0x420], 0x32
call fcn.18024758c
mov r9, qword [r13 + 0x19550]
mov eax, dword [r9 + 0x10]
mov edx, dword [rsp + 0x420]
mov r8d, 1
mov dword [rsp + 0x40], eax
mov rax, qword [r9 + 0x18]
mov rcx, r13
mov qword [rsp + 0x38], rax
mov eax, dword [r9 + 0x20]
mov r9, qword [r9 + 0x28]
mov dword [rsp + 0x30], r14d
mov qword [rsp + 0x28], r14
mov dword [rsp + 0x20], eax
call fcn.1800ed740
mov esi, eax
test eax, eax
cmovns esi, r14d
mov rdi, qword [rsp + 0x938]
mov rbx, qword [rsp + 0x958]
mov r14, qword [rsp + 0x920]
mov eax, dword [rsp + 0x420]
mov r13, qword [rsp + 0x928]
mov r12, qword [rsp + 0x930]
mov rbp, qword [rsp + 0x960]
cmp eax, 0x35
je 0x1800e7cab
cmp eax, 0x91
jne 0x1800e7cb5
mov rcx, qword [rsp + 0x8f0]
jmp 0x1800e7cc4
cmp eax, 0x92
jne 0x1800e7cc9
mov rcx, qword [rsp + 0x8f8]
call sub.msvcrt.dll_free
mov eax, esi
mov rcx, qword [rsp + 0x910]
xor rcx, rsp
call fcn.18024a670
add rsp, 0x940
pop rsi
ret