Hahaha! You are so right. He absolutely would.
I only think Sherlock is moderately horrible, though. Only about as horrible as the show wants us to think he is. There’s a difference between doing awful things and being an awful person.
Sherlock’s a mildly awful person. He thinks nothing of terrifying a witness just so she’ll talk faster, or getting engaged to a woman in order to break into Magnussen’s office, but he also truly cares for some people…and I think in a vague sort of sense he cares for people in general. No matter how cold he tried to act about it, he was shaken when an innocent woman was blown up (and it was, I believe, the moment when he became disenchanted with Moriarty; a criminal was fun to play with, but a careless killer not so much). He totally flipped when Mrs. Hudson was threatened. And I think that if he could go back in time, he would undo what he did to John.