Function at 0x40767b
Capabilities:
Get graphical window text

Disassembly:
sub esp, 0x18
push ebx
push edi
mov edi, ecx
xor ebx, ebx
cmp dword [edi + 4], ebx
je 0x4078e2
call fcn.00407b7b
test al, al
jne 0x40769b
mov byte [esp + 0x24], 1
cmp dword [edi + 0x60], ebx
push ebp
push esi
mov dword [esp + 0x14], ebx
jle 0x407889
push dword [esp + 0x14]
lea ecx, [edi + 0x54]
call fcn.0041c45e
mov ebp, eax
mov ecx, edi
push dword [ebp + 0xc]
call fcn.004070ed
mov ebx, eax
xor esi, esi
cmp ebx, esi
je 0x407876
mov eax, dword [ebx + 0x4c]
cmp eax, esi
je 0x407876
mov ecx, dword [ebx + 8]
cmp ecx, 3
je 0x40775a
cmp ecx, 4
je 0x40775a
cmp ecx, 5
jne 0x40779b
push eax
call dword [sym.imp.USER32.dll_GetWindowTextLengthA]
mov esi, eax
inc esi
push esi
call fcn.0042200e
test eax, eax
pop ecx
mov dword [esp + 0x10], eax
jne 0x407719
mov ecx, 0x47a7fc
call fcn.0041ab9e
push eax
call fcn.0041b6d2
pop ecx
cmp esi, 1
jne 0x407727
mov eax, dword [esp + 0x10]
and byte [eax], 0
jmp 0x407735
push esi
push dword [esp + 0x14]
push dword [ebx + 0x4c]
call dword [sym.imp.USER32.dll_GetWindowTextA]
push dword [esp + 0x10]
lea ecx, [ebp + 0x10]
call fcn.00419db1
push dword [esp + 0x10]
call fcn.00422203
push dword [esp + 0x14]
mov dword [ebp + 0x1c], eax
call fcn.0042201c
pop ecx
pop ecx
jmp 0x40779b
push esi
push esi
push 0xf0
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
push 1
pop ecx
cmp eax, ecx
je 0x407779
cmp eax, 2
je 0x407779
mov dword [ebp + 0x1c], esi
jmp 0x40777c
mov dword [ebp + 0x1c], ecx
lea eax, [esp + 0x18]
push 0xa
push eax
push dword [ebp + 0x1c]
call fcn.00424b29
add esp, 0xc
lea eax, [esp + 0x18]
lea ecx, [ebp + 0x10]
push eax
call fcn.00419db1
push 0x58
call fcn.0042200e
test eax, eax
pop ecx
je 0x4077b2
mov ecx, eax
call fcn.004078ed
mov esi, eax
jmp 0x4077b4
xor esi, esi
test esi, esi
jne 0x4077c9
mov ecx, 0x47a7fc
call fcn.0041ab9e
push eax
call fcn.0041b6d2
pop ecx
push ebp
mov ecx, esi
call fcn.00419e1f
or dword [esi + 0x10], 0xffffffff
lea ebx, [ebp + 0x10]
push ebx
lea ecx, [esi + 0x48]
mov dword [esi + 0xc], 1
call fcn.00419e1f
mov eax, dword [ebp + 0x1c]
test ebp, ebp
mov dword [esi + 0x54], eax
je 0x407807
mov ecx, ebx
call fcn.00419d9a
mov ecx, ebp
call fcn.00419d9a
push ebp
call fcn.0042201c
pop ecx
and dword [esp + 0x10], 0
cmp dword [0x47a3c4], 0
jle 0x407867
push dword [esp + 0x10]
mov ebx, 0x47a3b8
mov ecx, ebx
call fcn.0041c45e
mov ebp, eax
push 1
push esi
mov ecx, ebp
call fcn.0041a015
test al, al
jne 0x407847
inc dword [esp + 0x10]
mov eax, dword [esp + 0x10]
cmp eax, dword [0x47a3c4]
jl 0x407815
jmp 0x40786c
test ebp, ebp
je 0x407859
mov ecx, ebp
call fcn.00407921
push ebp
call fcn.0042201c
pop ecx
push esi
mov ecx, ebx
push dword [esp + 0x14]
call fcn.0041c505
jmp 0x407876
mov ebx, 0x47a3b8
push 0xffffffffffffffff
push esi
mov ecx, ebx
call fcn.0041c478
inc dword [esp + 0x14]
mov eax, dword [esp + 0x14]
cmp eax, dword [edi + 0x60]
jl 0x4076aa
xor ebx, ebx
lea ecx, [edi + 0x54]
call fcn.0041c51f
cmp dword [0x47a040], edi
jne 0x40789f
mov dword [0x47a040], ebx
mov esi, dword [sym.imp.USER32.dll_GetDlgItem]
push ebx
push 1
push dword [edi + 4]
call esi
mov ebp, dword [sym.imp.USER32.dll_EnableWindow]
push eax
call ebp
push ebx
push 2
push dword [edi + 4]
call esi
push eax
call ebp
push ebx
push 3
push dword [edi + 4]
call esi
push eax
call ebp
cmp byte [esp + 0x2c], 0
pop esi
mov dword [0x479e90], edi
pop ebp
je 0x4078e2
push ebx
call fcn.00407955
pop ecx
push 1
pop eax
pop edi
pop ebx
add esp, 0x18
ret 4