angr 9.2.119__py3-none-manylinux2014_x86_64.whl → 9.2.121__py3-none-manylinux2014_x86_64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of angr might be problematic. Click here for more details.

Files changed (843) hide show
  1. angr/__init__.py +217 -2
  2. angr/__main__.py +14 -4
  3. angr/analyses/__init__.py +54 -0
  4. angr/analyses/analysis.py +8 -8
  5. angr/analyses/backward_slice.py +4 -4
  6. angr/analyses/bindiff.py +2 -2
  7. angr/analyses/callee_cleanup_finder.py +1 -1
  8. angr/analyses/calling_convention.py +21 -15
  9. angr/analyses/cdg.py +1 -1
  10. angr/analyses/cfg/__init__.py +12 -1
  11. angr/analyses/cfg/cfb.py +2 -2
  12. angr/analyses/cfg/cfg.py +1 -1
  13. angr/analyses/cfg/cfg_base.py +28 -11
  14. angr/analyses/cfg/cfg_emulated.py +18 -18
  15. angr/analyses/cfg/cfg_fast.py +3 -2
  16. angr/analyses/cfg/cfg_fast_soot.py +5 -5
  17. angr/analyses/cfg/cfg_job_base.py +3 -3
  18. angr/analyses/cfg/indirect_jump_resolvers/__init__.py +15 -0
  19. angr/analyses/cfg/indirect_jump_resolvers/amd64_pe_iat.py +1 -1
  20. angr/analyses/cfg/indirect_jump_resolvers/arm_elf_fast.py +2 -2
  21. angr/analyses/cfg/indirect_jump_resolvers/const_resolver.py +4 -4
  22. angr/analyses/cfg/indirect_jump_resolvers/default_resolvers.py +2 -0
  23. angr/analyses/cfg/indirect_jump_resolvers/jumptable.py +27 -20
  24. angr/analyses/cfg/indirect_jump_resolvers/mips_elf_fast.py +140 -369
  25. angr/analyses/cfg/indirect_jump_resolvers/mips_elf_got.py +148 -0
  26. angr/analyses/cfg/indirect_jump_resolvers/resolver.py +2 -2
  27. angr/analyses/cfg/indirect_jump_resolvers/x86_pe_iat.py +1 -1
  28. angr/analyses/cfg_slice_to_sink/__init__.py +8 -0
  29. angr/analyses/class_identifier.py +2 -2
  30. angr/analyses/code_tagging.py +2 -2
  31. angr/analyses/complete_calling_conventions.py +3 -3
  32. angr/analyses/congruency_check.py +1 -2
  33. angr/analyses/data_dep/__init__.py +13 -0
  34. angr/analyses/data_dep/data_dependency_analysis.py +5 -5
  35. angr/analyses/datagraph_meta.py +1 -1
  36. angr/analyses/ddg.py +3 -3
  37. angr/analyses/decompiler/__init__.py +25 -0
  38. angr/analyses/decompiler/ail_simplifier.py +8 -8
  39. angr/analyses/decompiler/block_simplifier.py +3 -3
  40. angr/analyses/decompiler/callsite_maker.py +5 -3
  41. angr/analyses/decompiler/ccall_rewriters/amd64_ccalls.py +20 -0
  42. angr/analyses/decompiler/clinic.py +25 -26
  43. angr/analyses/decompiler/condition_processor.py +7 -5
  44. angr/analyses/decompiler/counters/__init__.py +11 -0
  45. angr/analyses/decompiler/decompiler.py +24 -10
  46. angr/analyses/decompiler/dephication/seqnode_dephication.py +19 -1
  47. angr/analyses/decompiler/optimization_passes/__init__.py +66 -54
  48. angr/analyses/decompiler/optimization_passes/const_derefs.py +1 -1
  49. angr/analyses/decompiler/optimization_passes/const_prop_reverter.py +3 -3
  50. angr/analyses/decompiler/optimization_passes/cross_jump_reverter.py +1 -1
  51. angr/analyses/decompiler/optimization_passes/duplication_reverter/__init__.py +3 -0
  52. angr/analyses/decompiler/optimization_passes/duplication_reverter/duplication_reverter.py +7 -7
  53. angr/analyses/decompiler/optimization_passes/duplication_reverter/similarity.py +1 -1
  54. angr/analyses/decompiler/optimization_passes/duplication_reverter/utils.py +1 -1
  55. angr/analyses/decompiler/optimization_passes/engine_base.py +2 -2
  56. angr/analyses/decompiler/optimization_passes/expr_op_swapper.py +2 -2
  57. angr/analyses/decompiler/optimization_passes/flip_boolean_cmp.py +4 -4
  58. angr/analyses/decompiler/optimization_passes/ite_expr_converter.py +6 -6
  59. angr/analyses/decompiler/optimization_passes/ite_region_converter.py +2 -2
  60. angr/analyses/decompiler/optimization_passes/lowered_switch_simplifier.py +7 -3
  61. angr/analyses/decompiler/optimization_passes/optimization_pass.py +34 -28
  62. angr/analyses/decompiler/optimization_passes/register_save_area_simplifier.py +2 -2
  63. angr/analyses/decompiler/optimization_passes/ret_addr_save_simplifier.py +1 -1
  64. angr/analyses/decompiler/optimization_passes/ret_deduplicator.py +3 -3
  65. angr/analyses/decompiler/optimization_passes/return_duplicator_base.py +5 -5
  66. angr/analyses/decompiler/optimization_passes/return_duplicator_high.py +1 -1
  67. angr/analyses/decompiler/peephole_optimizations/__init__.py +61 -19
  68. angr/analyses/decompiler/peephole_optimizations/simplify_pc_relative_loads.py +1 -1
  69. angr/analyses/decompiler/presets/__init__.py +20 -0
  70. angr/analyses/decompiler/presets/basic.py +30 -0
  71. angr/analyses/decompiler/presets/fast.py +54 -0
  72. angr/analyses/decompiler/presets/full.py +64 -0
  73. angr/analyses/decompiler/presets/preset.py +37 -0
  74. angr/analyses/decompiler/region_identifier.py +21 -7
  75. angr/analyses/decompiler/region_simplifiers/__init__.py +3 -0
  76. angr/analyses/decompiler/region_simplifiers/cascading_cond_transformer.py +3 -3
  77. angr/analyses/decompiler/region_simplifiers/cascading_ifs.py +3 -3
  78. angr/analyses/decompiler/region_simplifiers/expr_folding.py +2 -2
  79. angr/analyses/decompiler/region_simplifiers/goto.py +3 -3
  80. angr/analyses/decompiler/region_simplifiers/if_.py +2 -2
  81. angr/analyses/decompiler/region_simplifiers/ifelse.py +4 -4
  82. angr/analyses/decompiler/region_simplifiers/loop.py +4 -4
  83. angr/analyses/decompiler/region_simplifiers/node_address_finder.py +1 -1
  84. angr/analyses/decompiler/region_simplifiers/region_simplifier.py +6 -6
  85. angr/analyses/decompiler/region_simplifiers/switch_cluster_simplifier.py +12 -5
  86. angr/analyses/decompiler/region_simplifiers/switch_expr_simplifier.py +3 -3
  87. angr/analyses/decompiler/sequence_walker.py +11 -12
  88. angr/analyses/decompiler/structured_codegen/__init__.py +14 -0
  89. angr/analyses/decompiler/structured_codegen/base.py +1 -1
  90. angr/analyses/decompiler/structured_codegen/c.py +13 -13
  91. angr/analyses/decompiler/structured_codegen/dwarf_import.py +2 -2
  92. angr/analyses/decompiler/structuring/__init__.py +11 -1
  93. angr/analyses/decompiler/structuring/dream.py +8 -8
  94. angr/analyses/decompiler/structuring/phoenix.py +6 -6
  95. angr/analyses/decompiler/structuring/recursive_structurer.py +7 -7
  96. angr/analyses/decompiler/structuring/sailr.py +2 -2
  97. angr/analyses/decompiler/structuring/structurer_base.py +9 -4
  98. angr/analyses/decompiler/structuring/structurer_nodes.py +18 -9
  99. angr/analyses/decompiler/utils.py +4 -2
  100. angr/analyses/disassembly.py +6 -6
  101. angr/analyses/disassembly_utils.py +1 -1
  102. angr/analyses/dominance_frontier.py +1 -1
  103. angr/analyses/find_objects_static.py +5 -5
  104. angr/analyses/flirt.py +3 -3
  105. angr/analyses/forward_analysis/__init__.py +9 -0
  106. angr/analyses/forward_analysis/forward_analysis.py +4 -4
  107. angr/analyses/forward_analysis/job_info.py +1 -1
  108. angr/analyses/forward_analysis/visitors/__init__.py +9 -0
  109. angr/analyses/forward_analysis/visitors/graph.py +2 -2
  110. angr/analyses/identifier/__init__.py +3 -0
  111. angr/analyses/identifier/custom_callable.py +2 -3
  112. angr/analyses/identifier/errors.py +1 -1
  113. angr/analyses/identifier/functions/__init__.py +4 -4
  114. angr/analyses/identifier/functions/atoi.py +1 -1
  115. angr/analyses/identifier/functions/based_atoi.py +1 -1
  116. angr/analyses/identifier/functions/fdprintf.py +1 -1
  117. angr/analyses/identifier/functions/free.py +2 -2
  118. angr/analyses/identifier/functions/int2str.py +1 -1
  119. angr/analyses/identifier/functions/malloc.py +2 -2
  120. angr/analyses/identifier/functions/memcmp.py +1 -1
  121. angr/analyses/identifier/functions/memcpy.py +3 -3
  122. angr/analyses/identifier/functions/memset.py +1 -1
  123. angr/analyses/identifier/functions/printf.py +1 -1
  124. angr/analyses/identifier/functions/recv_until.py +2 -2
  125. angr/analyses/identifier/functions/skip_calloc.py +2 -2
  126. angr/analyses/identifier/functions/skip_realloc.py +2 -2
  127. angr/analyses/identifier/functions/skip_recv_n.py +1 -1
  128. angr/analyses/identifier/functions/snprintf.py +1 -1
  129. angr/analyses/identifier/functions/sprintf.py +1 -1
  130. angr/analyses/identifier/functions/strcmp.py +1 -1
  131. angr/analyses/identifier/functions/strcpy.py +1 -1
  132. angr/analyses/identifier/functions/strlen.py +1 -1
  133. angr/analyses/identifier/functions/strncmp.py +1 -1
  134. angr/analyses/identifier/functions/strncpy.py +1 -1
  135. angr/analyses/identifier/functions/strtol.py +1 -1
  136. angr/analyses/identifier/identify.py +3 -3
  137. angr/analyses/identifier/runner.py +6 -6
  138. angr/analyses/init_finder.py +1 -1
  139. angr/analyses/loop_analysis.py +2 -2
  140. angr/analyses/propagator/__init__.py +3 -0
  141. angr/analyses/propagator/engine_ail.py +4 -4
  142. angr/analyses/propagator/engine_base.py +2 -2
  143. angr/analyses/propagator/engine_vex.py +2 -2
  144. angr/analyses/propagator/outdated_definition_walker.py +3 -3
  145. angr/analyses/propagator/propagator.py +3 -3
  146. angr/analyses/propagator/top_checker_mixin.py +1 -1
  147. angr/analyses/proximity_graph.py +3 -3
  148. angr/analyses/reaching_definitions/__init__.py +6 -6
  149. angr/analyses/reaching_definitions/dep_graph.py +5 -5
  150. angr/analyses/reaching_definitions/engine_ail.py +8 -8
  151. angr/analyses/reaching_definitions/engine_vex.py +18 -13
  152. angr/analyses/reaching_definitions/heap_allocator.py +3 -3
  153. angr/analyses/reaching_definitions/rd_state.py +4 -10
  154. angr/analyses/reaching_definitions/reaching_definitions.py +11 -11
  155. angr/analyses/reaching_definitions/subject.py +3 -3
  156. angr/analyses/reassembler.py +5 -5
  157. angr/analyses/{s_propagator/s_propagator.py → s_propagator.py} +1 -1
  158. angr/analyses/s_reaching_definitions/__init__.py +11 -1
  159. angr/analyses/s_reaching_definitions/s_rda_model.py +117 -0
  160. angr/analyses/s_reaching_definitions/s_rda_view.py +213 -0
  161. angr/analyses/s_reaching_definitions/s_reaching_definitions.py +159 -0
  162. angr/analyses/stack_pointer_tracker.py +5 -5
  163. angr/analyses/static_hooker.py +2 -2
  164. angr/analyses/typehoon/__init__.py +3 -0
  165. angr/analyses/typehoon/lifter.py +1 -1
  166. angr/analyses/typehoon/translator.py +2 -2
  167. angr/analyses/typehoon/typehoon.py +3 -3
  168. angr/analyses/typehoon/typevars.py +37 -16
  169. angr/analyses/variable_recovery/__init__.py +6 -0
  170. angr/analyses/variable_recovery/engine_ail.py +5 -5
  171. angr/analyses/variable_recovery/engine_base.py +7 -7
  172. angr/analyses/variable_recovery/engine_vex.py +7 -7
  173. angr/analyses/variable_recovery/variable_recovery.py +5 -5
  174. angr/analyses/variable_recovery/variable_recovery_base.py +7 -7
  175. angr/analyses/variable_recovery/variable_recovery_fast.py +7 -7
  176. angr/analyses/veritesting.py +8 -8
  177. angr/analyses/vfg.py +13 -13
  178. angr/analyses/vsa_ddg.py +3 -3
  179. angr/analyses/vtable.py +1 -1
  180. angr/analyses/xrefs.py +3 -3
  181. angr/angrdb/__init__.py +3 -0
  182. angr/angrdb/db.py +3 -3
  183. angr/angrdb/serializers/__init__.py +7 -0
  184. angr/angrdb/serializers/cfg_model.py +2 -2
  185. angr/angrdb/serializers/comments.py +2 -2
  186. angr/angrdb/serializers/funcs.py +2 -2
  187. angr/angrdb/serializers/kb.py +2 -2
  188. angr/angrdb/serializers/labels.py +2 -2
  189. angr/angrdb/serializers/loader.py +2 -2
  190. angr/angrdb/serializers/structured_code.py +4 -4
  191. angr/angrdb/serializers/variables.py +3 -3
  192. angr/angrdb/serializers/xrefs.py +2 -2
  193. angr/block.py +9 -1
  194. angr/calling_conventions.py +1 -1
  195. angr/concretization_strategies/__init__.py +17 -0
  196. angr/concretization_strategies/max.py +1 -1
  197. angr/concretization_strategies/norepeats_range.py +1 -1
  198. angr/distributed/__init__.py +6 -1
  199. angr/distributed/server.py +0 -1
  200. angr/distributed/worker.py +6 -4
  201. angr/engines/__init__.py +25 -0
  202. angr/engines/concrete.py +1 -2
  203. angr/engines/engine.py +8 -15
  204. angr/engines/failure.py +2 -2
  205. angr/engines/light/__init__.py +12 -0
  206. angr/engines/light/data.py +1 -1
  207. angr/engines/light/engine.py +6 -6
  208. angr/engines/pcode/__init__.py +7 -1
  209. angr/engines/pcode/behavior.py +1 -1
  210. angr/engines/pcode/cc.py +1 -1
  211. angr/engines/pcode/emulate.py +4 -4
  212. angr/engines/pcode/engine.py +3 -3
  213. angr/engines/pcode/lifter.py +15 -7
  214. angr/engines/procedure.py +3 -3
  215. angr/engines/soot/__init__.py +3 -0
  216. angr/engines/soot/engine.py +8 -8
  217. angr/engines/soot/expressions/__init__.py +33 -0
  218. angr/engines/soot/expressions/arrayref.py +1 -1
  219. angr/engines/soot/expressions/base.py +1 -1
  220. angr/engines/soot/expressions/cast.py +1 -1
  221. angr/engines/soot/expressions/condition.py +1 -1
  222. angr/engines/soot/expressions/constants.py +1 -1
  223. angr/engines/soot/expressions/invoke.py +2 -2
  224. angr/engines/soot/expressions/new.py +1 -1
  225. angr/engines/soot/expressions/newArray.py +1 -1
  226. angr/engines/soot/expressions/newMultiArray.py +1 -1
  227. angr/engines/soot/statements/__init__.py +16 -0
  228. angr/engines/soot/statements/assign.py +1 -1
  229. angr/engines/soot/statements/base.py +3 -3
  230. angr/engines/soot/values/__init__.py +14 -0
  231. angr/engines/soot/values/arrayref.py +1 -1
  232. angr/engines/soot/values/instancefieldref.py +1 -1
  233. angr/engines/soot/values/staticfieldref.py +1 -1
  234. angr/engines/soot/values/thisref.py +2 -2
  235. angr/engines/successors.py +8 -8
  236. angr/engines/syscall.py +1 -1
  237. angr/engines/unicorn.py +11 -11
  238. angr/engines/vex/__init__.py +18 -3
  239. angr/engines/vex/claripy/__init__.py +3 -0
  240. angr/engines/vex/claripy/ccall.py +2 -3
  241. angr/engines/vex/claripy/datalayer.py +9 -12
  242. angr/engines/vex/heavy/__init__.py +11 -1
  243. angr/engines/vex/heavy/actions.py +19 -24
  244. angr/engines/vex/heavy/heavy.py +13 -7
  245. angr/engines/vex/heavy/inspect.py +2 -2
  246. angr/engines/vex/heavy/resilience.py +2 -2
  247. angr/engines/vex/heavy/super_fastpath.py +3 -3
  248. angr/engines/vex/lifter.py +8 -6
  249. angr/engines/vex/light/__init__.py +7 -0
  250. angr/engines/vex/light/light.py +4 -4
  251. angr/engines/vex/light/slicing.py +1 -1
  252. angr/errors.py +0 -4
  253. angr/exploration_techniques/__init__.py +0 -1
  254. angr/exploration_techniques/bucketizer.py +9 -10
  255. angr/exploration_techniques/common.py +2 -2
  256. angr/exploration_techniques/director.py +4 -4
  257. angr/exploration_techniques/explorer.py +3 -3
  258. angr/exploration_techniques/loop_seer.py +3 -3
  259. angr/exploration_techniques/oppologist.py +3 -3
  260. angr/exploration_techniques/slicecutor.py +1 -1
  261. angr/exploration_techniques/spiller.py +1 -1
  262. angr/exploration_techniques/suggestions.py +4 -4
  263. angr/exploration_techniques/symbion.py +0 -1
  264. angr/exploration_techniques/threading.py +2 -2
  265. angr/exploration_techniques/tracer.py +3 -3
  266. angr/exploration_techniques/veritesting.py +1 -1
  267. angr/factory.py +5 -0
  268. angr/flirt/__init__.py +0 -1
  269. angr/{knowledge_base/knowledge_base.py → knowledge_base.py} +13 -15
  270. angr/knowledge_plugins/__init__.py +23 -1
  271. angr/knowledge_plugins/callsite_prototypes.py +2 -2
  272. angr/knowledge_plugins/cfg/cfg_manager.py +1 -1
  273. angr/knowledge_plugins/cfg/cfg_model.py +6 -6
  274. angr/knowledge_plugins/cfg/indirect_jump.py +1 -1
  275. angr/knowledge_plugins/cfg/memory_data.py +3 -2
  276. angr/knowledge_plugins/debug_variables.py +2 -2
  277. angr/knowledge_plugins/functions/__init__.py +6 -0
  278. angr/knowledge_plugins/functions/function.py +21 -16
  279. angr/knowledge_plugins/functions/function_manager.py +2 -2
  280. angr/knowledge_plugins/functions/function_parser.py +3 -3
  281. angr/knowledge_plugins/functions/soot_function.py +2 -2
  282. angr/knowledge_plugins/key_definitions/atoms.py +2 -2
  283. angr/knowledge_plugins/key_definitions/definition.py +3 -3
  284. angr/knowledge_plugins/key_definitions/key_definition_manager.py +2 -2
  285. angr/knowledge_plugins/key_definitions/uses.py +2 -2
  286. angr/knowledge_plugins/propagations/__init__.py +7 -0
  287. angr/knowledge_plugins/propagations/prop_value.py +1 -1
  288. angr/knowledge_plugins/{structured_code/manager.py → structured_code.py} +6 -3
  289. angr/knowledge_plugins/types.py +1 -1
  290. angr/knowledge_plugins/variables/__init__.py +6 -0
  291. angr/knowledge_plugins/variables/variable_access.py +3 -3
  292. angr/knowledge_plugins/variables/variable_manager.py +7 -7
  293. angr/knowledge_plugins/xrefs/__init__.py +9 -1
  294. angr/knowledge_plugins/xrefs/xref.py +5 -5
  295. angr/knowledge_plugins/xrefs/xref_manager.py +3 -3
  296. angr/lib/angr_native.so +0 -0
  297. angr/misc/__init__.py +12 -2
  298. angr/misc/loggers.py +2 -2
  299. angr/procedures/__init__.py +9 -0
  300. angr/procedures/cgc/receive.py +2 -2
  301. angr/procedures/cgc/transmit.py +1 -1
  302. angr/procedures/definitions/__init__.py +8 -8
  303. angr/procedures/definitions/cgc.py +1 -1
  304. angr/procedures/definitions/glibc.py +2 -15
  305. angr/procedures/definitions/gnulib.py +2 -6
  306. angr/procedures/definitions/libstdcpp.py +2 -2
  307. angr/procedures/definitions/linux_kernel.py +2 -3
  308. angr/procedures/definitions/linux_loader.py +1 -1
  309. angr/procedures/definitions/msvcr.py +2 -2
  310. angr/procedures/definitions/wdk_api-ms-win-dx-d3dkmt-l1-1-4.py +3 -18
  311. angr/procedures/definitions/wdk_api-ms-win-dx-d3dkmt-l1-1-6.py +3 -18
  312. angr/procedures/definitions/wdk_clfs.py +3 -18
  313. angr/procedures/definitions/wdk_fltmgr.py +3 -18
  314. angr/procedures/definitions/wdk_fwpkclnt.py +3 -18
  315. angr/procedures/definitions/wdk_fwpuclnt.py +3 -18
  316. angr/procedures/definitions/wdk_gdi32.py +3 -18
  317. angr/procedures/definitions/wdk_hal.py +3 -18
  318. angr/procedures/definitions/wdk_ksecdd.py +3 -18
  319. angr/procedures/definitions/wdk_ndis.py +3 -18
  320. angr/procedures/definitions/wdk_ntoskrnl.py +3 -18
  321. angr/procedures/definitions/wdk_offreg.py +3 -18
  322. angr/procedures/definitions/wdk_pshed.py +3 -18
  323. angr/procedures/definitions/wdk_secur32.py +3 -18
  324. angr/procedures/definitions/wdk_vhfum.py +3 -18
  325. angr/procedures/definitions/win32_aclui.py +3 -18
  326. angr/procedures/definitions/win32_activeds.py +3 -18
  327. angr/procedures/definitions/win32_advapi32.py +3 -18
  328. angr/procedures/definitions/win32_advpack.py +3 -18
  329. angr/procedures/definitions/win32_amsi.py +3 -18
  330. angr/procedures/definitions/win32_api-ms-win-appmodel-runtime-l1-1-1.py +3 -18
  331. angr/procedures/definitions/win32_api-ms-win-appmodel-runtime-l1-1-3.py +3 -18
  332. angr/procedures/definitions/win32_api-ms-win-appmodel-runtime-l1-1-6.py +3 -18
  333. angr/procedures/definitions/win32_api-ms-win-core-apiquery-l2-1-0.py +3 -18
  334. angr/procedures/definitions/win32_api-ms-win-core-backgroundtask-l1-1-0.py +3 -18
  335. angr/procedures/definitions/win32_api-ms-win-core-comm-l1-1-1.py +3 -18
  336. angr/procedures/definitions/win32_api-ms-win-core-comm-l1-1-2.py +3 -18
  337. angr/procedures/definitions/win32_api-ms-win-core-enclave-l1-1-1.py +3 -18
  338. angr/procedures/definitions/win32_api-ms-win-core-errorhandling-l1-1-3.py +3 -18
  339. angr/procedures/definitions/win32_api-ms-win-core-featurestaging-l1-1-0.py +3 -18
  340. angr/procedures/definitions/win32_api-ms-win-core-featurestaging-l1-1-1.py +3 -18
  341. angr/procedures/definitions/win32_api-ms-win-core-file-fromapp-l1-1-0.py +3 -18
  342. angr/procedures/definitions/win32_api-ms-win-core-handle-l1-1-0.py +3 -18
  343. angr/procedures/definitions/win32_api-ms-win-core-ioring-l1-1-0.py +3 -18
  344. angr/procedures/definitions/win32_api-ms-win-core-marshal-l1-1-0.py +3 -18
  345. angr/procedures/definitions/win32_api-ms-win-core-memory-l1-1-3.py +3 -18
  346. angr/procedures/definitions/win32_api-ms-win-core-memory-l1-1-4.py +3 -18
  347. angr/procedures/definitions/win32_api-ms-win-core-memory-l1-1-5.py +3 -18
  348. angr/procedures/definitions/win32_api-ms-win-core-memory-l1-1-6.py +3 -18
  349. angr/procedures/definitions/win32_api-ms-win-core-memory-l1-1-7.py +3 -18
  350. angr/procedures/definitions/win32_api-ms-win-core-memory-l1-1-8.py +3 -18
  351. angr/procedures/definitions/win32_api-ms-win-core-path-l1-1-0.py +3 -18
  352. angr/procedures/definitions/win32_api-ms-win-core-psm-appnotify-l1-1-0.py +3 -18
  353. angr/procedures/definitions/win32_api-ms-win-core-psm-appnotify-l1-1-1.py +3 -18
  354. angr/procedures/definitions/win32_api-ms-win-core-realtime-l1-1-1.py +3 -18
  355. angr/procedures/definitions/win32_api-ms-win-core-realtime-l1-1-2.py +3 -18
  356. angr/procedures/definitions/win32_api-ms-win-core-slapi-l1-1-0.py +3 -18
  357. angr/procedures/definitions/win32_api-ms-win-core-state-helpers-l1-1-0.py +3 -18
  358. angr/procedures/definitions/win32_api-ms-win-core-synch-l1-2-0.py +3 -18
  359. angr/procedures/definitions/win32_api-ms-win-core-sysinfo-l1-2-0.py +3 -18
  360. angr/procedures/definitions/win32_api-ms-win-core-sysinfo-l1-2-3.py +3 -18
  361. angr/procedures/definitions/win32_api-ms-win-core-sysinfo-l1-2-4.py +3 -18
  362. angr/procedures/definitions/win32_api-ms-win-core-sysinfo-l1-2-6.py +3 -18
  363. angr/procedures/definitions/win32_api-ms-win-core-util-l1-1-1.py +3 -18
  364. angr/procedures/definitions/win32_api-ms-win-core-winrt-error-l1-1-0.py +3 -3
  365. angr/procedures/definitions/win32_api-ms-win-core-winrt-error-l1-1-1.py +3 -3
  366. angr/procedures/definitions/win32_api-ms-win-core-winrt-l1-1-0.py +3 -3
  367. angr/procedures/definitions/win32_api-ms-win-core-winrt-registration-l1-1-0.py +3 -3
  368. angr/procedures/definitions/win32_api-ms-win-core-winrt-robuffer-l1-1-0.py +3 -3
  369. angr/procedures/definitions/win32_api-ms-win-core-winrt-roparameterizediid-l1-1-0.py +3 -3
  370. angr/procedures/definitions/win32_api-ms-win-core-winrt-string-l1-1-0.py +3 -3
  371. angr/procedures/definitions/win32_api-ms-win-core-winrt-string-l1-1-1.py +3 -3
  372. angr/procedures/definitions/win32_api-ms-win-core-wow64-l1-1-1.py +3 -18
  373. angr/procedures/definitions/win32_api-ms-win-devices-query-l1-1-0.py +3 -18
  374. angr/procedures/definitions/win32_api-ms-win-devices-query-l1-1-1.py +3 -18
  375. angr/procedures/definitions/win32_api-ms-win-dx-d3dkmt-l1-1-0.py +3 -18
  376. angr/procedures/definitions/win32_api-ms-win-gaming-deviceinformation-l1-1-0.py +3 -18
  377. angr/procedures/definitions/win32_api-ms-win-gaming-expandedresources-l1-1-0.py +3 -18
  378. angr/procedures/definitions/win32_api-ms-win-gaming-tcui-l1-1-0.py +3 -18
  379. angr/procedures/definitions/win32_api-ms-win-gaming-tcui-l1-1-1.py +3 -18
  380. angr/procedures/definitions/win32_api-ms-win-gaming-tcui-l1-1-2.py +3 -18
  381. angr/procedures/definitions/win32_api-ms-win-gaming-tcui-l1-1-3.py +3 -18
  382. angr/procedures/definitions/win32_api-ms-win-gaming-tcui-l1-1-4.py +3 -18
  383. angr/procedures/definitions/win32_api-ms-win-mm-misc-l1-1-1.py +3 -18
  384. angr/procedures/definitions/win32_api-ms-win-net-isolation-l1-1-0.py +3 -18
  385. angr/procedures/definitions/win32_api-ms-win-security-base-l1-2-2.py +3 -18
  386. angr/procedures/definitions/win32_api-ms-win-security-isolatedcontainer-l1-1-0.py +3 -18
  387. angr/procedures/definitions/win32_api-ms-win-security-isolatedcontainer-l1-1-1.py +3 -18
  388. angr/procedures/definitions/win32_api-ms-win-service-core-l1-1-3.py +3 -18
  389. angr/procedures/definitions/win32_api-ms-win-service-core-l1-1-4.py +3 -18
  390. angr/procedures/definitions/win32_api-ms-win-service-core-l1-1-5.py +3 -18
  391. angr/procedures/definitions/win32_api-ms-win-shcore-scaling-l1-1-0.py +3 -18
  392. angr/procedures/definitions/win32_api-ms-win-shcore-scaling-l1-1-1.py +3 -18
  393. angr/procedures/definitions/win32_api-ms-win-shcore-scaling-l1-1-2.py +3 -18
  394. angr/procedures/definitions/win32_api-ms-win-shcore-stream-winrt-l1-1-0.py +3 -3
  395. angr/procedures/definitions/win32_api-ms-win-wsl-api-l1-1-0.py +3 -18
  396. angr/procedures/definitions/win32_apphelp.py +3 -18
  397. angr/procedures/definitions/win32_authz.py +3 -18
  398. angr/procedures/definitions/win32_avicap32.py +3 -18
  399. angr/procedures/definitions/win32_avifil32.py +3 -18
  400. angr/procedures/definitions/win32_avrt.py +3 -18
  401. angr/procedures/definitions/win32_bcp47mrm.py +3 -18
  402. angr/procedures/definitions/win32_bcrypt.py +3 -18
  403. angr/procedures/definitions/win32_bcryptprimitives.py +3 -18
  404. angr/procedures/definitions/win32_bluetoothapis.py +3 -18
  405. angr/procedures/definitions/win32_bthprops.py +3 -3
  406. angr/procedures/definitions/win32_bthprops_cpl.py +3 -18
  407. angr/procedures/definitions/win32_cabinet.py +3 -18
  408. angr/procedures/definitions/win32_certadm.py +3 -18
  409. angr/procedures/definitions/win32_certpoleng.py +3 -18
  410. angr/procedures/definitions/win32_cfgmgr32.py +3 -18
  411. angr/procedures/definitions/win32_chakra.py +3 -18
  412. angr/procedures/definitions/win32_cldapi.py +3 -18
  413. angr/procedures/definitions/win32_clfsw32.py +3 -18
  414. angr/procedures/definitions/win32_clusapi.py +3 -18
  415. angr/procedures/definitions/win32_comctl32.py +3 -18
  416. angr/procedures/definitions/win32_comdlg32.py +3 -18
  417. angr/procedures/definitions/win32_compstui.py +3 -18
  418. angr/procedures/definitions/win32_computecore.py +3 -18
  419. angr/procedures/definitions/win32_computenetwork.py +3 -18
  420. angr/procedures/definitions/win32_computestorage.py +3 -18
  421. angr/procedures/definitions/win32_comsvcs.py +3 -18
  422. angr/procedures/definitions/win32_coremessaging.py +3 -3
  423. angr/procedures/definitions/win32_credui.py +3 -18
  424. angr/procedures/definitions/win32_crypt32.py +3 -18
  425. angr/procedures/definitions/win32_cryptnet.py +3 -18
  426. angr/procedures/definitions/win32_cryptui.py +3 -18
  427. angr/procedures/definitions/win32_cryptxml.py +3 -18
  428. angr/procedures/definitions/win32_cscapi.py +3 -18
  429. angr/procedures/definitions/win32_d2d1.py +3 -18
  430. angr/procedures/definitions/win32_d3d10.py +3 -18
  431. angr/procedures/definitions/win32_d3d10_1.py +3 -18
  432. angr/procedures/definitions/win32_d3d11.py +3 -18
  433. angr/procedures/definitions/win32_d3d12.py +3 -18
  434. angr/procedures/definitions/win32_d3d9.py +3 -18
  435. angr/procedures/definitions/win32_d3dcompiler_47.py +3 -18
  436. angr/procedures/definitions/win32_d3dcsx.py +3 -18
  437. angr/procedures/definitions/win32_davclnt.py +3 -18
  438. angr/procedures/definitions/win32_dbgeng.py +3 -18
  439. angr/procedures/definitions/win32_dbghelp.py +3 -18
  440. angr/procedures/definitions/win32_dbgmodel.py +3 -18
  441. angr/procedures/definitions/win32_dciman32.py +3 -18
  442. angr/procedures/definitions/win32_dcomp.py +3 -18
  443. angr/procedures/definitions/win32_ddraw.py +3 -18
  444. angr/procedures/definitions/win32_deviceaccess.py +3 -18
  445. angr/procedures/definitions/win32_dflayout.py +3 -18
  446. angr/procedures/definitions/win32_dhcpcsvc.py +3 -18
  447. angr/procedures/definitions/win32_dhcpcsvc6.py +3 -18
  448. angr/procedures/definitions/win32_dhcpsapi.py +3 -18
  449. angr/procedures/definitions/win32_diagnosticdataquery.py +3 -18
  450. angr/procedures/definitions/win32_dinput8.py +3 -18
  451. angr/procedures/definitions/win32_directml.py +3 -18
  452. angr/procedures/definitions/win32_dmprocessxmlfiltered.py +3 -18
  453. angr/procedures/definitions/win32_dnsapi.py +3 -18
  454. angr/procedures/definitions/win32_drt.py +3 -18
  455. angr/procedures/definitions/win32_drtprov.py +3 -18
  456. angr/procedures/definitions/win32_drttransport.py +3 -18
  457. angr/procedures/definitions/win32_dsound.py +3 -18
  458. angr/procedures/definitions/win32_dsparse.py +3 -18
  459. angr/procedures/definitions/win32_dsprop.py +3 -18
  460. angr/procedures/definitions/win32_dssec.py +3 -18
  461. angr/procedures/definitions/win32_dsuiext.py +3 -18
  462. angr/procedures/definitions/win32_dwmapi.py +3 -18
  463. angr/procedures/definitions/win32_dwrite.py +3 -18
  464. angr/procedures/definitions/win32_dxcompiler.py +3 -18
  465. angr/procedures/definitions/win32_dxcore.py +3 -18
  466. angr/procedures/definitions/win32_dxgi.py +3 -18
  467. angr/procedures/definitions/win32_dxva2.py +3 -18
  468. angr/procedures/definitions/win32_eappcfg.py +3 -18
  469. angr/procedures/definitions/win32_eappprxy.py +3 -18
  470. angr/procedures/definitions/win32_efswrt.py +3 -18
  471. angr/procedures/definitions/win32_elscore.py +3 -18
  472. angr/procedures/definitions/win32_esent.py +3 -18
  473. angr/procedures/definitions/win32_evr.py +3 -18
  474. angr/procedures/definitions/win32_faultrep.py +3 -18
  475. angr/procedures/definitions/win32_fhsvcctl.py +3 -18
  476. angr/procedures/definitions/win32_firewallapi.py +3 -18
  477. angr/procedures/definitions/win32_fltlib.py +3 -18
  478. angr/procedures/definitions/win32_fontsub.py +3 -18
  479. angr/procedures/definitions/win32_forceinline.py +3 -18
  480. angr/procedures/definitions/win32_fwpuclnt.py +3 -18
  481. angr/procedures/definitions/win32_fxsutility.py +3 -18
  482. angr/procedures/definitions/win32_gdi32.py +3 -18
  483. angr/procedures/definitions/win32_gdiplus.py +3 -18
  484. angr/procedures/definitions/win32_glu32.py +3 -18
  485. angr/procedures/definitions/win32_gpedit.py +3 -18
  486. angr/procedures/definitions/win32_hhctrl_ocx.py +3 -18
  487. angr/procedures/definitions/win32_hid.py +3 -18
  488. angr/procedures/definitions/win32_hlink.py +3 -18
  489. angr/procedures/definitions/win32_hrtfapo.py +3 -18
  490. angr/procedures/definitions/win32_httpapi.py +3 -18
  491. angr/procedures/definitions/win32_icm32.py +3 -18
  492. angr/procedures/definitions/win32_icmui.py +3 -18
  493. angr/procedures/definitions/win32_icu.py +3 -18
  494. angr/procedures/definitions/win32_ieframe.py +3 -18
  495. angr/procedures/definitions/win32_imagehlp.py +3 -18
  496. angr/procedures/definitions/win32_imgutil.py +3 -18
  497. angr/procedures/definitions/win32_imm32.py +3 -18
  498. angr/procedures/definitions/win32_infocardapi.py +3 -18
  499. angr/procedures/definitions/win32_inkobjcore.py +3 -18
  500. angr/procedures/definitions/win32_iphlpapi.py +3 -18
  501. angr/procedures/definitions/win32_iscsidsc.py +3 -18
  502. angr/procedures/definitions/win32_isolatedwindowsenvironmentutils.py +3 -18
  503. angr/procedures/definitions/win32_kernel32.py +3 -18
  504. angr/procedures/definitions/win32_kernelbase.py +3 -18
  505. angr/procedures/definitions/win32_keycredmgr.py +3 -18
  506. angr/procedures/definitions/win32_ksproxy_ax.py +3 -18
  507. angr/procedures/definitions/win32_ksuser.py +3 -18
  508. angr/procedures/definitions/win32_ktmw32.py +3 -18
  509. angr/procedures/definitions/win32_licenseprotection.py +3 -18
  510. angr/procedures/definitions/win32_loadperf.py +3 -18
  511. angr/procedures/definitions/win32_magnification.py +3 -18
  512. angr/procedures/definitions/win32_mapi32.py +3 -18
  513. angr/procedures/definitions/win32_mdmlocalmanagement.py +3 -18
  514. angr/procedures/definitions/win32_mdmregistration.py +3 -18
  515. angr/procedures/definitions/win32_mf.py +3 -18
  516. angr/procedures/definitions/win32_mfcore.py +3 -18
  517. angr/procedures/definitions/win32_mfplat.py +3 -18
  518. angr/procedures/definitions/win32_mfplay.py +3 -18
  519. angr/procedures/definitions/win32_mfreadwrite.py +3 -18
  520. angr/procedures/definitions/win32_mfsensorgroup.py +3 -18
  521. angr/procedures/definitions/win32_mfsrcsnk.py +3 -18
  522. angr/procedures/definitions/win32_mgmtapi.py +3 -18
  523. angr/procedures/definitions/win32_mi.py +3 -18
  524. angr/procedures/definitions/win32_mmdevapi.py +3 -18
  525. angr/procedures/definitions/win32_mpr.py +3 -18
  526. angr/procedures/definitions/win32_mprapi.py +3 -18
  527. angr/procedures/definitions/win32_mqrt.py +3 -18
  528. angr/procedures/definitions/win32_mrmsupport.py +3 -18
  529. angr/procedures/definitions/win32_msacm32.py +3 -18
  530. angr/procedures/definitions/win32_msajapi.py +3 -18
  531. angr/procedures/definitions/win32_mscms.py +3 -18
  532. angr/procedures/definitions/win32_mscoree.py +3 -18
  533. angr/procedures/definitions/win32_msctfmonitor.py +3 -18
  534. angr/procedures/definitions/win32_msdelta.py +3 -18
  535. angr/procedures/definitions/win32_msdmo.py +3 -18
  536. angr/procedures/definitions/win32_msdrm.py +3 -18
  537. angr/procedures/definitions/win32_msi.py +3 -18
  538. angr/procedures/definitions/win32_msimg32.py +3 -18
  539. angr/procedures/definitions/win32_mspatcha.py +3 -18
  540. angr/procedures/definitions/win32_mspatchc.py +3 -18
  541. angr/procedures/definitions/win32_msports.py +3 -18
  542. angr/procedures/definitions/win32_msrating.py +3 -18
  543. angr/procedures/definitions/win32_mssign32.py +3 -18
  544. angr/procedures/definitions/win32_mstask.py +3 -18
  545. angr/procedures/definitions/win32_msvfw32.py +3 -18
  546. angr/procedures/definitions/win32_mswsock.py +3 -18
  547. angr/procedures/definitions/win32_mtxdm.py +3 -18
  548. angr/procedures/definitions/win32_ncrypt.py +3 -18
  549. angr/procedures/definitions/win32_ndfapi.py +3 -18
  550. angr/procedures/definitions/win32_netapi32.py +3 -18
  551. angr/procedures/definitions/win32_netsh.py +3 -18
  552. angr/procedures/definitions/win32_netshell.py +3 -18
  553. angr/procedures/definitions/win32_newdev.py +3 -18
  554. angr/procedures/definitions/win32_ninput.py +3 -18
  555. angr/procedures/definitions/win32_normaliz.py +3 -18
  556. angr/procedures/definitions/win32_ntdll.py +3 -18
  557. angr/procedures/definitions/win32_ntdllk.py +3 -18
  558. angr/procedures/definitions/win32_ntdsapi.py +3 -18
  559. angr/procedures/definitions/win32_ntlanman.py +3 -18
  560. angr/procedures/definitions/win32_odbc32.py +3 -18
  561. angr/procedures/definitions/win32_odbcbcp.py +3 -18
  562. angr/procedures/definitions/win32_ole32.py +3 -18
  563. angr/procedures/definitions/win32_oleacc.py +3 -18
  564. angr/procedures/definitions/win32_oleaut32.py +3 -18
  565. angr/procedures/definitions/win32_oledlg.py +3 -18
  566. angr/procedures/definitions/win32_ondemandconnroutehelper.py +3 -18
  567. angr/procedures/definitions/win32_opengl32.py +3 -18
  568. angr/procedures/definitions/win32_opmxbox.py +3 -18
  569. angr/procedures/definitions/win32_p2p.py +3 -18
  570. angr/procedures/definitions/win32_p2pgraph.py +3 -18
  571. angr/procedures/definitions/win32_pdh.py +3 -18
  572. angr/procedures/definitions/win32_peerdist.py +3 -18
  573. angr/procedures/definitions/win32_powrprof.py +3 -18
  574. angr/procedures/definitions/win32_prntvpt.py +3 -18
  575. angr/procedures/definitions/win32_projectedfslib.py +3 -18
  576. angr/procedures/definitions/win32_propsys.py +3 -18
  577. angr/procedures/definitions/win32_psapi.py +3 -18
  578. angr/procedures/definitions/win32_quartz.py +3 -18
  579. angr/procedures/definitions/win32_query.py +3 -18
  580. angr/procedures/definitions/win32_qwave.py +3 -18
  581. angr/procedures/definitions/win32_rasapi32.py +3 -18
  582. angr/procedures/definitions/win32_rasdlg.py +3 -18
  583. angr/procedures/definitions/win32_resutils.py +3 -18
  584. angr/procedures/definitions/win32_rometadata.py +3 -3
  585. angr/procedures/definitions/win32_rpcns4.py +3 -18
  586. angr/procedures/definitions/win32_rpcproxy.py +3 -18
  587. angr/procedures/definitions/win32_rpcrt4.py +3 -18
  588. angr/procedures/definitions/win32_rstrtmgr.py +3 -18
  589. angr/procedures/definitions/win32_rtm.py +3 -18
  590. angr/procedures/definitions/win32_rtutils.py +3 -18
  591. angr/procedures/definitions/win32_rtworkq.py +3 -18
  592. angr/procedures/definitions/win32_sas.py +3 -18
  593. angr/procedures/definitions/win32_scarddlg.py +3 -18
  594. angr/procedures/definitions/win32_schannel.py +3 -18
  595. angr/procedures/definitions/win32_sechost.py +3 -18
  596. angr/procedures/definitions/win32_secur32.py +3 -18
  597. angr/procedures/definitions/win32_sensapi.py +3 -18
  598. angr/procedures/definitions/win32_sensorsutilsv2.py +3 -18
  599. angr/procedures/definitions/win32_setupapi.py +3 -18
  600. angr/procedures/definitions/win32_sfc.py +3 -18
  601. angr/procedures/definitions/win32_shdocvw.py +3 -18
  602. angr/procedures/definitions/win32_shell32.py +3 -18
  603. angr/procedures/definitions/win32_shlwapi.py +3 -18
  604. angr/procedures/definitions/win32_slc.py +3 -18
  605. angr/procedures/definitions/win32_slcext.py +3 -18
  606. angr/procedures/definitions/win32_slwga.py +3 -18
  607. angr/procedures/definitions/win32_snmpapi.py +3 -18
  608. angr/procedures/definitions/win32_spoolss.py +3 -18
  609. angr/procedures/definitions/win32_srclient.py +3 -18
  610. angr/procedures/definitions/win32_srpapi.py +3 -18
  611. angr/procedures/definitions/win32_sspicli.py +3 -18
  612. angr/procedures/definitions/win32_sti.py +3 -18
  613. angr/procedures/definitions/win32_t2embed.py +3 -18
  614. angr/procedures/definitions/win32_tapi32.py +3 -18
  615. angr/procedures/definitions/win32_tbs.py +3 -18
  616. angr/procedures/definitions/win32_tdh.py +3 -18
  617. angr/procedures/definitions/win32_tokenbinding.py +3 -18
  618. angr/procedures/definitions/win32_traffic.py +3 -18
  619. angr/procedures/definitions/win32_txfw32.py +3 -18
  620. angr/procedures/definitions/win32_ualapi.py +3 -18
  621. angr/procedures/definitions/win32_uiautomationcore.py +3 -18
  622. angr/procedures/definitions/win32_urlmon.py +3 -18
  623. angr/procedures/definitions/win32_user32.py +4 -19
  624. angr/procedures/definitions/win32_userenv.py +3 -18
  625. angr/procedures/definitions/win32_usp10.py +3 -18
  626. angr/procedures/definitions/win32_uxtheme.py +3 -18
  627. angr/procedures/definitions/win32_verifier.py +3 -18
  628. angr/procedures/definitions/win32_version.py +3 -18
  629. angr/procedures/definitions/win32_vertdll.py +3 -18
  630. angr/procedures/definitions/win32_virtdisk.py +3 -18
  631. angr/procedures/definitions/win32_vmdevicehost.py +3 -18
  632. angr/procedures/definitions/win32_vmsavedstatedumpprovider.py +3 -18
  633. angr/procedures/definitions/win32_vssapi.py +3 -18
  634. angr/procedures/definitions/win32_wcmapi.py +3 -18
  635. angr/procedures/definitions/win32_wdsbp.py +3 -18
  636. angr/procedures/definitions/win32_wdsclientapi.py +3 -18
  637. angr/procedures/definitions/win32_wdsmc.py +3 -18
  638. angr/procedures/definitions/win32_wdspxe.py +3 -18
  639. angr/procedures/definitions/win32_wdstptc.py +3 -18
  640. angr/procedures/definitions/win32_webauthn.py +3 -18
  641. angr/procedures/definitions/win32_webservices.py +3 -18
  642. angr/procedures/definitions/win32_websocket.py +3 -18
  643. angr/procedures/definitions/win32_wecapi.py +3 -18
  644. angr/procedures/definitions/win32_wer.py +3 -18
  645. angr/procedures/definitions/win32_wevtapi.py +3 -18
  646. angr/procedures/definitions/win32_winbio.py +3 -18
  647. angr/procedures/definitions/win32_windows_ai_machinelearning.py +3 -18
  648. angr/procedures/definitions/win32_windows_data_pdf.py +3 -3
  649. angr/procedures/definitions/win32_windows_media_mediacontrol.py +3 -18
  650. angr/procedures/definitions/win32_windows_networking.py +3 -18
  651. angr/procedures/definitions/win32_windows_ui_xaml.py +3 -18
  652. angr/procedures/definitions/win32_windowscodecs.py +3 -18
  653. angr/procedures/definitions/win32_winfax.py +3 -18
  654. angr/procedures/definitions/win32_winhttp.py +3 -18
  655. angr/procedures/definitions/win32_winhvemulation.py +3 -18
  656. angr/procedures/definitions/win32_winhvplatform.py +3 -18
  657. angr/procedures/definitions/win32_wininet.py +3 -18
  658. angr/procedures/definitions/win32_winml.py +3 -18
  659. angr/procedures/definitions/win32_winmm.py +3 -18
  660. angr/procedures/definitions/win32_winscard.py +3 -18
  661. angr/procedures/definitions/win32_winspool.py +3 -3
  662. angr/procedures/definitions/win32_winspool_drv.py +3 -18
  663. angr/procedures/definitions/win32_wintrust.py +3 -18
  664. angr/procedures/definitions/win32_winusb.py +3 -18
  665. angr/procedures/definitions/win32_wlanapi.py +3 -18
  666. angr/procedures/definitions/win32_wlanui.py +3 -18
  667. angr/procedures/definitions/win32_wldap32.py +3 -18
  668. angr/procedures/definitions/win32_wldp.py +3 -18
  669. angr/procedures/definitions/win32_wmvcore.py +3 -18
  670. angr/procedures/definitions/win32_wnvapi.py +3 -18
  671. angr/procedures/definitions/win32_wofutil.py +3 -18
  672. angr/procedures/definitions/win32_ws2_32.py +3 -18
  673. angr/procedures/definitions/win32_wscapi.py +3 -18
  674. angr/procedures/definitions/win32_wsclient.py +3 -18
  675. angr/procedures/definitions/win32_wsdapi.py +3 -18
  676. angr/procedures/definitions/win32_wsmsvc.py +3 -18
  677. angr/procedures/definitions/win32_wsnmp32.py +3 -18
  678. angr/procedures/definitions/win32_wtsapi32.py +3 -18
  679. angr/procedures/definitions/win32_xaudio2_8.py +3 -18
  680. angr/procedures/definitions/win32_xinput1_4.py +3 -18
  681. angr/procedures/definitions/win32_xinputuap.py +3 -3
  682. angr/procedures/definitions/win32_xmllite.py +3 -18
  683. angr/procedures/definitions/win32_xolehlp.py +3 -18
  684. angr/procedures/definitions/win32_xpsprint.py +3 -18
  685. angr/procedures/glibc/scanf.py +2 -2
  686. angr/procedures/glibc/sscanf.py +1 -1
  687. angr/procedures/java/__init__.py +6 -3
  688. angr/procedures/java/unconstrained.py +3 -3
  689. angr/procedures/java_io/read.py +1 -1
  690. angr/procedures/java_io/write.py +1 -1
  691. angr/procedures/java_jni/__init__.py +4 -4
  692. angr/procedures/java_jni/array_operations.py +2 -2
  693. angr/procedures/java_jni/field_access.py +3 -3
  694. angr/procedures/java_jni/method_calls.py +2 -2
  695. angr/procedures/java_jni/object_operations.py +1 -1
  696. angr/procedures/java_jni/string_operations.py +1 -1
  697. angr/procedures/java_lang/character.py +1 -1
  698. angr/procedures/java_lang/double.py +1 -1
  699. angr/procedures/java_lang/exit.py +1 -1
  700. angr/procedures/java_lang/getsimplename.py +1 -1
  701. angr/procedures/java_lang/integer.py +2 -2
  702. angr/procedures/java_lang/load_library.py +1 -1
  703. angr/procedures/java_lang/math.py +1 -1
  704. angr/procedures/java_lang/string.py +3 -3
  705. angr/procedures/java_lang/stringbuilder.py +2 -2
  706. angr/procedures/java_lang/system.py +1 -1
  707. angr/procedures/java_util/collection.py +2 -2
  708. angr/procedures/java_util/iterator.py +2 -2
  709. angr/procedures/java_util/list.py +3 -3
  710. angr/procedures/java_util/map.py +3 -3
  711. angr/procedures/java_util/random.py +1 -1
  712. angr/procedures/java_util/scanner_nextline.py +2 -2
  713. angr/procedures/libc/fseek.py +1 -1
  714. angr/procedures/libc/memcpy.py +1 -1
  715. angr/procedures/libc/strlen.py +12 -4
  716. angr/procedures/libc/strncmp.py +9 -4
  717. angr/procedures/linux_kernel/iovec.py +3 -3
  718. angr/procedures/linux_kernel/mmap.py +1 -1
  719. angr/procedures/linux_kernel/stat.py +1 -1
  720. angr/procedures/linux_kernel/sysinfo.py +1 -1
  721. angr/procedures/posix/bzero.py +1 -1
  722. angr/procedures/posix/mmap.py +1 -1
  723. angr/procedures/posix/send.py +1 -1
  724. angr/procedures/posix/syslog.py +2 -3
  725. angr/procedures/procedure_dict.py +2 -2
  726. angr/procedures/stubs/format_parser.py +5 -5
  727. angr/procedures/tracer/random.py +1 -1
  728. angr/procedures/tracer/receive.py +1 -1
  729. angr/procedures/tracer/transmit.py +1 -1
  730. angr/procedures/uclibc/__uClibc_main.py +1 -1
  731. angr/protos/__init__.py +8 -0
  732. angr/protos/cfg_pb2.py +23 -15
  733. angr/protos/function_pb2.py +19 -21
  734. angr/protos/primitives_pb2.py +46 -112
  735. angr/protos/variables_pb2.py +38 -114
  736. angr/protos/xrefs_pb2.py +17 -18
  737. angr/sim_options.py +0 -4
  738. angr/sim_state.py +2 -78
  739. angr/sim_type.py +9 -18
  740. angr/simos/__init__.py +12 -0
  741. angr/simos/cgc.py +5 -5
  742. angr/simos/javavm.py +12 -12
  743. angr/simos/linux.py +5 -5
  744. angr/simos/simos.py +11 -15
  745. angr/simos/userland.py +3 -3
  746. angr/simos/windows.py +5 -10
  747. angr/state_plugins/__init__.py +84 -28
  748. angr/state_plugins/callstack.py +1 -1
  749. angr/state_plugins/concrete.py +3 -4
  750. angr/state_plugins/filesystem.py +3 -3
  751. angr/state_plugins/gdb.py +1 -1
  752. angr/state_plugins/heap/__init__.py +14 -5
  753. angr/state_plugins/heap/heap_base.py +5 -4
  754. angr/state_plugins/heap/heap_brk.py +1 -1
  755. angr/state_plugins/heap/heap_freelist.py +1 -1
  756. angr/state_plugins/heap/heap_ptmalloc.py +2 -20
  757. angr/state_plugins/heap/utils.py +1 -1
  758. angr/state_plugins/history.py +2 -2
  759. angr/state_plugins/javavm_classloader.py +3 -3
  760. angr/state_plugins/jni_references.py +1 -1
  761. angr/state_plugins/light_registers.py +3 -3
  762. angr/state_plugins/log.py +1 -1
  763. angr/state_plugins/plugin.py +3 -2
  764. angr/state_plugins/posix.py +3 -3
  765. angr/state_plugins/preconstrainer.py +4 -4
  766. angr/state_plugins/scratch.py +3 -3
  767. angr/state_plugins/sim_action_object.py +1 -1
  768. angr/state_plugins/solver.py +85 -32
  769. angr/state_plugins/symbolizer.py +2 -3
  770. angr/state_plugins/uc_manager.py +1 -1
  771. angr/state_plugins/unicorn_engine.py +4 -4
  772. angr/state_plugins/view.py +1 -1
  773. angr/storage/__init__.py +9 -4
  774. angr/storage/file.py +4 -4
  775. angr/storage/memory_mixins/__init__.py +89 -162
  776. angr/storage/memory_mixins/actions_mixin.py +3 -3
  777. angr/storage/memory_mixins/address_concretization_mixin.py +7 -7
  778. angr/storage/memory_mixins/bvv_conversion_mixin.py +2 -2
  779. angr/storage/memory_mixins/clouseau_mixin.py +3 -2
  780. angr/storage/memory_mixins/conditional_store_mixin.py +1 -1
  781. angr/storage/memory_mixins/convenient_mappings_mixin.py +3 -3
  782. angr/storage/memory_mixins/default_filler_mixin.py +4 -4
  783. angr/storage/memory_mixins/dirty_addrs_mixin.py +2 -1
  784. angr/storage/memory_mixins/hex_dumper_mixin.py +2 -2
  785. angr/storage/memory_mixins/{javavm_memory/javavm_memory_mixin.py → javavm_memory_mixin.py} +15 -12
  786. angr/storage/memory_mixins/{keyvalue_memory/keyvalue_memory_mixin.py → keyvalue_memory_mixin.py} +11 -6
  787. angr/storage/memory_mixins/label_merger_mixin.py +1 -1
  788. angr/storage/memory_mixins/memory_mixin.py +163 -0
  789. angr/storage/memory_mixins/multi_value_merger_mixin.py +1 -1
  790. angr/storage/memory_mixins/name_resolution_mixin.py +5 -3
  791. angr/storage/memory_mixins/paged_memory/paged_memory_mixin.py +2 -2
  792. angr/storage/memory_mixins/paged_memory/paged_memory_multivalue_mixin.py +2 -1
  793. angr/storage/memory_mixins/paged_memory/pages/__init__.py +16 -1
  794. angr/storage/memory_mixins/paged_memory/pages/history_tracking_mixin.py +1 -1
  795. angr/storage/memory_mixins/paged_memory/pages/ispo_mixin.py +2 -1
  796. angr/storage/memory_mixins/paged_memory/pages/mv_list_page.py +1 -1
  797. angr/storage/memory_mixins/paged_memory/pages/permissions_mixin.py +1 -1
  798. angr/storage/memory_mixins/paged_memory/pages/refcount_mixin.py +2 -1
  799. angr/storage/memory_mixins/paged_memory/pages/ultra_page.py +2 -2
  800. angr/storage/memory_mixins/paged_memory/stack_allocation_mixin.py +2 -2
  801. angr/storage/memory_mixins/regioned_memory/__init__.py +10 -0
  802. angr/storage/memory_mixins/regioned_memory/abstract_merger_mixin.py +1 -2
  803. angr/storage/memory_mixins/regioned_memory/region_category_mixin.py +2 -1
  804. angr/storage/memory_mixins/regioned_memory/region_data.py +2 -2
  805. angr/storage/memory_mixins/regioned_memory/region_meta_mixin.py +1 -1
  806. angr/storage/memory_mixins/regioned_memory/regioned_address_concretization_mixin.py +4 -4
  807. angr/storage/memory_mixins/regioned_memory/regioned_memory_mixin.py +8 -20
  808. angr/storage/memory_mixins/regioned_memory/static_find_mixin.py +1 -1
  809. angr/storage/memory_mixins/simple_interface_mixin.py +3 -2
  810. angr/storage/memory_mixins/simplification_mixin.py +3 -2
  811. angr/storage/memory_mixins/size_resolution_mixin.py +2 -2
  812. angr/storage/memory_mixins/slotted_memory.py +3 -3
  813. angr/storage/memory_mixins/smart_find_mixin.py +2 -2
  814. angr/storage/memory_mixins/symbolic_merger_mixin.py +2 -1
  815. angr/storage/memory_mixins/top_merger_mixin.py +3 -2
  816. angr/storage/memory_mixins/underconstrained_mixin.py +5 -3
  817. angr/storage/memory_mixins/unwrapper_mixin.py +3 -2
  818. angr/storage/memory_object.py +1 -1
  819. angr/utils/__init__.py +12 -0
  820. angr/utils/enums_conv.py +1 -1
  821. angr/utils/library.py +2 -2
  822. angr/utils/mp.py +1 -1
  823. {angr-9.2.119.dist-info → angr-9.2.121.dist-info}/METADATA +7 -8
  824. angr-9.2.121.dist-info/RECORD +1342 -0
  825. angr/analyses/s_liveness/__init__.py +0 -2
  826. angr/analyses/s_propagator/__init__.py +0 -2
  827. angr/analyses/s_reaching_definitions/s_rda.py +0 -479
  828. angr/knowledge_base/__init__.py +0 -2
  829. angr/knowledge_plugins/structured_code/__init__.py +0 -2
  830. angr/knowledge_plugins/sync/__init__.py +0 -2
  831. angr/knowledge_plugins/sync/sync_controller.py +0 -324
  832. angr/misc/range.py +0 -24
  833. angr/misc/weakpatch.py +0 -59
  834. angr/storage/memory_mixins/javavm_memory/__init__.py +0 -2
  835. angr/storage/memory_mixins/keyvalue_memory/__init__.py +0 -2
  836. angr/storage/pcap.py +0 -65
  837. angr/utils/typing.py +0 -18
  838. angr-9.2.119.dist-info/RECORD +0 -1345
  839. /angr/analyses/{s_liveness/s_liveness.py → s_liveness.py} +0 -0
  840. {angr-9.2.119.dist-info → angr-9.2.121.dist-info}/LICENSE +0 -0
  841. {angr-9.2.119.dist-info → angr-9.2.121.dist-info}/WHEEL +0 -0
  842. {angr-9.2.119.dist-info → angr-9.2.121.dist-info}/entry_points.txt +0 -0
  843. {angr-9.2.119.dist-info → angr-9.2.121.dist-info}/top_level.txt +0 -0
angr/engines/engine.py CHANGED
@@ -4,10 +4,16 @@ from __future__ import annotations
4
4
  import abc
5
5
  import logging
6
6
  import threading
7
- import angr
8
7
 
9
8
  from archinfo.arch_soot import SootAddressDescriptor
10
9
 
10
+ import angr
11
+ from angr import sim_options as o
12
+ from angr.errors import SimException
13
+ from angr.state_plugins.inspect import BP_AFTER, BP_BEFORE
14
+
15
+ from .successors import SimSuccessors
16
+
11
17
  l = logging.getLogger(name=__name__)
12
18
 
13
19
 
@@ -32,12 +38,6 @@ class SimEngineBase:
32
38
  self.project = state[0]
33
39
  self.state = None
34
40
 
35
- def _is_true(self, v):
36
- return v is True
37
-
38
- def _is_false(self, v):
39
- return v is False
40
-
41
41
 
42
42
  class SimEngine(SimEngineBase, metaclass=abc.ABCMeta):
43
43
  """
@@ -183,7 +183,7 @@ class SuccessorsMixin(SimEngine):
183
183
 
184
184
  return self.successors
185
185
 
186
- def process_successors(self, successors, **kwargs):
186
+ def process_successors(self, successors, **kwargs): # pylint:disable=unused-argument
187
187
  """
188
188
  Implement this function to fill out the SimSuccessors object with the results of stepping state.
189
189
 
@@ -201,10 +201,3 @@ class SuccessorsMixin(SimEngine):
201
201
  :param kwargs: Any extra arguments. Do not fail if you are passed unexpected arguments.
202
202
  """
203
203
  successors.processed = False # mark failure
204
-
205
-
206
- # pylint:disable=wrong-import-position
207
- from .. import sim_options as o
208
- from ..state_plugins.inspect import BP_BEFORE, BP_AFTER
209
- from .successors import SimSuccessors
210
- from ..errors import SimException
angr/engines/failure.py CHANGED
@@ -16,7 +16,7 @@ class SimEngineFailure(SuccessorsMixin, ProcedureMixin):
16
16
  raise AngrExitError(f"Cannot execute following jumpkind {jumpkind}")
17
17
 
18
18
  if jumpkind == "Ijk_Exit":
19
- from ..procedures import SIM_PROCEDURES
19
+ from angr.procedures import SIM_PROCEDURES
20
20
 
21
21
  l.debug("Execution terminated at %#x", state.addr)
22
22
  terminator = SIM_PROCEDURES["stubs"]["PathTerminator"](project=self.project)
@@ -25,4 +25,4 @@ class SimEngineFailure(SuccessorsMixin, ProcedureMixin):
25
25
  return super().process_successors(successors, **kwargs)
26
26
 
27
27
 
28
- from ..errors import AngrExitError
28
+ from angr.errors import AngrExitError
@@ -1,3 +1,15 @@
1
1
  from __future__ import annotations
2
+
2
3
  from .data import ArithmeticExpression, SpOffset, RegisterOffset
3
4
  from .engine import SimEngineLight, SimEngineLightVEXMixin, SimEngineLightAILMixin, SimEngineLightVEX, SimEngineLightAIL
5
+
6
+ __all__ = (
7
+ "ArithmeticExpression",
8
+ "SpOffset",
9
+ "RegisterOffset",
10
+ "SimEngineLight",
11
+ "SimEngineLightVEXMixin",
12
+ "SimEngineLightAILMixin",
13
+ "SimEngineLightVEX",
14
+ "SimEngineLightAIL",
15
+ )
@@ -1,7 +1,7 @@
1
1
  from __future__ import annotations
2
2
  import ailment
3
3
 
4
- from ...utils.constants import is_alignment_mask
4
+ from angr.utils.constants import is_alignment_mask
5
5
 
6
6
 
7
7
  class ArithmeticExpression:
@@ -10,12 +10,12 @@ import pyvex
10
10
  import claripy
11
11
  import archinfo
12
12
 
13
- from ...misc.ux import once
14
- from ...engines.vex.claripy.datalayer import value as claripy_value
15
- from ...engines.vex.claripy.irop import UnsupportedIROpError, SimOperationError, vexop_to_simop
16
- from ...code_location import CodeLocation
17
- from ...utils.constants import DEFAULT_STATEMENT
18
- from ..engine import SimEngine
13
+ from angr.misc.ux import once
14
+ from angr.engines.vex.claripy.datalayer import value as claripy_value
15
+ from angr.engines.vex.claripy.irop import UnsupportedIROpError, SimOperationError, vexop_to_simop
16
+ from angr.code_location import CodeLocation
17
+ from angr.utils.constants import DEFAULT_STATEMENT
18
+ from angr.engines.engine import SimEngine
19
19
  import contextlib
20
20
 
21
21
 
@@ -1,3 +1,9 @@
1
1
  from __future__ import annotations
2
- from .engine import HeavyPcodeMixin
2
+
3
3
  from .cc import register_pcode_arch_default_cc
4
+ from .engine import HeavyPcodeMixin
5
+
6
+ __all__ = (
7
+ "register_pcode_arch_default_cc",
8
+ "HeavyPcodeMixin",
9
+ )
@@ -5,7 +5,7 @@ from collections.abc import Callable, Iterable
5
5
  import claripy
6
6
  from claripy.ast.bv import BV
7
7
 
8
- from ...errors import AngrError
8
+ from angr.errors import AngrError
9
9
 
10
10
  try:
11
11
  from pypcode import OpCode
angr/engines/pcode/cc.py CHANGED
@@ -3,7 +3,7 @@ import logging
3
3
 
4
4
  from archinfo import ArchPcode
5
5
 
6
- from ...calling_conventions import (
6
+ from angr.calling_conventions import (
7
7
  SimCC,
8
8
  SimRegArg,
9
9
  SimStackArg,
@@ -4,12 +4,12 @@ import logging
4
4
  import claripy
5
5
  from claripy.ast.bv import BV
6
6
 
7
- from ..engine import SimEngineBase
8
- from ...utils.constants import DEFAULT_STATEMENT
7
+ from angr.engines.engine import SimEngineBase
8
+ from angr.utils.constants import DEFAULT_STATEMENT
9
9
  from .lifter import IRSB
10
10
  from .behavior import OpBehavior
11
- from ...errors import AngrError
12
- from ...state_plugins.inspect import BP_BEFORE, BP_AFTER
11
+ from angr.errors import AngrError
12
+ from angr.state_plugins.inspect import BP_BEFORE, BP_AFTER
13
13
  import contextlib
14
14
 
15
15
  with contextlib.suppress(ImportError):
@@ -7,9 +7,9 @@ import logging
7
7
  from angr.calling_conventions import DEFAULT_CC, default_cc, SimRegArg
8
8
  from angr.engines.engine import SuccessorsMixin, SimSuccessors
9
9
  from angr.misc.ux import once
10
- from ...utils.constants import DEFAULT_STATEMENT
11
- from ... import sim_options as o
12
- from ... import errors
10
+ from angr.utils.constants import DEFAULT_STATEMENT
11
+ from angr import sim_options as o
12
+ from angr import errors
13
13
  from .lifter import PcodeLifterEngineMixin, IRSB
14
14
  from .emulate import PcodeEmulatorMixin
15
15
 
@@ -20,13 +20,13 @@ from cachetools import LRUCache
20
20
  from pyvex.errors import PyVEXError, SkipStatementsError, LiftingException
21
21
 
22
22
  from .behavior import BehaviorFactory
23
- from ..engine import SimEngineBase
24
- from ...state_plugins.inspect import BP_AFTER, BP_BEFORE
25
- from ...sim_state import SimState
26
- from ...misc.ux import once
27
- from ...errors import SimEngineError, SimTranslationError, SimError
28
- from ... import sim_options as o
29
- from ...block import DisassemblerBlock, DisassemblerInsn
23
+ from angr.engines.engine import SimEngineBase
24
+ from angr.state_plugins.inspect import BP_AFTER, BP_BEFORE
25
+ from angr.sim_state import SimState
26
+ from angr.misc.ux import once
27
+ from angr.errors import SimEngineError, SimTranslationError, SimError
28
+ from angr import sim_options as o
29
+ from angr.block import DisassemblerBlock, DisassemblerInsn
30
30
 
31
31
 
32
32
  try:
@@ -122,6 +122,7 @@ class IRSB:
122
122
  "arch",
123
123
  "behaviors",
124
124
  "data_refs",
125
+ "const_vals",
125
126
  "default_exit_target",
126
127
  "jumpkind",
127
128
  "next",
@@ -138,6 +139,7 @@ class IRSB:
138
139
  arch: archinfo.Arch
139
140
  behaviors: BehaviorFactory | None
140
141
  data_refs: Sequence # Note: currently unused
142
+ const_vals: Sequence # Note: currently unused
141
143
  default_exit_target: Optional # Note: currently used
142
144
  jumpkind: str | None
143
145
  next: int | None
@@ -204,6 +206,7 @@ class IRSB:
204
206
  self.arch = arch
205
207
  self.behaviors = None
206
208
  self.data_refs = ()
209
+ self.const_vals = ()
207
210
  self.default_exit_target = None
208
211
  self.jumpkind = None
209
212
  self.next = None
@@ -1043,6 +1046,7 @@ class PcodeLifterEngineMixin(SimEngineBase):
1043
1046
  collect_data_refs: bool = False,
1044
1047
  load_from_ro_regions: bool = False,
1045
1048
  cross_insn_opt: bool | None = None,
1049
+ const_prop: bool | None = None,
1046
1050
  ):
1047
1051
  """
1048
1052
  Temporary compatibility interface for integration with block code.
@@ -1064,6 +1068,7 @@ class PcodeLifterEngineMixin(SimEngineBase):
1064
1068
  collect_data_refs,
1065
1069
  load_from_ro_regions,
1066
1070
  cross_insn_opt,
1071
+ const_prop,
1067
1072
  )
1068
1073
 
1069
1074
  def lift_pcode(
@@ -1084,6 +1089,7 @@ class PcodeLifterEngineMixin(SimEngineBase):
1084
1089
  collect_data_refs: bool = False,
1085
1090
  load_from_ro_regions: bool = False,
1086
1091
  cross_insn_opt: bool | None = None,
1092
+ const_prop: bool | None = None,
1087
1093
  ):
1088
1094
  """
1089
1095
  Lift an IRSB.
@@ -1111,6 +1117,8 @@ class PcodeLifterEngineMixin(SimEngineBase):
1111
1117
  """
1112
1118
  if cross_insn_opt:
1113
1119
  l.debug("cross_insn_opt is ignored for p-code lifter")
1120
+ if const_prop:
1121
+ l.debug("const_prop is ignored for p-code lifter")
1114
1122
  if load_from_ro_regions:
1115
1123
  l.debug("load_from_ro_regions is ignored for p-code lifter")
1116
1124
 
angr/engines/procedure.py CHANGED
@@ -67,6 +67,6 @@ class ProcedureEngine(ProcedureMixin, SuccessorsMixin):
67
67
  self.process_procedure(self.state, successors, procedure, **kwargs)
68
68
 
69
69
 
70
- from .. import sim_options as o
71
- from .. import errors
72
- from ..state_plugins.inspect import BP_BEFORE, BP_AFTER
70
+ from angr import sim_options as o
71
+ from angr import errors
72
+ from angr.state_plugins.inspect import BP_BEFORE, BP_AFTER
@@ -1,2 +1,5 @@
1
1
  from __future__ import annotations
2
+
2
3
  from .engine import SootMixin
4
+
5
+ __all__ = ("SootMixin",)
@@ -10,13 +10,13 @@ from archinfo.arch_soot import (
10
10
  SootMethodDescriptor,
11
11
  )
12
12
 
13
- from ... import sim_options as o
14
- from ...errors import SimEngineError, SimTranslationError
13
+ from angr import sim_options as o
14
+ from angr.errors import SimEngineError, SimTranslationError
15
15
  from cle import CLEError
16
- from ...state_plugins.inspect import BP_AFTER, BP_BEFORE
17
- from ...sim_type import SimTypeFunction, parse_type
18
- from ..engine import SuccessorsMixin
19
- from ..procedure import ProcedureMixin
16
+ from angr.state_plugins.inspect import BP_AFTER, BP_BEFORE
17
+ from angr.sim_type import SimTypeFunction, parse_type
18
+ from angr.engines.engine import SuccessorsMixin
19
+ from angr.engines.procedure import ProcedureMixin
20
20
  from .exceptions import BlockTerminationNotice, IncorrectLocationException
21
21
  from .statements import SimSootStmt_Return, SimSootStmt_ReturnVoid, translate_stmt
22
22
  from .values import SimSootValue_Local, SimSootValue_ParamRef
@@ -204,7 +204,7 @@ class SootMixin(SuccessorsMixin, ProcedureMixin):
204
204
 
205
205
  def _get_sim_procedure(self, addr):
206
206
  # Delayed import
207
- from ...procedures import SIM_PROCEDURES
207
+ from angr.procedures import SIM_PROCEDURES
208
208
 
209
209
  if addr in self.project._sim_procedures:
210
210
  return self.project._sim_procedures[addr]
@@ -226,7 +226,7 @@ class SootMixin(SuccessorsMixin, ProcedureMixin):
226
226
 
227
227
  def get_unconstrained_simprocedure(self):
228
228
  # Delayed import
229
- from ...procedures import SIM_PROCEDURES
229
+ from angr.procedures import SIM_PROCEDURES
230
230
 
231
231
  # TODO: fix method prototype
232
232
  procedure_cls = SIM_PROCEDURES["angr.unconstrained"]["unconstrained()"]
@@ -1,4 +1,5 @@
1
1
  from __future__ import annotations
2
+
2
3
  import logging
3
4
 
4
5
  l = logging.getLogger("angr.engines.soot.expressions")
@@ -55,3 +56,35 @@ from .thisref import SimSootExpr_ThisRef
55
56
  from .paramref import SimSootExpr_ParamRef
56
57
  from .unsupported import SimSootExpr_Unsupported
57
58
  from .instanceOf import SimSootExpr_InstanceOf
59
+
60
+
61
+ __all__ = (
62
+ "translate_expr",
63
+ "SimSootExpr_ArrayRef",
64
+ "SimSootExpr_Binop",
65
+ "SimSootExpr_Cast",
66
+ "SimSootExpr_Condition",
67
+ "SimSootExpr_IntConstant",
68
+ "SimSootExpr_LongConstant",
69
+ "SimSootExpr_FloatConstant",
70
+ "SimSootExpr_DoubleConstant",
71
+ "SimSootExpr_StringConstant",
72
+ "SimSootExpr_ClassConstant",
73
+ "SimSootExpr_NullConstant",
74
+ "SimSootExpr_InstanceFieldRef",
75
+ "SimSootExpr_SpecialInvoke",
76
+ "SimSootExpr_StaticInvoke",
77
+ "SimSootExpr_VirtualInvoke",
78
+ "SimSootExpr_InterfaceInvoke",
79
+ "SimSootExpr_Length",
80
+ "SimSootExpr_Local",
81
+ "SimSootExpr_New",
82
+ "SimSootExpr_NewArray",
83
+ "SimSootExpr_NewMultiArray",
84
+ "SimSootExpr_Phi",
85
+ "SimSootExpr_StaticFieldRef",
86
+ "SimSootExpr_ThisRef",
87
+ "SimSootExpr_ParamRef",
88
+ "SimSootExpr_Unsupported",
89
+ "SimSootExpr_InstanceOf",
90
+ )
@@ -1,7 +1,7 @@
1
1
  from __future__ import annotations
2
2
  import logging
3
3
 
4
- from ..values import SimSootValue_ArrayRef
4
+ from angr.engines.soot.values import SimSootValue_ArrayRef
5
5
  from .base import SimSootExpr
6
6
 
7
7
  l = logging.getLogger("angr.engines.soot.expressions.arrayref")
@@ -1,6 +1,6 @@
1
1
  from __future__ import annotations
2
2
  from . import translate_expr
3
- from ..values import translate_value
3
+ from angr.engines.soot.values import translate_value
4
4
 
5
5
 
6
6
  class SimSootExpr:
@@ -4,7 +4,7 @@ import logging
4
4
  from archinfo import ArchSoot
5
5
 
6
6
  from .base import SimSootExpr
7
- from ..values.thisref import SimSootValue_ThisRef
7
+ from angr.engines.soot.values.thisref import SimSootValue_ThisRef
8
8
 
9
9
  l = logging.getLogger("angr.engines.soot.expressions.cast")
10
10
 
@@ -4,7 +4,7 @@ import operator
4
4
  from archinfo.arch_soot import SootNullConstant
5
5
  import claripy
6
6
 
7
- from ..values import SimSootValue_StringRef, SimSootValue_ThisRef
7
+ from angr.engines.soot.values import SimSootValue_StringRef, SimSootValue_ThisRef
8
8
  from .base import SimSootExpr
9
9
 
10
10
 
@@ -3,7 +3,7 @@ import claripy
3
3
  from archinfo.arch_soot import SootClassDescriptor, SootNullConstant
4
4
  from claripy import FSORT_DOUBLE, FSORT_FLOAT
5
5
 
6
- from ..values import SimSootValue_StringRef
6
+ from angr.engines.soot.values import SimSootValue_StringRef
7
7
  from .base import SimSootExpr
8
8
 
9
9
 
@@ -2,8 +2,8 @@ from __future__ import annotations
2
2
  from archinfo.arch_soot import SootArgument, SootMethodDescriptor
3
3
 
4
4
  from . import translate_expr
5
- from ..method_dispatcher import resolve_method
6
- from ..exceptions import SootMethodNotLoadedException
5
+ from angr.engines.soot.method_dispatcher import resolve_method
6
+ from angr.engines.soot.exceptions import SootMethodNotLoadedException
7
7
  from .base import SimSootExpr
8
8
 
9
9
 
@@ -1,7 +1,7 @@
1
1
  from __future__ import annotations
2
2
  import logging
3
3
 
4
- from ..values import SimSootValue_ThisRef
4
+ from angr.engines.soot.values import SimSootValue_ThisRef
5
5
  from .base import SimSootExpr
6
6
 
7
7
  l = logging.getLogger("angr.engines.soot.expressions.new")
@@ -3,7 +3,7 @@ import logging
3
3
 
4
4
  import claripy
5
5
 
6
- from ..values import SimSootValue_ArrayBaseRef
6
+ from angr.engines.soot.values import SimSootValue_ArrayBaseRef
7
7
  from .base import SimSootExpr
8
8
 
9
9
  l = logging.getLogger("angr.engines.soot.expressions.newarray")
@@ -5,7 +5,7 @@ import claripy
5
5
 
6
6
  from .base import SimSootExpr
7
7
  from .newArray import SimSootExpr_NewArray
8
- from ..values import SimSootValue_ArrayBaseRef
8
+ from angr.engines.soot.values import SimSootValue_ArrayBaseRef
9
9
 
10
10
  l = logging.getLogger("angr.engines.soot.expressions.newmultiarray")
11
11
 
@@ -1,4 +1,5 @@
1
1
  from __future__ import annotations
2
+
2
3
  import logging
3
4
 
4
5
  l = logging.getLogger("angr.engines.soot.statements")
@@ -28,3 +29,18 @@ from .invoke import SimSootStmt_Invoke
28
29
  from .if_ import SimSootStmt_If
29
30
  from .switch import SimSootStmt_TableSwitch, SimSootStmt_LookupSwitch
30
31
  from .throw import SimSootStmt_Throw
32
+
33
+
34
+ __all__ = (
35
+ "translate_stmt",
36
+ "SimSootStmt_Assign",
37
+ "SimSootStmt_Return",
38
+ "SimSootStmt_ReturnVoid",
39
+ "SimSootStmt_Identity",
40
+ "SimSootStmt_Goto",
41
+ "SimSootStmt_Invoke",
42
+ "SimSootStmt_If",
43
+ "SimSootStmt_TableSwitch",
44
+ "SimSootStmt_LookupSwitch",
45
+ "SimSootStmt_Throw",
46
+ )
@@ -1,7 +1,7 @@
1
1
  from __future__ import annotations
2
2
  import logging
3
3
 
4
- from ..expressions.invoke import InvokeBase
4
+ from angr.engines.soot.expressions.invoke import InvokeBase
5
5
  from .base import SimSootStmt
6
6
 
7
7
  l = logging.getLogger("angr.engines.soot.statements.assign")
@@ -3,9 +3,9 @@ import logging
3
3
 
4
4
  from archinfo.arch_soot import SootAddressDescriptor
5
5
 
6
- from ..exceptions import IncorrectLocationException
7
- from ..expressions import translate_expr
8
- from ..values import translate_value
6
+ from angr.engines.soot.exceptions import IncorrectLocationException
7
+ from angr.engines.soot.expressions import translate_expr
8
+ from angr.engines.soot.values import translate_value
9
9
 
10
10
  l = logging.getLogger("angr.engines.soot.statements.if")
11
11
 
@@ -24,3 +24,17 @@ from .staticfieldref import SimSootValue_StaticFieldRef
24
24
  from .instancefieldref import SimSootValue_InstanceFieldRef
25
25
  from .constants import SimSootValue_IntConstant
26
26
  from .strref import SimSootValue_StringRef
27
+
28
+
29
+ __all__ = (
30
+ "translate_value",
31
+ "SimSootValue_Local",
32
+ "SimSootValue_ParamRef",
33
+ "SimSootValue_ArrayRef",
34
+ "SimSootValue_ArrayBaseRef",
35
+ "SimSootValue_ThisRef",
36
+ "SimSootValue_StaticFieldRef",
37
+ "SimSootValue_InstanceFieldRef",
38
+ "SimSootValue_IntConstant",
39
+ "SimSootValue_StringRef",
40
+ )
@@ -4,7 +4,7 @@ import logging
4
4
  import claripy
5
5
 
6
6
  from . import translate_value
7
- from ....errors import SimEngineError
7
+ from angr.errors import SimEngineError
8
8
  from .base import SimSootValue
9
9
  from .constants import SimSootValue_IntConstant
10
10
 
@@ -1,7 +1,7 @@
1
1
  from __future__ import annotations
2
2
  from . import translate_value
3
3
  from .base import SimSootValue
4
- from ..field_dispatcher import resolve_field
4
+ from angr.engines.soot.field_dispatcher import resolve_field
5
5
 
6
6
 
7
7
  class SimSootValue_InstanceFieldRef(SimSootValue):
@@ -1,6 +1,6 @@
1
1
  from __future__ import annotations
2
2
  from .base import SimSootValue
3
- from ..field_dispatcher import resolve_field
3
+ from angr.engines.soot.field_dispatcher import resolve_field
4
4
 
5
5
 
6
6
  class SimSootValue_StaticFieldRef(SimSootValue):
@@ -6,8 +6,8 @@ from archinfo.arch_soot import SootAddressTerminator, SootArgument
6
6
  from .base import SimSootValue
7
7
  from .instancefieldref import SimSootValue_InstanceFieldRef
8
8
  from .local import SimSootValue_Local
9
- from ..method_dispatcher import resolve_method
10
- from .... import sim_options as options
9
+ from angr.engines.soot.method_dispatcher import resolve_method
10
+ from angr import sim_options as options
11
11
 
12
12
  l = logging.getLogger("angr.engines.soot.values.thisref")
13
13
 
@@ -356,7 +356,7 @@ class SimSuccessors:
356
356
  if o.KEEP_IP_SYMBOLIC in split_state.options:
357
357
  split_state.regs.ip = target
358
358
  else:
359
- split_state.add_constraints(cond, action=True)
359
+ split_state.add_constraints(cond)
360
360
  split_state.regs.ip = a
361
361
  if split_state.supports_inspect:
362
362
  split_state.inspect.downsize()
@@ -532,10 +532,10 @@ class SimSuccessors:
532
532
 
533
533
 
534
534
  # pylint: disable=wrong-import-position
535
- from ..state_plugins.inspect import BP_BEFORE, BP_AFTER
536
- from ..errors import SimSolverModeError, AngrUnsupportedSyscallError, AngrSyscallError, SimValueError, SimUnsatError
537
- from ..calling_conventions import SYSCALL_CC
538
- from ..state_plugins.sim_action_object import _raw_ast
539
- from ..state_plugins.callstack import CallStack
540
- from ..storage import DUMMY_SYMBOLIC_READ_VALUE
541
- from .. import sim_options as o
535
+ from angr.state_plugins.inspect import BP_BEFORE, BP_AFTER
536
+ from angr.errors import SimSolverModeError, AngrUnsupportedSyscallError, AngrSyscallError, SimValueError, SimUnsatError
537
+ from angr.calling_conventions import SYSCALL_CC
538
+ from angr.state_plugins.sim_action_object import _raw_ast
539
+ from angr.state_plugins.callstack import CallStack
540
+ from angr.storage import DUMMY_SYMBOLIC_READ_VALUE
541
+ from angr import sim_options as o
angr/engines/syscall.py CHANGED
@@ -50,4 +50,4 @@ class SimEngineSyscall(SuccessorsMixin, ProcedureMixin):
50
50
  return self.process_procedure(state, successors, sys_procedure, **kwargs)
51
51
 
52
52
 
53
- from ..errors import AngrUnsupportedSyscallError
53
+ from angr.errors import AngrUnsupportedSyscallError
angr/engines/unicorn.py CHANGED
@@ -6,14 +6,14 @@ import logging
6
6
  import archinfo
7
7
  import claripy
8
8
 
9
- from ..errors import SimIRSBError, SimIRSBNoDecodeError, SimValueError
9
+ from angr.errors import SimIRSBError, SimIRSBNoDecodeError, SimValueError
10
10
  from .engine import SuccessorsMixin
11
11
  from .vex.heavy.heavy import VEXEarlyExit
12
- from .. import sim_options as o
13
- from ..misc.ux import once
14
- from ..state_plugins.inspect import BP_AFTER, BP_BEFORE
15
- from ..state_plugins.unicorn_engine import STOP, _UC_NATIVE, unicorn as uc_module
16
- from ..utils.constants import DEFAULT_STATEMENT
12
+ from angr import sim_options as o
13
+ from angr.misc.ux import once
14
+ from angr.state_plugins.inspect import BP_AFTER, BP_BEFORE
15
+ from angr.state_plugins.unicorn_engine import STOP, _UC_NATIVE, unicorn as uc_module
16
+ from angr.utils.constants import DEFAULT_STATEMENT
17
17
 
18
18
  # pylint: disable=arguments-differ
19
19
 
@@ -394,9 +394,9 @@ class SimEngineUnicorn(SuccessorsMixin):
394
394
  if not self.__check(**kwargs):
395
395
  return super().process_successors(successors, **kwargs)
396
396
 
397
- extra_stop_points = kwargs.get("extra_stop_points", None)
398
- last_block_details = kwargs.get("last_block_details", None)
399
- step = kwargs.get("step", None)
397
+ extra_stop_points = kwargs.get("extra_stop_points")
398
+ last_block_details = kwargs.get("last_block_details")
399
+ step = kwargs.get("step")
400
400
  if extra_stop_points is None:
401
401
  extra_stop_points = set(self.project._sim_procedures)
402
402
  else:
@@ -425,8 +425,8 @@ class SimEngineUnicorn(SuccessorsMixin):
425
425
 
426
426
  # initialize unicorn plugin
427
427
  try:
428
- syscall_data = kwargs.get("syscall_data", None)
429
- fd_bytes = kwargs.get("fd_bytes", None)
428
+ syscall_data = kwargs.get("syscall_data")
429
+ fd_bytes = kwargs.get("fd_bytes")
430
430
  state.unicorn.setup(syscall_data=syscall_data, fd_bytes=fd_bytes)
431
431
  except SimValueError:
432
432
  # it's trying to set a symbolic register somehow
@@ -1,5 +1,20 @@
1
1
  from __future__ import annotations
2
- from .claripy import *
3
- from .light import *
4
- from .heavy import *
2
+
3
+ from .claripy import ClaripyDataMixin
4
+ from .light import VEXMixin, VEXResilienceMixin, VEXSlicingMixin
5
+ from .heavy import TrackActionsMixin, HeavyVEXMixin, SimInspectMixin, HeavyResilienceMixin, SuperFastpathMixin
5
6
  from .lifter import VEXLifter
7
+
8
+
9
+ __all__ = (
10
+ "ClaripyDataMixin",
11
+ "VEXMixin",
12
+ "VEXResilienceMixin",
13
+ "VEXSlicingMixin",
14
+ "TrackActionsMixin",
15
+ "HeavyVEXMixin",
16
+ "SimInspectMixin",
17
+ "HeavyResilienceMixin",
18
+ "SuperFastpathMixin",
19
+ "VEXLifter",
20
+ )