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

Disassembly:
push ebp
mov ebp, esp
mov ecx, dword [ebp + 0xc]
sub esp, 0xc
cmp ecx, 0x7fffffff
push ebx
push esi
push edi
ja 0x4c085c
xor ebx, ebx
cmp ecx, ebx
je 0x4c085c
mov esi, dword [ebp + 8]
mov eax, 0x40000000
cdq
idiv dword [esi + 0x30]
inc eax
cmp ecx, eax
je 0x4c085c
mov eax, dword [ebp + 0x10]
mov dword [eax], ebx
mov al, byte [esi + 0xb]
cmp al, bl
je 0x4c0535
cmp al, 0xd
je 0x4c0535
movzx eax, al
jmp 0x4c085f
cmp dword [esi + 0x3c], ebx
jne 0x4c05ea
cmp byte [esi + 3], bl
jne 0x4c055d
xor ebx, ebx
inc ebx
call fcn.004bf47f
test eax, eax
je 0x4c055b
mov ecx, esi
call fcn.004be8ac
jmp 0x4c085f
xor ebx, ebx
call fcn.004bf63a
test eax, eax
je 0x4c05e5
push 4
push dword [esi + 0x58]
call fcn.004c0df4
mov edi, eax
cmp edi, ebx
pop ecx
pop ecx
je 0x4c058a
push ebx
push dword [esi + 0x58]
call fcn.004c0e05
pop ecx
pop ecx
mov byte [esi + 0xa], bl
mov eax, edi
jmp 0x4c054f
lea eax, [esi + 0x5c]
push eax
push dword [esi + 0x50]
mov byte [esi + 0xa], 4
call fcn.004b0d9e
test eax, eax
pop ecx
pop ecx
je 0x4c05b5
push ebx
push dword [esi + 0x58]
call fcn.004c0e05
pop ecx
pop ecx
mov byte [esi + 0xa], bl
push 5
jmp 0x4c085e
mov edi, esi
mov byte [esi], 1
mov byte [esi + 1], bl
mov dword [esi + 0x80], ebx
mov dword [esi + 0x84], ebx
mov byte [esi + 0x12], bl
mov dword [esi + 0x88], ebx
mov dword [esi + 0x8c], ebx
call fcn.004bfb5c
cmp eax, ebx
jne 0x4c054f
mov dword [ebp - 4], ebx
jmp 0x4c0600
mov edx, ecx
mov ecx, esi
call fcn.004bed7a
mov edi, eax
cmp edi, ebx
mov dword [ebp - 4], edi
jne 0x4c083f
mov ecx, dword [esi + 0x34]
cmp ecx, dword [esi + 0x40]
jl 0x4c0663
cmp dword [esi + 0x68], ebx
je 0x4c0663
lea eax, [ebp - 4]
push eax
push 1
mov eax, esi
call fcn.004bff1c
cmp eax, ebx
pop ecx
pop ecx
jne 0x4c085f
mov edi, dword [ebp - 4]
mov eax, dword [ebp + 0xc]
mov dword [edi + 4], eax
mov ecx, dword [esi + 0x44]
cmp ecx, ebx
je 0x4c06dc
cmp eax, dword [esi + 0x18]
jg 0x4c06dc
mov ecx, eax
xor edx, edx
and ecx, 7
inc edx
shl edx, cl
mov ecx, eax
mov eax, dword [esi + 0x44]
shr ecx, 3
mov al, byte [ecx + eax]
test al, dl
setne al
mov byte [edi + 0x24], al
mov eax, dword [ebp + 0xc]
jmp 0x4c06df
mov eax, dword [esi + 0xbc]
cmp ecx, eax
jl 0x4c0691
mov ecx, 0x100
cmp eax, ecx
jl 0x4c0679
lea ecx, [eax + eax]
push ecx
mov edi, esi
call fcn.004be7f0
cmp dword [esi + 0xbc], ebx
pop ecx
jne 0x4c0691
push 7
jmp 0x4c085e
mov eax, dword [esi + 0x2c]
mov ecx, dword [esi + 0x30]
lea eax, [eax + ecx + 0x3c]
push 1
push eax
call fcn.004a79ec
mov edi, eax
cmp edi, ebx
pop ecx
pop ecx
je 0x4c068a
push 0x38
push ebx
push edi
call fcn.00488910
mov dword [edi], esi
mov eax, dword [esi + 0x74]
mov dword [edi + 0x18], eax
mov eax, dword [esi + 0x38]
add esp, 0xc
inc dword [esi + 0x34]
mov ecx, dword [esi + 0x34]
cmp ecx, eax
mov dword [esi + 0x74], edi
jle 0x4c0627
inc eax
mov dword [esi + 0x38], eax
jmp 0x4c0627
mov byte [edi + 0x24], bl
mov byte [edi + 0x27], bl
cmp dword [esi + 0x48], ebx
je 0x4c070e
cmp eax, dword [esi + 0x1c]
jg 0x4c070e
mov ecx, eax
xor edx, edx
and ecx, 7
inc edx
shl edx, cl
mov ecx, eax
mov eax, dword [esi + 0x48]
shr ecx, 3
mov al, byte [ecx + eax]
test al, dl
je 0x4c070e
mov eax, edi
call fcn.004bed56
jmp 0x4c073d
cmp byte [edi + 0x25], bl
je 0x4c073d
mov eax, dword [edi + 0x20]
cmp eax, ebx
mov ecx, dword [edi + 0x1c]
je 0x4c0722
mov dword [eax + 0x1c], ecx
jmp 0x4c0727
mov eax, dword [edi]
mov dword [eax + 0x78], ecx
mov eax, dword [edi + 0x1c]
cmp eax, ebx
je 0x4c0734
mov ecx, dword [edi + 0x20]
mov dword [eax + 0x20], ecx
mov dword [edi + 0x1c], ebx
mov dword [edi + 0x20], ebx
mov byte [edi + 0x25], bl
mov eax, edi
call fcn.004bf6d3
mov word [edi + 0x2a], 1
mov eax, dword [esi + 0x2c]
inc dword [esi + 0x3c]
cmp eax, ebx
jle 0x4c0766
push eax
mov eax, dword [esi + 0x30]
lea eax, [eax + edi + 0x38]
push ebx
push eax
call fcn.00488910
add esp, 0xc
cmp byte [esi + 0xb], bl
je 0x4c077e
add edi, 0x38
push edi
call fcn.004c0484
movzx eax, byte [esi + 0xb]
pop ecx
jmp 0x4c085f
push esi
call fcn.004bf350
pop ecx
mov ecx, dword [ebp + 0xc]
cmp eax, ecx
jl 0x4c0802
mov eax, dword [esi + 0x30]
cdq
push edx
push eax
dec ecx
push ebx
push ecx
call fcn.004898e0
push edx
push eax
push dword [esi + 0x58]
call fcn.004c0d95
add esp, 0xc
cmp eax, ebx
mov dword [ebp - 4], eax
jne 0x4c07c7
push dword [esi + 0x30]
lea eax, [edi + 0x38]
push eax
push dword [esi + 0x58]
call fcn.004c0d69
add esp, 0xc
cmp eax, ebx
mov dword [ebp - 4], eax
je 0x4c0812
lea eax, [ebp - 0xc]
push eax
push dword [esi + 0x58]
call fcn.004c0de3
test eax, eax
pop ecx
pop ecx
jne 0x4c07f0
mov eax, dword [esi + 0x30]
mov ecx, dword [ebp - 8]
imul eax, dword [ebp + 0xc]
cmp ecx, ebx
jg 0x4c07f0
jl 0x4c0802
mov ecx, dword [ebp - 0xc]
cmp ecx, eax
jb 0x4c0802
mov dword [edi + 4], ebx
add edi, 0x38
push edi
call fcn.004c0484
mov eax, dword [ebp - 4]
pop ecx
jmp 0x4c085f
push dword [esi + 0x30]
lea eax, [edi + 0x38]
push ebx
push eax
call fcn.00488910
add esp, 0xc
mov eax, dword [esi + 0xbc]
dec eax
and eax, dword [ebp + 0xc]
add esi, 0xc0
mov ecx, dword [esi]
shl eax, 2
mov ecx, dword [eax + ecx]
mov dword [edi + 8], ecx
mov ecx, dword [esi]
mov dword [eax + ecx], edi
cmp dword [edi + 8], ebx
je 0x4c0850
mov eax, dword [edi + 8]
mov dword [eax + 0xc], edi
jmp 0x4c0850
cmp word [edi + 0x2a], bx
jne 0x4c084c
call fcn.004bf4b6
jmp 0x4c0850
inc word [edi + 0x2a]
mov eax, dword [ebp + 0x10]
add edi, 0x38
mov dword [eax], edi
xor eax, eax
jmp 0x4c085f
push 0xb
pop eax
pop edi
pop esi
pop ebx
leave
ret