private String[] getGUIDParts(String guidString) throws IllegalArgumentException {
		String[] results = new String[5];
		guidString = (guidString.startsWith("{") && guidString.endsWith("}"))
				? guidString.substring(1, guidString.length() - 1)
				: guidString;
		if (guidString.length() == 36 && guidString.charAt(8) == '-' &&
			guidString.charAt(13) == '-' && guidString.charAt(18) == '-' &&
			guidString.charAt(23) == '-') {
			results[0] = guidString.substring(0, 8);
			results[1] = guidString.substring(9, 13);
			results[2] = guidString.substring(14, 18);
			results[3] = guidString.substring(19, 23);
			results[4] = guidString.substring(24);
		}
		else if (guidString.length() == 32) {
			results[0] = guidString.substring(0, 8);
			results[1] = guidString.substring(8, 12);
			results[2] = guidString.substring(12, 16);
			results[3] = guidString.substring(16, 20);
			results[4] = guidString.substring(20);
		}
		else {
			throw new IllegalArgumentException("Invalid GUID string.");
		}
		return results;
	}
Creates a GUID object using the GUID string form.
@param guidString - either with or without dashes between parts - 
"6B29FC40-CA47-1067-B31D-00DD010662DA", or "6B29FC40CA471067B31D00DD010662DA", and
with or without leading and trailing "{" "}" characters
@throws IllegalArgumentException if string does not represent a valid GUID
Ghidra/Features/Base/src/main/java/ghidra/app/util/datatype/microsoft/GUID.java