Two options you can try
1. enable "debug_log" in EECH.INI so all detected errors will be stored in text file. it is possible that some error will appear just before CTD, of 10-30 seconds before. but some errors are not critical but still appear in the list. as result you will get playable game with logging of most importatn events.
2. use DEBUG.EXE instead so very detailed log will be stored. also all detectable errors will became fatal so it's not really playable.
Quite often crash caused by poor code - some function receive unexpected value while such even is not escaped, code errors pop up in very specific situation etc. In this case the best thing you can do is share logs with some clue about this error.