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