Saved in:
Bibliographic Details
Main Authors: Springer, Raphael, Schmitz, Alexander, Leinweber, Artur, Urban, Tobias, Dietrich, Christian
Format: Preprint
Published: 2025
Subjects:
Online Access:https://arxiv.org/abs/2504.21520
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866915267408297984
author Springer, Raphael
Schmitz, Alexander
Leinweber, Artur
Urban, Tobias
Dietrich, Christian
author_facet Springer, Raphael
Schmitz, Alexander
Leinweber, Artur
Urban, Tobias
Dietrich, Christian
contents Function detection is a well-known problem in binary analysis. While previous research has primarily focused on Linux/ELF, Windows/PE binaries have been overlooked or only partially considered. This paper introduces FuncPEval, a new dataset for Windows x86 and x64 PE files, featuring Chromium and the Conti ransomware, along with ground truth data for 1,092,820 function starts. Utilizing FuncPEval, we evaluate five heuristics-based (Ghidra, IDA, Nucleus, rev.ng, SMDA) and three machine-learning-based (DeepDi, RNN, XDA) function start detection tools. Among the tested tools, IDA achieves the highest F1-score (98.44%) for Chromium x64, while DeepDi closely follows (97%) but stands out as the fastest by a significant margin. Working towards explainability, we examine the impact of padding between functions on the detection results. Our analysis shows that all tested tools, except rev.ng, are susceptible to randomized padding. The randomized padding significantly diminishes the effectiveness for the RNN, XDA, and Nucleus. Among the learning-based tools, DeepDi exhibits the least sensitivity and demonstrates overall the fastest performance, while Nucleus is the most adversely affected among non-learning-based tools. In addition, we improve the recurrent neural network (RNN) proposed by Shin et al. and enhance the XDA tool, increasing the F1-score by approximately 10%.
format Preprint
id arxiv_https___arxiv_org_abs_2504_21520
institution arXiv
publishDate 2025
record_format arxiv
spellingShingle Padding Matters -- Exploring Function Detection in PE Files
Springer, Raphael
Schmitz, Alexander
Leinweber, Artur
Urban, Tobias
Dietrich, Christian
Cryptography and Security
Function detection is a well-known problem in binary analysis. While previous research has primarily focused on Linux/ELF, Windows/PE binaries have been overlooked or only partially considered. This paper introduces FuncPEval, a new dataset for Windows x86 and x64 PE files, featuring Chromium and the Conti ransomware, along with ground truth data for 1,092,820 function starts. Utilizing FuncPEval, we evaluate five heuristics-based (Ghidra, IDA, Nucleus, rev.ng, SMDA) and three machine-learning-based (DeepDi, RNN, XDA) function start detection tools. Among the tested tools, IDA achieves the highest F1-score (98.44%) for Chromium x64, while DeepDi closely follows (97%) but stands out as the fastest by a significant margin. Working towards explainability, we examine the impact of padding between functions on the detection results. Our analysis shows that all tested tools, except rev.ng, are susceptible to randomized padding. The randomized padding significantly diminishes the effectiveness for the RNN, XDA, and Nucleus. Among the learning-based tools, DeepDi exhibits the least sensitivity and demonstrates overall the fastest performance, while Nucleus is the most adversely affected among non-learning-based tools. In addition, we improve the recurrent neural network (RNN) proposed by Shin et al. and enhance the XDA tool, increasing the F1-score by approximately 10%.
title Padding Matters -- Exploring Function Detection in PE Files
topic Cryptography and Security
url https://arxiv.org/abs/2504.21520