My understanding of the two words is:"immoral" is one who understands the basic moral code but is unable,or unwilling,to abide by it.Some of them are capable of feeling guilt because of their actions and *some* eventually see the error of their ways and modify their thinking and behavior to comply with that code.Or,to put it another way,some "sinners" do eventually seek "redemption".
OTOH,"amoral" means that someone fully understands the basic moral code but has genuine,complete contempt for it,feels *no* guilt and have no intention whatsoever of ever conforming to this code.They *never* seek "redemption",
My understanding, FWIW, is that "amoral" refers to ignoring any moral code and "immoral" refers to deliberately rejecting any moral code. And I think Bam-Bam is doing the latter.