Function at 0x4dffc0
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
xor ecx, ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ebx
push esi
push edi
mov dword [ebp - 4], edx
mov esi, eax
xor eax, eax
push ebp
push 0x4e0196
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, esi
call fcn.004dfdd4
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x22c]
call fcn.0043cf48
mov dl, 1
mov eax, dword [ebp - 4]
call fcn.0043eb64
xor edx, edx
mov eax, dword [ebp - 4]
call fcn.0043eb50
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x22c]
call fcn.0043cf28
mov eax, dword [esi + 0x30]
mov edx, dword [eax]
call dword [edx + 0x34]
lea ecx, [ebp - 0x10]
xor edx, edx
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0x10]
mov edx, 0x4e01ac
call fcn.00404af0
sete al
test al, al
je 0x4e00d2
mov eax, dword [esi + 0x30]
mov edx, dword [eax]
call dword [edx + 0x38]
jmp 0x4e00c1
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x22c]
call fcn.0043cdd8
mov dword [ebp - 0xc], eax
lea ecx, [ebp - 0x14]
mov edx, 1
mov eax, dword [esi + 0x30]
mov ebx, dword [eax]
call dword [ebx + 0x24]
mov edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0xc]
call fcn.0043c878
mov eax, dword [esi + 0x30]
mov edx, dword [eax]
call dword [edx + 0x34]
mov edx, dword [eax]
call dword [edx + 0x14]
mov ebx, eax
dec ebx
sub ebx, 2
jl 0x4e00b9
inc ebx
mov dword [ebp - 8], 2
lea ecx, [ebp - 0x18]
mov edx, dword [ebp - 8]
mov eax, dword [esi + 0x30]
mov edi, dword [eax]
call dword [edi + 0x24]
mov edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
inc dword [ebp - 8]
dec ebx
jne 0x4e0097
mov eax, dword [esi + 0x30]
mov edx, dword [eax]
call dword [edx + 0x3c]
mov eax, dword [esi + 0x30]
mov edx, dword [eax]
call dword [edx + 0x20]
test al, al
je 0x4e004e
jmp 0x4e0156
mov eax, dword [esi + 0x30]
mov edx, dword [eax]
call dword [edx + 0x38]
jmp 0x4e014a
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x22c]
call fcn.0043cdd8
mov dword [ebp - 0xc], eax
lea ecx, [ebp - 0x1c]
xor edx, edx
mov eax, dword [esi + 0x30]
mov ebx, dword [eax]
call dword [ebx + 0x24]
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0xc]
call fcn.0043c878
mov eax, dword [esi + 0x30]
mov edx, dword [eax]
call dword [edx + 0x34]
mov edx, dword [eax]
call dword [edx + 0x14]
mov ebx, eax
dec ebx
test ebx, ebx
jle 0x4e0142
mov dword [ebp - 8], 1
lea ecx, [ebp - 0x20]
mov edx, dword [ebp - 8]
mov eax, dword [esi + 0x30]
mov edi, dword [eax]
call dword [edi + 0x24]
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
inc dword [ebp - 8]
dec ebx
jne 0x4e0120
mov eax, dword [esi + 0x30]
mov edx, dword [eax]
call dword [edx + 0x3c]
mov eax, dword [esi + 0x30]
mov edx, dword [eax]
call dword [edx + 0x20]
test al, al
je 0x4e00dc
mov dl, 1
mov eax, dword [ebp - 4]
call fcn.0043e734
mov dl, 3
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 0x128]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x22c]
call fcn.0043d124
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4e019d
lea eax, [ebp - 0x20]
mov edx, 5
call fcn.00404708
ret