You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

50 lines
1.2 KiB
C#

using System;
using System.Collections.Generic;
using DotNetCTFDumper.MMFParser.EXE;
using DotNetCTFDumper.Utils;
namespace DotNetCTFDumper.MMFParser.MFA.Loaders
{
public class ChunkList : DataLoader//This is used for MFA reading/writing
{
List<DataLoader> _items = new List<DataLoader>();
public byte[] Saved;
public override void Write(ByteWriter Writer)
{
if (Saved != null)
{
Writer.WriteBytes(Saved);
}
else
{
Writer.WriteInt8(0);
}
}
public override void Print()
{
throw new NotImplementedException();
}
public override void Read()
{
var start = Reader.Tell();
while(true)
{
var id = Reader.ReadByte();
if(id==0) break;
var data = new ByteReader(Reader.ReadBytes((int) Reader.ReadUInt32()));
}
var size = Reader.Tell() - start;
Reader.Seek(start);
Saved = Reader.ReadBytes((int) size);
}
public ChunkList(ByteReader reader) : base(reader) { }
}
}