When RetroFE launches another program, it gets a "handle" from the OS that it can use to wait for that program to exit. While it's waiting for the program to exit, it doesn't do much, but when it detects the exit it logs that it's "Finished" and goes on doing its front-end stuff. From your log.txt, it's apparent that it detects an immediate exit of the program that it launched; the "Finished" log timestamp is the same as the one where it launched the program. As far as it knows, your game is over and it is doing what it's supposed to do. The crash is definitely not what it's supposed to do, but we'll have to figure out how to reproduce that in order to fix it.
Meanwhile, it may be possible to bypass the batch files and links altogether and just have RetroFE run the "typex_loader game.exe" line by itself. In your launcher config, try using typex_loader as the executable and the game.exe as the argument. You may need to experiment a bit with the command line and directory settings to make the loader happy, but I think there's likely to be a combination of settings that will work.