Function at 0x487884
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 ebx, edx
mov esi, eax
xor eax, eax
push ebp
push 0x487abb
push dword fs:[eax]
mov dword fs:[eax], esp
push 0
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
mov eax, dword [eax - 4]
mov ecx, 0x487ad4
mov edx, esi
mov edi, dword [eax]
call dword [edi + 8]
mov dword [ebx + 0x24], eax
push 0
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
mov eax, dword [eax - 4]
mov ecx, 0x487ae4
mov edx, esi
mov edi, dword [eax]
call dword [edi + 8]
mov dword [ebx + 0x28], eax
push 0
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
mov eax, dword [eax - 4]
mov ecx, 0x487af4
mov edx, esi
mov edi, dword [eax]
call dword [edi + 8]
mov dword [ebx + 0x2c], eax
push 0
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
mov eax, dword [eax - 4]
mov ecx, 0x487b04
mov edx, esi
mov edi, dword [eax]
call dword [edi + 8]
mov dword [ebx + 0x30], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov dword [ebx + 8], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax - 8]
mov dword [ebx + 0xc], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
mov eax, dword [eax - 8]
mov eax, dword [eax + 0x198]
mov dword [ebx + 0x10], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
mov eax, dword [eax - 8]
mov eax, dword [eax + 0x19c]
mov dword [ebx + 0x14], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0xc]
mov dword [ebx + 0x18], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x10]
mov dword [ebx + 0x1c], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x14]
mov dword [ebx + 0x20], eax
mov dl, 1
mov eax, dword [0x4162a4]
call fcn.00403658
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x487a99
push dword fs:[eax]
mov dword fs:[eax], esp
mov al, byte [0x487b0c]
push eax
lea eax, [ebp - 0xc]
push eax
push 0
lea eax, [ebp - 0x10]
push eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
mov eax, dword [eax - 4]
mov ecx, 0x487b18
mov edx, esi
mov esi, dword [eax]
call dword [esi]
mov eax, dword [ebp - 0x10]
mov ecx, 0x487b28
mov edx, 0x487b34
call fcn.0040d8d4
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 0x2c]
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0x14]
mov esi, eax
dec esi
cmp esi, 0
jl 0x487a83
lea ecx, [ebp - 0x14]
mov edx, esi
mov eax, dword [ebp - 4]
mov edi, dword [eax]
call dword [edi + 0xc]
mov eax, dword [ebp - 0x14]
lea edx, [ebp - 8]
call fcn.00408888
cmp dword [ebp - 8], 0
je 0x487a79
push 0
push 0
lea eax, [ebp - 0x18]
push eax
mov eax, dword [ebp - 8]
mov dword [ebp - 0x20], eax
mov byte [ebp - 0x1c], 0xb
lea edx, [ebp - 0x20]
xor ecx, ecx
mov eax, 0x487b40
call fcn.004099cc
mov edx, dword [ebp - 0x18]
xor eax, eax
call fcn.0045bd78
mov edi, eax
test edi, edi
je 0x487a79
mov eax, dword [ebx + 0x34]
call fcn.0040564c
inc eax
push eax
lea eax, [ebx + 0x34]
mov ecx, 1
mov edx, dword [0x485478]
call fcn.00405828
add esp, 4
mov eax, dword [ebx + 0x38]
call fcn.0040564c
inc eax
push eax
lea eax, [ebx + 0x38]
mov ecx, 1
mov edx, dword [0x4854a0]
call fcn.00405828
add esp, 4
mov eax, dword [ebx + 0x34]
call fcn.0040564c
mov edx, dword [ebx + 0x34]
mov dword [edx + eax*4 - 4], edi
mov eax, dword [ebp + 8]
inc dword [eax - 0x18]
dec esi
cmp esi, 0xffffffff
jne 0x4879d1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x487aa0
mov eax, dword [ebp - 4]
call fcn.00403688
ret