I sold concrete repair products & installed & repaired concrete flooring for many years. Prep is critical, you want to remove any loose concrete, no oil & grease, etc. The pros use a shot-blast machine to prep floors but it would be impractical to use in your case due to size & cost. The next best way is to acid wash the concrete, plenty of suggestions on the internet on how to do this.
I would use a epoxy based repair mortar to repair the worst areas. Look for a product with a primer, you brush this primer into the area to be repaired, then mix the mortar & trowel it into the area to be repaired. Sika & Hilti both make products for this but they are pricy. A one cu. ft. section of this material will set you back a hundred bucks or so. If you use a water based repair material (like plain old concrete or mortar mix) it will dry, shrink & pop out of the repaired areas, you won't be too happy with the results.
Lastly, after repairing the damaged areas I would coat the floor with an epoxy coating (the thicker the better) this will protect all your hard work! (Home Depot & Lowes sell this) I know this sounds like a lot of work but it is cheaper than a whole new concrete floor. Good luck.