code: public BufferedImage createImage(File file) throws IOException {
  		resetAvailabilityFlags();
  		this.data = PELoader.loadPE(file);
  		image = new BufferedImage(fileWidth, height, IMAGE_TYPE);
  
  		drawSections();
  
  		Overlay overlay = new Overlay(data);
  		if (overlay.exists()) {
  			long overlayOffset = overlay.getOffset();
  			drawPixels(colorMap.get(OVERLAY), overlayOffset,
  					withMinLength(overlay.getSize()));
  			overlayAvailable = true;
  		}
  
  		drawPEHeaders();
  		drawSpecials();
  		drawResourceTypes();
  		assert image != null;
  		assert image.getWidth() == fileWidth;
  		assert image.getHeight() == height;
  		return image;
  	}
docs: Creates a buffered image that displays the structure of the PE file.
  
  @param file
  the PE file to create an image from
  @return buffered image
  @throws IOException
  if sections can not be read