Commit Graph
65 Commits
Author SHA1 Message Date
Sam Byass 7586718ee8 Decompiler: Fix return register issues with CallVoid, fix missing call/init metadata thunks, fix generic field offsets, resolve icalls 2026-08-09 20:43:21 +01:00
Sam Byass b44ca12267 Decompiler: Fix incorrect handling of jmp <reg> causing stack to never settle 2026-08-03 13:51:02 +01:00
Luke 2060ecaa4d optimize performance of simplifier and dominator calculation (#594) 2026-08-02 23:51:51 +01:00
Sam Byass 35707d64ca Decompiler: Support szarray, virtual calls, address of local, plus clean up ILSpy output by adjusting the IL 2026-08-02 23:23:26 +01:00
Sam Byass a87d484b95 Decompiler: Stop having operands be raw object-typed 2026-08-02 14:12:15 +01:00
Sam Byass 8cdb1c2ece Decompiler: Fix operand setting not invalidating sources, leading to invalid cast exceptions 2026-08-02 13:22:19 +01:00
Luke c5464a9696 Analysis performance improvements (#592) 2026-08-01 19:14:05 +01:00
Sam Byass 75f74b4f8e Decompiler: Fix SSA / dominator correctness 2026-06-07 17:25:25 +01:00
Sam ByassandMilo 7fd44cac62 Rebase of #481 on current development
Original exploratory work by Milo (@TheUser-1231) in PR #481.

Co-authored-by: Milo <[email protected]>
2026-06-07 17:25:14 +01:00
Xpl0itR 9f6b2f6d76 Remove static mutable state from LibCpp2IL 2: Electric Boogaloo (#542) 2026-06-07 14:14:35 +01:00
gompoc fb78fcb07b Core.Tests: Add another graph test case/cleanup 2024-08-25 13:11:40 +01:00
Sam Byass 059ab924e7 Standardise code formatting across entire repo 2024-08-25 00:19:11 +01:00
thegu5 71919632f9 simplify constructors 2024-08-21 09:15:53 +00:00
thegu5 b993b3eef8 bump language versions, use collection expressions and file-scoped namespaces 2024-08-21 09:15:53 +00:00
Sam Byass a297189336 Core: ISIL: Resolve unambigous method calls 2024-08-12 19:54:59 +01:00
gompoc 6c70c94e43 Core: Switch to type analysis context for type metadata operand 2024-08-12 17:28:35 +01:00
gompoc 916e0b7fbe Core.Graphs.Processors: Identify TypeMetadata usage. Identify key functions. 2024-08-12 16:53:44 +01:00
Sam Byass 5c0a0c0349 Core: Optimize ISILControlFlowGraph.Build time 2024-08-12 15:28:04 +01:00
Sam Byass 90e628a4c6 Core: Fix some nullability warnings 2024-08-12 13:27:47 +01:00
gompoc 49b65b15ca Core.ISIL: Don't exit early when processing block 2024-08-12 11:42:25 +00:00
gompoc 225bc08646 Rename namespace to match folder 2024-08-11 22:12:19 +01:00
gompoc dfb1e85e75 Fix empty unknown blocks being generated 2024-08-11 22:12:19 +01:00
gompoc 5d992a3988 cleanup 2024-08-11 22:12:19 +01:00
gompoc 1d4baf3958 add new project 2024-08-11 22:12:19 +01:00
gompoc c721c2efb4 Core: Delete old files 2024-08-11 22:12:19 +01:00
gompoc 3f2236e05f Messing around 2024-08-11 22:12:19 +01:00
gompoc cf4f42c86a Core: Move old graphing code to another folder. Change how push/pop are interpreted, Add basic skeleton for next step and CFG blocks 2022-05-28 12:39:32 +01:00
Sam Byass 102001c6e8 Chore: Resolve all compiler warnings, mark lib as trimmable 2022-04-14 21:45:32 +01:00
Sam Byass 2af858a7b7 Core: Fix compilation error and cleanup usings 2022-02-27 21:03:45 +00:00
Sam Byass f46501c0a3 Core: Move KeyFunctionAddresses to their own namespace 2022-02-27 17:57:50 +00:00
Sam Byass 4b4631f8ed Core: x86 to ISIL improvements 2021-12-14 08:16:11 +00:00
Sam Byass cdf059de73 Core: Rudimentary x86-to-isil 2021-12-13 14:50:26 +00:00
Sam Byass 3b8e31caa2 Core: Some work on isil. Lib: Fix some WASMs having too small mem blocks 2021-12-10 12:47:02 +00:00
gompoc 8bbc88ce8b Core: Fix stack overflow issue. Remove resolved jmp instructions from nodes 2021-12-08 13:51:52 +00:00
Sam Byass 04853f719d Core: Expose KeyFunctionAddresses to instruction graphs 2021-12-08 13:49:47 +00:00
gompoc d7facde0b3 Core: Don't merge if/else blocks with multiple predecessors 2021-12-07 21:04:32 +00:00
gompoc b54d38c02e Core: Don't traverse nodes twice 2021-12-07 18:20:23 +00:00
gompoc 3b83acaa92 Core: Remove debug prints 2021-12-07 17:39:13 +00:00
gompoc 26ac66d9ae Core: Print Statements for graph dump. Fix issue with dead node being added to end of graph 2021-12-07 17:37:37 +00:00
gompoc 06c96865ed Core: Fix issue when merging statements 2021-12-07 15:00:33 +00:00
gompoc 7fbcec0bab Core: Account for other if case 2021-12-06 20:19:32 +00:00
gompoc aaf341cf48 Core: Identify If/else statements 2021-12-06 18:11:17 +00:00
Sam Byass 0f68b0087c Core: Fix generics compilation error 2021-12-06 11:16:49 +00:00
gompoc 5dd5014d67 Core: More various improvements to graphs 2021-12-06 11:13:03 +00:00
gompoc a07966544f Core: Compute Usages and Definitions for instructions 2021-12-04 11:43:38 +00:00
gompoc f7b8a889c5 Core: Add scaffolding for start of trying to extract statements 2021-12-03 13:23:42 +00:00
gompoc a209a39e18 Core: Early work on identifying loops in graphs 2021-12-03 12:04:53 +00:00
gompoc 87a65dff66 Core: Compute dominators for all nodes in graph 2021-12-03 11:41:45 +00:00
gompoc cbe41c832b Core: Sort some of the common x86 instructions. Very early start working out locals 2021-12-02 20:12:29 +00:00
Sam Byass 2b981b210b Core: Full context models, instruction set changes 2021-12-02 11:16:53 +00:00