Here is some more info:
It is throwing in Session.cs because _process is null.
Here is the call stack:
> WinSCPnet.dll!WinSCP.Session.CheckForTimeout(string additional) Line 1753 C#
WinSCPnet.dll!WinSCP.PatientFileStream.Wait(ref int interval) Line 51 C#
WinSCPnet.dll!WinSCP.PatientFileStream.Read(byte[] array, int offset, int count) Line 36 C#
System.Xml.dll!System.Xml.XmlTextReaderImpl.ReadData() Unknown
System.Xml.dll!System.Xml.XmlTextReaderImpl.ParseElementContent() Unknown
System.Xml.dll!System.Xml.XmlTextReaderImpl.Read() Unknown
WinSCPnet.dll!WinSCP.SessionLogReader.DoRead() Line 96 C#
WinSCPnet.dll!WinSCP.SessionLogReader.Read(WinSCP.LogReadFlags flags) Line 53 C#
WinSCPnet.dll!WinSCP.ElementLogReader.Read(WinSCP.LogReadFlags flags) Line 53 C#
WinSCPnet.dll!WinSCP.SessionElementLogReader.Read(WinSCP.LogReadFlags flags) Line 23 C#
WinSCPnet.dll!WinSCP.ElementLogReader.ReadToEnd(WinSCP.LogReadFlags flags) Line 73 C#
WinSCPnet.dll!WinSCP.ElementLogReader.Dispose() Line 32 C#
WinSCPnet.dll!WinSCP.SessionElementLogReader.Dispose() Line 17 C#
WinSCPnet.dll!WinSCP.Session.Cleanup() Line 1321 C#
WinSCPnet.dll!WinSCP.Session.Dispose() Line 185 C#
ReceiverCompressor.exe!ReceiverCompressor.MainWindow.downloadFiles() Line 284 C#
mscorlib.dll!System.Threading.ThreadHelper.ThreadStart_Context(object state) Unknown
mscorlib.dll!System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state, bool preserveSyncCtx) Unknown
mscorlib.dll!System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state, bool preserveSyncCtx) Unknown
mscorlib.dll!System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state) Unknown
mscorlib.dll!System.Threading.ThreadHelper.ThreadStart() Unknown