Home favourite Louis Oosthuizen fired a bogey-free 64 to boost his hopes of back-to-back South African Open titles in Johannesburg.
The 2010 British Open champion shot seven birdies to hold a one-shot advantage over England's Marcus Armitage, who raced through the field with a stunning 62 taking him to 14 under.
Oosthuizen could become the first player to successfully defend this title since fellow South African Trevor Immelman 16 years ago.
The 37-year-old, who is chasing a 10th European Tour victory, holed a 15-footer on the second, made another birdie on the third, and completed his hat-trick with the help of a delicate chip on the fourth.
Oosthuizen turned in 31 after a seven-foot putt at the ninth and added birdies at 11, 13 and 14 on the back nine.
Salford-born Armitage clearly has a taste for the Firethorn Course at Randpark Golf Club having carded a bogey-free 65 on day one.
Armitage, who regained his card at the Qualifying School having first made his way onto the European Tour in 2016, climbed 42 places with a round of two eagles, six birdies and just a single dropped shot.
The 32-year-old’s effort would have been a course record had preferred lies not been in place.
“That’s why we play golf for those days, it was just magic,” Armitage was quoted as saying on the European Tour website.
“I holed a nice little wedge on three and it just went from there.”
Jaco Ahlers is one shot adrift of Armitage after making six birdies and three bogeys in a round of 68.
A five-strong group on 12 under contains England's Andy Sullivan, who carded a round of 67, and a quartet of South Africans — Jayden Schaper, Branden Grace, Jacques Blaauw and Martin Rohwer.
Schaper was the overnight leader and the 18-year-old amateur stayed in contention with a two-under-par 69.
Gavin Moynihan and Jonathan Caldwell, the two Irish players to make the cut, are both 10 shots off the lead on five under.