@Override
		public void addEntry(int off32, int off64, String name, DataType dat) {
			int offset = is64Bit ? off64 : off32;
			if (offset < 0) {
				return;
			}
			Address addr = baseAddr.add(offset);
			DataType clone = dat.clone(dtManager);
			try {
				listing.createData(addr, clone);
				symbolTable.createLabel(addr, name, SourceType.ANALYSIS);
			}
			catch (CodeUnitInsertionException e) {
				Msg.warn(this, "Unable to insert TEB field: " + name);
			}
			catch (InvalidInputException e) {
				Msg.warn(this, "Unable to create TEB symbol name: " + name);
			}
		}
Create TEB fields as Symbols and CodeUnits on a MemoryBlock
Ghidra/Features/Base/src/main/java/ghidra/app/util/datatype/microsoft/ThreadEnvironmentBlock.java