You don't nest Common Table Expressions (CTEs), you comma separate them:
;With Tmp1 as (
Select Distinct EmpID, TypeID
From tb_deductionBalance
), Tmp2 as (
Select *,
row_number() OVER ( order by empID /* no employeeID in Tmp1 */) as RowNum
From Tmp1
)
Select * From Tmp2
Where RowNum Between @Start and @End
Any CTE may reference any earlier CTE.