PoFxNotifySurprisePowerOn
NTSTATUS __fastcall PoFxNotifySurprisePowerOn(INT64 a1){
INT64 v1;
_POP_FX_DEVICE *v2;
_POP_FX_DEVICE *v3;
__int64 v4;
v1 = a1;
if( a1 )
a1 = *(_QWORD *)(*(_QWORD *)(a1 + 312) + 40i64);
v2 = PopFxLockDevice((_DEVICE_NODE *)a1, 1u);
v3 = v2;
if( v2 )
{
PopPepSurprisePowerOn(*((PEPHANDLE **)v2 + 7));
if( _InterlockedExchangeAdd((volatile signed __int32 *)v3 + 61, 0xFFFFFFFF) == 1 )
LODWORD(v2) = KeSetEvent((PRKEVENT)((char *)v3 + 248), 0, 0);
if( v1 )
{
v2 = *(_POP_FX_DEVICE **)(v1 + 312);
v4 = *((_QWORD *)v2 + 5);
}
else
{
v4 = 0i64;
}
if( v4 )
{
LODWORD(v2) = *(_DWORD *)(v4 + 760);
if( ((unsigned int)v2 & 0x30000) != 0 )
LODWORD(v2) = PopDirectedDripsStartDisengageTimer(1i64);
}
}
return(int)v2;
}Referenced by:
No references.