Хочешь сделать лаунчер, который будет запускать софт, при этом есть интернет?
Храни на сервере хэш от экзешника, который хочешь запускать, и каждый раз проверяй этот экзешник. Получить-передать пару десятков байт куда проще, чем каждый раз передавать весь код.
Опять же, запущенное приложение может перепроверять лаунчер при запуске.
Про денуво слышал? Самая мощная система защиты софта, которая обходится издателям в сотни тысяч баксов. И ее все равно ломают, так что...