Function at 0x180016140
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 [0x18011b040]
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 [0x18011be04], 0
mov rbx, rcx
je 0x1800161ae
cmp byte [0x18021b4e4], 0
jne 0x1800161ae
cmp byte [0x18021b4e5], 0
jne 0x1800161ae
mov r8b, 1
jmp 0x1800161b1
xor r8d, r8d
call fcn.180016d90
movss xmm0, dword [0x1801063cc]
comiss xmm0, dword [rbx + 0x50]
movzx edx, al
mov byte [rbx + 0x40], dl
jb 0x1800161d7
cmp byte [0x18011be05], 0
je 0x1800161d7
xor ecx, ecx
jmp 0x1800161dc
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 [0x1802193f0]
movss xmm1, dword [0x1802193f4]
movss dword [rbp - 0x51], xmm0
movss xmm0, dword [0x1802193f8]
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.18002ac40
mov r14, qword [0x18021b650]
mov rcx, rax
mov rsi, rax
call fcn.18004bab0
test al, al
je 0x1800162f6
mov rcx, r14
call fcn.18004bab0
test al, al
je 0x1800162f6
lea rcx, [rbp - 0x51]
call fcn.18004bab0
test al, al
je 0x1800162f6
mov rcx, qword [rsi]
call fcn.18004bab0
test al, al
je 0x1800162f6
mov rax, qword [rsi]
mov rcx, qword [0x18021b848]
mov rcx, qword [rax + rcx*8]
call fcn.18004bab0
test al, al
je 0x1800162f6
mov r9, qword [rsi]
lea r8, [rbp - 0x51]
mov rax, qword [0x18021b848]
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.180062a50
movsd xmm1, qword [0x180106360]
movaps xmm7, xmm0
movss xmm0, dword [0x18021b4e8]
subss xmm0, dword [rbx + 0x3c]
movss dword [rbx + 0x4c], xmm7
cvtps2pd xmm0, xmm0
call fcn.1800e0450
movsd xmm1, qword [0x180106360]
movaps xmm8, xmm0
movss xmm0, dword [0x18021b4ec]
subss xmm0, dword [rbx + 0x38]
cvtps2pd xmm0, xmm0
call fcn.1800e0450
addsd xmm8, xmm0
xorps xmm1, xmm1
ucomisd xmm1, xmm8
ja 0x180016386
xorps xmm0, xmm0
sqrtsd xmm0, xmm8
jmp 0x18001638f
movaps xmm0, xmm8
call fcn.1800e30b8
mulss xmm7, dword [0x1801063d8]
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 0x1800163cb
je 0x180016676
mov rcx, rbx
call fcn.180015d20
movss xmm7, dword [rbx + 0x94]
movss xmm2, dword [0x180106320]
comiss xmm2, xmm7
jae 0x1800163ec
mulss xmm7, xmm3
movss xmm4, dword [0x180106410]
movss xmm2, dword [0x180106424]
movsd qword [rbx + 0x5c], xmm9
mov dword [rbx + 0x64], esi
movss xmm0, dword [rbx + 0x5c]
movss xmm1, dword [rbx + 0x60]
subss xmm1, dword [0x180219400]
subss xmm0, dword [0x1802193fc]
movd eax, xmm10
comiss xmm1, xmm4
unpcklps xmm0, xmm1
movsd qword [rbp - 0x71], xmm0
movaps xmm0, xmm1
jbe 0x180016445
subss xmm1, xmm2
comiss xmm1, xmm4
ja 0x180016434
movss dword [rbp - 0x6d], xmm1
movaps xmm0, xmm1
movss xmm3, dword [0x1801064a4]
comiss xmm3, xmm1
jbe 0x180016460
addss xmm0, xmm2
comiss xmm3, xmm0
ja 0x180016452
movss dword [rbp - 0x6d], xmm0
movss xmm6, dword [0x1801064a8]
movd xmm0, eax
comiss xmm0, xmm4
jbe 0x18001647e
addss xmm0, xmm6
comiss xmm0, xmm4
ja 0x180016471
movd eax, xmm0
comiss xmm3, xmm0
jbe 0x180016494
addss xmm0, xmm2
comiss xmm3, xmm0
ja 0x180016483
movss dword [rbp - 0x69], xmm0
mov eax, dword [rbp - 0x69]
movss xmm0, dword [rbp - 0x71]
comiss xmm0, xmm4
jbe 0x1800164ae
nop
addss xmm0, xmm6
comiss xmm0, xmm4
ja 0x1800164a0
movss dword [rbp - 0x71], xmm0
comiss xmm3, xmm0
jbe 0x1800164c1
addss xmm0, xmm2
comiss xmm3, xmm0
ja 0x1800164b3
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 0x180016511
nop dword [rax]
subss xmm5, xmm2
comiss xmm5, xmm4
ja 0x180016500
movss dword [rbp - 0x6d], xmm5
movaps xmm0, xmm5
comiss xmm3, xmm5
jbe 0x180016524
addss xmm0, xmm2
comiss xmm3, xmm0
ja 0x180016516
movss dword [rbp - 0x6d], xmm0
movd xmm0, eax
comiss xmm0, xmm4
jbe 0x18001653d
nop dword [rax]
addss xmm0, xmm6
comiss xmm0, xmm4
ja 0x180016530
movd eax, xmm0
comiss xmm3, xmm0
jbe 0x180016553
addss xmm0, xmm2
comiss xmm3, xmm0
ja 0x180016542
movss dword [rbp - 0x69], xmm0
mov eax, dword [rbp - 0x69]
movss xmm0, dword [rbp - 0x71]
comiss xmm0, xmm4
jbe 0x18001656e
nop dword [rax]
addss xmm0, xmm6
comiss xmm0, xmm4
ja 0x180016560
movss dword [rbp - 0x71], xmm0
comiss xmm3, xmm0
jbe 0x180016581
addss xmm0, xmm2
comiss xmm3, xmm0
ja 0x180016573
movss dword [rbp - 0x71], xmm0
movsd xmm0, qword [rbp - 0x71]
movsd qword [rbx + 0x80], xmm0
mov dword [rbx + 0x88], eax
movss xmm0, dword [0x1802193fc]
movss xmm1, dword [0x180219400]
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 0x1800165e1
nop dword [rax]
subss xmm1, xmm2
comiss xmm1, xmm4
ja 0x1800165d0
movss dword [rbp - 0x6d], xmm1
movaps xmm0, xmm1
comiss xmm3, xmm1
jbe 0x1800165f4
addss xmm0, xmm2
comiss xmm3, xmm0
ja 0x1800165e6
movss dword [rbp - 0x6d], xmm0
movd xmm0, eax
comiss xmm0, xmm4
jbe 0x18001660d
nop dword [rax]
addss xmm0, xmm6
comiss xmm0, xmm4
ja 0x180016600
movd eax, xmm0
comiss xmm3, xmm0
jbe 0x180016623
addss xmm0, xmm2
comiss xmm3, xmm0
ja 0x180016612
movss dword [rbp - 0x69], xmm0
mov eax, dword [rbp - 0x69]
movss xmm0, dword [rbp - 0x71]
comiss xmm0, xmm4
jbe 0x18001663e
nop dword [rax]
addss xmm0, xmm6
comiss xmm0, xmm4
ja 0x180016630
movss dword [rbp - 0x71], xmm0
comiss xmm3, xmm0
jbe 0x180016651
addss xmm0, xmm2
comiss xmm3, xmm0
ja 0x180016643
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.1800b4e40
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