code: public final long getUlong48() {
          if (position + 5 >= origin + limit) throw new IllegalArgumentException("limit excceed: "
                                                                                 + (position - origin + 5));
  
          byte[] buf = buffer;
          return ((long) (0xff & buf[position++])) | ((long) (0xff & buf[position++]) << 8)
                 | ((long) (0xff & buf[position++]) << 16) | ((long) (0xff & buf[position++]) << 24)
                 | ((long) (0xff & buf[position++]) << 32) | ((long) (0xff & buf[position++]) << 40);
      }
docs: Return next 48-bit unsigned long from buffer. (little-endian)
  
  @see mysql-5.1.60/include/my_global.h - uint6korr