private boolean createTryBlockMapEntries() throws CancelledException {
		monitor.setMessage("Creating TryBlockMap");
		monitor.checkCancelled();

		Address compAddress;
		Address tryBlockMapAddress;
		int tryBlockCount;
		try {
			compAddress = model.getComponentAddressOfTryBlockMapAddress();
			tryBlockMapAddress = model.getTryBlockMapAddress();
			tryBlockCount = model.getTryBlockCount();
		}
		catch (InvalidDataTypeException e) {
			throw new AssertException(e); // Shouldn't happen. create...() is only called if model is valid.
		}

		if (tryBlockMapAddress == null || tryBlockCount == 0) {
			return true; // No try block info to create.
		}

		EHTryBlockModel tryBlockModel;
		try {
			tryBlockModel = model.getTryBlockModel();
		}
		catch (InvalidDataTypeException e) {
			throw new AssertException(e); // Shouldn't happen. create...() is only called if model is valid.
		}
		try {
			tryBlockModel.validate();
		}
		catch (InvalidDataTypeException e1) {
			handleErrorMessage(model.getProgram(), tryBlockModel.getName(), tryBlockMapAddress,
				compAddress, e1);
			return false;
		}

		CreateEHTryBlockMapBackgroundCmd cmd =
			new CreateEHTryBlockMapBackgroundCmd(tryBlockModel, applyOptions);
		return cmd.applyTo(model.getProgram(), monitor);
	}
Constructs a command for applying a FuncInfo exception handling data type at the 
address indicated by the model.
@param funcInfoModel the model for the data type
@param applyOptions the options for creating the new data structure and its associated
markup in the program as well as whether to follow other data references and create their 
data too.
Ghidra/Features/MicrosoftCodeAnalyzer/src/main/java/ghidra/app/cmd/data/exceptionhandling/CreateEHFuncInfoBackgroundCmd.java