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

Disassembly:
push 0xffffffffffffffff
push 0x56a37f
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x180
push ebx
push ebp
mov dword [esp + 0x68], ecx
push esi
push edi
lea ecx, [esp + 0x74]
call fcn.00534d70
xor ebp, ebp
lea ecx, [esp + 0x14]
mov dword [esp + 0x198], ebp
call fcn.00531800
mov al, byte [esp + 0x13]
push ebp
lea ecx, [esp + 0x4c]
mov byte [esp + 0x19c], 1
mov byte [esp + 0x4c], al
call fcn.00404bb0
mov cl, byte [esp + 0x13]
mov dword [esp + 0x24], ebp
mov byte [esp + 0x20], cl
mov dword [esp + 0x28], ebp
mov dword [esp + 0x2c], ebp
mov dl, byte [esp + 0x13]
mov dword [esp + 0x38], ebp
mov byte [esp + 0x34], dl
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x40], ebp
push 6
push 0x5ac02c
lea ecx, [esp + 0x24]
mov byte [esp + 0x1a0], 4
call fcn.005318a0
mov ecx, 0x3f
xor eax, eax
lea edi, [esp + 0x91]
mov byte [esp + 0x90], 0
rep stosd dword es:[edi], eax
push ebp
push ebp
push ecx
mov byte [esp + 0x1a4], 5
stosw word es:[edi], ax
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x59b910
stosb byte es:[edi], al
call fcn.005318a0
push ecx
mov byte [esp + 0x1a8], 6
mov ecx, esp
mov dword [esp + 0x68], esp
push 6
push 0x59b978
call fcn.005318a0
mov ecx, 0x5c6628
mov byte [esp + 0x1a8], 5
call fcn.00533b90
mov eax, dword [esp + 0x24]
push eax
mov eax, dword [esp + 0x2c]
push eax
push eax
call fcn.00405350
mov edi, eax
mov eax, dword [esp + 0x34]
add esp, 0xc
cmp edi, eax
mov ebx, eax
mov esi, edi
je 0x4c7ccd
push ebp
mov ecx, esi
call fcn.00405470
add esi, 4
cmp esi, ebx
jne 0x4c7cbe
mov dword [esp + 0x28], edi
xor bl, bl
cmp bl, 0x34
jae 0x4c7d04
push 0xf0
push 4
lea ecx, [esp + 0x24]
call fcn.00531ad0
inc bl
lea ecx, [esp + 0x1c]
push ebx
push 5
call fcn.00531ad0
mov edx, dword [esp + 0x28]
lea ecx, [esp + 0x1c]
push ecx
push 1
push edx
jmp 0x4c7d2e
push 0xf1
push 4
lea ecx, [esp + 0x24]
call fcn.00531ad0
inc bl
lea ecx, [esp + 0x1c]
push ebx
push 5
call fcn.00531ad0
mov ecx, dword [esp + 0x28]
lea eax, [esp + 0x1c]
push eax
push 1
push ecx
lea ecx, [esp + 0x2c]
call fcn.00404e90
cmp bl, 0x4a
jb 0x4c7cd3
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x59b970
call fcn.005318a0
mov ecx, dword [0x5c663c]
call fcn.00534ea0
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x3c]
push edx
push eax
push eax
call fcn.00405350
mov ebx, dword [esp + 0x48]
mov edi, eax
add esp, 0xc
cmp edi, ebx
mov esi, edi
je 0x4c7d88
push ebp
mov ecx, esi
call fcn.00405470
add esi, 4
cmp esi, ebx
jne 0x4c7d79
mov esi, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
cmp esi, eax
mov dword [esp + 0x3c], edi
je 0x4c7dbb
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push esi
call fcn.00531810
mov ecx, dword [0x5c663c]
call fcn.00534fe0
mov eax, dword [esp + 0x28]
add esi, 4
cmp esi, eax
jne 0x4c7d98
mov ecx, dword [0x5c663c]
lea eax, [esp + 0x74]
push eax
call fcn.005354a0
test al, al
je 0x4c829d
mov esi, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
xor edi, edi
cmp esi, eax
je 0x4c7e2a
push edi
lea ecx, [esp + 0x78]
call fcn.00535960
test al, al
je 0x4c7e1a
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push esi
call fcn.00531810
lea ecx, [esp + 0x18]
call fcn.005319b0
mov edx, dword [esp + 0x3c]
lea ecx, [esp + 0x14]
push ecx
push 1
push edx
lea ecx, [esp + 0x40]
call fcn.00404e90
mov eax, dword [esp + 0x28]
add esi, 4
inc edi
cmp esi, eax
jne 0x4c7de1
mov esi, dword [esp + 0x24]
mov ecx, dword [esp + 0x38]
cmp ecx, ebp
je 0x4c7e40
mov edx, dword [esp + 0x3c]
sub edx, ecx
test edx, 0xfffffffc
jne 0x4c7e7a
cmp esi, eax
je 0x4c7e7a
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push esi
call fcn.00531810
lea ecx, [esp + 0x18]
call fcn.005319b0
mov ecx, dword [esp + 0x3c]
lea eax, [esp + 0x14]
push eax
push 1
push ecx
lea ecx, [esp + 0x40]
call fcn.00404e90
mov eax, dword [esp + 0x28]
add esi, 4
cmp esi, eax
jne 0x4c7e44
push ebp
lea edx, [esp + 0x60]
sub esp, 0x10
mov ecx, esp
mov dword [esp + 0x2c], esp
push edx
push 0x5c65b8
call fcn.00404840
push ecx
mov byte [esp + 0x1b0], 7
mov ecx, esp
mov dword [esp + 0x48], esp
push 6
push 0x59b970
call fcn.005318a0
mov ecx, dword [0x5c6630]
mov byte [esp + 0x1b0], 5
call fcn.00534800
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x44], ebp
cmp ecx, ebp
jne 0x4c7ede
xor esi, esi
mov byte [esp + 0x13], 0
mov dword [esp + 0x64], esi
mov dword [esp + 0x58], esi
jmp 0x4c7efc
mov eax, dword [esp + 0x3c]
mov byte [esp + 0x13], 0
sub eax, ecx
sar eax, 2
mov esi, eax
mov dword [esp + 0x64], eax
mov dword [esp + 0x58], esi
jmp 0x4c7efc
mov esi, dword [esp + 0x64]
push ebp
lea eax, [esp + 0x62]
sub esp, 0x10
mov byte [0x5c67dd], 0
mov ecx, esp
mov dword [esp + 0x2c], esp
push eax
push 0x5c65b8
mov byte [0x5c67de], 0
call fcn.00404840
sub esp, 0x10
lea edx, [esp + 0x81]
mov ecx, esp
mov dword [esp + 0x54], esp
push edx
push 0x5c65b8
mov byte [esp + 0x1c4], 8
call fcn.00404840
mov eax, dword [esp + 0x68]
mov ecx, dword [0x5c6630]
push esi
push eax
mov byte [esp + 0x1c4], 5
call fcn.00534690
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x58]
lea edi, [ecx + eax]
cmp di, si
mov dword [esp + 0x30], edi
jle 0x4c7f79
mov dword [esp + 0x30], esi
mov edi, esi
mov esi, dword [esp + 0x38]
xor cl, cl
cmp ax, bp
jle 0x4c7f93
add esi, 4
inc cl
xor dx, dx
mov dl, cl
cmp dx, ax
jl 0x4c7f84
xor cx, cx
mov bl, al
mov cl, al
cmp cx, di
jge 0x4c8278
jmp 0x4c7faf
mov eax, dword [esp + 0x44]
mov esi, dword [esp + 0x18]
xor ebp, ebp
mov cl, byte [esp + 0x13]
test cl, cl
je 0x4c8189
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push esi
call fcn.00531810
lea ecx, [esp + 0x18]
call fcn.005319b0
mov ecx, dword [0x5c6630]
add esi, 4
mov dword [esp + 0x18], esi
call fcn.00534ba0
cmp al, 1
je 0x4c7feb
cmp al, 2
jne 0x4c7ff0
mov byte [esp + 0x13], 0
test al, al
jne 0x4c8212
lea edx, [esp + 0x90]
lea eax, [esp + 0x14]
push edx
lea ecx, [esp + 0x84]
push eax
push ecx
mov ecx, dword [esp + 0x7c]
call fcn.004c99f0
mov esi, eax
mov eax, dword [esi + 8]
mov ecx, dword [0x57217c]
mov ebp, eax
mov byte [esp + 0x198], 0xb
cmp ecx, ebp
jae 0x4c8031
mov ebp, ecx
lea edx, [esp + 0x48]
cmp edx, esi
jne 0x4c8056
push ecx
push ebp
lea ecx, [esp + 0x50]
call fcn.00404c30
push 0
push 0
lea ecx, [esp + 0x50]
call fcn.00404c30
jmp 0x4c80e3
test ebp, ebp
jbe 0x4c80a3
cmp ebp, eax
jne 0x4c80a3
mov eax, dword [esi + 4]
test eax, eax
jne 0x4c806a
mov eax, 0x572184
cmp byte [eax - 1], 0xfe
jae 0x4c80a3
push 1
lea ecx, [esp + 0x4c]
call fcn.00404bb0
mov eax, dword [esi + 4]
test eax, eax
jne 0x4c8087
mov eax, 0x572184
mov dword [esp + 0x4c], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x50], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x54], esi
mov cl, byte [eax - 1]
inc cl
mov byte [eax - 1], cl
jmp 0x4c80e3
push 1
push ebp
lea ecx, [esp + 0x50]
call fcn.00404d70
test al, al
je 0x4c80e3
mov esi, dword [esi + 4]
test esi, esi
jne 0x4c80bf
mov esi, 0x572184
mov edi, dword [esp + 0x4c]
mov ecx, ebp
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x4c]
mov edi, dword [esp + 0x30]
mov dword [esp + 0x50], ebp
mov byte [ecx + ebp], 0
mov eax, dword [esp + 0x84]
xor esi, esi
cmp eax, esi
mov byte [esp + 0x198], 5
je 0x4c8115
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4c810c
cmp al, 0xff
je 0x4c810c
dec al
mov byte [ecx], al
jmp 0x4c8115
push ecx
call fcn.00556360
add esp, 4
push esi
push 0xffff
sub esp, 0x10
lea edx, [esp + 0x60]
mov ecx, esp
mov dword [esp + 0x84], esp
push edx
mov dword [esp + 0xa0], esi
mov dword [esp + 0xa4], esi
mov dword [esp + 0xa8], esi
call fcn.00404720
push ecx
lea eax, [esp + 0x30]
mov ecx, esp
mov dword [esp + 0x7c], esp
push eax
mov byte [esp + 0x1b8], 0xc
call fcn.00531810
mov ecx, dword [0x5c6630]
mov byte [esp + 0x1b4], 5
call fcn.005348d0
inc bl
xor cx, cx
mov cl, bl
cmp cx, di
jl 0x4c7fa5
xor ebp, ebp
jmp 0x4c8278
xor dx, dx
mov byte [esp + 0x13], 1
mov dl, al
mov bl, al
cmp dx, di
jge 0x4c8278
push ecx
mov ecx, esp
mov dword [esp + 0x64], esp
push esi
call fcn.00531810
lea ecx, [esp + 0x18]
call fcn.005319b0
push ebp
push 0xffff
sub esp, 0x10
lea eax, [esp + 0x77]
mov ecx, esp
mov dword [esp + 0x78], esp
push eax
push 0x59d430
call fcn.00404840
push ecx
lea edx, [esp + 0x30]
mov ecx, esp
mov dword [esp + 0x88], esp
push edx
mov byte [esp + 0x1b8], 9
call fcn.00531810
mov ecx, dword [0x5c6630]
mov byte [esp + 0x1b4], 5
call fcn.005348d0
add esi, 4
inc bl
xor ax, ax
mov al, bl
cmp ax, di
jl 0x4c819e
jmp 0x4c8278
xor cx, cx
mov cl, bl
cmp cx, di
jge 0x4c8278
push ebp
push 0xffff
sub esp, 0x10
lea edx, [esp + 0x83]
mov ecx, esp
mov dword [esp + 0x78], esp
push edx
push 0x59d430
call fcn.00404840
push ecx
lea eax, [esp + 0x30]
mov ecx, esp
mov dword [esp + 0x88], esp
push eax
mov byte [esp + 0x1b8], 0xa
call fcn.00531810
mov ecx, dword [0x5c6630]
mov byte [esp + 0x1b4], 5
call fcn.005348d0
inc bl
xor cx, cx
mov cl, bl
cmp cx, di
jl 0x4c821c
mov ecx, dword [0x5c6630]
lea edx, [esp + 0x58]
push ebp
lea eax, [esp + 0x48]
push edx
push eax
call fcn.00534bd0
cmp ax, 0xb
jne 0x4c7ef8
jmp 0x4c7d3c
lea ecx, [esp + 0x1c]
mov byte [esp + 0x198], 4
call fcn.00531940
mov eax, dword [esp + 0x3c]
mov esi, dword [esp + 0x38]
cmp esi, eax
mov byte [esp + 0x198], 3
mov edi, eax
je 0x4c82d6
mov ecx, esi
call fcn.00531940
add esi, 4
cmp esi, edi
jne 0x4c82c4
mov esi, dword [esp + 0x38]
push esi
call fcn.00556360
mov eax, dword [esp + 0x2c]
mov esi, dword [esp + 0x28]
add esp, 4
cmp esi, eax
mov dword [esp + 0x38], ebp
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x40], ebp
mov byte [esp + 0x198], 2
mov edi, eax
je 0x4c8313
mov ecx, esi
call fcn.00531940
add esi, 4
cmp esi, edi
jne 0x4c8301
mov esi, dword [esp + 0x24]
push esi
call fcn.00556360
mov eax, dword [esp + 0x50]
add esp, 4
cmp eax, ebp
mov dword [esp + 0x24], ebp
mov dword [esp + 0x28], ebp
mov dword [esp + 0x2c], ebp
je 0x4c834d
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4c8344
cmp al, 0xff
je 0x4c8344
dec al
mov byte [ecx], al
jmp 0x4c834d
push ecx
call fcn.00556360
add esp, 4
lea ecx, [esp + 0x14]
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x50], ebp
mov dword [esp + 0x54], ebp
mov byte [esp + 0x198], 0
call fcn.00531940
lea ecx, [esp + 0x74]
mov dword [esp + 0x198], 0xffffffff
call fcn.00531940
mov ecx, dword [esp + 0x190]
pop edi
pop esi
pop ebp
mov ax, 1
mov dword fs:[0], ecx
pop ebx
add esp, 0x18c
ret