Braedyn Moore added a 63-yard punt return for a score along with an interception return for a touchdown and Jack Walsh tacked on a 41-yard rushing TD.
Braeden Hemmelgarn scored the lone touchdown for St. Marys (10-3) on an 82-yard kickoff return in the first quarter.
Badin (12-0) advances to face Bellbrook (11-2) in the regional final next Friday at a site to be announced Sunday by the Ohio High School Athletic Association.
Badin scored a 17-7 road win over Bellbrook in Week 2.