Weijun Lu

11 papers Journal 11
YearRankTypeTitle / Venue / Authors
2025 J jnl
J. Syst. Sci. Complex.
Wudong Liu, Thomas Vietor, Weijun Lu, Guangqiang Wu
2023 J jnl
J. Commun. Inf. Networks
Ying Huang, Shilin Li, Wei Li, Weijun Lu, Xueling Zhang
2021 J jnl
Remote. Sens.
Weijun Lu, Guanyi Ma, Qingtao Wan
2019 J jnl
IEICE Trans. Inf. Syst.
Weijun Lu, Chao Geng, Dunshan Yu
2018 J jnl
CoRR
Weijun Lu, Xiao-Yang Liu, Qingwei Wu, Yue Sun, Anwar Walid
2016 J jnl
IEICE Trans. Commun.
Weijun Lu, Yanbin Zhang, Dengyun Lei, Dunshan Yu
2016 J jnl
Comput. Electr. Eng.
Yanbin Zhang, Weijun Lu, Ruiyuan Liu, Dunshan Yu
2015 J jnl
IEICE Trans. Commun.
Dengyun Lei, Weijun Lu, Yanbin Zhang, Dunshan Yu
2014 J jnl
IEICE Trans. Commun.
Yanbin Zhang, Weijun Lu, Dengyun Lei, Yongcan Huang, Dunshan Yu
2014 J jnl
IEICE Electron. Express
Dengyun Lei, Weijun Lu, Dunshan Yu
2009 J jnl
IEICE Trans. Commun.
Weijun Lu, Ying Li, Dunshan Yu, Xing Zhang
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()