Description
Found by reactosfanboy.
If the key \\Registry\\MACHINE\\System\\CurrentControlSet\\Control\\SafeBoot
Option does not exist, none of the other keys is queried.
This is not wanted behavior.
Expected behavior:
RegOpenKey HKLM\System\CurrentControlSet\Control\SafeBoot\Option SUCCESS Desired Access: Query Value
|
RegQueryValue HKLM\System\CurrentControlSet\Control\SafeBoot\Option\OptionValue NAME NOT FOUND Length: 20
|
RegCloseKey HKLM\System\CurrentControlSet\Control\SafeBoot\Option SUCCESS
|
RegOpenKey HKLM\System\CurrentControlSet\Control\Session Manager\AppCompatibility SUCCESS Desired Access: Query Value
|
RegQueryValue HKLM\System\CurrentControlSet\Control\Session Manager\AppCompatibility\DisableAppCompat NAME NOT FOUND Length: 20
|
RegCloseKey HKLM\System\CurrentControlSet\Control\Session Manager\AppCompatibility SUCCESS
|
RegOpenKey HKLM\Software\Policies\Microsoft\Windows\AppCompat SUCCESS Desired Access: Query Value
|
RegQueryValue HKLM\SOFTWARE\Policies\Microsoft\Windows\AppCompat\DisableEngine NAME NOT FOUND Length: 20
|
RegCloseKey HKLM\SOFTWARE\Policies\Microsoft\Windows\AppCompat SUCCESS
|
And when the keys do not exist:
RegOpenKey HKLM\System\CurrentControlSet\Control\SafeBoot\Option NAME NOT FOUND Desired Access: Query Value
|
RegOpenKey HKLM\System\CurrentControlSet\Control\Session Manager\AppCompatibility NAME NOT FOUND Desired Access: Query Value
|
RegOpenKey HKLM\Software\Policies\Microsoft\Windows\AppCompat NAME NOT FOUND Desired Access: Query Value
|
Next key check is only skipped if the previous key sets it to disabled.