UnityでC#のコードを書いた場合、どういう仕組みでiOSやAndroidで動いているのですか?

今までどのプラットフォームのmonoもフリーウエアとして公開されていると思い込んでいたため不思議に思っていませんでした
しかし、monoのiOS/Android版にあたるものはフリーで公開されていないと知って驚いています
Uniryは一体どのようにこの有料の壁を乗り越えて動いているのでしょうか?