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

Disassembly:
sub esp, 0x60
push ebx
push esi
mov esi, dword [esp + 0x6c]
test esi, esi
push edi
je 0x4ef79b
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
test eax, eax
je 0x4ef43f
cmp eax, 0x7ddeb8
je 0x4ef508
mov eax, dword [eax + 4]
test eax, eax
jne 0x4ef42d
xor bl, bl
neg bl
sbb ebx, ebx
and ebx, esi
je 0x4ef556
mov edi, dword [ebx + 0x9c]
mov ecx, edi
dec edi
test ecx, ecx
je 0x4ef79b
push ebp
mov ebp, dword [esp + 0x80]
cmp dword [ebx + 0x9c], edi
jbe 0x4ef543
mov edx, dword [ebx + 0x94]
mov esi, dword [edx + edi*4]
test esi, esi
je 0x4ef543
mov eax, dword [esi + 0x2c]
push eax
lea ecx, [esp + 0x50]
push ecx
mov ecx, dword [esp + 0x8c]
call fcn.006e80a0
fld dword [esi + 0x3c]
mov edx, dword [esp + 0x88]
mov ecx, dword [esp + 0x84]
fmul dword [edx]
add esi, 0x30
push esi
lea eax, [esp + 0x38]
fstp dword [esp + 0x84]
push eax
call fcn.006e8230
mov ecx, dword [esp + 0x88]
fld dword [ecx]
fld st(0)
fmul dword [eax]
fstp dword [esp + 0x10]
fld st(0)
fmul dword [eax + 4]
fstp dword [esp + 0x14]
fmul dword [eax + 8]
mov eax, dword [ebx + 0x9c]
cmp eax, edi
fld dword [esp + 0x10]
fadd dword [ebp]
fstp dword [esp + 0x1c]
fld dword [esp + 0x14]
fadd dword [ebp + 4]
fstp dword [esp + 0x20]
fadd dword [ebp + 8]
fstp dword [esp + 0x24]
ja 0x4ef50f
xor eax, eax
jmp 0x4ef518
mov bl, 1
jmp 0x4ef441
mov edx, dword [ebx + 0x94]
mov eax, dword [edx + edi*4]
lea ecx, [esp + 0x80]
push ecx
lea edx, [esp + 0x50]
push edx
mov edx, dword [esp + 0x84]
lea ecx, [esp + 0x24]
push ecx
mov ecx, dword [esp + 0x84]
push edx
push ecx
push eax
call fcn.004ef410
add esp, 0x18
mov edx, edi
dec edi
test edx, edx
jne 0x4ef466
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x60
ret
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
test eax, eax
je 0x4ef79b
cmp eax, 0x7de94c
je 0x4ef57a
mov eax, dword [eax + 4]
test eax, eax
jne 0x4ef565
pop edi
pop esi
pop ebx
add esp, 0x60
ret
mov edx, dword [esi + 0x98]
mov ecx, dword [edx + 0x1c]
xor eax, eax
mov ax, word [edx + 8]
mov dword [esp + 0x30], 0x7f7fffff
mov dword [esp + 0x34], 0x7f7fffff
mov dword [esp + 0x38], 0x7f7fffff
mov dword [esp + 0x3c], 0xff7fffff
mov dword [esp + 0x40], 0xff7fffff
mov dword [esp + 0x44], 0xff7fffff
mov edx, eax
dec eax
test edx, edx
je 0x4ef647
lea edx, [eax + 1]
fld dword [ecx]
fcomp dword [esp + 0x30]
fnstsw ax
test ah, 1
je 0x4ef5da
mov eax, dword [ecx]
mov dword [esp + 0x30], eax
fld dword [ecx]
fcomp dword [esp + 0x3c]
fnstsw ax
test ah, 0x41
jne 0x4ef5ed
mov eax, dword [ecx]
mov dword [esp + 0x3c], eax
fld dword [ecx + 4]
fcomp dword [esp + 0x34]
fnstsw ax
test ah, 1
je 0x4ef602
mov eax, dword [ecx + 4]
mov dword [esp + 0x34], eax
fld dword [ecx + 4]
fcomp dword [esp + 0x40]
fnstsw ax
test ah, 0x41
jne 0x4ef617
mov eax, dword [ecx + 4]
mov dword [esp + 0x40], eax
fld dword [ecx + 8]
fcomp dword [esp + 0x38]
fnstsw ax
test ah, 1
je 0x4ef62c
mov eax, dword [ecx + 8]
mov dword [esp + 0x38], eax
fld dword [ecx + 8]
fcomp dword [esp + 0x44]
fnstsw ax
test ah, 0x41
jne 0x4ef641
mov eax, dword [ecx + 8]
mov dword [esp + 0x44], eax
add ecx, 0xc
dec edx
jne 0x4ef5c7
mov eax, dword [esp + 0x7c]
lea ecx, [esp + 0x18]
push ecx
mov ecx, dword [esp + 0x84]
lea edx, [esp + 0x34]
push edx
push 2
push eax
push ecx
call fcn.006e8760
fld dword [esp + 0x34]
mov edx, dword [esp + 0x2c]
fld dword [esp + 0x38]
mov eax, dword [esp + 0x30]
fcomp dword [esp + 0x2c]
mov ecx, edx
mov dword [esp + 0x50], edx
mov edx, eax
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x4c], eax
fnstsw ax
add esp, 0x14
test ah, 1
mov dword [esp + 0x30], ecx
mov dword [esp + 0x34], edx
je 0x4ef6a7
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x30], ecx
fld dword [esp + 0x24]
fcomp dword [esp + 0x18]
fnstsw ax
test ah, 0x41
jne 0x4ef6be
mov edx, dword [esp + 0x24]
mov dword [esp + 0x3c], edx
fld dword [esp + 0x28]
fcomp dword [esp + 0x1c]
fnstsw ax
test ah, 1
je 0x4ef6d5
mov eax, dword [esp + 0x28]
mov dword [esp + 0x34], eax
fld dword [esp + 0x28]
fcomp dword [esp + 0x1c]
fnstsw ax
test ah, 0x41
jne 0x4ef6ec
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x40], ecx
fld dword [esp + 0x2c]
fcomp dword [esp + 0x20]
fnstsw ax
test ah, 1
je 0x4ef703
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x38], edx
fld dword [esp + 0x2c]
fcomp dword [esp + 0x20]
fnstsw ax
test ah, 0x41
jne 0x4ef718
fstp st(0)
fld dword [esp + 0x2c]
fld dword [esp + 0x30]
mov edx, dword [esp + 0x74]
fcomp dword [edx]
fnstsw ax
test ah, 1
je 0x4ef72f
mov eax, dword [esp + 0x30]
mov dword [edx], eax
fld dword [esp + 0x3c]
mov ecx, dword [esp + 0x78]
fcomp dword [ecx]
fnstsw ax
test ah, 0x41
jne 0x4ef746
mov eax, dword [esp + 0x3c]
mov dword [ecx], eax
fld dword [esp + 0x34]
fcomp dword [edx + 4]
fnstsw ax
test ah, 1
je 0x4ef75b
mov eax, dword [esp + 0x34]
mov dword [edx + 4], eax
fld dword [esp + 0x40]
fcomp dword [ecx + 4]
fnstsw ax
test ah, 0x41
jne 0x4ef770
mov eax, dword [esp + 0x40]
mov dword [ecx + 4], eax
fld dword [esp + 0x38]
fcomp dword [edx + 8]
fnstsw ax
test ah, 1
je 0x4ef785
mov eax, dword [esp + 0x38]
mov dword [edx + 8], eax
fcom dword [ecx + 8]
fnstsw ax
test ah, 0x41
jne 0x4ef799
pop edi
fstp dword [ecx + 8]
pop esi
pop ebx
add esp, 0x60
ret
fstp st(0)
pop edi
pop esi
pop ebx
add esp, 0x60
ret