Function at 0x40e1e3
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x260
mov eax, dword [0x44c5a0]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [ebp + 8]
xor eax, eax
push esi
push edi
mov edi, dword [sym.imp.USER32.dll_GetWindowRect]
mov dword [ebp - 0x214], eax
mov dword [ebp - 0x210], eax
mov dword [ebp - 0x20c], eax
mov dword [ebp - 0x208], eax
lea eax, [ebp - 0x214]
push eax
push dword [ebx + 0x14]
mov dword [ebp - 0x24c], ecx
mov dword [ebp - 0x248], ebx
call edi
mov eax, dword [ebp - 0x20c]
sub eax, dword [ebp - 0x214]
push 6
push dword [ebx + 0x18]
mov dword [ebp - 0x250], eax
mov eax, dword [ebp - 0x208]
sub eax, dword [ebp - 0x210]
mov dword [ebp - 0x254], eax
call dword [sym.imp.GDI32.dll_GetCurrentObject]
push dword [ebx + 0x18]
mov esi, eax
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
push dword [ebp - 0x254]
mov ebx, eax
push dword [ebp - 0x250]
mov eax, dword [ebp - 0x248]
push dword [eax + 0x18]
call dword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
push eax
push ebx
mov dword [ebp - 0x25c], eax
call dword [sym.imp.GDI32.dll_SelectObject]
mov dword [ebp - 0x258], eax
mov eax, dword [ebp - 0x24c]
cmp dword [eax + 0x38], 0
cmovne esi, dword [eax + 0x38]
push esi
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
mov dword [ebp - 0x260], eax
lea eax, [ebp - 0x224]
push eax
mov eax, dword [ebp - 0x248]
push dword [eax + 0x14]
call edi
mov esi, dword [ebp - 0x24c]
lea eax, [ebp - 0x244]
push eax
push dword [esi + 0x30]
call edi
mov ecx, dword [ebp - 0x240]
mov eax, dword [ebp - 0x244]
neg ecx
push ecx
neg eax
push eax
lea eax, [ebp - 0x224]
push eax
call dword [sym.imp.USER32.dll_OffsetRect]
mov eax, dword [ebp - 0x218]
sub eax, dword [ebp - 0x220]
push 0xcc0020
push dword [ebp - 0x220]
xor edi, edi
push dword [ebp - 0x224]
push dword [esi + 0x2c]
push eax
mov eax, dword [ebp - 0x21c]
sub eax, dword [ebp - 0x224]
push eax
push edi
push edi
push ebx
call dword [sym.imp.GDI32.dll_BitBlt]
push ebx
mov ecx, esi
call fcn.0040e12d
xor eax, eax
push 0x1fe
mov word [ebp - 0x204], ax
lea eax, [ebp - 0x202]
push edi
push eax
call fcn.00422240
add esp, 0xc
lea eax, [ebp - 0x204]
push 0x100
push eax
push dword [esi + 4]
call dword [sym.imp.USER32.dll_GetWindowTextW]
cmp dword [esi + 0x3c], edi
je 0x40e380
push 1
push ebx
call dword [sym.imp.GDI32.dll_SetBkMode]
lea eax, [ebp - 0x234]
push eax
mov eax, dword [ebp - 0x248]
push dword [eax + 0x14]
call dword [sym.imp.USER32.dll_GetClientRect]
add dword [ebp - 0x234], 0x14
cmp dword [esi + 0x44], edi
je 0x40e3d2
push edi
push edi
push 0xffffff
push dword [esi + 0x40]
lea eax, [ebp - 0x204]
push eax
push dword [esi + 0x38]
lea esi, [ebp - 0x234]
sub esp, 0x10
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push ebx
movsd dword es:[edi], dword [esi]
call fcn.0040e77b
add esp, 0x2c
xor edi, edi
jmp 0x40e40c
push dword [esi + 0x40]
push ebx
call dword [sym.imp.GDI32.dll_SetTextColor]
lea ecx, [ebp - 0x204]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, di
jne 0x40e3e5
push 0x24
sub ecx, edx
lea eax, [ebp - 0x234]
push eax
sar ecx, 1
push ecx
lea eax, [ebp - 0x204]
push eax
push ebx
call dword [sym.imp.USER32.dll_DrawTextW]
mov eax, dword [ebp - 0x248]
push 0xcc0020
push edi
push edi
push ebx
push dword [ebp - 0x254]
push dword [ebp - 0x250]
push edi
push edi
push dword [eax + 0x18]
call dword [sym.imp.GDI32.dll_BitBlt]
push dword [ebp - 0x260]
mov esi, dword [sym.imp.GDI32.dll_SelectObject]
push ebx
call esi
push dword [ebp - 0x258]
push ebx
call esi
mov esi, dword [sym.imp.GDI32.dll_DeleteObject]
push ebx
call esi
push dword [ebp - 0x25c]
call esi
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00421734
leave
ret 4