@Override
	public DataType toDataType() throws DuplicateNameException, IOException {
		Structure struct = new StructureDataType(new CategoryPath(PATH), header.getName(), 0);
		struct.add(BYTE, "Reserved", "Always 0");
		for (Map.Entry<Integer, CliBlob> entry : blobMap.entrySet()) {
			int index = entry.getKey();
			CliBlob blob = entry.getValue();
			struct.add(blob.getSizeDataType(), "Next string size", null);
			if (blob.getContentsSize() > 0) {
				if (blob.getContentsSize() - 1 > 0) {
					struct.add(UTF16, blob.getContentsSize() - 1,
						"[" + Integer.toHexString(index) + "]", null);
				}
				struct.add(BYTE, "Extra byte", "0x01 if string contains non-ASCII");
			}
		}
		return struct;
	}
Gets the user string at the given index.

@param index The index of the user string to get.
@return The user string at the given index.  Could be null if the index was invalid or
  there was a problem reading the user string.
Ghidra/Features/Base/src/main/java/ghidra/app/util/bin/format/pe/cli/streams/CliStreamUserStrings.java