Rinse and pat dry 1 kg of chicken pieces.
In a bowl, mix chicken with yogurt, ginger garlic paste, salt, chili powder, and turmeric. Coat the chicken pieces well. Cover and marinate for at least 1 hour (preferably 6–8 hours).
In a grinder, add coriander seeds, cumin, black pepper, cardamom, mace, star anise, stone flower, and dried red chilies. Grind to a fine powder to make chicken masala.
In a heavy-bottomed pan, heat mustard oil on high until it begins to smoke lightly.
Add bay leaves and sauté briefly until fragrant.
Add grated onions. Sauté onions on medium heat until golden brown and moisture reduces.
Add the chicken along with marinade. Stir to coat the chicken with onions evenly and cook for 5 minutes.
Add the ground chicken masala powder. Mix well and cook for another 5 minutes.
Add chopped tomatoes and green chilies. Stir and cook covered for 5 minutes.
Add 1 cup water, cover with lid, and final cook on medium heat for 15 minutes or until chicken is tender and curry thickens. Stir occasionally.
Sprinkle chopped coriander leaves and squeeze lemon juice on top. Serve Indian Chicken Curry hot with basmati rice or naan.