Well,
First off, all the fonts patch the kernel in mem. If you have Evox up, then it is not the kernel it expects to see... This may be cause that issue anyway.
Second off. The non-evox IGR, is done by the BIOS, not through SW.
Third, there is no such thing as a "child" process on the X. All other programs go bye bye when a new one is run. A program can have multiple threads, but not processes. When the XODash "returns" it is actually RUNNING the original, as there is no longer anything to return to!
As far as I am aware there is no way for a program to leave a "stub" in mem. I guess it could patch code into the XBE as it is loaded. But once loaded only that XBE would be able to execute. At least this is what all evidence points to.
I would assume that even the MS Dash maps D:\ to the application dir as XLaunchNewImage will NOT start an XBE that isn't mounted there, though it seems that EVOX has the ability to do so (damn I wish I could figure out how they did that, it would be SO useful!).
From examining the code, the only "footprint" the B&E leaves in memory is a corrupted signature key, the "font" signature. B&E may also patch the BIOS to get around the first gen media check.
But, all this being said, it may be a memory location issue. The BIOS may use a very different method to load a XBE that the XLaunchNewImage API. This may result in a vastly different memory structure.
Unfortunatly, I don't know how you would figure out the new memory areas that the exploit is dumping to.... Does the XDK have the ability to explore memory on the X just like VC can on the PC? If so it should be fairly simple. If not....
Oh, and as far as loading the dash off of F:\, it can't because the standard BIOS doesn't know there is an F:\
Morden.