//0x1e0 bytes (sizeof)
struct _POP_POWER_ACTION
{
UCHAR Updates; //0x0
UCHAR State; //0x1
UCHAR Shutdown; //0x2
enum POWER_ACTION Action; //0x4
enum _SYSTEM_POWER_STATE LightestState; //0x8
ULONG Flags; //0xc
LONG Status; //0x10
enum POWER_POLICY_DEVICE_TYPE DeviceType; //0x14
ULONG DeviceTypeFlags; //0x18
struct _DIAGNOSTIC_BUFFER* RequestorInformation; //0x20
UCHAR IrpMinor; //0x28
UCHAR Waking; //0x29
enum _SYSTEM_POWER_STATE SystemState; //0x2c
enum _SYSTEM_POWER_STATE NextSystemState; //0x30
enum _SYSTEM_POWER_STATE EffectiveSystemState; //0x34
enum _SYSTEM_POWER_STATE CurrentSystemState; //0x38
struct _POP_SHUTDOWN_BUG_CHECK* ShutdownBugCode; //0x40
struct _POP_DEVICE_SYS_STATE* DevState; //0x48
struct _POP_HIBER_CONTEXT* HiberContext; //0x50
ULONGLONG WakeTime; //0x58
ULONGLONG SleepTime; //0x60
ULONGLONG WakeFirstUnattendedTime; //0x68
enum SYSTEM_POWER_CONDITION WakeAlarmSignaled; //0x70
struct
{
ULONGLONG RequestedTime; //0x78
ULONGLONG ProgrammedTime; //0x80
struct _DIAGNOSTIC_BUFFER* TimerInfo; //0x88
} WakeAlarm[3]; //0x78
UCHAR WakeAlarmPaused; //0xc0
ULONGLONG WakeAlarmLastTime; //0xc8
ULONGLONG DozeDeferralStartTime; //0xd0
struct SYSTEM_POWER_CAPABILITIES FilteredCapabilities; //0xd8
ULONGLONG WatchdogLock; //0x128
struct _KDPC WatchdogDpc; //0x130
struct _KTIMER WatchdogTimer; //0x170
UCHAR WatchdogInitialized; //0x1b0
enum _POP_POWER_ACTION_WATCHDOG_STATE WatchdogState; //0x1b4
ULONGLONG WatchdogStartTime; //0x1b8
ULONG WatchdogTimeout; //0x1c0
struct _KTHREAD* ActionWorkerThread; //0x1c8
struct _KTHREAD* PromoteActionWorkerThread; //0x1d0
struct _KTHREAD* UnlockAfterSleepWorkerThread; //0x1d8
};