Function at 0x487304
Capabilities:
Access peb ldr_data
Get kernel32 base address

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
mov ebx, eax
xor eax, eax
push ebp
push 0x487611
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 4]
mov edx, 0x487628
call fcn.004042e4
push 0
mov ecx, 0x487638
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00461d90
mov edx, dword [ebx + 0x100]
mov dword [edx + 4], eax
push 0
mov ecx, 0x48764c
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00461d90
mov edx, dword [ebx + 0x100]
mov dword [edx + 0xc], eax
push 0
mov ecx, 0x487660
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00461d90
mov edx, dword [ebx + 0x100]
mov dword [edx + 8], eax
push 0
mov ecx, 0x487674
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00461d90
mov edx, dword [ebx + 0x100]
mov dword [edx + 0x10], eax
push 0
mov ecx, 0x48768c
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00461d90
mov esi, dword [ebx + 0x100]
mov dword [esi + 0x18], eax
push 0
lea eax, [ebp - 0xc]
push eax
mov ecx, 0x48769c
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00461c60
mov ecx, dword [ebp - 0xc]
mov edx, dword [esi + 0x14]
mov eax, ebx
call fcn.00485e44
push 0
mov ecx, 0x4876ac
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00461d90
mov esi, dword [ebx + 0x100]
mov dword [esi + 0x1c], eax
push 0
lea eax, [ebp - 0x10]
push eax
mov ecx, 0x4876bc
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00461c60
mov ecx, dword [ebp - 0x10]
mov edx, dword [esi + 0x44]
mov eax, ebx
call fcn.00485e44
push 0
lea eax, [ebp - 0x14]
push eax
mov ecx, 0x4876d0
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00461c60
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebx + 0x100]
mov edx, dword [eax + 0x48]
mov eax, ebx
call fcn.00485e44
push 0xffffffffffffffff
mov ecx, 0x4876e4
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00461d90
mov edx, dword [ebx + 0x100]
mov dword [edx + 0x2c], eax
push 0xffffffffffffffff
mov ecx, 0x4876fc
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00461d90
mov edx, dword [ebx + 0x100]
mov dword [edx + 0x30], eax
push 0xffffffffffffffff
mov ecx, 0x487714
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00461d90
mov edx, dword [ebx + 0x100]
mov dword [edx + 0x34], eax
push 0
mov ecx, 0x48772c
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00461d90
mov edx, dword [ebx + 0x100]
mov dword [edx + 0x4c], eax
push 0
mov ecx, 0x487748
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00461d90
mov esi, dword [ebx + 0x100]
mov dword [esi + 0x50], eax
cmp dword [esi + 0x1c], 1
jle 0x4874d3
xor eax, eax
mov dword [esi + 0x1c], eax
push 0
lea eax, [ebp - 8]
push eax
mov ecx, 0x487764
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00461c60
cmp dword [ebp - 8], 0
je 0x4874fb
mov eax, dword [ebx + 0x100]
mov byte [eax + 0x54], 1
jmp 0x487505
mov eax, dword [ebx + 0x100]
mov byte [eax + 0x54], 0
push 0
lea eax, [ebp - 8]
push eax
mov ecx, 0x48777c
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00461c60
cmp dword [ebp - 8], 0
je 0x48752d
mov eax, dword [ebx + 0x100]
mov byte [eax + 0x55], 1
jmp 0x487537
mov eax, dword [ebx + 0x100]
mov byte [eax + 0x55], 0
push 0
lea eax, [ebp - 8]
push eax
mov ecx, 0x487798
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00461c60
cmp dword [ebp - 8], 0
je 0x48755f
mov eax, dword [ebx + 0x100]
mov byte [eax + 0x56], 1
jmp 0x487569
mov eax, dword [ebx + 0x100]
mov byte [eax + 0x56], 0
push 0
lea eax, [ebp - 0x18]
push eax
mov ecx, 0x487764
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00461c60
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebx + 0xb0]
mov eax, ebx
call fcn.00488738
mov edx, dword [ebx + 0x100]
mov dword [edx + 0x38], eax
push 0
lea eax, [ebp - 0x1c]
push eax
mov ecx, 0x48777c
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00461c60
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebx + 0xb0]
mov eax, ebx
call fcn.00488738
mov edx, dword [ebx + 0x100]
mov dword [edx + 0x3c], eax
push 0
lea eax, [ebp - 0x20]
push eax
mov ecx, 0x487798
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00461c60
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebx + 0xb0]
mov eax, ebx
call fcn.00488738
mov edx, dword [ebx + 0x100]
mov dword [edx + 0x40], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x487618
lea eax, [ebp - 0x20]
mov edx, 8
call fcn.00404270
ret