CcUpdateDynamicRegistrySettings
VOID __fastcall CcUpdateDynamicRegistrySettings(){
__int64 v0;
char v1;
unsigned int v2;
unsigned int v3;
int v4;
int v5;
int v6;
signed __int32 RegKeyValue;
const char *v8;
const char *v9;
const char *v10;
const char *v11;
const char *v12;
const char *v13;
int v14;
char v15;
char v16;
char v17;
char v18;
char v19;
INT64 v20;
const wchar_t *v21;
const char *v22;
int v23;
UINT64 v24[3];
unsigned int v25;
LODWORD(v22) = 156;
v1 = 0;
v2 = 0;
v23 = 0;
v18 = 0;
v3 = 0;
v15 = 0;
v4 = 0;
v16 = 0;
v5 = 0;
v17 = 0;
v6 = 0;
v19 = 0;
DbgPrintEx(0x7Fu, 2u, "CcUpdateDynamicRegistrySettings: Updating Dynamic Registry Keys under: \"%wZ\"\n", v0 + 56);
v24[0] = 11141288i64;
v24[1] = (UINT64)L"\\Registry\\Machine\\System\\CurrentControlSet\\Control\\Session Manager\\Memory Management";
v20 = 2359330i64;
v21 = L"TopBottomDPTEqual";
if( (CcQueryRegKeyValue((UINT64)v24, (INT64)&v20) & 0x80000000) == 0 )
{
v2 = *(_DWORD *)((char *)&v24[2] + v25);
if( v2 < 3 )
v1 = 1;
}
LODWORD(v20) = 4063292;
v21 = L"LazyWriterPercentageOfNumProcs";
if( (CcQueryRegKeyValue((UINT64)v24, (INT64)&v20) & 0x80000000) == 0 )
{
v18 = 1;
v23 = *(_DWORD *)((char *)&v24[2] + v25);
}
LODWORD(v20) = 1966108;
v21 = L"LargeWriteSize";
if( (CcQueryRegKeyValue((UINT64)v24, (INT64)&v20) & 0x80000000) == 0 )
{
v15 = 1;
v3 = *(_DWORD *)((char *)&v24[2] + v25);
}
LODWORD(v20) = 3670070;
v21 = L"SoftThrottleLargeWriteAtPct";
if( (CcQueryRegKeyValue((UINT64)v24, (INT64)&v20) & 0x80000000) == 0 )
{
v16 = 1;
v4 = *(_DWORD *)((char *)&v24[2] + v25);
}
LODWORD(v20) = 2883626;
v21 = L"SoftThrottleDelayInMs";
if( (CcQueryRegKeyValue((UINT64)v24, (INT64)&v20) & 0x80000000) == 0 )
{
v17 = 1;
v5 = *(_DWORD *)((char *)&v24[2] + v25);
}
LODWORD(v20) = 2359330;
v21 = L"MaxLazyWritePages";
RegKeyValue = CcQueryRegKeyValue((UINT64)v24, (INT64)&v20);
v22 = "not found";
v8 = "valid";
if( RegKeyValue >= 0 )
{
v9 = "valid";
v19 = 1;
v6 = *(_DWORD *)((char *)&v24[2] + v25);
}
else
{
v9 = "not found";
}
v10 = "valid";
if( !v17 )
v10 = "not found";
v11 = "valid";
if( !v16 )
v11 = "not found";
v12 = "valid";
if( !v15 )
v12 = "not found";
v13 = "valid";
if( !v18 )
v13 = v22;
if( !v1 )
v8 = "not found";
DbgPrintEx(
0x7Fu,
2u,
"CcUpdateDynamicRegistrySettings: \n"
"\tTopBottom : 0x%04lx(%s)\n"
"\tLazyWriterPct : 0x%04lx(%s) (unsupported)\n"
"\tLargeWriteSize : 0x%04lx(%s)\n"
"\tSoftThrottleAt : 0x%04lx(%s)\n"
"\tSoftThrottleDelay : 0x%04lx(%s)\n"
"\tMaxLazyWritePages : 0x%04lx(%s)\n",
v2,
v8,
v23,
v13,
v3,
v12,
v4,
v11,
v5,
v10,
v6,
v9);
if( v1 )
CcAzure_TopBottomDPTEqual = v2;
if( v15 )
{
if( !v3 || (CcAzure_LargeWriteSize = v3 << 10, v3 << 10 <= v3) )
CcAzure_LargeWriteSize = 0;
}
if( v16 )
{
v14 = 0;
if( (unsigned int)(v4 - 1) <= 0x63 )
v14 = v4;
CcAzure_SoftThrottleLargeWriteAtPct = v14;
}
if( v17 && v5 )
CcSoftThrottleDelay = v5;
if( v19 )
{
if( (unsigned int)(v6 - 1) <= 0x7FFF )
CcMaxLazyWritePages = v6;
}
}Referenced by:
No references.