Small time criminal, Mahi (Mammootty) gets released from prison early. He has a reputation of beating up his rivals in the darkness. Mahi wants to help fellow inmate Balan's (Manoj K. Jayan) whose brother Satheesh (Manikuttan) is in need of money for a life saving operation. A fellow crook, Giri (Suraj Venjaramood) proposes an assignment for Mahi which will earn him enough money for the operation. Thottappally Surendran (Vijayaraghavan) plans to murder Sivasankaran Pillai (Saikumar) to settle an old score. Sivasankaran is serving life sentence for killing Surendran's father and is due to be released on short term parole. As part of a master plot, Surendran wants another man to accept the criminal charge and punishment.Mahi takes up the assignment and sets off to the island village along with Giri. During the boat service to the village, they meet Indu (Gopika), the caretaker of Sivasankaran. During the trip, Indu gets harassed by Thottappally Sugunan (Santhosh Jogi), Surendran's brother. Mahi saves Indu with a single kick at Sugunan from the back which causes the boat to sink. Mahi saves the unconscious Indu from drowning Indu and flees the scene immediately. On meeting Surendran, Mahi agrees to the task for Rs 8,00,000. Mahi and Giri are instructed to hang around the fishing village till Sivasankaran arrives on parole. Kannan Srank, a henchman of Surendran acts as their local contact.On Surendran's instruction, Kannan Srank plots to defame Indu by accusing her of having an affair with Mahi. Indu loses her job at the harbour. Aaranaimuttom Devaki (K. P. A. C. Lalitha) saves Indu from further embarrassment. Mahi and Indu get to know each other. Mahi realizes that Indu's younger sister Ammu(Nimisha Suresh) is Sathessh's girlfriend. Sugunan tries to frame Ammu in a fraud charge. Mahi beats Sugunan up with an under water attack. He does the same with Surendran spraying chilli powder. Both of them do not get a clue who was the attacker.The villagers speculate about a "Mayavi" (magician) behind the attack. Kannan Srank's bogus claims of knowing Mayavi add further fuel for the speculations. Mahi in pretense of Mayavi uses Kannan Srank to prove the innocence of both Ammu and Indu and exposes Thottappally brothers. Indu joins back the job at the harbour. Mahi through Kannan Srank also offers protection for Sivasankaran in exchange for medical expenses for Satheesh. Kannan Srank go further on behalf by plotting a story in which Mayavi is in love with Indu.Sivasankaran arrives at the village knowing all about the plot to kill him. He commands Mahi and Giri to leave immediately. In the hospital meeting Satheesh, Sivasankaran mistakes Balan as Mayavi. Balan turns out to be a crook and he decides to play along even with out knowing the entire story. Indu refuses to believe that Balan is Mayavi. Yatheendran (Keerikkadan Jose), another convict identifies Mahi as Mayavi and Thottappally brothers entrusts Yatheendran to kill Mahi. Mahi beats up Yatheendran and Thottappally brothers and spoils the plot to kill Sivasankaran. Sivasankaran, however still believes Balan is Mayavi and decides to fix Indu's wedding with Balan and make Balan a partner in his businesses.