PopInitializeHighPerfPowerRequest
NTSTATUS __stdcall PopInitializeHighPerfPowerRequest(){
int *v0;
__int64 v1;
int v2;
int KernelPowerRequest;
_COUNTED_REASON_CONTEXT Context;
_DIAGNOSTIC_CONTEXT *ReturnContext;
*(&stru_140C23628 + 558) = 275;
*(&stru_140C23628 + 271) = 8i64;
*(&stru_140C23628 + 282) = PpmHighPerfRequestExpiration;
v0 = PpmHighPerfDuration;
ReturnContext = 0i64;
*(&stru_140C23628 + 273) = (char *)&stru_140C23628 + 2176;
v1 = 4i64;
*(&stru_140C23628 + 272) = (char *)&stru_140C23628 + 2176;
*(&stru_140C23628 + 269) = 0i64;
*(&stru_140C23628 + 283) = 0i64;
*(&stru_140C23628 + 286) = 0i64;
*(&stru_140C23628 + 281) = 0i64;
*(&stru_140C23628 + 274) = 0i64;
*(&stru_140C23628 + 557) = 0;
*(&stru_140C23628 + 1112) = 0;
do
{
v2 = 300000;
if( (unsigned int)*v0 < 0x493E0 )
v2 = *v0;
*v0++ = v2;
--v1;
}
while( v1 );
Context.Version = 0;
Context.Flags = 1;
memset(&Context.ResourceFileName, 0, 32);
RtlInitUnicodeString(&Context.ResourceFileName, L"Power Manager");
KernelPowerRequest = PoCaptureReasonContext(&Context, 0, 0i64, 1u, 0i64, &ReturnContext);
if( KernelPowerRequest >= 0 )
{
KernelPowerRequest = PopCreateKernelPowerRequest((VOID **)&stru_140C23628 + 287, ReturnContext);
if( KernelPowerRequest < 0 )
PoDestroyReasonContext(ReturnContext);
}
return KernelPowerRequest;
}Referenced by:
PoInitSystem