Kaiqun Hu

11 papers Journal 8Unranked 3
YearRankTypeTitle / Venue / Authors
2025 J jnl
Biomed. Signal Process. Control.
Xin Feng, Jieming Yang, Guohang Qiu, Jiayuan Mu, Xiaocong Wu, Hongde Zhang, Kaiqun Hu
2021 J jnl
IEEE Access
Xin Feng, Chao Fang, Xicheng Lou, Kaiqun Hu
2020 J jnl
J. Inf. Process. Syst.
Kaiqun Hu, Xin Feng
2020 J jnl
IEEE Access
Xin Feng, Kaiqun Hu, Xicheng Lou
2019 J jnl
J. Inf. Process. Syst.
Xin Feng, Kaiqun Hu
2019 J jnl
J. Inf. Process. Syst.
Kaiqun Hu, Xin Feng
2018 J jnl
J. Inf. Process. Syst.
Kaiqun Hu, Xin Feng
2012 J jnl
Intell. Autom. Soft Comput.
Kaiqun Hu, Zetian Fu
2011 conf
CCTA (1)
Kaiqun Hu, Zetian Fu, Ronghua Ji, Jun Wang, Lijun Qi
2010 conf
CCTA (3)
Jianhua Zhang, Ronghua Ji, Kaiqun Hu, Xue Yuan, Hui Li, Lijun Qi
2010 conf
CCTA (3)
Hui Li, Ronghua Ji, Jianhua Zhang, Xue Yuan, Kaiqun Hu, Lijun Qi
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()