private List<ImageFunctionEntry> deserializePData(int streamNum) throws CancelledException {
		try {
			PdbByteReader reader = pdb.getReaderForStreamNumber(streamNum);
			List<ImageFunctionEntry> myPData = new ArrayList<>();
			int streamLength = reader.getLimit();
			RvaVaDebugHeader header = new RvaVaDebugHeader();
			header.deserialize(reader);
			//System.out.println(header.dump());
			if (header.getHeaderVersion() != 1) {
				return myPData; // Silent... TODO: add logging event.
			}
			long headerLength = header.getHeaderLength();
			long dataLength = header.getDataLength();
			if (headerLength + dataLength > streamLength) {
				throw new PdbException("Problem parsing Debug PData");
			}
			reader.setIndex((int) headerLength);
			//System.out.println(reader.dump());
			// TODO: current partial implementation does not work (throws exception)
			//  for ucrtbase.dll arm64.  Need to look at this closer.
//		while (reader.hasMore()) {
//			pdb.checkCancelled();
//			ImageFunctionEntry entry = new ImageFunctionEntry();
//			entry.deserialize(reader);
//			pData.add(entry);
//			long endPrologue = entry.getEndOfPrologueAddress();
//			// This is correct.  Using base from the XData header during this PData processing.
//			long base = xDataHeader.getRelativeVirtualAddressDataBase();
//			long index = endPrologue - base;
//			xDataReader.setIndex((int) index);
//			//System.out.println(xDataReader.dumpBytes(0x20));
//		}
			// TODO: More work possible.  See XData processing and notes there.  This is very
			//  incomplete.
			PdbDebugInfo debugInfo = pdb.getDebugInfo();
			if (debugInfo instanceof PdbNewDebugInfo) {
				//Processor target = pdb.getTargetProcessor();
				PdbNewDebugInfo dbi = (PdbNewDebugInfo) debugInfo;
				ImageFileMachine machine = dbi.getMachineType();
				switch (machine) {
					case IA64:
						break;
					case AMD64:
						break;
					default:
						break;
				}
			}
			return myPData;
		}
		catch (PdbException | IOException e) {
			PdbLog.message("Returning null Debug PData due to" +
				" problem during deserialization from stream" + streamNum + ": " + e.getMessage());
			return null;
		}

	}
See the {@link LinkerUnwindInfo} class that was built for and is pertinent to
 processing XData
Ghidra/Features/PDB/src/main/java/ghidra/app/util/bin/format/pdb2/pdbreader/DebugData.java