public byte next() throws MemoryAccessException {
		if (count == 0) {
			AddressRange range = addrSet.iterator().next();
			Address start = range.getMinAddress();
			long size = range.getLength();
			if (size > BUF_SIZE) {
				range = new AddressRangeImpl(start, start.add(BUF_SIZE - 1));
				size = BUF_SIZE;
			}
			count = (int) size;
			pos = 0;
			addrSet.delete(range);

			mem.getBytes(start, buf, 0, count);
		}
		count--;
		return buf[pos++];
	}
Returns the next byte.
@throws MemoryAccessException if the next byte could not be read
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/util/MemoryByteIterator.java