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

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
push rdi
sub rsp, 0x50
mov ebx, dword [rsp + 0x88]
mov r11, r8
mov rdi, rdx
mov r10, rcx
test ebx, ebx
jle 0x18009e331
mov qword [rax + 8], rbp
mov qword [rax + 0x10], rsi
mov rsi, qword [rsp + 0x80]
movaps xmmword [rax - 0x18], xmm6
movaps xmmword [rax - 0x28], xmm7
movaps xmmword [rax - 0x38], xmm8
movss xmm8, dword [0x180392fb0]
sub rdi, r8
sub r9, r8
sub rsi, r8
movaps xmmword [rax - 0x48], xmm9
xor ebp, ebp
movss xmm9, dword [0x180393198]
mov r8d, dword [r10 + 8]
movsxd rdx, dword [r10 + 4]
dec ebx
mov eax, r8d
sub r8d, dword [r10 + 0x10]
sub eax, dword [r10 + 0xc]
movsxd rcx, eax
mov rax, qword [r10 + 0xd8]
and rcx, rdx
movss xmm6, dword [rax + rcx*4]
mov rax, qword [r10 + 0xe0]
movsxd rcx, r8d
and rcx, rdx
movss xmm7, dword [rax + rcx*4]
cmp byte [r10 + 0x40], bpl
je 0x18009e145
mov eax, dword [r10 + 0x58]
cmp dword [r10 + 0x5c], eax
jl 0x18009e014
mov dword [r10 + 0x5c], ebp
movsxd rcx, dword [r10 + 0x5c]
mov rax, qword [r10 + 0x50]
movss xmm1, dword [rax + rcx*4]
subss xmm1, xmm8
movaps xmm0, xmm1
subss xmm1, xmm6
mulss xmm0, dword [r10 + 0x48]
addss xmm0, xmm6
movss dword [rax + rcx*4], xmm0
inc dword [r10 + 0x5c]
mov eax, dword [r10 + 0x88]
cmp dword [r10 + 0x8c], eax
jl 0x18009e057
mov dword [r10 + 0x8c], ebp
movsxd rcx, dword [r10 + 0x8c]
mov rax, qword [r10 + 0x80]
movss xmm2, dword [rax + rcx*4]
subss xmm2, xmm8
movaps xmm0, xmm2
subss xmm2, xmm7
mulss xmm0, dword [r10 + 0x78]
addss xmm0, xmm7
movss dword [rax + rcx*4], xmm0
inc dword [r10 + 0x8c]
mov eax, dword [r10 + 0x70]
cmp dword [r10 + 0x74], eax
jl 0x18009e09a
mov dword [r10 + 0x74], ebp
mov rax, qword [r10 + 0x68]
movsxd rcx, dword [r10 + 0x74]
movss xmm5, dword [rax + rcx*4]
subss xmm5, xmm8
movaps xmm0, xmm5
subss xmm5, xmm1
mulss xmm0, dword [r10 + 0x60]
addss xmm0, xmm1
movss dword [rax + rcx*4], xmm0
inc dword [r10 + 0x74]
mov eax, dword [r10 + 0xa0]
cmp dword [r10 + 0xa4], eax
jl 0x18009e0dd
mov dword [r10 + 0xa4], ebp
movsxd rcx, dword [r10 + 0xa4]
mov rax, qword [r10 + 0x98]
movss xmm4, dword [rax + rcx*4]
subss xmm4, xmm8
movaps xmm0, xmm4
subss xmm4, xmm2
mulss xmm0, dword [r10 + 0x90]
addss xmm0, xmm2
movss dword [rax + rcx*4], xmm0
inc dword [r10 + 0xa4]
movss xmm2, dword [r10 + 0x34]
movss xmm3, dword [r10 + 0x30]
movaps xmm1, xmm2
movaps xmm0, xmm3
mulss xmm2, xmm7
mulss xmm1, xmm6
mulss xmm0, xmm5
mulss xmm3, xmm4
movaps xmm7, xmm2
movaps xmm6, xmm1
addss xmm7, xmm3
addss xmm6, xmm0
mov rax, qword [r10 + 0xe8]
mulss xmm6, dword [rax + 0xc]
movss xmm0, dword [rax + 8]
mulss xmm0, dword [rax + 0x10]
subss xmm6, xmm0
addss xmm6, xmm8
movss dword [rax + 0x10], xmm6
mov rax, qword [r10 + 0xf0]
movaps xmm5, xmm6
mulss xmm7, dword [rax + 0xc]
movss xmm0, dword [rax + 8]
mulss xmm0, dword [rax + 0x10]
subss xmm7, xmm0
addss xmm7, xmm8
movss dword [rax + 0x10], xmm7
mov rax, qword [r10 + 0xf8]
subss xmm5, dword [rax + 0x10]
movss xmm0, dword [rax + 8]
movss dword [rax + 0x10], xmm6
movaps xmm6, xmm7
mulss xmm0, dword [rax + 0x14]
addss xmm5, xmm8
mulss xmm5, dword [rax + 0xc]
subss xmm5, xmm0
movss dword [rax + 0x14], xmm5
movss dword [rsp + 0x88], xmm5
mov rax, qword [r10 + 0x100]
subss xmm6, dword [rax + 0x10]
movss xmm0, dword [rax + 8]
movss dword [rax + 0x10], xmm7
mulss xmm0, dword [rax + 0x14]
addss xmm6, xmm8
mulss xmm6, dword [rax + 0xc]
subss xmm6, xmm0
movss dword [rax + 0x14], xmm6
movss xmm2, dword [r11]
movss xmm3, dword [r10 + 0x1c]
movsxd rcx, dword [r10 + 8]
mov rax, qword [r10 + 0xd8]
movaps xmm0, xmm2
movaps xmm4, xmm3
mulss xmm3, xmm6
mulss xmm0, dword [r10 + 0x3c]
mulss xmm4, xmm5
movss xmm1, dword [r10 + 0x38]
movss dword [rsp], xmm6
addss xmm4, xmm0
movaps xmm0, xmm1
mulss xmm1, dword [rdi + r11]
subss xmm0, xmm9
mulss xmm0, xmm2
addss xmm0, xmm1
addss xmm0, xmm3
movss dword [rax + rcx*4], xmm0
movsxd rcx, dword [r10 + 8]
mov rax, qword [r10 + 0xe0]
movss dword [rax + rcx*4], xmm4
mov eax, dword [r10 + 8]
inc eax
and eax, dword [r10 + 4]
mov dword [r10 + 8], eax
mov eax, dword [rsp + 0x88]
and eax, 0x70000000
cmp eax, 0x20000000
ja 0x18009e29c
mov eax, dword [rsp]
and eax, 0x70000000
cmp eax, 0x20000000
ja 0x18009e29c
inc dword [r10 + 0x18]
xorps xmm2, xmm2
xorps xmm3, xmm3
jmp 0x18009e2ca
movss xmm1, dword [r10 + 0x2c]
movss xmm2, dword [r10 + 0x28]
mov dword [r10 + 0x18], ebp
movaps xmm3, xmm2
movaps xmm0, xmm1
mulss xmm2, xmm6
mulss xmm3, xmm5
mulss xmm0, xmm6
mulss xmm1, xmm5
addss xmm3, xmm0
addss xmm2, xmm1
movss xmm0, dword [r10 + 0x24]
mulss xmm3, dword [r10 + 0x20]
add r11, 4
mulss xmm0, dword [rdi + r11 - 4]
addss xmm3, xmm0
movss dword [r9 + r11 - 4], xmm3
movss xmm0, dword [r10 + 0x24]
mulss xmm2, dword [r10 + 0x20]
mulss xmm0, dword [r11 - 4]
addss xmm2, xmm0
movss dword [rsi + r11 - 4], xmm2
test ebx, ebx
jg 0x18009dfc3
movaps xmm9, xmmword [rsp + 0x10]
movaps xmm8, xmmword [rsp + 0x20]
movaps xmm7, xmmword [rsp + 0x30]
mov rsi, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x60]
movaps xmm6, xmmword [rsp + 0x40]
mov rbx, qword [rsp + 0x70]
add rsp, 0x50
pop rdi
ret