public void Decompress(byte[] data, ref List <byte> decompressedData, int offset, out uint skipAhead) { uint proceedingDataLength = (uint)((data[offset] & 0x03)); skipAhead = proceedingDataLength; RefpackUtils.DecompressData(data, ref decompressedData, offset, Length, proceedingDataLength, 0, 0); }
public void Decompress(byte[] data, ref List <byte> decompressedData, int offset, out uint skipAhead) { var dataAtOffset = data[offset]; uint proceedingDataLength = (uint)(((dataAtOffset & 0x1F) + 1) << 2); skipAhead = proceedingDataLength; RefpackUtils.DecompressData(data, ref decompressedData, offset, Length, proceedingDataLength, 0, 0); }
public void Decompress(byte[] data, ref List <byte> decompressedData, int offset, out uint skipAhead) { uint proceedingDataLength = (uint)((data[offset] & 0x03)); uint referencedDataLength = (uint)(((data[offset] & 0x0C) << 6) + data[offset + 3] + 5); uint referencedDataDistance = (uint)(((data[offset] & 0x10) << 12) + (data[offset + 1] << 8) + data[offset + 2] + 1); skipAhead = proceedingDataLength; RefpackUtils.DecompressData(data, ref decompressedData, offset, Length, proceedingDataLength, referencedDataLength, referencedDataDistance); }