public final byte[] readDataUntil(final int endPointer) {
        final int size = endPointer - aboffset;
        if (size == 0) {
            return null;
        }
        final byte[] data = new byte[size];
        readFully(data);
        return data;
    }
Read a size value and return a pointer to the end of a data section of that size

@return the pointer to the first byte after that section
main/src/main/java/cgeo/geocaching/brouter/util/ByteDataReader.java