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

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], rbx
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rax - 0x57]
sub rsp, 0xc0
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
mov rax, qword [0x180112020]
xor rax, rsp
mov qword [rbp - 0x29], rax
mov rax, qword [rdx]
mov r15, r8
mov qword [rcx + 0x10], rax
mov rdi, rdx
cmp byte [0x180112b8c], 0
mov rbx, rcx
je 0x180016cce
cmp byte [0x1802118a4], 0
jne 0x180016cce
cmp byte [0x1802118a5], 0
jne 0x180016cce
mov r8b, 1
jmp 0x180016cd1
xor r8d, r8d
call fcn.1800178b0
movss xmm0, dword [0x1800fec14]
comiss xmm0, dword [rbx + 0x50]
movzx edx, al
mov byte [rbx + 0x40], dl
jb 0x180016cf7
cmp byte [0x180112b8d], 0
je 0x180016cf7
xor ecx, ecx
jmp 0x180016cfc
mov ecx, 1
mov dword [rbx + 8], ecx
xorps xmm10, xmm10
mov rax, qword [rdi + 0x38]
lea rcx, [rdx + rdx*2]
mov qword [rbp - 0x39], 0
mov dword [rbp - 0x31], 0
movsd xmm0, qword [rax + 0x24]
movsd qword [rbx + 0x18], xmm0
mov eax, dword [rax + 0x2c]
mov dword [rbx + 0x20], eax
mov rax, qword [rdi + 0x50]
movsd xmm0, qword [rax + 0x18]
movsd qword [rbx + 0x24], xmm0
mov rax, qword [rdi + 0x38]
movsd xmm0, qword [rax + rcx*4]
movsd qword [rbx + 0x2c], xmm0
mov eax, dword [rax + rcx*4 + 8]
mov dword [rbx + 0x34], eax
movsd xmm2, qword [rbx + 0x2c]
mov rax, qword [rdi + 0x50]
movss dword [rbp - 0x45], xmm2
movsd qword [rbp - 0x61], xmm2
movsd xmm0, qword [rax + rdx*8]
movsd qword [rbx + 0x38], xmm0
movss xmm0, dword [0x180210160]
movss xmm1, dword [0x180210164]
movss dword [rbp - 0x51], xmm0
movss xmm0, dword [0x180210168]
movss dword [rbp - 0x49], xmm0
movaps xmm0, xmm2
shufps xmm0, xmm0, 0x55
movss dword [rbp - 0x41], xmm0
movss xmm0, dword [rbx + 0x34]
movss dword [rbp - 0x3d], xmm0
movss dword [rbp - 0x4d], xmm1
call fcn.18002b390
mov r14, qword [0x1802119f0]
mov rcx, rax
mov rsi, rax
call fcn.18004efa0
test al, al
je 0x180016e16
mov rcx, r14
call fcn.18004efa0
test al, al
je 0x180016e16
lea rcx, [rbp - 0x51]
call fcn.18004efa0
test al, al
je 0x180016e16
mov rcx, qword [rsi]
call fcn.18004efa0
test al, al
je 0x180016e16
mov rax, qword [rsi]
mov rcx, qword [0x180211be8]
mov rcx, qword [rax + rcx*8]
call fcn.18004efa0
test al, al
je 0x180016e16
mov r9, qword [rsi]
lea r8, [rbp - 0x51]
mov rax, qword [0x180211be8]
mov rdx, r14
mov rcx, rsi
call qword [r9 + rax*8]
movsd xmm0, qword [r15 + 0xc]
lea rdx, [rbp - 0x71]
mov eax, dword [r15 + 0x14]
lea rcx, [rbp - 0x61]
movsd xmm9, qword [rbp - 0x39]
mov esi, dword [rbp - 0x31]
movsd qword [rbp - 0x71], xmm9
movsd qword [rbp - 0x61], xmm0
mov dword [rbp - 0x69], esi
mov dword [rbp - 0x59], eax
call fcn.180067420
movsd xmm1, qword [0x1800feba8]
movaps xmm7, xmm0
movss xmm0, dword [0x1802118a8]
subss xmm0, dword [rbx + 0x3c]
movss dword [rbx + 0x4c], xmm7
cvtps2pd xmm0, xmm0
call fcn.1800db580
movsd xmm1, qword [0x1800feba8]
movaps xmm8, xmm0
movss xmm0, dword [0x1802118ac]
subss xmm0, dword [rbx + 0x38]
cvtps2pd xmm0, xmm0
call fcn.1800db580
addsd xmm8, xmm0
xorps xmm1, xmm1
ucomisd xmm1, xmm8
ja 0x180016ea6
xorps xmm0, xmm0
sqrtsd xmm0, xmm8
jmp 0x180016eaf
movaps xmm0, xmm8
call fcn.1800de1e8
mulss xmm7, dword [0x1800fec20]
movss xmm3, dword [rbp + 0x7f]
ucomiss xmm3, xmm10
cvtsd2ss xmm0, xmm0
movss dword [rbx + 0x48], xmm0
movss xmm1, dword [rdi + 0x30]
addss xmm7, xmm1
movss dword [rbx + 0x50], xmm1
movss dword [rbx + 0x54], xmm7
movzx eax, byte [rdi + 0x35]
mov byte [rbx + 0x59], al
jp 0x180016eeb
je 0x180017196
mov rcx, rbx
call fcn.180016840
movss xmm2, dword [0x1800feb68]
movss xmm7, dword [rbx + 0x94]
comiss xmm2, xmm7
jae 0x180016f0c
mulss xmm7, xmm3
movss xmm4, dword [0x1800fec58]
movss xmm2, dword [0x1800fec6c]
movsd qword [rbx + 0x5c], xmm9
mov dword [rbx + 0x64], esi
movss xmm0, dword [rbx + 0x5c]
movss xmm1, dword [rbx + 0x60]
subss xmm1, dword [0x180210170]
subss xmm0, dword [0x18021016c]
movd eax, xmm10
comiss xmm1, xmm4
unpcklps xmm0, xmm1
movsd qword [rbp - 0x71], xmm0
movaps xmm0, xmm1
jbe 0x180016f65
subss xmm1, xmm2
comiss xmm1, xmm4
ja 0x180016f54
movss dword [rbp - 0x6d], xmm1
movaps xmm0, xmm1
movss xmm3, dword [0x1800fecec]
comiss xmm3, xmm1
jbe 0x180016f80
addss xmm0, xmm2
comiss xmm3, xmm0
ja 0x180016f72
movss dword [rbp - 0x6d], xmm0
movss xmm6, dword [0x1800fecf0]
movd xmm0, eax
comiss xmm0, xmm4
jbe 0x180016f9e
addss xmm0, xmm6
comiss xmm0, xmm4
ja 0x180016f91
movd eax, xmm0
comiss xmm3, xmm0
jbe 0x180016fb4
addss xmm0, xmm2
comiss xmm3, xmm0
ja 0x180016fa3
movss dword [rbp - 0x69], xmm0
mov eax, dword [rbp - 0x69]
movss xmm0, dword [rbp - 0x71]
comiss xmm0, xmm4
jbe 0x180016fce
nop
addss xmm0, xmm6
comiss xmm0, xmm4
ja 0x180016fc0
movss dword [rbp - 0x71], xmm0
comiss xmm3, xmm0
jbe 0x180016fe1
addss xmm0, xmm2
comiss xmm3, xmm0
ja 0x180016fd3
movss dword [rbp - 0x71], xmm0
movsd xmm0, qword [rbp - 0x71]
movsd qword [rbx + 0x74], xmm0
mov dword [rbx + 0x7c], eax
movss xmm0, dword [rbx + 0x74]
movss xmm5, dword [rbx + 0x78]
movss xmm1, dword [rbx + 0x7c]
divss xmm5, xmm7
divss xmm0, xmm7
comiss xmm5, xmm4
unpcklps xmm0, xmm5
divss xmm1, xmm7
movsd qword [rbp - 0x71], xmm0
movaps xmm0, xmm5
movd eax, xmm1
jbe 0x180017031
nop dword [rax]
subss xmm5, xmm2
comiss xmm5, xmm4
ja 0x180017020
movss dword [rbp - 0x6d], xmm5
movaps xmm0, xmm5
comiss xmm3, xmm5
jbe 0x180017044
addss xmm0, xmm2
comiss xmm3, xmm0
ja 0x180017036
movss dword [rbp - 0x6d], xmm0
movd xmm0, eax
comiss xmm0, xmm4
jbe 0x18001705d
nop dword [rax]
addss xmm0, xmm6
comiss xmm0, xmm4
ja 0x180017050
movd eax, xmm0
comiss xmm3, xmm0
jbe 0x180017073
addss xmm0, xmm2
comiss xmm3, xmm0
ja 0x180017062
movss dword [rbp - 0x69], xmm0
mov eax, dword [rbp - 0x69]
movss xmm0, dword [rbp - 0x71]
comiss xmm0, xmm4
jbe 0x18001708e
nop dword [rax]
addss xmm0, xmm6
comiss xmm0, xmm4
ja 0x180017080
movss dword [rbp - 0x71], xmm0
comiss xmm3, xmm0
jbe 0x1800170a1
addss xmm0, xmm2
comiss xmm3, xmm0
ja 0x180017093
movss dword [rbp - 0x71], xmm0
movsd xmm0, qword [rbp - 0x71]
movsd qword [rbx + 0x80], xmm0
mov dword [rbx + 0x88], eax
movss xmm0, dword [0x18021016c]
movss xmm1, dword [0x180210170]
addss xmm1, dword [rbx + 0x84]
addss xmm0, dword [rbx + 0x80]
movd eax, xmm10
comiss xmm1, xmm4
unpcklps xmm0, xmm1
movsd qword [rbp - 0x71], xmm0
movaps xmm0, xmm1
jbe 0x180017101
nop dword [rax]
subss xmm1, xmm2
comiss xmm1, xmm4
ja 0x1800170f0
movss dword [rbp - 0x6d], xmm1
movaps xmm0, xmm1
comiss xmm3, xmm1
jbe 0x180017114
addss xmm0, xmm2
comiss xmm3, xmm0
ja 0x180017106
movss dword [rbp - 0x6d], xmm0
movd xmm0, eax
comiss xmm0, xmm4
jbe 0x18001712d
nop dword [rax]
addss xmm0, xmm6
comiss xmm0, xmm4
ja 0x180017120
movd eax, xmm0
comiss xmm3, xmm0
jbe 0x180017143
addss xmm0, xmm2
comiss xmm3, xmm0
ja 0x180017132
movss dword [rbp - 0x69], xmm0
mov eax, dword [rbp - 0x69]
movss xmm0, dword [rbp - 0x71]
comiss xmm0, xmm4
jbe 0x18001715e
nop dword [rax]
addss xmm0, xmm6
comiss xmm0, xmm4
ja 0x180017150
movss dword [rbp - 0x71], xmm0
comiss xmm3, xmm0
jbe 0x180017171
addss xmm0, xmm2
comiss xmm3, xmm0
ja 0x180017163
movss dword [rbp - 0x71], xmm0
movsd xmm0, qword [rbp - 0x71]
movsd qword [rbx + 0x68], xmm0
mov dword [rbx + 0x70], eax
movss xmm1, dword [rbx + 0x6c]
movss xmm0, dword [rbx + 0x68]
unpcklps xmm0, xmm1
movsd qword [rbx + 0x68], xmm0
movss dword [rbx + 0x70], xmm10
mov rcx, qword [rbp - 0x29]
xor rcx, rsp
call fcn.1800b7800
lea r11, [rsp + 0xc0]
mov rbx, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
mov rsp, r11
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret