Example #1
0
    public static byte[] Inflate(byte[] data)
    {
        byte[] buffer = data;

        byte[] decompressed = new byte[buffer.Length - 8];
        Buffer.BlockCopy(buffer, 8, decompressed, 0, decompressed.Length);

        buffer = PS2Zip.ZlibCodecDecompress(decompressed);
        return(buffer);
    }
Example #2
0
 // Non original, borrowed
 public byte[] DecryptBlock(BinaryStream bs, long offset, int length)
 {
     bs.ByteConverter = ByteConverter.Little;
     bs.BaseStream.Seek(offset, SeekOrigin.Begin);
     using (var decompressStream = new MemoryStream())
     {
         using (var decompressionStream = new DeflateStream(new MemoryStream(bs.ReadBytes(length)), CompressionMode.Decompress))
         {
             decompressionStream.CopyTo(decompressStream);
             return(PS2Zip.XorEncript(decompressStream.ToArray(), Volume.DataCryptKey));
         }
     }
 }