Как говорит Карл, это можно сделать, но вы открываете банку с червями. На практике единственные люди, которые пытаются это сделать, - это ученые или авторы вредоносных программ (теперь надевающий пламяустойчивый плащ).
Вы можете скопировать некоторый код в область кучи malloc, а затем вызвать его с помощью указателей функций, но в зависимости от ОС может потребоваться включить выполнение в сегменте. Вы можете попытаться скопировать некоторый код в сегмент кода (стараясь не перезаписать следующую функцию), но ОС, вероятно, сделала этот сегмент доступным только для чтения. Возможно, вы захотите взглянуть на ядро Linux и посмотреть, как оно загружает свои модули.