Going Beyond Coverage-Guided Fuzzing with Structured Fuzzing