Function at 0x4089e0
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff98
push 5
push dword [ebp + 8]
call sub.USER32.DLL_GetWindow
mov dword [ebp + 8], eax
cmp dword [ebp + 8], 0
je 0x408b06
push 0x80
push 0x50ddbc
push dword [ebp + 8]
call sub.USER32.DLL_GetWindowTextA
lea eax, [ebp - 4]
push eax
push dword [ebp + 8]
call sub.USER32.DLL_GetWindowThreadProcessId
push 0xffffffffffffffec
push dword [ebp + 8]
call sub.USER32.DLL_GetWindowLongA
mov dword [ebp - 8], eax
push 0xfffffffffffffff0
push dword [ebp + 8]
call sub.USER32.DLL_GetWindowLongA
mov dword [ebp - 0xc], eax
push 0xfffffffffffffffc
push dword [ebp + 8]
call sub.USER32.DLL_GetWindowLongA
mov dword [ebp - 0x10], eax
push 0xfffffffffffffffc
push dword [ebp + 8]
call sub.USER32.DLL_GetClassLongA
mov dword [ebp - 0x14], eax
push 0xfffffffffffffff2
push dword [ebp + 8]
call sub.USER32.DLL_GetParent
push eax
call sub.USER32.DLL_GetClassLongA
mov dword [ebp - 0x18], eax
push 0xffffffffffffffde
push dword [ebp + 8]
call sub.USER32.DLL_GetParent
push eax
call sub.USER32.DLL_GetClassLongA
mov dword [ebp - 0x1c], eax
push 0xffffffffffffffe6
push dword [ebp + 8]
call sub.USER32.DLL_GetClassLongA
mov dword [ebp - 0x20], eax
push 0x100
push 0
push 0x50df3c
call fcn.004fd9b8
add esp, 0xc
push 0x100
push 0x50df3c
push dword [ebp + 8]
call sub.USER32.DLL_GetClassNameA
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 8
jne 0x408ae6
lea edx, [ebp - 0x58]
push edx
call fcn.00408bf8
pop ecx
mov word [ebp - 0x53], 0xd
mov word [ebp - 0x51], 0xe
mov ecx, dword [ebp + 8]
mov dword [ebp - 0x4e], ecx
movzx eax, word [ebp - 0x51]
push eax
lea edx, [ebp - 0x58]
push edx
push dword [ebp + 8]
push 0x524948
call fcn.00418d64
add esp, 0x10
push dword [ebp + 8]
call fcn.004089e0
pop ecx
push 2
push dword [ebp + 8]
call sub.USER32.DLL_GetWindow
mov dword [ebp + 8], eax
cmp dword [ebp + 8], 0
jne 0x4089fd
push 0x80
push 0x50ddbc
push dword [ebp + 8]
call sub.USER32.DLL_GetWindowTextA
lea ecx, [ebp - 0x28]
push ecx
push dword [ebp + 8]
call sub.USER32.DLL_GetWindowThreadProcessId
push 0xffffffffffffffec
push dword [ebp + 8]
call sub.USER32.DLL_GetWindowLongA
mov dword [ebp - 0x2c], eax
push 0xfffffffffffffff0
push dword [ebp + 8]
call sub.USER32.DLL_GetWindowLongA
mov dword [ebp - 0x30], eax
push 0xfffffffffffffffc
push dword [ebp + 8]
call sub.USER32.DLL_GetWindowLongA
mov dword [ebp - 0x34], eax
push 0xfffffffffffffffc
push dword [ebp + 8]
call sub.USER32.DLL_GetClassLongA
mov dword [ebp - 0x38], eax
push 0xfffffffffffffff2
push dword [ebp + 8]
call sub.USER32.DLL_GetParent
push eax
call sub.USER32.DLL_GetClassLongA
mov dword [ebp - 0x3c], eax
push 0xffffffffffffffde
push dword [ebp + 8]
call sub.USER32.DLL_GetParent
push eax
call sub.USER32.DLL_GetClassLongA
mov dword [ebp - 0x40], eax
push 0xffffffffffffffe6
push dword [ebp + 8]
call sub.USER32.DLL_GetClassLongA
mov dword [ebp - 0x44], eax
push 0x100
push 0
push 0x50df3c
call fcn.004fd9b8
add esp, 0xc
push 0x100
push 0x50df3c
push dword [ebp + 8]
call sub.USER32.DLL_GetClassNameA
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 8
jne 0x408bef
lea eax, [ebp - 0x68]
push eax
call fcn.00408bf8
pop ecx
mov word [ebp - 0x63], 0xd
mov word [ebp - 0x61], 0xe
mov edx, dword [ebp + 8]
mov dword [ebp - 0x5e], edx
movzx ecx, word [ebp - 0x61]
push ecx
lea eax, [ebp - 0x68]
push eax
push dword [ebp + 8]
push 0x524948
call fcn.00418d64
add esp, 0x10
xor eax, eax
mov esp, ebp
pop ebp
ret