In a blender, add garlic, ginger, green chilies, and onion.
Make a thick paste by adding water.
Now in a pan, heat up 1 tablespoon oil.
Add whole garam masala and let it pop for few seconds.
Now add the blended ginger garlic and onion paste and cook on high heat until it starts to show oil on pan surface.
Add chicken and cook on high heat until chicken changes the color
Continuously stir the chicken to cook evenly.
Now add yogurt, salt, and white pepper.
Mix well until chicken shows a one-tone curry texture and oil gets visible on the pan.
Add 1 cup of water and give it a good mix.
Cover and cook for 25 minutes to tender chicken.
After 25 minutes, mix the karahi.
Add fresh cream and butter cook on low heat to mix up.
After mixing the cream in karahi increase the temperature and cook on medium heat until it shows the oil on the sides.
Cover the pan for 5 minutes and cook on low heat.
After that, the chicken karahi is ready to serve.
Sprinkle white pepper and julienne ginger and serve with Roti, naan, or kulcha.