Abstract:Binary2source function similarity detection is a fundamental task in software composition analysis. The 1-to-1 matching mechanism has been applied in existing binary2source matching works, where one binary function is matched against one source function. However, we discovered that such a mapping could be 1-to-n (one binary function maps to multiple source functions), due to the existence of function inlining. This mismatch causes existing binary2source matching methods to suffer a 30% performance loss under function inlining. To help conduct binary2source function matching under function inlining, we propose a method named O2NMatcher to generate Source Function Sets as the matching target for binary functions with inlining. We conducted several experiments to evaluate O2NMatcher and the results show that O2NMatcher not only enhances current binary2source function similarity detection techniques, but also enables the identification of inlined source code functions, assisting existing tools in better handling the challenges posed by inlining.