@Override
	public ByteProvider getByteProvider(GFile file, TaskMonitor monitor)
			throws IOException, CancelledException {
		MachoFileSetEntry entry = fsIndex.getMetadata(file);
		if (entry == null) {
			return null;
		}
		try {
			if (entry.isBranchSegment()) {
				return MachoFileSetExtractor.extractSegment(fixedUpProvider,
					header.getSegment("__" + entry.id()), file.getFSRL(), monitor);
			}
			return MachoFileSetExtractor.extractFileSetEntry(fixedUpProvider, entry.offset(),
				file.getFSRL(), monitor);
		}
		catch (MachException e) {
			throw new IOException(
				"Invalid Mach-O header detected at 0x%x".formatted(entry.offset()));
		}
	}
Mounts this file system

@param monitor {@link TaskMonitor}
@throws IOException If there was an issue mounting the file system
@throws CancelledException If the user cancelled the operation
Ghidra/Features/FileFormats/src/main/java/ghidra/file/formats/ios/fileset/MachoFileSetFileSystem.java