public override object Clone() { Class443 class443 = new Class443(); class443.CopyFrom(this); return((object)class443); }
public void CopyFrom(Class443 from) { this.CopyFrom((Class441)from); this.ulong_1 = from.ulong_1; this.ulong_2 = from.ulong_2; this.ulong_3 = from.ulong_3; this.ulong_4 = from.ulong_4; this.ulong_5 = from.ulong_5; this.ulong_6 = from.ulong_6; }
public abstract void Visit(Class443 c);
private unsafe void method_22( Class504 section, byte[] buffer, ulong position, ulong uncompressedLength) { Class443 class443 = new Class443(); class443.PageSize = section.MaxDecompressedPageSize; class443.DataOffset = position; class443.DecompressedSize = uncompressedLength; class443.CheckSum = (ulong)Class996.smethod_3((ulong)this.uint_0, buffer, (uint)position, (uint)uncompressedLength); Class746 class7461 = Class746.class746_1; MemoryStream memoryStream = new MemoryStream(); if (section.Compressed) { new Class955().method_1(buffer, (int)position, (int)uncompressedLength, (Stream)memoryStream); if (memoryStream.Length >= (long)uncompressedLength) { memoryStream = new MemoryStream(); memoryStream.Write(buffer, (int)position, (int)uncompressedLength); } } else { memoryStream.Write(buffer, (int)position, (int)uncompressedLength); } class443.CompressedSize = (ulong)memoryStream.Length; class443.Crc = Class656.class656_1.method_0(memoryStream.GetBuffer(), 0U, (uint)memoryStream.Length, Class656.smethod_0((ulong)this.uint_0, (uint)memoryStream.Length)); ulong num1 = (ulong)(memoryStream.Length + 8L - 1L & -8L); int num2 = (int)((ulong)((long)num1 + (long)class7461.K - 1L) / (ulong)class7461.K); byte[] data; if (section.Encoding == 4UL) { data = new byte[(long)num2 * (long)class7461.N]; int num3 = (int)((long)num1 - memoryStream.Length); for (int index = 0; index < num3; ++index) { memoryStream.WriteByte((byte)0); fixed(byte *destination = data) fixed(byte *source = memoryStream.GetBuffer()) this.method_28(destination, source, (int)memoryStream.Length, class7461); } else { if (section.Encoding != 1UL) { throw new Exception(); } uint num3 = (uint)(num1 - (ulong)memoryStream.Length); for (uint index = 0; index < num3; ++index) { memoryStream.WriteByte((byte)0); } data = new byte[num1 + (ulong)num2 * (ulong)(class7461.N - class7461.K)]; fixed(byte *dataBufferPtr = data) fixed(byte *sourcePtr = memoryStream.GetBuffer()) this.method_26(dataBufferPtr, dataBufferPtr + num1, sourcePtr, (int)memoryStream.Length, class7461); } this.method_23((Class441)class443, data, 0, data.Length); if (class443.Id > 0L) { ++section.PageCount; } section.Pages.Add(class443); }
public override void Visit(Class443 c) { }