PnpInterfaceRaisePropertyChangeEventWorker

__int64 __fastcall PnpInterfaceRaisePropertyChangeEventWorker(
        __int64 a1,
        __int64 a2,
        __int64 a3,
        __int64 a4,
        __int64 a5,
        __int64 (__fastcall *a6)(__int64, __int64, __int64)){
  __int64 result; 
  __int64 *v9; 
  __int64 v10; 
  __int64 v11; 
  __int64 v12; 
  __int64 v13; 
  __int64 v14[2]; 
  __int64 v15; 
  v14[1] = a4;
  v14[0] = a3;
  v15 = a5;
  result = a6(a1, a2, 3i64);
  v9 = &qword_140001D08;
  v10 = 2i64;
  do
  {
    v11 = 0i64;
    if( *(_DWORD *)v9 )
    {
      while( 1 )
      {
        v12 = *(_QWORD *)(*(v9 - 1) + 8 * v11);
        if( *(_DWORD *)(a5 + 16) == *(_DWORD *)(v12 + 16) )
        {
          v13 = *(_QWORD *)a5 - *(_QWORD *)v12;
          if( *(_QWORD *)a5 == *(_QWORD *)v12 )
            v13 = *(_QWORD *)(a5 + 8) - *(_QWORD *)(v12 + 8);
          if( !v13 )
            break;
        }
        v11 = (unsigned int)(v11 + 1);
        if( (unsigned int)v11 >= *(_DWORD *)v9 )
          goto LABEL_5;
      }
      v15 = v9[1];
      result = ((__int64(__fastcall *)(__int64, __int64, __int64, __int64, __int64 *))a6)(a1, a2, 3i64, 4i64, v14);
    }
LABEL_5:
    v9 += 3;
    --v10;
  }
  while( v10 );
  return result;
}

Referenced by:

PnpObjectRaisePropertyChangeEvent