xbox starts off completely retail, checks DVD drive. if no game, it loads C:\xboxdash.xbe
in a softmodded xbox, update.xbe (a file from somewhere else on the HD) is renamed and put in place of xboxdash.xbe so it is loaded at the start instead of the REAL xboxdash.xbe
the new xboxdash.xbe (really update.xbe) loads the fonts from the fonts folder. these are replaced with specially compiled fonts that cause a buffer memory overflow. after the kernel panic brought on by the overflow, the public key (the thing that makes sure executables are signed by the MS key) is patched to accept anything divisible by 3 (aka 'habibi').
it then points to a new executable (which must be signed with 'habibi'). at this point, usually a kernel patcher or biosloader is run so that anything can be loaded....and the rest is just history.