Function at 0x401593
Capabilities:
Get graphical window text

Disassembly:
push edi
push ebx
push ecx
call fcn.004026e1
mov edi, eax
mov ecx, 0x4ab00c
sub ecx, eax
mov eax, dword [esp + 0x14]
cmp byte [esp + 0x10], 1
jne 0x401744
shr ecx, 1
push ecx
push edi
push eax
call sub.user32.dll_GetWindowTextW
or eax, eax
jne 0x40186d
pushal
pushfd
call sub.kernel32.dll_GetLastError
mov edi, eax
push 0
push 0x400
push 0x404caa
push 0
push edi
push 0
push 0x1000
call sub.kernel32.dll_FormatMessageA
popfd
popal
mov eax, 0x404caa
mov dword [0x40677e], esp
pushal
wait
fnsave dword [0x4067fc]
frstor dword [0x4067fc]
movdqu xmmword [0x40689c], xmm0
movdqu xmmword [0x4068ac], xmm1
movdqu xmmword [0x4068bc], xmm2
movdqu xmmword [0x4068cc], xmm3
movdqu xmmword [0x4068dc], xmm4
movdqu xmmword [0x4068ec], xmm5
movdqu xmmword [0x4068fc], xmm6
movdqu xmmword [0x40690c], xmm7
pushfd
and byte [0x40691c], 0
pushal
mov esi, eax
cmp esi, 0x7f
jle 0x401659
cmp esi, 0xffffff80
jg 0x40168a
push 0x40417a
push esi
call fcn.00401880
push 0x40417a
push dword [0x4043cf]
call sub.kernel32.dll_lstrcatA
push dword [0x4043a3]
push dword [0x4043cf]
call sub.kernel32.dll_lstrcatA
mov esi, str._not_a_pointer_
pushal
push str.eax_
push dword [0x4043cf]
call sub.kernel32.dll_lstrcatA
push dword [0x4043a3]
push dword [0x4043cf]
call sub.kernel32.dll_lstrcatA
popal
push esi
push dword [0x4043cf]
call sub.kernel32.dll_lstrcatA
push dword [0x40439b]
push dword [0x4043cf]
call sub.kernel32.dll_lstrcatA
popal
cmp dword [0x4043bf], 1
jne 0x4016f7
mov dword [0x4043bf], 2
push 1
push str.Mist
push dword [0x4043cf]
push 0
call sub.user32.dll_MessageBoxA
mov dword [0x4043bf], eax
popfd
frstor dword [0x4067fc]
movdqu xmm0, xmmword [0x40689c]
movdqu xmm1, xmmword [0x4068ac]
movdqu xmm2, xmmword [0x4068bc]
movdqu xmm3, xmmword [0x4068cc]
movdqu xmm4, xmmword [0x4068dc]
movdqu xmm5, xmmword [0x4068ec]
movdqu xmm6, xmmword [0x4068fc]
movdqu xmm7, xmmword [0x40690c]
popal
jmp 0x40186d
mov dword [0x40677e], esp
pushal
wait
fnsave dword [0x4067fc]
frstor dword [0x4067fc]
movdqu xmmword [0x40689c], xmm0
movdqu xmmword [0x4068ac], xmm1
movdqu xmmword [0x4068bc], xmm2
movdqu xmmword [0x4068cc], xmm3
movdqu xmmword [0x4068dc], xmm4
movdqu xmmword [0x4068ec], xmm5
movdqu xmmword [0x4068fc], xmm6
movdqu xmmword [0x40690c], xmm7
pushfd
and byte [0x40691c], 0
pushal
pushal
push 0x40419a
push dword [0x4043cf]
call sub.kernel32.dll_lstrcatA
push dword [0x4043a3]
push dword [0x4043cf]
call sub.kernel32.dll_lstrcatA
popal
push 0x40419e
push eax
call fcn.00401880
push 0x40419e
push dword [0x4043cf]
call sub.kernel32.dll_lstrcatA
push dword [0x40439b]
push dword [0x4043cf]
call sub.kernel32.dll_lstrcatA
popal
cmp dword [0x4043bf], 1
jne 0x40181d
mov dword [0x4043bf], 2
push 1
push str.Ansi
push dword [0x4043cf]
push 0
call sub.user32.dll_MessageBoxA
mov dword [0x4043bf], eax
popfd
frstor dword [0x4067fc]
movdqu xmm0, xmmword [0x40689c]
movdqu xmm1, xmmword [0x4068ac]
movdqu xmm2, xmmword [0x4068bc]
movdqu xmm3, xmmword [0x4068cc]
movdqu xmm4, xmmword [0x4068dc]
movdqu xmm5, xmmword [0x4068ec]
movdqu xmm6, xmmword [0x4068fc]
movdqu xmm7, xmmword [0x40690c]
popal
push ecx
push edi
push eax
call sub.user32.dll_GetWindowTextA
lea eax, [eax + edi]
push 1
push eax
call fcn.004026f3
pop ecx
pop ebx
pop edi
ret 8