private byte[] method_5(Interface61 A_0) { int num = 6; MemoryStream stream = new MemoryStream(); Stream12 stream2 = Stream12.smethod_2(); int num2 = this.method_6(A_0); int index = 0; int length = A_0.imethod_9().Length; while (true) { if (index >= length) { stream2.Flush(); if (stream2.Length > 0L) { long num1 = stream2.Length; stream2.method_17(stream); stream2.Close(); stream2.Dispose(); return(stream.ToArray()); } stream2.Close(); stream2.Dispose(); stream.Dispose(); return(null); } string str = A_0.imethod_9().GetValue(index).ToString(); if ((((str != BookmarkStart.b("愭尯圱", num)) && (str != BookmarkStart.b("⼫愭刯報紳堵帷唹", num))) && ((str != BookmarkStart.b("洭弯弱䐳礵娷倹", num)) && (str != BookmarkStart.b("⼫戭夯就弳缵嘷尹医", num)))) && (((str != BookmarkStart.b("愭尯圱Գص瘷嬹䠻圽㘿❁", num)) && (str != BookmarkStart.b("⼫欭怯怱紳砵氷", num))) && (str != BookmarkStart.b("⸫愭尯圱搳䐵崷䤹瀿", num)))) { Stream1 stream3 = A_0.imethod_0(str); if ((num2 == 1) || (str.ToLower() == BookmarkStart.b("簫伭匯失唳儵崷", num).ToLower())) { byte[] buffer = new byte[stream3.Length]; stream3.Read(buffer, 0, buffer.Length); stream3.Flush(); stream3.Close(); A_0.Dispose(); stream2.Close(); stream2.Dispose(); return(buffer); } stream2.method_15(stream3.method_0()); byte[] buffer2 = new byte[stream3.Length]; stream3.Read(buffer2, 0, buffer2.Length); stream2.Write(buffer2, 0, buffer2.Length); try { stream2.Flush(); } catch { } stream2.Close(); stream3.Close(); } index++; } }
private void method_21(Stream12 A_0, Stream A_1) { Class1004 class2 = new Class1004(A_1); string[] strArray = class2.Interface51.imethod_0().imethod_9(); int index = 0; int length = strArray.Length; while (true) { if (index >= length) { break; } Stream1 stream = class2.Interface51.imethod_0().imethod_0(strArray[index]); A_0.method_15(strArray[index]); byte[] buffer = new byte[stream.Length]; stream.Read(buffer, 0, buffer.Length); A_0.Write(buffer, 0, buffer.Length); try { A_0.Flush(); } catch { } A_0.Close(); stream.Close(); index++; } class2.System.IDisposable.Dispose(); }
internal void method_4(Interface61 A_0) { int num = 0x11; if (A_0.imethod_3(BookmarkStart.b("㘶瘸场堼", 0x11))) { Stream1 stream = A_0.imethod_0(BookmarkStart.b("㘶瘸场堼", num)); this.class365_0 = new Class365(stream); stream.Flush(); stream.Close(); } if (A_0.imethod_3(BookmarkStart.b("㐶瘸夺圼瘾⽀╂⩄", num))) { Stream1 stream2 = A_0.imethod_0(BookmarkStart.b("㐶瘸夺圼瘾⽀╂⩄", num)); this.class371_0 = new Class371(stream2); stream2.Flush(); stream2.Close(); } if (A_0.imethod_3(BookmarkStart.b("㘶稸吺值伾เ⅂⽄", num))) { Stream1 stream5 = A_0.imethod_0(BookmarkStart.b("㘶稸吺值伾เ⅂⽄", num)); this.class369_0 = new Class369(stream5); stream5.Flush(); stream5.Close(); } if (A_0.imethod_3(BookmarkStart.b("㐶甸刺匼吾ࡀⵂ⍄⡆", num))) { Stream1 stream4 = A_0.imethod_0(BookmarkStart.b("㐶甸刺匼吾ࡀⵂ⍄⡆", num)); this.class368_0 = new Class368(stream4); stream4.Flush(); stream4.Close(); } if (A_0.imethod_3(BookmarkStart.b("㘶瘸场堼煀ൂ⑄㍆⁈㵊⡌", num))) { Stream1 stream3 = A_0.imethod_0(BookmarkStart.b("㘶瘸场堼煀ൂ⑄㍆⁈㵊⡌", num)); byte[] buffer = new byte[stream3.Length]; stream3.Read(buffer, 0, buffer.Length); if (buffer.Length > 0) { if (this.method_1() == OleObjectType.Package) { this.byte_0 = this.method_7(buffer); } else { int num2 = 0; int num3 = Class364.smethod_1(buffer, ref num2); this.byte_0 = Class364.smethod_5(buffer, num3, ref num2); } } stream3.Flush(); stream3.Close(); } else { this.byte_0 = this.method_5(A_0); } }
private byte[] method_14(MemoryStream A_0, DocOleObject A_1, string A_2) { Class1004 class2 = new Class1004(A_0); Interface61 interface2 = class2.Interface51.imethod_0().imethod_5(BookmarkStart.b("愭刯報儳唵䰷樹医儽ⰿ", 8)); Class1004 class3 = new Class1004(); class3.Interface51.imethod_0().imethod_12(interface2); Interface61 interface3 = class3.Interface51.imethod_0().imethod_5(BookmarkStart.b("愭刯報儳唵䰷樹医儽ⰿ", 8)); if (interface2.imethod_7(A_2)) { interface3 = interface3.imethod_5(A_2); } else { interface3 = interface3.imethod_4(A_2); } class2.System.IDisposable.Dispose(); foreach (Class297 class5 in class3.Interface51.imethod_1().method_0()) { if (A_1.dictionary_0.ContainsKey(class5.method_0())) { class5.method_13(A_1.dictionary_0[class5.method_0()]); } } A_1.dictionary_0.Clear(); Class1004 class4 = new Class1004(A_1.stream_1); A_1.stream_1.Position = 0L; for (int i = 0; i < class4.Interface51.imethod_0().imethod_9().Length; i++) { Stream1 stream = class4.Interface51.imethod_0().imethod_0(class4.Interface51.imethod_0().imethod_9()[i]); Stream1 stream2 = interface3.imethod_2(class4.Interface51.imethod_0().imethod_9()[i]); stream.vmethod_0(stream2); stream2.Flush(); stream2.Close(); stream.Close(); } class4.System.IDisposable.Dispose(); class3.Interface51.imethod_2(); byte[] buffer = (class3.method_4() as MemoryStream).ToArray(); class3.System.IDisposable.Dispose(); return(buffer); }
public async Task Run(CancellationToken token) { CancellationTokenSource src = new CancellationTokenSource(); token.Register(() => src.Cancel()); bool teardown = false; Log.Debug("Pipe launched"); var netstr = Stream1.GetStream(); var nrstr = Stream2.Stream; Task x = await Task.WhenAny(netstr.CopyToAsync(nrstr, src.Token), nrstr.CopyToAsync(netstr, src.Token)); if (x.Exception != null) { Log.Error(x.Exception, "exception"); } await Task.Run(async() => { if (nrstr.IsOpen) { while (true) { if (!netstr.DataAvailable) { break; } } } }); src.Cancel(); /*var t1 = Task.Run(async () => * { * while (true) * { * // NR to Net * try * { * bool read = await Convert(nrstr, netstr, src.Token); * if (!read) throw new Exception("Closed"); * } * catch (Exception e) * { * Log.Error(e, "Exception while reading from NR"); * src.Cancel(); * break; * } * } * }, src.Token); * var t2 = Task.Run(async () => * { * while (true) * { * // Net to NR * try * { * bool read = await Convert(netstr, nrstr, src.Token); * if (!read) throw new Exception("Closed"); * * } * catch (Exception e) * { * Log.Error(e, "Exception while reading from Net"); * src.Cancel(); * break; * } * } * }, src.Token); * await t1; * await t2;*/ try { Log.Debug("Thread ended"); netstr.Close(); Stream1.Close(); await Stream2.Close(); } catch (Exception e) { Log.Error(e, "Error while cleaning up"); } }