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

Disassembly:
sub esp, 0x90
push ebx
push esi
mov esi, dword [esp + 0xa4]
push edi
mov edi, dword [esi + 0x14]
xor ebx, ebx
cmp edi, ebx
mov dword [esp + 0x78], ebx
mov dword [esp + 0x64], edi
je 0x4cce9d
push edi
call fcn.004d72c0
add esp, 4
mov dword [esi + 0x14], ebx
fld dword [esp + 0xa4]
push 0x56ecdc
push esi
push ecx
fstp dword [esp]
call fcn.004ca0e0
add esp, 0xc
cmp eax, ebx
mov dword [esp + 0x94], eax
jne 0x4cceda
cmp edi, ebx
je 0x4cda71
mov eax, dword [0x5710dc]
add eax, 7
sar eax, 3
push eax
jmp 0x4cda68
cmp eax, ebx
mov ecx, dword [0x56ece0]
mov dword [esp + 0x98], ecx
mov dword [esp + 0x7c], ebx
jle 0x4cda57
push ebp
jmp 0x4ccf00
mov edx, dword [esp + 0x9c]
fld dword [esp + 0xa8]
mov eax, dword [esp + 0x80]
mov ebp, dword [edx + eax*4]
push ecx
lea ebx, [esp + 0x8c]
fstp dword [esp]
mov edi, ebp
mov eax, esi
call fcn.004cb9d0
add esp, 4
cmp eax, 1
jne 0x4cd96a
fld1
mov edx, dword [esp + 0xa4]
lea ecx, [esp + 0x78]
push ecx
sub esp, 8
fstp dword [esp + 4]
fldz
fstp dword [esp]
push edx
call fcn.004cb370
mov ebx, eax
add esp, 0x10
test ebx, ebx
mov dword [esp + 0x74], ebx
je 0x4cd96a
fld dword [esp + 0x78]
fld dword [0x55f1ec]
fcompp
fnstsw ax
test ah, 5
jnp 0x4cd96a
fld dword [esp + 0xa8]
push 1
push ebx
push ecx
mov eax, ebp
fstp dword [esp]
mov ecx, esi
call fcn.004cbb00
mov edi, eax
add esp, 0xc
test edi, edi
je 0x4cd96a
fld dword [ebp + 8]
lea eax, [ebx + 8]
fsub dword [esi + 8]
mov dword [esp + 0x58], eax
fstp dword [esp + 0x5c]
fld dword [ebp + 0xc]
fsub dword [esi + 0xc]
fstp dword [esp + 0x60]
fld dword [ebp + 0x10]
fsub dword [esi + 0x10]
fstp dword [esp + 0x64]
fld dword [edi + 8]
fsub dword [eax]
lea eax, [ebx + 0xc]
mov dword [esp + 0x6c], eax
fstp dword [esp + 0x48]
fld dword [edi + 0xc]
fsub dword [eax]
lea eax, [ebx + 0x10]
mov dword [esp + 0x70], eax
fstp dword [esp + 0x4c]
fld dword [edi + 0x10]
fsub dword [eax]
fstp dword [esp + 0x50]
fld dword [esp + 0x4c]
fld dword [esp + 0x60]
fld st(0)
fmulp st(2)
fld dword [esp + 0x48]
fld dword [esp + 0x5c]
fld st(0)
fmulp st(2)
fxch st(3)
faddp st(1)
fld dword [esp + 0x50]
fld dword [esp + 0x64]
fld st(0)
fmulp st(2)
fxch st(2)
faddp st(1)
fcomp qword [0x50c4e8]
fnstsw ax
test ah, 5
jp 0x4cd067
mov eax, edi
mov edi, ebx
fld dword [edi + 8]
lea ecx, [eax + 8]
fsub dword [ecx]
mov dword [esp + 0x58], ecx
lea ecx, [eax + 0xc]
mov dword [esp + 0x74], eax
mov ebx, dword [esp + 0x74]
fstp dword [esp + 0x48]
fld dword [edi + 0xc]
add eax, 0x10
fsub dword [ecx]
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x70], eax
fstp dword [esp + 0x4c]
fld dword [edi + 0x10]
fsub dword [eax]
fstp dword [esp + 0x50]
cmp esi, edi
je 0x4cd964
cmp ebp, ebx
je 0x4cd964
fld st(2)
fmulp st(3)
fld st(1)
fmulp st(2)
fxch st(2)
faddp st(1)
fld st(1)
fmulp st(2)
faddp st(1)
call fcn.00417560
fstp dword [esp + 0x54]
fld dword [esp + 0x54]
mov edx, dword [esp + 0x88]
fstp dword [esp + 0x54]
mov ecx, dword [edx + 0x10]
fld dword [esp + 0x54]
mov ecx, dword [ecx + 4]
fld1
mov eax, dword [edx + 0x14]
fdivrp st(1)
mov eax, dword [eax + 4]
mov edx, dword [edx + 0x18]
fld dword [esp + 0x5c]
fmul st(1)
fstp dword [esp + 0x5c]
fld dword [esp + 0x60]
fmul st(1)
fstp dword [esp + 0x60]
fmul dword [esp + 0x64]
fstp dword [esp + 0x64]
fld dword [ecx + 8]
fadd dword [eax + 8]
fstp dword [esp + 0x3c]
fld dword [ecx + 0xc]
fadd dword [eax + 0xc]
fstp dword [esp + 0x40]
fld dword [ecx + 0x10]
fadd dword [eax + 0x10]
mov eax, dword [edx + 4]
fstp dword [esp + 0x44]
fld dword [eax + 8]
fadd dword [esp + 0x3c]
fstp dword [esp + 0x3c]
fld dword [eax + 0xc]
fadd dword [esp + 0x40]
fstp dword [esp + 0x40]
fld dword [eax + 0x10]
fadd dword [esp + 0x44]
fstp dword [esp + 0x44]
fld dword [esp + 0x3c]
fld qword [0x511450]
fmul st(1), st(0)
fxch st(1)
fstp dword [esp + 0x3c]
fld dword [esp + 0x40]
fmul st(1)
fstp dword [esp + 0x40]
fmul dword [esp + 0x44]
fstp dword [esp + 0x44]
fld dword [esp + 0x3c]
fld st(0)
fsub dword [esi + 8]
fstp dword [esp + 0x24]
fld dword [esp + 0x40]
fld st(0)
fsub dword [esi + 0xc]
fstp dword [esp + 0x28]
fld dword [esp + 0x44]
fld st(0)
fsub dword [esi + 0x10]
fstp dword [esp + 0x2c]
fld st(2)
fsub dword [ebp + 8]
fstp dword [esp + 0x30]
fld dword [ebp + 0xc]
fsubp st(2)
fxch st(1)
fstp dword [esp + 0x34]
fsub dword [ebp + 0x10]
fstp dword [esp + 0x38]
fld dword [esp + 0x34]
fld dword [esp + 0x60]
fld st(0)
fmulp st(2)
fld dword [esp + 0x30]
fld dword [esp + 0x5c]
fld st(0)
fmulp st(2)
fxch st(3)
faddp st(1)
fld dword [esp + 0x38]
fld dword [esp + 0x64]
fld st(0)
fmulp st(2)
fxch st(2)
faddp st(1)
fabs
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fld dword [esp + 0x28]
fmul st(3)
fld dword [esp + 0x24]
fmul st(5)
faddp st(1)
fld dword [esp + 0x2c]
fmul st(3)
faddp st(1)
fabs
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fcompp
fnstsw ax
test ah, 0x41
jne 0x4cd1f3
fld dword [esp + 0x30]
fstp dword [esp + 0x24]
fld dword [esp + 0x34]
fstp dword [esp + 0x28]
fld dword [esp + 0x38]
fstp dword [esp + 0x2c]
mov eax, dword [esp + 0x58]
fld st(3)
fsub dword [eax]
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x70]
fstp dword [esp + 0x18]
fld dword [esp + 0x40]
fld st(0)
fsub dword [ecx]
fstp dword [esp + 0x1c]
fld dword [esp + 0x44]
fld st(0)
fsub dword [edx]
fstp dword [esp + 0x20]
fld dword [edi + 8]
fsubp st(6)
fxch st(5)
fstp dword [esp + 0x30]
fsub dword [edi + 0xc]
fstp dword [esp + 0x34]
fld dword [edi + 0x10]
fsubp st(4)
fxch st(3)
fstp dword [esp + 0x38]
fld dword [esp + 0x34]
fld st(0)
fmul st(2)
fld dword [esp + 0x30]
fld st(0)
fmul st(5)
faddp st(2)
fld dword [esp + 0x38]
fmul st(6)
faddp st(2)
fxch st(1)
fabs
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fld dword [esp + 0x1c]
fmulp st(4)
fld dword [esp + 0x18]
fmulp st(5)
fxch st(3)
faddp st(4)
fld dword [esp + 0x20]
fmulp st(5)
fxch st(3)
faddp st(4)
fxch st(3)
fabs
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fcompp
fnstsw ax
test ah, 0x41
jne 0x4cd2a3
fstp dword [esp + 0x18]
fstp dword [esp + 0x1c]
fld dword [esp + 0x38]
fstp dword [esp + 0x20]
jmp 0x4cd2a7
fstp st(1)
fstp st(0)
fld dword [esp + 0x28]
fld dword [esp + 0x24]
fld dword [esp + 0x2c]
fld st(1)
fmulp st(2)
fld st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
fmul st(0), st(0)
faddp st(1)
call fcn.00417560
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fstp dword [esp + 0x14]
fldz
fld dword [esp + 0x14]
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x44
jnp 0x4cd30f
fld1
fdivrp st(1)
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fld st(0)
fmul dword [esp + 0x24]
fstp dword [esp + 0x24]
fld st(0)
fmul dword [esp + 0x28]
fstp dword [esp + 0x28]
fmul dword [esp + 0x2c]
fstp dword [esp + 0x2c]
jmp 0x4cd311
fstp st(0)
fld dword [esp + 0x1c]
fld dword [esp + 0x18]
fld dword [esp + 0x20]
fld st(1)
fmulp st(2)
fld st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
fmul st(0), st(0)
faddp st(1)
call fcn.00417560
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fstp dword [esp + 0x14]
fldz
fld dword [esp + 0x14]
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x44
jnp 0x4cd379
fld1
fdivrp st(1)
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fld st(0)
fmul dword [esp + 0x18]
fstp dword [esp + 0x18]
fld st(0)
fmul dword [esp + 0x1c]
fstp dword [esp + 0x1c]
fmul dword [esp + 0x20]
fstp dword [esp + 0x20]
jmp 0x4cd37b
fstp st(0)
fld dword [esp + 0x24]
fstp dword [esp + 0x14]
fld dword [esp + 0x28]
fst dword [esp + 0x10]
fld dword [esp + 0x64]
fld st(0)
fmulp st(2)
fld dword [esp + 0x2c]
fld st(0)
fld dword [esp + 0x60]
fld st(0)
fmulp st(2)
fxch st(4)
fsubrp st(1)
fstp dword [esp + 0x24]
fld dword [esp + 0x5c]
fld st(0)
fmulp st(2)
fld dword [esp + 0x14]
fld st(0)
fmul st(4)
fsubp st(3)
fxch st(2)
fstp dword [esp + 0x28]
fld st(3)
fmulp st(2)
fld dword [esp + 0x10]
fmul st(1)
fsubp st(2)
fxch st(1)
fstp dword [esp + 0x2c]
fld dword [esp + 0x18]
fstp dword [esp + 0x10]
fld dword [esp + 0x1c]
fst dword [esp + 0x14]
fmul st(2)
fld dword [esp + 0x20]
fld st(0)
fmul st(5)
fsubp st(2)
fxch st(1)
fstp dword [esp + 0x18]
fmul st(1)
fld dword [esp + 0x10]
fld st(0)
fmulp st(4)
fxch st(1)
fsubrp st(3)
fxch st(2)
fstp dword [esp + 0x1c]
fxch st(1)
fmulp st(2)
fmul dword [esp + 0x14]
fsubp st(1)
fstp dword [esp + 0x20]
fld dword [esp + 0x1c]
fmul dword [esp + 0x28]
fld dword [esp + 0x18]
fmul dword [esp + 0x24]
faddp st(1)
fld dword [esp + 0x20]
fmul dword [esp + 0x2c]
faddp st(1)
fcomp qword [0x50c4e8]
fnstsw ax
test ah, 5
jnp 0x4cd96a
fld dword [esp + 0xa8]
mov eax, dword [esp + 0x74]
push ecx
lea ebx, [esp + 0x94]
fstp dword [esp]
call fcn.004cb9d0
fld dword [esp + 0x50]
fld dword [esp + 0x4c]
add esp, 4
fld dword [esp + 0x50]
fld st(1)
fmulp st(2)
fld st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
fmul st(0), st(0)
faddp st(1)
call fcn.00417560
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp + 0x10]
fldz
fld dword [esp + 0x10]
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x44
jnp 0x4cd4ca
fld1
fdivrp st(1)
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fld st(0)
fmul dword [esp + 0x48]
fstp dword [esp + 0x48]
fld st(0)
fmul dword [esp + 0x4c]
fstp dword [esp + 0x4c]
fmul dword [esp + 0x50]
fstp dword [esp + 0x50]
jmp 0x4cd4cc
fstp st(0)
mov edx, dword [esp + 0x90]
fld dword [esp + 0x50]
mov ecx, dword [edx + 0x10]
mov ecx, dword [ecx + 4]
mov eax, dword [edx + 0x14]
fld dword [ecx + 8]
mov eax, dword [eax + 4]
fadd dword [eax + 8]
mov edx, dword [edx + 0x18]
fstp dword [esp + 0x3c]
fld dword [ecx + 0xc]
fadd dword [eax + 0xc]
fstp dword [esp + 0x40]
fld dword [ecx + 0x10]
fadd dword [eax + 0x10]
mov eax, dword [edx + 4]
fstp dword [esp + 0x44]
fld dword [eax + 8]
fadd dword [esp + 0x3c]
fstp dword [esp + 0x3c]
fld dword [eax + 0xc]
fadd dword [esp + 0x40]
fstp dword [esp + 0x40]
fld dword [eax + 0x10]
fadd dword [esp + 0x44]
fstp dword [esp + 0x44]
fld dword [esp + 0x3c]
fld qword [0x511450]
fmul st(1), st(0)
fxch st(1)
fstp dword [esp + 0x3c]
fld dword [esp + 0x40]
fmul st(1)
fstp dword [esp + 0x40]
fmul dword [esp + 0x44]
fstp dword [esp + 0x44]
fld dword [esp + 0x3c]
fld st(0)
fsub dword [esi + 8]
fstp dword [esp + 0x24]
fld dword [esp + 0x40]
fld st(0)
fsub dword [esi + 0xc]
fstp dword [esp + 0x28]
fld dword [esp + 0x44]
fld st(0)
fsub dword [esi + 0x10]
fstp dword [esp + 0x2c]
fld st(2)
fsub dword [ebp + 8]
fstp dword [esp + 0x30]
fld st(1)
fsub dword [ebp + 0xc]
fstp dword [esp + 0x34]
fld st(0)
fsub dword [ebp + 0x10]
fstp dword [esp + 0x38]
fld dword [esp + 0x34]
fld dword [esp + 0x4c]
fld st(0)
fmulp st(2)
fld dword [esp + 0x30]
fmul dword [esp + 0x48]
faddp st(2)
fld dword [esp + 0x38]
fmul st(6)
faddp st(2)
fxch st(1)
fabs
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fld dword [esp + 0x28]
fmulp st(2)
fld dword [esp + 0x24]
fmul dword [esp + 0x48]
faddp st(2)
fld dword [esp + 0x2c]
fmul st(6)
faddp st(2)
fxch st(1)
fabs
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fcompp
fnstsw ax
test ah, 0x41
jne 0x4cd5fd
fld dword [esp + 0x30]
fstp dword [esp + 0x24]
fld dword [esp + 0x34]
fstp dword [esp + 0x28]
fld dword [esp + 0x38]
fstp dword [esp + 0x2c]
mov ebx, dword [esp + 0x58]
fld st(2)
fsub dword [ebx]
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x70]
fstp dword [esp + 0x18]
fld st(1)
fsub dword [eax]
fstp dword [esp + 0x1c]
fld st(0)
fsub dword [ecx]
fstp dword [esp + 0x20]
fld dword [edi + 8]
fsubp st(3)
fxch st(2)
fstp dword [esp + 0x30]
fsub dword [edi + 0xc]
fstp dword [esp + 0x34]
fsub dword [edi + 0x10]
fstp dword [esp + 0x38]
fld dword [esp + 0x34]
fld st(0)
fld dword [esp + 0x4c]
fld st(0)
fmulp st(2)
fld dword [esp + 0x30]
fld st(0)
fmul dword [esp + 0x48]
faddp st(3)
fld dword [esp + 0x38]
fld st(0)
fmul st(6)
faddp st(4)
fxch st(3)
fabs
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fld dword [esp + 0x1c]
fmulp st(3)
fld dword [esp + 0x18]
fmul dword [esp + 0x48]
faddp st(3)
fld dword [esp + 0x20]
fmulp st(6)
fxch st(2)
faddp st(5)
fxch st(4)
fabs
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fcompp
fnstsw ax
test ah, 0x41
jne 0x4cd6a9
fxch st(2)
fstp dword [esp + 0x18]
fstp dword [esp + 0x1c]
fstp dword [esp + 0x20]
jmp 0x4cd6af
fstp st(1)
fstp st(1)
fstp st(0)
fld dword [esp + 0x28]
fld dword [esp + 0x24]
fld dword [esp + 0x2c]
fld st(1)
fmulp st(2)
fld st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
fmul st(0), st(0)
faddp st(1)
call fcn.00417560
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp + 0x10]
fldz
fld dword [esp + 0x10]
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x44
jnp 0x4cd717
fld1
fdivrp st(1)
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fld st(0)
fmul dword [esp + 0x24]
fstp dword [esp + 0x24]
fld st(0)
fmul dword [esp + 0x28]
fstp dword [esp + 0x28]
fmul dword [esp + 0x2c]
fstp dword [esp + 0x2c]
jmp 0x4cd719
fstp st(0)
fld dword [esp + 0x1c]
fld dword [esp + 0x18]
fld dword [esp + 0x20]
fld st(1)
fmulp st(2)
fld st(2)
fmulp st(3)
fxch st(1)
faddp st(2)
fmul st(0), st(0)
faddp st(1)
call fcn.00417560
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp + 0x10]
fldz
fld st(0)
fld dword [esp + 0x10]
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x44
jnp 0x4cd783
fld1
fdivrp st(1)
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fld st(0)
fmul dword [esp + 0x18]
fstp dword [esp + 0x18]
fld st(0)
fmul dword [esp + 0x1c]
fstp dword [esp + 0x1c]
fmul dword [esp + 0x20]
fstp dword [esp + 0x20]
jmp 0x4cd785
fstp st(0)
fld dword [esp + 0x24]
fstp dword [esp + 0x10]
fld dword [esp + 0x28]
fst dword [esp + 0x14]
fld dword [esp + 0x50]
fld st(0)
fmulp st(2)
fld dword [esp + 0x2c]
fld st(0)
fld dword [esp + 0x4c]
fld st(0)
fmulp st(2)
fxch st(4)
fsubrp st(1)
fstp dword [esp + 0x24]
fld dword [esp + 0x48]
fld st(0)
fmulp st(2)
fld dword [esp + 0x10]
fld st(0)
fmul st(4)
fsubp st(3)
fxch st(2)
fstp dword [esp + 0x28]
fld st(3)
fmulp st(2)
fld dword [esp + 0x14]
fmul st(1)
fsubp st(2)
fxch st(1)
fstp dword [esp + 0x2c]
fld dword [esp + 0x18]
fstp dword [esp + 0x10]
fld dword [esp + 0x1c]
fst dword [esp + 0x14]
fmul st(2)
fld dword [esp + 0x20]
fld st(0)
fmul st(5)
fsubp st(2)
fxch st(1)
fstp dword [esp + 0x18]
fmul st(1)
fld dword [esp + 0x10]
fld st(0)
fmulp st(4)
fxch st(1)
fsubrp st(3)
fxch st(2)
fstp dword [esp + 0x1c]
fxch st(1)
fmulp st(2)
fmul dword [esp + 0x14]
fsubp st(1)
fstp dword [esp + 0x20]
fld dword [esp + 0x1c]
fmul dword [esp + 0x28]
fld dword [esp + 0x18]
fmul dword [esp + 0x24]
faddp st(1)
fld dword [esp + 0x20]
fmul dword [esp + 0x2c]
faddp st(1)
fcomp qword [0x50c4e8]
fnstsw ax
test ah, 5
jnp 0x4cd968
fld dword [ebx]
mov edx, dword [esp + 0x6c]
fsub dword [esi + 8]
mov eax, dword [esp + 0x70]
fstp dword [esp + 0x30]
fld dword [edx]
fsub dword [esi + 0xc]
fstp dword [esp + 0x34]
fld dword [eax]
fsub dword [esi + 0x10]
fstp dword [esp + 0x38]
fld dword [esp + 0x34]
fld dword [esp + 0x60]
fld st(0)
fmulp st(2)
fld dword [esp + 0x30]
fld dword [esp + 0x5c]
fld st(0)
fmulp st(2)
fxch st(3)
faddp st(1)
fld dword [esp + 0x38]
fld dword [esp + 0x64]
fld st(0)
fmulp st(2)
fxch st(2)
faddp st(1)
fstp dword [esp + 0x58]
fld dword [esp + 0x58]
fcom st(4)
fnstsw ax
test ah, 0x41
jne 0x4cd8b8
fsubr dword [esp + 0x54]
fstp dword [esp + 0x54]
jmp 0x4cd8ba
fstp st(0)
fld dword [edi + 8]
fsub dword [ebp + 8]
fstp dword [esp + 0x30]
fld dword [edi + 0xc]
fsub dword [ebp + 0xc]
fstp dword [esp + 0x34]
fld dword [edi + 0x10]
fsub dword [ebp + 0x10]
fstp dword [esp + 0x38]
fld dword [esp + 0x34]
fmulp st(2)
fld dword [esp + 0x30]
fmulp st(3)
fxch st(1)
faddp st(2)
fmul dword [esp + 0x38]
faddp st(1)
fstp dword [esp + 0x58]
fld dword [esp + 0x58]
fcom st(1)
fnstsw ax
test ah, 5
jp 0x4cd909
fadd dword [esp + 0x54]
fstp dword [esp + 0x54]
jmp 0x4cd90b
fstp st(0)
fld dword [esp + 0x54]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 0x41
jne 0x4cd968
cmp dword [esp + 0x7c], 0
fld dword [esp + 0x78]
fadd qword [0x50c4d0]
fdivrp st(1)
fstp dword [esp + 0x78]
fld dword [esp + 0x78]
je 0x4cd945
fld dword [esp + 0x84]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x4cd968
mov ecx, dword [esp + 0x74]
fstp dword [esp + 0x84]
mov dword [esp + 0x7c], ebp
mov dword [esp + 0x94], ecx
mov dword [esp + 0x8c], edi
jmp 0x4cd96a
fstp st(1)
fstp st(1)
fstp st(0)
mov eax, dword [esp + 0x80]
add eax, 1
cmp eax, dword [esp + 0x98]
mov dword [esp + 0x80], eax
jl 0x4ccf00
mov edi, dword [esp + 0x7c]
test edi, edi
pop ebp
je 0x4cda51
cmp byte [esp + 0xac], 0
je 0x4cda13
mov edx, dword [0x55fb6c]
mov eax, dword [edx + 4]
test eax, eax
je 0x4cd9be
fld dword [eax]
fld dword [esp + 0x80]
fcompp
fnstsw ax
test ah, 0x41
jp 0x4cda13
mov eax, dword [esp + 0x64]
test eax, eax
je 0x4cd9dc
mov ecx, dword [0x5710dc]
add ecx, 7
sar ecx, 3
push ecx
push eax
call fcn.004471f0
add esp, 8
mov edx, dword [esp + 0x88]
fld dword [esp + 0xa4]
mov eax, dword [esp + 0x90]
push edx
push edi
push eax
push esi
push ecx
mov ecx, dword [esp + 0xb4]
fstp dword [esp]
push ecx
call fcn.004ccbc0
add esp, 0x18
pop edi
pop esi
pop ebx
add esp, 0x90
ret
mov eax, dword [esp + 0x64]
test eax, eax
jne 0x4cda27
call fcn.004d72a0
mov dword [esp + 0x64], eax
mov dword [eax + 8], esi
fld dword [esp + 0x80]
push ecx
fstp dword [esp]
push eax
mov dword [esi + 0x14], eax
call fcn.004d71d0
add dword [0x56eccc], 1
add esp, 8
pop edi
pop esi
xor eax, eax
pop ebx
add esp, 0x90
ret
mov edi, dword [esp + 0x64]
xor ebx, ebx
cmp edi, ebx
je 0x4cda71
mov edx, dword [0x5710dc]
add edx, 7
sar edx, 3
push edx
push edi
call fcn.004471f0
add esp, 8
pop edi
pop esi
xor eax, eax
pop ebx
add esp, 0x90
ret