WmipStaticInstanceNameSize

UINT64 __stdcall WmipStaticInstanceNameSize(tagInstanceSet *InstanceSet){
  unsigned int v1; 
  tagInstanceSet v3; 
  tagInstanceSet v4; 
  __int64 v5; 
  _QWORD *v6; 
  __int64 v7; 
  __int64 v8; 

  v1 = InstanceSet[19];
  if( !v1 )
  {
    v3 = InstanceSet[18];
    v4 = InstanceSet[4];
    v1 = 4 * v3;
    if( (v4 & 1) != 0 )
    {
      v5 = -1i64;
      do
        ++v5;
      while( *(_WORD *)(*((_QWORD *)InstanceSet + 11) + 2 * v5 + 4) );
      v1 += 2 * v3 * (v5 + 8);
    }
    else if( (v4 & 2) != 0 && v3 )
    {
      v6 = (_QWORD *)*((_QWORD *)InstanceSet + 11);
      v7 = (unsigned int)InstanceSet[18];
      do
      {
        v8 = -1i64;
        do
          ++v8;
        while( *(_WORD *)(*v6 + 2 * v8) );
        ++v6;
        v1 += 2 * v8 + 4;
        --v7;
      }
      while( v7 );
    }
    InstanceSet[19] = v1;
  }
  return v1;
}

Referenced by:

WmipIncludeStaticNames
WmipInsertStaticNames
WmipQueryAllData