Function at 0x10004a30
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18c
mov eax, dword [0x10067168]
xor eax, ebp
mov dword [ebp - 8], eax
push esi
mov esi, ecx
xor edx, edx
mov eax, esi
div dword [ebx + 0x1e0]
push edi
test edx, edx
jne 0x10004f68
mov eax, dword [0x100698b4]
xor edi, edi
push eax
mov dword [ebp - 0x17c], edi
call dword [sym.imp.USER32.dll_SetThreadDesktop]
xor edx, edx
mov eax, esi
div dword [ebx + 0x1e0]
mov dword [ebp - 0x178], edi
mov dword [ebp - 0x180], eax
cmp eax, edi
jle 0x10004f68
mov eax, dword [ebx + 0x1e0]
imul eax, dword [ebp - 0x178]
add eax, dword [ebp + 8]
mov dword [ebx + 0x1dc], eax
mov ecx, dword [eax + 4]
sub ecx, 0x100
je 0x10004ea2
dec ecx
je 0x10004f68
dec ecx
je 0x10004ea2
mov ecx, dword [eax + 0x10]
lea esi, [ebx + 0x1bc]
mov dword [esi], ecx
mov edx, dword [eax + 0x14]
mov eax, dword [ebx + 0x1c4]
mov ecx, dword [ebx + 0x1c8]
mov dword [ebx + 0x1c0], edx
mov edx, dword [esi]
mov dword [ebp - 0x188], eax
mov eax, dword [esi + 4]
push eax
push edx
mov dword [ebp - 0x17c], 1
mov dword [ebp - 0x184], ecx
mov dword [ebx + 0x1c4], edx
mov dword [ebx + 0x1c8], eax
call dword [sym.imp.USER32.dll_WindowFromPoint]
mov edi, eax
mov eax, dword [ebx + 0x1dc]
mov ecx, dword [eax + 4]
cmp ecx, 0x202
jne 0x10004c04
mov dword [ebx + 0x1cc], 0
mov eax, dword [eax]
push eax
push 0
push 0x84
push edi
call dword [sym.imp.USER32.dll_SendMessageA]
inc eax
cmp eax, 0x15
ja case.0x10004b50.0
movzx ecx, byte [eax + 0x10004f90]
jmp dword [ecx*4 + 0x10004f7c]
push 0xfffffffffffffff0
push edi
call dword [sym.imp.USER32.dll_GetWindowLongA]
or eax, 0x8000000
push eax
push 0xfffffffffffffff0
push edi
call dword [sym.imp.USER32.dll_SetWindowLongA]
mov edx, dword [ebx + 0x1dc]
mov eax, dword [edx]
push eax
push 0
push 0x84
push edi
call dword [sym.imp.USER32.dll_SendMessageA]
jmp case.0x10004b50.0
push 0
push 0
push 0x10
push edi
call dword [sym.imp.USER32.dll_PostMessageA]
jmp case.0x10004b50.0
push 0
push 0xf020
push 0x112
push edi
call dword [sym.imp.USER32.dll_PostMessageA]
jmp case.0x10004b50.0
lea ecx, [ebp - 0x160]
push ecx
push edi
mov dword [ebp - 0x160], 0x2c
call dword [sym.imp.USER32.dll_GetWindowPlacement]
test byte [ebp - 0x15c], 3
push 0
je 0x10004bee
push 0xf120
push 0x112
push edi
call dword [sym.imp.USER32.dll_PostMessageA]
jmp case.0x10004b50.0
push 0xf030
push 0x112
push edi
call dword [sym.imp.USER32.dll_PostMessageA]
jmp case.0x10004b50.0
cmp ecx, 0x201
jne 0x10004d18
push 0
push str.Button
mov dword [ebx + 0x1cc], 1
mov dword [ebx + 0x1d0], 0
call dword [sym.imp.USER32.dll_FindWindowA]
lea edx, [ebp - 0x134]
push edx
push eax
mov dword [ebp - 0x164], eax
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [esi + 4]
mov ecx, dword [esi]
push eax
push ecx
lea edx, [ebp - 0x134]
push edx
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
je 0x10004c78
mov eax, dword [ebp - 0x164]
push 0
push 0
push 0xf5
push eax
call dword [sym.imp.USER32.dll_PostMessageA]
jmp case.0x10004dc4.3
push 0x103
lea ecx, [ebp - 0x113]
push 0
push ecx
mov byte [ebp - 0x114], 0
call fcn.100027b0
add esp, 0xc
push 0x104
lea edx, [ebp - 0x114]
push edx
push edi
call dword [sym.imp.USER32.dll_RealGetWindowClassA]
push str.32768
lea eax, [ebp - 0x114]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpA]
test eax, eax
jne case.0x10004b50.0
push eax
push eax
push 0x1e1
push edi
call dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, dword [esi + 4]
mov edx, dword [esi]
push ecx
push edx
push eax
push 0
mov dword [ebp - 0x164], eax
call dword [sym.imp.USER32.dll_MenuItemFromPoint]
mov esi, eax
mov eax, dword [ebp - 0x164]
push esi
push eax
call dword [sym.imp.USER32.dll_GetMenuItemID]
push 0
push esi
mov esi, dword [sym.imp.USER32.dll_PostMessageA]
push 0x1e5
push edi
call esi
push 0
push 0xd
push 0x100
push edi
call esi
jmp case.0x10004dc4.3
cmp ecx, 0x200
jne case.0x10004b50.0
cmp dword [ebx + 0x1cc], 0
je case.0x10004dc4.3
mov ecx, dword [ebx + 0x1d0]
test ecx, ecx
jne 0x10004d54
mov ecx, dword [eax]
push ecx
push 0
push 0x84
push edi
call dword [sym.imp.USER32.dll_SendMessageA]
mov dword [ebx + 0x1d4], eax
jmp 0x10004d56
mov edi, ecx
mov eax, dword [ebp - 0x188]
sub eax, dword [esi]
lea edx, [ebp - 0x124]
mov dword [ebp - 0x16c], eax
mov eax, dword [ebp - 0x184]
sub eax, dword [ebx + 0x1c0]
push edx
push edi
mov dword [ebp - 0x170], eax
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [ebp - 0x124]
mov edx, dword [ebp - 0x11c]
mov ecx, dword [ebp - 0x120]
mov esi, dword [ebx + 0x1d4]
sub edx, eax
mov dword [ebp - 0x168], edx
mov edx, dword [ebp - 0x118]
add esi, 0xfffffffe
sub edx, ecx
mov dword [ebp - 0x164], eax
mov dword [ebp - 0x174], ecx
cmp esi, 0xf
ja case.0x10004dc4.3
jmp dword [esi*4 + 0x10004fa8]
sub eax, dword [ebp - 0x16c]
sub ecx, dword [ebp - 0x170]
mov dword [ebp - 0x164], eax
mov eax, dword [ebp - 0x168]
mov dword [ebp - 0x174], ecx
jmp 0x10004e7e
mov eax, dword [ebp - 0x170]
sub ecx, eax
add edx, eax
mov eax, dword [ebp - 0x168]
mov dword [ebp - 0x174], ecx
jmp 0x10004e7e
sub edx, dword [ebp - 0x170]
mov eax, dword [ebp - 0x168]
jmp 0x10004e7e
mov esi, dword [ebp - 0x170]
sub ecx, esi
mov dword [ebp - 0x174], ecx
add edx, esi
mov ecx, dword [ebp - 0x16c]
sub eax, ecx
mov dword [ebp - 0x164], eax
mov eax, dword [ebp - 0x168]
add eax, ecx
jmp 0x10004e7e
mov eax, dword [ebp - 0x170]
sub ecx, eax
mov dword [ebp - 0x174], ecx
add edx, eax
jmp case.0x10004dc4.11
mov ecx, dword [ebp - 0x16c]
sub edx, dword [ebp - 0x170]
sub eax, ecx
mov dword [ebp - 0x164], eax
mov eax, dword [ebp - 0x168]
add eax, ecx
jmp 0x10004e7e
sub edx, dword [ebp - 0x170]
mov eax, dword [ebp - 0x168]
sub eax, dword [ebp - 0x16c]
mov ecx, dword [ebp - 0x164]
push 0
push edx
push eax
mov eax, dword [ebp - 0x174]
push eax
push ecx
push edi
call dword [sym.imp.USER32.dll_MoveWindow]
mov dword [ebx + 0x1d0], edi
jmp case.0x10004dc4.3
mov eax, dword [ebx + 0x1c8]
mov edx, dword [ebx + 0x1c4]
push eax
lea esi, [ebx + 0x1bc]
push edx
mov dword [esi], edx
mov dword [esi + 4], eax
call dword [sym.imp.USER32.dll_WindowFromPoint]
mov edi, eax
push esi
push edi
call dword [sym.imp.USER32.dll_ScreenToClient]
mov eax, dword [esi + 4]
mov ecx, dword [esi]
push eax
push ecx
push edi
call dword [sym.imp.USER32.dll_ChildWindowFromPoint]
mov dword [ebp - 0x164], eax
test eax, eax
je 0x10004f17
jmp 0x10004eeb
mov eax, dword [ebp - 0x164]
cmp eax, edi
je 0x10004f17
push esi
push eax
mov edi, eax
call dword [sym.imp.USER32.dll_ScreenToClient]
mov edx, dword [esi + 4]
mov eax, dword [esi]
mov ecx, dword [ebp - 0x164]
push edx
push eax
push ecx
call dword [sym.imp.USER32.dll_ChildWindowFromPoint]
mov dword [ebp - 0x164], eax
test eax, eax
jne 0x10004ee5
cmp dword [ebp - 0x17c], 0
je 0x10004f37
movzx edx, word [ebx + 0x1c0]
movzx eax, word [esi]
mov ecx, dword [ebx + 0x1dc]
shl edx, 0x10
or edx, eax
mov dword [ecx], edx
mov eax, dword [ebx + 0x1dc]
mov edx, dword [eax]
mov ecx, dword [eax + 8]
push edx
mov edx, dword [eax + 4]
push ecx
push edx
push edi
call dword [sym.imp.USER32.dll_PostMessageW]
mov eax, dword [ebp - 0x178]
inc eax
mov dword [ebp - 0x178], eax
cmp eax, dword [ebp - 0x180]
jl 0x10004a8b
mov ecx, dword [ebp - 8]
pop edi
xor ecx, ebp
pop esi
call fcn.1000c6af
mov esp, ebp
pop ebp
ret 4