@Override
  public void read(DataInput stream) throws IOException {
    super.read(stream);
    if (mySectionHeaders == null) {
      return;
    }

    DWord sizeOfHeaders = myPeHeader.getImageOptionalHeader().getSizeOfHeaders();
    assert sizeOfHeaders.getValue() == mySectionHeaders.get(0).getPointerToRawData().getValue();

    mySections.clear();
    for (ImageSectionHeader sectionHeader : mySectionHeaders) {
      Section section = Section.newSection(sectionHeader, myImageOptionalHeader);
      mySections.add(section);
      section.read(stream);
    }
    resetOffsets(0);
  }
@Override
  public void read(DataInput stream)