public static ArchiveFileAr FromStream(Stream stream)
{
ArchiveFileAr file = new ArchiveFileAr();
byte[] buffer = new byte[Windows.Constants.IMAGE_ARCHIVE_START_SIZE];
stream.Read(buffer, 0, Windows.Constants.IMAGE_ARCHIVE_START_SIZE);
bool valid = Encoding.ASCII.GetString(buffer) == Windows.Constants.IMAGE_ARCHIVE_START;
if (!valid) throw new InvalidDataException("Not a valid archive file");
file.first.FromStream(stream);
file.second.FromStream(stream);
return file;
}