Function at 0x4171eb
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffe38
call fcn.00416ec8
lea eax, [ebp - 0xa4]
push eax
push 0
push 0x434
push dword [0x4538c8]
call sub.user32.dll_SendMessageA
mov dword [0x46379a], 0x42
push dword [0x4538b0]
pop dword [0x46379e]
push dword [0x453904]
pop dword [0x4637bc]
mov eax, dword [ebp - 0xa4]
cmp eax, dword [ebp - 0xa0]
je 0x417249
mov eax, 0x101
jmp 0x41728f
push 0
push 0
push 0xba
push dword [0x4538c8]
call sub.user32.dll_SendMessageA
mov ecx, dword [0x45c622]
xor edx, edx
div ecx
or edx, edx
je 0x41726c
inc eax
mov word [0x4637b6], 1
mov word [0x4637b8], ax
mov word [0x4637b2], 1
mov word [0x4637b4], ax
mov eax, 0x106
mov dword [0x4637ae], eax
push 0x46379a
call sub.comdlg32.dll_PrintDlgA
or eax, eax
je 0x4178d0
cmp dword [0x45c65e], 0
je 0x4172e1
push 0xc
lea eax, [ebp - 0x1c8]
push eax
push str.yyyy_MM_dd_
push 0
push 0
push 0
call sub.kernel32.dll_GetDateFormatA
push 0xc
lea eax, [ebp - 0x1bd]
push eax
push str.hh:mm:ss___
push 0
push 8
push 0
call sub.kernel32.dll_GetTimeFormatA
push ebx
push 0x58
push dword [0x4637aa]
call sub.gdi32.dll_GetDeviceCaps
mov ebx, eax
push dword [0x46375a]
push ebx
call fcn.00416f09
mov dword [ebp - 0x60], eax
push dword [0x463772]
push ebx
call fcn.00416f09
mov dword [ebp - 0x68], eax
push dword [0x46377a]
push ebx
call fcn.00416f09
mov dword [ebp - 0x70], eax
push 0x5a
push dword [0x4637aa]
call sub.gdi32.dll_GetDeviceCaps
mov ebx, eax
push dword [0x46375e]
push ebx
call fcn.00416f09
mov dword [ebp - 0x64], eax
push dword [0x463776]
push ebx
call fcn.00416f09
mov dword [ebp - 0x6c], eax
push dword [0x46377e]
push ebx
call fcn.00416f09
mov dword [ebp - 0x74], eax
push 0x3c
lea eax, [ebp - 0x50]
push eax
call sub.kernel32.dll_RtlZeroMemory
push 0x4815d6
lea eax, [ebp - 0x34]
push eax
call fcn.004010a7
push 0x5a
push dword [0x4637aa]
call sub.gdi32.dll_GetDeviceCaps
mov ecx, dword [0x4815ba]
neg ecx
mul ecx
xor edx, edx
mov ecx, 0x48
div ecx
mov dword [ebp - 0x50], eax
mov eax, dword [0x4815ca]
mov dword [ebp - 0x40], eax
lea eax, [ebp - 0x50]
push eax
call sub.gdi32.dll_CreateFontIndirectA
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x14], 0x14
mov dword [ebp - 0x10], 0x44f25f
mov eax, dword [0x4637ae]
and eax, 0x20
or eax, eax
je 0x4173e5
mov eax, 0x454c4946
mov dword [ebp - 0x1a8], eax
mov eax, 0x3a
mov dword [ebp - 0x1a4], eax
lea eax, [ebp - 0x1a8]
mov dword [ebp - 0xc], eax
jmp 0x4173ec
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0
mov dword [ebp - 4], 0
lea eax, [ebp - 0x14]
push eax
push dword [0x4637aa]
call sub.gdi32.dll_StartDocA
mov eax, dword [0x4637ae]
and eax, 1
or eax, eax
je 0x41746a
push dword [ebp - 0xa4]
push 0
push 0x436
push dword [0x4538c8]
call sub.user32.dll_SendMessageA
mov dword [ebp - 0x78], eax
mov ecx, dword [0x45c622]
xor edx, edx
div ecx
mov dword [ebp - 0xa8], eax
push dword [ebp - 0xa0]
push 0
push 0x436
push dword [0x4538c8]
call sub.user32.dll_SendMessageA
sub eax, dword [ebp - 0x78]
inc eax
mov dword [ebp - 0x7c], eax
mov word [0x4637b4], 0xffff
jmp 0x4174a4
movzx eax, word [0x4637b2]
dec eax
mov dword [ebp - 0xa8], eax
mov edx, dword [0x45c622]
mul edx
mov dword [ebp - 0x78], eax
push 0
push 0
push 0xba
push dword [0x4538c8]
call sub.user32.dll_SendMessageA
or eax, eax
je 0x4178a6
inc eax
inc eax
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x98], eax
mov eax, dword [ebp - 0x60]
sub eax, dword [ebp - 0x70]
mov dword [ebp - 0x90], eax
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x94], eax
mov eax, dword [ebp - 0x64]
sub eax, dword [ebp - 0x74]
mov dword [ebp - 0x8c], eax
push dword [ebp - 0x8c]
push dword [ebp - 0x90]
push dword [ebp - 0x94]
push dword [ebp - 0x98]
call sub.gdi32.dll_CreateRectRgn
mov dword [ebp - 0x9c], eax
inc dword [ebp - 0xa8]
mov eax, dword [ebp - 0xa8]
cmp ax, word [0x4637b4]
jbe 0x41750b
jmp 0x4178a6
push dword [0x4637aa]
call sub.gdi32.dll_StartPage
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x5c], eax
push dword [ebp - 0x54]
push dword [0x4637aa]
call sub.gdi32.dll_SelectObject
push dword [ebp - 0x9c]
push dword [0x4637aa]
call sub.gdi32.dll_SelectObject
mov eax, 0x57575757
mov dword [ebp - 0x1a8], eax
lea eax, [ebp - 0x84]
push eax
push 4
lea eax, [ebp - 0x1a8]
push eax
push dword [0x4637aa]
call sub.gdi32.dll_GetTextExtentPoint32A
mov eax, dword [ebp - 0x84]
shr eax, 2
mov ecx, dword [0x44f3a5]
mul ecx
mov dword [ebp - 0x88], eax
cmp dword [0x45c666], 0
je 0x417592
push dword [0x45c67a]
push dword [0x4637aa]
call sub.gdi32.dll_SetTextColor
mov eax, dword [0x45c656]
cmp eax, 3
je 0x4176ad
mov eax, 0x65676150
mov dword [ebp - 0x1a8], eax
mov byte [ebp - 0x1a4], 0x20
lea eax, [ebp - 0x1a3]
push eax
push dword [ebp - 0xa8]
call fcn.004011b7
cmp dword [0x45c65e], 0
je 0x4175f1
lea eax, [ebp - 0x1c8]
push eax
push 0x46ba3e
call fcn.004010a7
lea eax, [ebp - 0x1a8]
push eax
push 0x46ba3e
call fcn.004010c5
jmp 0x417602
lea eax, [ebp - 0x1a8]
push eax
push 0x46ba3e
call fcn.004010a7
push 0x46ba3e
call fcn.004010ef
mov ecx, eax
push eax
lea eax, [ebp - 0x84]
push eax
push ecx
push 0x46ba3e
push dword [0x4637aa]
call sub.gdi32.dll_GetTextExtentPoint32A
mov eax, dword [0x45c656]
or eax, eax
jne 0x417638
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x58], eax
jmp 0x41766c
cmp eax, 1
jne 0x41765a
mov eax, dword [ebp - 0x60]
sub eax, dword [ebp - 0x68]
sub eax, dword [ebp - 0x70]
shr eax, 1
mov ecx, dword [ebp - 0x84]
shr ecx, 1
sub eax, ecx
add eax, dword [ebp - 0x68]
mov dword [ebp - 0x58], eax
jmp 0x41766c
mov eax, dword [ebp - 0x60]
sub eax, dword [ebp - 0x70]
sub eax, dword [ebp - 0x84]
sub eax, 0x48
mov dword [ebp - 0x58], eax
pop ecx
push dword [ebp - 0x58]
lea eax, [ebp - 0x88]
push eax
push 1
push ecx
push 0x46ba3e
push dword [ebp - 0x5c]
push dword [ebp - 0x58]
push dword [0x4637aa]
call sub.user32.dll_TabbedTextOutA
mov eax, dword [0x45c65a]
cmp eax, 3
je 0x4176a2
cmp eax, dword [0x45c656]
jne 0x4176ad
mov eax, dword [ebp - 0x80]
add dword [ebp - 0x5c], eax
shr eax, 1
add dword [ebp - 0x5c], eax
mov eax, dword [0x45c65a]
cmp eax, 3
je 0x4177c1
mov byte [0x46ba3e], 0
cmp dword [0x45c662], 0
je 0x4176f7
cmp dword [0x44f32d], 0
je 0x4176f7
push 0x45c97e
push 0x46ba3e
call fcn.004010a7
push 0x46ba3e
call fcn.004010ef
mov dword [eax + 0x46ba3e], 0x202d20
push 0x100
lea eax, [ebp - 0x1a8]
push eax
push dword [0x4538c4]
call sub.user32.dll_GetWindowTextA
push 0x5c
lea eax, [ebp - 0x1a8]
push eax
call fcn.0040cd1c
inc eax
push eax
push 0x46ba3e
call fcn.004010c5
push 0x46ba3e
call fcn.004010ef
mov ecx, eax
push eax
lea eax, [ebp - 0x84]
push eax
push ecx
push 0x46ba3e
push dword [0x4637aa]
call sub.gdi32.dll_GetTextExtentPoint32A
mov eax, dword [0x45c65a]
or eax, eax
jne 0x41775e
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x58], eax
jmp 0x417792
cmp eax, 1
jne 0x417780
mov eax, dword [ebp - 0x60]
sub eax, dword [ebp - 0x68]
sub eax, dword [ebp - 0x70]
shr eax, 1
mov ecx, dword [ebp - 0x84]
shr ecx, 1
sub eax, ecx
add eax, dword [ebp - 0x68]
mov dword [ebp - 0x58], eax
jmp 0x417792
mov eax, dword [ebp - 0x60]
sub eax, dword [ebp - 0x70]
sub eax, dword [ebp - 0x84]
sub eax, 0x48
mov dword [ebp - 0x58], eax
pop ecx
push dword [ebp - 0x58]
lea eax, [ebp - 0x88]
push eax
push 1
push ecx
push 0x46ba3e
push dword [ebp - 0x5c]
push dword [ebp - 0x58]
push dword [0x4637aa]
call sub.user32.dll_TabbedTextOutA
mov eax, dword [ebp - 0x80]
add dword [ebp - 0x5c], eax
shr eax, 1
add dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x5c]
add eax, dword [ebp - 0x80]
add eax, dword [ebp - 0x80]
cmp eax, dword [ebp - 0x8c]
jae 0x417890
dec dword [ebp - 0x7c]
je 0x417890
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x58], eax
mov word [0x46ba3e], 0x3fff
push 0x46ba3e
push dword [ebp - 0x78]
push 0xc4
push dword [0x4538c8]
call sub.user32.dll_SendMessageA
mov byte [eax + 0x46ba3e], 0
inc dword [ebp - 0x78]
or eax, eax
je 0x417885
cmp dword [0x45c666], 0
je 0x41782e
push dword [0x45c66a]
push dword [0x4637aa]
call sub.gdi32.dll_SetTextColor
push 0x46ba3e
call fcn.004010ef
mov ecx, eax
push dword [ebp - 0x58]
lea eax, [ebp - 0x88]
push eax
push 1
push ecx
push 0x46ba3e
push dword [ebp - 0x5c]
push dword [ebp - 0x58]
push dword [0x4637aa]
call sub.user32.dll_TabbedTextOutA
cmp dword [0x45c666], 0
je 0x417885
push 0x46ba3e
push dword [ebp - 0x88]
push dword [ebp - 0x80]
push dword [ebp - 0x5c]
push dword [ebp - 0x58]
push dword [0x4637aa]
call fcn.00416f45
mov eax, dword [ebp - 0x80]
add dword [ebp - 0x5c], eax
jmp 0x4177c1
push dword [0x4637aa]
call sub.gdi32.dll_EndPage
cmp dword [ebp - 0x7c], 0
je 0x4178a6
jmp 0x4174f1
push dword [0x4637aa]
call sub.gdi32.dll_EndDoc
push dword [0x4637aa]
call sub.gdi32.dll_DeleteDC
push dword [ebp - 0x54]
call sub.gdi32.dll_DeleteObject
push dword [ebp - 0x9c]
call sub.gdi32.dll_DeleteObject
pop ebx
leave
ret