I assumed this code was supposed to be what made the player "jump" out of harms way.

The mount_dy part seems to be being used to fling the player out of the vehicle sideways. As mount_dx, it didn't make any sense with "veh->face.dir + 90 * dsgn", which seems to be saying "jump out the side you are on". mount_dx gave whether the passenger was in the front or the back half of the vehicle. mount_dy gives whether the player is on the left or right side, determining which direction they jump. As it was before, the player was jumping left if they were in the back half, right if they were in the front half.

The speed affecting flinging distance thing doesn't make much sense if this is the player jumping out of the vehicle. If it had a forward component, sure it should add the vehicle's speed, but as it is (and as it was before) it's just flinging them sideways. Before this change, if the vehicle was moving, but not moving fast enough, the player would be flung less than one tile, not going anywhere at all, then getting squished. Always jumping 3 tiles out of the vehicle seems like a much more robust method.

I assume the code to fling the player in a crash is elsewhere, as this was previously all part of "game::examine()".