They happen in game and there seems to be no pattern, and no clues as to why.
However, today I found one possible reason, and made a fix
Even in UAW160 the maximum value for a TMod is 999. Many previous versions had even less, 256 being common.
However, in the "Tardata.dat" file each TMod value has two bytes.
Checking a file with a utility that I made I found a TMod value which was over 4000.
Every other value was OK, except this one, but I did not know which target it was.
The two bytes were 24 (Fuel dump) and 18 (Light AAA) but combined they amounted to 4632, which would cause a CTD.
The CTD would occur when a player approaches this target with TMod 4632 because there are no graphics files for TMod 4632 and the exe cannot display it.
A player could play dozens of missions which do not CTD because the rogue target is not in the area in which they fly, but as soon as they choose one that involves the rogue target then the CTD will happen
The utility gives me the ability to edit the file, and in this case use the 24 (Fuel dump) or the 18 (Light AAA), or set it to zero (NULL) .