If you're at all interested in digging through the Zork code yourself, you no longer need to know Z-machine assembly: the source code for most Infocom games was released/leaked a few years back, and is available here: https://github.com/historicalsource/
As I understand it, the thief doesn’t travel via room exits, but rather warps through the rooms sequentially in the order they’re listed in the code, skipping any that are sacred or non-land.
It's written in ZIL, which has a somewhat Lispy feel (for a bit of background, see another post by Plotkin here: http://blog.zarfhome.com/2019/04/what-is-zil-anyway.html). Infocom's own internal documentation for ZIL is here: https://archive.org/details/Learning_ZIL_Steven_Eric_Meretzk....