Marinate the chicken with curd, lemon juice, salt and ginger-garlic paste for 30 minutes.
Heat a pan on medium heat, add the whole spices and red chillies until they are fragrant.
Once the roasted chillies and other whole spices are cooled, transfer them to a blender and grind a smooth paste by adding little water.
Transfer the paste to the marinated chicken and allow to marinate for another 30 minutes.
In a wide bottomed pan, heat up the ghee, and add the curry leaves, and let it roast lightly for 2-3 minutes.
Then add the chopped onions, a little salt to cook down the onions faster, and roast on medium flame for 8-10 minutes, till the onions turn translucent. No need to brown the onions for ghee roast.
Next add the marinated chicken, mix well, and cook on medium flame (stirring intermittently) for 30 minutes or so, till the chicken is fully cooked.
The masala has now been reduced and the oil has been separated.
Add fresh curry leaves and mix well, cook for further 2-3 minutes and switch off the flame.