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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x36d4
call fcn.10127eb0
mov dword [esp + 8], ecx
mov ecx, dword [0x10190fc4]
push ebx
push esi
push edi
lea ecx, [ecx + 0xe34]
call fcn.100b6b70
test al, al
je 0x1008b3d2
mov eax, dword [0x1019273c]
mov esi, dword [eax]
test esi, esi
je 0x1008b3d2
mov eax, dword [0x10190fc0]
movd xmm0, dword [0x1027c6c0]
mov ecx, dword [0x10191b58]
cvtdq2ps xmm0, xmm0
mov eax, dword [eax + 0x10]
mulss xmm0, dword [eax + 0x20]
mov eax, dword fs:[0x2c]
movss dword [esp + 0x10], xmm0
mov ebx, dword [eax + ecx*4]
mov eax, dword [0x1019c1bc]
cmp eax, dword [ebx + 4]
jle 0x1008a4c7
push 0x1019c1bc
call fcn.101273eb
add esp, 4
cmp dword [0x1019c1bc], 0xffffffff
jne 0x1008a4c7
mov edx, 0xc60bf9f2
mov ecx, 0x101736a9
call fcn.10070760
mov ecx, eax
call fcn.100ba500
push 0x1019c1bc
mov dword [0x1019c1d0], eax
call fcn.1012739a
add esp, 4
mov eax, dword [0x1019c1d0]
movss xmm0, dword [esi + eax]
comiss xmm0, dword [esp + 0x10]
ja 0x1008b3d2
mov eax, dword [0x1019273c]
mov esi, dword [eax]
mov eax, dword [0x1019c1e0]
cmp eax, dword [ebx + 4]
jle 0x1008a52e
push 0x1019c1e0
call fcn.101273eb
add esp, 4
cmp dword [0x1019c1e0], 0xffffffff
jne 0x1008a52e
mov edx, 0xc60bf9f2
mov ecx, 0x101737e1
call fcn.10070760
mov ecx, eax
call fcn.100ba500
push 0x1019c1e0
mov dword [0x1019c1e8], eax
call fcn.1012739a
add esp, 4
mov eax, dword [0x1019c1e8]
cmp byte [esi + eax], 0
jne 0x1008b3d2
mov eax, dword [0x1019273c]
mov ecx, dword [eax]
call fcn.1007f160
cmp byte [eax], 0
jne 0x1008b3d2
mov eax, dword [0x1019273c]
mov ecx, dword [eax]
mov eax, dword [ecx]
mov eax, dword [eax + 0x430]
call eax
mov esi, eax
mov dword [esp + 0x28], esi
test esi, esi
je 0x1008b3d2
mov ecx, esi
call fcn.10070c40
cmp dword [eax], 0
je 0x1008b3d2
mov eax, dword [0x1019273c]
mov edi, dword [eax]
mov eax, dword [0x10192754]
cmp eax, dword [ebx + 4]
jle 0x1008a5d3
push 0x10192754
call fcn.101273eb
add esp, 4
cmp dword [0x10192754], 0xffffffff
jne 0x1008a5d3
mov edx, 0xc60bf9f2
mov ecx, 0x10164dd9
call fcn.10070760
mov ecx, eax
call fcn.100ba500
push 0x10192754
mov dword [0x10192700], eax
call fcn.1012739a
add esp, 4
mov eax, dword [0x10192700]
cmp dword [edi + eax], 0
jle 0x1008a600
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 0x734]
call eax
test eax, eax
je 0x1008b3d2
mov al, byte [eax + 0xec]
test al, al
je 0x1008b3d2
mov ecx, esi
call fcn.10070d20
mov cx, word [eax]
call fcn.1007efa0
mov ebx, eax
test ebx, ebx
je 0x1008b3d2
mov edi, dword [0x10190fc4]
mov ecx, esi
call fcn.10070d20
mov cx, word [eax]
call fcn.1008a260
lea ecx, [ebx + ebx*8]
cmp byte [edi + ecx*4 + 0x894], 0
cmove ebx, eax
xor ecx, ecx
lea eax, [ebx + ebx*8]
cmp byte [edi + eax*4 + 0x894], cl
mov eax, dword [esi]
cmovne ecx, ebx
mov dword [esp + 0x30], ecx
mov ecx, esi
mov eax, dword [eax + 0x734]
call eax
test eax, eax
je 0x1008a6a3
movss xmm0, dword [0x101802fc]
comiss xmm0, dword [eax + 0x1a0]
jbe 0x1008a6a3
movss xmm0, dword [eax + 0x1b8]
comiss xmm0, dword [eax + 0xdc]
jbe 0x1008a6a3
mov eax, dword [0x1019273c]
lea edx, [esp + 0x94]
push edx
mov ecx, dword [eax]
mov eax, dword [ecx]
mov eax, dword [eax + 0x568]
call eax
lea ebx, [esp + 0x94]
jmp 0x1008a6b8
xorps xmm0, xmm0
mov dword [esp + 0x68], 0
movq qword [esp + 0x60], xmm0
lea ebx, [esp + 0x60]
mov edx, dword [0x10190fc4]
xorps xmm4, xmm4
movq xmm0, qword [ebx]
mov eax, dword [ebx + 8]
movq qword [esp + 0x1c], xmm0
cmp byte [edx + 0xe70], 0
movss xmm2, dword [esp + 0x20]
movss xmm3, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
movss xmm1, dword [esp + 0x24]
je 0x1008a8b1
movss xmm0, dword [edx + 0xe78]
ucomiss xmm0, xmm4
lahf
test ah, 0x44
jp 0x1008a717
movss xmm0, dword [edx + 0xe7c]
ucomiss xmm0, xmm4
lahf
test ah, 0x44
jnp 0x1008a8b1
ucomiss xmm3, xmm4
lahf
test ah, 0x44
jp 0x1008a736
ucomiss xmm2, xmm4
lahf
test ah, 0x44
jp 0x1008a736
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jnp 0x1008a8b1
mov esi, dword fs:[0x2c]
mov eax, dword [0x1019273c]
mov dword [esp + 0x38], edx
mov edx, dword [0x10191b58]
mov eax, dword [eax]
mov dword [esp + 0x10], eax
mov ecx, dword [esi + edx*4]
mov eax, dword [0x10192754]
mov edx, dword [0x10190fc4]
cmp eax, dword [ecx + 4]
jle 0x1008a7ac
push 0x10192754
call fcn.101273eb
add esp, 4
cmp dword [0x10192754], 0xffffffff
jne 0x1008a7a6
mov edx, 0xc60bf9f2
mov ecx, 0x10164dd9
call fcn.10070760
mov ecx, eax
call fcn.100ba500
push 0x10192754
mov dword [0x10192700], eax
call fcn.1012739a
add esp, 4
mov edx, dword [0x10190fc4]
mov ecx, dword [esp + 0x10]
mov eax, dword [0x10192700]
mov eax, dword [ecx + eax]
mov ecx, dword [esp + 0x38]
cmp eax, dword [ecx + 0xe74]
jle 0x1008a87c
mov ecx, dword [esp + 0x14]
test byte [ecx + 0x30], 1
je 0x1008a891
cmp byte [edx + 0xe71], 0
movq xmm0, qword [ebx]
mov eax, dword [ebx + 8]
movss xmm3, dword [ecx + 0x10]
movss xmm4, dword [ecx + 0xc]
movq qword [esp + 0x88], xmm0
movss xmm1, dword [esp + 0x88]
movss xmm2, dword [esp + 0x8c]
mulss xmm1, dword [edx + 0xe7c]
mov dword [esp + 0x90], eax
mulss xmm2, dword [edx + 0xe78]
jne 0x1008a864
movss xmm0, dword [0x1019c26c]
subss xmm0, xmm2
movss dword [0x1019c26c], xmm2
addss xmm0, xmm3
movss dword [ecx + 0x10], xmm0
movss xmm0, dword [0x1019c268]
subss xmm0, xmm1
movss dword [0x1019c268], xmm1
addss xmm0, xmm4
movss dword [ecx + 0xc], xmm0
mov edx, dword [0x10190fc4]
jmp 0x1008a891
subss xmm3, xmm2
subss xmm4, xmm1
movss dword [ecx + 0x10], xmm3
movss dword [ecx + 0xc], xmm4
mov edx, dword [0x10190fc4]
xorps xmm0, xmm0
mov dword [0x1019c270], 0
movq qword [0x1019c268], xmm0
cmp byte [edx + 0xe71], 0
jne 0x1008a8b1
mov eax, dword [0x10190fcc]
mov ecx, dword [eax + 0x10]
mov eax, dword [esp + 0x14]
add eax, 0xc
push eax
mov edx, dword [ecx]
mov eax, dword [edx + 0x4c]
call eax
mov eax, dword [esp + 0x30]
lea ebx, [eax + eax*8]
cmp byte [edi + ebx*4 + 0x8b5], 0
jne 0x1008a958
mov eax, dword [0x10190fc0]
movd xmm0, dword [0x1027c6c0]
mov esi, dword [0x10191b58]
mov edx, dword fs:[0x2c]
mov eax, dword [eax + 0x10]
cvtdq2ps xmm0, xmm0
mov ecx, dword [edx + esi*4]
mov esi, dword [esp + 0x28]
mulss xmm0, dword [eax + 0x20]
mov eax, dword [0x10192640]
movss dword [esp + 0x10], xmm0
cmp eax, dword [ecx + 4]
jle 0x1008a943
push 0x10192640
call fcn.101273eb
add esp, 4
cmp dword [0x10192640], 0xffffffff
jne 0x1008a943
mov edx, 0xc60bf9f2
mov ecx, 0x10164e61
call fcn.10070760
mov ecx, eax
call fcn.100ba500
push 0x10192640
mov dword [0x1019267c], eax
call fcn.1012739a
add esp, 4
mov eax, dword [0x1019267c]
movss xmm0, dword [eax + esi]
comiss xmm0, dword [esp + 0x10]
ja 0x1008b3d2
cmp byte [edi + ebx*4 + 0x89a], 0
jne 0x1008a97f
mov eax, dword [0x1019273c]
mov ecx, dword [eax]
call fcn.100809f0
movss xmm0, dword [0x10180328]
comiss xmm0, dword [eax]
jb 0x1008b3d2
cmp byte [edi + ebx*4 + 0x894], 0
je 0x1008b3d2
mov eax, dword [esp + 0x14]
test byte [eax + 0x30], 1
jne 0x1008a9a5
cmp byte [edi + ebx*4 + 0x895], 0
je 0x1008b3d2
mov eax, dword [0x1019273c]
lea edx, [esp + 0x54]
movss xmm0, dword [edi + ebx*4 + 0x8a0]
push edx
movss dword [esp + 0x4c], xmm0
mov ecx, dword [eax]
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x48], 0
mov eax, dword [ecx]
mov eax, dword [eax + 0x474]
call eax
mov al, byte [edi + ebx*4 + 0x8ac]
mov esi, 1
mov ecx, dword [edi + ebx*4 + 0x8ac]
and al, 1
mov byte [esp + 0x6c], al
mov eax, ecx
shr eax, 1
and al, 1
mov byte [esp + 0x6d], 0
mov byte [esp + 0x72], al
mov byte [esp + 0x70], al
mov byte [esp + 0x71], al
mov eax, ecx
shr eax, 2
and al, 1
mov dword [esp + 0x77], 0
mov byte [esp + 0x6f], al
mov byte [esp + 0x6e], al
mov eax, ecx
shr eax, 3
and al, 1
shr ecx, 4
mov byte [esp + 0x7b], al
and cl, 1
mov byte [esp + 0x7c], al
mov byte [esp + 0x7d], al
mov byte [esp + 0x7e], al
mov eax, dword [0x10190fcc]
mov byte [esp + 0x75], cl
mov byte [esp + 0x73], cl
mov byte [esp + 0x76], cl
mov byte [esp + 0x74], cl
mov ecx, dword [eax + 0x10]
mov dword [esp + 0x10], esi
mov eax, dword [ecx]
mov eax, dword [eax + 0x50]
call eax
cmp eax, esi
jl 0x1008b3be
mov dword [esp + 0x50], 0x101a259c
mov dword [esp + 0x4c], 0x363c
mov eax, dword [0x10190fcc]
push esi
mov ecx, dword [eax + 0x18]
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
mov esi, eax
mov dword [esp + 0x2c], esi
test esi, esi
je 0x1008ae9e
mov ecx, dword [0x1019273c]
cmp esi, dword [ecx]
je 0x1008ae9e
mov eax, dword [esi + 8]
lea ecx, [esi + 8]
mov eax, dword [eax + 0x24]
call eax
test al, al
jne 0x1008ae9e
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 0x270]
call eax
test al, al
je 0x1008ae9e
mov eax, dword [0x1019273c]
mov ecx, dword [eax]
mov eax, dword [0x10190fc0]
push ecx
mov ecx, esi
mov eax, dword [eax + 0x38]
call eax
test al, al
jne 0x1008aaf9
cmp byte [edi + ebx*4 + 0x897], al
je 0x1008ae9e
mov ecx, esi
call fcn.10070a80
cmp byte [eax], 0
jne 0x1008ae9e
mov eax, dword [esi + 4]
lea ecx, [esi + 4]
mov eax, dword [eax + 0x20]
call eax
test eax, eax
je 0x1008ae9e
mov ecx, dword [0x10190fcc]
push eax
mov ecx, dword [ecx + 0x3c]
mov edx, dword [ecx]
mov edx, dword [edx + 0x80]
call edx
test eax, eax
je 0x1008ae9e
cmp dword [eax + 0xac], 0
jle 0x1008ae9e
mov ecx, dword [eax + 0xb0]
add ecx, eax
mov dword [esp + 0x80], ecx
je 0x1008ae9e
cmp dword [esp + 0x4c], 0xdc53c
jae 0x1008b3d9
push dword [esp + 0x50]
lea ecx, [esp + 0xa4]
call fcn.1007e3e0
cmp byte [esp + 0x36c8], 0
je 0x1008ae75
xor ecx, ecx
xor edx, edx
mov dword [esp + 0x84], ecx
mov dword [esp + 0x38], edx
cmp byte [esp + ecx + 0x6c], 0
je 0x1008ae5a
test ecx, ecx
js 0x1008ae5a
mov eax, dword [esp + 0x80]
cmp ecx, dword [eax + 4]
jge 0x1008ae5a
mov eax, dword [eax + 8]
add eax, edx
add eax, dword [esp + 0x80]
je 0x1008ae5a
movss xmm0, dword [esp + 0x54]
mov edx, esi
movss xmm1, dword [esp + 0x58]
movss xmm2, dword [esp + 0x5c]
push 0
push ecx
push eax
lea eax, [esp + 0xc0]
push eax
lea ecx, [esp + 0x98]
call fcn.10079e60
mov esi, dword [esp + 0x88]
cmp esi, dword [esp + 0x8c]
je 0x1008ae3f
nop word [eax + eax]
movss xmm0, dword [esi]
lea ecx, [esp + 0x94]
subss xmm0, dword [esp + 0x54]
mov eax, dword [esp + 0x14]
movss dword [esp + 0x18], xmm0
movss xmm0, dword [esi + 4]
subss xmm0, dword [esp + 0x58]
movss dword [esp + 0xc], xmm0
movss xmm0, dword [esi + 8]
subss xmm0, dword [esp + 0x5c]
xorps xmm0, xmmword [0x101808d0]
movss dword [esp + 0x34], xmm0
fld dword [esp + 0x34]
fld dword [esp + 0x18]
fst dword [esp + 0x18]
fld dword [esp + 0xc]
movss xmm1, dword [esp + 0x18]
fst dword [esp + 0xc]
movss xmm0, dword [esp + 0xc]
mulss xmm0, xmm0
mulss xmm1, xmm1
addss xmm1, xmm0
xorps xmm0, xmm0
sqrtss xmm0, xmm1
movss dword [esp + 0xc], xmm0
fld dword [esp + 0xc]
fxch st(1)
fxch st(3)
movss xmm0, dword [esp + 0x1c]
fxch st(1)
fpatan
addss xmm0, dword [eax + 0xc]
fstp dword [esp + 0xc]
movss xmm1, dword [esp + 0xc]
fpatan
mulss xmm1, dword [0x1018031c]
fstp dword [esp + 0xc]
subss xmm1, xmm0
movss xmm0, dword [esp + 0x20]
addss xmm0, dword [eax + 0x10]
movss dword [esp + 0x94], xmm1
movss xmm1, dword [esp + 0xc]
mulss xmm1, dword [0x1018031c]
subss xmm1, xmm0
movss xmm0, dword [esp + 0x24]
addss xmm0, dword [eax + 0x14]
movss dword [esp + 0x98], xmm1
xorps xmm0, xmmword [0x101808d0]
movss dword [esp + 0x9c], xmm0
call fcn.10078680
movq xmm0, qword [eax]
movq qword [esp + 0x60], xmm0
movss xmm0, dword [esp + 0x64]
movss xmm1, dword [esp + 0x60]
mulss xmm0, xmm0
mov eax, dword [eax + 8]
mulss xmm1, xmm1
mov dword [esp + 0x68], eax
addss xmm1, xmm0
xorps xmm0, xmm0
sqrtss xmm0, xmm1
comiss xmm0, dword [esp + 0x48]
movss dword [esp + 0x18], xmm0
ja 0x1008ae2f
cmp byte [edi + ebx*4 + 0x89b], 0
jne 0x1008ad9a
mov eax, dword [0x10190fc0]
movq xmm0, qword [esi]
push 1
sub esp, 0xc
mov edx, dword [eax + 0x30]
mov ecx, esp
mov eax, dword [esi + 8]
sub esp, 0xc
movq qword [ecx], xmm0
movq xmm0, qword [esp + 0x70]
mov dword [ecx + 8], eax
mov ecx, esp
mov eax, dword [esp + 0x78]
movq qword [ecx], xmm0
mov dword [ecx + 8], eax
call edx
add esp, 0x1c
test al, al
jne 0x1008ae2f
mov ecx, dword [esp + 0x2c]
push esi
call fcn.1008a2f0
test al, al
jne 0x1008ae07
cmp byte [edi + ebx*4 + 0x898], al
jne 0x1008ae2f
cmp byte [edi + ebx*4 + 0x8b4], 0
mov al, byte [edi + ebx*4 + 0x897]
mov dword [esp + 0xc], eax
je 0x1008add6
mov ecx, dword [esp + 0x2c]
mov eax, dword [ecx]
mov eax, dword [eax + 0x1e8]
call eax
jmp 0x1008addd
mov eax, dword [edi + ebx*4 + 0x8b0]
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x34], eax
mov eax, dword [ecx]
mov eax, dword [eax + 0x734]
call eax
push dword [esp + 0xc]
mov ecx, dword [esp + 0x30]
mov edx, esi
push dword [esp + 0x38]
push eax
call fcn.10078bb0
test al, al
je 0x1008ae2f
movss xmm0, dword [esp + 0x18]
movss xmm1, dword [esp + 0x48]
comiss xmm1, xmm0
jbe 0x1008ae2f
mov eax, dword [esi + 8]
movss dword [esp + 0x48], xmm0
movq xmm0, qword [esi]
movq qword [esp + 0x3c], xmm0
mov dword [esp + 0x44], eax
add esi, 0xc
cmp esi, dword [esp + 0x8c]
jne 0x1008ac10
lea ecx, [esp + 0x88]
call fcn.10074d60
mov esi, dword [esp + 0x2c]
mov ecx, dword [esp + 0x84]
mov edx, dword [esp + 0x38]
add edx, 0x44
inc ecx
mov dword [esp + 0x84], ecx
mov dword [esp + 0x38], edx
cmp edx, 0x50c
jb 0x1008ab95
lea ecx, [esp + 0xa0]
call fcn.1007e920
mov eax, dword [esp + 0xa0]
push 8
push eax
mov dword [esp + 0xa8], 0
call fcn.10127383
add esp, 8
mov eax, dword [0x10190fcc]
mov esi, dword [esp + 0x10]
add dword [esp + 0x4c], 0x363c
inc esi
add dword [esp + 0x50], 0x363c
mov ecx, dword [eax + 0x10]
mov dword [esp + 0x10], esi
mov eax, dword [ecx]
mov eax, dword [eax + 0x50]
call eax
cmp esi, eax
jle 0x1008aa81
movss xmm4, dword [esp + 0x3c]
xorps xmm5, xmm5
movss xmm2, dword [esp + 0x44]
movss xmm3, dword [esp + 0x40]
ucomiss xmm4, xmm5
lahf
test ah, 0x44
jp 0x1008af02
ucomiss xmm3, xmm5
lahf
test ah, 0x44
jp 0x1008af02
ucomiss xmm2, xmm5
lahf
test ah, 0x44
jnp 0x1008b3be
mov eax, dword [0x10190fc0]
mov esi, dword [esp + 0x30]
mov eax, dword [eax + 0x10]
movss xmm1, dword [eax]
lea eax, [esi + esi*8]
movd xmm0, dword [edi + eax*4 + 0x8a8]
subss xmm1, dword [0x1019c278]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x10180038]
comiss xmm0, xmm1
jae 0x1008b3d2
mov eax, dword fs:[0x2c]
mov ecx, dword [0x10191b58]
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x1027b868]
cmp eax, dword [ecx + 4]
jle 0x1008afa7
push 0x1027b868
call fcn.101273eb
add esp, 4
cmp dword [0x1027b868], 0xffffffff
jne 0x1008af92
mov eax, dword [esp + 0x14]
push 0x1027b868
movq xmm0, qword [eax + 0xc]
movq qword [0x1027b86c], xmm0
mov eax, dword [eax + 0x14]
mov dword [0x1027b874], eax
call fcn.1012739a
add esp, 4
movss xmm4, dword [esp + 0x3c]
xorps xmm5, xmm5
movss xmm3, dword [esp + 0x40]
movss xmm2, dword [esp + 0x44]
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx + 4]
dec eax
cmp dword [0x1019c274], eax
jne 0x1008b00c
movss xmm0, dword [0x1027b86c]
ucomiss xmm0, xmm5
lahf
test ah, 0x44
jp 0x1008afea
movss xmm0, dword [0x1027b870]
ucomiss xmm0, xmm5
lahf
test ah, 0x44
jp 0x1008afea
movss xmm0, dword [0x1027b874]
ucomiss xmm0, xmm5
lahf
test ah, 0x44
jnp 0x1008b00c
lea eax, [esi + esi*8]
cmp byte [edi + eax*4 + 0x896], 0
je 0x1008b00c
movq xmm0, qword [0x1027b86c]
movq qword [ecx + 0xc], xmm0
mov eax, dword [0x1027b874]
mov dword [ecx + 0x14], eax
subss xmm2, dword [esp + 0x5c]
subss xmm4, dword [esp + 0x54]
subss xmm3, dword [esp + 0x58]
xorps xmm2, xmmword [0x101808d0]
movss dword [esp + 0xc], xmm2
fld dword [esp + 0xc]
movss dword [esp + 0x18], xmm4
fld dword [esp + 0x18]
fst dword [esp + 0xc]
movss xmm1, dword [esp + 0xc]
movss dword [esp + 0x10], xmm3
fld dword [esp + 0x10]
fst dword [esp + 0xc]
movss xmm0, dword [esp + 0xc]
mulss xmm0, xmm0
mulss xmm1, xmm1
movss xmm2, dword [esp + 0x1c]
addss xmm2, dword [ecx + 0xc]
addss xmm1, xmm0
xorps xmm0, xmm0
sqrtss xmm0, xmm1
movss xmm1, dword [esp + 0x20]
movss dword [esp + 0xc], xmm0
fld dword [esp + 0xc]
fxch st(1)
fxch st(3)
fxch st(1)
fpatan
addss xmm1, dword [ecx + 0x10]
fstp dword [esp + 0xc]
movss xmm0, dword [esp + 0xc]
fpatan
mulss xmm0, dword [0x1018031c]
fstp dword [esp + 0xc]
subss xmm0, xmm2
movss dword [esp + 0x60], xmm0
movss xmm0, dword [esp + 0xc]
mulss xmm0, dword [0x1018031c]
subss xmm0, xmm1
movss dword [esp + 0x64], xmm0
movss xmm0, dword [esp + 0x24]
addss xmm0, dword [ecx + 0x14]
lea ecx, [esp + 0x60]
xorps xmm0, xmmword [0x101808d0]
movss dword [esp + 0x68], xmm0
call fcn.10078680
mov ecx, dword [0x10190fc4]
xor bl, bl
movss xmm4, dword [0x101808a0]
add ecx, 0x34d4
movq xmm0, qword [eax]
mov eax, dword [eax + 8]
movss xmm2, dword [ecx]
movq qword [esp + 0x1c], xmm0
movss xmm3, dword [esp + 0x1c]
movss xmm1, dword [esp + 0x20]
movaps xmm0, xmm3
andps xmm0, xmm4
mov dword [esp + 0x24], eax
comiss xmm0, xmm2
movss dword [esp + 0x10], xmm1
ja 0x1008b140
movaps xmm0, xmm1
andps xmm0, xmm4
comiss xmm0, xmm2
jbe 0x1008b194
movaps xmm0, xmm2
lea edx, [esp + 0x1c]
xorps xmm0, xmmword [0x101808d0]
lea eax, [esp + 0xc]
comiss xmm3, xmm0
mov bl, 1
movss dword [esp + 0xc], xmm0
cmovae eax, edx
lea edx, [esp + 0x20]
comiss xmm2, xmm3
cmovb eax, ecx
comiss xmm1, xmm0
movss xmm3, dword [eax]
lea eax, [esp + 0xc]
movss dword [esp + 0x1c], xmm3
cmovae eax, edx
movss dword [esp + 0xc], xmm0
comiss xmm2, xmm1
cmovb eax, ecx
movss xmm0, dword [eax]
movss dword [esp + 0x10], xmm0
lea eax, [esi + esi*8]
mov esi, dword [esp + 0x28]
cmp byte [edi + eax*4 + 0x89c], 0
je 0x1008b249
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 0x71c]
call eax
cmp eax, 5
jne 0x1008b249
mov eax, dword [0x1019273c]
mov ecx, dword [0x10191b58]
mov eax, dword [eax]
mov dword [esp + 0xc], eax
mov eax, dword fs:[0x2c]
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x101926a8]
cmp eax, dword [ecx + 4]
jle 0x1008b223
push 0x101926a8
call fcn.101273eb
add esp, 4
cmp dword [0x101926a8], 0xffffffff
jne 0x1008b223
mov edx, 0xc60bf9f2
mov ecx, 0x10164c81
call fcn.10070760
mov ecx, eax
call fcn.100ba500
push 0x101926a8
mov dword [0x101926e4], eax
call fcn.1012739a
add esp, 4
mov eax, dword [0x101926e4]
mov ecx, dword [esp + 0xc]
cmp byte [ecx + eax], 0
jne 0x1008b249
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx + 0x30]
test al, 2
jne 0x1008b249
test bl, bl
jne 0x1008b249
or eax, 0x800
mov dword [ecx + 0x30], eax
mov eax, dword [esp + 0x30]
lea eax, [eax + eax*8]
cmp byte [edi + eax*4 + 0x899], 0
je 0x1008b2df
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 0x71c]
call eax
cmp eax, 5
jne 0x1008b2df
mov eax, dword [0x1019273c]
mov ecx, dword [0x10191b58]
mov esi, dword [eax]
mov eax, dword fs:[0x2c]
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x101926a8]
cmp eax, dword [ecx + 4]
jle 0x1008b2d0
push 0x101926a8
call fcn.101273eb
add esp, 4
cmp dword [0x101926a8], 0xffffffff
jne 0x1008b2d0
mov edx, 0xc60bf9f2
mov ecx, 0x10164c81
call fcn.10070760
mov ecx, eax
call fcn.100ba500
push 0x101926a8
mov dword [0x101926e4], eax
call fcn.1012739a
add esp, 4
mov eax, dword [0x101926e4]
cmp byte [esi + eax], 0
je 0x1008b3d2
mov eax, dword [esp + 0x30]
movss xmm2, dword [0x101801b8]
movaps xmm1, xmm2
mov edx, dword [esp + 0x14]
lea esi, [eax + eax*8]
divss xmm1, dword [edi + esi*4 + 0x8a4]
lea eax, [eax + eax*8]
movaps xmm0, xmm1
mulss xmm0, dword [esp + 0x1c]
addss xmm0, dword [edx + 0xc]
movss dword [edx + 0xc], xmm0
movaps xmm0, xmm1
mulss xmm0, dword [esp + 0x10]
addss xmm0, dword [edx + 0x10]
movss dword [edx + 0x10], xmm0
movss xmm0, dword [esp + 0x24]
mulss xmm0, xmm1
addss xmm0, dword [edx + 0x14]
movss dword [edx + 0x14], xmm0
cmp byte [edi + eax*4 + 0x896], 0
jne 0x1008b364
mov eax, dword [0x10190fcc]
mov ecx, dword [eax + 0x10]
lea eax, [edx + 0xc]
push eax
mov edx, dword [ecx]
mov eax, dword [edx + 0x4c]
call eax
movss xmm2, dword [0x101801b8]
mov edx, dword [esp + 0x14]
test bl, bl
jne 0x1008b39a
movss xmm0, dword [edi + esi*4 + 0x8a4]
comiss xmm0, xmm2
ja 0x1008b39a
xorps xmm0, xmm0
mov dword [0x1027b874], 0
movq qword [0x1027b86c], xmm0
mov eax, dword [edx + 4]
mov dword [0x1019c274], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movq xmm0, qword [edx + 0xc]
movq qword [0x1027b86c], xmm0
mov eax, dword [edx + 0x14]
mov dword [0x1027b874], eax
mov eax, dword [edx + 4]
mov dword [0x1019c274], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [0x10190fc0]
mov eax, dword [eax + 0x10]
movss xmm0, dword [eax]
movss dword [0x1019c278], xmm0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.1007e910
int3