Function at 0x40ceb0
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x264
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 - 0x264], eax
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 - 0x260], eax
call dword [sym.imp.GDI32.dll_SelectObject]
mov dword [ebp - 0x258], eax
mov eax, dword [ebp - 0x24c]
cmp dword [eax + 0x28], 0
cmovne esi, dword [eax + 0x28]
push esi
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
mov dword [ebp - 0x25c], 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 - 0x234]
push eax
push dword [esi + 0x38]
call edi
mov ecx, dword [ebp - 0x230]
mov eax, dword [ebp - 0x234]
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]
mov edi, dword [sym.imp.GDI32.dll_BitBlt]
push 0xcc0020
push dword [ebp - 0x220]
push dword [ebp - 0x224]
push dword [esi + 0x34]
push eax
mov eax, dword [ebp - 0x21c]
sub eax, dword [ebp - 0x224]
push eax
xor eax, eax
push eax
push eax
push ebx
call edi
xor eax, eax
push ebx
mov ecx, esi
cmp dword [esi + 0x50], eax
je 0x40d01d
call fcn.0040cdfe
jmp 0x40d022
call fcn.0040ce61
xor eax, eax
cmp dword [esi + 0x74], eax
je 0x40d03b
push dword [esi + 0x80]
mov ecx, dword [esi + 0x78]
push dword [esi + 0x7c]
push ebx
call fcn.0040f89d
xor eax, eax
push 0x1fe
push eax
mov word [ebp - 0x204], ax
lea eax, [ebp - 0x202]
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]
push 1
push ebx
call dword [sym.imp.GDI32.dll_SetBkMode]
push dword [esi + 0x2c]
push ebx
call dword [sym.imp.GDI32.dll_SetTextColor]
mov esi, dword [ebp - 0x248]
lea eax, [ebp - 0x244]
push eax
push dword [esi + 0x14]
call dword [sym.imp.USER32.dll_GetClientRect]
lea ecx, [ebp - 0x204]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, word [ebp - 0x264]
jne 0x40d0a0
push 0x25
sub ecx, edx
lea eax, [ebp - 0x244]
push eax
sar ecx, 1
push ecx
lea eax, [ebp - 0x204]
push eax
push ebx
call dword [sym.imp.USER32.dll_DrawTextW]
push 0xcc0020
xor eax, eax
push eax
push eax
push ebx
push dword [ebp - 0x254]
push dword [ebp - 0x250]
push eax
push eax
push dword [esi + 0x18]
call edi
push dword [ebp - 0x25c]
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 - 0x260]
call esi
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00421734
leave
ret 4