Function at 0x4c97d8
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, eax
xor eax, eax
push ebp
push 0x4c9ad2
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 4]
mov edx, 0x4c9ae8
call fcn.0040422c
push 0
mov ecx, 0x4c9af8
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
mov esi, dword [eax]
call dword [esi + 8]
mov edx, dword [ebx + 0xe8]
mov dword [edx + 4], eax
push 0
mov ecx, 0x4c9b0c
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
mov esi, dword [eax]
call dword [esi + 8]
mov edx, dword [ebx + 0xe8]
mov dword [edx + 0xc], eax
push 0
mov ecx, 0x4c9b20
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
mov esi, dword [eax]
call dword [esi + 8]
mov edx, dword [ebx + 0xe8]
mov dword [edx + 8], eax
push 0
mov ecx, 0x4c9b34
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
mov esi, dword [eax]
call dword [esi + 8]
mov edx, dword [ebx + 0xe8]
mov dword [edx + 0x10], eax
push 0
mov ecx, 0x4c9b4c
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
mov edi, dword [eax]
call dword [edi + 8]
mov esi, dword [ebx + 0xe8]
mov dword [esi + 0x18], eax
push 0
lea eax, [ebp - 0xc]
push eax
mov ecx, 0x4c9b5c
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
mov edi, dword [eax]
call dword [edi]
mov ecx, dword [ebp - 0xc]
mov edx, dword [esi + 0x14]
mov eax, ebx
call fcn.004c8370
push 0
mov ecx, 0x4c9b6c
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
mov edi, dword [eax]
call dword [edi + 8]
mov esi, dword [ebx + 0xe8]
mov dword [esi + 0x1c], eax
push 0
lea eax, [ebp - 0x10]
push eax
mov ecx, 0x4c9b7c
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
mov edi, dword [eax]
call dword [edi]
mov ecx, dword [ebp - 0x10]
mov edx, dword [esi + 0x44]
mov eax, ebx
call fcn.004c8370
push 0
lea eax, [ebp - 0x14]
push eax
mov ecx, 0x4c9b90
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
mov esi, dword [eax]
call dword [esi]
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebx + 0xe8]
mov edx, dword [eax + 0x48]
mov eax, ebx
call fcn.004c8370
push 0xffffffffffffffff
mov ecx, 0x4c9ba4
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
mov esi, dword [eax]
call dword [esi + 8]
mov edx, dword [ebx + 0xe8]
mov dword [edx + 0x2c], eax
push 0xffffffffffffffff
mov ecx, 0x4c9bbc
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
mov esi, dword [eax]
call dword [esi + 8]
mov edx, dword [ebx + 0xe8]
mov dword [edx + 0x30], eax
push 0xffffffffffffffff
mov ecx, 0x4c9bd4
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
mov esi, dword [eax]
call dword [esi + 8]
mov edx, dword [ebx + 0xe8]
mov dword [edx + 0x34], eax
push 0
mov ecx, 0x4c9bec
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
mov esi, dword [eax]
call dword [esi + 8]
mov edx, dword [ebx + 0xe8]
mov dword [edx + 0x4c], eax
push 0
mov ecx, 0x4c9c08
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
mov esi, dword [eax]
call dword [esi + 8]
mov edx, dword [ebx + 0xe8]
mov dword [edx + 0x50], eax
push 0
lea eax, [ebp - 8]
push eax
mov ecx, 0x4c9c24
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
mov esi, dword [eax]
call dword [esi]
cmp dword [ebp - 8], 0
je 0x4c99c1
mov eax, dword [ebx + 0xe8]
mov byte [eax + 0x54], 1
jmp 0x4c99cb
mov eax, dword [ebx + 0xe8]
mov byte [eax + 0x54], 0
push 0
lea eax, [ebp - 8]
push eax
mov ecx, 0x4c9c3c
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
mov esi, dword [eax]
call dword [esi]
cmp dword [ebp - 8], 0
je 0x4c99f2
mov eax, dword [ebx + 0xe8]
mov byte [eax + 0x55], 1
jmp 0x4c99fc
mov eax, dword [ebx + 0xe8]
mov byte [eax + 0x55], 0
push 0
lea eax, [ebp - 8]
push eax
mov ecx, 0x4c9c58
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
mov esi, dword [eax]
call dword [esi]
cmp dword [ebp - 8], 0
je 0x4c9a23
mov eax, dword [ebx + 0xe8]
mov byte [eax + 0x56], 1
jmp 0x4c9a2d
mov eax, dword [ebx + 0xe8]
mov byte [eax + 0x56], 0
push 0
lea eax, [ebp - 0x18]
push eax
mov ecx, 0x4c9c24
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebx + 0x9c]
mov eax, ebx
call fcn.004ca2f8
mov edx, dword [ebx + 0xe8]
mov dword [edx + 0x38], eax
push 0
lea eax, [ebp - 0x1c]
push eax
mov ecx, 0x4c9c3c
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebx + 0x9c]
mov eax, ebx
call fcn.004ca2f8
mov edx, dword [ebx + 0xe8]
mov dword [edx + 0x3c], eax
push 0
lea eax, [ebp - 0x20]
push eax
mov ecx, 0x4c9c58
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
mov esi, dword [eax]
call dword [esi]
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebx + 0x9c]
mov eax, ebx
call fcn.004ca2f8
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 0x4c9ad9
lea eax, [ebp - 0x20]
mov edx, 8
call fcn.004041b8
ret