У меня почти есть ответ на мой последний вопрос , но мне нужна помощь.
Правила брандмауэра Windows (Vista и выше) хранятся в реестре HKLM\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\FirewallRules
Пример правила: v2.0|Action=Allow|Active=TRUE|Dir=Out|Protocol=6|Profile=Domain|RPort=5722|App=%SystemRoot%\system32\dfsr.exe|Svc=Dfsr|Name=@FirewallAPI.dll,-32257|Desc=@FirewallAPI.dll,-32260|EmbedCtxt=@FirewallAPI.dll,-32252|Edge=FALSE|
Поле, которое мне нужно декодировать: EmbedCtxt=@FirewallAPI.dll,-32252
Я думаю, что это ссылается на C:\WINDOWS\System32\FirewallAPI.dll
, но я не могу понять, как работает число. Размер файла ~ 400 КБ.
Я пробовал несколько вариантов, например, притворяясь, что это было без знака short
, притворяясь, что оно не было отрицательным, притворяясь, что оно было смещено от конца, но они не выглядели правильно, когда я прибыл в локацию с моим редактором шестнадцатеричных символов.
Может ли кто-нибудь дать мне свои идеи? Что может означать это число? Я почти ничего не знаю о файлах DLL. Это может быть даже номер раздела, который я знаю.
Я также пытался найти в тексте ожидаемый вывод, но, похоже, он не является ни байтом на символ, ни UTF-16, либо этим, либо я делаю что-то не так.