PopDiagTraceCsExitReason
char __fastcall PopDiagTraceCsExitReason(__int64 a1, __int64 a2){
__int64 v3;
__int64 v4;
__int64 v5;
unsigned __int8 v6;
unsigned int v7;
int v8;
int v9;
VOID **UserData;
int v11;
VOID **v12;
char v14;
char v15;
char v16;
char v17;
int v18;
int v19;
int v20;
_BOOL4 v21;
int v22;
int v23;
unsigned int v24;
int v25;
int v26;
int v27;
int v28;
int v29;
int v30;
int v31;
int v32;
int v33;
int v34;
int v35;
_BOOL4 v36;
int v37;
int v38;
unsigned int v39;
int v40;
int v41;
int v42;
int v43;
int v44;
int v45;
int v46;
__int64 v47;
__int64 v48;
__int64 v49;
__int64 v50;
__int64 v51;
__int64 v52;
__int64 v53;
__int64 v54;
__int64 v55;
__int64 v56;
__int64 v57;
__int64 v58;
__int64 v59;
__int64 v60;
__int64 v61;
__int64 v62;
UINT64 v63;
__int64 v64;
__int64 v65;
__int64 v66;
__int64 v67;
__int64 v68;
__int64 v69;
__int64 v70;
__int64 v71;
__int64 v72;
__int64 v73;
__int64 v74;
__int64 v75;
__int64 v76;
__int64 v77;
__int64 v78;
__int64 v79;
_EVENT_DATA_DESCRIPTOR v80;
UINT64 *v81;
__int64 v82;
int *v83;
__int64 v84;
__int64 *v85;
__int64 v86;
__int64 *v87;
__int64 v88;
__int64 *v89;
__int64 v90;
__int64 *v91;
__int64 v92;
__int64 *v93;
__int64 v94;
int *v95;
__int64 v96;
char *v97;
__int64 v98;
int *v99;
__int64 v100;
int *v101;
__int64 v102;
__int64 *v103;
__int64 v104;
__int64 *v105;
__int64 v106;
int *v107;
__int64 v108;
__int64 *v109;
__int64 v110;
__int64 *v111;
__int64 v112;
int *v113;
__int64 v114;
int *v115;
__int64 v116;
__int64 *v117;
__int64 v118;
int *v119;
__int64 v120;
int *v121;
__int64 v122;
int *v123;
__int64 v124;
int *v125;
__int64 v126;
int *v127;
__int64 v128;
int *v129;
__int64 v130;
__int64 *v131;
__int64 v132;
__int64 *v133;
__int64 v134;
__int64 *v135;
__int64 v136;
__int64 *v137;
__int64 v138;
__int64 *v139;
__int64 v140;
__int64 *v141;
__int64 v142;
char *v143;
__int64 v144;
char *v145;
__int64 v146;
__int64 v147;
v147 = a2;
v3 = *(_QWORD *)(a1 + 32);
v4 = *(_QWORD *)(a1 + 88);
v19 = *(_DWORD *)a1;
v50 = *(_QWORD *)(a1 + 40);
v47 = *(_QWORD *)(a1 + 48);
v20 = *(_DWORD *)(a1 + 56);
v49 = *(_QWORD *)(a1 + 64);
v48 = *(_QWORD *)(a1 + 72);
v53 = *(_QWORD *)(a1 + 96);
v56 = *(_QWORD *)(a1 + 104);
v57 = *(_QWORD *)(a1 + 80);
v5 = *(_QWORD *)(a1 + 128);
v6 = *(_BYTE *)(a1 + 124);
v54 = v5;
v14 = v6 >> 1;
v22 = *(_DWORD *)(a1 + 116);
v55 = *(_QWORD *)(a1 + 152);
v23 = v6 & 1;
v7 = *(unsigned __int8 *)(a1 + 125);
LOBYTE(v5) = *(_BYTE *)(a1 + 125);
v18 = 0;
v25 = v5 & 1;
v59 = *(_QWORD *)(a1 + 224);
v58 = *(_QWORD *)(a1 + 232);
v60 = *(_QWORD *)(a1 + 240);
v61 = *(_QWORD *)(a1 + 248);
v62 = *(_QWORD *)(a1 + 256);
v31 = *(_DWORD *)(a1 + 180);
v32 = *(_DWORD *)(a1 + 184);
v27 = (unsigned __int8)PopConsoleExternalDisplayConnected;
v26 = (unsigned __int8)PopLidOpened;
v33 = *(unsigned __int8 *)(a1 + 188);
v28 = *(_DWORD *)(a1 + 192);
v29 = *(_DWORD *)(a1 + 196);
v30 = *(_DWORD *)(a1 + 216);
v52 = v3;
v51 = v4;
v24 = (v7 >> 1) & 1;
if( !v3 )
{
v47 = 0i64;
v4 = 0i64;
v50 = 0i64;
v49 = 0i64;
v48 = 0i64;
v51 = 0i64;
}
v8 = *(_DWORD *)(a1 + 264);
v9 = *(_DWORD *)(a1 + 268);
LOBYTE(UserData) = v4 != 0;
v11 = 0;
v21 = v4 != 0;
if( PopDiagHandleRegistered )
{
LOBYTE(UserData) = EtwEventEnabled(PopDiagHandle, &POP_ETW_EVENT_CS_EXIT_REASON);
if( (_BYTE)UserData )
{
UserData = ExAllocatePoolWithTag(1ui64, 0x2E0ui64, 1346721364i64);
v12 = UserData;
if( UserData )
{
UserData[1] = (VOID *)4;
*UserData = &v19;
UserData[2] = &v47;
UserData[3] = (VOID *)8;
UserData[4] = &v48;
UserData[5] = (VOID *)8;
UserData[6] = &v49;
UserData[7] = (VOID *)8;
UserData[8] = &v50;
UserData[9] = (VOID *)8;
UserData[10] = &v52;
UserData[11] = (VOID *)8;
UserData[12] = &v20;
UserData[13] = (VOID *)4;
UserData[14] = &v14;
UserData[15] = (VOID *)1;
UserData[16] = &v21;
UserData[17] = (VOID *)4;
UserData[18] = &v22;
UserData[19] = (VOID *)4;
UserData[20] = &v51;
UserData[21] = (VOID *)8;
UserData[22] = &v53;
UserData[23] = (VOID *)8;
UserData[24] = &v23;
UserData[25] = (VOID *)4;
UserData[26] = &v54;
UserData[27] = (VOID *)8;
UserData[28] = &v55;
UserData[29] = (VOID *)8;
UserData[30] = &v24;
UserData[31] = (VOID *)4;
UserData[32] = &v25;
UserData[33] = (VOID *)4;
UserData[34] = &v56;
UserData[35] = (VOID *)8;
UserData[36] = &v31;
UserData[37] = (VOID *)4;
UserData[38] = &v32;
UserData[39] = (VOID *)4;
UserData[40] = &v26;
UserData[41] = (VOID *)4;
UserData[42] = &v27;
UserData[43] = (VOID *)4;
UserData[44] = &v147;
UserData[45] = (VOID *)1;
UserData[46] = &v33;
UserData[47] = (VOID *)4;
UserData[48] = &v28;
UserData[49] = (VOID *)4;
UserData[50] = &v29;
UserData[51] = (VOID *)4;
UserData[52] = &PopWnfCsEnterScenarioId;
UserData[53] = (VOID *)8;
UserData[55] = (VOID *)4;
UserData[54] = &KUSER_SHARED_DATA + 708;
UserData[57] = (VOID *)4;
UserData[56] = &v30;
UserData[59] = (VOID *)8;
UserData[58] = &v57;
UserData[60] = &v58;
UserData[61] = (VOID *)8;
UserData[62] = &v59;
UserData[63] = (VOID *)8;
UserData[64] = &v60;
UserData[65] = (VOID *)8;
UserData[66] = &v61;
UserData[67] = (VOID *)8;
UserData[68] = &v62;
UserData[69] = (VOID *)8;
v18 = *(unsigned __int8 *)(a1 + 272);
UserData[70] = &v18;
UserData[71] = (VOID *)4;
UserData[72] = (VOID *)(a1 + 288);
UserData[73] = (VOID *)4;
UserData[74] = (VOID *)(a1 + 292);
UserData[75] = (VOID *)4;
UserData[76] = (VOID *)(a1 + 280);
UserData[77] = (VOID *)8;
UserData[78] = (VOID *)(a1 + 312);
UserData[79] = (VOID *)4;
UserData[80] = (VOID *)(a1 + 316);
UserData[81] = (VOID *)4;
UserData[82] = (VOID *)(a1 + 304);
UserData[83] = (VOID *)8;
UserData[84] = (VOID *)(a1 + 296);
UserData[85] = (VOID *)4;
UserData[86] = (VOID *)(a1 + 300);
UserData[87] = (VOID *)4;
UserData[88] = (VOID *)(a1 + 320);
UserData[89] = (VOID *)4;
UserData[90] = (VOID *)(a1 + 324);
UserData[91] = (VOID *)4;
EtwWrite(PopDiagHandle, &POP_ETW_EVENT_CS_EXIT_REASON, 0, 0x2Eu, (PEVENT_DATA_DESCRIPTOR)UserData);
LOBYTE(UserData) = (unsigned __int8)ExFreePoolWithTag(v12, 0x50455654u);
}
else
{
v11 = -1073741670;
}
}
}
if( *(&stru_140C00F40 + 1194) > 5u )
{
LOBYTE(UserData) = tlgKeywordOn((__int64)&stru_140C00F40 + 4776, 0x400000000000i64);
if( (_BYTE)UserData )
{
v63 = PopWnfCsEnterScenarioId;
v81 = &v63;
v34 = v19;
v83 = &v34;
v64 = v47;
v85 = &v64;
v65 = v48;
v87 = &v65;
v66 = v49;
v89 = &v66;
v67 = v50;
v91 = &v67;
v68 = v52;
v93 = &v68;
v35 = v20;
v95 = &v35;
v15 = v14;
v97 = &v15;
v36 = v21;
v99 = (int *)&v36;
v37 = v22;
v101 = &v37;
v69 = v51;
v103 = &v69;
v70 = v53;
v105 = &v70;
v38 = v23;
v107 = &v38;
v71 = v54;
v109 = &v71;
v72 = v55;
v111 = &v72;
v82 = 8i64;
v84 = 4i64;
v86 = 8i64;
v88 = 8i64;
v90 = 8i64;
v92 = 8i64;
v94 = 8i64;
v96 = 4i64;
v98 = 1i64;
v100 = 4i64;
v102 = 4i64;
v104 = 8i64;
v106 = 8i64;
v108 = 4i64;
v110 = 8i64;
v112 = 8i64;
v39 = v24;
v113 = (int *)&v39;
v40 = v25;
v115 = &v40;
v73 = v56;
v117 = &v73;
v41 = v26;
v119 = &v41;
v42 = v27;
v121 = &v42;
v43 = v28;
v123 = &v43;
v44 = v29;
v125 = &v44;
v127 = &v45;
v46 = v30;
v129 = &v46;
v74 = v57;
v131 = &v74;
v75 = v58;
v133 = &v75;
v76 = v59;
v135 = &v76;
v77 = v60;
v137 = &v77;
v78 = v61;
v139 = &v78;
v79 = v62;
v141 = &v79;
v143 = &v16;
v145 = &v17;
v114 = 4i64;
v116 = 4i64;
v118 = 8i64;
v120 = 4i64;
v122 = 4i64;
v124 = 4i64;
v126 = 4i64;
v45 = v11;
v128 = 4i64;
v130 = 4i64;
v132 = 8i64;
v134 = 8i64;
v136 = 8i64;
v138 = 8i64;
v140 = 8i64;
v142 = 8i64;
v16 = v8;
v144 = 1i64;
v17 = v9;
v146 = 1i64;
LOBYTE(UserData) = tlgWriteTransfer_EtwWriteTransfer(
(__int64)&stru_140C00F40 + 4776,
(unsigned __int8 *)&word_14002787E,
0i64,
0i64,
0x23u,
&v80);
}
}
return(char)UserData;
}Referenced by:
PopCaptureSleepStudyStatistics