OP says you should be able to free slaves to offset against a criminal record. I disagree with this. You can't just do something good to offset something else bad that you did. Life isn't like that.
If you got a criminal record, either pay your fine or do your time (time I suspect spent outside of the more lawful systems, running away from blue flashing lights and bounty hunters). Either that, or be destroyed, that would probably clean you up.
If you did choose to free some slaves (an option which I support the inclusion of as it adds more depth and options to gameplay) then it should just give you positive reputation with anti slavery groups/systems and the opposite with pro-slavery ones.
You could just have a one-way conversion from slaves->refugees so it doesn't matter if you scooped them or bought them, you could free them and then offload them at a place that accepts them (ie. probably not a place where it's legal).
Perhaps they could be traded or used in different ways though the means of missions generated on the fly. Some might spawn a mission to return to their home planet, some might spawn revenge missions to chase down slavers, some might want to travel to a frontier planet to set up a new life. Perhaps the occasional special missions from wealthy/aristocratic captives or political prisoners etc that could send you off doing all kinds of things.
Or maybe you just leave them at the next outpost and they become travellers to [destination] for other people to pick up and ferry about.