Function at 0x649994
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 0x649c96
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 4]
mov edx, 0x649cac
call fcn.0040471c
push 0
mov ecx, 0x649cbc
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
call fcn.006256c0
mov edx, dword [ebx + 0xe8]
mov dword [edx + 4], eax
push 0
mov ecx, 0x649cd0
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
call fcn.006256c0
mov edx, dword [ebx + 0xe8]
mov dword [edx + 0xc], eax
push 0
mov ecx, 0x649ce4
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
call fcn.006256c0
mov edx, dword [ebx + 0xe8]
mov dword [edx + 8], eax
push 0
mov ecx, 0x649cf8
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
call fcn.006256c0
mov edx, dword [ebx + 0xe8]
mov dword [edx + 0x10], eax
push 0
mov ecx, 0x649d10
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
call fcn.006256c0
mov esi, dword [ebx + 0xe8]
mov dword [esi + 0x18], eax
push 0
lea eax, [ebp - 0xc]
push eax
mov ecx, 0x649d20
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
call fcn.00625590
mov ecx, dword [ebp - 0xc]
mov edx, dword [esi + 0x14]
mov eax, ebx
call fcn.00648544
push 0
mov ecx, 0x649d30
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
call fcn.006256c0
mov esi, dword [ebx + 0xe8]
mov dword [esi + 0x1c], eax
push 0
lea eax, [ebp - 0x10]
push eax
mov ecx, 0x649d40
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
call fcn.00625590
mov ecx, dword [ebp - 0x10]
mov edx, dword [esi + 0x44]
mov eax, ebx
call fcn.00648544
push 0
lea eax, [ebp - 0x14]
push eax
mov ecx, 0x649d54
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
call fcn.00625590
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebx + 0xe8]
mov edx, dword [eax + 0x48]
mov eax, ebx
call fcn.00648544
push 0xffffffffffffffff
mov ecx, 0x649d68
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
call fcn.006256c0
mov edx, dword [ebx + 0xe8]
mov dword [edx + 0x2c], eax
push 0xffffffffffffffff
mov ecx, 0x649d80
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
call fcn.006256c0
mov edx, dword [ebx + 0xe8]
mov dword [edx + 0x30], eax
push 0xffffffffffffffff
mov ecx, 0x649d98
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
call fcn.006256c0
mov edx, dword [ebx + 0xe8]
mov dword [edx + 0x34], eax
push 0
mov ecx, 0x649db0
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
call fcn.006256c0
mov edx, dword [ebx + 0xe8]
mov dword [edx + 0x4c], eax
push 0
mov ecx, 0x649dcc
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
call fcn.006256c0
mov edx, dword [ebx + 0xe8]
mov dword [edx + 0x50], eax
push 0
lea eax, [ebp - 8]
push eax
mov ecx, 0x649de8
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
call fcn.00625590
cmp dword [ebp - 8], 0
je 0x649b80
mov eax, dword [ebx + 0xe8]
mov byte [eax + 0x54], 1
jmp 0x649b8a
mov eax, dword [ebx + 0xe8]
mov byte [eax + 0x54], 0
push 0
lea eax, [ebp - 8]
push eax
mov ecx, 0x649e00
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
call fcn.00625590
cmp dword [ebp - 8], 0
je 0x649bb2
mov eax, dword [ebx + 0xe8]
mov byte [eax + 0x55], 1
jmp 0x649bbc
mov eax, dword [ebx + 0xe8]
mov byte [eax + 0x55], 0
push 0
lea eax, [ebp - 8]
push eax
mov ecx, 0x649e1c
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
call fcn.00625590
cmp dword [ebp - 8], 0
je 0x649be4
mov eax, dword [ebx + 0xe8]
mov byte [eax + 0x56], 1
jmp 0x649bee
mov eax, dword [ebx + 0xe8]
mov byte [eax + 0x56], 0
push 0
lea eax, [ebp - 0x18]
push eax
mov ecx, 0x649de8
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
call fcn.00625590
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebx + 0x9c]
mov eax, ebx
call fcn.0064a4b8
mov edx, dword [ebx + 0xe8]
mov dword [edx + 0x38], eax
push 0
lea eax, [ebp - 0x1c]
push eax
mov ecx, 0x649e00
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
call fcn.00625590
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebx + 0x9c]
mov eax, ebx
call fcn.0064a4b8
mov edx, dword [ebx + 0xe8]
mov dword [edx + 0x3c], eax
push 0
lea eax, [ebp - 0x20]
push eax
mov ecx, 0x649e1c
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
call fcn.00625590
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebx + 0x9c]
mov eax, ebx
call fcn.0064a4b8
mov edx, dword [ebx + 0xe8]
mov dword [edx + 0x40], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x649c9d
lea eax, [ebp - 0x20]
mov edx, 8
call fcn.004046a8
ret