Люто сложная задача. В Windows можно попробовать с помощью
CreateRemoteThread создать поток в адресном пространстве целевого процесса, с помощью
SetThreadContext напихать в регистры параметры функции, а потом выполнить переход на её адрес. Правда, адрес надо ещё как-то узнать. Ну, и подозреваю, что у любого антивирусника от этого случится истерика.