Take chicken in a baking pan and use a kinfe to poke holes all through the chicken. Set aside till use.
Take butter in a sauce pan and melt it down. Now add all the ingredients into it and mix well.
Now spoon the marination over the chicken and massage really well. Spoon marination into the cavity as well. Put the chicken in fridge and let it marinate for 2 hours, you can leave to marinate overnight as well.
Take the chicken out of fridge 30 mins or 1 hour before baking. Meanwhile preheat oven to 180 degree C.
Cover the tray with foil and pop the chicken in oven and bake for 45 mins. Now remove it and spoon some of the juices from the tray and cover with foil again and pop into the oven and bake for another 45 mins.
Now remove the chicken from oven, increase the heat of the oven to 220 degree C. Remove the foil from the tray, spoon the juice collected in the tray over the chicken and bake for another 35 to 40 mins, spoon the juices over the chicken every 10 mins.
Remove the chicken from oven and let it rest for 15 to 30 mins. If you have any juices in the tray just spoon it over the chicken. This will keep the chicken moist.
Sprinkle over some coriander leaves and serve.