protected long getRelocationBase() {
		List<SegmentCommand> segments = header.getLoadCommands(SegmentCommand.class);
		if (program.getDefaultPointerSize() == 8) {
			if ((header.getFlags() & MachHeaderFlags.MH_SPLIT_SEGS) != 0) {
				for (SegmentCommand segment : segments) {
					if (segment.isWrite()) {
						return segment.getVMaddress();
					}
				}
			}
		}
		SegmentCommand firstSegment = segments.get(0);
		return firstSegment.getVMaddress();
	}
{@return the relocation base. If the program is 64-bit (x86 or PowerPC), then return the VM 
address of the first segment with W bit. Otherwise, just return first segment VM address.}
Ghidra/Features/Base/src/main/java/ghidra/app/util/bin/format/macho/commands/dyld/AbstractClassicProcessor.java