CHICAGO -- The Arizona Diamondbacks slugged their way into first place in the NL West.
Rookie catcher Chris Snyder hit two of Arizona's season-high five homers, including his first career grand slam, and drove in five runs as the Diamondbacks beat the Cubs 13-6 Sunday.
Arizona took three of four games in Chicago, moving percentage points ahead of the slumping San Diego Padres in baseball's worst division.
Snyder, 24, a late-season callup last year, came into the game hitting .216 with 19 RBI in 79 games this season.
"It's good that he gets the fruits of his labor," Arizona manager Bob Melvin said. "Nobody works harder than he does."
Luis Gonzalez added a pair of solo homers and an RBI double for the Diamondbacks, who knocked out Greg Maddux by scoring nine runs in the fourth and fifth innings and matched their highest-scoring game of the season.
The Diamondbacks (52-55, .4859) have gone 8-6 since July 17, gaining 6½ games on the Padres (51-54, .4857), who have lost 12 of 13.
"This was a good series for us," Gonzalez said. "We could have very easily taken all four. We have two months to go. We know where San Diego is, we know where the Dodgers are. We haven't had a good run yet, this was a good start for us."
Brandon Webb (9-8) limited the Cubs to two runs and three hits in seven innings, walking two and striking out four. He had lost his last six decisions since beating the San Francisco Giants on June 23.
"We came out swinging the bats and that makes it a lot easier when you have that big of a lead," said Webb, who also got his first RBI of the season. "You can be aggressive and let them hit the ball and hopefully get themselves out, which I was pretty much able to do."
Chicago scored just 21 runs while going 3-4 on its homestand and made a move to improve its offense at the trading deadline, acquiring outfielder Matt Lawton from the Pittsburgh Pirates for outfielder Jody Gerut.
"We've been doing whatever we can to shore ourselves up," Cubs manager Dusty Baker said. "Matt's had some pretty good years and we hope he can come over here and rejuvenate our offense."
Maddux (8-8), who recorded his 3,000th strikeout in his last start, allowed just two baserunners before running into trouble in the fourth.
Gonzalez led off the inning with a homer onto Sheffield Ave. Tony Clark and Troy Glaus both singled and scored on Shawn Green's double to deep center -- with Glaus almost passing the slow-footed Clark going for home. Webb then came through with a two-out RBI single to left, scoring Green to make it 4-0.
Maddux left after allowing consecutive doubles to Chad Tracy and Gonzalez to start the fifth. Mike Remlinger entered and struck out two, but also walked two to load the bases for Snyder's homer to left, extending the Diamondbacks' lead to 9-1.
"He's done a fantastic job behind the plate," Gonzalez said of Snyder. "But for him to step up there and hit a grand slam, that was big for us."
Gonzalez came into the game hitting .305 lifetime against Maddux with nine home runs. He can't explain his success against the future Hall of Famer.
"I just go up there looking to see something up in the zone," Gonzalez said. "He's around the plate, that's where he has success from. You know you're going to get something to hit sooner than later."
Maddux gave up six runs and eight hits in his four-plus innings, throwing 68 pitches. He has lost his last two decisions.
"They hit my mistakes well," Maddux said. "I made plenty of them today and they took full advantage."
Arizona hit three more homers off Sergio Mitre. Gonzalez added a solo shot in the sixth and Snyder's fifth home run came in the seventh. Clark hit his 17th homer of the season in the eighth, a two-run shot.
Todd Walker singled and scored on Aramis Ramirez's sacrifice fly in the fourth and Michael Barrett tripled and scored on Jerry Hairston's groundout in the fifth. Walker and Derrek Lee added RBI singles in the four-run eighth.
Maddux got a standing ovation at the end of the second inning when he dove to field Royce Clayton's bunt near first base, flipping it to Lee for the third out as he landed on the ground. ... Chicago also scored 13 runs on June 26 against Detroit. ... Melvin batted Clark fourth and Glaus fifth. Glaus had hit fourth 93 times this season, Clark just three. ... It was Snyder's second career two-homer game, his first this season. ... The Cubs hadn't lost a series since dropping two in a row to Washington and Atlanta in the midst of an eight-game losing streak from July 1-7. ... Gerut started the game in left, going 0-for-2 to drop his average with the Cubs to .071 (1-for-14) before getting pulled for Todd Hollandsworth. ... The Cubs had an announced crowd of 39,285 to bring them over the 2 million mark, at 2,023,322 in 52 games. ... Kerry Wood pitched one inning of scoreless relief for Class-A Peoria on Sunday, allowing one hit with two strikeouts. ... This was Arizona's 10th five-homer game.