Function at 0x40b6d0
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x42d978
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x14
push ebx
mov ebx, ecx
push esi
push edi
lea esi, [ebx + 0x24]
push 0x43b670
mov ecx, esi
call fcn.00427631
push 2
mov ecx, esi
call fcn.0042771c
push 1
mov ecx, esi
call fcn.0042771c
push 0x31
mov ecx, esi
call fcn.0042771c
push 0x30
mov ecx, esi
call fcn.0042771c
mov eax, dword [esp + 0x30]
push eax
call fcn.0041e975
xor ecx, ecx
push eax
mov dword [esp + 0x14], ecx
lea edx, [esp + 0x14]
mov dword [esp + 0x18], ecx
push 0x438468
mov dword [esp + 0x20], ecx
push edx
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], ecx
call fcn.0041e3e3
add esp, 0x10
lea eax, [esp + 0xc]
mov ecx, esi
push eax
call fcn.004276f5
mov ecx, dword [esp + 0x34]
push ecx
call fcn.0041e975
xor edx, edx
push eax
mov dword [esp + 0x14], edx
lea eax, [esp + 0x14]
mov dword [esp + 0x18], edx
push 0x438468
mov dword [esp + 0x20], edx
push eax
mov dword [esp + 0x28], edx
mov dword [esp + 0x2c], edx
call fcn.0041e3e3
add esp, 0x10
lea ecx, [esp + 0xc]
push ecx
mov ecx, esi
call fcn.004276f5
mov edx, dword [esp + 0x38]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x40b7c1
push edx
mov ecx, esi
call fcn.004276f5
push 0x7c
mov ecx, esi
call fcn.0042771c
mov edx, dword [esp + 0x3c]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x40b7e4
push edx
mov ecx, esi
call fcn.004276f5
push 0x7c
mov ecx, esi
call fcn.0042771c
mov edi, dword [esp + 0x40]
or ecx, 0xffffffff
xor eax, eax
push ebp
repne scasb al, byte es:[edi]
mov ebp, dword [esp + 0x48]
not ecx
dec ecx
je 0x40b80a
push ebp
mov ecx, esi
call fcn.004276f5
push 0x7c
mov ecx, esi
call fcn.0042771c
mov edi, ebp
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x40b829
push ebp
mov ecx, esi
call fcn.004276f5
push 0x7c
mov ecx, esi
call fcn.0042771c
mov edx, dword [esp + 0x4c]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
pop ebp
je 0x40b84d
push edx
mov ecx, esi
call fcn.004276f5
push 0x7c
mov ecx, esi
call fcn.0042771c
mov edx, dword [esp + 0x4c]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x40b870
push edx
mov ecx, esi
call fcn.004276f5
push 0x7c
mov ecx, esi
call fcn.0042771c
mov edx, dword [esp + 0x50]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x40b893
push edx
mov ecx, esi
call fcn.004276f5
push 0x7c
mov ecx, esi
call fcn.0042771c
mov edx, dword [esp + 0x54]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x40b8b6
push edx
mov ecx, esi
call fcn.004276f5
push 0x7c
mov ecx, esi
call fcn.0042771c
mov edx, dword [esp + 0x58]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x40b8d9
push edx
mov ecx, esi
call fcn.004276f5
push 0x7c
mov ecx, esi
call fcn.0042771c
mov edx, dword [esp + 0x5c]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x40b8fc
push edx
mov ecx, esi
call fcn.004276f5
push 0x7c
mov ecx, esi
call fcn.0042771c
push 3
mov ecx, esi
call fcn.0042771c
mov edx, dword [esi]
lea ecx, [esp + 0x30]
mov edi, dword [edx - 8]
lea eax, [edi - 1]
push eax
push 1
push ecx
mov ecx, esi
call fcn.00426953
mov eax, dword [eax]
dec edi
push edi
push eax
mov ecx, ebx
mov dword [esp + 0x30], 0
call fcn.00406e70
push eax
mov ecx, esi
call fcn.0042771c
lea ecx, [esp + 0x30]
mov dword [esp + 0x28], 0xffffffff
call fcn.004274f4
mov eax, dword [esi]
mov ecx, dword [esp + 0x20]
pop edi
mov dword [ebx + 0x1c], 2
pop esi
pop ebx
mov dword fs:[0], ecx
add esp, 0x20
ret 0x30