줄거리 (스포일러 주의)
킬러인 소장은 친구 풍강을 통해 의뢰받은 암살 대상을 죽이는 과정에서 카페에서 노래하는 제니의 두 눈에 부상을 입히고 만다. 그 일이 있은 후 제니를 걱정한 소장은 다시 카페에 가서 제니를 지켜보다가 강도들이 시력을 잃은 제니를 공격하는 것을 보고 구해주고 두 사람은 가까워진다. 다시 왕동원이라는 인물의 암살 의뢰를 받은 소장은 제니의 치료비를 마련하기 위해 풍강에게 큰 액수를 제시한다. 소장은 왕동원의 암살에 성공한 후 현장을 빠져나가다가 경찰 이응의 눈에 띄어 추격을 받게 된다. 암살 후 예정된 도피 장소에 도착한 소장은 왕해의 부하들로부터 공격을 받는다. 총격전이 벌어지고 어린 여자아이가 다치자 소장은 아이를 데리고 병원으로 간다. 소장을 잡기 위해 병원에 따라온 이응과 파트너 증은 결국 소장을 놓친다. 이응은 카페의 암살 사건도 소장의 짓인 것을 알게되고 소장이 제니를 만나러 올 것을 예상하여 제니를 찾아간다. 소장은 풍강에게 전화를 걸어 약속한 보수를 요구하고 두 사람은 만나기로 약속한다. 보스 왕해로부터 소장을 죽이라는 지시를 받은 풍강은 소장을 죽이는데 실패하는데 소장은 친구로부터 배신 당한 것에 비통해하지만 풍강을 살려준다. 소장은 제니를 찾아갔다가 소장을 체포하기 위해 기다리던 이응과 파트너 증과 만나지만 도망쳐 나온다. 왕해는 소장을 제거하기 위해 프랭크라는 킬러를 고용한다. 소장은 자신을 죽이려는 왕해를 암살하려다가 실패해 도망치고 풍강이 그런 소장을 뒤쫓아간다. 다시 친구와의 의리를 택한 풍강은 소장에게 은신처를 제공해준다.
이응은 제니를 설득해 공항에서 제니와 소장이 만나도록 해서 소장을 붙잡을 계획을 세운다. 공항에서 풍강이 소장인 척 경찰들을 유인하고 소장은 제니를 데리고 은신처로 간다. 경찰서에서 풀려난 풍강을 미행하려던 증은 소장의 소재를 알기 위해 역시 풍강을 뒤쫓던 프랭크 일당에게 총격을 받는다. 증은 풍강을 뒤쫓다가 프랭크 일당의 총격에 의한 부상 때문에 쓰러져 병원에 입원한다. 증과 프랭크 일당을 따돌린 풍강은 소장에게 왕해로부터 약속한 돈을 받아올테니 성당에서 만나기로 약속한다. 한편 증은 병원에서 이응에게 마지막 뒤쫓아간 곳의 장소를 알려주고 숨을 거둔다. 이응은 병원에서 나와 증이 알려준 장소로 향하고 병원 밖에서 기다리던 프랭크 일당이 그것을 보고 이응을 뒤따라 간다. 은신처에서 이응과 소장은 서로 총을 겨누다가 뒤따라온 프랭크 일당이 공격해오자 두 사람은 합심하여 프랭크 일당과 싸우고 은신처에서 빠져나간다. 소장과 이응, 제니 세 사람은 성당으로 간다. 왕해를 찾아가 총으로 위협하여 돈을 받아낸 풍강. 어렵게 성당에 도착하지만 뒤이어 쫓아온 왕해 일당의 총격을 받고 쓰러진다. 소장과 이응은 수적으로 많은 왕해 일당과 맞서 총격전을 벌인다.