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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x1844
call fcn.101775f0
mov eax, dword [0x10249ba0]
push ebx
push esi
mov dword [esp + 8], 1
cmp dword [eax + 0x18], 1
push edi
jl 0x100096af
mov edx, 1
nop
mov ecx, dword [0x10249b98]
push edx
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
mov edi, eax
test edi, edi
je 0x10009663
mov ecx, dword [0x10213bfc]
mov edx, dword [ecx]
mov edx, dword [edx + 0x30]
call edx
mov ecx, dword [0x10249b98]
push eax
mov edx, dword [ecx]
mov edx, dword [edx + 0xc]
call edx
mov dword [0x10249c60], eax
cmp edi, eax
je 0x10009663
mov eax, dword [0x10249c10]
test eax, eax
jne 0x10009127
mov edx, 0xe80c2f78
mov ecx, 0x101e7481
call fcn.10004820
mov edx, 0xc10bf213
mov ecx, 0x101e73a9
mov esi, eax
call fcn.10004820
mov edx, esi
mov ecx, eax
call fcn.10113840
mov dword [0x10249c10], eax
cmp dword [eax + edi], 0
jle 0x10009663
mov eax, dword [0x10213c04]
test eax, eax
jne 0x10009168
mov edx, 0xe80c2f78
mov ecx, 0x101e745d
call fcn.10004820
mov edx, 0xc10bf213
mov ecx, 0x101e73a9
mov esi, eax
call fcn.10004820
mov edx, esi
mov ecx, eax
call fcn.10113840
mov dword [0x10213c04], eax
cmp byte [eax + edi], 0
jne 0x10009663
mov eax, dword [0x10249c64]
test eax, eax
jne 0x100091a9
mov edx, 0xe80c2f78
mov ecx, 0x101e75b1
call fcn.10004820
mov edx, 0xc10bf213
mov ecx, 0x101e73a9
mov esi, eax
call fcn.10004820
mov edx, esi
mov ecx, eax
call fcn.10113840
mov dword [0x10249c64], eax
test byte [eax + edi], 0x20
jne 0x10009663
mov eax, dword [edi + 8]
lea ecx, [edi + 8]
mov eax, dword [eax + 0x28]
call eax
mov ecx, dword [0x10249ba0]
cmp eax, dword [ecx + 0x18]
jg 0x10009663
mov ecx, edi
call fcn.10008db0
test al, al
mov ecx, 0x102453f0
lea eax, [esp + 0xc]
push eax
jne 0x100091eb
lea eax, [esp + 0x24]
jmp 0x10009671
call fcn.10006d30
mov ebx, eax
cmp dword [ebx + 0x10], 0
je 0x100092f8
mov ecx, dword [ebx + 8]
mov eax, dword [ebx + 4]
dec ecx
and ecx, dword [ebx + 0xc]
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x10], eax
mov eax, dword [0x10249c5c]
test eax, eax
jne 0x10009244
mov edx, 0xe80c2f78
mov ecx, 0x101e75bd
call fcn.10004820
mov edx, 0xc10bf213
mov ecx, 0x101e73a9
mov esi, eax
call fcn.10004820
mov edx, esi
mov ecx, eax
call fcn.10113840
mov dword [0x10249c5c], eax
mov ecx, dword [esp + 0x10]
movss xmm0, dword [ecx + 4]
ucomiss xmm0, dword [eax + edi]
lahf
test ah, 0x44
jnp 0x10009698
mov edx, dword [ebx + 0x10]
test edx, edx
je 0x100092f8
mov eax, dword [ebx + 8]
mov esi, dword [ebx + 4]
dec eax
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], eax
nop dword [eax]
movss xmm1, dword [0x102453dc]
lea eax, [esp + 0x14]
xorps xmm0, xmm0
mov ecx, 0x102453dc
comiss xmm1, xmm0
movss xmm0, dword [0x10213be0]
cmovae eax, ecx
mov ecx, 0x10213be0
comiss xmm0, xmm1
cmovae ecx, eax
mov eax, dword [ebx + 0xc]
dec eax
add eax, edx
and eax, dword [esp + 0x10]
movss xmm1, dword [ecx]
mov eax, dword [esi + eax*4]
mov esi, dword [0x10249ba0]
movss xmm0, dword [esi + 0x10]
subss xmm0, dword [eax + 4]
mov esi, dword [ebx + 4]
subss xmm1, xmm0
movss xmm0, dword [0x102091dc]
andps xmm1, xmmword [0x10209830]
comiss xmm0, xmm1
jae 0x100092f8
add edx, 0xffffffff
mov dword [ebx + 0x10], edx
jne 0x10009280
mov dword [ebx + 0xc], 0
mov eax, dword [edi + 4]
lea ecx, [edi + 4]
mov eax, dword [eax + 0x20]
call eax
test eax, eax
je 0x10009698
mov ecx, dword [0x10249ba4]
push eax
mov edx, dword [ecx]
mov edx, dword [edx + 0x80]
call edx
mov ebx, eax
test ebx, ebx
je 0x10009698
mov eax, dword [0x10249bac]
test eax, eax
jne 0x1000935d
mov edx, 0xe80c2f78
mov ecx, 0x101e749d
call fcn.10004820
mov edx, 0xc10bf213
mov ecx, 0x101e73d1
mov esi, eax
call fcn.10004820
mov edx, esi
mov ecx, eax
call fcn.10113840
mov dword [0x10249bac], eax
mov eax, dword [eax + edi]
cmp eax, dword [ebx + 0xac]
jle 0x1000936c
xor eax, eax
jmp 0x1000937a
lea ecx, [eax + eax*2]
mov eax, dword [ebx + 0xb0]
lea eax, [eax + ecx*4]
add eax, ebx
mov ebx, dword [eax + 8]
movss xmm1, dword [0x1020922c]
add ebx, eax
movss xmm0, dword [ebx + 8]
addss xmm0, dword [ebx + 0x14]
mulss xmm0, xmm1
movss dword [esp + 0x18], xmm0
movss xmm0, dword [ebx + 0xc]
addss xmm0, dword [ebx + 0x18]
mulss xmm0, xmm1
movss dword [esp + 0x10], xmm0
movss xmm0, dword [ebx + 0x10]
addss xmm0, dword [ebx + 0x1c]
mov dword [esp + 0x40], eax
mov eax, dword [0x10249c5c]
mov dword [esp + 0x4c], 0
mov dword [esp + 0x48], 0
mulss xmm0, xmm1
mov dword [esp + 0x44], 0
movss dword [esp + 0x1c], xmm0
test eax, eax
jne 0x10009416
mov edx, 0xe80c2f78
mov ecx, 0x101e75bd
call fcn.10004820
mov edx, 0xc10bf213
mov ecx, 0x101e73a9
mov esi, eax
call fcn.10004820
mov edx, esi
mov ecx, eax
call fcn.10113840
mov dword [0x10249c5c], eax
movss xmm0, dword [eax + edi]
mov edx, dword [0x10249ba8]
movss dword [esp + 0x3c], xmm0
mov dword [esp + 0x38], edi
test edx, edx
jne 0x10009460
mov edx, 0xe80c2f78
mov ecx, 0x101e73c5
call fcn.10004820
mov edx, 0xc10bf213
mov ecx, 0x101e73d1
mov esi, eax
call fcn.10004820
mov edx, esi
mov ecx, eax
call fcn.10113840
mov edx, eax
mov dword [0x10249ba8], edx
mov ecx, dword [edx + edi]
mov dword [edi + 0xa0], ecx
mov eax, dword [edx + edi + 4]
mov ecx, dword fs:[0x2c]
mov dword [edi + 0xa4], eax
mov eax, dword [edx + edi + 8]
mov dword [edi + 0xa8], eax
mov eax, dword [0x10213bc0]
mov dword [edi + 0xa68], 0
mov dword [edi + 0xa30], 0
mov ecx, dword [ecx + eax*4]
mov eax, dword [0x10249c54]
cmp eax, dword [ecx + 4]
jle 0x100094e4
push 0x10249c54
call fcn.10177088
add esp, 4
cmp dword [0x10249c54], 0xffffffff
jne 0x100094e4
mov edx, str.80_3D___________74_16_A1_________48_C7_81
mov ecx, str.client.dll
call fcn.10007a50
push 0x10249c54
mov dword [0x10249c58], eax
call fcn.10177037
add esp, 4
mov edx, dword [0x10249ba0]
lea ecx, [edi + 4]
push ecx
mov eax, dword [edx + 4]
mov dword [edi + 0xa30], eax
mov eax, dword [0x10249c58]
mov dword [edi + 0xa28], 0
mov eax, dword [eax + 0xa]
mov eax, dword [eax]
dec eax
mov dword [edi + 0x2924], 0xff7fffff
mov dword [edi + 0x2690], eax
movss xmm0, dword [edx + 0x10]
lea edx, [esp + 0x54]
mov eax, dword [ecx]
movss dword [esp], xmm0
push pe_nt_image_headers32
push 0x80
mov eax, dword [eax + 0x34]
push edx
call eax
mov eax, dword [ebx]
mov ecx, 0x102453f0
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 + 0x50]
mulss xmm1, dword [esp + eax*8 + 0x54]
addss xmm1, xmm0
movaps xmm0, xmm3
mulss xmm0, dword [esp + eax*8 + 0x58]
addss xmm0, dword [esp + eax*8 + 0x5c]
addss xmm1, xmm0
movaps xmm0, xmm4
movss dword [esp + 0x44], xmm1
movaps xmm1, xmm2
mulss xmm0, dword [esp + eax*8 + 0x60]
mulss xmm1, dword [esp + eax*8 + 0x64]
addss xmm1, xmm0
movaps xmm0, xmm3
mulss xmm0, dword [esp + eax*8 + 0x68]
addss xmm0, dword [esp + eax*8 + 0x6c]
addss xmm1, xmm0
movss dword [esp + 0x48], xmm1
mulss xmm2, dword [esp + eax*8 + 0x74]
mulss xmm4, dword [esp + eax*8 + 0x70]
mulss xmm3, dword [esp + eax*8 + 0x78]
addss xmm2, xmm4
addss xmm3, dword [esp + eax*8 + 0x7c]
lea eax, [esp + 0xc]
push eax
addss xmm2, xmm3
movss dword [esp + 0x50], xmm2
call fcn.10006d30
mov esi, eax
mov ecx, dword [esi + 0x10]
inc ecx
cmp dword [esi + 8], ecx
ja 0x100095fb
push ecx
mov ecx, esi
call fcn.100074f0
mov eax, dword [esi + 8]
lea edi, [eax - 1]
and edi, dword [esi + 0xc]
lea ebx, [eax - 1]
mov dword [esi + 0xc], edi
cmove edi, eax
mov eax, dword [esi + 4]
dec edi
and ebx, edi
cmp dword [eax + ebx*4], 0
jne 0x1000963d
push 0x183b
call fcn.10176cb7
add esp, 4
test eax, eax
je 0x100096b6
lea ecx, [eax + 0x23]
and ecx, 0xffffffe0
mov dword [ecx - 4], eax
mov eax, dword [esi + 4]
mov dword [eax + ebx*4], ecx
mov ecx, dword [esi + 8]
lea eax, [esp + 0x38]
push 0x1818
push eax
mov eax, dword [esi + 4]
dec ecx
and ecx, edi
push dword [eax + ecx*4]
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov dword [esi + 0xc], edi
inc dword [esi + 0x10]
jmp 0x10009698
lea eax, [esp + 0xc]
mov ecx, 0x102453f0
push eax
lea eax, [esp + 0x30]
push eax
call fcn.100072e0
mov ecx, dword [eax + 8]
cmp byte [ecx + 0xd], 0
jne 0x10009698
mov eax, dword [esp + 0xc]
cmp eax, dword [ecx + 0x10]
jl 0x10009698
lea eax, [esp + 0xc]
mov ecx, 0x102453f0
push eax
call fcn.10009ba0
mov edx, dword [esp + 0xc]
mov eax, dword [0x10249ba0]
inc edx
mov dword [esp + 0xc], edx
cmp edx, dword [eax + 0x18]
jle 0x100090b0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3