Function at 0x80aec8
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffd0
push ebx
push esi
push edi
xor ecx, ecx
mov dword [ebp - 0x30], ecx
mov dword [ebp - 4], ecx
mov dword [ebp - 8], ecx
mov dword [ebp - 0xc], ecx
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x14], eax
xor eax, eax
push ebp
push 0x80b1bd
push dword fs:[eax]
mov dword fs:[eax], esp
mov ebx, edx
xor edx, edx
mov eax, ebx
call fcn.00781ae8
movzx eax, ax
mov dword [ebp - 0x18], eax
mov edx, 2
mov eax, ebx
call fcn.00781ae8
movzx eax, ax
mov dword [ebp - 0x20], eax
mov edx, 4
mov eax, ebx
call fcn.00781ae8
movzx eax, ax
mov dword [ebp - 0x1c], eax
mov edx, 6
mov eax, ebx
call fcn.00781ae8
movzx eax, ax
mov dword [ebp - 0x24], eax
mov edx, 0x1c
mov eax, ebx
call fcn.00781ae0
mov dword [ebp - 0x28], eax
mov esi, 0x20
mov eax, dword [ebp - 0x28]
and eax, 0x14
cmp eax, 0x14
jne 0x80af83
mov edx, esi
mov eax, ebx
call fcn.00781ae0
mov edi, eax
dec edi
lea eax, [ebp - 4]
push eax
mov ecx, edi
add ecx, ecx
lea edx, [esi + 4]
mov eax, ebx
call fcn.00781aa8
mov eax, edi
add eax, eax
add eax, 4
add eax, 2
add esi, eax
mov eax, dword [ebp - 0x28]
and eax, 0x80
cmp eax, 0x80
jne 0x80afbc
mov edx, esi
mov eax, ebx
call fcn.00781ae0
mov edi, eax
dec edi
lea eax, [ebp - 8]
push eax
mov ecx, edi
add ecx, ecx
lea edx, [esi + 4]
mov eax, ebx
call fcn.00781aa8
mov eax, edi
add eax, eax
add eax, 4
add eax, 2
add esi, eax
mov byte [ebp - 0x29], 3
mov eax, dword [ebp - 0x28]
and eax, 0x100
cmp eax, 0x100
jne 0x80b002
mov byte [ebp - 0x29], 1
mov edx, esi
mov eax, ebx
call fcn.00781ae0
mov edi, eax
dec edi
lea eax, [ebp - 0xc]
push eax
mov ecx, edi
add ecx, ecx
lea edx, [esi + 4]
mov eax, ebx
call fcn.00781aa8
mov eax, edi
add eax, eax
add eax, 4
add eax, 2
add esi, eax
jmp 0x80b119
mov eax, dword [ebp - 0x28]
and eax, 1
cmp eax, 1
jne 0x80b119
mov edx, esi
mov eax, ebx
call fcn.00781ae0
cmp eax, 0x79eac9e0
jne 0x80b065
add esi, 0x10
mov byte [ebp - 0x29], 0
mov edx, esi
mov eax, ebx
call fcn.00781ae0
mov edi, eax
add esi, 4
test edi, edi
jle 0x80b119
sar edi, 1
jns 0x80b045
adc edi, 0
dec edi
lea eax, [ebp - 0xc]
push eax
mov ecx, edi
add ecx, ecx
mov edx, esi
mov eax, ebx
call fcn.00781aa8
mov eax, edi
add eax, eax
add eax, 2
add esi, eax
jmp 0x80b119
mov edx, esi
mov eax, ebx
call fcn.00781ae0
cmp eax, 0x303
jne 0x80b119
add esi, 0x10
mov edx, esi
mov eax, ebx
call fcn.00781ae8
mov word [ebp - 0x2c], ax
add esi, 2
mov edx, esi
mov eax, ebx
call fcn.00781ae0
mov edi, eax
add esi, 4
test edi, edi
jle 0x80b0bb
lea eax, [ebp - 0x30]
push eax
mov ecx, edi
dec ecx
mov edx, esi
mov eax, ebx
call fcn.00781a84
mov edx, dword [ebp - 0x30]
lea eax, [ebp - 0xc]
call fcn.00407814
add esi, edi
add esi, 0x18
mov edx, esi
mov eax, ebx
call fcn.00781ae0
mov edi, eax
add esi, 4
test edi, edi
jle 0x80b0f3
mov edx, esi
mov eax, ebx
call fcn.00781ae0
mov edi, eax
add esi, 6
test edi, edi
jle 0x80b0f1
lea eax, [ebp - 0xc]
push eax
mov ecx, edi
mov edx, esi
mov eax, ebx
call fcn.00781aa8
add esi, edi
cmp word [ebp - 0x2c], 0
jbe 0x80b115
lea eax, [ebp - 0xc]
mov ecx, dword [ebp - 0xc]
mov edx, 0x80b1d4
call fcn.0040790c
dec word [ebp - 0x2c]
cmp word [ebp - 0x2c], 0
ja 0x80b0fa
mov byte [ebp - 0x29], 2
mov eax, dword [ebp - 0x28]
and eax, 8
cmp eax, 8
jne 0x80b142
mov edx, esi
mov eax, ebx
call fcn.00781ae0
mov edi, eax
dec edi
lea eax, [ebp - 0x10]
push eax
mov ecx, edi
add ecx, ecx
lea edx, [esi + 4]
mov eax, ebx
call fcn.00781aa8
mov eax, dword [ebp - 0x14]
call fcn.0080a90c
mov ebx, eax
movzx eax, byte [ebp - 0x29]
mov byte [ebx + 0x14], al
mov eax, dword [ebp - 0x18]
mov dword [ebx + 4], eax
mov eax, dword [ebp - 0x20]
mov dword [ebx + 8], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebx + 0xc], eax
mov eax, dword [ebp - 0x24]
mov dword [ebx + 0x10], eax
lea eax, [ebx + 0x24]
mov edx, dword [ebp - 0xc]
call fcn.00407698
lea eax, [ebx + 0x28]
mov edx, dword [ebp - 0x10]
call fcn.00407698
lea eax, [ebx + 0x1c]
mov edx, dword [ebp - 4]
call fcn.00407698
lea eax, [ebx + 0x20]
mov edx, dword [ebp - 8]
call fcn.00407698
mov ebx, dword [ebx + 0x30]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x80b1c4
lea eax, [ebp - 0x30]
call fcn.004069c8
lea eax, [ebp - 0x10]
mov edx, 4
call fcn.00407674
ret