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

Disassembly:
sub esp, 0x64
mov eax, dword [0x89e7a8]
push ebx
push esi
push edi
mov edi, ecx
mov ecx, dword [0x883dac]
fld dword [ecx + eax*4 + 0x108]
mov ecx, dword [0x890080]
fsubr dword [0x784250]
push 0x3f800000
mov dword [esp + 0x1c], edi
fstp dword [esp + 0x20]
call fcn.005ea280
fcomp dword [esp + 0x1c]
mov byte [esp + 0xf], 1
fnstsw ax
test ah, 5
jnp 0x42ea7d
mov byte [esp + 0xf], 0
mov ebx, dword [esp + 0x78]
mov edx, dword [ebx + 0x8fc]
mov esi, dword [esp + 0x74]
mov eax, dword [esi + 0x8fc]
mov ecx, edx
mov dword [esp + 0x1c], edx
push ecx
mov edx, eax
push edx
mov ecx, 0x88f298
mov dword [esp + 0x1c], eax
call fcn.005d5a20
fstp dword [esp + 0x14]
mov eax, dword [esi + 0x2c]
mov ecx, ebx
mov dword [esp + 0x30], eax
call fcn.005ebe20
mov esi, eax
mov ecx, ebx
mov dword [esp + 0x4c], esi
call fcn.005ebe30
test esi, esi
mov dword [esp + 0x50], eax
je 0x42eae8
test eax, eax
je 0x42eae8
mov ecx, dword [eax + 0xc]
and ecx, 0x7ff
cmp word [esi + 0xa], cx
sete al
test al, al
jne 0x42eaf3
pop edi
pop esi
xor al, al
pop ebx
add esp, 0x64
ret 0xc
mov eax, dword [ebx + 0x18]
test eax, eax
mov byte [esp + 0xe], 1
je 0x42eb07
mov cl, byte [eax + 0x248]
jmp 0x42eb09
xor cl, cl
fld dword [ebx + 0x430]
fcomp dword [0x7845a4]
fnstsw ax
test ah, 5
jp 0x42eb3b
mov ecx, dword [0x890080]
push 0x3f800000
call fcn.005ea280
fcomp dword [0x784260]
fnstsw ax
test ah, 5
jp 0x42eb44
jmp 0x42eb3f
test cl, cl
je 0x42eb44
mov byte [esp + 0xe], 0
mov al, byte [0x88f2be]
test al, al
je 0x42eb62
mov edx, dword [esi + 0x70]
and edx, 2
test dl, dl
je 0x42eb62
mov al, byte [esp + 0xe]
test al, al
sete al
jmp 0x42eb66
mov al, byte [esp + 0xe]
push ebp
mov byte [esp + 0x58], al
push 3
lea eax, [esp + 0x54]
push eax
mov ecx, edi
call fcn.00417db0
mov ecx, eax
mov eax, dword [edi + 0xc]
inc eax
cdq
idiv ecx
push 0
mov dword [esp + 0x4c], 0
lea ecx, [edx + edx*2]
mov dword [edi + 0xc], edx
lea edx, [esp + ecx*4 + 0x54]
mov eax, dword [edx]
mov dword [esp + 0x3c], eax
mov eax, dword [edx + 4]
mov ecx, dword [edx + 8]
push ecx
mov dword [esp + 0x48], ecx
mov ecx, dword [0x7e9720]
push ecx
push eax
lea edx, [esp + 0x48]
push 1
push edx
mov dword [esp + 0x54], eax
call fcn.00415160
mov ebp, eax
add esp, 0x18
xor eax, eax
cmp ebp, 1
jne 0x42ed69
mov esi, dword [esp + 0x3c]
jmp 0x42ebe1
mov ebx, dword [esp + 0x7c]
mov edi, dword [esp + 0x1c]
mov eax, dword [esp + 0x24]
cmp dword [esp + 0x48], esi
je 0x42ed69
mov ecx, eax
inc eax
cmp ecx, 0x64
mov dword [esp + 0x24], eax
jge 0x42ed75
mov ecx, esi
call fcn.005dc9f0
test al, al
je 0x42ec29
mov edx, dword [ebx + 0x8fc]
mov eax, dword [esi + 8]
mov ecx, edx
mov dword [esp + 0x28], edx
push ecx
mov edx, eax
push edx
mov ecx, 0x88f298
mov dword [esp + 0x34], eax
call fcn.005d5a20
jmp 0x42ec4a
mov ecx, ebx
call fcn.004018c0
fld dword [esi]
fsub dword [eax]
fld dword [esi + 4]
fsub dword [eax + 4]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fsqrt
fstp st(2)
fstp st(0)
fst dword [esp + 0x20]
fcomp dword [0x783ba8]
fnstsw ax
test ah, 0x41
je 0x42ed69
mov cl, byte [esp + 0x40]
mov al, byte [esp + 0x13]
test cl, cl
sete bl
xor bl, al
mov byte [esp + 0x30], bl
mov eax, dword [esp + 0x30]
push eax
push esi
mov ecx, edi
call fcn.00410cd0
mov edi, eax
cmp edi, 0xffffffff
jne 0x42ec9d
test bl, bl
sete cl
push ecx
mov ecx, dword [esp + 0x20]
push esi
call fcn.00410cd0
mov edi, eax
cmp edi, 0xffffffff
je 0x42ecda
mov al, byte [esp + 0x13]
test al, al
mov eax, dword [esi + 0xc]
je 0x42ecad
shr eax, 0x19
jmp 0x42ecb0
shr eax, 0x1a
and eax, 1
test eax, eax
je 0x42ecda
mov ebx, dword [esp + 0x78]
mov edx, dword [esp + 0x80]
mov ecx, dword [esp + 0x1c]
push ebx
push edx
lea eax, [esp + 0x40]
push eax
call fcn.00418140
test al, al
jne 0x42ed8c
movzx ecx, word [esi + 0x10]
shl ecx, 8
mov dword [esp + 0x20], ecx
fild dword [esp + 0x20]
fmul dword [0x784278]
fld dword [esp + 0x80]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x42ed0e
mov edx, dword [esp + 0x80]
fstp st(0)
mov dword [esp + 0x14], edx
jmp 0x42ed12
fstp dword [esp + 0x14]
mov edi, esi
cmp edi, esi
je 0x42ed1c
test ebp, ebp
jne 0x42ed60
cmp dword [esp + 0x48], esi
je 0x42ed60
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x14]
push 0
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x44]
push eax
push ecx
push esi
lea edx, [esp + 0x48]
push 1
push edx
mov dword [esp + 0x60], esi
mov dword [esp + 0x64], eax
call fcn.00415160
fld dword [esp + 0x2c]
mov esi, dword [esp + 0x54]
fadd st(0), st(0)
add esp, 0x18
mov ebp, eax
fstp dword [esp + 0x14]
jmp 0x42ed14
cmp ebp, 1
je 0x42ebd5
pop ebp
pop edi
pop esi
xor al, al
pop ebx
add esp, 0x64
ret 0xc
mov eax, dword [0x827acc]
pop ebp
pop edi
inc eax
pop esi
mov dword [0x827acc], eax
xor al, al
pop ebx
add esp, 0x64
ret 0xc
mov eax, dword [esp + 0x34]
mov cl, byte [eax + 0x77c]
test cl, cl
jne 0x42edef
mov al, byte [0x88f2be]
test al, al
je 0x42edef
fld dword [esp + 0x18]
mov al, byte [esp + 0x12]
fcomp dword [0x7d7d3c]
test al, al
fnstsw ax
je 0x42edd7
test ah, 0x41
jne 0x42edef
fld dword [esp + 0x20]
fcomp dword [esp + 0x18]
fnstsw ax
test ah, 0x41
jne 0x42edef
pop ebp
pop edi
pop esi
xor al, al
pop ebx
add esp, 0x64
ret 0xc
test ah, 5
jp 0x42edef
fld dword [esp + 0x20]
fcomp dword [esp + 0x18]
fnstsw ax
test ah, 5
jnp 0x42ed69
movzx ecx, byte [edi + esi + 0x2c]
shl ecx, 0x10
mov dword [esp + 0x80], ecx
push 0
push ecx
fild dword [esp + 0x88]
mov ecx, dword [esp + 0x24]
fmul dword [0x784278]
fstp dword [esp]
push 0x41c4b127
push edi
push 0
push esi
push ebx
call fcn.0042c990
pop ebp
pop edi
pop esi
mov al, 1
pop ebx
add esp, 0x64
ret 0xc