Neither are long innings batsmen. Azhar is very good against the new ball (for Pakistan standards) and consistently blunts the ball and gets starts. But lacks the range of shots required to build an innings usually. He's the typical opener mold, often teams send out these players as openers as they'll blunt the ball so the better players down the order score big (often at four). Having said we've badly needed a player like that, we haven't had one for a long time.
Asad is just inconsistent and doesn't go big on his starts. He bats middle order too, so it's not really acceptable as the top order has already faced the tougher conditions. Technically he is good enough, but I don't think he's developed the mentality to consistently get big scores. He doesn't do in domestic, so hasn't learnt to do it internationals.
Younis and Misbah are different batsmen, they have a more well rounded game, more shots and ability to make bigger scores than Azhar. Younis probably should have been batting lower than 3 really.
For middle order bats really you need to be coming in with a domestic average of around 50. If you can't rack up the runs middle order where batting conditions are easier, you're doing something wrong.
I think it would look a whole lot stronger our team if we made sure that the only batsmen who get a place in the middle order are guys who average around 50. Fill the middle order with guys like Haris, Usman, Saad, even Fawad.
Given Asad can't get consistent big scores, I've long advocated bat him up the order, and if he doesn't perform, get him out. Bat him at no.3 ideally, either he takes responsibility or sinks. And leave the big scoring batsmen down the order.