2002, strax efter 11 september, var Ray Kasten (Ejiofor), en terrorismagent för FBI, och hans vän Jessica ”Jess” Cobb (Roberts), en utredare träffa nya ADA Claire Sloan (Kidman) för distriktsadvokatkontoret i Los Angeles. Jess och Ray får ett samtal om en okänd kvinnlig kropp som hittades i en soptipp nära en lokal moské, som Ray har undersökt för eventuella terroristförbindelser. brottsplatsen är båda förödda över att upptäcka att offret är Jess 18-åriga dotter, Carolyn (Zoe Graham), vars kropp har blekts inifrån och ut för att förstöra DNA-bevis för både våldtäkt och mord.
Ray, som skulle träffa Carolyn för att planera en överraskningsfest för Jess, känner sig ansvarig för det som hände henne, medan Jess känner det ökande behovet av att flytta ut ur staden. Medan han hjälper Jess att packa, märker Ray bilder från en picknick som kastas för brottsbekämpning där en ung man ses stirra på Carolyn. Ray genomsöker fotot och matchar det till Anzor Marzin (Joe Cole), som är en informant i terrorismproben. D.A. Martin Morales (Molina) är ovillig att följa Marzin och fruktar att det skulle äventyra terrorutredningen. Officer Reggie Siefert (Kelly) tar in en misstänkt som heter Aban Ghazala (Amir Malaklou), som Ray inser att han inte är mördaren.
Ray tvingar Siefert att erkänna att han satte upp Ghazala som en patsy för att skydda Marzin. Ray och detektiv Bumpy Willis (Norris) spårar och arresterar Marzin på Dodger Stadium. Claire argumenterar med Ray om hans metoder medan han till synes försvarar Marzin och säger att han inte kan göra brottet. Claire hånar Marzin och provocerar honom att avslöja sig själv och slå henne och säger att han kommer att ge Claire vad Carolyn fick. Ray slår Marzin, vilket leder till att Morales beordrar att Marzin släpps. När Marzin gläder föreslår en upprörd Ray att de dödar honom innan han kommer undan, men Jess vägrar att gå den vägen och säger att döden skulle vara för lätt för honom. Efter hans frigivning hittar polisen Marzins skåpbil, men Siefert bränner den för att förstöra bevisen mot Marzin.
Tretton år senare återvänder Ray, nu säkerhetschef för New York Mets, till Los Angeles. och återförenas med Claire, nu DA, medan Jess, som har varit social sedan förlusten av sin dotter, är Claires främsta utredare. Ray har hittat en man som heter Clay Beckwith (Cole), som han tror är Marzin som lever under ett alias. Undersökningen leder så småningom till en shootout med Beckwith där Siefert dödas. Beckwith och hans män arresteras, men Jess insisterar på att Beckwith inte är Marzin.
När Ray och Claire besöker Jess isolerade bondgård, erkänner hon att hon hittat och dödat Marzin tretton år tidigare, kort efter att Ray lämnade Los Angeles. Senare följer Ray Jess in i sin ladugård och upptäcker att Marzin faktiskt lever, efter att ha varit fängslad i en bur i över ett decennium. Marzin ber Ray att be Jess att prata med honom. Ray drar ut pistolen och lämnar det med Jess när han går ut och börjar gräva en grav. Ray hör Jess skjuta Marzin. De två möter varandra med en känsla av lättnad medan Claire officiellt avslutar Carolyns fall.