Nirat had seven birdies and Liang had eight in moving to 12-under 132, two up on the field, after 36 holes.
Tied for third at 10-under are: Tommy Fleetwood, who shot 65; David Drysdale and Joonas Granberg, who had 67s; and Chawalit Plaphol, whose 18th-hole bogey gave him a 68.
Chinnarat Phadungsil, who was 11-under Thursday for the first-round lead, followed with a 2-over 74 and dropped into a tie for seventh. Phadungsil had a string of seven birdies Thursday over Nos. 10-16 but was 4-over on those holes Friday.
Liang, who started Friday on the second nine of the Jaypee Golf and Spa Resort course, had four birdies and a pair of bogeys on his first nine. He had three birdies over Nos. 1-4 and pulled into a tie for first with a birdie on his final hole of the day.
Nirat had three birdies in his final five holes to get to 12-under.