# Adabot: Fault-Tolerant Java Decompiler

**Authors:** Zhiming Li, Qing Wu, Kun Qian

arXiv: 1908.06748 · 2019-10-16

## TL;DR

This paper introduces Adabot, a fault-tolerant Java decompiler based on attention-based neural machine translation and Transformer models, which outperforms traditional rule-based decompilers in robustness and noise resilience.

## Contribution

It proposes a novel neural machine translation approach for Java decompilation, enhancing fault-tolerance and robustness against noise compared to existing AST-based tools.

## Key findings

- Achieved BLEU-4 of 94.50% on redundant datasets
- Attained Word Error Rate of 2.65% on redundant datasets
- Demonstrated superior fault-tolerance over traditional decompilers

## Abstract

Reverse Engineering(RE) has been a fundamental task in software engineering. However, most of the traditional Java reverse engineering tools are strictly rule defined, thus are not fault-tolerant, which pose serious problem when noise and interference were introduced into the system. In this paper, we view reverse engineering as a statistical machine translation task instead of rule-based task, and propose a fault-tolerant Java decompiler based on machine translation models. Our model is based on attention-based Neural Machine Translation (NMT) and Transformer architectures. First, we measure the translation quality on both the redundant and purified datasets. Next, we evaluate the fault-tolerance(anti-noise ability) of our framework on test sets with different unit error probability (UEP). In addition, we compare the suitability of different word segmentation algorithms for decompilation task. Experimental results demonstrate that our model is more robust and fault-tolerant compared to traditional Abstract Syntax Tree (AST) based decompilers. Specifically, in terms of BLEU-4 and Word Error Rate (WER), our performance has reached 94.50% and 2.65% on the redundant test set; 92.30% and 3.48% on the purified test set.

## Full text

_Full body text omitted from this summary view._ Fetch the complete paper as Markdown: https://tomesphere.com/paper/1908.06748/full.md

## Figures

12 figures with captions in the complete paper: https://tomesphere.com/paper/1908.06748/full.md

## References

13 references — full list in the complete paper: https://tomesphere.com/paper/1908.06748/full.md

---
Source: https://tomesphere.com/paper/1908.06748