Function at 0x40d58c
Capabilities:
Enumerate gui resources

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x5d
push 0
push 0
dec ecx
jne 0x40d594
push ecx
push ebx
push esi
push edi
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
call fcn.0040418c
xor eax, eax
push ebp
push 0x40dafb
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 8]
mov dword [0x419728], eax
lea eax, [ebp - 0xc]
push eax
xor ecx, ecx
mov edx, 0x40db14
mov eax, dword [ebp - 4]
call fcn.004099a0
lea eax, [ebp - 0x10]
push eax
mov ecx, 1
mov edx, 0x40db14
mov eax, dword [ebp - 4]
call fcn.004099a0
lea eax, [ebp - 0x14]
push eax
mov ecx, 2
mov edx, 0x40db14
mov eax, dword [ebp - 4]
call fcn.004099a0
lea eax, [ebp - 0x18]
push eax
mov ecx, 3
mov edx, 0x40db14
mov eax, dword [ebp - 4]
call fcn.004099a0
mov edx, 0x40db14
mov eax, dword [ebp - 4]
call fcn.00408be8
cmp eax, 2
jl case.0x40d63f.10
mov eax, dword [ebp - 0xc]
call fcn.00408420
cmp eax, 0xb
ja case.0x40d63f.10
jmp dword [eax*4 + 0x40d646]
push 0x40db20
lea edx, [ebp - 0x2c0]
mov eax, dword [ebp - 8]
call fcn.004069fc
push dword [ebp - 0x2c0]
push 0x40db14
lea eax, [ebp - 0x2bc]
mov edx, 3
call fcn.0040405c
mov edx, dword [ebp - 0x2bc]
mov eax, dword [ebp - 8]
call fcn.0040bf24
jmp case.0x40d63f.10
mov eax, 0x419764
mov edx, dword [ebp - 0x10]
call fcn.00403e6c
mov eax, 0x419768
mov edx, dword [ebp - 0x14]
call fcn.00403e6c
mov eax, 0x41976c
mov edx, 0x40db2c
call fcn.00403e6c
push 0x64
call sub.user32.dll_EnumWindows
push 0
push 0
push 0x419778
mov ecx, 0x40bdc8
xor edx, edx
xor eax, eax
call fcn.00403dd4
jmp case.0x40d63f.10
mov eax, dword [ebp - 0x10]
call fcn.00408654
test al, al
je case.0x40d63f.10
xor eax, eax
push ebp
push 0x40d761
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x10]
call fcn.0040876c
push 0x40db3c
push dword [ebp - 0x10]
push 0x40db14
lea eax, [ebp - 0x2c4]
mov edx, 3
call fcn.0040405c
mov edx, dword [ebp - 0x2c4]
mov eax, dword [ebp - 8]
call fcn.0040bf24
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp case.0x40d63f.10
push 0x40db58
lea edx, [ebp - 0x2cc]
mov eax, dword [ebp - 0x10]
call fcn.00407598
push dword [ebp - 0x2cc]
push 0x40db14
lea eax, [ebp - 0x2c8]
mov edx, 3
call fcn.0040405c
mov edx, dword [ebp - 0x2c8]
mov eax, dword [ebp - 8]
call fcn.0040bf24
jmp case.0x40d63f.10
push 0x40db58
lea edx, [ebp - 0x2d4]
mov eax, dword [ebp - 0x10]
call fcn.00408f48
push dword [ebp - 0x2d4]
push 0x40db14
lea eax, [ebp - 0x2d0]
mov edx, 3
call fcn.0040405c
mov edx, dword [ebp - 0x2d0]
mov eax, dword [ebp - 8]
call fcn.0040bf24
jmp case.0x40d63f.10
xor eax, eax
push ebp
push 0x40d817
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x10]
call fcn.00402658
call fcn.004025b8
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x40d821
call fcn.00402638
test eax, eax
je 0x40d85a
push 0x40db64
push dword [ebp - 0x10]
push 0x40db14
lea eax, [ebp - 0x2d8]
mov edx, 3
call fcn.0040405c
mov edx, dword [ebp - 0x2d8]
mov eax, dword [ebp - 8]
call fcn.0040bf24
jmp case.0x40d63f.10
push 0x40db88
push dword [ebp - 0x10]
push 0x40db14
lea eax, [ebp - 0x2dc]
mov edx, 3
call fcn.0040405c
mov edx, dword [ebp - 0x2dc]
mov eax, dword [ebp - 8]
call fcn.0040bf24
jmp case.0x40d63f.10
mov edx, dword [ebp - 0x10]
lea eax, [ebp - 0x16c]
call fcn.00402b54
xor eax, eax
push ebp
push 0x40d8fa
push dword fs:[eax]
mov dword fs:[eax], esp
mov edx, dword [ebp - 0x14]
lea eax, [ebp - 0x16c]
call fcn.004030a0
call fcn.004025b8
call fcn.00402638
test eax, eax
jne 0x40d8ed
push 0x40dba0
push dword [ebp - 0x14]
push 0x40db14
lea eax, [ebp - 0x2e0]
mov edx, 3
call fcn.0040405c
mov edx, dword [ebp - 0x2e0]
mov eax, dword [ebp - 8]
call fcn.0040bf24
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp case.0x40d63f.10
mov eax, 0x419760
mov edx, dword [ebp - 0x10]
call fcn.00403e6c
mov eax, 0x419774
mov edx, dword [ebp - 0x10]
call fcn.00403e6c
mov eax, 0x419754
mov edx, dword [ebp - 0x14]
call fcn.00403e6c
mov eax, 0x419770
mov edx, dword [ebp - 0x18]
call fcn.00403e6c
mov edx, dword [ebp - 0x14]
lea eax, [ebp - 0x2b8]
call fcn.00402b54
mov edx, 0x80
lea eax, [ebp - 0x2b8]
call fcn.00403204
call fcn.004025b8
xor eax, eax
push ebp
push 0x40d9ca
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0x2b8]
call fcn.00402dfc
call fcn.004025b8
mov dword [ebp - 0x20], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x40d9d1
lea eax, [ebp - 0x2b8]
call fcn.00402cc4
call fcn.004025b8
ret
mov eax, dword [ebp - 0x10]
mov edx, 0x40dbec
call fcn.004040e8
jne 0x40da53
mov byte [0x41975c], 0
mov eax, dword [ebp - 0x10]
mov edx, 0x40dbf8
call fcn.004040e8
jne case.0x40d63f.10
mov byte [0x41975c], 1
jmp case.0x40d63f.10
mov eax, 0x419760
mov edx, dword [ebp - 0x10]
call fcn.00403e6c
mov eax, 0x419774
mov edx, dword [ebp - 0x10]
call fcn.00403e6c
mov eax, 0x419758
mov edx, dword [ebp - 0x14]
call fcn.00403e6c
mov eax, 0x419770
mov edx, dword [ebp - 0x18]
call fcn.00403e6c
lea eax, [ebp - 0x1c]
push eax
push 0
push 0
push 0x40d480
push 0
push 0
call fcn.00404cc0
test eax, eax
je case.0x40d63f.10
push eax
call fcn.00404ca0
jmp case.0x40d63f.10
mov byte [0x418210], 1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x40db02
lea eax, [ebp - 0x2ec]
mov edx, 0xd
call fcn.00403e3c
lea eax, [ebp - 0x18]
mov edx, 4
call fcn.00403e3c
lea eax, [ebp - 4]
call fcn.00403e18
ret