Irrespective of programming style or layout, the problem stems from the fact that one of the variables contains an invalid sprite reference.
Quote: "Sprite 68391680 does not exist at line 44 in xxx.agc"
Because of the way errors are reported, without seeing the entire code, we can't be sure that the line in the error (44) refers to the line shown as line 44 in the IDE. That's a whole other subject.
The best solution is the old-school one (so with 35+ years experience should be easy )
After each instruction, write a line to a log file, indicating which instruction just ran and what the sprite variables currently contain.
eg.
'Just ran: sID1 = GetContactSpriteID1(), sID1 = xxxx , sID2 = yyyy'
When the app fails, look at the log to see where the bogus number appears and you're golden.