Function at 0x45a0b0
Capabilities:
Get graphical window text

Disassembly:
sub esp, 0x404
push ebx
push ebp
push esi
push edi
mov edi, ecx
mov ebp, dword [edi + 0xfe8]
movzx eax, dx
shr edx, 0x10
xor ebx, ebx
xor esi, esi
cmp ebp, ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
mov dword [esp + 0x18], esi
je 0x45a286
mov ecx, dword [ebp + 0x1c]
mov esi, dword [ebp + 0xc]
cmp esi, ebx
mov dword [ebp + 0x20], ecx
mov dword [ebp + 0x1c], ebx
je 0x45a275
push esi
call dword [sym.imp.USER32.dll_IsWindowEnabled]
test eax, eax
je 0x45a275
mov eax, dword [edi + 0xfd4]
cmp eax, ebx
je 0x45a12d
lea ecx, [ecx]
cmp dword [eax + 0xc], esi
je 0x45a11e
mov eax, dword [eax + 0x40]
cmp eax, ebx
jne 0x45a110
jmp 0x45a12d
mov edx, dword [eax + 0x10]
cmp edx, dword [edi + 0xfdc]
jne 0x45a275
lea eax, [esp + 0x1c]
push eax
push esi
call dword [sym.imp.USER32.dll_GetWindowRect]
mov edx, dword [edi + 0xc8]
push 2
lea ecx, [esp + 0x20]
push ecx
push edx
push ebx
call dword [sym.imp.USER32.dll_MapWindowPoints]
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
push eax
push ecx
lea edx, [esp + 0x24]
push edx
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
je 0x45a275
mov eax, dword [edi + 0xc8]
push ebx
push ebx
push 0x31
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov ebx, eax
test ebx, ebx
je 0x45a1e3
mov ecx, dword [edi + 0xc8]
push ecx
call dword [sym.imp.USER32.dll_GetDC]
mov esi, eax
test esi, esi
je 0x45a1e3
push ebx
push esi
call dword [sym.imp.GDI32.dll_SelectObject]
lea edx, [esp + 0x2c]
push edx
push 0x3e7
mov ebx, eax
mov eax, dword [ebp + 0xc]
push 0xd
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
push 0x2c10
lea ecx, [esp + 0x20]
push ecx
push 0xffffffffffffffff
lea edx, [esp + 0x38]
push edx
push esi
call dword [sym.imp.USER32.dll_DrawTextA]
push ebx
push esi
call dword [sym.imp.GDI32.dll_SelectObject]
mov eax, dword [edi + 0xc8]
push esi
push eax
call dword [sym.imp.USER32.dll_ReleaseDC]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
push ecx
push edx
lea eax, [esp + 0x24]
push eax
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
je 0x45a275
mov eax, dword [0x5a56f4]
test eax, eax
jne 0x45a230
mov esi, dword [sym.imp.USER32.dll_LoadCursorA]
push 0x7f89
push eax
call esi
test eax, eax
mov dword [0x5a56f4], eax
jne 0x45a230
mov ecx, dword [0x5b4310]
push 0x32
push ecx
call esi
test eax, eax
mov dword [0x5a56f4], eax
je 0x45a275
push eax
call dword [sym.imp.USER32.dll_SetCursor]
mov ecx, dword [0x5a56f0]
test ecx, ecx
jne 0x45a246
mov dword [0x5a56f0], eax
mov eax, 1
mov dword [esp + 0x18], eax
mov dword [ebp + 0x1c], eax
mov eax, dword [edi + 0xfec]
test eax, eax
jne 0x45a275
mov edx, dword [edi + 0xc8]
push 0
push 0x32
push 0x7d
push edx
call dword [sym.imp.USER32.dll_SetTimer]
mov dword [edi + 0xfec], eax
mov ebp, dword [ebp + 0x40]
xor ebx, ebx
cmp ebp, ebx
jne 0x45a0e0
mov esi, dword [esp + 0x18]
mov eax, dword [0x5a56f0]
cmp eax, ebx
je 0x45a2a6
cmp esi, ebx
jne 0x45a2a6
push eax
call dword [sym.imp.USER32.dll_SetCursor]
mov dword [0x5a56f0], ebx
mov dword [0x5a56f4], ebx
mov eax, dword [edi + 0xfe8]
cmp eax, ebx
je 0x45a2d7
mov ecx, dword [eax + 0x1c]
cmp ecx, dword [eax + 0x20]
jne 0x45a2cc
mov eax, dword [eax + 0x40]
cmp eax, ebx
jne 0x45a2b0
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x404
ret
mov ecx, dword [edi + 0xc8]
call fcn.00459db0
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x404
ret