PopQueryPowerButtonBugcheckConfiguration
NTSTATUS __stdcall PopQueryPowerButtonBugcheckConfiguration(HANDLE KeyHandle){
_DWORD *v1;
WCHAR v2;
_DWORD *v3;
WCHAR v5;
NTSTATUS result;
ULONG ResultLength;
struct _UNICODE_STRING DestinationString;
struct _UNICODE_STRING ValueName;
__int128 KeyValueInformation;
int v11;
*v1 = 0;
v3 = v1;
ResultLength = 0;
v11 = 0;
DestinationString = 0i64;
ValueName = 0i64;
KeyValueInformation = 0i64;
RtlInitUnicodeString(&DestinationString, L"PowerButtonBugcheck", v2);
RtlInitUnicodeString(&ValueName, L"OneSettingPowerButtonBugcheck", v5);
result = ZwQueryValueKey(
KeyHandle,
&DestinationString,
KeyValuePartialInformation,
&KeyValueInformation,
0x14u,
&ResultLength);
if( result >= 0 && *(_QWORD *)((char *)&KeyValueInformation + 4) == 0x400000004i64 )
{
if( HIDWORD(KeyValueInformation) )
{
*v3 = 1;
dword_140C20730 = 2;
}
else
{
dword_140C20730 = 1;
}
}
else
{
result = ZwQueryValueKey(
KeyHandle,
&ValueName,
KeyValuePartialInformation,
&KeyValueInformation,
0x14u,
&ResultLength);
if( result >= 0 && *(_QWORD *)((char *)&KeyValueInformation + 4) == 0x400000004i64 )
{
if( HIDWORD(KeyValueInformation) )
{
*v3 = 1;
dword_140C20734 = 2;
}
else
{
dword_140C20734 = 1;
}
}
else
{
return -1073741823;
}
}
return result;
}Referenced by:
PopPowerButtonBugcheckConfigure