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

Disassembly:
push rbx
push r12
push r13
push r14
push r15
sub rsp, 0x100
mov rax, qword [rcx + 0x60]
movsxd r9, edx
mov r14, rcx
lea rcx, [rax + r9*4]
mov rax, qword [r14 + 0x68]
movaps xmmword [rsp + 0xb0], xmm9
movaps xmmword [rsp + 0xa0], xmm10
movaps xmmword [rsp + 0x80], xmm12
movss xmm12, dword [0x180393268]
xorps xmm10, xmm10
lea rdx, [rax + r9*4]
mov rax, qword [r14 + 0x70]
mov qword [rsp + 0x20], rcx
lea r10, [rax + r9*4]
mov rax, qword [r14 + 0x78]
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x30], r10
lea r10, [rax + r9*4]
mov rax, qword [r14 + 0xa0]
lea r15, [rax + r9*4]
mov rax, qword [r14 + 0xb8]
mov qword [rsp + 0x38], r10
lea r13, [rax + r9*4]
mov rax, qword [r14 + 0xa8]
movss xmm9, dword [r15]
comiss xmm9, xmm10
lea rbx, [rax + r9*4]
mov rax, qword [r14 + 0xd0]
lea r10, [rax + r9*4]
mov rax, qword [r14 + 0x80]
mov qword [rsp + 0x40], rbx
lea r11, [rax + r9*4]
mov rax, qword [r14 + 0x88]
mov qword [rsp + 0x130], r10
lea r12, [rax + r9*4]
mov qword [rsp + 0x148], r11
jae 0x180256dbb
movaps xmm9, xmm10
jmp 0x180256dc5
comiss xmm9, xmm12
jbe 0x180256dc5
movaps xmm9, xmm12
test r8d, r8d
jle 0x1802576a3
movss xmm1, dword [0x180392fb4]
mov qword [rsp + 0x138], rbp
mov qword [rsp + 0xf8], rsi
mov qword [rsp + 0xf0], rdi
lea rdi, [0x1804230a0]
movaps xmmword [rsp + 0xe0], xmm6
movaps xmmword [rsp + 0xd0], xmm7
movaps xmmword [rsp + 0xc0], xmm8
movaps xmmword [rsp + 0x90], xmm11
movaps xmmword [rsp + 0x70], xmm13
movaps xmmword [rsp + 0x60], xmm14
movss xmm11, dword [0x18039326c]
movss xmm14, dword [0x1803938d0]
movss xmm13, dword [0x180393198]
movaps xmmword [rsp + 0x50], xmm15
movss xmm15, dword [0x180393100]
nop dword [rax]
movss xmm0, dword [rcx]
mov rcx, qword [r14 + 0x90]
movsxd r9, dword [r14 + 0xc4]
addss xmm0, xmm1
dec r8d
movaps xmm7, xmm9
movaps xmm8, xmm9
mov dword [rsp + 0x140], r8d
mov r8, qword [r14 + 0x98]
mulss xmm7, dword [r14 + 0x178]
mulss xmm8, dword [r14 + 0x17c]
addss xmm7, xmm0
movss xmm0, dword [rdx]
mov rdx, qword [r14 + 0x138]
addss xmm0, xmm1
movaps xmm6, xmm7
addss xmm8, xmm0
movss xmm0, dword [rdx + 0x30]
movss xmm1, dword [rdx + 0x40]
movss xmm3, dword [rdx + 0x50]
mov eax, dword [rdx + 0x28]
mov dword [rdx + 0x2c], eax
mov eax, dword [rdx + 0x38]
mov dword [rdx + 0x3c], eax
mov eax, dword [rdx + 0x48]
movss xmm5, dword [rdx + 0x60]
movss dword [rdx + 0x34], xmm0
movss dword [rdx + 0x28], xmm7
mov dword [rdx + 0x4c], eax
mov eax, dword [rdx + 0x58]
movss dword [rdx + 0x38], xmm7
movss dword [rdx + 0x48], xmm8
movss dword [rdx + 0x58], xmm8
mov dword [rdx + 0x5c], eax
subss xmm6, xmm0
movss dword [rdx + 0x44], xmm1
movss dword [rdx + 0x54], xmm3
movaps xmm0, xmm8
mulss xmm6, dword [rdx]
movss dword [rdx + 0x64], xmm5
subss xmm8, xmm5
subss xmm7, xmm1
mulss xmm8, dword [rdx + 0x14]
mulss xmm7, dword [rdx + 0x14]
addss xmm6, dword [rdx + 0x2c]
addss xmm8, dword [rdx + 0x5c]
addss xmm7, dword [rdx + 0x3c]
movss dword [rdx + 0x60], xmm8
movss dword [rdx + 0x40], xmm7
movss dword [rdx + 0x30], xmm6
subss xmm0, xmm3
mulss xmm0, dword [rdx]
addss xmm0, dword [rdx + 0x4c]
movss dword [rdx + 0x50], xmm0
movss dword [rcx + r9*4], xmm6
mov eax, dword [rdx + 0x40]
mov dword [rcx + r9*4 + 4], eax
mov eax, dword [rdx + 0x50]
mov dword [r8 + r9*4], eax
mov eax, dword [rdx + 0x60]
mov dword [r8 + r9*4 + 4], eax
mov ecx, dword [r14 + 0xdc]
lea eax, [rcx - 1]
mov dword [r14 + 0xdc], eax
test ecx, ecx
jne 0x1802572c5
mov dword [r14 + 0xdc], 7
cmp byte [r14 + 0x184], cl
je 0x180256fc1
movss xmm1, dword [r12]
mov rcx, r14
call fcn.18009c460
mov r10, qword [rsp + 0x130]
mov r11, qword [rsp + 0x148]
add r12, 0x20
mov r9, qword [r14 + 0x140]
xorps xmm2, xmm2
mov eax, dword [r9 + 0x18]
movzx ecx, byte [r9 + 0x1c]
add dword [r9 + 0x14], eax
mov eax, dword [r9 + 0x20]
mov edx, dword [r9 + 0x14]
and eax, edx
mov r8d, edx
shr r8, cl
cvtsi2ss xmm2, rax
movss xmm0, dword [rdi + r8*4 + 4]
mulss xmm2, dword [r9 + 0x24]
subss xmm0, dword [rdi + r8*4]
mulss xmm2, xmm0
addss xmm2, dword [rdi + r8*4]
subss xmm2, dword [r9 + 0x28]
mulss xmm2, dword [r9 + 0x30]
movss dword [r9 + 0x2c], xmm2
mov r9, qword [r14 + 0x148]
xorps xmm2, xmm2
mov eax, dword [r9 + 0x18]
movzx ecx, byte [r9 + 0x1c]
add dword [r9 + 0x14], eax
mov eax, dword [r9 + 0x20]
mov edx, dword [r9 + 0x14]
and eax, edx
mov r8d, edx
shr r8, cl
cvtsi2ss xmm2, rax
movss xmm0, dword [rdi + r8*4 + 4]
mulss xmm2, dword [r9 + 0x24]
subss xmm0, dword [rdi + r8*4]
mulss xmm2, xmm0
addss xmm2, dword [rdi + r8*4]
subss xmm2, dword [r9 + 0x28]
mulss xmm2, dword [r9 + 0x30]
movss dword [r9 + 0x2c], xmm2
mov r9, qword [r14 + 0x150]
xorps xmm2, xmm2
mov eax, dword [r9 + 0x18]
movzx ecx, byte [r9 + 0x1c]
add dword [r9 + 0x14], eax
mov edx, dword [r9 + 0x14]
mov eax, dword [r9 + 0x20]
and eax, edx
mov r8d, edx
shr r8, cl
cvtsi2ss xmm2, rax
movss xmm0, dword [rdi + r8*4 + 4]
mulss xmm2, dword [r9 + 0x24]
subss xmm0, dword [rdi + r8*4]
mulss xmm2, xmm0
addss xmm2, dword [rdi + r8*4]
subss xmm2, dword [r9 + 0x28]
mulss xmm2, dword [r9 + 0x30]
movss dword [r9 + 0x2c], xmm2
mov r9, qword [r14 + 0x158]
xorps xmm2, xmm2
mov eax, dword [r9 + 0x18]
movzx ecx, byte [r9 + 0x1c]
add dword [r9 + 0x14], eax
mov edx, dword [r9 + 0x14]
mov eax, dword [r9 + 0x20]
and eax, edx
mov r8d, edx
shr r8, cl
cvtsi2ss xmm2, rax
movss xmm0, dword [rdi + r8*4 + 4]
mulss xmm2, dword [r9 + 0x24]
subss xmm0, dword [rdi + r8*4]
mulss xmm2, xmm0
addss xmm2, dword [rdi + r8*4]
subss xmm2, dword [r9 + 0x28]
mulss xmm2, dword [r9 + 0x30]
movss dword [r9 + 0x2c], xmm2
movss xmm4, dword [rbx]
comiss xmm4, xmm10
jae 0x18025713d
movaps xmm4, xmm10
jmp 0x180257147
comiss xmm4, xmm11
jbe 0x180257147
movaps xmm4, xmm11
movaps xmm1, xmm11
movaps xmm3, xmm4
mulss xmm3, xmm14
subss xmm1, xmm4
subss xmm3, xmm15
movaps xmm0, xmm1
mulss xmm0, xmm14
mulss xmm3, xmm4
subss xmm0, xmm15
addss xmm3, dword [0x1803933bc]
mulss xmm0, xmm1
addss xmm0, dword [0x1803933bc]
mulss xmm3, xmm4
mulss xmm3, dword [0x180393370]
mulss xmm0, xmm1
movss dword [r14 + 0x11c], xmm3
movss dword [r14 + 0x118], xmm0
movss xmm9, dword [r15]
comiss xmm9, xmm10
jae 0x1802571b4
movaps xmm9, xmm10
jmp 0x1802571be
comiss xmm9, xmm12
jbe 0x1802571be
movaps xmm9, xmm12
movss xmm4, dword [r13]
comiss xmm4, xmm10
jae 0x1802571d0
movaps xmm4, xmm10
jmp 0x1802571da
comiss xmm4, xmm11
jbe 0x1802571da
movaps xmm4, xmm11
movaps xmm0, xmm9
movaps xmm2, xmm11
mulss xmm3, xmm13
mulss xmm0, xmm13
movaps xmm1, xmm11
subss xmm1, xmm4
subss xmm2, xmm0
movaps xmm0, xmm4
addss xmm0, xmm11
mulss xmm2, xmm3
mulss xmm1, xmm2
mulss xmm0, xmm2
movss dword [r14 + 0x124], xmm1
movss dword [r14 + 0x120], xmm0
mov eax, dword [r10]
mov dword [r14 + 0x12c], eax
movss xmm0, dword [r11]
movss xmm3, dword [r14 + 0x12c]
movaps xmm1, xmm0
movaps xmm2, xmm3
subss xmm2, dword [0x180393098]
mulss xmm1, xmm0
mulss xmm1, xmm0
mulss xmm1, xmm0
mulss xmm1, dword [r14 + 0x134]
comiss xmm1, xmm10
movss dword [r14 + 0x128], xmm1
jae 0x18025726e
movaps xmm2, xmm10
jmp 0x180257276
comiss xmm1, xmm2
ja 0x180257276
movaps xmm2, xmm1
movss xmm1, dword [r14 + 0x180]
add rbx, 0x20
add r11, 0x20
add r10, 0x20
add r13, 0x20
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x148], r11
mov qword [rsp + 0x130], r10
add r15, 0x20
movaps xmm0, xmm1
mulss xmm1, xmm2
mulss xmm0, xmm3
movss dword [r14 + 0x128], xmm1
movss dword [r14 + 0x12c], xmm0
mov rax, qword [r14 + 0x140]
movss xmm6, dword [rax + 0x2c]
addss xmm6, dword [rax + 0x28]
movss dword [rax + 0x28], xmm6
mov rax, qword [r14 + 0x148]
mulss xmm6, dword [r14 + 0x128]
movss xmm2, dword [rax + 0x2c]
addss xmm2, dword [rax + 0x28]
addss xmm6, dword [r14 + 0x12c]
movss dword [rax + 0x28], xmm2
mov rax, qword [r14 + 0x150]
mulss xmm2, dword [r14 + 0x128]
movss xmm5, dword [rax + 0x2c]
addss xmm5, dword [rax + 0x28]
addss xmm2, dword [r14 + 0x12c]
movss dword [rax + 0x28], xmm5
movss xmm0, dword [r14 + 0x12c]
cvttss2si ecx, xmm2
mov rax, qword [r14 + 0x158]
mulss xmm5, dword [r14 + 0x128]
mulss xmm0, dword [0x180393370]
movss xmm1, dword [rax + 0x2c]
addss xmm5, xmm0
addss xmm1, dword [rax + 0x28]
cvttss2si edx, xmm5
movss dword [rax + 0x28], xmm1
movss xmm0, dword [r14 + 0x12c]
cvttss2si eax, xmm6
mulss xmm1, dword [r14 + 0x128]
mov ebx, dword [r14 + 0xc4]
mov dword [r14 + 0xec], ecx
mov dword [r14 + 0xf0], edx
mov r9d, ebx
mov esi, ebx
mulss xmm0, dword [0x180393370]
mov dword [r14 + 0xe8], eax
sub esi, eax
sub r9d, ecx
addss xmm1, xmm0
mov ebp, ebx
movd xmm0, eax
cvttss2si r8d, xmm1
sub ebp, edx
cvtdq2ps xmm0, xmm0
mov dword [r14 + 0xf4], r8d
sub ebx, r8d
subss xmm6, xmm0
movd xmm0, ecx
movsxd rcx, dword [r14 + 0xcc]
mov eax, ecx
mov r11d, ecx
mov r10d, ecx
and eax, r9d
movss dword [r14 + 0x100], xmm6
mov rdi, rcx
cdqe
and r11d, esi
and r10d, ebp
cvtdq2ps xmm0, xmm0
subss xmm2, xmm0
movd xmm0, edx
mov edx, ecx
movss dword [r14 + 0x104], xmm2
and edx, ebx
cvtdq2ps xmm0, xmm0
subss xmm5, xmm0
movd xmm0, r8d
mov r8, qword [r14 + 0x98]
movss dword [r14 + 0x108], xmm5
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
movss dword [r14 + 0x10c], xmm1
movss xmm0, dword [r8 + rax*4]
lea eax, [r9 - 1]
movsxd rcx, eax
movsxd rax, edx
and rcx, rdi
movss xmm3, dword [r8 + rcx*4]
subss xmm3, xmm0
mulss xmm3, xmm2
addss xmm3, xmm0
movss xmm0, dword [r8 + rax*4]
mov rdx, qword [r14 + 0x90]
lea eax, [rbx - 1]
movsxd rcx, eax
movsxd rax, r10d
and rcx, rdi
movss xmm4, dword [r8 + rcx*4]
subss xmm4, xmm0
mulss xmm4, xmm1
movss xmm1, dword [rdx + rax*4]
movsxd rax, r11d
addss xmm4, xmm0
movss xmm0, dword [rdx + rax*4]
lea eax, [rsi - 1]
mov rsi, qword [rsp + 0x38]
movsxd rcx, eax
lea eax, [rbp - 1]
addss xmm4, xmm3
and rcx, rdi
movss xmm2, dword [rdx + rcx*4]
movsxd rcx, eax
mov rax, qword [r14 + 0x160]
subss xmm2, xmm0
and rcx, rdi
mov rdi, qword [rsp + 0x30]
mulss xmm2, xmm6
addss xmm2, xmm0
movss xmm0, dword [rdx + rcx*4]
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x28]
subss xmm0, xmm1
mulss xmm0, xmm5
addss xmm0, xmm1
addss xmm2, xmm0
movss xmm0, dword [rax + 8]
mulss xmm0, dword [rax + 0x14]
movaps xmm1, xmm2
subss xmm1, dword [rax + 0x10]
movss dword [rax + 0x10], xmm2
addss xmm1, dword [0x180392fb0]
mulss xmm1, dword [rax + 0xc]
subss xmm1, xmm0
movss dword [rax + 0x14], xmm1
mov eax, dword [rax + 0x14]
movaps xmm1, xmm4
mov dword [r14 + 0x178], eax
mov rax, qword [r14 + 0x168]
subss xmm1, dword [rax + 0x10]
movss xmm0, dword [rax + 8]
movss dword [rax + 0x10], xmm4
mulss xmm0, dword [rax + 0x14]
addss xmm1, dword [0x180392fb0]
mulss xmm1, dword [rax + 0xc]
subss xmm1, xmm0
movss dword [rax + 0x14], xmm1
movss xmm6, dword [r14 + 0x178]
movss xmm2, dword [r14 + 0x120]
mov eax, dword [rax + 0x14]
mov dword [r14 + 0x17c], eax
mulss xmm6, xmm13
movss xmm7, dword [r14 + 0x17c]
movss xmm0, dword [r14 + 0x124]
movss xmm1, dword [r14 + 0x118]
movaps xmm4, xmm6
mulss xmm7, xmm13
mulss xmm4, xmm0
movaps xmm3, xmm1
movss dword [r14 + 0x17c], xmm7
movss dword [r14 + 0x178], xmm6
movaps xmm5, xmm7
mulss xmm1, dword [rcx]
mulss xmm3, dword [rdx]
mulss xmm7, xmm0
mulss xmm6, xmm2
mulss xmm5, xmm2
addss xmm7, xmm6
addss xmm4, xmm5
addss xmm7, xmm1
addss xmm4, xmm3
movss dword [rdi], xmm7
movss dword [rsi], xmm4
mov eax, dword [r14 + 0xc4]
mov r8d, dword [rsp + 0x140]
movss xmm1, dword [0x180392fb4]
mov r10, qword [rsp + 0x130]
mov r11, qword [rsp + 0x148]
mov rbx, qword [rsp + 0x40]
add rdi, 4
add eax, 2
add rcx, 4
and eax, dword [r14 + 0xcc]
add rdx, 4
add rsi, 4
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x20], rcx
mov dword [r14 + 0xc4], eax
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x38], rsi
lea rdi, [0x1804230a0]
test r8d, r8d
jg 0x180256e50
movaps xmm15, xmmword [rsp + 0x50]
movaps xmm14, xmmword [rsp + 0x60]
movaps xmm13, xmmword [rsp + 0x70]
mov rdi, qword [rsp + 0xf0]
mov rsi, qword [rsp + 0xf8]
mov rbp, qword [rsp + 0x138]
movaps xmm11, xmmword [rsp + 0x90]
movaps xmm8, xmmword [rsp + 0xc0]
movaps xmm7, xmmword [rsp + 0xd0]
movaps xmm6, xmmword [rsp + 0xe0]
lea r11, [rsp + 0x100]
movaps xmm9, xmmword [r11 - 0x50]
movaps xmm10, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x80]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbx
ret