Я тут исходники RyujiNX поглядел, интересно стало. И что то как то не пойму, а как там с регистрами происходит работа.
С одной стороны AThreadState.cs, в котором определены все регистры, и над ними уже обертка в виде структуры ARegister через которую идут обращения. (Почему структура? мне казалось что раз структура находится в стеке то лучше как структуру определять ARegisters, но я похоже не знаю что то)
С другой стороны ChocolArm64.Instruction и ChocolArm64.Decoder которые я что то не вижу каким образом взаимодействуют с регистрами. от слова совсем.
То ли я слепой... Может кто нибудь пролить свет?