What are your formatsettings and what is the format in the database? I don't think they match which will explain the SIGFPE because the conversion will fail.
The solution is possibly to create a local copy of Tformatsettings and set the datetime formats to what the database expects.
I have encountered such things before, also with previous versions.
I can't test it since I do not write win32 code for some years. But the above is also valid for 64 bit if they indeed do not match the database.
A quick way to test is to use
https://www.freepascal.org/docs-html/rtl/sysutils/trystrtodatetime.html TryStrToDateTime instead of AsDateTime. That will not throw a SIGFPE but returns false if the conversion did not succeed.
Are you sure the format is in proper database order? (year month date hour minute seconds msec? not strictly necessary but good practice, depending on formatsettings) and do the Date and time separators match? (that is necessary)