public static SymbolFileInfo fromSubdirectoryPath(String path, String uniqueSubdir) {
		try {
			if (MIN_SIG_HEX_STR_LEN < uniqueSubdir.length() &&
				uniqueSubdir.length() < GUID_HEX_STR_LEN) {
				int sig = Integer.parseUnsignedInt(uniqueSubdir.substring(0, 8), 16);
				int age = Integer.parseUnsignedInt(uniqueSubdir.substring(8), 16);

				return new SymbolFileInfo(path, new PdbIdentifiers(0, sig, age, null, null));
			}
			else if (uniqueSubdir.length() > GUID_HEX_STR_LEN) {
				String guidString = uniqueSubdir.substring(0, GUID_HEX_STR_LEN);
				GUID guid = new GUID(guidString);

				int age = Integer.parseUnsignedInt(uniqueSubdir.substring(GUID_HEX_STR_LEN), 16);

				return new SymbolFileInfo(path, new PdbIdentifiers(0, 0, age, guid, null));
			}

		}
		catch (IllegalArgumentException e) {
			// ignore
		}
		return null;
	}
Create a new {@link SymbolFileInfo} instance using information scraped from a pdb symbol
server subdir path.

@param path name of the pdb file
@param uniqueSubdir string that is a combo of 32_hexchar_GUID + age or 
8_hexchar_signature + age
@return new {@link SymbolFileInfo} instance, or null if invalid info in path
or subdir names
Ghidra/Features/PDB/src/main/java/pdb/symbolserver/SymbolFileInfo.java