Wandering by maxscript listener properties and methods I accidentally stumbled on .SetEchoWindow which is .net version of set_echo_window of IWindowStream interface
All it is doing is sending any listener output using WM_SETTEXT to another window.
Maybe somebody find it useful one day
rollout X "" ( )
createDialog X
l = (dotNetClass "Autodesk.Max.GlobalInterface").Instance.TheListener
l.editstream.SetEchoWindow (dotNetObject "System.IntPtr" x.hwnd)
for i = 1 to 5 do ( print i; sleep 0.25 )