public static MDParsableItem determineItemAndParse(MDMang dmang) throws MDException {
		MDParsableItem myItem = null;

		dmang.setProcessingMode(ProcessingMode.DEFAULT_STANDARD);
		try {
			myItem = parse(dmang);
		}
		catch (MDException e1) {
			dmang.resetState();
			dmang.setProcessingMode(ProcessingMode.LLVM);
			try {
				myItem = parse(dmang);
			}
			catch (MDException e2) {
				throw new MDException(
					"Reason1: " + e1.getMessage().trim() + "; Reason2: " + e2.getMessage().trim());
			}
		}
		return myItem;
	}
This class parses the mangled string at the current offset to determine and
 create the appropriate type of <b><code>MDObject</code></b>.
Ghidra/Features/MicrosoftDmang/src/main/java/mdemangler/object/MDMangObjectParser.java