The only one who can be a captain based on his performance is Babar Azam.
For a successful captain, you should have the following qualities
1. Be the best 1-3 players in the team (be automatic selection)
2. Be smart as a leader and good strategist, someone people will listen to
3. Be a match winner (i.e. win matches single handedly on ocassion)
#1 is a requirement, 2 & 3 can be negotiated slightly.
Based on this criteria, only Babar Azam can justify a place in the team. Here is the team, let's see if there is anyone else
1. Fakhar Zaman - going through bad patch right now, may even get dropped after WC
2. imamulHaq - ****** label, too new, and inconsistent right now
3. Babar Azam - The best player on the team and automatic selection
4. Hafeez - Should retire
5. Shoaib Malik - Should retire
6. Harris Sohail - Not permanent in team, does not exude confidence, but I don't know about him for sure
7. Sarfaraz - Incumbent
8. Shadab - Too young, not consistent enough to justify automatic selection
9. Imad Wasim - Not consistent enough to justify automatic selection. But may have outside chance
10. Wahab Riaz - Too old, not good enough to be in team always
11. Amir - Inconsistent, was dropped from team prior to WC due to poor performance. Character issues from past.
12. Shaheen Afridi - Too young and inexperienced.