Function at 0x40e0d0
Capabilities:
Get graphical window text

Disassembly:
push ebx
push esi
push edi
push ebp
add esp, 0xffffffe4
mov ebp, edx
mov ebx, eax
cmp byte [0x418998], 0
jne case.default.0x40e132
push 0
push 0
push 0xe
mov eax, dword [0x4177ac]
push eax
call sub.user32.dll_SendMessageA
mov edi, eax
mov eax, esp
push eax
push 0
push 0x434
mov eax, dword [0x4177ac]
push eax
call sub.user32.dll_SendMessageA
mov eax, dword [esp]
cmp eax, dword [esp + 4]
je 0x40e125
cmp bl, 4
jb 0x40e123
cmp bl, 8
jne 0x40e125
mov bl, 4
xor eax, eax
mov al, bl
cmp eax, 8
ja case.default.0x40e132
jmp dword [eax*4 + 0x40e139]
cmp dword [0x4177bc], 0
je 0x40e17d
mov eax, dword [0x4177bc]
cmp bl, byte [eax + 0x15]
jne 0x40e17d
mov eax, dword [0x4177bc]
add ebp, dword [eax + 0xc]
cmp ebp, dword [esp]
je 0x40e1a7
push 0x1a
push 0x40
call sub.kernel32.dll_GlobalAlloc
mov esi, eax
test esi, esi
je 0x40e54c
mov byte [esi + 0x15], bl
mov eax, dword [esp]
mov dword [esi + 8], eax
mov eax, dword [0x4177bc]
mov dword [esi + 0x16], eax
mov dword [0x4177bc], esi
mov eax, dword [0x4177bc]
mov edx, dword [esp]
mov dword [eax + 0xc], edx
jmp case.default.0x40e132
cmp edi, dword [esp]
jle case.default.0x40e132
push 0x1a
push 0x40
call sub.kernel32.dll_GlobalAlloc
mov esi, eax
test esi, esi
je 0x40e54c
mov byte [esi + 0x15], bl
mov eax, dword [esp]
mov dword [esi + 8], eax
mov eax, dword [esp]
add eax, 2
mov dword [esi + 0xc], eax
mov eax, dword [0x4177bc]
mov dword [esi + 0x16], eax
mov dword [0x4177bc], esi
mov ebx, dword [0x4177bc]
lea eax, [esp + 8]
mov dword [ebx + 0x10], eax
lea eax, [ebx + 8]
push eax
push 0
push 0x44b
mov eax, dword [0x4177ac]
push eax
call sub.user32.dll_SendMessageA
xor eax, eax
mov al, byte [esp + 8]
xor edx, edx
mov dl, byte [esp + 9]
shl edx, 8
add eax, edx
mov dword [ebx + 4], eax
jmp case.default.0x40e132
cmp dword [esp], 0
jle case.default.0x40e132
push 0x1a
push 0x40
call sub.kernel32.dll_GlobalAlloc
mov esi, eax
test esi, esi
je 0x40e54c
mov byte [esi + 0x15], bl
mov eax, dword [esp]
cmp eax, 1
jne 0x40e25e
xor eax, eax
mov dword [esi + 8], eax
jmp 0x40e264
sub eax, 2
mov dword [esi + 8], eax
mov eax, dword [esp + 4]
mov dword [esi + 0xc], eax
mov eax, dword [0x4177bc]
mov dword [esi + 0x16], eax
mov dword [0x4177bc], esi
mov ebx, dword [0x4177bc]
lea eax, [esp + 8]
mov dword [ebx + 0x10], eax
lea eax, [ebx + 8]
push eax
push 0
push 0x44b
mov eax, dword [0x4177ac]
push eax
call sub.user32.dll_SendMessageA
xor eax, eax
mov al, byte [esp + 8]
xor edx, edx
mov dl, byte [esp + 9]
shl edx, 8
add eax, edx
mov dword [ebx + 4], eax
jmp case.default.0x40e132
push 0x1a
push 0x40
call sub.kernel32.dll_GlobalAlloc
mov esi, eax
test esi, esi
je 0x40e54c
mov edi, dword [esp + 4]
sub edi, dword [esp]
test edi, edi
jle 0x40e32d
add edi, 2
push edi
push 0x40
call sub.kernel32.dll_GlobalAlloc
mov dword [esi], eax
cmp dword [esi], 0
jne 0x40e2f0
push esi
call sub.kernel32.dll_GlobalFree
jmp 0x40e54c
mov eax, dword [esi]
mov dword [esi + 0x10], eax
mov byte [esi + 0x15], bl
mov eax, dword [esp]
mov dword [esi + 8], eax
add ebp, dword [esp]
mov dword [esi + 0xc], ebp
mov eax, dword [esi + 0x10]
push eax
push 0
push 0x43e
mov eax, dword [0x4177ac]
push eax
call sub.user32.dll_SendMessageA
mov eax, dword [0x4177bc]
mov dword [esi + 0x16], eax
mov dword [0x4177bc], esi
jmp case.default.0x40e132
mov byte [esi + 0x15], bl
mov eax, dword [esp]
mov dword [esi + 8], eax
add ebp, dword [esp]
mov dword [esi + 0xc], ebp
xor eax, eax
mov dword [esi + 0x10], eax
mov eax, dword [0x4177bc]
mov dword [esi + 0x16], eax
mov dword [0x4177bc], esi
jmp case.default.0x40e132
cmp edi, dword [esp]
jle case.default.0x40e132
push 0x1a
push 0x40
call sub.kernel32.dll_GlobalAlloc
mov esi, eax
test esi, esi
je 0x40e54c
mov eax, dword [esp]
mov dword [esi + 8], eax
mov eax, dword [esp]
push eax
push 5
push 0x44c
mov eax, dword [0x4177ac]
push eax
call sub.user32.dll_SendMessageA
mov dword [esi + 0xc], eax
jmp 0x40e46a
cmp dword [0x4177bc], 0
je 0x40e3ac
mov eax, dword [0x4177bc]
cmp byte [eax + 0x15], 6
je case.default.0x40e132
push 0x1a
push 0x40
call sub.kernel32.dll_GlobalAlloc
mov esi, eax
test esi, esi
je 0x40e54c
test edi, edi
jle 0x40e410
add edi, 2
push edi
push 0x40
call sub.kernel32.dll_GlobalAlloc
mov ebp, eax
mov dword [esi], ebp
test ebp, ebp
jne 0x40e3e1
push esi
call sub.kernel32.dll_GlobalFree
jmp 0x40e54c
mov eax, dword [esi]
mov dword [esi + 0x10], eax
mov eax, dword [esp]
mov dword [esi + 8], eax
mov eax, dword [esp + 4]
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0x10]
mov dword [esp + 0x15], eax
xor eax, eax
mov dword [esp + 0x11], eax
lea eax, [esp + 0xd]
call fcn.0040dff4
mov eax, dword [esp + 0x11]
mov dword [esi + 4], eax
mov byte [esi + 0x15], bl
mov al, byte [0x4177cc]
mov byte [esi + 0x14], al
mov eax, dword [0x4177bc]
mov dword [esi + 0x16], eax
mov dword [0x4177bc], esi
jmp case.default.0x40e132
cmp dword [esp], 0
jle case.default.0x40e132
push 0x1a
push 0x40
call sub.kernel32.dll_GlobalAlloc
mov esi, eax
test esi, esi
je 0x40e54c
mov eax, dword [esp]
push eax
push 4
push 0x44c
mov eax, dword [0x4177ac]
push eax
call sub.user32.dll_SendMessageA
mov dword [esi + 8], eax
mov eax, dword [esp]
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0xc]
sub eax, dword [esi + 8]
inc eax
push eax
push 0x40
call sub.kernel32.dll_GlobalAlloc
mov ebx, eax
mov dword [esi], ebx
test ebx, ebx
jne 0x40e48c
push esi
call sub.kernel32.dll_GlobalFree
jmp 0x40e54c
mov eax, dword [esi]
mov dword [esi + 0x10], eax
mov byte [esi + 0x15], 4
lea eax, [esi + 8]
push eax
push 0
push 0x44b
mov eax, dword [0x4177ac]
push eax
call sub.user32.dll_SendMessageA
lea eax, [esi + 8]
push eax
push 0
push 0x437
mov eax, dword [0x4177ac]
push eax
call sub.user32.dll_SendMessageA
push 0
push 0
push 0x303
mov eax, dword [0x4177ac]
push eax
call sub.user32.dll_SendMessageA
mov eax, dword [esi + 8]
mov dword [esi + 0xc], eax
mov eax, dword [0x4177bc]
mov dword [esi + 0x16], eax
mov dword [0x4177bc], esi
jmp case.default.0x40e132
push 0x1a
push 0x40
call sub.kernel32.dll_GlobalAlloc
mov esi, eax
test esi, esi
je 0x40e54c
mov byte [esi + 0x15], bl
mov eax, dword [esp]
mov dword [esi + 8], eax
mov eax, dword [esp]
inc eax
mov dword [esi + 0xc], eax
mov ebx, esi
lea eax, [esp + 8]
mov dword [ebx + 0x10], eax
lea eax, [ebx + 8]
push eax
push 0
push 0x44b
mov eax, dword [0x4177ac]
push eax
call sub.user32.dll_SendMessageA
xor eax, eax
mov al, byte [esp + 8]
mov dword [ebx + 4], eax
cmp eax, 0xd
jne 0x40e53c
xor eax, eax
mov dword [ebx + 4], eax
mov eax, dword [0x4177bc]
mov dword [esi + 0x16], eax
mov dword [0x4177bc], esi
jmp case.default.0x40e132
call fcn.0040df6c
add esp, 0x1c
pop ebp
pop edi
pop esi
pop ebx
ret