Binary Code Reuse Detection for Reverse Engineering and Malware Analysis