Function at 0x1800161c0
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 [0x18010c040]
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 [0x18010cc54], 0
mov rbx, rcx
je 0x18001622e
cmp byte [0x18020b8b4], 0
jne 0x18001622e
cmp byte [0x18020b8b5], 0
jne 0x18001622e
mov r8b, 1
jmp 0x180016231
xor r8d, r8d
call fcn.180016e10
movss xmm0, dword [0x1800f890c]
comiss xmm0, dword [rbx + 0x50]
movzx edx, al
mov byte [rbx + 0x40], dl
jb 0x180016257
cmp byte [0x18010cc55], 0
je 0x180016257
xor ecx, ecx
jmp 0x18001625c
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 [0x18020a230]
movss xmm1, dword [0x18020a234]
movss dword [rbp - 0x51], xmm0
movss xmm0, dword [0x18020a238]
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.180029990
mov r14, qword [0x18020b9f8]
mov rcx, rax
mov rsi, rax
call fcn.18004a930
test al, al
je 0x180016376
mov rcx, r14
call fcn.18004a930
test al, al
je 0x180016376
lea rcx, [rbp - 0x51]
call fcn.18004a930
test al, al
je 0x180016376
mov rcx, qword [rsi]
call fcn.18004a930
test al, al
je 0x180016376
mov rax, qword [rsi]
mov rcx, qword [0x18020bc00]
mov rcx, qword [rax + rcx*8]
call fcn.18004a930
test al, al
je 0x180016376
mov r9, qword [rsi]
lea r8, [rbp - 0x51]
mov rax, qword [0x18020bc00]
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.180061b80
movsd xmm1, qword [0x1800f88a0]
movaps xmm7, xmm0
movss xmm0, dword [0x18020b8b8]
subss xmm0, dword [rbx + 0x3c]
movss dword [rbx + 0x4c], xmm7
cvtps2pd xmm0, xmm0
call fcn.1800d3c70
movsd xmm1, qword [0x1800f88a0]
movaps xmm8, xmm0
movss xmm0, dword [0x18020b8bc]
subss xmm0, dword [rbx + 0x38]
cvtps2pd xmm0, xmm0
call fcn.1800d3c70
addsd xmm8, xmm0
xorps xmm1, xmm1
ucomisd xmm1, xmm8
ja 0x180016406
xorps xmm0, xmm0
sqrtsd xmm0, xmm8
jmp 0x18001640f
movaps xmm0, xmm8
call fcn.1800d68d8
mulss xmm7, dword [0x1800f8918]
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 0x18001644b
je 0x1800166f6
mov rcx, rbx
call fcn.180015da0
movss xmm7, dword [rbx + 0x94]
movss xmm2, dword [0x1800f8860]
comiss xmm2, xmm7
jae 0x18001646c
mulss xmm7, xmm3
movss xmm4, dword [0x1800f8950]
movss xmm2, dword [0x1800f8960]
movsd qword [rbx + 0x5c], xmm9
mov dword [rbx + 0x64], esi
movss xmm0, dword [rbx + 0x5c]
movss xmm1, dword [rbx + 0x60]
subss xmm1, dword [0x18020a240]
subss xmm0, dword [0x18020a23c]
movd eax, xmm10
comiss xmm1, xmm4
unpcklps xmm0, xmm1
movsd qword [rbp - 0x71], xmm0
movaps xmm0, xmm1
jbe 0x1800164c5
subss xmm1, xmm2
comiss xmm1, xmm4
ja 0x1800164b4
movss dword [rbp - 0x6d], xmm1
movaps xmm0, xmm1
movss xmm3, dword [0x1800f89dc]
comiss xmm3, xmm1
jbe 0x1800164e0
addss xmm0, xmm2
comiss xmm3, xmm0
ja 0x1800164d2
movss dword [rbp - 0x6d], xmm0
movss xmm6, dword [0x1800f89e0]
movd xmm0, eax
comiss xmm0, xmm4
jbe 0x1800164fe
addss xmm0, xmm6
comiss xmm0, xmm4
ja 0x1800164f1
movd eax, xmm0
comiss xmm3, xmm0
jbe 0x180016514
addss xmm0, xmm2
comiss xmm3, xmm0
ja 0x180016503
movss dword [rbp - 0x69], xmm0
mov eax, dword [rbp - 0x69]
movss xmm0, dword [rbp - 0x71]
comiss xmm0, xmm4
jbe 0x18001652e
nop
addss xmm0, xmm6
comiss xmm0, xmm4
ja 0x180016520
movss dword [rbp - 0x71], xmm0
comiss xmm3, xmm0
jbe 0x180016541
addss xmm0, xmm2
comiss xmm3, xmm0
ja 0x180016533
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 0x180016591
nop dword [rax]
subss xmm5, xmm2
comiss xmm5, xmm4
ja 0x180016580
movss dword [rbp - 0x6d], xmm5
movaps xmm0, xmm5
comiss xmm3, xmm5
jbe 0x1800165a4
addss xmm0, xmm2
comiss xmm3, xmm0
ja 0x180016596
movss dword [rbp - 0x6d], xmm0
movd xmm0, eax
comiss xmm0, xmm4
jbe 0x1800165bd
nop dword [rax]
addss xmm0, xmm6
comiss xmm0, xmm4
ja 0x1800165b0
movd eax, xmm0
comiss xmm3, xmm0
jbe 0x1800165d3
addss xmm0, xmm2
comiss xmm3, xmm0
ja 0x1800165c2
movss dword [rbp - 0x69], xmm0
mov eax, dword [rbp - 0x69]
movss xmm0, dword [rbp - 0x71]
comiss xmm0, xmm4
jbe 0x1800165ee
nop dword [rax]
addss xmm0, xmm6
comiss xmm0, xmm4
ja 0x1800165e0
movss dword [rbp - 0x71], xmm0
comiss xmm3, xmm0
jbe 0x180016601
addss xmm0, xmm2
comiss xmm3, xmm0
ja 0x1800165f3
movss dword [rbp - 0x71], xmm0
movsd xmm0, qword [rbp - 0x71]
movsd qword [rbx + 0x80], xmm0
mov dword [rbx + 0x88], eax
movss xmm0, dword [0x18020a23c]
movss xmm1, dword [0x18020a240]
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 0x180016661
nop dword [rax]
subss xmm1, xmm2
comiss xmm1, xmm4
ja 0x180016650
movss dword [rbp - 0x6d], xmm1
movaps xmm0, xmm1
comiss xmm3, xmm1
jbe 0x180016674
addss xmm0, xmm2
comiss xmm3, xmm0
ja 0x180016666
movss dword [rbp - 0x6d], xmm0
movd xmm0, eax
comiss xmm0, xmm4
jbe 0x18001668d
nop dword [rax]
addss xmm0, xmm6
comiss xmm0, xmm4
ja 0x180016680
movd eax, xmm0
comiss xmm3, xmm0
jbe 0x1800166a3
addss xmm0, xmm2
comiss xmm3, xmm0
ja 0x180016692
movss dword [rbp - 0x69], xmm0
mov eax, dword [rbp - 0x69]
movss xmm0, dword [rbp - 0x71]
comiss xmm0, xmm4
jbe 0x1800166be
nop dword [rax]
addss xmm0, xmm6
comiss xmm0, xmm4
ja 0x1800166b0
movss dword [rbp - 0x71], xmm0
comiss xmm3, xmm0
jbe 0x1800166d1
addss xmm0, xmm2
comiss xmm3, xmm0
ja 0x1800166c3
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.1800b0bb0
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