internal static ImageResourceDirectory FromReadingContext(ReadingContext context) { var reader = context.Reader; var directory = new ImageResourceDirectory { StartOffset = reader.Position, Characteristics = reader.ReadUInt32(), TimeDateStamp = reader.ReadUInt32(), MajorVersion = reader.ReadUInt16(), MinorVersion = reader.ReadUInt16(), }; var numberOfNamedEntries = reader.ReadUInt16(); var numberOfIdEntries = reader.ReadUInt16(); for (int i = 0; i < numberOfNamedEntries; i++) { directory.Entries.Add(ImageResourceDirectoryEntry.FromReadingContext(context)); } for (int i = 0; i < numberOfIdEntries; i++) { directory.Entries.Add(ImageResourceDirectoryEntry.FromReadingContext(context)); } return(directory); }