Van-Dang Tran

12 papers B 1C 1Journal 7Unranked 3
YearRankTypeTitle / Venue / Authors
2024 J jnl
IEEE Access
Binh Minh Nguyen, Thieu Nguyen, Quoc-Hien Vu, Tran Huy Hung, Tran Hoang Hai, Huynh Thi Thanh Binh, Van-Dang Tran
2021 conf
STAF Workshops
Van-Dang Tran, Hiroyuki Kato, Zhenjiang Hu
2020 conf
SFDI/LSGDA@VLDB
Xing Zhang, Van-Dang Tran, Zhenjiang Hu
2020 B conf
APLAS
Van-Dang Tran, Hiroyuki Kato, Zhenjiang Hu
2020 J jnl
Proc. VLDB Endow.
Van-Dang Tran, Hiroyuki Kato, Zhenjiang Hu
2020 J jnl
Proc. VLDB Endow.
Van-Dang Tran, Hiroyuki Kato, Zhenjiang Hu
2020 conf
SFDI/LSGDA@VLDB
Jumpei Tanaka, Van-Dang Tran, Zhenjiang Hu
2019 C conf
SoMeT
Hoang-Long Huynh, Van-Dang Tran, Huu-Duc Nguyen, Zhenjiang Hu, Trong-Vinh Le, Quyet-Thang Huynh
2019 J jnl
Int. J. Approx. Reason.
Cuong Ha, Van-Dang Tran, Ngo Van Linh, Khoat Than
2019 J jnl
CoRR
Van-Dang Tran, Hiroyuki Kato, Zhenjiang Hu
2019 J jnl
CoRR
Jumpei Tanaka, Van-Dang Tran, Hiroyuki Kato, Zhenjiang Hu
2018 J jnl
CoRR
Yasuhito Asano, Soichiro Hidaka, Zhenjiang Hu, Yasunori Ishihara, Hiroyuki Kato, Hsiang-Shang Ko, Keisuke Nakano, Makoto Onizuka, Yuya Sasaki, Toshiyuki Shimizu, Van-Dang Tran, Kanae Tsushima, Masatoshi Yoshikawa
redb/extractors/decompiler/bninja/run.py
← Index redb/extractors/decompiler/bninja/run.py python
import argparse
import json

from decompiler import BinaryNinjaDecompiler
from utils.json_encoder import BinaryNinjaEncoder


def run_from_command_line():
    parser = argparse.ArgumentParser(description="Binary Ninja Decompiler")
    parser.add_argument("filepath", help="Path to the binary file to analyze")
    parser.add_argument(
        "--output", "-o", help="Output JSON file path (default: stdout)"
    )
    parser.add_argument(
        "--timeout",
        "-t",
        type=int,
        default=1200,
        help="Analysis timeout in seconds (default: 1200)",
    )
    args = parser.parse_args()

    with BinaryNinjaDecompiler(args.filepath, args.timeout) as decompiler:
        success = decompiler.extract()

        if not success:
            decompiler.log.error("Analysis failed")
            return 1

        # Output results
        if args.output:
            with open(args.output, "w") as f:
                json.dump(decompiler.analysis_results, f, cls=BinaryNinjaEncoder)
            decompiler.log.info(f"Results written to {args.output}")
        else:
            print(json.dumps(decompiler.analysis_results, cls=BinaryNinjaEncoder))

    return 0


if __name__ == "__main__":
    run_from_command_line()