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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x1854
call fcn.10183dd0
mov eax, dword [0x1023d214]
push ebx
push esi
mov dword [esp + 8], 1
cmp dword [eax + 0x18], 1
push edi
jl 0x10009dec
mov edx, 1
nop
mov ecx, dword [0x1023d20c]
push edx
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
mov ebx, eax
mov ecx, ebx
call fcn.100097e0
test al, al
je 0x1000998d
lea eax, [esp + 0xc]
mov ecx, 0x1026eb48
push eax
lea eax, [esp + 0x24]
push eax
call fcn.10007970
mov ecx, dword [eax + 8]
cmp byte [ecx + 0xd], 0
jne 0x10009dd5
mov eax, dword [esp + 0xc]
cmp eax, dword [ecx + 0x10]
jl 0x10009dd5
lea eax, [esp + 0xc]
mov ecx, 0x1026eb48
push eax
call fcn.1000a7b0
jmp 0x10009dd5
mov ecx, ebx
call fcn.10009510
test al, al
mov ecx, 0x1026eb48
lea eax, [esp + 0xc]
push eax
jne 0x100099a8
lea eax, [esp + 0x30]
jmp 0x10009959
call fcn.10007430
mov edi, eax
cmp dword [edi + 0x10], 0
je 0x10009ab8
mov ecx, dword [edi + 8]
mov eax, dword [edi + 4]
dec ecx
and ecx, dword [edi + 0xc]
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x10], eax
mov eax, dword [0x1023d2ec]
test eax, eax
jne 0x10009a01
mov edx, 0xe80c2f78
mov ecx, 0x1021185d
call fcn.100050d0
mov edx, 0xc10bf213
mov ecx, 0x10211635
mov esi, eax
call fcn.100050d0
mov edx, esi
mov ecx, eax
call fcn.1011f760
mov dword [0x1023d2ec], eax
mov ecx, dword [esp + 0x10]
movss xmm0, dword [ecx + 4]
ucomiss xmm0, dword [eax + ebx]
lahf
test ah, 0x44
jnp 0x10009dd5
mov edx, dword [edi + 0x10]
test edx, edx
je 0x10009ab8
mov eax, dword [edi + 8]
mov esi, dword [edi + 4]
dec eax
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], eax
nop word [eax + eax]
movss xmm1, dword [0x1026eb34]
lea eax, [esp + 0x14]
xorps xmm0, xmm0
mov ecx, 0x1026eb34
comiss xmm1, xmm0
movss xmm0, dword [0x1023d1b0]
cmovae eax, ecx
mov ecx, 0x1023d1b0
comiss xmm0, xmm1
cmovae ecx, eax
mov eax, dword [edi + 0xc]
dec eax
add eax, edx
and eax, dword [esp + 0x10]
movss xmm1, dword [ecx]
mov eax, dword [esi + eax*4]
mov esi, dword [0x1023d214]
movss xmm0, dword [esi + 0x10]
subss xmm0, dword [eax + 4]
mov esi, dword [edi + 4]
subss xmm1, xmm0
movss xmm0, dword [0x1022f918]
andps xmm1, xmmword [0x1022feb0]
comiss xmm0, xmm1
jae 0x10009ab8
add edx, 0xffffffff
mov dword [edi + 0x10], edx
jne 0x10009a40
mov dword [edi + 0xc], 0
mov eax, dword [ebx + 4]
lea ecx, [ebx + 4]
mov eax, dword [eax + 0x20]
call eax
test eax, eax
je 0x10009dd5
mov ecx, dword [0x1023d218]
push eax
mov edx, dword [ecx]
mov edx, dword [edx + 0x80]
call edx
mov edi, eax
test edi, edi
je 0x10009dd5
mov eax, dword [0x1023d220]
test eax, eax
jne 0x10009b1d
mov edx, 0xe80c2f78
mov ecx, 0x10211729
call fcn.100050d0
mov edx, 0xc10bf213
mov ecx, 0x1021165d
mov esi, eax
call fcn.100050d0
mov edx, esi
mov ecx, eax
call fcn.1011f760
mov dword [0x1023d220], eax
mov eax, dword [eax + ebx]
cmp eax, dword [edi + 0xac]
jle 0x10009b2c
xor eax, eax
jmp 0x10009b3a
lea ecx, [eax + eax*2]
mov eax, dword [edi + 0xb0]
lea eax, [eax + ecx*4]
add eax, edi
mov edi, dword [eax + 8]
movss xmm1, dword [0x1022f964]
add edi, eax
movss xmm0, dword [edi + 0x14]
addss xmm0, dword [edi + 8]
mulss xmm0, xmm1
movss dword [esp + 0x18], xmm0
movss xmm0, dword [edi + 0x18]
addss xmm0, dword [edi + 0xc]
mulss xmm0, xmm1
movss dword [esp + 0x10], xmm0
movss xmm0, dword [edi + 0x1c]
addss xmm0, dword [edi + 0x10]
mov dword [esp + 0x40], eax
mov eax, dword [0x1023d2ec]
mov dword [esp + 0x4c], 0
mov dword [esp + 0x48], 0
mulss xmm0, xmm1
mov dword [esp + 0x44], 0
mov dword [esp + 0x58], 0
mov dword [esp + 0x54], 0
movss dword [esp + 0x1c], xmm0
mov dword [esp + 0x50], 0
test eax, eax
jne 0x10009bee
mov edx, 0xe80c2f78
mov ecx, 0x1021185d
call fcn.100050d0
mov edx, 0xc10bf213
mov ecx, 0x10211635
mov esi, eax
call fcn.100050d0
mov edx, esi
mov ecx, eax
call fcn.1011f760
mov dword [0x1023d2ec], eax
movss xmm0, dword [eax + ebx]
mov edx, dword [0x1023d21c]
movss dword [esp + 0x3c], xmm0
mov dword [esp + 0x38], ebx
test edx, edx
jne 0x10009c38
mov edx, 0xe80c2f78
mov ecx, 0x10211651
call fcn.100050d0
mov edx, 0xc10bf213
mov ecx, 0x1021165d
mov esi, eax
call fcn.100050d0
mov edx, esi
mov ecx, eax
call fcn.1011f760
mov edx, eax
mov dword [0x1023d21c], edx
mov ecx, dword [edx + ebx]
mov dword [ebx + 0xa0], ecx
mov eax, dword [edx + ebx + 4]
mov ecx, dword fs:[0x2c]
mov dword [ebx + 0xa4], eax
mov eax, dword [edx + ebx + 8]
mov dword [ebx + 0xa8], eax
mov eax, dword [0x1023d190]
mov dword [ebx + 0xa68], 0
mov dword [ebx + 0xa30], 0
mov ecx, dword [ecx + eax*4]
mov eax, dword [0x1023d2e4]
cmp eax, dword [ecx + 4]
jle 0x10009cbc
push 0x1023d2e4
call fcn.1018369a
add esp, 4
cmp dword [0x1023d2e4], 0xffffffff
jne 0x10009cbc
mov edx, str.80_3D___________74_16_A1_________48_C7_81
mov ecx, str.client.dll
call fcn.10007fd0
push 0x1023d2e4
mov dword [0x1023d2e8], eax
call fcn.10183649
add esp, 4
mov edx, dword [0x1023d214]
lea ecx, [ebx + 4]
push ecx
mov eax, dword [edx + 4]
mov dword [ebx + 0xa30], eax
mov eax, dword [0x1023d2e8]
mov dword [ebx + 0xa28], 0
mov eax, dword [eax + 0xa]
mov eax, dword [eax]
dec eax
mov dword [ebx + 0x2924], 0xff7fffff
mov dword [ebx + 0x2690], eax
movss xmm0, dword [edx + 0x10]
lea edx, [esp + 0x60]
mov eax, dword [ecx]
movss dword [esp], xmm0
push 0x100
push 0x80
mov eax, dword [eax + 0x34]
push edx
call eax
mov eax, dword [edi]
mov ecx, 0x1026eb48
movss xmm2, dword [esp + 0x10]
movss xmm4, dword [esp + 0x18]
movaps xmm1, xmm2
movss xmm3, dword [esp + 0x1c]
movaps xmm0, xmm4
lea eax, [eax + eax*2]
add eax, eax
mulss xmm0, dword [esp + eax*8 + 0x5c]
mulss xmm1, dword [esp + eax*8 + 0x60]
addss xmm1, xmm0
movaps xmm0, xmm3
mulss xmm0, dword [esp + eax*8 + 0x64]
addss xmm0, dword [esp + eax*8 + 0x68]
addss xmm1, xmm0
movaps xmm0, xmm4
movss dword [esp + 0x44], xmm1
movaps xmm1, xmm2
mulss xmm0, dword [esp + eax*8 + 0x6c]
mulss xmm1, dword [esp + eax*8 + 0x70]
addss xmm1, xmm0
movaps xmm0, xmm3
mulss xmm0, dword [esp + eax*8 + 0x74]
addss xmm0, dword [esp + eax*8 + 0x78]
addss xmm1, xmm0
movss dword [esp + 0x48], xmm1
mulss xmm2, dword [esp + eax*8 + 0x80]
mulss xmm4, dword [esp + eax*8 + 0x7c]
mulss xmm3, dword [esp + eax*8 + 0x84]
addss xmm2, xmm4
addss xmm3, dword [esp + eax*8 + 0x88]
lea eax, [esp + 0xc]
push eax
addss xmm2, xmm3
movss dword [esp + 0x50], xmm2
call fcn.10007430
lea ecx, [esp + 0x38]
push ecx
mov ecx, eax
call fcn.1000a6d0
mov edx, dword [esp + 0xc]
mov eax, dword [0x1023d214]
inc edx
mov dword [esp + 0xc], edx
cmp edx, dword [eax + 0x18]
jle 0x10009930
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret