Function at 0x4050a0
Capabilities:
Enumerate gui resources

Disassembly:
push 0x30
mov eax, 0x40f54d
call fcn.0040125e
xor eax, eax
mov dword [ebp - 0x18], eax
mov ebx, dword [ebp + 8]
cmp dword [ebx + 0x44], eax
je 0x4078e4
lea esi, [ebx + 0x48]
cmp dword [esi], eax
jne 0x4078e4
mov dword [ebp - 4], eax
mov ecx, ebx
call fcn.0040363a
push dword [ebx + 0x1c]
lea edi, [ebp - 0x20]
call fcn.004018db
mov dword [ebp - 0x28], eax
mov byte [ebp - 4], 1
push 0x402258
lea edi, [ebp - 0x1c]
call fcn.004018db
mov ecx, eax
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x28]
cmp dword [eax], 0
je 0x40527f
mov eax, dword [eax]
mov edi, dword [eax]
cmp dword [ecx], 0
je 0x405286
mov eax, dword [ecx]
mov edx, dword [eax]
mov eax, dword [ebx + 0x44]
mov ecx, dword [eax]
push esi
push 0
push 0x30
push edi
push edx
push eax
call dword [ecx + 0x50]
mov edi, eax
mov byte [ebp - 4], 1
mov esi, dword [ebp - 0x1c]
test esi, esi
je 0x40513a
call fcn.00401019
and dword [ebp - 0x1c], 0
mov byte [ebp - 4], 0
mov esi, dword [ebp - 0x20]
test esi, esi
je 0x40514e
call fcn.00401019
and dword [ebp - 0x20], 0
test edi, edi
js 0x407887
push dword [ebx + 0x50]
mov eax, dword [ebx + 0x48]
call fcn.004052f7
test eax, eax
js 0x40788f
push 0x40529c
lea edi, [ebp - 0x24]
call fcn.004018db
mov byte [ebp - 4], 3
cmp dword [eax], 0
je 0x40528d
mov eax, dword [eax]
mov edx, dword [eax]
mov eax, dword [ebx + 0x44]
mov ecx, dword [eax]
xor edi, edi
push edi
lea esi, [ebp - 0x18]
push esi
push edi
push edi
push edx
push eax
call dword [ecx + 0x18]
mov edi, eax
mov byte [ebp - 4], 0
mov esi, dword [ebp - 0x24]
test esi, esi
je 0x4051b0
call fcn.00401019
and dword [ebp - 0x24], 0
test edi, edi
js 0x407892
push 0x402260
lea edi, [ebp - 0x28]
call fcn.004018db
mov byte [ebp - 4], 4
cmp dword [eax], 0
je 0x405294
mov eax, dword [eax]
mov esi, dword [eax]
mov ecx, dword [ebp - 0x18]
mov edx, dword [ecx]
push 0
lea eax, [ebx + 0x4c]
push eax
push 0
push esi
push ecx
call dword [edx + 0x4c]
mov edi, eax
mov byte [ebp - 4], 0
mov esi, dword [ebp - 0x28]
test esi, esi
je 0x4051fe
call fcn.00401019
and dword [ebp - 0x28], 0
test edi, edi
js 0x407892
mov ecx, dword [ebp - 0x18]
test ecx, ecx
je 0x405217
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
and dword [ebp - 0x18], 0
mov ebx, dword [ebx + 0x30]
call fcn.00401389
mov esi, dword [ebp + 8]
cmp dword [esi + 0xac], 1
jne 0x405269
xor eax, eax
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], eax
mov eax, dword [esi + 0x30]
mov dword [ebp - 0x30], eax
lea eax, [ebp - 0x3c]
push eax
push 0x402285
call dword [sym.imp.USER32.dll_EnumWindowStationsW]
mov edi, dword [sym.imp.msvcrt.dll_free]
cmp dword [ebp - 0x3c], 0
je 0x40525d
push dword [ebp - 0x3c]
call edi
pop ecx
cmp dword [ebp - 0x38], 0
je 0x405269
push dword [ebp - 0x38]
call edi
pop ecx
mov ecx, esi
call fcn.004052bd
or dword [ebp - 4], 0xffffffff
xor eax, eax
inc eax
call fcn.00401923
ret 4
xor edi, edi
jmp 0x405107
xor edx, edx
jmp 0x405114
xor edx, edx
jmp 0x405187
xor esi, esi
jmp 0x4051d6
push edi
call fcn.0040703d
jmp 0x4078f4
push eax
jmp 0x407888
mov eax, edi
call fcn.0040c71a
mov ecx, dword [ebp - 0x18]
test ecx, ecx
je 0x4078aa
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
and dword [ebp - 0x18], 0
mov eax, dword [ebp - 0x2c]
push dword [eax + 4]
call fcn.0040703d
or dword [ebp - 4], 0xffffffff
mov eax, 0x4078f4
ret
push 0x800300fd
call dword [sym.imp.KERNEL32.dll_SetLastError]
call fcn.0040355c
xor eax, eax
jmp 0x405277