Commit Graph

271 Commits

Author SHA1 Message Date
Ajax 1db81a6171 Update IDA utils with the new API 2016-11-17 16:28:56 +01:00
Fabrice Desclaux 3771288cff ExprCompose: add new api
The ExprComposes uses directly its arguments sizes to guess the slices
locations.
Old api:  ExprCompose([(a, 0, 32), (b, 32, 64)])
becomes:  ExprCompose(a, b)
2016-11-04 16:45:46 +01:00
Fabrice Desclaux 8979533746 Symbexec: new api for emul_ir_*
Replacement:
emul_ir_bloc(self, myir, addr, step=False)
by:
emul_ir_block(self, addr, step=False)

and:
emul_ir_blocs(self, myir, addr, lbl_stop=None, step=False)
by:
emul_ir_blocks(self, addr, lbl_stop=None, step=False)

The 'myir' was already given in the symbolexec creation.
2016-11-04 16:45:46 +01:00
Fabrice Desclaux 2858e916f3 Tests: add win seh test 2016-08-31 18:34:24 +02:00
Fabrice Desclaux a60e8c9b48 Example: updt elfesteem api 2016-07-11 09:26:49 +02:00
serpilliere 09b8308ddd X86/arch: fix call @imm 2016-04-24 01:25:38 +02:00
Fabrice Desclaux b2897bd662 Example/ida/depgraph: add basic stack unaliasing 2016-04-06 12:29:03 +02:00
Fabrice Desclaux ae22a569d4 Example/Depgraph: allow lower/upper register tracking 2016-03-22 15:08:23 +01:00
Ajax 1d9924a4f7 Introduce Container.symbol_pool, containing container symbols (if any) 2016-03-21 16:28:23 +01:00
Fabrice Desclaux 7ab305601b Example/Depgraph: add JSON output 2016-03-21 15:09:23 +01:00
Fabrice Desclaux 02935e7796 Example/dg: fix print solutions 2016-03-21 15:09:22 +01:00
Fabrice Desclaux 752d7fb00c Depgraph: updt api 2016-03-21 15:09:22 +01:00
Fabrice Desclaux 28335f53f7 Test/depgraph: use z3 to remove unsatisfiable solutions 2016-03-17 15:37:14 +01:00
Fabrice Desclaux 096e0a678b Test/depgraph: autopep 2016-03-17 15:11:11 +01:00
Fabrice Desclaux 35ead949d8 AssignBlock 2016-02-26 15:53:53 +01:00
Fabrice Desclaux 1cb9cbcc2d Graph: generic html dot code 2016-01-30 21:10:01 +01:00
Ajax d6222c4383 Rename BasicBlocks -> AsmCFG, more comprehensible, include "graph" 2016-01-26 17:15:22 +01:00
Ajax 455cfbe8b7 BasicBlocks: update examples with the new API 2016-01-26 17:09:18 +01:00
Ajax 195ae36b8f Move types -> test_types to avoid namespace collision (creds @fmonjalet) 2016-01-25 13:07:45 +01:00
Florent Monjalet b421c5059f Types: misleading comment correction in example 2016-01-18 14:05:41 +01:00
Florent Monjalet 36cae74bff Types: Type size is now a property 2016-01-18 14:02:32 +01:00
Florent Monjalet bd85479c0c MemStruct/Types: example on type manipulations 2016-01-18 14:02:31 +01:00
Florent Monjalet d87a0f8938 MemStruct/Types: pinned renamed to lval 2016-01-18 14:02:31 +01:00
Florent Monjalet ba2df16277 MemStruct/Types: Renamed analysis.mem to core.types 2016-01-18 14:02:31 +01:00
Florent Monjalet b3b0b03b4a MemStruct: Pinned* renamed back to Mem* 2016-01-18 14:02:31 +01:00
Florent Monjalet 31650c36e3 MemStruct: Global doc update 2016-01-18 14:02:31 +01:00
Florent Monjalet 3c8d4335d2 MemStruct: allow Type instance in cast 2016-01-18 14:02:31 +01:00
Florent Monjalet f21429370a MemStruct: Str type 2016-01-18 14:02:31 +01:00
Florent Monjalet 2b77be65a2 MemStruct: Array/PinnedArray homogeneity
Array access logic has moved to Array, Pinned(Sized)Array just contains
the logic to interface with memory
2016-01-18 14:02:31 +01:00
Florent Monjalet d19f4c1dbd MemStruct: big refactor in process
Doc is currently incoherent, impl will also be completed
2016-01-18 14:02:31 +01:00
Florent Monjalet ddb01429b6 MemStruct: Big refactoring, Mem* -> Pinned*
This commit is the first phase of the Type refactor. The PinnedType
class has been separated from the more specific PinnedStruct class.
2016-01-18 14:02:31 +01:00
Florent Monjalet 5df71c349c MemStruct example: fix memset usage 2016-01-18 14:02:31 +01:00
Florent Monjalet 8bd16bab85 MemStruct: fix example to use Ptr to MemSizedArray rather that Array 2016-01-18 14:02:31 +01:00
Florent Monjalet 82fa0e423f MemStruct: Fix MemStruct __eq__ 2016-01-18 14:02:31 +01:00
Florent Monjalet e53ac5b2a6 MemStruct: minor fixes + toy example script 2016-01-18 14:02:31 +01:00
Fabrice Desclaux f39a91b146 X86: add pushfb 2015-12-23 19:54:31 +01:00
Fabrice Desclaux 797b00e944 Autopep8 2015-12-16 16:29:13 +01:00
Fabrice Desclaux 8ebdbffdc6 Update api according to Elfesteem 2015-12-16 15:55:55 +01:00
Pierre LALET 300060933c Examples: set load_hdr to True for the sandbox in unpack_upx.py 2015-12-13 16:31:27 +01:00
Ajax 308a634b7c IR: replace .g with a lazy built .graph, avoiding the need of gen_graph 2015-12-07 11:15:43 +01:00
Camille Mougey 0c5ca0a178 IR: use expr_is_label instead of ExprIsLabel 2015-12-07 11:10:53 +01:00
Camille Mougey 126e77becb Example/Disasm: update full.py to produce both IR and IRA graphes 2015-12-07 11:10:53 +01:00
Fabrice Desclaux 6cfdd9b886 Sandbox: support additional options 2015-12-04 15:10:10 +01:00
Ajax 6feedf1203 Example/SymbolExec: write code more arch-independent 2015-11-09 17:06:10 +01:00
Ajax f266a5093f Example/SymbolExec: enhance and comment 2015-11-09 17:02:24 +01:00
Ajax b4114c3e78 Example: move output .txt to .dot 2015-11-09 15:01:12 +01:00
serpilliere 7681a432c7 Merge pull request #254 from commial/keyword-disasm-cb
Keyword disasm cb
2015-11-09 14:00:10 +01:00
Ajax 26ec3c0b27 Example/Disasm/Callback: comment and update with new API 2015-11-09 14:34:15 +01:00
Ajax 1ae7dfe413 Disasm/x86: move pushpop callback to an example callback.py 2015-11-09 14:20:36 +01:00
serpilliere c2febe4d41 Merge pull request #256 from commial/fix-unpackupx
Fix unpackupx
2015-11-09 12:58:45 +01:00