PiDevCfgLogDeviceMigrated
CHAR __fastcall PiDevCfgLogDeviceMigrated(INT64 a1, INT64 a2, INT64 a3){
CHAR result;
int v4;
const WCHAR *v6;
__int64 v7;
const WCHAR *v8;
INT64 v9;
const EVENT_DESCRIPTOR *v10;
__int64 v11;
int v12;
result = byte_140C130BA;
v4 = a3;
if( (byte_140C130BA & 8) != 0 && (byte_140C130BA & 0x20) != 0 && (byte_140C130BA & 0x10) != 0 )
{
v6 = &dword_14098BF74;
if( v4 < 0 )
{
v7 = *(_QWORD *)(a2 + 152);
v12 = *(_DWORD *)(a2 + 176);
v11 = *(_QWORD *)(a2 + 184);
v8 = *(const WCHAR **)(a2 + 32);
if( (*(_DWORD *)(a2 + 16) & 3) != 0 )
{
if( v7 )
v6 = *(const WCHAR **)(a2 + 152);
v9 = a2 + 80;
v10 = (const EVENT_DESCRIPTOR *)KMPnPEvt_DeviceMigrate_Warning;
}
else
{
if( v7 )
v6 = *(const WCHAR **)(a2 + 152);
v9 = a2 + 80;
v10 = &KMPnPEvt_DeviceMigrate_Failure;
}
return McTemplateK0zzjzitd_EtwWriteTransfer(
v9,
v10,
(INT64)v6,
*(const WCHAR **)(a1 + 8),
v8,
v9,
v6,
v11,
v12,
v4);
}
else
{
if( *(_QWORD *)(a2 + 152) )
v6 = *(const WCHAR **)(a2 + 152);
return McTemplateK0zzjzitd_EtwWriteTransfer(
a2 + 80,
(const EVENT_DESCRIPTOR *)KMPnPEvt_DeviceMigrate_Success,
(INT64)v6,
*(const WCHAR **)(a1 + 8),
*(const WCHAR **)(a2 + 32),
a2 + 80,
v6,
*(_QWORD *)(a2 + 184),
*(_DWORD *)(a2 + 176),
v4);
}
}
return result;
}Referenced by:
PiDevCfgMigrateDevice