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

Disassembly:
sub esp, 0x4c
push esi
push edi
mov edi, ecx
mov al, byte [edi + 0x230]
test al, al
jne 0x5953b8
fld dword [esp + 0x64]
fcomp dword [esp + 0x58]
fnstsw ax
test ah, 0x44
lea eax, [esp + 0x24]
push eax
jp 0x595217
call fcn.005946e0
fld dword [eax]
fsub dword [esp + 0x64]
fstp dword [esp + 8]
fld dword [edi + 0x238]
fchs
fcomp dword [esp + 8]
fnstsw ax
test ah, 0x41
je 0x5953ae
fld dword [esp + 8]
fcomp dword [edi + 0x238]
fnstsw ax
test ah, 0x41
je 0x5953ae
fld dword [esp + 0x5c]
fcomp dword [esp + 0x68]
fnstsw ax
test ah, 0x41
jne 0x595141
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0xc], ecx
jmp 0x595149
mov edx, dword [esp + 0x68]
mov dword [esp + 0xc], edx
fld dword [esp + 0x5c]
fcomp dword [esp + 0x68]
fnstsw ax
test ah, 5
jp 0x595162
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x58], eax
jmp 0x59516a
mov ecx, dword [esp + 0x68]
mov dword [esp + 0x58], ecx
fld dword [edi + 0x238]
lea edx, [esp + 0x24]
fld st(0)
push edx
fmul st(1)
mov ecx, edi
fld dword [esp + 0xc]
fmul dword [esp + 0xc]
fsubp st(1)
fsqrt
fstp dword [esp + 0x68]
fstp st(0)
call fcn.005946e0
fld dword [eax + 4]
fsub dword [esp + 0x64]
fcomp dword [esp + 0x58]
fnstsw ax
test ah, 0x41
jp 0x5951c6
lea eax, [esp + 0x24]
push eax
mov ecx, edi
call fcn.005946e0
fld dword [eax + 4]
fsub dword [esp + 0x64]
fcomp dword [esp + 0xc]
fnstsw ax
test ah, 1
je 0x59539f
lea ecx, [esp + 0x24]
push ecx
mov ecx, edi
call fcn.005946e0
fld dword [esp + 0x64]
fadd dword [eax + 4]
fcomp dword [esp + 0x58]
fnstsw ax
test ah, 0x41
jp 0x5953ae
lea edx, [esp + 0x58]
push edx
mov ecx, edi
call fcn.005946e0
fld dword [esp + 0x64]
fadd dword [eax + 4]
fcomp dword [esp + 0xc]
fnstsw ax
test ah, 1
jne 0x5953ae
pop edi
mov eax, 1
pop esi
add esp, 0x4c
ret 0x18
fld dword [esp + 0x6c]
fsub dword [esp + 0x60]
fld dword [esp + 0x68]
fsub dword [esp + 0x5c]
fdivp st(1)
fst dword [esp + 0xc]
fmul dword [esp + 0x68]
fsubr dword [esp + 0x6c]
fstp dword [esp + 0x10]
fld dword [esp + 0xc]
fmul dword [esp + 0xc]
fadd dword [0x73d764]
fstp dword [esp + 0x18]
call fcn.005946e0
lea ecx, [esp + 0x30]
push ecx
mov ecx, edi
mov esi, eax
call fcn.005946e0
fld dword [esp + 0xc]
fsub dword [eax + 4]
lea edx, [esp + 0x30]
push edx
mov ecx, edi
fmul dword [esp + 0xc]
fsub dword [esi]
fadd st(0), st(0)
fstp dword [esp + 0xc]
call fcn.005946e0
mov eax, dword [eax]
lea ecx, [esp + 0x24]
push ecx
mov ecx, edi
mov dword [esp + 0x1c], eax
call fcn.005946e0
fld dword [esp + 8]
fmul dword [esp + 8]
mov edx, dword [edi + 0x238]
mov ecx, edi
mov dword [esp + 0x10], edx
fstp dword [esp + 0x20]
fld dword [esp + 0x18]
fmul dword [eax]
lea eax, [esp + 0x3c]
push eax
fstp dword [esp + 0x20]
call fcn.005946e0
fld dword [esp + 0xc]
fsub dword [eax + 4]
lea ecx, [esp + 0x48]
push ecx
mov ecx, edi
fstp dword [esp + 0x1c]
call fcn.005946e0
fld dword [esp + 0xc]
fsub dword [eax + 4]
fmul dword [esp + 0x18]
fsubr dword [esp + 0x1c]
fld dword [esp + 0x10]
fmul dword [esp + 0x10]
fsubp st(1)
fmul dword [esp + 0x14]
fmul dword [0x73f404]
fsubr dword [esp + 0x20]
fcom dword [0x73d700]
fnstsw ax
test ah, 5
jnp 0x5953ac
fsqrt
fld dword [esp + 0x14]
fadd st(0), st(0)
fld dword [esp + 8]
fchs
fsub st(2)
fdiv st(1)
fstp dword [esp + 0x14]
fxch st(1)
fsub dword [esp + 8]
fdiv st(1)
fstp dword [esp + 0x10]
fstp st(0)
fld dword [esp + 0x58]
fcomp dword [esp + 0x64]
fnstsw ax
test ah, 0x41
jne 0x595343
fld dword [esp + 0x58]
jmp 0x595347
fld dword [esp + 0x64]
fld dword [esp + 0x58]
fcomp dword [esp + 0x64]
fnstsw ax
test ah, 5
jp 0x59535c
fld dword [esp + 0x58]
jmp 0x595360
fld dword [esp + 0x64]
fcom dword [esp + 0x14]
fnstsw ax
test ah, 1
jne 0x595389
fld st(1)
fcomp dword [esp + 0x14]
fnstsw ax
test ah, 0x41
jp 0x595389
fstp st(0)
pop edi
fstp st(0)
mov eax, 1
pop esi
add esp, 0x4c
ret 0x18
fcomp dword [esp + 0x10]
fnstsw ax
test ah, 1
jne 0x5953ac
fcomp dword [esp + 0x10]
fnstsw ax
test ah, 0x41
jp 0x5953ae
pop edi
mov eax, 1
pop esi
add esp, 0x4c
ret 0x18
fstp st(0)
pop edi
xor eax, eax
pop esi
add esp, 0x4c
ret 0x18
push ebx
push ebp
call fcn.004cb120
mov ebx, eax
test ebx, ebx
je 0x59542b
mov ebp, dword [esp + 0x6c]
xor esi, esi
jmp 0x5953d0
cmp esi, 3
je 0x5953da
lea ecx, [esi + 1]
jmp 0x5953dc
xor ecx, ecx
mov eax, dword [edi + 0x244]
lea edx, [ecx + ecx*2]
lea ecx, [eax + edx*4]
lea edx, [esi + esi*2]
lea eax, [eax + edx*4]
lea edx, [esp + 0x28]
push edx
lea edx, [esp + 0x28]
push edx
mov edx, dword [ecx + 4]
mov ecx, dword [ecx]
push edx
mov edx, dword [eax + 4]
mov eax, dword [eax]
push ecx
mov ecx, dword [esp + 0x80]
push edx
mov edx, dword [esp + 0x78]
push eax
mov eax, dword [esp + 0x78]
push ecx
push ebp
push edx
push eax
mov ecx, ebx
call fcn.0058f840
cmp eax, 1
je 0x595437
inc esi
cmp esi, 4
jl 0x5953d0
pop ebp
pop ebx
pop edi
xor eax, eax
pop esi
add esp, 0x4c
ret 0x18
pop ebp
pop ebx
pop edi
mov eax, 1
pop esi
add esp, 0x4c
ret 0x18