Well, let's see where logic takes us... the pawns could not have moved on the last move, this is obvious. Also, the rook could not have moved, as it is currently surrounded on all sides by other pieces. That leaves only the two kings, and the white knight. The knight could only have moved to a1 from previously being on b3. The white king could also have moved to c1 from d1. As for the black king, in order for it to have moved to a2, it would have had to occupy either a3 or b3 on the previous move, putting it in check by one of the pawns (ignoring the knight for the moment). Since the pawns cannot have moved AT ALL at this point in the game, the king would have had to have moved INTO check at a3 or b3 to do this, which is patently illegal. So, that means black could NOT have moved last.
That leaves only the two possibilities: Kc1 or Na1. I'm not sure how to decide between those at the moment, but I'll come back and think about this...
I was looking on the net and found this puzzle which requires you to work backwards. I don't know who came up with the puzzle or if a solution even exists (although I have a feeling it was published by Mensa). If you think you have found a solution plz logically explain your answer in the comments below. Thank you. My brain hurts trying to work this out.
EDIT: Of course, this situation is almost impossible in normal play. Think hypothetical.
The question to the puzzle is: "What was the last move made?"