public void addInitializedMemorySection(MemoryLoadable key, long fileOffset, long numberOfBytes,
			Address startAddress, String sectionName, boolean isReadable, boolean isWritable,
			boolean isExecutable, String comment, boolean isFragmentationOK,
			boolean isLoadedSection) throws AddressOverflowException {
		if (sectionMemoryMap != null) {
			throw new IllegalStateException("already resolved");
		}
		sectionName = getUniqueSectionName(sectionName);
		MemorySection memorySection = new MemorySection(key, true, fileOffset, numberOfBytes,
			makeRange(startAddress, numberOfBytes), sectionName, isReadable, isWritable,
			isExecutable, comment, isFragmentationOK);
		if (isLoadedSection) {
			sections.add(memorySection);
		}
		else {
			// ensure that non-loaded sections are processed after loaded sections
			// by inserting them before the loaded sections 
			sections.add(nextNonLoadedSectionInsertionIndex++, memorySection);
		}
	}
Add initialized memory "section" based upon a specified data source fileOffset.
The last "section" defined will take precedence when resolving conflicts. Sections identified 
as loaded will take precedence over those that are non-loaded.
placed into memory  
@param key the loadable section key which corresponds to this memory "section"
@param fileOffset data source file offset.  It is assumed that all initialized
"sections" draw from a single data source.
@param numberOfBytes number of bytes within "section" 
@param startAddress desired physical start address of "section" (not overlay address)
@param sectionName name of "section" 
@param isReadable true if "section" has read privilege
@param isWritable true if "section" has write privilege
@param isExecutable true if "section" has execute privilege
@param comment section comment (used as basis for block comment)
@param isFragmentationOK if true this memory section may be fragmented due to 
@param isLoadedSection if true this memory section will take precedence over non-loaded sections
conflict/overlap with other memory sections of higher precedence.
@throws AddressOverflowException
Ghidra/Features/Base/src/main/java/ghidra/app/util/opinion/MemorySectionResolver.java