Из "внешней программы" невозможно впринципе, функции надо вызывать из адресного пространства клиента.
Скрин конкретной наработки:
![](http://s1.dump.ru/viewer/preview/biggest/1195607.jpg)
Перехватывает пакет хукая UGameEngine::OnSay2()
Отправляет пакет с Say2 через UNetworkHandler::Say2()
Код совместим со всеми клиентами имеющими те же имена экспортов в engine.dll и core.dll, т.е. не используются статические адреса и другие константы.