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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0xc4
movss xmm0, dword [ebp + 0xc]
ucomiss xmm0, dword [0x738a54]
push ebx
lahf
test ah, 0x44
push esi
push edi
jnp 0x499366
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 0x198]
mov ecx, dword [ebx + 0x19c]
or eax, ecx
je 0x499366
mov eax, dword [ebx + 0x190]
test eax, eax
je 0x499366
mov edx, dword [ebx + 0x198]
push ecx
push edx
mov ecx, 0x8d68e0
call fcn.004013f0
mov esi, eax
test esi, esi
je 0x499366
test byte [ebx + 0x1f0], 1
jne 0x498f03
test byte [ebx + 0xc0], 1
jne 0x498f03
test byte [ebx + 0x100], 1
jne 0x498f03
test byte [ebx + 0x140], 1
jne 0x498f03
test byte [ebx + 0x180], 1
je 0x498f09
push ebx
call fcn.00498230
test byte [ebx + 0x1f0], 1
jne 0x499366
mov edx, dword [ebx + 0x1a0]
mov eax, dword [esi]
push 0
lea ecx, [esp + 0x94]
push ecx
push edx
mov ecx, esi
call dword [eax + 0x90]
test eax, eax
je 0x499366
fld dword [0x7389bc]
movss xmm0, dword [esp + 0xc0]
fdiv dword [ebp + 0xc]
movss xmm1, dword [esp + 0xc4]
movss xmm2, dword [esp + 0xc8]
movss xmm3, dword [ebx + 0x1e0]
movss xmm4, dword [ebx + 0x1e4]
movss xmm5, dword [ebx + 0x1e8]
lea edi, [ebx + 0x1b0]
movss dword [esp + 0x40], xmm0
movss dword [esp + 0x44], xmm1
movss dword [esp + 0x48], xmm2
subss xmm0, xmm3
subss xmm1, xmm4
subss xmm2, xmm5
lea ecx, [esp + 0x50]
mov dword [esp + 0x1c], edi
movss dword [esp + 0x50], xmm0
movss dword [esp + 0x54], xmm1
movss dword [esp + 0x58], xmm2
fstp dword [esp + 0x18]
call fcn.004040c0
fmul dword [esp + 0x18]
fld dword [0x738c74]
fxch st(1)
fcompi st(1)
fstp st(0)
jbe 0x4990c4
mov ecx, dword [ebx + 0x80]
xor eax, eax
cmp ecx, eax
mov dword [esp + 0x18], eax
jle 0x4990ad
mov dword [esp + 0x14], eax
lea edi, [ebx + 0x90]
mov eax, dword [edi + 4]
mov ecx, dword [edi]
mov esi, dword [ebx + 0x190]
mov edx, dword [esp + 0x14]
push eax
push ecx
mov ecx, 0x8d68e0
add esi, edx
call fcn.004013f0
test eax, eax
je 0x499081
mov eax, dword [esp + 0x1c]
movss xmm1, dword [eax + 0x30]
movss xmm2, dword [eax + 0x34]
movss xmm3, dword [eax + 0x38]
movss xmm0, dword [esi + 0x10]
lea eax, [esi + 0x10]
subss xmm0, xmm1
movss xmm1, dword [eax + 4]
addss xmm0, dword [esp + 0x40]
subss xmm1, xmm2
movss xmm2, dword [eax + 8]
addss xmm1, dword [esp + 0x44]
movss dword [esp + 0x20], xmm0
mov edx, dword [esp + 0x20]
mov dword [eax], edx
subss xmm2, xmm3
addss xmm2, dword [esp + 0x48]
movss dword [esp + 0x24], xmm1
mov ecx, dword [esp + 0x24]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x2c]
movss dword [esp + 0x28], xmm2
mov edx, dword [esp + 0x28]
mov dword [eax + 8], edx
mov dword [eax + 0xc], ecx
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x14]
mov ecx, dword [ebx + 0x80]
inc eax
add esi, 0x80
add edi, 0x40
cmp eax, ecx
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], esi
jl 0x498ff0
mov edi, dword [esp + 0x1c]
mov ecx, 0x10
lea esi, [esp + 0x90]
rep movsd dword es:[edi], dword [esi]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
mov ecx, 0x10
lea esi, [esp + 0x90]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebx + 0x80]
xor eax, eax
cmp ecx, eax
mov dword [esp + 0x1c], eax
jle 0x499366
lea esi, [ebx + 0x90]
mov dword [esp + 0x14], eax
mov dword [esp + 0x3c], esi
jmp 0x499100
mov ebx, dword [ebp + 8]
lea esp, [esp]
mov ebx, dword [ebx + 0x190]
mov eax, dword [esp + 0x14]
mov edx, dword [esi + 4]
add ebx, eax
mov eax, dword [esi]
push edx
push eax
mov ecx, 0x8d68e0
call fcn.004013f0
test eax, eax
je 0x499337
movss xmm1, dword [ebx + 0x60]
movss xmm2, dword [ebx + 0x70]
movss xmm0, dword [ebp + 0xc]
mulss xmm1, xmm0
lea edi, [ebx + 0x70]
lea esi, [ebx + 0x10]
mulss xmm2, xmm1
movss dword [edi], xmm2
movss xmm2, dword [edi + 4]
mulss xmm0, xmm0
mulss xmm2, xmm1
movss dword [edi + 4], xmm2
movss xmm2, dword [edi + 8]
mulss xmm2, xmm1
movss dword [edi + 8], xmm2
mulss xmm0, dword [ebx]
movss xmm3, dword [esi]
movaps xmm1, xmm0
mulss xmm0, dword [0x738f20]
mulss xmm1, dword [0x738a54]
mov ecx, esi
mov edx, dword [ecx]
mov eax, dword [ecx + 4]
mov dword [esp + 0x80], edx
mov edx, dword [ecx + 8]
mov dword [esp + 0x84], eax
mov eax, dword [ecx + 0xc]
movaps xmm2, xmm1
addss xmm3, xmm2
movss dword [esi], xmm3
movss xmm2, dword [esi + 4]
addss xmm2, xmm0
movss dword [esi + 4], xmm2
movss xmm0, dword [esi + 8]
addss xmm0, xmm1
movss dword [esi + 8], xmm0
movss xmm0, dword [esi]
addss xmm0, dword [edi]
movss dword [esi], xmm0
movss xmm0, dword [edi + 4]
addss xmm0, dword [esi + 4]
movss dword [esi + 4], xmm0
movss xmm0, dword [edi + 8]
addss xmm0, dword [esi + 8]
movss dword [esi + 8], xmm0
movss xmm0, dword [esi]
subss xmm0, dword [esp + 0x40]
movss dword [esp + 0x70], xmm0
movss xmm0, dword [esi + 4]
subss xmm0, dword [esp + 0x44]
mov ecx, dword [esp + 0x70]
movss dword [esp + 0x74], xmm0
movss xmm0, dword [esi + 8]
subss xmm0, dword [esp + 0x48]
mov dword [esp + 0x88], edx
mov edx, dword [esp + 0x74]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x7c]
mov dword [esp + 0x24], edx
mov edx, dword [ebx + 4]
mov dword [esp + 0x8c], eax
movss dword [esp + 0x78], xmm0
mov eax, dword [esp + 0x78]
mov dword [esp + 0x2c], ecx
push edx
lea ecx, [esp + 0x24]
mov dword [esp + 0x2c], eax
call fcn.0042e260
movss xmm0, dword [esp + 0x20]
addss xmm0, dword [esp + 0x40]
movss dword [esp + 0x60], xmm0
movss xmm0, dword [esp + 0x24]
addss xmm0, dword [esp + 0x44]
mov ecx, dword [esp + 0x60]
movss dword [esp + 0x64], xmm0
movss xmm0, dword [esp + 0x28]
addss xmm0, dword [esp + 0x48]
mov edx, dword [esp + 0x64]
mov eax, esi
movss dword [esp + 0x68], xmm0
mov dword [eax], ecx
mov ecx, dword [esp + 0x68]
mov dword [eax + 4], edx
mov edx, dword [esp + 0x6c]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
movss xmm0, dword [esi]
subss xmm0, dword [esp + 0x80]
movss dword [esp + 0x50], xmm0
movss xmm0, dword [esi + 4]
subss xmm0, dword [esp + 0x84]
mov ecx, dword [esp + 0x50]
movss dword [esp + 0x54], xmm0
movss xmm0, dword [esi + 8]
subss xmm0, dword [esp + 0x88]
mov edx, dword [esp + 0x54]
mov esi, dword [esp + 0x3c]
mov eax, edi
mov dword [eax], ecx
mov dword [eax + 4], edx
mov edx, dword [esp + 0x5c]
movss dword [esp + 0x58], xmm0
mov ecx, dword [esp + 0x58]
movss xmm0, dword [esp + 0x18]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
movss xmm1, dword [edi]
mulss xmm1, xmm0
movss dword [edi], xmm1
movss xmm1, dword [edi + 4]
mulss xmm1, xmm0
movss dword [edi + 4], xmm1
movss xmm1, dword [edi + 8]
mulss xmm1, xmm0
movss dword [edi + 8], xmm1
mov eax, dword [esp + 0x1c]
mov ebx, dword [esp + 0x14]
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x80]
inc eax
add ebx, 0x80
add esi, 0x40
cmp eax, edx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x14], ebx
mov dword [esp + 0x3c], esi
jl 0x4990f6
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8