Function at 0x18012db50
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xf0
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
mov rax, qword [0x180515618]
xor rax, rsp
mov qword [rsp + 0xb0], rax
mov rdi, rcx
mov qword [rsp + 0x38], rcx
xor r13d, r13d
mov dword [rsp + 0x30], r13d
mov qword [rcx], r13
mov qword [rcx + 8], r13
mov qword [rcx + 0x10], r13
mov dword [rsp + 0x30], 1
mov rcx, qword [rcx + 0x10]
sub rcx, qword [rdi]
movabs rax, 0x4ec4ec4ec4ec4ec5
imul rcx
sar rdx, 5
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp rdx, 6
jae 0x18012dbe2
lea edx, [r13 + 6]
mov rcx, rdi
call fcn.1801315e0
nop
call fcn.18012f740
mov r12d, eax
mov dword [rsp + 0x20], 0
mov dword [rsp + 0x28], 0
lea rdx, [rsp + 0x28]
lea rcx, [rsp + 0x20]
call fcn.18012f820
call fcn.18012f9b0
mov r14d, eax
mov rax, qword [0x18051aff0]
mov rcx, qword [rax]
mov r15, qword [rcx + 0x110]
mov esi, r13d
mov dword [rsp + 0x34], r13d
movss xmm6, dword [rsp + 0x20]
movss xmm7, dword [rsp + 0x28]
movsd xmm8, qword [0x1801eb2d8]
nop
cmp esi, r14d
jge 0x18012dec1
movsxd rax, esi
mov rbx, qword [r15 + rax*8]
mov qword [rsp + 0x40], 0xffffffffffffffff
mov dword [rsp + 0x48], r13d
mov dword [rsp + 0x4c], 0xffffffff
movdqa xmm0, xmmword [0x1801eb300]
movdqa xmmword [rsp + 0x50], xmm0
movdqa xmm1, xmmword [0x1801eb2f0]
movdqa xmmword [rsp + 0x60], xmm1
mov eax, 1
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x74], 0
mov dword [rsp + 0x78], 0
mov dword [rsp + 0x7c], 0
mov dword [rsp + 0x80], 0x42c80000
mov qword [rsp + 0x88], r13
mov qword [rsp + 0x98], r13
mov qword [rsp + 0xa0], r13
mov qword [rsp + 0x98], r13
mov qword [rsp + 0xa0], send
mov byte [rsp + 0x88], 0
mov qword [rsp + 0x98], r13
mov byte [rsp + 0x88], 0
mov eax, dword [rbx]
mov dword [rsp + 0x40], eax
mov ecx, dword [rbx + 4]
mov dword [rsp + 0x44], ecx
mov eax, dword [rbx + 8]
mov dword [rsp + 0x54], eax
movzx eax, word [rbx + 0xc]
mov dword [rsp + 0x58], eax
movzx eax, word [rbx + 0xe]
mov dword [rsp + 0x5c], eax
lea rdx, [rbx + 0x40]
test rdx, rdx
je 0x18012dd4b
cmp byte [rdx], 0
je 0x18012dd4b
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x18012dd30
lea rcx, [rsp + 0x88]
call fcn.1800d0120
mov ecx, dword [rsp + 0x44]
mov eax, dword [rbx + 0x60]
mov dword [rsp + 0x64], eax
movzx eax, byte [rbx + 0x64]
mov dword [rsp + 0x68], eax
mov eax, dword [rbx + 0x68]
mov dword [rsp + 0x60], eax
movss xmm0, dword [rbx + 0x70]
movss dword [rsp + 0x74], xmm0
movss xmm1, dword [rbx + 0x74]
movss dword [rsp + 0x78], xmm1
cmp r12d, ecx
jne 0x18012dd8e
movaps xmm0, xmm6
movss dword [rsp + 0x74], xmm6
movaps xmm1, xmm7
movss dword [rsp + 0x78], xmm7
movaps xmm3, xmm7
movaps xmm2, xmm6
call fcn.180111330
movss dword [rsp + 0x7c], xmm0
mov ecx, dword [rbx + 0x78]
mov dword [rsp + 0x6c], ecx
mov eax, dword [rbx + 0x7c]
mov dword [rsp + 0x70], eax
test eax, eax
jle 0x18012ddd8
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm1, xmm0
cvtps2pd xmm1, xmm1
mulsd xmm1, xmm8
cvtpd2ps xmm0, xmm1
movss dword [rsp + 0x80], xmm0
mov dword [rsp + 0x4c], esi
mov eax, dword [rsp + 0x48]
test esi, esi
mov ecx, 1
cmove eax, ecx
mov dword [rsp + 0x48], eax
mov rdx, qword [rdi + 8]
cmp rdx, qword [rdi + 0x10]
je 0x18012de9e
mov qword [rsp + 0x28], rdx
mov rax, qword [rsp + 0x40]
mov qword [rdx], rax
mov eax, dword [rsp + 0x48]
mov dword [rdx + 8], eax
mov eax, dword [rsp + 0x4c]
mov dword [rdx + 0xc], eax
mov eax, dword [rsp + 0x50]
mov dword [rdx + 0x10], eax
mov eax, dword [rsp + 0x54]
mov dword [rdx + 0x14], eax
mov eax, dword [rsp + 0x58]
mov dword [rdx + 0x18], eax
mov eax, dword [rsp + 0x5c]
mov dword [rdx + 0x1c], eax
mov eax, dword [rsp + 0x60]
mov dword [rdx + 0x20], eax
mov eax, dword [rsp + 0x64]
mov dword [rdx + 0x24], eax
mov eax, dword [rsp + 0x68]
mov dword [rdx + 0x28], eax
mov eax, dword [rsp + 0x6c]
mov dword [rdx + 0x2c], eax
mov eax, dword [rsp + 0x70]
mov dword [rdx + 0x30], eax
movss xmm0, dword [rsp + 0x74]
movss dword [rdx + 0x34], xmm0
movss xmm1, dword [rsp + 0x78]
movss dword [rdx + 0x38], xmm1
movss xmm0, dword [rsp + 0x7c]
movss dword [rdx + 0x3c], xmm0
movss xmm1, dword [rsp + 0x80]
movss dword [rdx + 0x40], xmm1
lea rcx, [rdx + 0x48]
lea rdx, [rsp + 0x88]
call fcn.1800e3f40
nop
add qword [rdi + 8], 0x68
jmp 0x18012deac
lea r8, [rsp + 0x40]
mov rcx, rdi
call fcn.18012bd20
nop
lea rcx, [rsp + 0x40]
call fcn.18012ce50
inc esi
mov dword [rsp + 0x34], esi
jmp 0x18012dc40
mov rax, rdi
jmp 0x18012decb
mov rcx, qword [rsp + 0xb0]
xor rcx, rsp
call fcn.180169060
lea r11, [rsp + 0xf0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret