-
Notifications
You must be signed in to change notification settings - Fork 11
Open
Labels
Description
What happened?
File "/opt/dewolf/decompiler/util/bugfinder/bugfinder.py", line 201, in iter_function_reports
task, code = self.decompile(function, task_options=options)
File "/opt/dewolf/decompile.py", line 80, in decompile
result = self.decompile_all([function_id], task_options)
File "/opt/dewolf/decompile.py", line 65, in decompile_all
pipeline.run(task)
File "/opt/dewolf/decompiler/pipeline/pipeline.py", line 114, in run
raise e
File "/opt/dewolf/decompiler/pipeline/pipeline.py", line 107, in run
instance.run(task)
File "/opt/dewolf/decompiler/pipeline/controlflowanalysis/expression_simplification/stages.py", line 33, in run
self._simplify_instructions(self._get_instructions(task), max_iterations, debug)
File "/opt/dewolf/decompiler/pipeline/controlflowanalysis/expression_simplification/stages.py", line 44, in _simplify_instructions
iteration_count = cls._simplify_instructions_with_rule_set(instructions, rule_set, max_iterations, debug)
File "/opt/dewolf/decompiler/pipeline/controlflowanalysis/expression_simplification/stages.py", line 62, in _simplify_instructions_with_rule_set
additional_iterations = cls._simplify_instruction_with_rule(instruction, rule, max_iterations - iteration_count, debug)
File "/opt/dewolf/decompiler/pipeline/controlflowanalysis/expression_simplification/stages.py", line 84, in _simplify_instruction_with_rule
substitutions = rule.apply(expression)
File "/opt/dewolf/decompiler/pipeline/controlflowanalysis/expression_simplification/rules/collapse_constants.py", line 22, in apply
folded_constant = constant_fold(operation.operation, operation.operands, operation.type)
File "/opt/dewolf/decompiler/pipeline/controlflowanalysis/expression_simplification/constant_folding.py", line 62, in constant_fold
_OPERATION_TO_FOLD_FUNCTION[operation](constants), result_type.size, isinstance(result_type, Integer) and result_type.signed
File "/opt/dewolf/decompiler/pipeline/controlflowanalysis/expression_simplification/constant_folding.py", line 98, in _constant_fold_arithmetic_binary
return fun(left_value, right_value)
Error class ZeroDivisionError@constant_folding.py:98 contains 3 cases.
How to reproduce?
python decompile.py be7678a2c62ee93e52b73287873cdd8791580076eaa286f5afe8a124b285211a sub_201308d --debugsample: be7678a2c62ee93e52b73287873cdd8791580076eaa286f5afe8a124b285211a
case: https://bugfinder.seclab-bonn.de/case/37160/
dewolf commit: ba2a67a
Binaryninja version: 3.5.4526
Reactions are currently unavailable