World No.1 Rory McIlroy set himself up for a weekend assault on the $7 million BMW Masters after a second round 65 took him to 12-under par, two shots behind halfway leader Peter Hanson.
On a day of low scoring on the Jack Nicklaus-designed Lake Malaren course in Shanghai, Sweden's Hanson was one of three players to shoot an eight-under par round of 64 following Shane Lowry of Ireland and fellow Swede Robert Karlsson.
McIlroy had complained of headaches during his opening 67 on Thursday, which the Northern Irishman put down to pollution. On Friday he had to battle the sound of fireworks, music and piledrivers.
"You're always going to have distractions out there, whether it is people with cameras or movement in the crowd," he said.
One of the only semblances of trouble for the double major winner came on the final hole where McIlroy's tee shot found the right-hand rough.
But it was in area trampled by spectators that gave him a good enough lie to put his approach to 10 feet and safely two-putt for par.
"Overall it was just a very good round of golf and obviously (puts me) in a great position going into the weekend."
A 64 must have been the last thing on Hanson's mind when he opened his round with a bogey.
"I got it straight back with a birdie on three. I think that's pretty much the key to my two good rounds," added the Ryder Cup player who had carded a 66 on Thursday.
McIlroy, the US PGA champion, is looking for another big pay day to tighten his grip on the Race To Dubai as he seeks to emulate Luke Donald's feat of last year by winning the money lists on both sides of the Atlantic.
The course has already yielded three rounds of 64 and Jamie Donaldson's 62 on Thursday but McIlroy believes it would be hard for anyone to shoot any lower, and certainly not the magic number of 59, golf's Holy Grail, despite the birdie fest.
"I think the greens are quite difficult. So I can't see anyone getting to 13-under out there. I think 62 will be the lowest you're going to see this week," he said, "But I would love to prove myself wrong."