public override int Read(byte[] buffer, int offset, int count) { if (offset == 0) { return((int)_stream.Read(buffer, (uint)count)); } else { byte[] data = new byte[count]; int length = (int)_stream.Read(data, (uint)count); Array.Copy(data, 0, buffer, offset, length); return(length); } }