There are techniques to insulate the codebase. For example, you can have one person read the actual leaked code, explain the data structures and algorithms at a high level to a developer, then have the developer implement that logic themselves based only on what they understood from the explanation. I believe this is known as clean-room reverse engineering.