code: private void readTableBlock(int startIndex, int blockLength)
     {
        for (int index = startIndex; index < (startIndex + blockLength - 11); index++)
        {
           if (matchPattern(TABLE_BLOCK_PATTERNS, index))
           {
              int offset = index + 7;
              int nameLength = FastTrackUtility.getInt(m_buffer, offset);
              offset += 4;
              String name = new String(m_buffer, offset, nameLength, CharsetHelper.UTF16LE).toUpperCase();
              FastTrackTableType type = REQUIRED_TABLES.get(name);
              if (type != null)
              {
                 m_currentTable = new FastTrackTable(type, this);
                 m_tables.put(type, m_currentTable);
              }
              else
              {
                 m_currentTable = null;
              }
              m_currentFields.clear();
              break;
           }
        }
     }
docs: Read the name of a table and prepare to populate it with column data.
  
  @param startIndex start of the block
  @param blockLength length of the block