Kamal Haasan as Vikram/Karnan ; Fahadh Faasil as Amar ; Vijay Sethupathi as Sandhanam ; Arjun Das as Anbu ; Narain as Bejoy.