Просто хотел задать один вопрос о sub_100036C3, потому что я не получил подробный ответ, который был дан в книге .
Краткое вступление:
Page 107 Вопрос 11. Что делает экспорт PSLIST?
Страница 498. Ответ: Функция sub_100036C3 проверяет, является ли версия ОС Windows Vista / 7 или XP / 2003/2000.
Разобранный код:
![disassembled code](https://i.stack.imgur.com/zJsIL.png)
Мы видим инструкцию:
cmp [ebp+VersionInformation.dwMajorVersion], 5
jb short loc_100036FA
dwMajorVersion
- 5 для XP / 2003/2000 .
dwMajorVersion
равно 6 для Windows Vista / 7.
Но в инструкции с дизассемблированным кодом jb short loc_100036FA
не будет переходить к loc_100036FA, только если dwMajorversion> = 5 и будет переходить только если dwMajorVersion <5 (перейдите, если ниже). </p>
Так что, по моему мнению, его нельзя использовать для выбора между XP и Vista / 7, потому что все 5 и 6 попадают в красную стрелку.
Пожалуйста, кто-нибудь может объяснить, я прав или какую ошибку я сделал?