Function at 0x18000a300
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x160
movaps xmmword [rsp + 0x150], xmm7
movaps xmmword [rsp + 0x140], xmm6
mov rsi, rcx
mov rcx, qword [0x180019e18]
movaps xmm0, xmmword [0x180015a00]
lea rax, [rsp + 0xa0]
movaps xmmword [rax], xmm0
movss xmm0, dword [0x1800190f4]
movss xmm1, dword [0x1800190f0]
unpcklps xmm1, xmm0
cvtps2pd xmm0, xmm1
lea r8, [rsp + 0xd0]
movaps xmmword [r8], xmm0
mov qword [rsp + 0x20], rax
lea rdx, [0x1800190d0]
movss xmm3, dword [0x1800151b4]
call fcn.18000efac
movaps xmm0, xmmword [0x180015160]
lea rax, [rsp + 0x130]
movss xmm2, dword [0x18001582c]
movss xmm3, dword [0x1800190f4]
addss xmm3, xmm2
addss xmm2, dword [0x1800190f0]
movaps xmmword [rax], xmm0
movaps xmm0, xmmword [0x1800190d0]
lea rdx, [rsp + 0x120]
movaps xmmword [rdx], xmm0
mov qword [rsp + 0x20], rax
lea rdi, [rsp + 0xa0]
mov rcx, rdi
call fcn.1800030e0
lea rbx, [rsp + 0x92]
mov dword [rbx - 2], 0x70027
mov word [rbx + 2], 0x27
mov word [rbx + 6], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x90], 0x27
inc rax
cmp rax, 4
jne 0x18000a3ee
mov word [rsp + 0x98], 0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x70], xmm0
cmp word [rsp + 0x92], 0
je 0x18000a435
mov rcx, rbx
call fcn.180013270
inc eax
mov dword [rsp + 0x78], eax
mov dword [rsp + 0x7c], eax
je 0x18000a435
mov qword [rsp + 0x70], rbx
lea rbx, [rsp + 0xa2]
movaps xmm0, xmmword [str._nGZFA_]
movaps xmmword [rbx - 2], xmm0
mov dword [rbx + 0xe], 0x28004d
mov word [rbx + 0x22], 0
mov eax, 1
xor byte [rsp + rax*2 + 0xa0], 0x28
inc rax
cmp rax, 0x12
jne 0x18000a45a
mov word [rsp + 0xc4], 0
xorps xmm7, xmm7
movaps xmmword [rsp + 0x80], xmm7
cmp word [rsp + 0xa2], 0
je 0x18000a4ad
mov rcx, rbx
call fcn.180013270
inc eax
mov dword [rsp + 0x88], eax
mov dword [rsp + 0x8c], eax
je 0x18000a4ad
mov qword [rsp + 0x80], rbx
lea r15, [rsp + 0x110]
lea r14, [rsp + 0xd0]
lea r12, [rsp + 0x80]
lea r13, [rsp + 0x70]
mov rcx, r15
mov rdx, r14
mov r8, r12
mov r9, r13
call fcn.180011dea
mov rcx, qword [0x180019e18]
movaps xmm6, xmmword [0x1800150d0]
lea rbx, [rsp + 0xa0]
movaps xmmword [rbx], xmm6
movaps xmmword [r13], xmm7
movaps xmm0, xmmword [0x180015780]
lea rax, [rsp + 0x90]
movaps xmmword [rax], xmm0
movaps xmm0, xmmword [0x180015a20]
movaps xmmword [r15], xmm0
movapd xmm0, xmmword [0x1800190d0]
addpd xmm0, xmmword [0x180015a30]
movaps xmmword [r12], xmm6
lea r9, [rsp + 0x100]
movapd xmmword [r9], xmm0
mov rdx, qword [0x180019e28]
mov qword [rsp + 0x60], rdi
xor r8d, r8d
mov byte [rsp + 0x58], r8b
mov byte [rsp + 0x50], r8b
mov byte [rsp + 0x48], r8b
mov qword [rsp + 0x40], r13
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r15
mov dword [rsp + 0x30], 0x3f800000
mov r8, r14
call fcn.18000f3f2
call fcn.18000a624
mov edx, dword [0x18001a0dc]
mov rcx, rsi
call fcn.18000b0a8
call fcn.18000ca20
mov rcx, qword [0x180019e48]
lea r8, [rsp + 0x70]
mov rdx, rbx
call fcn.18000fc2e
movss xmm0, dword [rbx]
xorps xmm2, xmm2
ucomiss xmm0, xmm2
jne 0x18000a5b4
jnp 0x18000a601
movss xmm1, dword [rsp + 0x70]
ucomiss xmm1, xmm2
jne 0x18000a5c1
jnp 0x18000a601
lea rax, [rsp + 0xf0]
movaps xmmword [rax], xmm6
unpcklps xmm0, xmm1
addps xmm0, xmmword [0x180015a40]
cvtps2pd xmm0, xmm0
lea rdx, [rsp + 0xe0]
movaps xmmword [rdx], xmm0
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x80]
movss xmm2, dword [0x180015a50]
movaps xmm3, xmm2
call fcn.1800030e0
movaps xmm6, xmmword [rsp + 0x140]
movaps xmm7, xmmword [rsp + 0x150]
add rsp, 0x160
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret