PoFxEnableDStateReporting

INT64 __stdcall PoFxEnableDStateReporting(PDEVICE_OBJECT DeviceObject){
  POHANDLE__ **v1; 
  POHANDLE__ **Handle; 
  int v4; 
  INT64 result[10]; 
  _PO_FX_COMPONENT_V2 Components; 
  __int128 v8; 
  __int64 v9; 
  Handle = v1;
  if( DeviceObject && v1 )
  {
    memset((INT64)result, 0i64);
    Components.Providers = 0i64;
    v9 = 0i64;
    *(_OWORD *)&Components.Flags = 0i64;
    Components.IdleStateCount = 1;
    *(_QWORD *)&Components.ProviderCount = 0i64;
    Components.IdleStates = (PPO_FX_COMPONENT_IDLE_STATE)&v8;
    Components.Id = 0i64;
    v8 = 0i64;
    v4 = PopFxRegisterDevice(DeviceObject, (_POP_FX_DRIVER_CALLBACKS *)result, &Components, 1ui64, 0i64, 0i64, Handle);
    if( v4 >= 0 )
    {
      *((_DWORD *)*Handle + 206) |= 1u;
      PoFxStartDevicePowerManagement((POHANDLE *)*Handle);
    }
  }
  else
  {
    return(unsigned int)-1073741811;
  }
  return(unsigned int)v4;
}

Referenced by:

No references.