Function at 0x40af80
Capabilities:
Enumerate gui resources

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x447da8
mov eax, dword fs:[0]
push eax
sub esp, 0x3c
mov eax, dword [0x45b480]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
xor edi, edi
mov ebx, ecx
mov dword [ebp - 0x14], ebx
mov esi, edx
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x30], edi
mov dword [ebp - 4], edi
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x20], edi
mov eax, dword [ebp + 0xc]
lea edx, [ebp - 0x44]
mov byte [ebp - 4], 1
push edx
lea ecx, [ebp - 0x28]
push 0x40c3d0
mov dword [ebp - 0x40], edi
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x3c], ecx
call dword [sym.imp.USER32.dll_EnumWindows]
lea ecx, [ebp - 0x28]
call fcn.0040c550
mov ecx, dword [ebp - 0x24]
sub ecx, dword [ebp - 0x28]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x40b029
mov eax, dword [ebp - 0x28]
add eax, 4
lea edi, [ebp - 0x38]
call fcn.0040cca0
mov ecx, dword [ebp - 0x28]
lea edi, [esi + 0x30]
call fcn.0040ca20
xor edi, edi
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x28]
cmp eax, edi
je 0x40b04f
mov ecx, dword [ebp - 0x18]
mov ebx, dword [ebp - 0x24]
push ecx
call fcn.00404d00
mov edx, dword [ebp - 0x28]
push edx
call fcn.0042cd06
mov ebx, dword [ebp - 0x14]
add esp, 8
mov edi, dword [sym.imp.USER32.dll_GetSystemMetrics]
push 0x4e
mov dword [esi], 1
call edi
push 0x4f
mov dword [ebp - 0x14], eax
call edi
push 0x4c
mov dword [ebp - 0x18], eax
call edi
push 0x4d
mov dword [esi + 0x10], eax
call edi
mov ecx, dword [esi + 0x10]
add ecx, dword [ebp - 0x14]
mov dword [esi + 0x14], eax
add eax, dword [ebp - 0x18]
mov dword [esi + 0x18], ecx
mov dword [esi + 0x1c], eax
lea eax, [esi + 8]
push eax
call fcn.0042cb21
add esp, 4
add esi, 0x20
push esi
push 0
push 0xa
push 1
push 0
push ecx
mov ecx, dword [0x460f4c]
mov esi, esp
mov dword [ebp - 0x18], esp
mov dword [esi], ecx
test ebx, ebx
je case.0x40b132.0
mov edx, ebx
shr edx, 0x10
test edx, edx
jne 0x40b0fd
movzx eax, bx
push eax
mov ebx, esi
call fcn.00403390
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x14], esp
push ecx
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 4
call fcn.0040cad0
mov esi, dword [ebp + 8]
mov byte [ebp - 4], 0
call fcn.0040b1f0
test eax, eax
mov eax, dword [ebp - 0x38]
jne 0x40b157
test eax, eax
je 0x40b0f9
push eax
call fcn.0042cd06
add esp, 4
xor eax, eax
jmp 0x40b169
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov edi, eax
test edi, edi
je case.0x40b132.0
mov ecx, edi
mov edx, esi
call fcn.004035f0
test eax, eax
je case.0x40b132.0
mov esi, dword [esi]
push edi
push ebx
inc edi
push edi
push esi
call fcn.0042df4e
add esp, 0x10
cmp eax, 0x50
ja case.0x40b132.1
movzx eax, byte [eax + 0x40b198]
jmp dword [eax*4 + 0x40b188]
push 0x8007000e
call fcn.004024e0
push 0x80070057
call fcn.004024e0
push 0x80004005
call fcn.004024e0
test eax, eax
je 0x40b164
push eax
call fcn.0042cd06
add esp, 4
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0042cb12
mov esp, ebp
pop ebp
ret 8