public void SngStreamRead_ValidData_True() { FileStream fs = new(Fixture.InputSngStream, FileMode.Open); BinaryReader reader = new(fs); SngData sng = SngData.Read(reader); fs.Close(); sng.Should().NotBeNull(); }
public void SngStreamWrite_ValidData_True() { FileStream fs = new(Fixture.InputSngStream, FileMode.Open); BinaryReader reader = new(fs); SngData sng = SngData.Read(reader); FileStream ofs = new(Fixture.OutputSngStream, FileMode.Create); BinaryWriter writer = new(ofs); sng.Write(writer); Fixture.CompareStreams(fs, ofs).Should().BeTrue(); }
public void Open(Stream fileStream, GamePlatform platform) { using MemoryStream decrypted = new(); using BinaryReader ebrDec = new(decrypted); Decrypt(fileStream, decrypted, GetEncodingKey(platform)); using MemoryStream output = new(); //unZip ushort xU = ebrDec.ReadUInt16(); decrypted.Position -= 2; if (xU == 0x78DA || xU == 0xDA78) //LE 55928 //BE 30938 { Archives.Unzip(decrypted, output, false); } output.Seek(0, SeekOrigin.Begin); Data = SngData.Read(new BinaryReader(output)); }