SdbFindFirstNamedTag

UINT64 __stdcall SdbFindFirstNamedTag(_DB *pdb, UINT64 tiParent, UINT16 tToFind, UINT16 tName, WCHAR *pszName){
  unsigned int v5; 
  unsigned int v8; 
  unsigned int i; 
  unsigned int v11; 
  unsigned int FirstTag; 
  WCHAR *StringTagPtr; 

  v5 = 0;
  v8 = tiParent;
  for( i = SdbGetFirstChild(pdb, tiParent); ; i = SdbGetNextChild(pdb, v8, v11) )
  {
    v11 = i;
    if( !i )
      break;
    if( SdbGetTagFromTagID(pdb, i) == tToFind )
    {
      FirstTag = SdbFindFirstTag(pdb, v11, tName);
      if( FirstTag )
      {
        StringTagPtr = SdbGetStringTagPtr(pdb, FirstTag);
        if( !StringTagPtr )
        {
          AslLogCallPrintf(1ui64, (INT8 *)"SdbFindFirstNamedTag", 0x98ui64, (INT8 *)"Can't get the name string");
          return v5;
        }
        if( !wcsicmp(pszName, StringTagPtr) )
          return v11;
      }
    }
  }
  return v5;
}

Referenced by:

SdbQueryDataExTagID
SdbpSearchDB