C++ полностью декомпилировать невозможно. Как минимум теряются имена.
Почитайте:
https://xakep.ru/2008/03/14/42769/
Однако производимый Il2CPP код должен как-то хотя бы частично поддерживать рефлексию. Так что с ним должно быть проще.
Но это нужно проводить исследования, изучать подробно Il2CPP. Ничего готового не встречал.
Правка:
Это вроде поддерживает декомпиляцию из IL2CPP:
http://devxdevelopment.com/UnityUnpacker