Two Short of a Hundred, Three Wickets, and a Net Run Rate That May Yet Send Malaysia Through
Malaysia were 33 for 3 in the eighth over of their own home group game with a semi-final place on the line. Virandeep Singh walked out, batted for forty-one overs, and was caught two runs short of a century off the first ball of the fiftieth. His 98 dragged Malaysia to 254 for 8; his ten overs of off-spin then took 3 for 25 as Bahrain were bowled out for 128. A 126-run win lifted Malaysia's net run rate to plus 0.568 — enough to sit second in Group A, and enough to make Tuesday's Hong Kong–Nepal match the most important game they will not play in.
Ninety-eight is a strange number to be remembered for. It sits in the record as a failure of two runs and in the memory as something else entirely — and in Kuala Lumpur on Monday, Virandeep Singh's 98 was the innings that decided not just a match but, quite possibly, a semi-final place his team will have to watch someone else award them.
Malaysia batted first and were 33 for 3 in the eighth over. Their top three had made 10, 6 and 9. This was the last group fixture of their campaign, they had lost two of their previous three, and their net run rate stood behind Hong Kong's on the Group A table. What they needed was not a win but a large one, and at 33 for 3 the arithmetic looked absurd.
Singh batted until the first ball of the fiftieth over. He faced 118 deliveries, hit nine fours and two sixes, and was caught at 247 for 8, two short. Malaysia finished on 254. He then bowled ten overs of off-spin for 25 runs and three wickets, and Bahrain were dismissed for 128 in the thirty-eighth. Malaysia won by 126 runs, and their net run rate moved from behind Hong Kong's to comfortably ahead of it.
Match Summary
| Malaysia | 254/8 (50 ov, RR 5.08) |
| Bahrain | 128 all out (37.5 ov, T:255, RR 3.38) |
| Result | Malaysia won by 126 runs |
| Player of the Match | Virandeep Singh (98 off 118 and 10-2-25-3) |
| Toss | Malaysia, elected to bat first |
| Venue | Bayuemas Oval, Kuala Lumpur (day match, 50 overs) |
| Match | 17th Match, Group A |
| Malaysia batting | |
| Virandeep Singh | 98 (118b, 9x4, 2x6) — c Asif Shaikh b Imran Anwar |
| Sharvin Muniandy | 34 (32b, 3x4, 1x6) — c †Kurup b Abdul Majid |
| Syed Aziz (c) | 31 (51b, 2x4) — b Asif Shaikh |
| Vijay Unni | 22* (15b, 3x4) |
| Amir Khan | 20 (22b, 1x4, 2x6) — lbw b Junaid Aziz |
| Muhamad Syahadat | 11 (16b, 1x4) — c Muhammad Salman b Imran Anwar |
| Saif Ullah Malik | 10 (24b, 2x4) — c Fiaz Ahmed b Imran Anwar |
| Aqeel Wahid | 9 (9b, 2x4) — b Ali Dawood |
| Nazmus Sakib † | 6 (10b, 1x4) — c Imran Anwar b Abdul Majid |
| Prashant Madhukar | 5* (3b) |
| Extras | 8 (b 1, lb 1, w 6) |
| Bahrain bowling | |
| Imran Anwar | 9-0-56-3 |
| Abdul Majid | 10-1-31-2 |
| Ali Dawood | 10-0-66-1 |
| Asif Shaikh | 9-0-65-1 |
| Junaid Aziz | 2-0-11-1 |
| Muhammad Salman | 10-2-23-0 |
| Bahrain batting | |
| Prashant Kurup (c)† | 34 (55b, 3x4) — c Syed Aziz b Virandeep Singh |
| Fiaz Ahmed | 29 (39b, 3x4) — c †Nazmus Sakib b Madhukar |
| Muhammad Wasim | 18 (40b, 3x4) — c †Nazmus Sakib b Arif Ullah |
| Imran Anwar | 11 (11b, 2x4) — b Aqeel Wahid |
| Ahmer Bin Nasir | 8 (14b) — st †Nazmus Sakib b Madhukar |
| Ali Dawood | 7 (16b, 1x4) — b Virandeep Singh |
| Asif Shaikh | 5 (14b, 1x4) — c †Nazmus Sakib b Virandeep Singh |
| Abdul Majid | 3 (15b) — c Muniandy b Aqeel Wahid |
| Junaid Aziz | 2 (11b) — b Aqeel Wahid |
| Yasser Nazeer | 1 (6b) — b Aqeel Wahid |
| Muhammad Salman | 1* (6b) |
| Extras | 9 (lb 1, w 8) |
| Malaysia bowling | |
| Aqeel Wahid | 9.5-1-32-4 |
| Virandeep Singh | 10-2-25-3 |
| Prashant Madhukar | 7-2-19-2 |
| Arif Ullah | 3-0-18-1 |
| Vijay Unni | 6-0-16-0 |
| Syed Aziz (c) | 2-0-17-0 |
Thirty-Three for Three, and a Man Who Refused to Hurry
Bahrain bowled beautifully for an hour. Abdul Majid had Nazmus Sakib caught at 15, Ali Dawood bowled Aqeel Wahid at 29, and Imran Anwar — who finished with three wickets — had Saif Ullah Malik caught by Fiaz Ahmed at 33. Three down in the eighth over, and the fourth wicket followed at 57 when Muhamad Syahadat fell in the twelfth.
What Singh did from there is the least glamorous and most valuable innings a batter can play in a 50-over game: he stopped it going wrong. His fifth-wicket stand with captain Syed Aziz was worth 63 runs and lasted until the thirtieth over, and it was slow by any modern reckoning — Aziz made 31 from 51, Singh was scoring at barely a run a ball. Malaysia were 120 for 5 at the halfway mark of the innings, which is not a platform so much as a stay of execution.
The acceleration came late and came from the other end. Amir Khan hit two sixes in his 20 from 22. Then Sharvin Muniandy made 34 from 32 with three fours and a six, and the seventh-wicket partnership put on 62 in under ten overs to take Malaysia from 146 to 208. Vijay Unni finished 22 not out from 15. The last ten overs produced 108 runs — more than the first thirty had.
And Singh was there for all of it, accelerating from a run a ball to something faster without ever appearing to change gear. He was on 98 with nine balls of the innings left when he found Asif Shaikh off Imran Anwar. It was the eighth wicket to fall, at 247, and the dressing room stood up for a hundred that had not quite happened.
Then He Took the Ball, and Bahrain Ran Out of Batting
Bahrain's reply started sensibly. Muhammad Wasim and captain Prashant Kurup put on 48 for the first wicket in twelve and a half overs, which against a target of 255 is defensible if you have batting to come. The required rate was climbing, but slowly.
Kurup made 34 from 55 and looked, for a while, like the man who would need to bat through. Singh removed him — caught by Syed Aziz — at 70 in the eighteenth, and the innings never found another anchor. Prashant Madhukar then produced the two dismissals that ended the contest as a contest: Fiaz Ahmed caught behind for 29 at 96, and Ahmer Bin Nasir stumped for 8 at 110. Seven for two in the space of four overs, from 96 for 3 to 110 for 7.
The finishing was Aqeel Wahid's. His 9.5-1-32-4 took the last four wickets to fall — Yasser Nazeer bowled, Imran Anwar bowled, Junaid Aziz bowled, Abdul Majid caught by Muniandy — and three of the four were bowled, which is what happens when a batting side has stopped believing the chase is on. Bahrain were all out for 128 with more than twelve overs unused.
Six of Malaysia's seven bowlers went at under three and a half an over. Singh's ten overs cost 25 with two maidens; Madhukar's seven cost 19 with two; Unni's six cost 16. On a surface that had produced 254 in the first innings, Bahrain's batters faced 227 balls of spin and seam that gave them nothing to hit and got themselves out trying anyway.
The Bayuemas Surface
This was a 9.30 start on a used-looking Kuala Lumpur pitch, and the scoring pattern of the first innings tells you most of what you need to know: 33 for 3 inside eight overs, 120 for 5 at the halfway mark, 254 for 8 at the close. It was a surface on which the new ball did something and the old one did very little, and where batting became progressively easier if you survived the first hour.
Bahrain, having bowled well enough to earn that reading of the pitch, then batted as if they had not made it. Their run rate never exceeded 3.4 an over, and their two set batters — Kurup on 34, Fiaz Ahmed on 29 — both got out with the job half done. Only three Bahrain batters faced more than 20 deliveries.
The other number worth flagging is the extras column. Bahrain conceded eight in the field, Malaysia six. On a low-scoring ground in a tournament where net run rate is deciding places, neither side leaked the game away — this margin was earned with bat and ball.
CricIntel Prediction Review
This match didn't have a CricIntel preview — we published previews for the earlier Group A fixtures and did not carry one into the final round, so there is no call to review honestly here.
Where we have written about Malaysia this tournament, we have described them as a side whose ceiling depends on Virandeep Singh, and that reading held up: he has now been the difference in both of Malaysia's wins, and their two defeats came in matches where he did not control the innings. That is a legitimate observation and also a structural warning, and we will say more about it in the semi-final preview should Malaysia get there.
What to Watch Next
Malaysia have finished their group programme: four matches, two wins, four points, net run rate plus 0.568, second in Group A. That is the whole story of Monday's margin. Before this game their net run rate trailed Hong Kong's; a 126-run win with the ball on a low-scoring ground moved it decisively ahead.
What it does not do is guarantee anything. Nepal top the group with three wins from three and a net run rate of plus 2.092 and are already through. Hong Kong sit level with Malaysia on four points with a net run rate of minus 0.107 and have one match left — against Nepal on Tuesday. If Hong Kong win, they take second and Malaysia go home. If Hong Kong lose, Malaysia play a semi-final on Thursday having watched it from a hotel room. There is no more uncomfortable way to qualify, and no clearer illustration of why Singh's last thirty balls on Monday mattered more than the two runs he did not get.
Bahrain end their campaign fifth in Group A with one win from four and a net run rate of minus 1.188. The win — 32 runs over Hong Kong on September 2 — is the result that will keep the tournament from feeling wasted, and it is worth noting that the side which beat Hong Kong is the same one that was bowled out for 87 by Nepal and 128 by Malaysia. Their bowling has been competitive throughout; Abdul Majid's ten overs for 31 on Monday were the best figures on either side by economy. Their batting has passed 210 once in four attempts. That is the gap to close before the next cycle.
Want data-backed predictions for every IPL 2026 match?