Clean and Cut Chicken in to medium pieces, drain them in a colander. Marinate chicken with salt, turmeric powder and black pepper. Keep it aside.
Heat a pan and add 3-4 tbsp oil, when the oil is hot add 1/2 tsp mustard.
When the mustard seed splutters adds 3-4 medium sliced onions, 2 green chilies, 1 sprig of curry leaves, and 1/2 tsp salt. Saute these until the onion is light brown, stirring often over medium heat.
Add 1 tablespoon crushed ginger and 2 tbsp crushed garlic. Saute for another 3-4 minutes until onion is golden brown over medium heat.
Add 2 chopped tomatoes and stir together. Saute them until tomatoes are cooked very well over medium high heat.
Once the tomatoes have begun to break down, reduce heat and add 2 tbsp Kashmiri chili powder, 1 tsp chili powder, 2 1/2 tbsp coriander powder. Saute them for 2-3 minutes until the spices are cooked and fragrant.
Add chicken and coat with all spices. Add 1/4 cup hot water. Mix all together very well and cover and cook for 5 minutes over medium heat.
Prepare the masala: Add 1 tbsp fennel seeds, 1 piece of cinnamon stick, 6 cloves, 4 cardamom, 1 star anise, 1/2 tsp khas khas to a blender. Grind them to powder. Then add just enough water to grind them to paste. Keep it aside.
Remove the lid and add 1½ cups of hot water to the chicken. Let it come to boil again, stirring occasionally. Cover with a lid and cook for another 10 minutes or until the chicken is tender over medium heat. Stir occasionally to make sure it doesn't stick on the bottom. This ensures that the chicken is fully cooked and that the flavors are absorbed into chicken pieces.
Now add the ground masala and curry leaves. Reduce heat to low and cook for another 5 minutes or until the gravy is thick for your preference.
Check for salt and spices. Adjust to your taste.
Serve this Chicken curry with rice, roti, nan, parotta, etc.