docs: @Override
      protected int readBytesWireFormat ( byte[] buffer, int bufferIndex ) throws SMBProtocolDecodingException {
          int start = bufferIndex;
          int structureSize = SMBUtil.readInt2(buffer, bufferIndex);
  
          if ( structureSize != 9 ) {
              throw new SMBProtocolDecodingException("Expected structureSize = 9");
          }
  
          int bufferOffset = SMBUtil.readInt2(buffer, bufferIndex + 2) + getHeaderStart();
          bufferIndex += 4;
          int bufferLength = SMBUtil.readInt4(buffer, bufferIndex);
          bufferIndex += 4;
  
          // bufferIndex = bufferOffset;
  
          List<FileEntry> infos = new ArrayList<>();
          do {
              FileBothDirectoryInfo cur = createFileInfo();
              if ( cur == null ) {
                  break;
              }
              cur.decode(buffer, bufferIndex, bufferLength);
              infos.add(cur);
              int nextEntryOffset = cur.getNextEntryOffset();
              if ( nextEntryOffset > 0 ) {
                  bufferIndex += nextEntryOffset;
              }
              else {
                  break;
              }
          }
          while ( bufferIndex < bufferOffset + bufferLength );
          this.results = infos.toArray(new FileEntry[infos.size()]);
          return bufferIndex - start;
      }