I dont know of anyone who thinks gun control laws will stop all gun related crime. Also crime per capita is a much better metric then the numbers you have given. 20 Million in china is little compared to the 1 million in cambodia or turkey.
What people are trying is to lessen the amount of the crimes, and if you look at the crime drop in 94 era, when the assault ban had occurred, people would associate the two, when in reality it was many factors. Its hard to judge how much of it was a the ban.
And to the quote, that exists for individual cases yes, however, Nature just as strong as nature, what society brings to the table has SOME influence on the minds of the criminally insane.
Personally I think one of the best ways to prevent more of these is to stop creating an anti-hero out of these people. Stop making the infamous, stop focusing on the amount killed and comparing it to others as if it was a Highscore. The worst thing about this is crimes jump a bit after such tragedies from copy cats trying to get some limelight. Im not saying ignore what happened. What I am saying is focus on the rest of the people, they make enough sensationalist news.
This is a multi faceted issue though with no single answer when its a culmination of other issues. Media sensationalism creating anti-heros, the fact that gun violence in america is higher then ANY other first world developed country, though I will admit that probably has alot to do with us having more guns per capita then any other nation in the world, developed or not. Our society being unable to properly recognize and treat mentally ill people. Will fixing these issues stop all violence? hell no but I think there is a way to lower the crime rate without loosing our freedom as citizens. Reasonable gun control laws like no automatic weapons and no extended clips. FCC making some standerd that a news station can only mention a killers name 4 times in a day (idk, someone who has done more research can write the bill) and mental illness awarness in some form.