Louis Oosthuizen turned in level par 36 to lead by two midway through day two of the Nedbank Golf Challenge hosted by Gary Player.
Despite being troubled by kidney stones until shortly before his opening tee time, the home favourite established a three shot advantage after 18 holes at Gary Player Country Club.
He stayed at nine under heading into the back nine in round two of the seventh Rolex Series event of the season, with Belgian Thomas Detry his closest challenger after he turned in 35.
England's Matthew Fitzpatrick, countryman Paul Waring, Swede Marcus Kinhult, South African Zander Lombard, Italy's Guido Migliozzi and Australian Jason Scrivener were then at six under.
Migliozzi joined Detry in second with a wonderful approach to four feet at the first and all three of the final group took advantage of the par five second as Oosthuizen moved to double figures.
Detry lost his ball off the tee at the third and when Migliozzi also dropped a shot on the next, Oosthuizen's lead was up to four shots.
It was not there for long, however, as Detry holed from around 30 feet on the fifth to retake solo second at seven under.
A Migliozzi three putt then dropped him into the expanding group in third - five shots off the lead.
Oosthuizen found sand off the tee at the seventh to drop a shot and with Detry making a birdie from ten feet, the lead was suddenly cut to one.
Fitzpatrick then moved into solo third at six under after a brilliant run of scoring around the turn.
After bogeying the second, he made a gain on the sixth and then four in a row from the eighth - holing from the fringe on the 11th. He missed a good chance at the next but an approach to 15 feet on the 13th had him within three.
Detry went left off the tee again at the eighth for a bogey but Migliozzi bounced back with a birdie from 15 feet.
That moved him back to six under alongside Fitzpatrick, Lombard and Waring.
Lombard recovered from a bogey on the first with birdies on the second, fifth and eighth, while Waring sandwiched a dropped shot on the fifth with gains on the fourth, seventh, eighth and tenth.
That group soon swelled to six as Kinhult and Scrivener both also birdied the tenth to get to three under for the day after turning in 34.
Swede Sebastian Soderberg was at five under, a shot clear of Jorge Campillo, George Coetzee, Tommy Fleetwood and Oliver Wilson.
Kalle Samooja made the fifth albatross of the season and third in Rolex Series history as he holed a four iron from 235 yards on the tenth.