Disenchanter /(?)/

Dis·en·chant·er

Disenchanter

n.
  1. One who, or that which, disenchants.