Function at 0x4f77b0
Capabilities:
Access peb ldr_data
Check for peb ntglobalflag flag
Get ntdll base address
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x80
mov esi, esp
mov dword [esi + 0x68], ebp
mov edi, ecx
mov ebx, dword [ebp + 8]
mov dword [esi + 0x6c], esp
mov dword [esi + 0x78], 0xffffffff
lea eax, [esi + 0x70]
mov dword [esi + 0x74], 0x594370
mov ecx, dword fs:[0]
mov dword [esi + 0x70], ecx
mov dword fs:[0], eax
mov eax, dword [0x5d1320]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, dword [0x5d1324]
sete byte [esi + 6]
cmp eax, 0xa
setl byte [esi + 7]
lea eax, [edi + 0x1c]
mov dword [esi + 0x3c], eax
lea eax, [ebx + 0x1c]
mov dword [esi + 0x24], eax
lea eax, [edi + 0x34]
mov dword [esi + 0x38], eax
lea eax, [ebx + 0x34]
mov dword [esi + 0x20], eax
lea eax, [edi + 0x3c]
mov dword [esi + 0x34], eax
lea eax, [ebx + 0x3c]
mov dword [esi + 0x1c], eax
lea eax, [edi + 0x54]
mov dword [esi + 0x30], eax
lea eax, [ebx + 0x54]
mov dword [esi + 0x18], eax
lea eax, [ebx + 0x70]
mov dword [esi + 0x14], eax
lea eax, [edi + 0x70]
mov dword [esi + 0x2c], eax
lea eax, [edi + 0x98]
mov dword [esi + 0x28], eax
lea eax, [ebx + 0x98]
mov dword [esi + 0xc], eax
mov eax, 0xcee83329
mov dword [esi + 0x10], edi
nop word cs:[eax + eax]
cmp eax, 0xcee83328
jg 0x4f7940
cmp eax, 0x88974f61
je 0x4f7983
cmp eax, 0xc804bd92
jne 0x4f7870
mov dword [esi + 0x78], 0xffffffff
mov ecx, edi
push ebx
call fcn.00497e00
mov eax, dword [ebx + 0x18]
mov dword [edi + 0x18], eax
mov ecx, dword [esi + 0x3c]
push dword [esi + 0x24]
call fcn.00497e00
mov ecx, dword [esi + 0x38]
push dword [esi + 0x20]
call fcn.004a4b80
mov ecx, dword [esi + 0x34]
push dword [esi + 0x1c]
call fcn.00497e00
mov ecx, dword [esi + 0x30]
push dword [esi + 0x18]
call fcn.00497e00
mov eax, dword [ebx + 0x6c]
mov dword [edi + 0x6c], eax
mov dword [esi + 0x64], 0
mov dword [esi + 0x78], 1
lea ecx, [esi + 0x40]
push dword [esi + 0x14]
call fcn.004b9120
lea edi, [esi + 0x40]
mov ecx, edi
push dword [esi + 0x2c]
call fcn.004f6400
mov ecx, edi
call fcn.004b93d0
mov dword [esi + 0x78], 0xffffffff
mov ecx, dword [esi + 0x28]
push dword [esi + 0xc]
call fcn.004f7cc0
mov ecx, dword [ebp + 8]
movzx eax, word [ecx + 0xc0]
mov edi, dword [esi + 0x10]
mov word [edi + 0xc0], ax
mov eax, 0x88974f61
mov ebx, ecx
jmp 0x4f7870
cmp eax, 0x3b57a76e
je 0x4f7a81
cmp eax, 0xcee83329
jne 0x4f7870
movzx edx, byte [esi + 6]
mov byte [esi + 8], dl
movzx eax, byte [esi + 7]
xor dl, al
mov edx, 0xc804bd92
mov ecx, 0x88974f61
cmovne edx, ecx
test al, al
mov eax, edx
cmovne eax, ecx
cmp byte [esi + 8], 0
cmove eax, edx
jmp 0x4f7870
mov dword [esi], edi
mov ecx, dword [esi]
mov dword [esi + 0x78], 0xffffffff
push ebx
call fcn.00497e00
mov eax, dword [ebx + 0x18]
mov ecx, dword [esi]
mov dword [ecx + 0x18], eax
mov ecx, dword [esi]
add ecx, 0x1c
push dword [esi + 0x24]
call fcn.00497e00
mov ecx, dword [esi]
add ecx, 0x34
push dword [esi + 0x20]
call fcn.004a4b80
mov ecx, dword [esi]
add ecx, 0x3c
push dword [esi + 0x1c]
call fcn.00497e00
mov ecx, dword [esi]
add ecx, 0x54
push dword [esi + 0x18]
call fcn.00497e00
mov eax, dword [ebx + 0x6c]
mov ecx, dword [esi]
mov dword [ecx + 0x6c], eax
mov eax, dword [esi]
mov dword [esi + 8], eax
mov dword [esi + 0x64], 0
mov dword [esi + 0x78], 0
lea ecx, [esi + 0x40]
push dword [esi + 0x14]
call fcn.004b9120
mov eax, dword [esi + 8]
add eax, 0x70
lea edi, [esi + 0x40]
mov ecx, edi
push eax
call fcn.004f6400
mov ecx, edi
call fcn.004b93d0
mov ecx, dword [esi]
mov eax, 0x98
add ecx, eax
mov dword [esi + 0x78], 0xffffffff
push dword [esi + 0xc]
call fcn.004f7cc0
mov eax, dword [esi]
mov ebx, dword [ebp + 8]
movzx ecx, word [ebx + 0xc0]
mov word [eax + 0xc0], cx
mov edx, dword [0x5d1320]
mov ecx, dword [0x5d1324]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0xc804bd92
mov edi, 0x3b57a76e
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
mov edi, dword [esi + 0x10]
jmp 0x4f7870
mov eax, dword [esi]
mov ecx, dword [esi + 0x70]
mov dword fs:[0], ecx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 4