private void method_28() { int num2; Class1114 class2 = new Class1114(this.stream_0, true); MemoryStream stream = new MemoryStream(); byte[] buffer = new byte[0x1000]; int num = 0; while ((num2 = class2.method_18(buffer, 0, 0x1000)) > 0) { stream.Write(buffer, 0, num2); num += num2; } if (this.long_1 <= 0L) { this.long_1 = num; } if (this.bool_0) { this.stream_0.Close(); } this.bool_0 = true; this.stream_0 = stream; stream.SetLength(this.long_1); stream.Capacity = (int)this.long_1; if (this.bool_2) { this.method_35(stream.GetBuffer()); } this.stream_0.Position = 0L; }
internal byte[] method_9(byte[] A_0) { byte[] buffer2; try { int num; MemoryStream stream = new MemoryStream(A_0); Class1114 class2 = new Class1114(stream); MemoryStream stream2 = new MemoryStream(); byte[] buffer = new byte[0x1000]; goto Label_002B; Label_0021: stream2.Write(buffer, 0, num); Label_002B: num = class2.method_18(buffer, 0, buffer.Length); if (num > 0) { goto Label_0021; } stream.Close(); stream = null; buffer2 = stream2.ToArray(); stream2.Close(); stream2 = null; } catch { using (GZipStream stream3 = new GZipStream(new MemoryStream(A_0), CompressionMode.Decompress, true)) { byte[] buffer3 = new byte[0x1000]; using (MemoryStream stream4 = new MemoryStream()) { int count = 0; goto Label_0094; Label_007F: if (count > 0) { goto Label_0094; } goto Label_00AB; Label_0086: stream4.Write(buffer3, 0, count); goto Label_007F; Label_0094: count = stream3.Read(buffer3, 0, buffer3.Length); if (count <= 0) { goto Label_007F; } goto Label_0086; Label_00AB: buffer2 = stream4.ToArray(); } return(buffer2); } } return(buffer2); }