Function at 0x415238
Capabilities:
Get graphical window text

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x34
mov eax, dword [0x41c194]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push dword [0x41dfd0]
mov ebx, ecx
mov dword [ebp - 0x2c], ebx
call dword [sym.imp.USER32.dll_SetCursor]
xor esi, esi
mov edi, eax
test ebx, 0x100000
je 0x415289
push esi
push esi
push 0xbb
push dword [0x41d1d4]
call dword [sym.imp.USER32.dll_SendMessageW]
cmp eax, 0xffffffff
je 0x415289
mov ecx, eax
call fcn.004054e2
push esi
push esi
push 0xb8
push dword [0x41d1d4]
call dword [sym.imp.USER32.dll_SendMessageW]
push esi
push esi
neg eax
push 0xe
push dword [0x41d1d4]
sbb ebx, ebx
neg ebx
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x28], eax
lea ecx, [eax*2 + 2]
push ecx
push 2
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
mov esi, eax
test esi, esi
jne 0x4152d9
push edi
call dword [sym.imp.USER32.dll_SetCursor]
xor eax, eax
jmp 0x415432
lea eax, [ebp - 0x24]
push eax
push dword [0x41d1dc]
call dword [sym.imp.USER32.dll_GetClientRect]
push esi
call dword [sym.imp.KERNEL32.dll_LocalLock]
mov ecx, dword [ebp - 0x28]
push eax
inc ecx
mov dword [ebp - 0x30], eax
push ecx
push 0xd
push dword [0x41d1d4]
call dword [sym.imp.USER32.dll_SendMessageW]
push dword [0x41dfd8]
mov edx, dword [ebp - 0x18]
push dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x1c]
call fcn.0040a3af
mov dword [ebp - 0x28], eax
test eax, eax
jne 0x415339
push edi
call dword [sym.imp.USER32.dll_SetCursor]
push esi
call dword [sym.imp.KERNEL32.dll_LocalUnlock]
push esi
call dword [sym.imp.KERNEL32.dll_LocalFree]
jmp 0x4152d2
push 0xffffffffffffffec
push dword [0x41d1d4]
call dword [sym.imp.USER32.dll_GetWindowLongW]
push eax
push 0xffffffffffffffec
push dword [ebp - 0x28]
call dword [sym.imp.USER32.dll_SetWindowLongW]
push 1
push dword [0x41dfdc]
push 0x30
push dword [ebp - 0x28]
call dword [sym.imp.USER32.dll_SendMessageW]
push dword [ebp - 0x30]
push 0
push 0xc
push dword [ebp - 0x28]
call dword [sym.imp.USER32.dll_SendMessageW]
test eax, eax
jne 0x41538c
push edi
call dword [sym.imp.USER32.dll_SetCursor]
push dword [ebp - 0x28]
call dword [sym.imp.USER32.dll_DestroyWindow]
jmp 0x415329
push esi
call dword [sym.imp.KERNEL32.dll_LocalUnlock]
push esi
call dword [sym.imp.KERNEL32.dll_LocalFree]
mov ecx, dword [ebp - 0x28]
call fcn.0040a3de
xor esi, esi
push esi
push esi
push 0xbd
push dword [0x41d1d4]
call dword [sym.imp.USER32.dll_SendMessageW]
push 5
push dword [0x41d1dc]
mov dword [0x41dfc8], eax
call dword [sym.imp.USER32.dll_ShowWindow]
push esi
push ebx
push 0xb9
push dword [0x41d1d4]
call dword [sym.imp.USER32.dll_SendMessageW]
push dword [0x41d1d4]
call dword [sym.imp.USER32.dll_SetFocus]
push edi
call dword [sym.imp.USER32.dll_SetCursor]
cmp dword [0x41d1cc], esi
je 0x41542f
lea eax, [ebp - 0x14]
push eax
push dword [0x41d1dc]
call dword [sym.imp.USER32.dll_GetClientRect]
mov edx, dword [ebp - 8]
mov ecx, dword [ebp - 0xc]
sub edx, dword [ebp - 0x10]
sub ecx, dword [ebp - 0x14]
call fcn.0040543e
xor ecx, ecx
inc ecx
call fcn.004073b8
push 5
push dword [0x41d1d8]
call dword [sym.imp.USER32.dll_ShowWindow]
xor eax, eax
inc eax
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0041b4e0
mov esp, ebp
pop ebp
ret