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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x25c
push ebx
push esi
push edi
mov esi, eax
call fcn.004b3910
mov ebx, eax
xor edi, edi
cmp ebx, edi
je 0x4ccf4b
cmp esi, 0x20
jge 0x4ccb1b
mov eax, esi
jmp 0x4ccb26
cmp esi, 0x23
lea eax, [esi + 1]
jl 0x4ccb26
lea eax, [esi + 2]
movsx eax, ax
mov dword [esp + 0x18], edi
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], edi
xor esi, esi
mov dword [esp + 0x44], eax
jmp 0x4ccb40
push esi
call fcn.004744a0
movzx ecx, byte [eax]
mov edx, dword [esp + 0x48]
add esp, 4
cmp ecx, edx
jne case.0x4ccb71.21
mov cl, byte [eax + 1]
movzx dx, cl
movzx ecx, cl
add ecx, 0xffffffed
cmp ecx, 0x12
ja case.0x4ccb71.21
movzx ecx, byte [ecx + 0x4ccf60]
jmp dword [ecx*4 + 0x4ccf54]
movzx dx, byte [eax + 2]
mov dword [esp + 0x18], 1
mov word [esp + 0x1c], dx
jmp case.0x4ccb71.21
test dx, dx
je case.0x4ccb71.21
test di, di
jne 0x4ccbb4
movzx cx, byte [eax + 2]
mov dword [esp + 0x10], edx
movzx dx, byte [eax + 3]
mov edi, dword [esp + 0x10]
mov word [esp + 0x38], cx
mov word [esp + 0x3c], dx
jmp case.0x4ccb71.21
cmp word [esp + 0x14], 0
jne case.0x4ccb71.21
cmp dx, di
je case.0x4ccb71.21
movzx cx, byte [eax + 2]
mov dword [esp + 0x14], edx
movzx dx, byte [eax + 3]
mov word [esp + 0x40], cx
mov word [esp + 0x34], dx
inc esi
cmp esi, 0x5c
jl 0x4ccb40
mov ecx, dword [ebx]
lea eax, [esp + 0x58]
push eax
push 0x3d
push 0xc
push ecx
call fcn.0048fa10
mov eax, dword [esp + 0x6c]
mov edx, dword [esp + 0x68]
add esp, 0x10
test di, di
mov dword [esp + 0x24], edx
mov dword [esp + 0x28], eax
mov dword [esp + 0x30], 0
mov dword [esp + 0x2c], 0
mov eax, dword [ebx + 0xc]
jne 0x4ccc6b
test eax, eax
jne 0x4ccc50
mov ecx, dword [ebx]
push 0xd
push ecx
call fcn.0048f840
push 0x87059c
push 0x4d
push eax
mov dword [ebx + 0xc], eax
call fcn.0048f970
fld dword [esp + 0x3c]
fadd dword [0x8850b8]
add esp, 0x14
fstp dword [esp + 0x28]
jmp 0x4ccc7a
push 1
push eax
call fcn.00463a00
fld dword [esp + 0x30]
fadd dword [0x8850b8]
add esp, 8
fstp dword [esp + 0x28]
jmp 0x4ccc7a
test eax, eax
je 0x4ccc7a
push 0
push eax
call fcn.00463a00
add esp, 8
lea esi, [ebx + 0x88]
mov edi, 2
mov eax, dword [esi - 8]
test eax, eax
je 0x4ccc9c
push eax
call fcn.0047b0a0
add esp, 4
mov dword [esi - 8], 0
mov eax, dword [esi]
test eax, eax
je 0x4cccb1
push eax
call fcn.0047b0a0
add esp, 4
mov dword [esi], 0
mov eax, dword [esi - 0x20]
test eax, eax
je 0x4cccc8
push eax
call fcn.00463980
add esp, 4
mov dword [esi - 0x20], 0
mov eax, dword [esi - 0x18]
test eax, eax
je 0x4cccdf
push eax
call fcn.00463980
add esp, 4
mov dword [esi - 0x18], 0
mov eax, dword [esi - 0x10]
test eax, eax
je 0x4cccf6
push eax
call fcn.00463980
add esp, 4
mov dword [esi - 0x10], 0
add esi, 4
dec edi
jne 0x4ccc85
mov eax, dword [esp + 0x10]
test ax, ax
je 0x4ccd23
movsx ecx, word [esp + 0x3c]
lea edx, [esp + 0x24]
push edx
movsx edx, word [esp + 0x3c]
push ecx
push edx
movsx eax, ax
push 0
call fcn.004cb5c0
add esp, 0x10
mov eax, dword [esp + 0x14]
test ax, ax
je 0x4ccd4a
movsx edx, word [esp + 0x34]
lea ecx, [esp + 0x24]
push ecx
movsx ecx, word [esp + 0x44]
push edx
push ecx
movsx eax, ax
push 1
call fcn.004cb5c0
add esp, 0x10
mov eax, dword [ebx + 0x98]
test eax, eax
jne 0x4ccd93
mov edx, dword [ebx]
push 1
push edx
call fcn.0048f840
push 0x87059c
push 0
push eax
mov dword [ebx + 0x90], eax
call fcn.0048f970
push 0x87129c
mov dword [ebx + 0x94], eax
mov eax, dword [ebx + 0x90]
push 1
push eax
call fcn.00468570
add esp, 0x20
mov dword [ebx + 0x98], eax
mov edx, dword [ebx + 0x90]
lea ecx, [esp + 0x24]
push ecx
push edx
call fcn.00463a10
add esp, 8
cmp word [esp + 0x18], 0
je 0x4cced3
mov esi, dword [esp + 0x1c]
xor eax, eax
mov ecx, 0x40
lea edi, [esp + 0x168]
rep stosd dword es:[edi], eax
mov ecx, 0x40
lea edi, [esp + 0x68]
rep stosd dword es:[edi], eax
movsx ecx, si
mov dword [esp + 0x48], eax
inc ecx
push ecx
mov dword [esp + 0x50], eax
lea edx, [esp + 0x4c]
mov dword [esp + 0x54], eax
push 0x8850c4
push edx
mov dword [esp + 0x60], eax
call fcn.0043bcd5
add esp, 0xc
lea eax, [esp + 0x48]
push eax
push 0x19007a
call fcn.0085ce30
add esp, 4
push eax
lea ecx, [esp + 0x70]
push ecx
call fcn.0043bcd5
add esp, 0xc
lea edx, [esp + 0x68]
push edx
push 0x1d00a7
call fcn.0085ce30
add esp, 4
push eax
lea eax, [esp + 0x170]
push str._s__s
push eax
call fcn.0043bcd5
mov edx, dword [ebx + 0x94]
mov eax, dword [edx + 0x10]
lea ecx, [esp + 0x178]
push ecx
push eax
call fcn.00464980
xor eax, eax
add esp, 0x18
cmp si, 3
mov ecx, 0x40
lea edi, [esp + 0x68]
rep stosd dword es:[edi], eax
je 0x4cce7e
cmp si, 7
je 0x4cce7e
cmp si, 0xf
je 0x4cce7e
push 0x1d00a5
jmp 0x4cce83
push 0x1d00a6
call fcn.0085ce30
add esp, 4
push eax
push 0x1d00a2
call fcn.0085ce30
add esp, 4
push eax
lea ecx, [esp + 0x70]
push 0x885644
push ecx
call fcn.0043bcd5
mov eax, dword [ebx + 0x98]
mov ecx, dword [eax + 0x10]
lea edx, [esp + 0x78]
push edx
push ecx
call fcn.00464980
mov edx, dword [ebx + 0x98]
mov eax, dword [edx + 0x10]
push 1
push eax
call fcn.00464b80
add esp, 0x20
jmp 0x4ccf01
push 0x1d00a1
call fcn.0085ce30
mov ecx, dword [ebx + 0x94]
mov edx, dword [ecx + 0x10]
push eax
push edx
call fcn.00464980
mov eax, dword [ebx + 0x98]
mov ecx, dword [eax + 0x10]
push 0
push ecx
call fcn.00464b80
add esp, 0x14
mov eax, dword [0xeebb18]
cmp eax, 5
mov dword [esp + 0x1c], 0xbf800000
mov dword [esp + 0x20], 0
je 0x4ccf4b
cmp eax, 6
je 0x4ccf4b
mov eax, dword [ebx + 0x94]
mov ecx, dword [eax + 0x10]
lea edx, [esp + 0x1c]
push edx
push ecx
call fcn.00464c40
mov eax, dword [ebx + 0x98]
mov ecx, dword [eax + 0x10]
lea edx, [esp + 0x24]
push edx
push ecx
call fcn.00464c40
add esp, 0x10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret