Prolepsis: binary analysis and instrumentation of iot software for control-flow integrity