Function at 0x412e4e
Capabilities:
Get graphical window text

Disassembly:
push 0x308
mov eax, 0x48d65b
call fcn.00474ec1
mov esi, edx
mov edi, ecx
mov dword [ebp - 0x308], esi
and dword [ebp - 4], 0
lea eax, [ebp - 0x20]
push eax
push dword [edi + 4]
call dword [sym.imp.USER32.dll_GetClientRect]
cmp byte [edi + 0x2c], 0
je 0x412e89
push 1
push esi
call dword [sym.imp.GDI32.dll_SetBkMode]
jmp 0x412ea8
push dword [edi + 0x24]
call dword [sym.imp.GDI32.dll_CreateSolidBrush]
push eax
lea eax, [ebp - 0x20]
push eax
push esi
call dword [sym.imp.USER32.dll_FillRect]
push dword [edi + 0x24]
push esi
call dword [sym.imp.GDI32.dll_SetBkColor]
push 0
lea ecx, [ebp - 0x304]
mov eax, 0x1f4
push ecx
push eax
push 0x29
mov dword [ebp - 0x304], eax
call dword [sym.imp.USER32.dll_SystemParametersInfoW]
lea eax, [ebp - 0x16c]
push eax
call dword [sym.imp.GDI32.dll_CreateFontIndirectW]
mov dword [ebp - 0x314], eax
push eax
mov byte [ebp - 4], 1
mov ebx, dword [sym.imp.GDI32.dll_SelectObject]
push esi
call ebx
push dword [edi + 0x28]
push esi
call dword [sym.imp.GDI32.dll_SetTextColor]
cmp byte [edi + 0x34], 0
jne 0x412ffe
and dword [ebp - 0x30c], 0
push 1
mov byte [ebp - 4], 2
movzx eax, byte [edi + 0x2d]
push eax
push 0
push 0xffffffffffffffff
mov eax, 0xfde9
push eax
push eax
sub esp, 0x1c
lea eax, [edi + 0x38]
mov ecx, esp
mov dword [ebp - 0x310], esp
push eax
call fcn.004016f0
lea eax, [ebp - 0x98]
push eax
call fcn.00456b26
add esp, 0x2c
cmp dword [eax + 0x14], 8
jb 0x412f42
mov eax, dword [eax]
push dword [edi + 0x30]
lea ecx, [ebp - 0x30c]
push ecx
mov esi, eax
call fcn.00412926
push 0
push 1
lea ecx, [ebp - 0x98]
call fcn.0040bba0
mov esi, dword [sym.imp.GDI32.dll_GetObjectW]
lea eax, [ebp - 0x7c]
push eax
push 0x5c
push dword [ebp - 0x314]
call esi
lea eax, [ebp - 0x110]
push eax
push 0x5c
push dword [ebp - 0x30c]
call esi
mov eax, dword [edi + 0x30]
cmp eax, 0xffffffff
jne 0x412f94
mov eax, dword [ebp - 0x7c]
jmp 0x412f96
neg eax
lea ecx, [ebp - 0xf4]
push ecx
push dword [ebp - 0x61]
movzx ecx, byte [edi + 0x2f]
push dword [ebp - 0x62]
xor esi, esi
push dword [ebp - 0x63]
mov dword [ebp - 0x310], esi
push dword [ebp - 0x64]
push dword [ebp - 0x65]
push esi
push ecx
movzx ecx, byte [edi + 0x2e]
push ecx
push dword [ebp - 0x100]
push dword [ebp - 0x70]
push dword [ebp - 0x74]
push eax
lea eax, [ebp - 0x310]
push eax
call fcn.004128db
push dword [ebp - 0x310]
push dword [ebp - 0x308]
call ebx
mov byte [ebp - 4], 1
cmp dword [ebp - 0x30c], esi
je 0x412ffe
push dword [ebp - 0x30c]
call dword [sym.imp.GDI32.dll_DeleteObject]
push dword [edi + 4]
mov esi, dword [sym.imp.USER32.dll_GetWindowTextLengthW]
call esi
xor ecx, ecx
push 2
inc eax
pop edx
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0045c4ea
pop ecx
push dword [edi + 4]
mov ebx, eax
call esi
inc eax
push eax
push ebx
push dword [edi + 4]
call dword [sym.imp.USER32.dll_GetWindowTextW]
push ebx
lea ecx, [ebp - 0xb4]
call fcn.0040a4c4
cmp byte [edi + 0x35], 0
je 0x413064
cmp byte [edi + 0x70], 0
je 0x413060
add edi, 0x54
cmp dword [edi + 0x14], 8
jb 0x413055
mov edi, dword [edi]
push 0x21
lea eax, [ebp - 0x20]
push eax
push 0xffffffffffffffff
push edi
jmp 0x413082
push 0x21
jmp 0x41307b
cmp byte [edi + 0x70], 0
je 0x413079
add edi, 0x54
cmp dword [edi + 0x14], 8
jb 0x413075
mov edi, dword [edi]
push 0x10
jmp 0x413057
push 0x10
lea eax, [ebp - 0x20]
push eax
push 0xffffffffffffffff
push ebx
push dword [ebp - 0x308]
call dword [sym.imp.USER32.dll_DrawTextW]
test ebx, ebx
je 0x413099
push ebx
call fcn.0046d5a8
pop ecx
push 0
push 1
lea ecx, [ebp - 0xb4]
call fcn.0040bba0
cmp dword [ebp - 0x314], 0
je 0x4130bd
push dword [ebp - 0x314]
call dword [sym.imp.GDI32.dll_DeleteObject]
xor eax, eax
inc eax
call fcn.00474f44
ret