Function at 0x4dc840
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x4462e8
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x2c
mov eax, dword [0x459a84]
push esi
mov dword [esp + 0x2c], eax
mov dword [esp + 0x38], 0
mov dword [esp + 0xc], eax
push 0xffffffffffffffff
push 0
mov ecx, 0x45c7a8
mov byte [esp + 0x40], 1
call fcn.005013e5
push 0xffffffffffffffff
push 0
mov ecx, 0x45c7c0
call fcn.005013e5
push 0x458368
lea ecx, [esp + 0x10]
call fcn.005020a9
mov eax, dword [esp + 0xc]
push 0
push eax
mov ecx, 0x45c7d8
call fcn.00500728
mov esi, eax
test esi, esi
jl 0x4dcb7f
push ebx
push ebp
push edi
mov bl, 5
jmp 0x4dc8c3
mov esi, dword [esp + 0x28]
mov ecx, dword [0x459a84]
mov dword [esp + 0x10], ecx
mov eax, dword [esp + 0x18]
lea edx, [esi + 1]
push edx
push eax
mov ecx, 0x45c7d8
mov byte [esp + 0x4c], 2
call fcn.00500728
mov edi, eax
test edi, edi
mov dword [esp + 0x34], edi
jle 0x4dc91e
mov ecx, edi
lea edx, [esp + 0x20]
sub ecx, esi
push ecx
push esi
push edx
mov ecx, 0x45c7d8
call fcn.0050056e
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x48], 3
call fcn.00502059
mov byte [esp + 0x44], 2
lea ecx, [esp + 0x20]
jmp 0x4dc946
lea eax, [esp + 0x24]
push esi
push eax
mov ecx, 0x45c7d8
call fcn.0050054b
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x48], 4
call fcn.00502059
mov byte [esp + 0x44], 2
lea ecx, [esp + 0x24]
call fcn.00501f20
mov ecx, dword [0x459a84]
mov dword [esp + 0x28], edi
mov dword [esp + 0x14], ecx
push 0
push 0x459924
lea ecx, [esp + 0x18]
mov byte [esp + 0x4c], bl
call fcn.00500728
test eax, eax
jle 0x4dcaa3
inc eax
lea ecx, [esp + 0x10]
push eax
push 0x45991c
call fcn.00500728
mov esi, eax
test esi, esi
jle 0x4dcb54
lea edx, [esi + 1]
lea ecx, [esp + 0x10]
push edx
push 0x459914
call fcn.00500728
mov ebp, eax
test ebp, ebp
jle 0x4dcb54
mov edi, 0x45991c
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
mov eax, ebp
dec ecx
sub eax, esi
mov edi, 0x45991c
sub eax, ecx
or ecx, 0xffffffff
push eax
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
add ecx, esi
push ecx
lea ecx, [esp + 0x34]
push ecx
lea ecx, [esp + 0x1c]
call fcn.0050056e
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x48], 6
call fcn.00502059
lea ecx, [esp + 0x2c]
mov byte [esp + 0x44], bl
call fcn.00501f20
mov eax, dword [0x45c7c8]
lea edx, [esp + 0x14]
push edx
push eax
mov ecx, 0x45c7c0
call fcn.0050155a
inc ebp
lea ecx, [esp + 0x10]
push ebp
push 0x45990c
call fcn.00500728
mov esi, eax
test esi, esi
jle 0x4dcb54
push esi
push 0x459904
lea ecx, [esp + 0x18]
call fcn.00500728
mov edx, eax
test edx, edx
jle 0x4dcb54
mov edi, 0x45990c
or ecx, 0xffffffff
xor eax, eax
sub edx, esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x45990c
sub edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
push edx
add ecx, esi
lea eax, [esp + 0x20]
push ecx
push eax
lea ecx, [esp + 0x1c]
call fcn.0050056e
mov eax, dword [0x45c7b0]
lea ecx, [esp + 0x1c]
push ecx
push eax
mov ecx, 0x45c7a8
mov byte [esp + 0x4c], 7
call fcn.0050155a
lea ecx, [esp + 0x1c]
mov byte [esp + 0x44], bl
call fcn.00501f20
jmp 0x4dcb54
push 0x4598e8
lea ecx, [esp + 0x14]
call fcn.0050071a
test eax, eax
jle 0x4dcb54
inc eax
lea ecx, [esp + 0x10]
push eax
push 0x4598dc
call fcn.00500728
mov esi, eax
test esi, esi
jle 0x4dcb4a
lea edx, [esi + 1]
lea ecx, [esp + 0x10]
push edx
push 0x4598d0
call fcn.00500728
mov edx, eax
test edx, edx
jle 0x4dcb4a
mov edi, 0x4598dc
or ecx, 0xffffffff
xor eax, eax
sub edx, esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x4598dc
sub edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
push edx
add ecx, esi
lea eax, [esp + 0x34]
push ecx
push eax
lea ecx, [esp + 0x1c]
call fcn.0050056e
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x48], 8
call fcn.00502059
lea ecx, [esp + 0x30]
mov byte [esp + 0x44], bl
call fcn.00501f20
mov eax, dword [0x45c7c8]
lea ecx, [esp + 0x14]
push ecx
push eax
mov ecx, 0x45c7c0
call fcn.0050155a
test esi, esi
mov eax, esi
jg 0x4dcab9
lea ecx, [esp + 0x14]
mov byte [esp + 0x44], 2
call fcn.00501f20
lea ecx, [esp + 0x10]
mov byte [esp + 0x44], 1
call fcn.00501f20
mov eax, dword [esp + 0x34]
test eax, eax
jge 0x4dc8bf
pop edi
pop ebp
pop ebx
lea ecx, [esp + 0xc]
mov byte [esp + 0x38], 0
call fcn.00501f20
lea ecx, [esp + 0x2c]
mov dword [esp + 0x38], 0xffffffff
call fcn.00501f20
mov ecx, dword [esp + 0x30]
mov eax, 1
pop esi
mov dword fs:[0], ecx
add esp, 0x38
ret