Here is how this could have happened on the 2002 BMW I used to own. I know the guts of that car particularly well, I am sure the Saturn is similar.
The mileage is actually stored in two places in the car. One place is the instrument cluster and the second is in the DME (the "computer"), both of those will count up the miles independently. If the cluster is replaced it will have an incorrect mileage, but you can use the scan tool to have the cluster updated to the "correct" mileage as stored in the computer.
My bet is that when you bought the car, it had a junkyard or tampered instrument cluster put in that showed an incorrect 23k reading while the car's computer retained the correct 91k reading.
When a battery fails it often generates lots of incorrect error codes because the low voltage confuses various sensors. So, after the battery was replaced the garage attached their scanner/programmer tool and fixed those errors.
One of the errors they fixed was correcting the incorrect cluster mileage using the mileage stored in the car's computer.
The garage did nothing wrong in all of this. If you want to find out who is responsible for the 65k of instant mileage and depreciation, you would needed to go back to the person who sold you the car and fraudulently misrepresented the mileage.
I'll include the same caveat as @Paulster2, if you bought this car new something much more interesting must have happened.