You are going to have a real hard time cleaning it. I had a similar situation, and the stains are still there after 15 years.
I haven't tried this solution myself. I am inventing it on the spot from my chemistry background. What you can try is a long therapy with a high power steamer (heats, liquefy and mechanically strips the oil, hopefully) and something adsorbing, with low polarity and high pores, like cat litter, but also normal sand. Don't use hydrocloric acid (muriatic) as you are only going to ruin the concrete and obtain nothing. Oil is not attacked by acids. You will just corrode the concrete and intoxicate everyone around. It's also useless to try to soapify it with sodium hydroxide: engine oil cannot be made into soap, it's not vegetal oil. Photodegradation is your best chance, so you could try to put a UV light for a year above it ? Hardly doable.
Don't try to dissolve it with other oil, alcohol or solvents. The only thing you will obtain is to expand the stain, pollute the environment, and have a stinky concrete.