PiDevCfgLogDeviceMigrated

VOID __stdcall PiDevCfgLogDeviceMigrated(
        _PI_DEVCFG_DEVICE_CONTEXT *DeviceContext,
        _PI_DEVCFG_MIGRATION_NODE *MigrationNode,
        INT64 ResultStatus){
  int v3; 
  const wchar_t *v5; 
  __int64 v6; 
  const wchar_t *v7; 
  _PI_DEVCFG_MIGRATION_NODE *v8; 
  __int64 *v9; 
  __int64 v10; 
  _PI_DEVCFG_MIGRATION_NODE v11; 

  v3 = ResultStatus;
  if( (byte_140C130BA & 8) != 0 && (byte_140C130BA & 0x20) != 0 && (byte_140C130BA & 0x10) != 0 )
  {
    v5 = &word_14098BF74;
    if( v3 < 0 )
    {
      v6 = *((_QWORD *)MigrationNode + 19);
      v11 = MigrationNode[44];
      v10 = *((_QWORD *)MigrationNode + 23);
      v7 = (const wchar_t *)*((_QWORD *)MigrationNode + 4);
      if( (MigrationNode[4] & 3) != 0 )
      {
        if( v6 )
          v5 = (const wchar_t *)*((_QWORD *)MigrationNode + 19);
        v8 = MigrationNode + 20;
        v9 = KMPnPEvt_DeviceMigrate_Warning;
      }
      else
      {
        if( v6 )
          v5 = (const wchar_t *)*((_QWORD *)MigrationNode + 19);
        v8 = MigrationNode + 20;
        v9 = KMPnPEvt_DeviceMigrate_Failure;
      }
      McTemplateK0zzjzitd_EtwWriteTransfer(
        (__int64)v8,
        (const _EVENT_DESCRIPTOR *)v9,
        (__int64)v5,
        *((const wchar_t **)DeviceContext + 1),
        v7,
        (__int64)v8,
        v5,
        v10,
        v11,
        v3);
    }
    else
    {
      if( *((_QWORD *)MigrationNode + 19) )
        v5 = (const wchar_t *)*((_QWORD *)MigrationNode + 19);
      McTemplateK0zzjzitd_EtwWriteTransfer(
        (__int64)(MigrationNode + 20),
        (const _EVENT_DESCRIPTOR *)KMPnPEvt_DeviceMigrate_Success,
        (__int64)v5,
        *((const wchar_t **)DeviceContext + 1),
        *((const wchar_t **)MigrationNode + 4),
        (__int64)(MigrationNode + 20),
        v5,
        *((_QWORD *)MigrationNode + 23),
        MigrationNode[44],
        v3);
    }
  }
}

Referenced by:

PiDevCfgMigrateDevice