Preheat oven to 350 F degrees. Line a 8 x 8 square pan with aluminium foil with overhanging edges. Spray the pan with nonstick spray and set aside.
Melt butter using microwave or in a pan on medium heat. I always prefer the stove top method.
Once the butter melts transfer it to a big bowl. Add sugar and mix.
Then add vanilla extract, cocoa powder, salt, red food color and vinegar, mixing after each addition.
Add eggs, one at a time, mixing after each addition. Finally fold in the flour until just combined.
Pour the batter into the prepared baking pan, reserving ¼ cup of batter for the swirl on top.
White Chocolate Cheesecake Layer
Melt white chocolate in a microwave, stirring every 30 seconds or using a double-boiler method. Set aside.
Whisk the cream cheese until smooth and creamy. Add in sugar, vanilla extract and egg and mix until combined.
Add in the melted white chocolate and mix till combined.
Spread the cream cheese layer on top of the brownie layer.
Now take the ¼ cup brownie batter that we had reserved earlier and drop dollops of it on top of the cheesecake layer.
Take a knife or toothpick and drag the mixture through the cheesecake layer to create swirls. Drag 2-3 times horizontally and vertically to create swirls.
Bake the brownies at 350 F degrees for 30 minutes.
Remove from oven and let the brownies cool down. Since there's cheesecake involved, I don't like to cut them right away. Place in the refrigerator for couple of hours and then cut into pieces.