Low IQ, lack of self control, and testosterone combined with a society that has been traditionally sold on the idea that being macho means using violence to solve your problem is much of the problem. A person in China killed 19 people with a knife. A person in Canada sawed the head off of someone on a bus all the other people on the bus did was lock him in and let him finish the job.
A guy in England beheaded a former soldier in the streets and talked about it to a T.V. crew before he was arrested. The list could go on. Remove every gun in America and crime would get even worse in the areas crime is bad.
One thing that would help quite a bit is to outlaw making movies that glorify violence, sadism, rape, and torture. It is mostly a male problem, but what goads males into this is also a problem. There are other countries that do not have these issues and never did.