Grind garam masala, onion, ginger, garlic, and yogurt to a smooth paste.
Rub over the chicken and leave aside for 30 minutes. Heat ghee, fry almonds, and cashew nuts, and set aside for garnish.
In the same ghee fry the onions crisp and reserve half for garnish.
To the remaining onions add the bay leaves, cloves, peppercorns, cardamom, cinnamon, and turmeric and fry then add chicken and cook for 20 minutes.
Lastly add the rice, hot water, salt and cook over moderate heat until cooked.
Dissolve saffron in a little warm water and add to rice. Garnish with the balance of fried onions and nuts.
Serve in hot.