Peitepoliisi Chan Kam-wah, joka tutkii koruvarasryhmää, paljastaa peitetehtävänsä ja joutuu kolmen hyökkääjän puukottamaksi kuoliaaksi katumarkkinoilla. Hänen esimiehensä, komisario Lau, määrää Ko Chow’n, toisen peitepoliisin, jatkamaan tutkimuksia. Ko Chow suostuu vastahakoisesti, sillä edellisen peitetehtävänsä aikana hän joutui pidättämään jonkun, joka oli luottanut häneen ystävänä.
Ryöstäjät ryöstävät korutehtaan, mutta joku onnistuu hälyttämään poliisin. Yksi ryöstäjistä, Fu, tappaa poliisin ja aloittaa tulitaistelun lähestyvien poliisien kanssa. Jengi pääsee hädin tuskin pakoon. Poliisipäällikkö perustaa erikoisryhmän tutkimaan jengiä nuoren komisario John Chanin johdolla. Laun ja Chanin välille kehittyy voimakas kilpailu; Chan pitää Lauta vanhanaikaisena ja ylivoimaisena, kun taas Lau pitää Chania kokemattomana ja ylimielisenä.
Yhdistäytyäkseen jengiin Chow tarjoaa heille aseita myytäväksi välikäsi Tai Songin kautta. Ensimmäisen tapaamisen aikana jengiläisen Fun kanssa heitä seuraavat Chanin komennossa olevat rikostutkintaosaston jäsenet (joka ei tiedä, että Chow on peitepoliisi). Chan Kam-wahin hautajaisten jälkeen Chow tapaa Laun, joka antaa hänelle avaimen keilahallissa sijaitsevaan kaappiin, johon aseet on tarkoitus piilottaa. Chow neuvoo olemaan luovuttamatta oikeita aseita, mutta Lau vaatii, jotta jengi ei häviäisi jäljiltään.
Chow tapaa tyttöystävänsä Hungin, jolle hän teki kosinnan hieman aiemmin. Kun Chow pyytää tyttöä lykkäämään avioliittoa siihen asti, kunnes hänen juttunsa on saatu päätökseen, tyttö poistuu hysteerisenä huoneesta.
Ennen aseiden luovuttamista Chow teippaa nauhurin vyötärönsä ympärille. Hän tapaa kolme jengiläistä. Chow taputetaan, mutta hän onnistuu harhauttamaan heidät nauhurista. Fu on tyytyväinen näyteaseeseen ja kehottaa Chow’ta tapaamaan hänet uudelleen kahden päivän päästä puoliltapäivin ostaakseen lisää aseita ja ammuksia.
Seuraavana päivänä Chow tapaa Laun ja pyytää häneltä lisää aseita. Lau tarvitsee aikaa niiden hankkimiseen, mutta vakuuttaa Chow’lle tallettavansa ne kaksi tuntia ennen sovittua luovutusta Fulle keilahallissa. Sillä välin Hung pakkaa laukkujaan lentääkseen Kanadaan Tson, vanhemman liikemiehen kanssa, joka oli aiemmin tarjoutunut jättämään vaimonsa hänen vuokseen. Kun Chow kuulee asiasta puhelimessa, hän pyytää Hungia heti naimisiin, jotta tämä muuttaisi mielensä. Hung kehottaa häntä todistamaan vilpittömyytensä ilmaantumalla maistraattiin seuraavana päivänä kello 10.00, mutta seuraavana päivänä Chow odottaa siellä turhaan ystävänsä Rosen kanssa.
Matkalla keilaradalle Chow joutuu poliisien seuraamaksi. Kun hän tajuaa tämän (ja koska aseiden hallussapito on rikos), hän soittaa Laulle. Lau kertoo hänelle, että poliisit ovat Chanin osastolta ja käskee häntä jatkamaan matkaa sillä välin, kun hän selvittäisi tilanteen Chanin kanssa. Keskustellessaan Chanin kanssa hän mainitsee Chow’n ilmiantajana, mutta pitää salassa asemansa peitetehtävissä toimivana poliisina. Chan kieltäytyy Laun pyynnöstä lopettaa Chow’n jäljittäminen.
Nyt omillaan Chow karistelee poliisin takaa-ajajat MTR-asemalla nousemalla lähtevään junaan. Samalla kun hän hakee laukkua aseineen, hän huomaa Fun keilaradalla. Kun hän poistuu rakennuksesta, poliisi saapuu paikalle. Chow onnistuu pakenemaan hyppäämällä ikkunasta, ja Fu, joka lähestyy autolla, ottaa hänet kiinni kadulla. He ajavat jengin piilopaikkaan, sillä sen johtaja haluaa tavata Chow’n. Hän tarjoaa Chow’lle mahdollisuutta osallistua tulevaan suureen ryöstöön.
Fu ajaa Chow’n lentokentälle, jossa hän tapaa Hungin, joka on nousemassa koneeseen Kanadaan Tson kanssa. Chow yrittää muuttaa hänen mielensä, mutta poliisi pidättää hänet aseiden myynnistä (Hungin noustessa koneeseen). Poliisiasemalla Chanin miehet hakkaavat ja kiduttavat Chow’ta ja haluavat tietää aseiden ostajan. Chanin esimies astuu huoneeseen, käskee Chanin miehiä vapauttamaan Chow’n ja kutsuu Chanin ja Laun toimistoonsa. Lau myöntää antaneensa Chow’lle aseet asekauppaa varten, mutta vaikenee siitä, että Chow on peitepoliisi. Koska ampuma-aseen laiton hallussapito on vähäinen rikos, Chan ehdottaa, että Chow osallistuisi ryöstöön, jotta ryöstäjät saataisiin kiinni punaisella kädellä. Lau pitää sitä liian suurena riskinä, mutta lopulta poliisipäällikkö määrää Chow’n osallistumaan suunniteltuun ryöstöön.
Jengi voi ryöstää neljä mahdollista koruliikettä. Kaikissa on heikot turvatoimet, arvokasta tavaraa ja ne sijaitsevat vilkkaasti liikennöityjen teiden varrella. Ryöstön jälkeen jengi aikoo ajaa satama-alueella sijaitsevaan piilopaikkaan, josta vene noutaa heidät seuraavana päivänä. Poliisi ei tiedä, mikä kauppa on kohteena, mutta aikoo pitää useita poliisiryhmiä valmiudessa lähistöllä.
Ryöstön aattona jengin johtaja määrää osallistujat kokoontumaan asunnolle. Turvallisuussyistä heidän on vietettävä jäljellä oleva aika ennen ryöstöä yhdessä ja luovutettava hakulaitteensa. Chow kirjoittaa piilopaikan osoitteen paperille, mutta ei pysty välittämään sitä poliisikollegoilleen. Chow ja Fu jakavat huoneen ja puhuvat historiastaan ja tulevaisuuden suunnitelmistaan – Fun vaimo jätti hänet, eikä hän nähnyt poikaansa enää koskaan, jolloin Chow kertoo, että myös hänen vaimonsa jätti hänet, ja miehet tulevat yhä läheisemmiksi. Yön aikana Chow lukee kirjeen Hungilta, joka kertoo, ettei lähtenytkään Tson kanssa Kanadaan, vaan odottaa tätä Havaijilla.
Seuraavana aamuna poliisijohto määrää poliisiryhmät pois valmiustilasta, koska he eivät enää odota ryöstön tapahtuvan pian. Tämä on virhearviointi, sillä jengin johtaja kutsuu miehensä koolle ja nimeää Tai Kongin koruliikkeen kohteekseen. Koska poliisin erikoisryhmät ovat vetäytyneet, kauppaa vartioi vain kaksi siviilipukuista poliisia partioautossa. Ryöstö alkaa, kun neljä ryöstäjää astuu liikkeeseen, vetää aseensa esiin ja vaatii koruja. Fu ja Chow odottavat sisäänkäynnin luona pitämässä katua silmällä, kun jengin johtaja odottaa pakoautossa. Siellä Chow tajuaa, että se oli Fu, jota silminnäkijät kuvailivat poliisimurhaajaksi, joka aloitti tulitaistelun korutehtaan ryöstön aikana.
Kun myymälän hälytys laukeaa, Big Song (yksi ryöstäjistä) ampuu myyjän. Kun he yrittävät paeta autoihinsa, myymälää vartioivat kaksi poliisia avaavat tulen ja haavoittavat jengiläistä Billiä. Poliisi pysäyttää yhden pakoautoista. Fu, Chow, Joe ja Big Song joutuvat jättämään Billin taakseen raskaassa tulituksessa. Poliisi tappaa Joen, kun Big Song yrittää kytkeä toisen pakoauton päälle. Rohkealla manööverillä Fu kohtaa lähestyvän poliisiauton ja tappaa neljä poliisia, vaikka häntä ammutaan olkapäähän. Chow pelastaa Fun hengen tappamalla poliisin, joka ampui Fua.
Fu, Chow, Big Song ja Bony (neljäs elossa oleva jengiläinen) pakenevat varastetulla autolla satamassa sijaitsevaan piilopaikkaan, jossa he tapaavat heitä jo odottaneen jengin johtajan. Samaan aikaan poliisi löytää Chow’n viestin, jossa on piilopaikan osoite, tulipalon tapahtumapaikalta.
Johtaja epäilee jengin joukossa olevan petturin, koska poliisi saapui rikospaikalle liian nopeasti. Hän syyttää Chow’ta, koska tämä liittyi vasta hiljattain heidän riveihinsä. Big Song ja Fu puolustavat Chow’ta ja syntyy meksikolainen pattitilanne.
Poliisi saapuu paikalle ja piirittää piilopaikan kymmenillä miehillä. Kun Chan pyytää miehiä antautumaan, Big Song ampuu poliisia kohti. He avaavat tulen ja tappavat hänet. Bony yrittää antautua ja jengin johtaja ampuu hänet pelkuruuden vuoksi. Kun pomo yrittää myös ampua Chow’n ja Fun, he tappavat hänet sen sijaan. Chow haavoittuu poliisin luodista ja huomaa, että hänen vammansa on kohtalokas. Hän tunnustaa Fu:lle olevansa poliisi ja pyytää nopeaa kuolemaa, mutta Fu tuntee olevansa kykenemätön tappamaan Chow:ta. Kun poliisi rynnistää piilopaikkaan ja pidättää Fun, Chow kuolee hänen viereensä. Lau on raivoissaan hänen kuolemastaan ja murskaa tiilen Chanin päähän (joka jo kerskuu esimiehelleen menestyksestään) ja ryntää pois.