Function at 0x427cd8
Capabilities:
Enumerate gui resources

Disassembly:
push ebx
push esi
push edi
push ebp
add esp, 0xffffffe0
mov ebx, ecx
mov ebp, edx
mov esi, eax
cmp byte [esi + 0x144], 0
je 0x427d0d
cmp byte [esi + 0x17c], 0
je 0x427d0d
cmp dword [esi + 0x148], 0
je 0x427d0d
mov eax, dword [esi + 0x148]
mov edx, ebp
mov ecx, dword [eax]
call dword [ecx + 0x20]
mov eax, dword [esi + 0x134]
test eax, eax
je 0x427dfa
xor edi, edi
test ebx, ebx
je 0x427d30
mov edx, ebx
call fcn.0040f8ec
mov edi, eax
test edi, edi
jge 0x427d30
xor edi, edi
mov eax, dword [esi + 0x134]
mov eax, dword [eax + 8]
mov dword [esp], eax
cmp edi, dword [esp]
jge 0x427dfa
mov eax, dword [esi + 0x134]
mov edx, edi
call fcn.0040f890
mov ebx, eax
cmp byte [ebx + 0x47], 0
jne 0x427d6e
test byte [ebx + 0x20], 0x10
je 0x427df0
test byte [ebx + 0x41], 4
jne 0x427df0
mov eax, dword [ebx + 0x34]
add eax, dword [ebx + 0x3c]
push eax
lea eax, [esp + 0x14]
push eax
mov ecx, dword [ebx + 0x30]
add ecx, dword [ebx + 0x38]
mov edx, dword [ebx + 0x34]
mov eax, dword [ebx + 0x30]
call fcn.0040ee18
lea eax, [esp + 0x10]
push eax
push ebp
call sub.user32.dll_GetClientRect
test eax, eax
je 0x427df0
test byte [esi + 0x44], 0x80
je 0x427da6
or word [ebx + 0x44], 0x80
push ebp
call sub.user32.dll_GetCursorPos
mov dword [esp + 4], eax
mov ecx, dword [ebx + 0x34]
mov edx, dword [ebx + 0x30]
mov eax, ebp
call fcn.004228f4
mov eax, dword [ebx + 0x3c]
push eax
mov eax, dword [ebx + 0x38]
push eax
push 0
push 0
push ebp
call sub.user32.dll_EnumWindows
push 0
mov ecx, ebp
mov edx, 0xf
mov eax, ebx
call fcn.00424da4
mov eax, dword [esp + 4]
push eax
push ebp
call sub.user32.dll_GetCursor
and word [ebx + 0x44], 0xff7f
inc edi
cmp edi, dword [esp]
jl 0x427d45
mov eax, dword [esi + 0x180]
test eax, eax
je 0x427f00
mov eax, dword [eax + 8]
dec eax
test eax, eax
jl 0x427f00
inc eax
mov dword [esp + 0xc], eax
xor edi, edi
mov eax, dword [esi + 0x180]
mov edx, edi
call fcn.0040f890
mov ebx, eax
cmp byte [ebx + 0x138], 0
je 0x427ef5
test byte [ebx + 0x40], 0x10
je 0x427ef5
cmp byte [ebx + 0x47], 0
jne 0x427e5b
test byte [ebx + 0x20], 0x10
je 0x427ef5
test byte [ebx + 0x41], 4
jne 0x427ef5
mov eax, 0x80000010
call fcn.00416938
push eax
call sub.user32.dll_CreatePopupMenu
mov dword [esp + 8], eax
mov eax, dword [esp + 8]
push eax
mov eax, dword [ebx + 0x34]
add eax, dword [ebx + 0x3c]
push eax
lea eax, [esp + 0x18]
push eax
mov ecx, dword [ebx + 0x30]
add ecx, dword [ebx + 0x38]
mov edx, dword [ebx + 0x34]
dec edx
mov eax, dword [ebx + 0x30]
dec eax
call fcn.0040ee18
lea eax, [esp + 0x14]
push eax
push ebp
call fcn.004069f8
mov eax, dword [esp + 8]
push eax
call sub.user32.dll_DefFrameProcA
mov eax, 0x80000014
call fcn.00416938
push eax
call sub.user32.dll_CreatePopupMenu
mov dword [esp + 8], eax
mov eax, dword [esp + 8]
push eax
mov eax, dword [ebx + 0x34]
add eax, dword [ebx + 0x3c]
inc eax
push eax
lea eax, [esp + 0x18]
push eax
mov ecx, dword [ebx + 0x30]
add ecx, dword [ebx + 0x38]
inc ecx
mov edx, dword [ebx + 0x34]
mov eax, dword [ebx + 0x30]
call fcn.0040ee18
lea eax, [esp + 0x14]
push eax
push ebp
call fcn.004069f8
mov eax, dword [esp + 8]
push eax
call sub.user32.dll_DefFrameProcA
inc edi
dec dword [esp + 0xc]
jne 0x427e1b
add esp, 0x20
pop ebp
pop edi
pop esi
pop ebx
ret