PopCheckShutdownMarker

VOID __stdcall PopCheckShutdownMarker(_LOADER_PARAMETER_BLOCK *LoaderBlock, PVOID BootStatHandle){
  char v3; 
  char v4; 
  unsigned __int64 v5; 
  unsigned __int64 v6; 
  _POP_SLEEP_CHECKPOINT SleepCheckpoint; 
  UINT64 BootAppFailureStatus; 
  unsigned __int8 Value; 
  char v10; 
  bool v11; 
  int v12; 
  int v13; 
  int v14; 
  int v15; 
  int v16; 
  int v17[2]; 
  UINT64 ValueLength[2]; 
  struct _EVENT_DATA_DESCRIPTOR v19; 
  __int128 *v20; 
  __int64 v21; 
  int *v22; 
  __int64 v23; 
  int *v24; 
  __int64 v25; 
  __int128 *v26; 
  __int64 v27; 
  int *v28; 
  __int64 v29; 
  int *v30; 
  __int64 v31; 
  int *v32; 
  __int64 v33; 
  int *v34; 
  __int64 v35; 
  char *v36; 
  __int64 v37; 
  bool *v38; 
  __int64 v39; 
  INT64 a1[2]; 
  int v41; 
  int v42; 
  INT64 *v43; 
  int v44; 
  int v45; 
  INT64 *v46; 
  int v47; 
  LODWORD(a1[0]) = 14;
  a1[1] = (INT64)&PopBsdPhysicalPowerButtonInfo;
  Value = 0;
  v43 = &PopBsdPowerTransition;
  v41 = 48;
  v46 = &PopBsdPowerTransitionExtension;
  v42 = 7;
  v44 = 32;
  v45 = 16;
  v47 = 32;
  RtlGetSystemBootStatusEx((INT64)a1, 3ui64, 0i64);
  v3 = *(_BYTE *)(*((_QWORD *)LoaderBlock + 30) + 132i64) & 1;
  PopBsdPhysicalPowerButtonInfoAtBoot = *(_OWORD *)&PopBsdPhysicalPowerButtonInfo;
  PopLastBootSucceeded = v3;
  xmmword_140C54050 = xmmword_140C502A8;
  xmmword_140C54060 = xmmword_140C502B8;
  if( _mm_srli_si128(*(__m128i *)&PopBsdPhysicalPowerButtonInfo, 8).m128i_u32[0]
    && (unsigned int)dword_140C021E8 > 5
    && tlgKeywordOn((__int64)&dword_140C021E8, 0x200000000000i64) )
  {
    v20 = &PopBsdPhysicalPowerButtonInfoAtBoot;
    v13 = v5;
    v12 = WORD2(v5);
    v22 = &v12;
    v24 = &v13;
    v26 = &xmmword_140C54050;
    v14 = WORD6(xmmword_140C54050);
    v28 = &v14;
    v30 = &v15;
    v32 = &v16;
    v17[0] = BYTE6(v5);
    v34 = v17;
    v15 = v5;
    v6 = HIBYTE(v5);
    v10 = v6 & 1;
    v16 = HIWORD(*((_QWORD *)&xmmword_140C54050 + 1));
    v36 = &v10;
    v11 = (v6 & 2) != 0;
    v38 = &v11;
    v21 = 8i64;
    v23 = 4i64;
    v25 = 4i64;
    v27 = 8i64;
    v29 = 4i64;
    v31 = 4i64;
    v33 = 4i64;
    v35 = 4i64;
    v37 = 1i64;
    v39 = 1i64;
    tlgWriteTransfer_EtwWriteTransfer(
      (__int64)&dword_140C021E8,
      (unsigned __int8 *)&byte_140025E97,
      0i64,
      0i64,
      0xCu,
      &v19);
  }
  PopBsdPowerTransitionExtensionAtBoot = *(_OWORD *)&PopBsdPowerTransitionExtension;
  xmmword_140C540A0 = xmmword_140C50498;
  *(_OWORD *)&PopBsdPowerTransitionAtBoot = *(_OWORD *)&PopBsdPowerTransition;
  xmmword_140C54080 = *(_OWORD *)Buffer;
  if( (qword_140C19658 & 4) != 0 )
    *((_BYTE *)&PopBsdPowerTransitionAtBoot + 8) &= ~1u;
  if( (*(_WORD *)PopSimulate & 0x200) != 0 )
    *((_BYTE *)&PopBsdPowerTransitionAtBoot + 8) |= 1u;
  v4 = *((_BYTE *)&PopBsdPowerTransitionAtBoot + 14) & 0xDF;
  *((_BYTE *)&PopBsdPowerTransitionAtBoot + 14) &= ~0x20u;
  if( DWORD2(PopBsdPhysicalPowerButtonInfoAtBoot) && (HIBYTE(PopBsdPhysicalPowerButtonInfoAtBoot) & 4) != 0 )
  {
    *((_BYTE *)&PopBsdPowerTransitionAtBoot + 14) = v4 | 0x20;
    PopBsdPowerTransitionAtBoot = PopBsdPhysicalPowerButtonInfoAtBoot;
  }
  LODWORD(BootAppFailureStatus) = 0;
  PopAutoChkCausedReboot = (*((_BYTE *)&PopBsdPowerTransition + 14) & 0x10) != 0;
  ValueLength[1] = WNF_PO_PREVIOUS_SHUTDOWN_STATE;
  v17[1] = *(_BYTE *)(&PopBsdPowerTransitionAtBoot + 1) & 1;
  ZwUpdateWnfStateData();
  if( (*(_WORD *)PopSimulate & 0x400) != 0 )
  {
    *((_WORD *)&PopBsdPowerTransitionAtBoot + 6) = 1;
    *((_BYTE *)&PopBsdPowerTransitionAtBoot + 8) = *(_BYTE *)(&PopBsdPowerTransitionAtBoot + 1) & 0xF | 0x50;
  }
  if( (*(_DWORD *)PopSimulate & 0x20000000) != 0 )
  {
    *((_BYTE *)&PopBsdPowerTransitionAtBoot + 8) |= 2u;
    *((_QWORD *)&xmmword_140C540A0 + 1) = 1i64;
  }
  if( (*(_BYTE *)(&PopBsdPowerTransitionAtBoot + 1) & 1) != 0 )
  {
    LODWORD(ValueLength[0]) = 1;
    if( (int)ExGetFirmwareEnvironmentVariable(
                (_UNICODE_STRING *)&PopCheckpointSystemSleepVariable,
                (_GUID *)&SYSTEM_SLEEP_ETW_CHECKPOINT_GUID,
                &Value,
                ValueLength,
                0i64) < 0 )
    {
      SleepCheckpoint = BYTE2(PopBsdPowerTransitionExtensionAtBoot);
      BYTE1(PopBsdPowerTransitionExtensionAtBoot) = BYTE1(PopBsdPowerTransitionExtensionAtBoot) & 0xF3 | 8;
      PopRecordSleepCheckpointSource(2);
    }
    else
    {
      SleepCheckpoint = Value;
      BYTE2(PopBsdPowerTransitionExtensionAtBoot) = Value;
      BYTE1(PopBsdPowerTransitionExtensionAtBoot) = BYTE1(PopBsdPowerTransitionExtensionAtBoot) & 0xF3 | 4;
      PopRecordSleepCheckpoint(Value);
      PopRecordSleepCheckpointSource(1);
      PopClearSystemSleepCheckpoint();
    }
    PopDiagTraceDirtyTransition(
      LoaderBlock,
      (_SYSTEM_POWER_STATE)(*((unsigned __int8 *)&PopBsdPowerTransitionAtBoot + 8) >> 4),
      *((unsigned __int16 *)&PopBsdPowerTransitionAtBoot + 6),
      (*(_BYTE *)(&PopBsdPowerTransitionAtBoot + 1) & 2) != 0,
      BYTE8(xmmword_140C50498),
      PopBsdPowerTransitionAtBoot,
      BootAppFailureStatus,
      SleepCheckpoint);
  }
}

Referenced by:

PopProcessBootstat