I think Amir is not a bad guy he is young kid who saw a rapping of his "best friend" and most of us will never witness this. Amir was scared and knows that not helping Hassan was wrong but he is young and foolish and doesn't want to get himself hurt. How can Amir stand up for Hassan when he can't stand up for himself. You might say he is selfish but would any of you help, knowing you could be the next one getting hurt. But I also think it was wrong of Amir to push Hassan and Ali out of there home ruining Baba's happiness and love for "the brother [he] never had,"(113) and it seams that Baba was never happy again because they have had " seven servant[s] in five years"(118). Baba never got the same bond with any of the servants that he had with Ali since they knew each other since childhood. So I think that Amir is in the middle between bad and good because he ruined a relationship between him, Hassan, Ali and Baba but at the same time he is just a child.