Blend all marinade ingredients into a paste (may use a little water if needed but keep it minimal)
Marinate chicken with this paste, plus salt and turmeric powder for at least 1 hour (preferably a few hours).
Chop one yellow onion finely.
Add oil to a large wok or 6 quart pan on medium high heat. Once oil is hot, Add bay leaves, cloves, cinnamon sticks and peppercorns. Temper and sauté in oil for a minute or two and then add chopped onions. Sauté until golden brown.
Add marinated chicken. Sauté for 5-6 minutes.
Cover it on medium heat and let cook for 8-10 more minutes, stirring gently in between so it doesn’t burn. Do not add water unless required.
Remove lid, and add garam masala. Mix well with chicken.
Add 1/2 cup of full fat coconut milk (preferably cream). Stir well.
Cover again and let cook for 3-4 more minutes.
Taste and adjust seasonings once chicken is cooked.