Geraldo Perdomo tallied two hits, including a home run, while Gabriel Moreno and Tommy Troy chipped in with long balls of their own as the Arizona Diamondbacks earned a 5-3 win over the Cincinnati Reds.