using System; using System.IO; using BestHTTP.PlatformSupport.FileSystem; using Cpp2IlInjected; namespace BestHTTP { // Token: 0x0200188D RID: 6285 [Token(Token = "0x200188D")] internal sealed class FileConnection : ConnectionBase { // Token: 0x06009315 RID: 37653 RVA: 0x001E1EFC File Offset: 0x001E00FC [Token(Token = "0x6009315")] [Address(RVA = "0x1714D10", Offset = "0x1713B10", VA = "0x181714D10")] public FileConnection(string serverAddress) : base(serverAddress) { } // Token: 0x06009316 RID: 37654 RVA: 0x001E1F10 File Offset: 0x001E0110 [Token(Token = "0x6009316")] [Address(RVA = "0x1714640", Offset = "0x1713440", VA = "0x181714640", Slot = "6")] internal override void Abort(HTTPConnectionStates newState) { /* An exception occurred when decompiling this method (06009316) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.FileConnection::Abort(BestHTTP.HTTPConnectionStates) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_1C: stloc:NotImplementedException(var_3_21, newobj:NotImplementedException(NotImplementedException::.ctor)) } at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88 --- End of inner exception stack trace --- at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1660 */; } // Token: 0x06009317 RID: 37655 RVA: 0x001E1F40 File Offset: 0x001E0140 [Token(Token = "0x6009317")] [Address(RVA = "0x17146D0", Offset = "0x17134D0", VA = "0x1817146D0", Slot = "7")] protected override void ThreadFunc(object param) { int num; HTTPRequest k__BackingField5; do { num = 0; IIOService ioservice = HTTPManager.IOService; HTTPRequest k__BackingField = this.k__BackingField; if (k__BackingField.k__BackingField) { } string localPath = k__BackingField.k__BackingField.LocalPath; num += num; num++; Stream[] array = new Stream[2]; MemoryStream memoryStream = new MemoryStream(); if (memoryStream != 0) { } array[0] = memoryStream; if (num != 0) { } array[1] = num; StreamList streamList = new StreamList(array); streamList.Write("HTTP/1.1 200 Ok\r\n"); streamList.Write("Content-Type: application/octet-stream\r\n"); string text2; string text = "Content-Length: " + text2 + "\r\n"; streamList.Write(text); streamList.Write("\r\n"); HTTPResponse httpresponse; this.k__BackingField.k__BackingField = httpresponse; this.k__BackingField.k__BackingField.Dispose(); this.k__BackingField.k__BackingField = num; if (streamList != 0) { } if (num != 0) { goto IL_1DE; } if (num != -1) { } num++; if (num != 0) { } if (num != 0) { goto IL_1E4; } if (num != -1) { } num++; HTTPRequest k__BackingField2 = this.k__BackingField; HTTPRequest k__BackingField3; if (k__BackingField2 != 0) { int num2 = 0; k__BackingField2.k__BackingField = num2; if (this.k__BackingField == HTTPConnectionStates.AbortRequested) { k__BackingField3 = this.k__BackingField; k__BackingField3.k__BackingField = (HTTPRequestStates)((ulong)5L); } } HTTPRequest k__BackingField4; if (k__BackingField3 == (ulong)8L) { k__BackingField4 = this.k__BackingField; k__BackingField4.k__BackingField = (HTTPRequestStates)((ulong)7L); } this.k__BackingField.k__BackingField = k__BackingField4; this.k__BackingField.k__BackingField = (HTTPRequestStates)((ulong)4L); this.k__BackingField = (HTTPConnectionStates)((ulong)9L); k__BackingField5 = this.k__BackingField; if (k__BackingField5.k__BackingField == HTTPRequestStates.Processing) { if (k__BackingField5.k__BackingField != (ulong)0L) { break; } k__BackingField5.k__BackingField = (HTTPRequestStates)((ulong)4L); } } while (num != 0); k__BackingField5.k__BackingField = (HTTPRequestStates)((ulong)3L); return; IL_1DE: throw new NullReferenceException(); IL_1E4: throw new NullReferenceException(); } } }