private ELFFile() { _header = new ELFHeader(); _sections = new List<ELFSection>(); }
internal void InternalRead(BinaryReader reader) { _header = new ELFHeader(reader); _sections = new List<ELFSection>(_header.e_shnum); if (_header.e_shoff != 0) { reader.Seek((long)_header.e_shoff, SeekOrigin.Begin); _sections[_header.e_shstrndx] = new ELFSection(reader, SizeFormat); for (int i = 0; i < _header.e_shnum; i++) { _sections.Add(new ELFSection(reader, SizeFormat)); } for (int i = 0; i < _header.e_shnum; i++) { _sections[i].GetNameFromStringTable(_sections[_header.e_shstrndx], reader); } } }