Писать конечно можно, это даст даже будет менее обнаруживаемо т.к. детектить интерпретатор нельзя, а нужно именно байткод.
Но для меню нужно перехватить отрисовку, которая скорее всего написана на C++ т.е. скомпилирована в X86, а C# имеет свою архитектуру, т.е. тут будут проблемы с любыми перехватами.