Graeme McDowell birdied his final hole to take a one-shot lead after the third round at the Saudi International in King Abdullah Economic City on Saturday.
After a difficult front nine, McDowell rolled in three straight birdies on the 12th, 13th and 14th before finishing in style with another on the par-four 18th.
The Northern Irishman, who last won on the European Tour in 2014, signed for a four-under-par 66 to take him to 12 under overall, one shot clear of France's Victor Dubuisson.
“The putter has been ice cold over the last couple of days but it heated up a bit on the back nine,” McDowell said. “It was really pleasing to get a few birdies there because I think the back nine has played difficult.
“I’m going to have to putt well to have a chance tomorrow. I keep an eye out for Victor, and it’s nice to see him up there on the leaderboard.”
Dubuisson carded a bogey-free 65, with gains on the first three holes before adding two more on the back nine.
Overnight leader Gavin Green lost momentum after dropping strokes on 14th and 15th but remained in contention for a maiden European Tour title at nine-under.
Defending champion Dustin Johnson is tied fourth on seven-under after a second consecutive round of 68, which included five birdies and three bogeys.
World number one Brooks Koepka fired a 65 at Royal Greens Golf and Country Club for his best competitive round since shooting the same score in the final round of the World Golf Championships-FedEx St Jude Invitational in July.
It was a huge stride forward for the four-times Major champion, who is playing only his second tournament since recovering from a knee injury sustained in October.
Koepka sits six shots off the lead in seventh spot alongside fellow American Phil Mickelson and Belgium's Thomas Detry.
Shane Lowry birdied the last two holes to card a level-par 70 and he remains on four under for the tournament.
LEADERBOARD
British and Irish unless stated, par 70
198 Graeme McDowell 64 68 66
199 Victor Dubuisson (Fra) 69 65 65
201 Gavin Green (Mal) 64 67 70
203 Dustin Johnson (USA) 67 68 68, Victor Perez (Fra) 65 65 73, Renato Paratore (Ita) 68 65 70
204 Phil Mickelson (USA) 66 70 68, Brooks Koepka (USA) 70 69 65, Thomas Detry (Bel) 73 66 65
205 Ross Fisher 66 68 71, Ashun Wu (Chn) 71 66 68, Ian Poulter 72 68 65, Jordan Smith 71 67 67, Grant Forrest 73 66 66, Henrik Stenson (Swe) 65 70 70
206 Adri Arnaus (Esp) 65 74 67, Abraham Ancer (Mex) 69 70 67, Shane Lowry 69 67 70, Matthieu Pavon (Fra) 68 71 67, Thomas Pieters (Bel) 70 67 69
207 Dean Burmester (Rsa) 71 68 68, Sergio Garcia (Esp) 69 68 70, Francesco Laporta (Ita) 67 68 72, Jhonattan Vegas (Ven) 65 71 71, Benjamin Hebert (Fra) 71 69 67, Matthias Schwab (Aut) 69 72 66
208 Justin Harding (Rsa) 68 73 67, Maximilian Kieffer (Ger) 70 71 67, Alexander Bjork (Swe) 68 69 71, David Howell 68 69 71, Adrian Meronk (Pol) 68 70 70, Richard McEvoy 69 68 71, Aaron Rai 66 71 71, Christiaan Bezuidenhout (Rsa) 68 73 67, Sean Crocker (USA) 68 68 72, Adrian Otaegui (Esp) 69 71 68
209 Soren Kjeldsen (Den) 67 69 73, Matt Wallace 70 68 71, Richie Ramsay 70 70 69, Nicolas Colsaerts (Bel) 69 69 71, Ashley Chesters 73 67 69, Jeff Winther (Den) 69 68 72, Connor Syme 69 71 69, Fabrizio Zanotti (Pry) 68 72 69, Antoine Rozner (Fra) 72 68 69, Alexander Levy (Fra) 69 70 70
210 Steven Brown 71 70 69, Sebastian Heisele (Ger) 70 69 71, Joost Luiten (Ned) 67 72 71, Ryan Fox (Nzl) 66 75 69, Martin Kaymer (Ger) 73 64 73, James Morrison 69 68 73, Jazz Janewattananond (Tha) 68 66 76, Lucas Herbert (Aus) 67 71 72, Andy Sullivan 66 71 73, Sebastian Soderberg (Swe) 65 73 72, Nacho Elvira (Esp) 72 66 72
211 Kalle Samooja (Fin) 72 68 71, Pablo Larrazabal (Esp) 69 68 74, Scott Jamieson 73 67 71, Haotong Li (Chn) 70 71 70, Maverick Antcliff (Aus) 70 69 72, Stephen Gallacher 70 71 70, Ernie Els (Rsa) 72 69 70, Justin Walters (Rsa) 71 65 75, Jack Senior 71 69 71, Lorenzo Gagli (Ita) 73 66 72
212 Haydn Porteous (Rsa) 72 67 73, Gaganjeet Bhullar (Ind) 74 67 71, Rafael Cabrera-Bello (Esp) 69 70 73, Masahiro Kawamura (Jpn) 73 68 71, Edoardo Molinari (Ita) 71 69 72
213 Marcus Kinhult (Swe) 67 68 78, Nino Bertasio (Ita) 72 69 72
215 Sebastian Garcia Rodriguez (Esp) 67 70 78
219 Julien Guerrier (Fra) 75 65 79