reviler

noun
  1. a person who criticizes or speaks about someone or something in an abusive or scornful way

Examples