code: func findDirectory64End(r io.ReaderAt, directoryEndOffset int64) (int64, error) {
  	locOffset := directoryEndOffset - directory64LocLen
  	if locOffset < 0 {
  		return -1, nil // no need to look for a header outside the file
  	}
  	buf := make([]byte, directory64LocLen)
  	if _, err := r.ReadAt(buf, locOffset); err != nil {
  		return -1, err
  	}
  	b := readBuf(buf)
  	if sig := b.uint32(); sig != directory64LocSignature {
  		return -1, nil
  	}
  	b = b[4:]       // skip number of the disk with the start of the zip64 end of central directory
  	p := b.uint64() // relative offset of the zip64 end of central directory record
  	return int64(p), nil
  }
docs: // findDirectory64End tries to read the zip64 locator just before the
  // directory end and returns the offset of the zip64 directory end if
  // found.