├── javascript.md ├── python.md ├── Reverse-Engineering.md ├── README.md └── To.md /javascript.md: -------------------------------------------------------------------------------- 1 | # Awesome-Info-Inferring-Javascript 2 | ### A collection of papers, tools about type inferring, variable renaming, function name inferring. 3 | 4 | ## Papers 5 | | Paper | Venue | Year | Slide | Video | Source Code | Dataset | 6 | | :-------------: | :----------: | :--: | :-----------: | :--------------: | :---------------------: |:---------------------: | 7 | | [Learning Type Annotation: Is Big Data Enough?](https://www.cs.ucdavis.edu/~devanbu/typebert_esec_fse_.pdf) | FSE | 2021 | S | V | [typebert](https://github.com/typebert/typebert) | D | 8 | | [Deep Learning Type Inference](http://vhellendoorn.github.io/PDF/fse2018-j2t.pdf) | FSE | 2018 | S | V | [DeepTyper](https://github.com/DeepTyper/DeepTyper) | D| 9 | | [SnR: Constraint-Based Type Inference for Incomplete Java Code Snippets](https://chengniansun.bitbucket.io/public/publication/icse22/icse22.pdf) | ICSE | 2022 | S | V | [G](https://zenodo.org/record/5843327) | D | 10 | 11 | 12 | -------------------------------------------------------------------------------- /python.md: -------------------------------------------------------------------------------- 1 | # Awesome-Info-Inferring-Python 2 | ### A collection of papers, tools about type inferring, variable renaming, function name inferring. 3 | 4 | ## Papers 5 | | Paper | Venue | Year | Slide | Video | Source Code | Dataset | 6 | | :-------------: | :----------: | :--: | :-----------: | :--------------: | :---------------------: |:---------------------: | 7 | | [PYLINGUAL: Toward Perfect Decompilation of Evolving High-Level Languages](https://kangkookjee.io/wp-content/uploads/2024/11/pylingual.pdf)| S&P | 2025 | [S] | [V] | [G] | [D] | 8 | | [Cross-Lingual Transfer Learning for Statistical Type Inference](https://personal.ntu.edu.sg/yi_li/publication/Li2022CLT/)| ISSTA | 2022 | [S] | [V] | [G] | [D] | 9 | | [TypeWriter: Neural Type Prediction with Search-Based Validation](https://software-lab.org/publications/fse2020_TypeWriter.pdf) | FSE | 2020 | [S](https://software-lab.org/publications/fse2020_TypeWriter_slides.pdf) | [V](https://youtu.be/KnbPQ9LVwJQ) | [TypeWriter](https://github.com/saltudelft/dl-type-python) | [D](https://software-lab.org/projects/TypeWriter/data.tar.gz) | 10 | | [Static Inference Meets Deep Learning: A Hybrid Type Inference Approach for Python](https://arxiv.org/abs/2105.03595) | ICSE | 2022 | [S] | [V] | [G] | [D] | 11 | | [Type4Py: Practical Deep Similarity Learning-Based Type Inference for Python](https://arxiv.org/abs/2101.04470)| ICSE | 2022 | [S] | [V] | [G] | [D] | 12 | 13 | 14 | -------------------------------------------------------------------------------- /Reverse-Engineering.md: -------------------------------------------------------------------------------- 1 | # Awesome-Info-Inferring-Binary 2 | ### A collection of papers, tools about reverse engineering on stripped binary executables. 3 | 4 | ## Papers 5 | | Paper | Venue | Year | Slide | Video | Source Code | Dataset | 6 | | :-------------: | :----------: | :--: | :-----------: | :--------------: | :---------------------: |:---------------------: | 7 | | [Tady: A Neural Disassembler without Structural Constraint Violations](https://arxiv.org/pdf/2506.13323) | Usenix Sec | 2025 | S | V | [Tady](https://github.com/5c4lar/tady) | [Tady](https://zenodo.org/records/15541312) | 8 | | [Disa: Accurate Learning-based Static Disassembly with Attentions](https://arxiv.org/pdf/2507.07246) | CCS | 2025 | S | V | G | D | 9 | |[On the Heterophily of Program Graphs: A Case Study of Graph-based Type Inference](https://dl.acm.org/doi/pdf/10.1145/3671016.3671389)| Internetware| 2024 | S | V | | D | 10 | |[FFXE: Dynamic Control Flow Graph Recovery for Embedded Firmware Binaries](https://www.usenix.org/system/files/sec23winter-prepub-480-tsang.pdf)| Usenix Sec| 2024 | S | V | [FFXE](https://github.com/rchtsang/ffxe)| D | 11 | | [ZEKRA: Zero-Knowledge Control-Flow Attestation]() | AsiaCCS | 2023 | S |V | [ZEKRA](https://github.com/HeiniDebes/ZEKRA) | D| 12 | | [CALLEE: Recovering Call Graphs for Binaries with Transfer and Contrastive Learning](https://arxiv.org/pdf/2111.01415.pdf) | S&P | 2023 | S | V | [Callee](https://github.com/vul337/Callee) | D | 13 | | [DEEPDI: Learning a Relational Graph Convolutional Network Model on Instructions for Fast and Accurate Disassembly](https://www.usenix.org/system/files/sec22summer_yu-sheng.pdf) | Usenix Sec | 2022 | S | V | [DeepDi](https://github.com/DeepBitsTechnology/DeepDi) | D| 14 | | [iCallee: Recovering Call Graphs for Binaries](https://arxiv.org/pdf/2111.01415v1.pdf) | Arxiv | 2021 | S | V | G | D | 15 | | [XDA: Accurate, Robust Disassembly with Transfer Learning](https://www.cs.columbia.edu/~junfeng/papers/xda-ndss21.pdf) | NDSS |2021 | S | [V](https://www.youtube.com/watch?v=vLRzp1n5NaE&list=PLfUWWM-POgQvcgc0s4vDrtvgW1RoKk699&index=3) | [XDA](https://github.com/CUMLSec/XDA) | D | 16 | | [Datalog Disassembly](https://www.usenix.org/system/files/sec20fall_flores-montoya_prepub_0.pdf) | Usenix Sec | 2020 | [S](https://www.usenix.org/system/files/sec20_slides_flores-montoya.pdf) | [V](https://youtu.be/i_9c9YxsFuY) | [Ddisasm](https://github.com/GrammaTech/ddisasm) | D | 17 | | [Probabilistic Disassembly](https://www.cs.purdue.edu/homes/zhan3299/res/ICSE19.pdf) | ICSE | 2019 | S | V | G | D | 18 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Awesome-Info-Inferring-Binary 2 | ### A collection of papers, tools about type inferring, variable renaming, and function name inferring on stripped binary executables. 3 | 4 | ## Papers 5 | | Paper | Venue | Year | Slide | Video | Source Code | Dataset | 6 | | :-------------: | :----------: | :--: | :-----------: | :--------------: | :---------------------: |:---------------------: | 7 | | [TypeForge: Synthesizing and Selecting Best-Fit Composite Data Types for Stripped Binaries](https://noobone123.github.io/papers/typeforge-sp25.pdf) | S&P | 2025 | S | V | [TypeForge](https://github.com/noobone123/TypeForge) | [TypeForge](https://github.com/noobone123/TypeForge/tree/main/data) 8 | | [TRex: Practical Type Reconstruction for Binary Code](https://www.andrew.cmu.edu/user/bparno/papers/trex.pdf)| Usenix Sec | 2025 | S | V | [TRex](https://github.com/secure-foundations/trex) | [TRex](https://zenodo.org/records/15611995)| 9 | | [BLens: Contrastive Captioning of Binary Functions using Ensemble Embedding](https://www.usenix.org/conference/usenixsecurity25/presentation/benoit)| Usenix Sec | 2025 | S | V | [Blens](https://doi.org/10.5281/zenodo.14732394) | [Blens](https://doi.org/10.5281/zenodo.14732394) | 10 | | [DecLLM LLM-Augmented Recompilable Decompilation for Enabling Programmatic Use of Decompiled Code](https://daoyuan14.github.io/papers/ISSTA25_DecLLM.pdf) | ISSTA | 2025 | S | V | [DecLLM](https://sites.google.com/view/decllm) | D | 11 | |[Unleashing the Power of Generative Model in Recovering Variable Names from Stripped Binary](https://www.ndss-symposium.org/ndss-paper/unleashing-the-power-of-generative-model-in-recovering-variable-names-from-stripped-binary/)| NDSS | 2025 | S | V | [Gennm](https://github.com/XZ-X/gennm-ndss-ae) | D | 12 | |[Beyond Classification: Inferring Function Names in Stripped Binaries via Domain Adapted LLMs](https://www.ndss-symposium.org/ndss-paper/beyond-classification-inferring-function-names-in-stripped-binaries-via-domain-adapted-llms/)| NDSS | 2025 | S | V |[SymGen](https://github.com/OSUSecLab/SymGen) | D | 13 | | [DRAGON: Predicting Decompiled Variable Data Types with Learned Confidence Estimates](https://www.ndss-symposium.org/ndss-paper/auto-draft-629/) | BAR 2025 (NDSS) | 2025 | S | V | G | D | 14 | |[llasm: Naming Functions in Binaries by Fusing Encoder-only and Decoder-only LLMs](https://dl.acm.org/doi/10.1145/3702988) | TOSEM | 2025 | S | V | [llasm](https://github.com/Sandspeare/llasm) | D | 15 | | [STRIDE: Simple Type Recognition In Decompiled Executables](https://arxiv.org/pdf/2407.02733) | ArXiv | 2024 | S | V | [STRIDE](https://github.com/hgarrereyn/STRIDE/tree/master) | D | 16 | | [ReSym: Harnessing LLMs to Recover Variable and Data Structure Symbols from Stripped Binaries](https://www.cs.purdue.edu/homes/lintan/publications/resym-ccs24.pdf) | CCS | 2024 | S | V | [ReSym](https://github.com/lt-asset/resym/) | D | 17 | | [TYGR: Type Inference on Stripped Binaries using Graph Neural Networks](https://www.usenix.org/system/files/usenixsecurity24-zhu-chang.pdf) | Usenix Sec | 2024 | S | V | [TYGR](https://github.com/sefcom/TYGR) |D | 18 | | [Enhancing Function Name Prediction using Votes-Based Name Tokenization and Multi-task Learning](https://dl.acm.org/doi/abs/10.1145/3660782) | Proceedings of the ACM on Software EngineeringVolume 1, Issue FSE | 2024 | S | V | Epitome | D | 19 | | [Ahoy SAILR! There is No Need to DREAM of C: A Compiler-Aware Structuring Algorithm for Binary Decompilation](https://www.usenix.org/system/files/sec23winter-prepub-301-basque.pdf)| Usenix Sec | 2024 | S | V | [SAILR](https://github.com/mahaloz/sailr-eval) | D | 20 | | ["Len or index or count, anything but v1": Predicting Variable Names in Decompilation Output with Transfer Learning](https://www.atipriya.com/files/papers/varbert_oakland24.pdf)| S&P | 2024 | S | V | [VarBERT](https://github.com/sefcom/VarBERT) | D | 21 | | [FunProbe: Probing Functions from Binary Code through Probabilistic Analysis](https://softsec.kaist.ac.kr/~sangkilc/papers/kim-fse23.pdf) | ESEC/FSE | 2023 | S | V | [FunProbe](https://github.com/B2R2-org/FunProbe) | D | 22 | | [CFG2VEC: Hierarchical Graph Neural Network for Cross-Architectural Software Reverse Engineering](https://arxiv.org/pdf/2301.02723.pdf)| ICSE | 2023| S | V | [CFG2VEC](https://github.com/AICPS/mindsight_cfg2vec) | D | 23 | | [A Transformer-based Function Symbol Name Inference Model from an Assembly Language for Binary Reversing](https://dl.acm.org/doi/abs/10.1145/3579856.3582823) | AsiaCCS | 2023 | S | V | [AsmDepictor](https://github.com/agwaBom/AsmDepictor) | [D](https://drive.google.com/file/d/1-oMQnmRj7KrsLBRD1QE1xVQqcn8C4Dhv/view?usp=sharing) | 24 | | [SymLM: Predicting Function Names in Stripped Binaries via Context-Sensitive Execution-Aware Code Embeddings](https://xinjin95.github.io/assets/pdf/SymLM_ccs2022_paper.pdf) | CCS | 2022 | S | V | [SymLM](https://github.com/OSUSecLab/SymLM) | [SymLM](https://github.com/OSUSecLab/SymLM) | 25 | | [DnD: A Cross-Architecture Deep Neural Network Decompiler](https://wuruoyu.github.io/assets/pdf/dnd.pdf) | Usenix Sec | 2022 | S | V | [DnD](https://github.com/purseclab/DnD) | D | 26 | | [DIRECT : A Transformer-based Model for Decompiled Variable Name Recovery](https://aclanthology.org/2021.nlp4prog-1.6.pdf) | nlp4prog | 2021 | S | V | [DIRECT-nlp4prog](https://github.com/DIRECT-team/DIRECT-nlp4prog) | [D](https://drive.google.com/drive/folders/19Rf7NtW56r6fz-ycldZq9hjxNr5osAJW?usp=sharing)| 27 | | [XFL: Naming Functions in Binaries with Extreme Multi-label Learning](https://arxiv.org/pdf/2107.13404.pdf) | S&P(Arxiv) | 2023(2021) | S | V | [XFL](https://github.com/lmu-plai/xfl) | D | 28 | | [Variable Name Recovery in Decompiled Binary Code using Constrained Masked Language Modeling](https://arxiv.org/pdf/2103.12801.pdf) | Arxiv | 2021 | S | V | G | D | 29 | | [DIRTY: Augmenting Decompiler Output with Learned Variable Names and Types](https://www.usenix.org/system/files/sec22summer_chen-qibin.pdf) | Usenix Sec | 2022 | S | V | [DIRTY](https://github.com/CMUSTRUDEL/DIRTY) \| [Demo](https://dirtdirty.github.io/explorer.html) | D | 30 | | [A Lightweight Framework for Function Name Reassignment Based on Large-Scale Stripped Binaries](https://dl.acm.org/doi/10.1145/3460319.3464804) | ISSTA | 2021 | S | V | [NFRE](https://github.com/USTC-TTCN/NFRE)| D | 31 | | [StateFormer: Fine-Grained Type Recovery from Binaries using Generative State Modeling](https://www.cs.columbia.edu/~suman/docs/stateformer.pdf) | ESEC/FSE | 2021 | S | V | [StateFormer](https://github.com/CUMLSec/stateformer) | D | 32 | | [OSPREY: Recovery of Variable and Data Structure via Probabilistic Analysis for Stripped Binary](https://www.cs.purdue.edu/homes/zhan3299/res/SP21a.pdf) | S&P (Oakland) | 2021 | S | [V](https://youtu.be/RugYdcF8-uc) | OSPREY| D | 33 | | [Devil Is Virtual: Reversing Virtual Inheritance in C++ Binaries](https://arxiv.org/abs/2003.05039v1) | CCS | 2020 | S | V | G | D | 34 | | [Neural reverse engineering of stripped binaries using augmented control flow graphs](https://arxiv.org/abs/1902.09122v4)| OOPLSA | 2020 | [S](https://www.cs.technion.ac.il/~biham/Workshops/Cyberday/2020/Slides/yaniv-david.slides.pdf) | V| [Nero](https://github.com/tech-srl/Nero) | D | 35 | | [CATI: Context-Assisted Type Inference from Stripped Binaries](https://ieeexplore.ieee.org/document/9153442) | DSN | 2020 | S | V | G | D | 36 | | [Typilus: Neural Type Hints](https://export.arxiv.org/abs/2004.10657) | PLDI | 2020 | S | V | [Typilus](https://github.com/JetBrains-Research/typilus) | D | 37 | | [In Nomine Function: Naming Functions in Stripped Binaries with Neural Networks](https://arxiv.org/abs/1912.07946v2)| Arxiv | 2019 | S | V | [in_nomine_function](https://github.com/lucamassarelli/in_nomine_function) | D | 38 | | [DIRE: A Neural Approach to Decompiled Identifier Naming](https://ieeexplore.ieee.org/document/8952404) | ASE | 2019 | S | V | [Dire](https://github.com/pcyin/dire)| [D](https://zenodo.org/record/3403078#.YZxV7j5Bzep) | 39 | | [Type Learning for Binaries and its Applications](https://ieeexplore.ieee.org/document/8588310) | IEEETR | 2019 | S | V | [BITY](https://github.com/wcventure/BITY) | D | 40 | | [DeClassifier: Class-Inheritance Inference Engine for Optimized C++ Binaries](https://arxiv.org/pdf/1901.10073.pdf) | AsiaCCS | 2019 | S | V | DeClassifier | D | 41 | | [DEBIN:Predicting Debug Information in Stripped Binaries](https://files.sri.inf.ethz.ch/website/papers/ccs18-debin.pdf) | CCS | 2018 | S | V | [DEBIN](https://github.com/eth-sri/debin) \| [debin.ai](https://debin.ai/) | D | 42 | | [Meaningful variable names for decompiled code: a machine translation approach](https://dl.acm.org/doi/10.1145/3196321.3196330) | ICPC | 2018 | S | V | G | D | 43 | | [Neural Nets Can Learn Function Type Signatures From Binaries](https://www.usenix.org/conference/usenixsecurity17/technical-sessions/presentation/chua) | Usenix Sec | 2017 | S | [V](https://youtu.be/eCF002qNntk) | [EKLAVYA](https://github.com/shensq04/EKLAVYA) | [binary.tar.gz](https://drive.google.com/file/d/0B2qBKMQRQLHGS1JESVQ0TlF1eWs/view?usp=sharing&resourcekey=0-8RY3CA6LaeP739W42Yji7w), [pickles.tar.gz](https://drive.google.com/file/d/0B2qBKMQRQLHGdGpuTUlmMmZJYXM/view?usp=sharing&resourcekey=0-kHnq_w-Cj9OYx1MfI84x4Q), [clean_pickles.tar.gz](https://drive.google.com/file/d/0B2qBKMQRQLHGOFphWjkzcnV2LTQ/view?usp=sharing&resourcekey=0-5O0MUnDLYMdW_Hx0VjAQ2Q) | 44 | | [DSIbin: Identifying Dynamic Data Structures in C/C++ Binaries](https://www.swt-bamberg.de/luettgen/publications/pdf/ASE2017.pdf) | ASE | 2017 | S | V | [DSIbin](https://github.com/uniba-swt/DSIbin) | D | 45 | | [A Tough call: Mitigating Advanced Code-Reuse Attacks At The Binary Level]()| S&P (Oakland) | 2016 | [S](https://vvdveen.com/publications/TypeArmor.slides.pdf) | V | [TypeArmor](https://github.com/vusec/typearmor) | D | 46 | | [Type Inference on Executables](https://dl.acm.org/doi/10.1145/2896499) | ACMCS | 2016 | S | V | G | D | 47 | | [Scalable variable and data type detection in a binary rewriter](https://dl.acm.org/doi/10.1145/2491956.2462165) | PLDI | 2013 | S | V | G | D | 48 | | [TIE: Principled reverse engineering of types in binary programs](https://www.ndss-symposium.org/ndss2011/tie-principled-reverse-engineering-of-types-in-binary-programs/) | NDSS | 2011 | S | V | G | D | 49 | | [Automatic Reverse Engineering of Data Structures from Binary Execution](https://www.ndss-symposium.org/ndss2010/automatic-reverse-engineering-data-structures-binary-execution/) | NDSS | 2010 | S | V | G | D | 50 | 51 | ## Tools 52 | - 2019 [in_nomine_function](https://github.com/lucamassarelli/in_nomine_function) 53 | - 2019 [Dire](https://github.com/pcyin/dire) && [New URL](https://github.com/CMUSTRUDEL/DIRE) && [datasets](https://zenodo.org/record/3403078#.XtTi-TozaUk) 54 | - 2018 [DEBIN](https://github.com/eth-sri/debin) && [debin.ai](https://debin.ai/) 55 | - 2017 [EKLAVYA](https://github.com/shensq04/EKLAVYA) 56 | - 2018 [decomp](https://github.com/decomp/decomp) 57 | 58 | -------------------------------------------------------------------------------- /To.md: -------------------------------------------------------------------------------- 1 | | Year | Name. | Venue | Analysis | Approach | arch | Open Source | 2 | |--------------------------------|--------------------|----------|----------|---|---|------------------------------------| 3 | | 2010 | REWARDS \[ \] | NDSS | D | | | | 4 | | 2011 | TIE \[ \] | S&P | S | | | | 5 | | 2011 | Howard \[ \] | NDSS | D | | | | 6 | | 2013 | Phoenix \[ \] | Usenix | | | | | 7 | | 2013 | Compiler IR \[ \] | PLDI | S | | | | 8 | | 2014 | DREAM \[ \] | NDSS | | | | | 9 | | 2014 | ObJDIGGER \[ \] | PPREW | | | | | 10 | | 2015 | Argos \[ \] | RAID | | | | | 11 | | 2016 | DREAM\+\+ \[ \] | S&P | | | | | 12 | | 2016 | MemPick \[ , \] | ESE/WCRE | | | | | 13 | | 2016 | Retypd \[ \] | PLDI | | | | | 14 | | 2016 | SLM \[ \] | POPL | | | | | 15 | | 2016 | DSI \[ \] | ISSTA | | | | | 16 | | 2016 | TypeArmor \[ \] | CCS | | | | | 17 | | 2016 | angr \[ \] | S&P | | | | | 18 | | 2017 | BITY \[ \] | ICFEM | | | | | 19 | | 2017 | EKLAVYA \[ \] | Usenix | | | | | 20 | | 2017 | DSIbin \[ \] | ASE | | | | | 21 | | 2018 | Debin \[ \] | CCS | | | | | 22 | | 2018 | ROCK \[ \] | ASPLOS | | | | | 23 | | 2018 | OOAnalyzer \[ \] | CCS | | | | | 24 | | 2018 | Naming \[ \] | ICPC | | | | | 25 | | 2019 | TypeMiner \[ \] | DIMVA | | | | | 26 | | 2019 | BITY \[ \] | IEEETR | | | | https://github.com/wcventure/BITY | 27 | | 2019 | DeClassifier \[ \] | CCS | | | | | 28 | | 2019 | Coda \[ \] | NeurIPS | | | | | 29 | | 2019 | DIRE \[ \] | ASE | | | | | 30 | | 2020 | Typilus \[ \] | PLDI | | | | | 31 | | 2020 | CATI \[ \] | DSN | | | | | 32 | | 2020 | Nero \[ \] | OOPSLA | | | | https://github.com/tech-srl/Nero | 33 | | 2020 | VirtAnalyzer \[ \] | CCS | | | | | 34 | | 2021 | OSPREY \[ \] | S&P | S | | | | 35 | | 2021 | NFRE \[ \] | ISSTA | | | | https://github.com/USTC-TTCN/NFRE | 36 | | 2021 | StateFormer \[ \] | ESEC\FSE | | | | https://github.com/CUMLSec/stateformer | 37 | 38 | 39 | 40 | - [1] Lin, Zhiqiang, Xiangyu Zhang, and Dongyan Xu. 2010. “Automatic Reverse Engineering of Data Structures from Binary Execution.” In NDSS. 41 | - [2] Lee, JongHyup, Thanassis Avgerinos, and David Brumley. 2011. “TIE: Principled Reverse Engineering of Types in Binary Programs.” In NDSS. 42 | - [3] Slowinska, J.M., T. Stancescu, and H.J. Bos. 2011. “Howard: A Dynamic Excavator for Reverse Engineering Data Structures.” In NDSS 2011. 43 | - [4] Schwartz, Edward J., JongHyup Lee, Maverick Woo, and David Brumley. 2013. “Native ×86 Decompilation Using Semantics-Preserving Structural Analysis and Iterative Control-Flow Structuring.” In SEC’13 Proceedings of the 22nd USENIX Conference on Security, 353–68. 44 | - [5] ElWazeer, Khaled, Kapil Anand, Aparna Kotha, Matthew Smithson, and Rajeev Barua. 2013. “Scalable Variable and Data Type Detection in a Binary Rewriter.” In Proceedings of the 34th ACM SIGPLAN Conference on Programming Language Design and Implementation, 48:51–60. 45 | - [6] Yakdan, Khaled, Sebastian Eschweiler, Elmar Gerhards-Padilla, and Matthew Smith. 2015. “No More Gotos: Decompilation Using Pattern-Independent Control-Flow Structuring and Semantics-Preserving Transformations.” In Network and Distributed System Security Symposium. 46 | - [7] Jin, Wesley, Cory Cohen, Jeffrey Gennari, Charles Hines, Sagar Chaki, Arie Gurfinkel, Jeffrey Havrilla, and Priya Narasimhan. 2014. “Recovering C++ Objects From Binaries Using Inter-Procedural Data-Flow Analysis.” In Proceedings of ACM SIGPLAN on Program Protection and Reverse Engineering Workshop 2014, 1–11. 47 | - [8] Zeng, Junyuan, and Zhiqiang Lin. 2015. “Towards Automatic Inference of Kernel Object Semantics from Binary Code.” In RAID 2015 Proceedings of the 18th International Symposium on Research in Attacks, Intrusions, and Defenses - Volume 9404, 538–61. 48 | - [9] Yakdan, Khaled, Sergej Dechand, Elmar Gerhards-Padilla, and Matthew Smith. 2016. “Helping Johnny to Analyze Malware: A Usability-Optimized Decompiler and Malware Analysis User Study.” In 2016 IEEE Symposium on Security and Privacy (SP), 158–77. 49 | - [10] Haller, Istvan, Asia Slowinska, and Herbert Bos. 2016. “Scalable Data Structure Detection and Classification for C/C++ Binaries.” Empirical Software Engineering 21 (3): 778–810. 50 | - [11] Haller, Istvan, Asia Slowinska, and Herbert Bos. 2013. “MemPick: High-Level Data Structure Detection in C/C++ Binaries.” In 2013 20th Working Conference on Reverse Engineering (WCRE), 32–41. 51 | - [12] Noonan, Matt, Alexey Loginov, and David Cok. 2016. “Polymorphic Type Inference for Machine Code.” In Proceedings of the 37th ACM SIGPLAN Conference on Programming Language Design and Implementation, 51:27–41. 52 | - [13] Katz, Omer, Ran El-Yaniv, and Eran Yahav. 2016. “Estimating Types in Binaries Using Predictive Modeling.” In Proceedings of the 43rd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, 51:313–26. 53 | - [14] White, David H., Thomas Rupprecht, and Gerald Lüttgen. 2016. “DSI: An Evidence-Based Approach to Identify Dynamic Data Structures in C Programs.” In Proceedings of the 25th International Symposium on Software Testing and Analysis, 259–69. 54 | - [15] Veen, Victor van der, Enes Goktas, Moritz Contag, Andre Pawoloski, Xi Chen, Sanjay Rawat, Herbert Bos, Thorsten Holz, Elias Athanasopoulos, and Cristiano Giuffrida. 2016. “A Tough Call: Mitigating Advanced Code-Reuse Attacks at the Binary Level.” In 2016 IEEE Symposium on Security and Privacy (SP), 934–53. 55 | - [16] Shoshitaishvili, Yan, Ruoyu Wang, Christopher Salls, Nick Stephens, Mario Polino, Andrew Dutcher, John Grosen, Siji Feng, Christophe Hauser, and Christopher Kruegel. 2016. “SOK: (State of) The Art of War: Offensive Techniques in Binary Analysis.” In 2016 IEEE Symposium on Security and Privacy (SP), 138–57. 56 | - [17] Xu, Zhiwu, Cheng Wen, and Shengchao Qin. 2017. “Learning Types for Binaries.” In International Conference on Formal Engineering Methods, 430–46. 57 | - [18] Chua, Zheng Leong, Shiqi Shen, Prateek Saxena, and Zhenkai Liang. 2017. “Neural Nets Can Learn Function Type Signatures From Binaries.” In 26th {USENIX} Security Symposium ({USENIX} Security 17), 99–116. 58 | - [19] Rupprecht, Thomas, Xi Chen, David H. White, Jan H. Boockmann, Gerald Lüttgen, and Herbert Bos. 2017. “DSIbin: Identifying Dynamic Data Structures in C/C++ Binaries.” In Proceedings of the 32nd IEEE/ACM International Conference on Automated Software Engineering, 331–41. 59 | - [20] He, Jingxuan, Pesho Ivanov, Petar Tsankov, Veselin Raychev, and Martin Vechev. 2018. “Debin: Predicting Debug Information in Stripped Binaries.” In CCS ’18 Proceedings of the 2018 ACM SIGSAC Conference on Computer and Communications Security, 1667–80. 60 | - [21] Katz, Omer, Noam Rinetzky, and Eran Yahav. 2018. “Statistical Reconstruction of Class Hierarchies in Binaries.” In Proceedings of the Twenty-Third International Conference on Architectural Support for Programming Languages and Operating Systems, 53:363–76. 61 | - [22] Schwartz, Edward J., Cory F. Cohen, Michael Duggan, Jeffrey Gennari, Jeffrey S. Havrilla, and Charles Hines. 2018. “Using Logic Programming to Recover C++ Classes and Methods from Compiled Executables.” In CCS ’18 Proceedings of the 2018 ACM SIGSAC Conference on Computer and Communications Security, 426–41. 62 | - [23] Jaffe, Alan, Jeremy Lacomis, Edward J. Schwartz, Claire Le Goues, and Bogdan Vasilescu. 2018. “Meaningful Variable Names for Decompiled Code: A Machine Translation Approach.” In 2018 IEEE/ACM 26th International Conference on Program Comprehension (ICPC), 20–30. 63 | - [24] Maier, Alwin, Hugo Gascon, Christian Wressnegger, and Konrad Rieck. 2019. “TypeMiner: Recovering Types in Binary Programs Using Machine Learning.” In International Conference on Detection of Intrusions and Malware, and Vulnerability Assessment, 288–308. 64 | - [25] Erinfolami, Rukayat Ayomide, and Aravind Prakash. 2019. “DeClassifier: Class-Inheritance Inference Engine for Optimized C++ Binaries.” In Proceedings of the 2019 ACM Asia Conference on Computer and Communications Security, 28–40. 65 | - [26] Fu, Cheng, Huili Chen, Haolan Liu, Xinyun Chen, Yuandong Tian, Farinaz Koushanfar, and Jishen Zhao. 2019. “Coda: An End-to-End Neural Program Decompiler.” In Advances in Neural Information Processing Systems, 32:3708–19. 66 | - [27] Lacomis, Jeremy, Pengcheng Yin, Edward J. Schwartz, Miltiadis Allamanis, Claire Le Goues, Graham Neubig, and Bogdan Vasilescu. 2019. “DIRE: A Neural Approach to Decompiled Identifier Naming.” In Proceedings of the 34th IEEE/ACM International Conference on Automated Software Engineering, 628–39. 67 | - [28] Allamanis, Miltiadis, Earl T. Barr, Soline Ducousso, and Zheng Gao. 2020. “Typilus: Neural Type Hints.” In Proceedings of the 41st ACM SIGPLAN Conference on Programming Language Design and Implementation, 91–105. 68 | - [29] Chen, Ligeng, Zhongling He, and Bing Mao. 2020. “CATI: Context-Assisted Type Inference from Stripped Binaries.” In 2020 50th Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN), 88–98. 69 | - [30] Yaniv David, Uri Alon, and Eran Yahav. 2020. Neural reverse engineering of stripped binaries using augmented control flow graphs. Proc. ACM Program. Lang. 4, OOPSLA, Article 225 (November 2020), 28 pages. 70 | - [31] Erinfolami, Rukayat Ayomide, and Aravind Prakash. 2020. “Devil Is Virtual: Reversing Virtual Inheritance in C++ Binaries.” In Proceedings of the 2020 ACM SIGSAC Conference on Computer and Communications Security, 133–48. 71 | - [32] Zhuo Zhang, Yapeng Ye, Wei You, Guanhong Tao, Wen-chuan Lee, Yonghwi Kwon, Yousra Aafer, Xiangyu Zhang. 2021. OSPREY: Recovery of Variable and Data Structure via Probabilistic Analysis for Stripped Binary. Proceedings of the 42th IEEE Symposiums on Security and Privacy. (Oakland 2021). 72 | - [33] Xu, Z., Wen, C., & Qin, S. 2018. Type Learning for Binaries and its Applications. IEEE Transactions on Reliability, 68(3), 893-912. 73 | - [34] Gao, H., Cheng, S., Xue, Y., & Zhang, W. 2021. A lightweight framework for function name reassignment based on large-scale stripped binaries. In Proceedings of the 30th ACM SIGSOFT International Symposium on Software Testing and Analysis pp. 607–619. 74 | - [35] K. Pei, J. Guan, M. Broughton, Z. Chen, S. Yao, D. Williams-King, V. Ummadisetty, J. Yang, B. Ray, and S. Jana. StateFormer: Fine-Grained Type Recovery from Binaries using Generative State Modeling. FSE 2021 75 | --------------------------------------------------------------------------------