Как я винду по-реверсерски чинил

Ваша винда не работает как хотелось бы? Все советы из поисковика перепробовали установили Linux, а оно всё равно не работает? Вы реверс-инженер или кто вообще, ну в самом деле!? Применим свои навыки владения отладчиком, поможем Шиндовс нормально (по мере её сил) работать!

На написание данной статьи меня подтолкнула злость. Злость на поделие от индусских говнокодеров под названием Windows, на то, что гугол выдаёт мне абсолютно нерабочие решения столетней давности. И вот, когда даже обновление до 11-й винды (с сохранением всех настроек и программ), а потом ещё и установка её же поверх себя не помогли, я решил, что нужно подойти с другой стороны — не как пользователь, а как реверс-инженер.

Суть проблемы

"Some settings are managed by your system administrator". Но я и есть администратор!
«Some settings are managed by your system administrator». Но я и есть администратор!

Как видно на картинке моя собственная система решила ограничить меня в возможностях конфигурирования параметров дисплея. Если вы попробуете загуглить данную строчку, вам выдадут тонну вариантов, среди которых: включение полной телеметрии, переустановка драйверов видеокарты, установка их в режиме совместимости с Windows 8 (!!!), перезапуск службы Windows Update, прикладывание горчичников к системному блоку… Как, ну скажите, как это должно вообще помогать? Очевидно, что оно и не помогло.

Источник проблемы

Я, если честно, без понятия. Не так давно винда мне стала предлагать опциональное обновление для моей AMD Radeon видеокарты, после установки которого центр управления Radeon Software взял и перестал видеть графическое устройство. Переустановка драйверов, множество ребутов вроде бы помогли, но, если бы всё закончилось хорошо, статьи бы не было.

Решение проблемы

Имея за плечами, какой-никакой опыт реверс-инжиниринга, я подумал: а почему не попробовать решить данную проблему иначе? Открыть отладчик, найти виновника, выяснить, что для него является триггером на выдачу сего сообщения, и изменить условие на противоположное (конечно, надежда на реестр).

В качестве отладчика я вооружился x64dbg. Процесс, который выводит окно настроек также быстро нашёлся:

Аттачусь к нему. Далее перехожу на вкладку Symbols, и загружаю pdb-файлы для процесса и всех загруженных в него DLL-ок. После этого присматриваюсь к их списку:

Выглядит как минимум интересно: "settingshandlers_display.dll"
Выглядит как минимум интересно: «settingshandlers_display.dll»

Обнаруживается эта интересная DLL, а заодно ещё и парочка других кандидатов на поиск в них причины моей проблемы:

Я решил пройтись по экспортам этих трёх библиотек и поискать что-нибудь со словами enable/disable:

Лишь в одной DLL-ке settings_handlers_pcdisplay.dll находятся интересные на мой взгляд функции: IsDisabledByGroupPolicy, IsDisabledByPolicy. Ставлю на них бряки, и пробую отобразить меню с той надписью про администратора:

Вуху! Бряк сработал.
Вуху! Бряк сработал.

Присмотревшись к имеющемуся коду, я вижу вызов одной странной функции:

Гугление данной функции приводит меня к данной странице, с которой есть ссылка на перечисление RESTRICTIONS, где, в свою очередь, находится значение 0x4000007B:

Так, погодите-ка! Кажется, я уже видел очень похожую строку в реестре, в разделе Policies (там я ранее как раз искал какой-нибудь параметр, который и мог приводить к проблеме):

Кто её туда записал я не знаю. Но, я уже догадывался, что удаление этого аргумента решит мою проблему:

Ура!
Ура!

Так и есть, всё заработало (после перезапуска процесса systemsettings.exe).

Выводы

Пора уже решать проблемы своей операционной системы самостоятельно! Особенно, если отладчики для вас софт не чуждый.

Всем спасибо.

Читайте так же:

  • Яндекс запустил «Быстрые ответы» в десктопной версииЯндекс запустил «Быстрые ответы» в десктопной версии Команда Яндекса сообщила, что «Быстрые ответы» теперь есть не только на смартфонах. Для некоторых поисковых запросов быстрые ответы теперь будут появляться и в десктопных браузерах. Пользователи смогут удобнее и быстрее находить больше информации без перехода на сайт-источник. Например, […]
  • Apple распрощается с Qualcomm в 2023 году, добавив в iPhone собственный модем 5GApple распрощается с Qualcomm в 2023 году, добавив в iPhone собственный модем 5G Аналитик Минг-Чи Куо (Ming-Chi Kuo) заявил, что Apple планирует использовать модем 5G собственной разработки. Начиная в моделях iPhone. Которые выйдут в 2023 году. Это означает, что через пару лет Apple больше не понадобятся услуги Qualcomm в этом направлении. Пока что поставщиком […]
  • Смартфоны Samsung получат уникальные экраны с плотностью 1000 пикселей на дюймСмартфоны Samsung получат уникальные экраны с плотностью 1000 пикселей на дюйм Сообщается, что Samsung Display работает над технологией оксидных тонкопленочных транзисторов (TFT) для OLED-панелей с плотностью 1000 пикселей на дюйм. Которые будут предназначаться для мобильных устройств. Компания, как утверждается, разрабатывает совершенно новую технологию TFT для […]
  • RAID-1 vs RAID-6 в мире розовых пони и вакуумаRAID-1 vs RAID-6 в мире розовых пони и вакуума Хорошо известноХорошо известно, что RAID-6[3] значительно медленнее RAID-1. Многие сейчас вдумчиво покачали головами, мол да, разумеется, в шестом пенальти на запись равно шести, а в десятом двум, это же в три раза меньше IOPSов. Некоторые даже вспомнят, что расчет двух четностей - […]