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

Disassembly:
sub rsp, 0xe8
mov rax, qword [0x14020b080]
xor rax, rsp
mov qword [rsp + 0xd0], rax
mov rax, qword [0x1402ed898]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x28]
cmp qword [rax + 0x1c30], 0
je 0x1400a1886
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x28]
movss xmm0, dword [rax + 0x1c40]
subss xmm0, dword [rcx + 0x18]
mov rax, qword [rsp + 0x28]
movss dword [rax + 0x1c40], xmm0
xor ecx, ecx
call fcn.1400a54a0
movzx eax, al
test eax, eax
je 0x1400a1855
mov rax, qword [rsp + 0x28]
add rax, 0x1c38
mov rcx, qword [rsp + 0x28]
add rcx, 0x128
mov r8, rax
mov rdx, rcx
lea rcx, [rsp + 0x80]
call fcn.140097510
mov rcx, rax
call fcn.140097a20
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x28]
movss xmm1, dword [rax + 0x38]
mulss xmm1, dword [rcx + 0x38]
comiss xmm0, xmm1
jbe 0x1400a1855
mov rax, qword [rsp + 0x28]
xorps xmm0, xmm0
movss dword [rax + 0x1c40], xmm0
mov rax, qword [rsp + 0x28]
xorps xmm0, xmm0
comiss xmm0, dword [rax + 0x1c40]
jb 0x1400a1886
mov rax, qword [rsp + 0x28]
mov qword [rax + 0x1c30], 0
mov rax, qword [rsp + 0x28]
xorps xmm0, xmm0
movss dword [rax + 0x1c40], xmm0
mov rax, qword [rsp + 0x28]
movss xmm0, dword [rax + 0x138]
ucomiss xmm0, dword [0x1401fab64]
jp 0x1400a18bb
jne 0x1400a18bb
mov rax, qword [rsp + 0x28]
movss xmm0, dword [rax + 0x13c]
ucomiss xmm0, dword [0x1401fab64]
jp 0x1400a18bb
jne 0x1400a18bb
jmp 0x1400a1eb1
mov rax, qword [rsp + 0x28]
cmp dword [rax + 0x1c58], 0
je 0x1400a18d9
mov rax, qword [rsp + 0x28]
movzx eax, byte [rax + 0x1c6a]
test eax, eax
jne 0x1400a18f7
mov rax, qword [rsp + 0x28]
cmp dword [rax + 0x1c48], 0
je 0x1400a18fc
mov rax, qword [rsp + 0x28]
movzx eax, byte [rax + 0x1c4e]
test eax, eax
je 0x1400a18fc
jmp 0x1400a1eb1
mov rax, qword [rsp + 0x28]
cmp qword [rax + 0x1c30], 0
je 0x1400a191e
mov rax, qword [rsp + 0x28]
mov rax, qword [rax + 0x1c30]
mov qword [rsp + 0x60], rax
jmp 0x1400a192f
mov rax, qword [rsp + 0x28]
mov rax, qword [rax + 0x1c18]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x20], rax
cmp qword [rsp + 0x20], 0
je 0x1400a1951
mov rax, qword [rsp + 0x20]
movzx eax, byte [rax + 0xa1]
test eax, eax
je 0x1400a1956
jmp 0x1400a1eb1
mov rax, qword [rsp + 0x28]
movss xmm0, dword [rax + 0x138]
ucomiss xmm0, dword [0x1401fab64]
jp 0x1400a1972
je 0x1400a1b70
mov rax, qword [rsp + 0x28]
movzx eax, byte [rax + 0x140]
test eax, eax
je 0x1400a1b70
mov rax, qword [rsp + 0x28]
movzx eax, byte [rax + 0xb4]
test eax, eax
je 0x1400a1b70
mov rcx, qword [rsp + 0x20]
call fcn.1400a1720
mov rax, qword [rsp + 0x28]
movss xmm0, dword [rax + 0x138]
mulss xmm0, dword [0x1401fabd0]
mov rax, qword [rsp + 0x20]
movss xmm1, dword [rax + 0x2c0]
addss xmm1, xmm0
movaps xmm0, xmm1
movss xmm2, dword [0x1401fae30]
movss xmm1, dword [0x1401fac98]
call fcn.1400bd010
movss dword [rsp + 0x34], xmm0
mov rax, qword [rsp + 0x20]
movss xmm0, dword [rsp + 0x34]
divss xmm0, dword [rax + 0x2c0]
movss dword [rsp + 0x30], xmm0
mov rax, qword [rsp + 0x20]
movss xmm0, dword [rsp + 0x34]
movss dword [rax + 0x2c0], xmm0
mov rax, qword [rsp + 0x20]
mov rax, qword [rax + 0x3a0]
cmp qword [rsp + 0x20], rax
jne 0x1400a1b6b
mov rax, qword [rsp + 0x20]
add rax, 0x20
mov rcx, qword [rsp + 0x28]
add rcx, 0x128
mov r8, rax
mov rdx, rcx
lea rcx, [rsp + 0x88]
call fcn.140097510
mov qword [rsp + 0x68], rax
movss xmm0, dword [0x1401fad8c]
subss xmm0, dword [rsp + 0x30]
mov rax, qword [rsp + 0x20]
add rax, 0x28
movaps xmm2, xmm0
mov rdx, rax
lea rcx, [rsp + 0x90]
call fcn.140097420
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x20]
add rax, 0x28
mov qword [rsp + 0x78], rax
mov r8, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x70]
lea rcx, [rsp + 0x98]
call fcn.140097560
mov rcx, qword [rsp + 0x78]
mov r8, rcx
mov rdx, rax
lea rcx, [rsp + 0xc8]
call fcn.1400975b0
mov rax, qword [rsp + 0x20]
add rax, 0x20
lea r8, [rsp + 0xc8]
mov rdx, rax
lea rcx, [rsp + 0xa0]
call fcn.1400974c0
xor r8d, r8d
mov rdx, rax
mov rcx, qword [rsp + 0x20]
call fcn.1400ae370
mov rax, qword [rsp + 0x20]
add rax, 0x28
movss xmm2, dword [rsp + 0x30]
mov rdx, rax
lea rcx, [rsp + 0xa8]
call fcn.140097420
mov rdx, rax
lea rcx, [rsp + 0xb0]
call fcn.140097a50
mov rax, qword [rax]
mov rcx, qword [rsp + 0x20]
mov qword [rcx + 0x28], rax
mov rax, qword [rsp + 0x20]
add rax, 0x30
movss xmm2, dword [rsp + 0x30]
mov rdx, rax
lea rcx, [rsp + 0xb8]
call fcn.140097420
mov rdx, rax
lea rcx, [rsp + 0xc0]
call fcn.140097a50
mov rax, qword [rax]
mov rcx, qword [rsp + 0x20]
mov qword [rcx + 0x30], rax
jmp 0x1400a1eb1
mov rax, qword [rsp + 0x28]
movss xmm0, dword [rax + 0x138]
ucomiss xmm0, dword [0x1401fab64]
jp 0x1400a1b88
je 0x1400a1bad
mov rax, qword [rsp + 0x28]
movzx eax, byte [rax + 0x141]
test eax, eax
jne 0x1400a1bad
mov rax, qword [rsp + 0x28]
movss xmm0, dword [rax + 0x138]
movss dword [rsp + 0x38], xmm0
jmp 0x1400a1bb6
xorps xmm0, xmm0
movss dword [rsp + 0x38], xmm0
movss xmm0, dword [rsp + 0x38]
movss dword [rsp + 0x3c], xmm0
movss xmm0, dword [rsp + 0x3c]
ucomiss xmm0, dword [0x1401fab64]
jp 0x1400a1bd7
je 0x1400a1cec
mov rax, qword [rsp + 0x28]
movzx eax, byte [rax + 0x140]
test eax, eax
jne 0x1400a1cec
mov rcx, qword [rsp + 0x20]
call fcn.1400a1720
mov rax, qword [rsp + 0x20]
mov eax, dword [rax + 0x1c]
and eax, 0x1000000
test eax, eax
je 0x1400a1c4e
mov rax, qword [rsp + 0x20]
movss xmm0, dword [rax + 0x78]
ucomiss xmm0, dword [0x1401fab64]
jp 0x1400a1c1b
je 0x1400a1c3b
mov rax, qword [rsp + 0x20]
mov eax, dword [rax + 0x1c]
and eax, 0x10
test eax, eax
je 0x1400a1c4e
mov rax, qword [rsp + 0x20]
mov eax, dword [rax + 0x1c]
and eax, 0x200
test eax, eax
jne 0x1400a1c4e
mov rax, qword [rsp + 0x20]
mov rax, qword [rax + 0x398]
mov qword [rsp + 0x20], rax
jmp 0x1400a1bf5
mov rax, qword [rsp + 0x20]
mov eax, dword [rax + 0x1c]
and eax, 0x10
test eax, eax
jne 0x1400a1cec
mov rax, qword [rsp + 0x20]
mov eax, dword [rax + 0x1c]
and eax, 0x200
test eax, eax
jne 0x1400a1cec
mov rax, qword [rsp + 0x20]
add rax, 0x228
mov rcx, rax
call fcn.140097d10
mulss xmm0, dword [0x1401facc4]
movss dword [rsp + 0x4c], xmm0
mov rcx, qword [rsp + 0x20]
call fcn.140099d20
movss xmm1, dword [0x1401faeb0]
mulss xmm1, xmm0
movaps xmm0, xmm1
movss xmm1, dword [rsp + 0x4c]
call fcn.1400bced0
call fcn.1400424e0
movss dword [rsp + 0x50], xmm0
movss xmm0, dword [rsp + 0x3c]
mulss xmm0, dword [rsp + 0x50]
mov rax, qword [rsp + 0x20]
movss xmm1, dword [rax + 0x70]
subss xmm1, xmm0
movaps xmm0, xmm1
movaps xmm1, xmm0
mov rcx, qword [rsp + 0x20]
call fcn.1400b1240
mov rax, qword [rsp + 0x28]
movss xmm0, dword [rax + 0x13c]
ucomiss xmm0, dword [0x1401fab64]
jp 0x1400a1d04
je 0x1400a1d29
mov rax, qword [rsp + 0x28]
movzx eax, byte [rax + 0x141]
test eax, eax
jne 0x1400a1d29
mov rax, qword [rsp + 0x28]
movss xmm0, dword [rax + 0x13c]
movss dword [rsp + 0x44], xmm0
jmp 0x1400a1d7b
mov rax, qword [rsp + 0x28]
movss xmm0, dword [rax + 0x138]
ucomiss xmm0, dword [0x1401fab64]
jp 0x1400a1d41
je 0x1400a1d66
mov rax, qword [rsp + 0x28]
movzx eax, byte [rax + 0x141]
test eax, eax
je 0x1400a1d66
mov rax, qword [rsp + 0x28]
movss xmm0, dword [rax + 0x138]
movss dword [rsp + 0x40], xmm0
jmp 0x1400a1d6f
xorps xmm0, xmm0
movss dword [rsp + 0x40], xmm0
movss xmm0, dword [rsp + 0x40]
movss dword [rsp + 0x44], xmm0
movss xmm0, dword [rsp + 0x44]
movss dword [rsp + 0x48], xmm0
movss xmm0, dword [rsp + 0x48]
ucomiss xmm0, dword [0x1401fab64]
jp 0x1400a1d9c
je 0x1400a1eb1
mov rax, qword [rsp + 0x28]
movzx eax, byte [rax + 0x140]
test eax, eax
jne 0x1400a1eb1
mov rcx, qword [rsp + 0x20]
call fcn.1400a1720
mov rax, qword [rsp + 0x20]
mov eax, dword [rax + 0x1c]
and eax, 0x1000000
test eax, eax
je 0x1400a1e13
mov rax, qword [rsp + 0x20]
movss xmm0, dword [rax + 0x74]
ucomiss xmm0, dword [0x1401fab64]
jp 0x1400a1de0
je 0x1400a1e00
mov rax, qword [rsp + 0x20]
mov eax, dword [rax + 0x1c]
and eax, 0x10
test eax, eax
je 0x1400a1e13
mov rax, qword [rsp + 0x20]
mov eax, dword [rax + 0x1c]
and eax, 0x200
test eax, eax
jne 0x1400a1e13
mov rax, qword [rsp + 0x20]
mov rax, qword [rax + 0x398]
mov qword [rsp + 0x20], rax
jmp 0x1400a1dba
mov rax, qword [rsp + 0x20]
mov eax, dword [rax + 0x1c]
and eax, 0x10
test eax, eax
jne 0x1400a1eb1
mov rax, qword [rsp + 0x20]
mov eax, dword [rax + 0x1c]
and eax, 0x200
test eax, eax
jne 0x1400a1eb1
mov rax, qword [rsp + 0x20]
add rax, 0x228
mov rcx, rax
call fcn.140097cf0
mulss xmm0, dword [0x1401facc4]
movss dword [rsp + 0x54], xmm0
mov rcx, qword [rsp + 0x20]
call fcn.140099d20
movss xmm1, dword [0x1401fae08]
mulss xmm1, xmm0
movaps xmm0, xmm1
movss xmm1, dword [rsp + 0x54]
call fcn.1400bced0
call fcn.1400424e0
movss dword [rsp + 0x58], xmm0
movss xmm0, dword [rsp + 0x48]
mulss xmm0, dword [rsp + 0x58]
mov rax, qword [rsp + 0x20]
movss xmm1, dword [rax + 0x6c]
subss xmm1, xmm0
movaps xmm0, xmm1
movaps xmm1, xmm0
mov rcx, qword [rsp + 0x20]
call fcn.1400b1200
mov rcx, qword [rsp + 0xd0]
xor rcx, rsp
call fcn.1401612a0
add rsp, 0xe8
ret