Having seen Terminator Salvation (basically the same movie) I beg to differ.
He's pretty good in Public Enemies though.
I liked him in "Terminator Salvation". Ain't seen "Public Enemies" yet but I will next week. Though "Harsh Times", "Rescue Dawn", "Batman Begins", "American Psycho", "The Machinist" and "3:10 to Yuma" are all amazing roles for him. He's incredibly versatile, so you can't really judge him by one film, as he's never the same character in any two films (except the Batman ones, but that's an obvious exception).