PnpDeleteObject
NTSTATUS __fastcall PnpDeleteObject(INT64 a1, INT64 a2, UINT64 a3){
HPNPCTX *v3;
unsigned int v5;
__int64(__fastcall *v6)(HPNPCTX *, INT64, _QWORD, __int64, int, INT64 *);
int v7;
NTSTATUS v8;
NTSTATUS v9;
int v10;
int v11;
NTSTATUS v12;
INT64 v14[10];
v3 = (HPNPCTX *)*(&stru_140CF2E80 + 607);
v5 = a3;
memset(v14, 0i64, sizeof(v14));
v6 = *(__int64(__fastcall **)(HPNPCTX *, INT64, _QWORD, __int64, int, INT64 *))(*(&stru_140CF2E80 + 607) + 488i64);
if( v6 )
{
v7 = v6((HPNPCTX *)*(&stru_140CF2E80 + 607), a2, v5, 4i64, 1, v14);
if( v7 == -1073741822 )
{
v6 = 0i64;
}
else
{
if( v7 == -1073741536 )
return v14[0];
if( v7 )
return -1073741595;
}
}
v8 = PnpDeleteObjectDispatch(v3, (WCHAR *)a2, v5, LODWORD(v14[2]));
v9 = v8;
if( !v6 )
return v9;
LODWORD(v14[0]) = v8;
v10 = v6(v3, a2, v5, 4i64, 2, v14);
v11 = v10;
if( v10 == -1073741822 )
return v9;
if( v10 == -1073741536 )
return v14[0];
v12 = v9;
if( v11 )
return -1073741595;
return v12;
}Referenced by:
PiCMDeleteObject