забыл упомянуть что программа сохраняет не "Registered=true", а сам сериал нумбер, который проверяется для создании экземпляра License при каждом запуске.
Весь код проверки вместе с publicKey и кодом License и всего связанного с ним лежит в отдельной сборке, в которую также складываются все ключевые базовые классы, часть кода сборки делается на нативном коде, сборка подписывается strong name, все остальные сборки также подписываются и все ссылаются на эту ключевую сборку по строгому имени...
Таким образом, для изменения publicKey необходимо декомпилировать и перекомпилить ключевую сборку, что приведет к необходимости декомпилировать и перекомпилить все сборки проекта, а отдекомпилить ключевую сборку проблематично, т.к. в ней юзается нативный код...
а без подстановки своего publicKey (для кот. известен privateKey) в эту ключевую сборку, подписать текст лицензии с настройками невозможно...
сам текст лицензии абракадабрируется только для того чтобы юзвери c длинным носом не пытались подменить чтото, т.к. это может повлечь шквал звонков в поддержку с проблемой восстановления работоспособности системы...

Тот кто говорит не знает, тот кто знает не говорит.