You can put this solution on YOUR website!
We'll use the information given in the first sentence to determine the average rate or speed.
distance = rate*time
rate = distance/time
rate = (864 miles)/(12 hours)
rate = (864/12) mph
rate = 72 mph
Then let's see how long it takes to drive 504 miles at this speed.
distance = rate*time
time = distance/rate
time = (504 miles)/(72 mph)
time = (504/72) hours
time = 7 hours
In a theoretical framework, this answer is valid. Realistically Michael is likely to take breaks here and there, or perhaps get gas.
This means the realistic time value is probably a bit larger than 7 hours. But we can get a good ballpark estimate at least.