Function at 0x4a1858
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 0x4a1b65
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 4]
mov edx, 0x4a1b7c
call fcn.00404060
push 0
mov ecx, 0x4a1b8c
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.0047b620
mov edx, dword [ebx + 0x11c]
mov dword [edx + 4], eax
push 0
mov ecx, 0x4a1ba0
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.0047b620
mov edx, dword [ebx + 0x11c]
mov dword [edx + 0xc], eax
push 0
mov ecx, 0x4a1bb4
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.0047b620
mov edx, dword [ebx + 0x11c]
mov dword [edx + 8], eax
push 0
mov ecx, 0x4a1bc8
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.0047b620
mov edx, dword [ebx + 0x11c]
mov dword [edx + 0x10], eax
push 0
mov ecx, 0x4a1be0
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.0047b620
mov esi, dword [ebx + 0x11c]
mov dword [esi + 0x18], eax
push 0
lea eax, [ebp - 0xc]
push eax
mov ecx, 0x4a1bf0
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.0047b4f0
mov ecx, dword [ebp - 0xc]
mov edx, dword [esi + 0x14]
mov eax, ebx
call fcn.004a0398
push 0
mov ecx, 0x4a1c00
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.0047b620
mov esi, dword [ebx + 0x11c]
mov dword [esi + 0x1c], eax
push 0
lea eax, [ebp - 0x10]
push eax
mov ecx, 0x4a1c10
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.0047b4f0
mov ecx, dword [ebp - 0x10]
mov edx, dword [esi + 0x44]
mov eax, ebx
call fcn.004a0398
push 0
lea eax, [ebp - 0x14]
push eax
mov ecx, 0x4a1c24
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.0047b4f0
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebx + 0x11c]
mov edx, dword [eax + 0x48]
mov eax, ebx
call fcn.004a0398
push 0xffffffffffffffff
mov ecx, 0x4a1c38
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.0047b620
mov edx, dword [ebx + 0x11c]
mov dword [edx + 0x2c], eax
push 0xffffffffffffffff
mov ecx, 0x4a1c50
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.0047b620
mov edx, dword [ebx + 0x11c]
mov dword [edx + 0x30], eax
push 0xffffffffffffffff
mov ecx, 0x4a1c68
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.0047b620
mov edx, dword [ebx + 0x11c]
mov dword [edx + 0x34], eax
push 0
mov ecx, 0x4a1c80
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.0047b620
mov edx, dword [ebx + 0x11c]
mov dword [edx + 0x4c], eax
push 0
mov ecx, 0x4a1c9c
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.0047b620
mov esi, dword [ebx + 0x11c]
mov dword [esi + 0x50], eax
cmp dword [esi + 0x1c], 1
jle 0x4a1a27
xor eax, eax
mov dword [esi + 0x1c], eax
push 0
lea eax, [ebp - 8]
push eax
mov ecx, 0x4a1cb8
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.0047b4f0
cmp dword [ebp - 8], 0
je 0x4a1a4f
mov eax, dword [ebx + 0x11c]
mov byte [eax + 0x54], 1
jmp 0x4a1a59
mov eax, dword [ebx + 0x11c]
mov byte [eax + 0x54], 0
push 0
lea eax, [ebp - 8]
push eax
mov ecx, 0x4a1cd0
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.0047b4f0
cmp dword [ebp - 8], 0
je 0x4a1a81
mov eax, dword [ebx + 0x11c]
mov byte [eax + 0x55], 1
jmp 0x4a1a8b
mov eax, dword [ebx + 0x11c]
mov byte [eax + 0x55], 0
push 0
lea eax, [ebp - 8]
push eax
mov ecx, 0x4a1cec
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.0047b4f0
cmp dword [ebp - 8], 0
je 0x4a1ab3
mov eax, dword [ebx + 0x11c]
mov byte [eax + 0x56], 1
jmp 0x4a1abd
mov eax, dword [ebx + 0x11c]
mov byte [eax + 0x56], 0
push 0
lea eax, [ebp - 0x18]
push eax
mov ecx, 0x4a1cb8
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.0047b4f0
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebx + 0xb8]
mov eax, ebx
call fcn.004a2c8c
mov edx, dword [ebx + 0x11c]
mov dword [edx + 0x38], eax
push 0
lea eax, [ebp - 0x1c]
push eax
mov ecx, 0x4a1cd0
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.0047b4f0
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebx + 0xb8]
mov eax, ebx
call fcn.004a2c8c
mov edx, dword [ebx + 0x11c]
mov dword [edx + 0x3c], eax
push 0
lea eax, [ebp - 0x20]
push eax
mov ecx, 0x4a1cec
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x34]
call fcn.0047b4f0
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebx + 0xb8]
mov eax, ebx
call fcn.004a2c8c
mov edx, dword [ebx + 0x11c]
mov dword [edx + 0x40], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4a1b6c
lea eax, [ebp - 0x20]
mov edx, 8
call fcn.00403fec
ret