Function at 0x466630
Capabilities:
Get graphical window text

Disassembly:
sub esp, 0x404
mov eax, dword [esp + 0x40c]
push ebx
push ebp
push esi
push edi
mov edi, dword [esp + 0x418]
mov ebp, dword [edi + 0x137c]
movzx ecx, ax
shr eax, 0x10
xor ebx, ebx
xor esi, esi
cmp ebp, ebx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], esi
je 0x466816
lea esp, [esp]
mov edx, dword [ebp + 0x1c]
mov esi, dword [ebp + 0xc]
cmp esi, ebx
mov dword [ebp + 0x20], edx
mov dword [ebp + 0x1c], ebx
je 0x466805
push esi
call dword [sym.imp.USER32.dll_IsWindowEnabled]
test eax, eax
je 0x466805
mov eax, dword [edi + 0x136c]
cmp eax, ebx
je 0x4666bd
lea ecx, [ecx]
cmp dword [eax + 0xc], esi
je 0x4666ae
mov eax, dword [eax + 0x40]
cmp eax, ebx
jne 0x4666a0
jmp 0x4666bd
mov eax, dword [eax + 0x10]
cmp eax, dword [edi + 0x1370]
jne 0x466805
lea ecx, [esp + 0x1c]
push ecx
push esi
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [edi + 0xc8]
push 2
lea edx, [esp + 0x20]
push edx
push eax
push ebx
call dword [sym.imp.USER32.dll_MapWindowPoints]
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 0x466805
mov ecx, dword [edi + 0xc8]
push ebx
push ebx
push 0x31
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
mov ebx, eax
test ebx, ebx
je 0x466773
mov edx, dword [edi + 0xc8]
push edx
call dword [sym.imp.USER32.dll_GetDC]
mov esi, eax
test esi, esi
je 0x466773
push ebx
push esi
call dword [sym.imp.GDI32.dll_SelectObject]
mov ecx, dword [ebp + 0xc]
mov ebx, eax
lea eax, [esp + 0x2c]
push eax
push 0x3e7
push 0xd
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
push 0x2c10
lea edx, [esp + 0x20]
push edx
push 0xffffffffffffffff
lea eax, [esp + 0x38]
push eax
push esi
call dword [sym.imp.USER32.dll_DrawTextA]
push ebx
push esi
call dword [sym.imp.GDI32.dll_SelectObject]
mov ecx, dword [edi + 0xc8]
push esi
push ecx
call dword [sym.imp.USER32.dll_ReleaseDC]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
lea ecx, [esp + 0x24]
push ecx
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
je 0x466805
mov eax, dword [0x61389c]
test eax, eax
jne 0x4667c0
mov esi, dword [sym.imp.USER32.dll_LoadCursorA]
push 0x7f89
push eax
call esi
test eax, eax
mov dword [0x61389c], eax
jne 0x4667c0
mov edx, dword [0x645320]
push 0x46
push edx
call esi
test eax, eax
mov dword [0x61389c], eax
je 0x466805
push eax
call dword [sym.imp.USER32.dll_SetCursor]
mov ecx, dword [0x613898]
test ecx, ecx
jne 0x4667d6
mov dword [0x613898], eax
mov eax, 1
mov dword [esp + 0x18], eax
mov dword [ebp + 0x1c], eax
mov eax, dword [edi + 0x1380]
test eax, eax
jne 0x466805
mov eax, dword [edi + 0xc8]
push 0
push 0x32
push 0x7d
push eax
call dword [sym.imp.USER32.dll_SetTimer]
mov dword [edi + 0x1380], eax
mov ebp, dword [ebp + 0x40]
xor ebx, ebx
cmp ebp, ebx
jne 0x466670
mov esi, dword [esp + 0x18]
mov eax, dword [0x613898]
cmp eax, ebx
je 0x466836
cmp esi, ebx
jne 0x466836
push eax
call dword [sym.imp.USER32.dll_SetCursor]
mov dword [0x613898], ebx
mov dword [0x61389c], ebx
mov eax, dword [edi + 0x137c]
cmp eax, ebx
je 0x46686b
mov ecx, dword [eax + 0x1c]
cmp ecx, dword [eax + 0x20]
jne 0x46685c
mov eax, dword [eax + 0x40]
cmp eax, ebx
jne 0x466840
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x404
ret
mov edx, dword [edi + 0xc8]
push edx
call fcn.00466310
add esp, 4
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x404
ret