Function at 0x486020
Capabilities:
Enumerate gui resources
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4b6cb0
mov eax, dword fs:[0]
push eax
mov eax, 0x1047c
mov dword fs:[0], esp
call fcn.004b5610
push ebx
mov ebx, edx
mov edx, dword [ebp + 8]
push esi
mov esi, dword [ebp + 0xc]
push edi
movzx eax, word [ebx]
mov edi, ecx
mov ecx, dword [ebp + 0x10]
cmp eax, 0x41
je 0x486063
cmp eax, 0x61
jne 0x4860e6
cmp word [ebx + 2], 0
jne 0x4860e6
cmp word [edx], 0
jne 0x4860e6
cmp word [esi], 0
jne 0x4860e6
cmp word [ecx], 0
jne 0x4860e6
call dword [sym.imp.USER32.dll_GetForegroundWindow]
mov esi, eax
test esi, esi
je 0x4860be
cmp byte [edi + 0x93], 0
jne 0x4860be
push esi
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x4860bc
push 4
lea eax, [ebp - 0x10]
mov dword [ebp - 0x10], 0
push eax
push 0xe
push esi
call dword [sym.imp.dwmapi.dll_DwmGetWindowAttribute]
test eax, eax
js 0x4860be
cmp dword [ebp - 0x10], 0
je 0x4860be
xor esi, esi
cmp byte [ebp + 0x18], 0
je 0x48632b
test esi, esi
je 0x48632b
mov dword [edi + 0x20], esi
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
test ax, ax
jne 0x486112
cmp word [edx], ax
jne 0x486112
cmp word [esi], ax
jne 0x486112
cmp word [ecx], ax
jne 0x486112
mov ecx, edi
call fcn.00486370
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
xorps xmm0, xmm0
mov dword [ebp - 0x10488], 0
mov dword [ebp - 0x10480], 0
mov dword [ebp - 0x1047c], 0
mov dword [ebp - 0x1046c], 0x4cdea8
mov byte [ebp - 0x1044b], 0
movups xmmword [ebp - 0x10448], xmm0
mov dword [ebp - 0x10438], 0
mov dword [ebp - 0x10434], 0
mov dword [ebp - 0x10428], 0
mov dword [ebp - 0x10424], 0
push ecx
push esi
push edx
push ebx
lea eax, [edi + 0x58]
mov dword [ebp - 4], 0
push eax
lea ecx, [ebp - 0x10488]
call fcn.00486e70
test eax, eax
je 0x48631b
test byte [ebp - 0x10488], 2
mov al, byte [ebp + 0x14]
mov byte [ebp - 0x1044b], al
mov dword [ebp - 0x1043c], 0
mov dword [ebp - 0x10438], 0
je 0x48633e
mov esi, dword [ebp - 0x1045c]
cmp esi, 0xffff
je 0x486235
push esi
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x48631b
cmp byte [edi + 0x93], 0
mov esi, dword [ebp - 0x1045c]
jne 0x486235
push esi
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x486216
push 4
lea eax, [ebp - 0x10]
mov dword [ebp - 0x10], 0
push eax
push 0xe
push esi
call dword [sym.imp.dwmapi.dll_DwmGetWindowAttribute]
test eax, eax
js 0x48622f
cmp dword [ebp - 0x10], 0
je 0x48622f
push 0xfffffffffffffff0
push dword [ebp - 0x1045c]
call dword [sym.imp.USER32.dll_GetWindowLongW]
test eax, 0x40000000
je 0x48631b
mov esi, dword [ebp - 0x1045c]
cmp dword [ebp - 0x10424], esi
je 0x48630a
mov dword [ebp - 0x10424], esi
test esi, esi
je 0x48630a
cmp dword [ebp - 0x10488], 0
je 0x48630a
test byte [ebp - 0x10488], 1
jne 0x486271
mov eax, dword [ebp - 0x1046c]
cmp word [eax], 0
je 0x48628f
push 0x7fff
lea eax, [ebp - 0x1041c]
push eax
push esi
call dword [sym.imp.USER32.dll_GetWindowTextW]
test eax, eax
jne 0x48628f
mov word [ebp - 0x1041c], ax
test byte [ebp - 0x10488], 4
mov esi, dword [sym.imp.USER32.dll_GetWindowThreadProcessId]
je 0x4862ad
lea eax, [ebp - 0x10420]
push eax
push dword [ebp - 0x10424]
call esi
test byte [ebp - 0x10488], 0x20
je 0x4862e9
lea eax, [ebp - 0x10]
push eax
push dword [ebp - 0x10424]
call esi
test eax, eax
je 0x4862e9
push dword [ebp - 0x1044c]
lea edx, [ebp - 0x21c]
push ecx
mov ecx, dword [ebp - 0x10]
call fcn.0042905a
add esp, 8
test eax, eax
jne 0x4862e9
mov word [ebp - 0x21c], ax
test byte [ebp - 0x10488], 8
je 0x48630a
push 0x101
lea eax, [ebp - 0x41e]
push eax
push dword [ebp - 0x10424]
call dword [sym.imp.USER32.dll_GetClassNameW]
push 0
lea ecx, [ebp - 0x10488]
call fcn.00487400
test eax, eax
jne 0x486350
xor esi, esi
push dword [ebp - 0x10480]
call fcn.0049ee02
add esp, 4
mov ecx, dword [ebp - 0xc]
mov eax, esi
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x10488]
push eax
push 0x486420
call dword [sym.imp.USER32.dll_EnumWindows]
cmp byte [ebp + 0x18], 0
mov esi, dword [ebp - 0x10444]
je 0x48631d
test esi, esi
je 0x48631d
mov dword [edi + 0x20], esi
jmp 0x48631d