Function at 0x404b80
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x508140
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x30
push 0x55cdd0
lea ecx, [esp + 0x10]
mov dword [esp + 0x3c], 0
call fcn.004dce86
mov eax, dword [0x55cdc8]
mov ecx, dword [0x55cdd4]
push eax
push ecx
lea ecx, [esp + 0x14]
mov byte [esp + 0x40], 1
call fcn.004d3758
lea edx, [esp + 0x40]
lea ecx, [esp + 8]
push edx
call fcn.004dce86
lea ecx, [esp + 8]
mov byte [esp + 0x38], 2
call fcn.004dd657
push 0x5526b8
push 0x5526b4
lea ecx, [esp + 0x10]
call fcn.004d3758
push 0x22
lea ecx, [esp + 0xc]
call fcn.004dd514
push 0x22
push 0
lea ecx, [esp + 0x10]
call fcn.004d35e2
push 0x20
push 0
lea ecx, [esp + 0x10]
call fcn.004d35e2
lea ecx, [esp + 0x10]
call fcn.004de17f
mov eax, dword [0x5580a0]
mov dword [esp], eax
mov ecx, dword [esp + 0xc]
push 0
push 0
push ecx
lea ecx, [esp + 0x1c]
mov byte [esp + 0x44], 4
call fcn.004de331
test eax, eax
je 0x404d71
push ebp
push 0x191
call fcn.004dd75a
add esp, 4
mov ebp, eax
lea ecx, [esp + 0x14]
push 0x190
push ebp
call fcn.004de44e
test eax, eax
jle 0x404d5e
push esi
push edi
push ebp
lea ecx, [esp + 0x10]
mov byte [eax + ebp], 0
call fcn.004dd29a
or edi, 0xffffffff
mov edx, dword [0x55cdcc]
lea ecx, [esp + 0xc]
push edx
call fcn.004d3b06
mov esi, eax
test esi, esi
jl 0x404cde
cmp edi, 0xffffffff
jne 0x404ca5
mov edi, esi
push esi
push 0x55266c
lea ecx, [esp + 0x14]
call fcn.004d3b14
cmp eax, esi
jle 0x404cc8
sub eax, esi
lea ecx, [esp + 0xc]
inc eax
push eax
push esi
call fcn.004d358a
jmp 0x404c88
mov eax, dword [esp + 0xc]
mov ecx, dword [eax - 8]
sub ecx, esi
push ecx
push esi
lea ecx, [esp + 0x14]
call fcn.004d358a
jmp 0x404c88
cmp edi, 0xffffffff
jne 0x404ce5
xor edi, edi
mov edx, dword [0x5580a0]
mov dword [esp + 0x10], edx
push 0x55cdcc
lea ecx, [esp + 0x14]
mov byte [esp + 0x48], 5
call fcn.004dd529
lea eax, [esp + 0x14]
lea ecx, [esp + 0x10]
push eax
call fcn.004dd529
push 0x5526b0
lea ecx, [esp + 0x14]
call fcn.004dd4ed
test edi, edi
jle 0x404d3f
mov ecx, dword [esp + 0xc]
cmp byte [edi + ecx - 1], 0xa
je 0x404d3f
push 0x5526b0
push edi
lea ecx, [esp + 0x14]
call fcn.004d3666
add edi, 2
mov edx, dword [esp + 0x10]
lea ecx, [esp + 0xc]
push edx
push edi
call fcn.004d3666
lea ecx, [esp + 0x10]
mov byte [esp + 0x44], 4
call fcn.004dd111
pop edi
pop esi
push ebp
call fcn.004dd783
add esp, 4
lea ecx, [esp + 0x14]
call fcn.004de54c
pop ebp
mov eax, dword [esp]
mov ecx, dword [eax - 8]
test ecx, ecx
jne 0x404e4f
mov ecx, dword [0x5580a0]
mov dword [esp + 4], ecx
push 3
lea edx, [esp + 8]
push str.maxtypes__d_r_n
push edx
mov byte [esp + 0x44], 6
call fcn.004d3e8c
add esp, 0xc
lea eax, [esp + 4]
lea ecx, [esp]
push eax
call fcn.004dd529
push 0x55cdcc
lea ecx, [esp + 4]
call fcn.004dd529
lea ecx, [esp + 8]
push ecx
lea ecx, [esp + 4]
call fcn.004dd529
push 0x5526b0
lea ecx, [esp + 4]
call fcn.004dd4ed
push 0
lea edx, [esp + 8]
push str.typeDir_d_r_n
push edx
call fcn.004d3e8c
add esp, 0xc
lea eax, [esp + 4]
lea ecx, [esp]
push eax
call fcn.004dd529
push 1
lea ecx, [esp + 8]
push str.typeLink_d_r_n
push ecx
call fcn.004d3e8c
add esp, 0xc
lea edx, [esp + 4]
lea ecx, [esp]
push edx
call fcn.004dd529
push 3
lea eax, [esp + 8]
push str.typeImage_d_r_n
push eax
call fcn.004d3e8c
add esp, 0xc
lea ecx, [esp + 4]
push ecx
lea ecx, [esp + 4]
call fcn.004dd529
lea ecx, [esp + 4]
mov byte [esp + 0x38], 4
call fcn.004dd111
mov edx, dword [esp + 0xc]
push 0
push 2
push 2
push 0
push 1
push 0x40000000
push edx
call dword [sym.imp.KERNEL32.dll_CreateFileA]
cmp eax, 0xffffffff
je 0x404ea6
push eax
lea ecx, [esp + 0x24]
call fcn.004de1b5
mov eax, dword [esp]
mov byte [esp + 0x38], 7
mov ecx, dword [eax - 8]
push ecx
push eax
lea ecx, [esp + 0x28]
call fcn.004de488
lea ecx, [esp + 0x20]
call fcn.004de54c
lea ecx, [esp + 0x20]
mov byte [esp + 0x38], 4
call fcn.004de274
lea ecx, [esp]
mov byte [esp + 0x38], 3
call fcn.004dd111
lea ecx, [esp + 0x10]
mov byte [esp + 0x38], 2
call fcn.004de274
lea ecx, [esp + 8]
mov byte [esp + 0x38], 1
call fcn.004dd111
lea ecx, [esp + 0xc]
mov byte [esp + 0x38], 0
call fcn.004dd111
lea ecx, [esp + 0x40]
mov dword [esp + 0x38], 0xffffffff
call fcn.004dd111
mov ecx, dword [esp + 0x30]
mov dword fs:[0], ecx
add esp, 0x3c
ret