public Decompress ( byte Data ) : byte[] | ||
Data | byte | The data to decompress. |
return | byte[] |
private Stream Decompress(FAR3Entry Entry) { m_Reader.ReadBytes(9); uint CompressedSize = m_Reader.ReadUInt32(); ushort CompressionID = m_Reader.ReadUShort(); if (CompressionID == 0xFB10) { byte[] Dummy = m_Reader.ReadBytes(3); uint DecompressedSize = (uint)((Dummy[0] << 0x10) | (Dummy[1] << 0x08) | +Dummy[2]); Decompresser Dec = new Decompresser(); Dec.CompressedSize = CompressedSize; Dec.DecompressedSize = DecompressedSize; byte[] DecompressedData = Dec.Decompress(m_Reader.ReadBytes((int)CompressedSize)); MemoryStream MemStream = new MemoryStream(DecompressedData); MemStream.Seek(0, SeekOrigin.Begin); return(MemStream); } else { m_Reader.Seek(m_Reader.Position - 15); return(new MemoryStream(m_Reader.ReadBytes((int)Entry.DecompressedDataSize))); } }
private Stream Decompress(FAR3Entry Entry) { m_Reader.ReadBytes(9); uint CompressedSize = m_Reader.ReadUInt32(); ushort CompressionID = m_Reader.ReadUShort(); if (CompressionID == 0xFB10) { byte[] Dummy = m_Reader.ReadBytes(3); uint DecompressedSize = (uint)((Dummy[0] << 0x10) | (Dummy[1] << 0x08) | +Dummy[2]); Decompresser Dec = new Decompresser(); Dec.CompressedSize = CompressedSize; Dec.DecompressedSize = DecompressedSize; byte[] DecompressedData = Dec.Decompress(m_Reader.ReadBytes((int)CompressedSize)); MemoryStream MemStream = new MemoryStream(DecompressedData); MemStream.Seek(0, SeekOrigin.Begin); return MemStream; } else { m_Reader.Seek(m_Reader.Position - 15); return new MemoryStream(m_Reader.ReadBytes((int)Entry.DecompressedDataSize)); } }