Используйте расширяемую строку
DWORD = dword: Расширяемая строка = hex(2): Multi String = hex(7):
DWORD - это 32-разрядное целое число без знака (в диапазоне от 0 до 4294967295 десятичное). В реестре DWORD всегда начинается с 0x. В реестре DWORDS всегда имеет 8 цифр, следующих за 0x. Это может быть в десятичном или шестнадцатеричном формате, 1000 может быть записано как: 0x00001000 или 0x000003e8
DWORDS может использовать только цифры 0-9. Любые строки всегда используют ASCII, в ACSII 1000 можно записать только как 31,30,30,30. Для типа данных String ASCII работает в фоновом режиме, даже не подозревая об этом. Это связано с тем, что компьютер понимает только 1 и 0. Для типов данных Expandable String и Multi String они сохраняют ваши записи в виде серии кодов ASCII в шестнадцатеричном формате, разделенных запятыми и шестнадцатеричными нулями. Таким образом, Расширяемая строка 1000 будет: hex(2): 31,00,30,00,30,00,30,00
Итак, давайте конвертируем% PROGRAMFILES% в расширяемую строку. Сначала загрузите это: https://hotfile.com/dl/244097278/55aa086/ASCII_2_HEX_Conversion_Tool.7z.html
Теперь откройте это в любом современном браузере. Поместите% PROGRAMFILES% в поле ASCII и выберите кодировать его. Это даст вам% 25% 50% 52% 4F% 47% 52% 41% 4D% 46% 49% 4C% 45% 53% 25 Скопируйте и вставьте это в текстовый редактор, переместите первые% в конец. Выберите команду замены, найдите все "%" и замените на ", 00,". Уберите запятую в самом конце. Вы должны получить: 25,00,50,00,52,00,4F, 00,47,00,52,00,41,00,4D, 00,46,00,49,00,4C, 00,45, 00,53,00,25,00 И, наконец, hex(2): 25,00,50,00,52,00,4F, 00,47,00,52,00,41,00,4D, 00,46 , 00,49,00,4C, 00,45,00,53,00,25,00
Готово.
Вы когда-нибудь пытались преобразовать любопытную шестнадцатеричную запись в реестре в ASCII и потерпели неудачу с треском. Этот урок содержит все знания, необходимые для обратного проектирования любой записи реестра с шестнадцатеричным кодом, которая не зашифрована. Повеселись!