Function at 0x18000ea30
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r14
push r15
lea rbp, [rsp - 0x3f]
sub rsp, 0x90
xor eax, eax
mov dword [rbp - 0x11], 0xe1a0a68c
mov r15, rdx
mov byte [rbp - 7], al
xor edx, edx
mov dword [rbp - 0xd], 0xb09cf3e3
mov rbx, r9
mov word [rbp - 9], 0xb3b7
mov r14, r8
mov rdi, rcx
nop word [rax + rax]
movsxd rcx, edx
lea eax, [rdx - 0x32]
inc edx
xor byte [rbp + rcx - 0x11], al
cmp edx, 0xa
jb 0x18000ea80
lea r8, [rbp - 0x11]
mov byte [rbp - 7], 0
mov rdx, rdi
lea rcx, [rbp - 0x21]
call fcn.18000e8e0
xor esi, esi
mov ecx, 2
mov r8, r15
mov rdx, rdi
movss xmm0, dword [rax]
movss dword [rbp - 1], xmm0
movss xmm1, dword [rax + 4]
movss dword [rbp + 3], xmm1
movss xmm0, dword [rax + 8]
mov eax, dword [rbp + 0x7f]
cmp eax, 0x64
cvtps2pd xmm0, xmm0
setle sil
cmp eax, 0x50
cmovle esi, ecx
mov ecx, 3
cmp eax, 0x3c
cmovle esi, ecx
mov ecx, 4
addsd xmm0, qword [0x180007618]
cmp eax, 0x28
cmovle esi, ecx
mov ecx, 5
cmp eax, 0x14
cvtpd2ps xmm0, xmm0
cmovle esi, ecx
mov ecx, 0xa
cmp eax, ecx
cmovle esi, ecx
mov ecx, 0xf
cmp eax, 7
cmovle esi, ecx
movss dword [rbp + 7], xmm0
cmp eax, 5
mov ecx, 0x14
cmovle esi, ecx
lea rcx, [rbp - 0x21]
call fcn.18000e8e0
lea r8, [rbp + 0xf]
mov rcx, rbx
lea rdx, [rbp - 0x11]
movsd xmm0, qword [rax]
mov eax, dword [rax + 8]
movsd qword [rbp - 0x11], xmm0
mov dword [rbp - 9], eax
call fcn.1800094e0
test al, al
je 0x18000ec4c
mov r8, r14
lea rcx, [rbp - 0x21]
mov rdx, rdi
call fcn.18000e8e0
lea r8, [rbp + 0x1f]
mov rcx, rbx
lea rdx, [rbp - 0x11]
movsd xmm0, qword [rax]
mov eax, dword [rax + 8]
movsd qword [rbp - 0x11], xmm0
mov dword [rbp - 9], eax
call fcn.1800094e0
test al, al
je 0x18000ec4c
mov rax, qword [0x1800eb5f8]
lea r8, [0x1800015e8]
xor edx, edx
mov rcx, qword [rax + 0x40f8]
mov rcx, qword [rcx]
call fcn.180020420
movss xmm0, dword [0x180066060]
mov r10, rax
movss xmm1, dword [0x180066064]
mov rcx, qword [0x1800eb5f8]
movss xmm2, dword [0x180066068]
movss dword [rbp + 0x2f], xmm0
movss xmm0, dword [0x18006606c]
mulss xmm0, dword [rcx + 0x37e0]
lea rcx, [rbp + 0x2f]
movss dword [rbp + 0x33], xmm1
movss xmm1, dword [rbp + 0x23]
movss dword [rbp + 0x3b], xmm0
movss xmm0, dword [rbp + 0x1f]
movss dword [rbp - 0x21], xmm0
movss xmm0, dword [rbp + 0xf]
movss dword [rbp - 0x1d], xmm1
movss xmm1, dword [rbp + 0x13]
movss dword [rbp - 0x11], xmm0
movss dword [rbp + 0x37], xmm2
movss dword [rbp - 0xd], xmm1
call fcn.18001d710
movss xmm0, dword [0x180007650]
lea r8, [rbp - 0x21]
mov r9d, eax
movss dword [rsp + 0x20], xmm0
lea rdx, [rbp - 0x11]
mov rcx, r10
call fcn.18003df50
movsd xmm0, qword [rbp - 1]
lea r8, [rbp + 0xf]
mov eax, dword [rbp + 7]
lea rdx, [rbp - 0x11]
mov rcx, rbx
movsd qword [rbp - 0x11], xmm0
mov dword [rbp - 9], eax
call fcn.1800094e0
test al, al
je 0x18000ed84
mov rax, qword [rdi]
mov rcx, rdi
mov rdx, qword [rax + 0xe0]
call rdx
lea r8, [rbp - 1]
mov rcx, rbx
lea rdx, [rbp - 0x11]
movsd xmm0, qword [rax]
mov eax, dword [rax + 8]
movsd qword [rbp - 0x11], xmm0
mov dword [rbp - 9], eax
call fcn.1800094e0
test al, al
je 0x18000ed84
mov rax, qword [0x1800eb5f8]
lea r8, [0x1800015e8]
xor edx, edx
mov rcx, qword [rax + 0x40f8]
mov rcx, qword [rcx]
call fcn.180020420
movss xmm0, dword [0x180066060]
mov rbx, rax
mov rcx, qword [0x1800eb5f8]
movss xmm1, dword [0x180066064]
movss xmm2, dword [0x180066068]
movss dword [rbp + 0x2f], xmm0
movss xmm0, dword [0x18006606c]
mulss xmm0, dword [rcx + 0x37e0]
lea rcx, [rbp + 0x2f]
movss dword [rbp + 0x33], xmm1
movss dword [rbp + 0x37], xmm2
movss dword [rbp + 0x3b], xmm0
call fcn.18001d710
movss xmm0, dword [rbp + 0xf]
mov edi, eax
movss xmm1, dword [rbp + 0x13]
movd xmm2, esi
movss dword [rbp - 0x11], xmm0
movss dword [rbp - 0xd], xmm1
cvtdq2ps xmm2, xmm2
test eax, 0xff000000
je 0x18000ed84
movss xmm0, dword [0x1800075cc]
comiss xmm0, xmm2
ja 0x18000ed84
xor r9d, r9d
mov dword [rsp + 0x20], 0x30
lea rdx, [rbp - 0x11]
mov rcx, rbx
call fcn.18003d080
mov r8d, dword [rbx + 0x78]
mov r9d, edi
mov rdx, qword [rbx + 0x80]
dec r8d
mov rcx, rbx
mov dword [rbx + 0x78], r8d
call fcn.18003cb30
mov dword [rbx + 0x78], 0
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov rsp, r11
pop r15
pop r14
pop rbp
ret