Turning programs against each other: high coverage fuzz-testing using binary-code mutation and dynamic slicing | Synapse