Function at 0x180009b10
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x1c0
movaps xmmword [rsp + 0x1b0], xmm7
movaps xmmword [rsp + 0x1a0], xmm6
mov rsi, rcx
mov rcx, qword [0x180018e18]
movaps xmm0, xmmword [0x1800149a0]
lea rax, [rsp + 0x110]
movaps xmmword [rax], xmm0
movss xmm0, dword [0x1800180f4]
movss xmm1, dword [0x1800180f0]
unpcklps xmm1, xmm0
cvtps2pd xmm0, xmm1
lea r8, [rsp + 0xa0]
movaps xmmword [r8], xmm0
mov qword [rsp + 0x20], rax
lea rdx, [0x1800180d0]
movss xmm3, dword [0x1800141a4]
call fcn.18000e364
movaps xmm0, xmmword [0x180014150]
lea rax, [rsp + 0x100]
movss xmm2, dword [0x1800147bc]
movss xmm3, dword [0x1800180f4]
addss xmm3, xmm2
addss xmm2, dword [0x1800180f0]
movaps xmmword [rax], xmm0
movaps xmm0, xmmword [0x1800180d0]
lea rdx, [rsp + 0xf0]
movaps xmmword [rdx], xmm0
mov qword [rsp + 0x20], rax
lea rdi, [rsp + 0x110]
mov rcx, rdi
call fcn.180003004
lea rbx, [rsp + 0x92]
mov dword [rbx - 2], 0x1b003b
mov word [rbx + 2], 0x3b
mov word [rbx + 6], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x90], 0x3b
inc rax
cmp rax, 4
jne 0x180009bfe
mov word [rsp + 0x98], 0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x70], xmm0
cmp word [rsp + 0x92], 0
je 0x180009c45
mov rcx, rbx
call fcn.18001244c
inc eax
mov dword [rsp + 0x78], eax
mov dword [rsp + 0x7c], eax
je 0x180009c45
mov qword [rsp + 0x70], rbx
lea rbx, [rsp + 0x112]
movaps xmm0, xmmword [0x1800149b0]
movaps xmmword [rbx - 2], xmm0
movaps xmm0, xmmword [0x1800149c0]
movaps xmmword [rbx + 0xe], xmm0
movaps xmm0, xmmword [str.AIA5_t]
movaps xmmword [rbx + 0x1e], xmm0
movaps xmm0, xmmword [0x1800149e0]
movaps xmmword [rbx + 0x2e], xmm0
mov dword [rbx + 0x3e], 0x610048
mov word [rbx + 0x82], 0
mov eax, 1
xor byte [rsp + rax*2 + 0x110], 0x61
inc rax
cmp rax, 0x42
jne 0x180009c8e
mov word [rsp + 0x194], 0
xorps xmm7, xmm7
movaps xmmword [rsp + 0x80], xmm7
cmp word [rsp + 0x112], 0
je 0x180009ce1
mov rcx, rbx
call fcn.18001244c
inc eax
mov dword [rsp + 0x88], eax
mov dword [rsp + 0x8c], eax
je 0x180009ce1
mov qword [rsp + 0x80], rbx
lea r15, [rsp + 0xe0]
lea r14, [rsp + 0xa0]
lea r12, [rsp + 0x80]
lea r13, [rsp + 0x70]
mov rcx, r15
mov rdx, r14
mov r8, r12
mov r9, r13
call fcn.180010fc2
mov rcx, qword [0x180018e18]
movaps xmm6, xmmword [0x1800140d0]
lea rbx, [rsp + 0x110]
movaps xmmword [rbx], xmm6
movaps xmmword [r13], xmm7
movaps xmm0, xmmword [0x1800149f0]
lea rax, [rsp + 0x90]
movaps xmmword [rax], xmm0
movaps xmm0, xmmword [0x180014a00]
movaps xmmword [r15], xmm0
movapd xmm0, xmmword [0x1800180d0]
addpd xmm0, xmmword [0x180014a10]
movaps xmmword [r12], xmm6
lea r9, [rsp + 0xd0]
movapd xmmword [r9], xmm0
mov rdx, qword [0x1800190b0]
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.18000e7aa
call fcn.180009e58
mov edx, dword [0x18001911c]
mov rcx, rsi
call fcn.18000a912
call fcn.18000c1e4
mov rcx, qword [0x180018e48]
lea r8, [rsp + 0x70]
mov rdx, rbx
call fcn.18000efe6
movss xmm0, dword [rbx]
xorps xmm2, xmm2
ucomiss xmm0, xmm2
jne 0x180009de8
jnp 0x180009e35
movss xmm1, dword [rsp + 0x70]
ucomiss xmm1, xmm2
jne 0x180009df5
jnp 0x180009e35
lea rax, [rsp + 0xc0]
movaps xmmword [rax], xmm6
unpcklps xmm0, xmm1
addps xmm0, xmmword [0x180014a20]
cvtps2pd xmm0, xmm0
lea rdx, [rsp + 0xb0]
movaps xmmword [rdx], xmm0
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x80]
movss xmm2, dword [0x180014a30]
movaps xmm3, xmm2
call fcn.180003004
movaps xmm6, xmmword [rsp + 0x1a0]
movaps xmm7, xmmword [rsp + 0x1b0]
add rsp, 0x1c0
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret