PoFxNotifySurprisePowerOn
VOID __stdcall PoFxNotifySurprisePowerOn(DEVICE_OBJECT *Pdo){
DEVICE_OBJECT *v1;
__int64 v2;
__int64 v3;
__int64 v4;
v1 = Pdo;
if( Pdo )
Pdo = *(DEVICE_OBJECT **)(*((_QWORD *)Pdo + 39) + 40i64);
v2 = PopFxLockDevice((__int64)Pdo, 1);
v3 = v2;
if( v2 )
{
PopPepSurprisePowerOn(*(_QWORD *)(v2 + 56));
if( _InterlockedExchangeAdd((volatile signed __int32 *)(v3 + 244), 0xFFFFFFFF) == 1 )
KeSetEvent((PRKEVENT)(v3 + 248), 0);
if( v1 )
v4 = *(_QWORD *)(*((_QWORD *)v1 + 39) + 40i64);
else
v4 = 0i64;
if( v4 )
{
if( (*(_DWORD *)(v4 + 760) & 0x30000) != 0 )
PopDirectedDripsStartDisengageTimer(1i64);
}
}
}Referenced by:
No references.