Pakistan qualifies for Asia Cup semi-final after beating India