Function at 0x487810
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 0x487b1d
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 4]
mov edx, 0x487b34
call fcn.0040412c
push 0
mov ecx, 0x487b44
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00466548
mov edx, dword [ebx + 0x100]
mov dword [edx + 4], eax
push 0
mov ecx, 0x487b58
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00466548
mov edx, dword [ebx + 0x100]
mov dword [edx + 0xc], eax
push 0
mov ecx, 0x487b6c
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00466548
mov edx, dword [ebx + 0x100]
mov dword [edx + 8], eax
push 0
mov ecx, 0x487b80
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00466548
mov edx, dword [ebx + 0x100]
mov dword [edx + 0x10], eax
push 0
mov ecx, 0x487b98
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00466548
mov esi, dword [ebx + 0x100]
mov dword [esi + 0x18], eax
push 0
lea eax, [ebp - 0xc]
push eax
mov ecx, 0x487ba8
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00466418
mov ecx, dword [ebp - 0xc]
mov edx, dword [esi + 0x14]
mov eax, ebx
call fcn.00486390
push 0
mov ecx, 0x487bb8
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00466548
mov esi, dword [ebx + 0x100]
mov dword [esi + 0x1c], eax
push 0
lea eax, [ebp - 0x10]
push eax
mov ecx, 0x487bc8
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00466418
mov ecx, dword [ebp - 0x10]
mov edx, dword [esi + 0x44]
mov eax, ebx
call fcn.00486390
push 0
lea eax, [ebp - 0x14]
push eax
mov ecx, 0x487bdc
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00466418
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebx + 0x100]
mov edx, dword [eax + 0x48]
mov eax, ebx
call fcn.00486390
push 0xffffffffffffffff
mov ecx, 0x487bf0
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00466548
mov edx, dword [ebx + 0x100]
mov dword [edx + 0x2c], eax
push 0xffffffffffffffff
mov ecx, 0x487c08
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00466548
mov edx, dword [ebx + 0x100]
mov dword [edx + 0x30], eax
push 0xffffffffffffffff
mov ecx, 0x487c20
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00466548
mov edx, dword [ebx + 0x100]
mov dword [edx + 0x34], eax
push 0
mov ecx, 0x487c38
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00466548
mov edx, dword [ebx + 0x100]
mov dword [edx + 0x4c], eax
push 0
mov ecx, 0x487c54
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00466548
mov esi, dword [ebx + 0x100]
mov dword [esi + 0x50], eax
cmp dword [esi + 0x1c], 1
jle 0x4879df
xor eax, eax
mov dword [esi + 0x1c], eax
push 0
lea eax, [ebp - 8]
push eax
mov ecx, 0x487c70
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00466418
cmp dword [ebp - 8], 0
je 0x487a07
mov eax, dword [ebx + 0x100]
mov byte [eax + 0x54], 1
jmp 0x487a11
mov eax, dword [ebx + 0x100]
mov byte [eax + 0x54], 0
push 0
lea eax, [ebp - 8]
push eax
mov ecx, 0x487c88
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00466418
cmp dword [ebp - 8], 0
je 0x487a39
mov eax, dword [ebx + 0x100]
mov byte [eax + 0x55], 1
jmp 0x487a43
mov eax, dword [ebx + 0x100]
mov byte [eax + 0x55], 0
push 0
lea eax, [ebp - 8]
push eax
mov ecx, 0x487ca4
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00466418
cmp dword [ebp - 8], 0
je 0x487a6b
mov eax, dword [ebx + 0x100]
mov byte [eax + 0x56], 1
jmp 0x487a75
mov eax, dword [ebx + 0x100]
mov byte [eax + 0x56], 0
push 0
lea eax, [ebp - 0x18]
push eax
mov ecx, 0x487c70
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00466418
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebx + 0xb0]
mov eax, ebx
call fcn.00488c84
mov edx, dword [ebx + 0x100]
mov dword [edx + 0x38], eax
push 0
lea eax, [ebp - 0x1c]
push eax
mov ecx, 0x487c88
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00466418
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebx + 0xb0]
mov eax, ebx
call fcn.00488c84
mov edx, dword [ebx + 0x100]
mov dword [edx + 0x3c], eax
push 0
lea eax, [ebp - 0x20]
push eax
mov ecx, 0x487ca4
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.00466418
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebx + 0xb0]
mov eax, ebx
call fcn.00488c84
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 0x487b24
lea eax, [ebp - 0x20]
mov edx, 8
call fcn.004040b8
ret