It's a dilemma. On the one hand, everyone wants to see the back of Hafeez, who has outlived his welcome by about five years. Yet the harsh truth is that there is no ready replacement for him. And by replacement, I mean not a batting allrounder, just a spinner who can be miserly and prize out key wickets. The problem here is Hafeez himself, not the selection. He simply never learnt to bowl well again without chucking.
Meanwhile, however, only someone who has not been paying attention for about three years would believe that Malik offers anything with the ball these days. He averages 60 with it since 2015, when Wasim debuted and is very rarely called on to bowl.
Wasim, recently the no 1 T20 bowler, averages 30 something with the ball and was a bone fide threat in the CT, taking the prize scalps of ABDV and Amla. He was also handy for scuffing the ball for the pacers, enabling them to get swing later. So he would absolutely be an asset in the UAE.
Batting wise, Malik is also becoming less and less reliable, averages 43, boosted by cheap runs against Lanka in the UAE, while Wasim goes at 35. The problem is that while Malik is counted on to be a middle order stalwart, capable of accelerating late, Wasim never quite progressed to the point where he could be relied on to play either role. Plus his fitness has gone downhill.
I would say that for the purposes only of the Asia cup, it would have made sense to swap Hafeez *and* Malik for Haris and Imad. Haris is twice the batsman of Hafeez and Malik combined, and can play an achor role, so even with Wasim being unreliable, you are covered in the batting stakes. Spin wise, we would be much much better off, with Haris being comfortable as good (or bad) as Malik and Hafeez, and Wasim being a real asset.