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

Disassembly:
push ebx
push esi
mov ebx, ecx
push edi
push ebp
sub esp, 0x98
mov eax, dword [ebx + 0x4c]
push eax
call fcn.004031b0
fld dword [0x5f8438]
fstp dword [esp + 4]
fld dword [0x5f8438]
pop ecx
xor ebp, ebp
fstp dword [esp + 4]
mov cl, byte [ebx + 0x158]
shr cl, 6
and cl, 1
je 0x4cc72a
mov esi, dword [ebx + 0x4ec]
test esi, esi
je 0x4cc72a
cmp esi, 0x12c
jae 0x4cc72a
dec dword [ebx + 0x4ec]
cmp dword [ebx + 0x4ec], 0
jne 0x4cc72a
mov dl, byte [ebx + 0x158]
and dl, 0xbf
mov byte [ebx + 0x158], dl
mov cl, byte [ebx + 0x154]
and cl, 1
jne 0x4cc77a
add esp, 0x98
pop ebp
pop edi
pop esi
pop ebx
ret
mov edi, dword [eax + 0x30]
mov edx, edi
and edx, 0x80
je 0x4cc760
fld dword [esp + 4]
fadd dword [eax + 0x18]
mov ebp, eax
fstp dword [esp + 4]
jmp 0x4cc771
and edi, 0x200
jne 0x4cc771
fld dword [esp]
fadd dword [eax + 0x18]
fstp dword [esp]
push eax
fstp st(0)
call fcn.00405780
pop ecx
test eax, eax
fldz
jne 0x4cc740
test ebp, ebp
je 0x4ccbb7
fld dword [esp + 4]
fcomp dword [0x5f84b0]
fnstsw ax
test ah, 0x45
jne 0x4ccbb7
fld dword [esp]
fcomp dword [0x5f8440]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x4ccbb7
mov eax, dword [ebp + 0x14]
fld dword [eax + 0x20]
fmul dword [0x5f84b0]
fadd dword [0x5f85cc]
fstp dword [esp + 8]
fld dword [ebp + 0x20]
fst st(1)
fcomp dword [0x5f85cc]
fnstsw ax
test ah, 5
jne 0x4cc9b8
fld st(0)
fsub dword [ebp + 0x28]
fcomp dword [0x5f85cc]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x4cc9b8
mov eax, dword [ebx + 0x64]
mov ecx, 0x95cdbe
push dword [0x5f8440]
push 0x1d
push eax
fstp st(0)
call fcn.0057c840
mov dword [esp + 0x20], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], 0
mov eax, dword [ebx + 0x1c8]
mov esi, dword [eax + 0x10]
test esi, esi
je 0x4cc855
lea eax, [esi + 0x10]
lea edx, [esp + 0x18]
push eax
lea eax, [esp + 0x1c]
push 1
push edx
push eax
call fcn.005a37d0
mov esi, dword [esi + 4]
add esp, 0x10
test esi, esi
jne 0x4cc836
lea eax, [ebx + 0x14]
lea edi, [esp + 0x24]
lea esi, [eax]
movsd dword es:[edi], dword [esi]
fldz
fldz
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea eax, [ebx + 4]
lea edi, [esp + 0x30]
lea esi, [eax]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
fld dword [esp + 0x20]
fsub dword [0x5f8470]
fstp dword [esp + 0x20]
fld dword [esp + 0x28]
fstp st(1)
fld dword [0x5f85bc]
fmul st(1)
fstp st(2)
fld dword [0x5f85bc]
fmul dword [esp + 0x24]
fadd dword [esp + 0x18]
fstp dword [esp + 0x18]
fld dword [esp + 0x1c]
fadd st(2)
fstp dword [esp + 0x1c]
fld dword [0x5f85bc]
fmul dword [esp + 0x2c]
fadd dword [esp + 0x20]
fstp dword [esp + 0x20]
mov al, byte [ebx + 0x158]
shr al, 6
and al, 1
je 0x4ccdd0
fld dword [0x5f85d0]
fmul dword [esp + 0x34]
push dword [0x5f8440]
push 0xbb8
push dword [0x5f8448]
push 0
push 0
push 0xff
push 0xff
push eax
fstp dword [esp]
fld dword [0x5f85d0]
fmul dword [esp + 0x50]
push eax
fstp dword [esp]
push eax
fld dword [0x5f85d4]
fmul st(1)
fstp dword [esp]
fld dword [0x5f85d4]
fmul dword [esp + 0x4c]
push eax
fstp dword [esp]
fcompp
mov eax, dword [0x9415f8]
lea ecx, [esp + 0x44]
push ecx
push eax
push 1
call fcn.00512fd0
add esp, 0x38
cmp dword [ebx + 0x4ec], 0x14
jbe 0x4cc950
sub dword [ebx + 0x4ec], 0x14
jmp 0x4cc968
mov dword [ebx + 0x4ec], 0
mov al, byte [ebx + 0x158]
and al, 0xbf
mov byte [ebx + 0x158], al
fld dword [0x8e2bfc]
fcomp dword [0x5f8470]
fnstsw ax
test ah, 0x45
jne 0x4cc991
call fcn.00525ce0
test al, al
jne 0x4cc991
call fcn.00525d00
test al, al
je 0x4ccdd7
mov ecx, ebx
call fcn.004d48e0
test al, al
je 0x4ccde0
lea eax, [esp + 0x18]
push 4
push dword [0x5f8438]
push eax
push ebx
call fcn.004cc5c0
add esp, 0x10
fldz
fld dword [ebp + 0x20]
fst st(1)
fcomp dword [esp + 8]
fnstsw ax
test ah, 5
jne 0x4ccbb7
fld st(0)
fsub dword [ebp + 0x28]
fcomp dword [esp + 8]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x4ccbb7
mov eax, dword [ebx + 0x64]
mov ecx, 0x95cdbe
push dword [0x5f8440]
push 0x1e
push eax
fstp st(0)
call fcn.0057c840
mov dword [esp + 0x44], 0
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0
mov eax, dword [ebx + 0x1cc]
mov edi, dword [eax + 0x10]
test edi, edi
je 0x4cca3f
lea eax, [edi + 0x10]
lea edx, [esp + 0x3c]
push eax
lea eax, [esp + 0x40]
push 1
push edx
push eax
call fcn.005a37d0
mov edi, dword [edi + 4]
add esp, 0x10
test edi, edi
jne 0x4cca20
lea eax, [ebx + 0x14]
lea edi, [esp + 0x48]
lea esi, [eax]
movsd dword es:[edi], dword [esi]
fldz
fldz
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea eax, [ebx + 4]
lea edi, [esp + 0x54]
lea esi, [eax]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
fld dword [esp + 0x44]
fsub dword [0x5f8470]
fstp dword [esp + 0x44]
fld dword [esp + 0x4c]
fstp st(1)
fld dword [0x5f85bc]
fmul st(1)
fstp st(2)
fld dword [0x5f85bc]
fmul dword [esp + 0x48]
fadd dword [esp + 0x3c]
fstp dword [esp + 0x3c]
fld dword [esp + 0x40]
fadd st(2)
fstp dword [esp + 0x40]
fld dword [0x5f85bc]
fmul dword [esp + 0x50]
fadd dword [esp + 0x44]
fstp dword [esp + 0x44]
mov al, byte [ebx + 0x158]
shr al, 6
and al, 1
je 0x4ccde7
fld dword [0x5f85d0]
fmul dword [esp + 0x58]
push dword [0x5f8440]
push 0xbb8
push dword [0x5f8448]
push 0
push 0
push 0xff
push 0xff
push eax
fstp dword [esp]
fld dword [0x5f85d0]
fmul dword [esp + 0x74]
push eax
fstp dword [esp]
push eax
fld dword [0x5f85d4]
fmul st(1)
fstp dword [esp]
fld dword [0x5f85d4]
fmul dword [esp + 0x70]
push eax
fstp dword [esp]
fcompp
mov eax, dword [0x9415f8]
lea esi, [esp + 0x68]
push esi
push eax
push 1
call fcn.00512fd0
add esp, 0x38
cmp dword [ebx + 0x4ec], 0x14
jbe 0x4ccb36
sub dword [ebx + 0x4ec], 0x14
jmp 0x4ccb4e
mov dword [ebx + 0x4ec], 0
mov al, byte [ebx + 0x158]
and al, 0xbf
mov byte [ebx + 0x158], al
fld dword [0x8e2bfc]
fcomp dword [0x5f8470]
fnstsw ax
test ah, 0x45
jne 0x4ccb90
call fcn.00525ce0
test al, al
jne 0x4ccb90
call fcn.00525d00
test al, al
jne 0x4ccb90
lea eax, [esp + 0x3c]
push 4
push dword [0x5f8594]
push eax
push ebx
call fcn.004cc4c0
add esp, 0x10
jmp 0x4ccdf0
mov ecx, ebx
call fcn.004d48e0
test al, al
je 0x4ccdf7
lea eax, [esp + 0x3c]
push 4
push dword [0x5f8438]
push eax
push ebx
call fcn.004cc5c0
add esp, 0x10
fldz
cmp byte [ebx + 0x123], 0x13
jne 0x4cce00
mov eax, dword [0x5f85c4]
mov dword [esp + 0x60], eax
mov eax, dword [0x5f85c8]
mov dword [esp + 0x64], eax
fld dword [ebx + 0x7c]
fst st(1)
fmul st(0)
fld dword [ebx + 0x78]
fstp st(2)
fld st(1)
fmul st(0)
faddp st(1)
fst st(1)
fcomp dword [0x5f85d8]
fnstsw ax
test ah, 0x45
jne 0x4cce04
mov eax, dword [0x9412ec]
and eax, 1
jne 0x4cce08
fcom dword [0x5f85dc]
fnstsw ax
test ah, 0x45
jne 0x4cce10
fld st(0)
fsqrt
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fst st(1)
fmul qword [0x5f85e0]
fstp dword [esp + 0x10]
mov eax, dword [esp + 0x10]
mov dword [esp + 0xc], eax
fld dword [esp + 0xc]
fcomp dword [0x5f8508]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x4ccc58
fld dword [0x5f8508]
fstp dword [esp + 0xc]
fld dword [esp + 0xc]
fcomp dword [0x5f85e8]
fnstsw ax
test ah, 0x45
jne 0x4ccc73
fld dword [0x5f85e8]
fstp dword [esp + 0xc]
fld dword [0x5f8534]
lea eax, [ebx + 0x14]
lea edi, [ebx + 0x34]
fmul dword [eax]
fadd dword [edi]
fstp dword [esp + 0x80]
fld dword [0x5f8534]
fmul dword [eax + 4]
lea esi, [esp + 0x80]
fadd dword [edi + 4]
fstp dword [esp + 0x84]
fld dword [0x5f8534]
fmul dword [eax + 8]
fadd dword [edi + 8]
lea edi, [esp + 0x68]
fstp dword [esp + 0x88]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
fld dword [esp + 0x70]
fsub dword [0x5f8454]
lea edi, [esp + 0x74]
fstp dword [esp + 0x70]
fld dword [0x5f8504]
fmul dword [ebx + 0x78]
fstp dword [esp + 0x8c]
fld dword [0x5f8504]
fmul dword [ebx + 0x7c]
lea esi, [esp + 0x8c]
fstp dword [esp + 0x90]
fld dword [0x5f8504]
fmul dword [ebx + 0x80]
fstp dword [esp + 0x94]
movsd dword es:[edi], dword [esi]
fstp st(0)
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.005a41d0
and eax, 0xffff
mov dword [esp + 0x10], eax
lea eax, [esp + 0x60]
fild dword [esp + 0x10]
push 0
push 0
fmul dword [0x5f8478]
push 0
push 0
fmul dword [0x5f84c0]
push eax
push eax
fadd dword [0x5f849c]
fstp dword [esp + 0x94]
fld dword [0x5f84e4]
fmul dword [esp + 0x24]
fstp dword [esp]
lea eax, [esp + 0x80]
lea ecx, [esp + 0x8c]
push 0
push ecx
push eax
push 0x2c
call fcn.0050d190
add esp, 0x28
call fcn.005a41d0
and eax, 0xffff
lea edx, [esp + 0x74]
mov dword [esp + 0x10], eax
lea eax, [esp + 0x64]
fild dword [esp + 0x10]
push 0
push 0
fmul dword [0x5f8478]
push 0
push 0
fmul dword [0x5f85ec]
push eax
lea eax, [esp + 0x7c]
push dword [esp + 0x20]
fadd dword [0x5f85f0]
push 0
push edx
push eax
fstp dword [esp + 0xa0]
push 0x3a
call fcn.0050d190
add esp, 0x28
add esp, 0x98
pop ebp
pop edi
pop esi
pop ebx
ret
fcompp
jmp 0x4cc968
fldz
jmp 0x4cc9b8
fldz
jmp 0x4cc9b8
fcompp
jmp 0x4ccb4e
fldz
jmp 0x4ccbb7
fldz
jmp 0x4ccbb7
fstp st(0)
jmp 0x4ccdc3
fstp st(0)
jmp 0x4ccdc3
fstp st(0)
jmp 0x4ccdc3
fstp st(0)
jmp 0x4ccdc3