I wish for you that I had more information. I recall seeing issues similar to this back in the ZC 1.5.5 days and I believe that they have been addressed in newer versions. Some of the associated issues were the "cancellation" of the order, potential digital or maybe it was downloadable or virtual product incorrectly setup, that in this loop the shipping address became otherwise set, etc...

All those (and perhaps more) being an issue, note that ZC 1.5.5 was written to support I think a max of php 7.0 if not php 5.6. The oldest version reported to support php 7.4 is the latest version of ZC 1.5.7c. Because of this, the php version alone may be the issue or some other logic that has been improved upon.