Having allowed Mumbai to amass 402 runs in their first innings, Uttar Pradesh lost early wickets to be left struggling at 91 for three at close on the second day of the Ranji Trophy final in Hyderabad on Tuesday.
Resuming at the overnight score of 297 for six, Mumbai capitalised on Uttar Pradesh's fielding lapses as they scored 105 more runs before the innings folded up and then pace spearhead Zaheer Khan sparkled with two wickets to put the opposition on the back foot.
Uttar Pradesh dropped as many as four catches and missed one stumping and two run-outs to allow Mumbai to gain the upper hand.
At close, Uttar Pradesh were trailing by 311 runs with seven wickets remaining in the five-day match being played at the Rajiv Gandhi International stadium at Uppal.
Opener Shivakant Shukla was batting on 46 and Parvinder Singh was yet to open his account.
UP team was reeling at 6 for two in less than three overs of the start of their innings with Zaheer removing opener Tushar Srivastava by getting him caught behind by Samant in the fourth ball of the third over.
UP received another jolt when next batsman in Suresh Raina was gone in a blink after facing just one ball. Raina was run out by Sairaj Bahutule on duck.
The other opener Shivakant Shukla, however, played cautiously and seemed like repeating his semi-final performance, which helped UP secure the final berth.
Skipper Mohammad Kaif, who came out at number four, gave some stability to the innings but left the field after nicking a Zaheer Khan delivery in the 44th over.
Kaif's 33 came off 129 balls with the help of five hits to the fence and a towering six. Kaif stitched a 85-run partnership with Shukla.
Earlier, Mumbai resumed at oevrnight score of 297 for 6 with centurion Rohit Sharma (141) adding 28 to his overnight 113. Rohit appeared to be blessed as he survived many close calls.
Left-arm spinner Praveen Gupta struck twice in his second over of the day. He scalped Rohit when the Mumbai batsman came down the track to attempt a delivery outside the off stump and was caught by Parwinder at point.
Within space of three balls, Gupta also sent Ramesh Powar back to the pavilion.
But Ajit Agarkar (47) gave the UP team a tough time as he approached a half century before he was caught and bowled by RP Singh.
The last man out Zaheer was given a reprieve when Mumbai were 363 and he did not let go the opportunity as he went on to add 33 runs before falling in the first over after lunch.