SdbFindNextTag

__int64 __fastcall SdbFindNextTag(__int64 a1, unsigned int a2, unsigned int a3){
  unsigned int v4; 
  unsigned int v6; 
  __int16 TagFromTagID; 
  unsigned int NextChild; 
  v4 = a3;
  v6 = 0;
  TagFromTagID = SdbGetTagFromTagID(a1, a3);
  if( TagFromTagID )
  {
    while( 1 )
    {
      NextChild = SdbGetNextChild(a1, a2, v4);
      v4 = NextChild;
      if( !NextChild )
        break;
      if( (unsigned __int16)SdbGetTagFromTagID(a1, NextChild) == TagFromTagID )
        return v4;
    }
    return v6;
  }
  else
  {
    AslLogCallPrintf(1ui64, "SdbFindNextTag", 0x5Eui64, "Invalid tagid 0x%lx", v4);
    return 0i64;
  }
}

Referenced by:

InitOnceScanIndexes
KsepDbCacheReadDeviceInternal
KsepDbGetDriverShimsInternal