Take a pan, add oil and heat it.
Add whole garam masala such as cinnamon stick, cloves, cardamom into the oil.
Add finely chopped onions, saute until onions turn slight brown in color.
Add ginger garlic paste and saute for few seconds to get rid of the raw smell.
Add the chicken and roast it until the color changes.
Add dry spices such as salt, red chilli powder, turmeric powder, mix well and cook until oil leaves the sides.
Add tomato paste/ puree, mix and cook until the gravy is cooked well and until oil starts releasing from the sides.
Add some water, chopped coriander leaves, add salt according to taste, add black pepper corn powder, roasted coriander powder.
Mix up everything well.
Cook for 2-3 minutes on low flame.
Cover and cook the chicken until it gets tender.
Keep stirring in between.
Once the chicken gets tender, slightly thicken the gravy if the curry is watery by removing the lid and cooking for few minutes on low flame.
Once the curry attains gravy consistency, switch off the flame.
Serve hot with rice or parathas or roti or pulao