.block { r @$t0=${$sharedata}; aS /x ${/v:@#NtMajorVersion} @@C++(((nt!_KUSER_SHARED_DATA *)@$t0)->NtMajorVersion); aS /x ${/v:@#NtMinorVersion} @@C++(((nt!_KUSER_SHARED_DATA *)@$t0)->NtMinorVersion); }
ad /q ${/v:$sharedata}
.catch { r @$t0 = 0; .foreach (${/v:$addr} {lm1m m nt}) { r @$t0 = ${$addr}; .leave; } }
.if ($vvalid(@$t0, 1)) { aS ${/v:@#DebugMode} 0; .foreach (${/v:$val} {.catch{? @eax}}) { .if ($scmp("${$val}", "\'@eax\'")==0) { aS ${/v:@#DebugMode} 1; } } } .else { aS ${/v:@#DebugMode} 2; }