de4dot
8e89e011e9
Add method to re-read all blocks
2012-02-03 04:23:08 +01:00
de4dot
01a893a799
Make canInline() virtual and move some logic there
2012-02-02 10:38:56 +01:00
de4dot
f3525d8980
New version: 1.5.1
2012-02-01 08:09:40 +01:00
de4dot
a7fa23e2d8
New version: 1.5.0
2012-01-29 18:58:26 +01:00
de4dot
7762147877
Add createFieldDefinition()
2012-01-28 22:18:28 +01:00
de4dot
96c13fb05e
Cache values to get 30% speed up with some files (DNR)
2012-01-27 03:10:37 +01:00
de4dot
dce16e9f12
Remove useless code
2012-01-27 01:03:41 +01:00
de4dot
887ee7c9e8
Fix method signature
2012-01-27 01:02:17 +01:00
de4dot
cd46fb9793
Don't use iterator for speed
2012-01-27 00:30:53 +01:00
de4dot
cac39b8a01
Don't use cecil coll iterator for speed
2012-01-27 00:16:23 +01:00
de4dot
91cc161a9d
Create instances of common constants
2012-01-26 23:57:37 +01:00
de4dot
247cb2be20
Compare ElementType instead of calling verifyType for speed
2012-01-26 22:40:19 +01:00
de4dot
ec45974605
Speed up getUnknownValue() method. 16-17% execution time -> ~6%
2012-01-26 22:22:24 +01:00
de4dot
5704e90423
Allow inlining value type methods
2012-01-25 12:19:45 +01:00
de4dot
9831dbdcdb
Ignore prefix instrs
2012-01-24 02:28:21 +01:00
de4dot
82dbb2a218
Add matching get hash code method
2012-01-23 09:11:39 +01:00
de4dot
8c946bfd34
Add peek() method
2012-01-22 19:33:20 +01:00
de4dot
7962de961c
Add getModuleTypeCctor() method
2012-01-22 11:15:14 +01:00
de4dot
2dadd773ec
Use ParameterDefinition.Sequence
2012-01-21 20:31:47 +01:00
de4dot
3c85b3f964
Fix toBoolean()
2012-01-21 20:04:13 +01:00
de4dot
f65adc81d8
Inline block if it's a conditional switch branch
2012-01-21 19:57:04 +01:00
de4dot
6a5ddba022
Move methods to base class
2012-01-21 19:55:37 +01:00
de4dot
6c7bcbed79
Use the ThisParameter if available
2012-01-21 19:54:33 +01:00
de4dot
f3f8975f01
If instance explicit, 'this' is 1st param
2012-01-20 19:30:40 +01:00
de4dot
2ad9a9a087
New version: 1.4.4
2012-01-17 05:46:06 +01:00
de4dot
788488dffa
New version: 1.4.3
2012-01-17 03:01:48 +01:00
de4dot
172f497535
Allow null input
2012-01-17 02:51:23 +01:00
de4dot
3d48bceda3
New version: 1.4.2
2012-01-14 12:40:41 +01:00
de4dot
c28b575f7a
Add MethodCallInliner prop to cflow deob class
2012-01-11 06:44:44 +01:00
de4dot
17327902c3
Refactor method call inliner code
2012-01-11 04:38:02 +01:00
de4dot
9079445e01
Add another getField overload
2012-01-11 02:32:36 +01:00
de4dot
0d0a40376d
Update copyright years
2012-01-09 23:02:47 +01:00
de4dot
12b327bef3
Add constant folding
2012-01-09 01:25:25 +01:00
de4dot
d3369279bc
Add another method overload
2012-01-08 22:40:11 +01:00
de4dot
061f793f68
Add public local/arg set methods
2012-01-08 22:39:52 +01:00
de4dot
1e21845448
Make method public
2012-01-08 22:39:20 +01:00
de4dot
0398666c93
Update detection of <Module> type
2012-01-08 18:46:23 +01:00
de4dot
9d08a7fe34
Add type ref updater base class
2012-01-07 19:33:57 +01:00
de4dot
635c414c1b
Update code to take a GenericInstanceMethod param
2012-01-07 00:02:31 +01:00
de4dot
e0295980f5
Add two more methods
2012-01-06 23:59:20 +01:00
de4dot
d61e2b6d72
Update code to handle another case
2012-01-02 14:24:08 +01:00
de4dot
eb4a38163d
Add emulate() method
2012-01-02 14:23:10 +01:00
de4dot
08f8a2809d
Add append() method
2012-01-02 14:22:51 +01:00
de4dot
ac30b8c213
Rename method to getValues()
2012-01-01 12:09:16 +01:00
de4dot
9a505b156e
Update getKeys() method
2012-01-01 12:05:23 +01:00
de4dot
99d4e2a770
Add getKeys() methods
2011-12-31 16:14:25 +01:00
de4dot
a817a14688
Add compareFieldReferenceAndDeclaringType() method
2011-12-31 12:57:08 +01:00
de4dot
959b6c8229
Add some more utility methods
2011-12-29 08:21:19 +01:00
de4dot
221dcc3cc9
Don't inline method if ldarga is used
2011-12-28 16:40:03 +01:00
de4dot
ffbceae488
Update methods inliner code
2011-12-28 13:28:17 +01:00
de4dot
91c406b2a0
Add findAny() methods
2011-12-28 13:22:41 +01:00
de4dot
c6572aa75e
Allow invalid (null) targets
2011-12-28 13:21:21 +01:00
de4dot
2a89e28b5e
New version: 1.4.1
2011-12-26 20:41:16 +01:00
de4dot
9aa65c5702
Fix block order bug.
2011-12-26 01:03:39 +01:00
de4dot
259ec3455b
Rename method
2011-12-25 23:10:17 +01:00
de4dot
7e1121ae0a
Re-order the blocks some more for better decompiler output
2011-12-25 23:08:19 +01:00
de4dot
d40816d495
Add another check
2011-12-25 23:07:07 +01:00
de4dot
261e5c88cc
Keep the most public reference
2011-12-23 18:26:22 +01:00
de4dot
7ed11cffb9
New version: 1.4.0
2011-12-22 23:53:59 +01:00
de4dot
7b71a565ec
Move method to DotNetUtils
2011-12-22 05:37:10 +01:00
de4dot
a6d8762d13
Move methods to DotNetUtils
2011-12-21 18:04:18 +01:00
de4dot
534aba0dfe
Move methods to DotNetUtils.cs
2011-12-21 06:38:01 +01:00
de4dot
c65b76583c
Add CflowDeobfuscator
2011-12-20 20:11:05 +01:00
de4dot
b96ab54ba6
New version: 1.3.8
2011-12-16 19:34:55 +01:00
de4dot
f30b0ef749
Add type, method, field, prop, event dictionaries
2011-12-16 18:56:45 +01:00
de4dot
d35e92b53c
Update field type
2011-12-15 16:17:04 +01:00
de4dot
0b5d4d864c
Remove nop blocks
2011-12-15 10:04:04 +01:00
de4dot
a3c9221410
Rename method
2011-12-15 10:01:46 +01:00
de4dot
c73459f1be
New version: 1.3.7
2011-12-11 12:38:48 +01:00
de4dot
5b7806cc1f
New version: 1.3.6
2011-12-06 17:38:30 +01:00
de4dot
f8ef5d9b9f
Update property creator method to take a getter and setter method
2011-12-05 23:46:05 +01:00
de4dot
04940d785c
Update version: 1.3.5
2011-12-04 20:02:18 +01:00
de4dot
7a6af40832
Update version: 1.3.4
2011-12-03 14:33:37 +01:00
de4dot
0db4222c10
Update version: 1.3.3
2011-12-02 15:21:18 +01:00
de4dot
49701686e5
Update version: 1.3.2
2011-12-02 13:19:38 +01:00
de4dot
2734a9ee95
Update the code that resolves typedefs
2011-12-01 22:32:09 +01:00
de4dot
04ae6e116f
New version: 1.3.1
2011-11-26 12:34:59 +01:00
de4dot
a90fd1fa2f
Update detection of the empty class
2011-11-26 12:34:17 +01:00
de4dot
e4e9f6787c
New version: 1.3.0
2011-11-24 11:01:08 +01:00
de4dot
1d8fe39f59
Add isEmptyObfuscated() method
2011-11-24 10:35:42 +01:00
de4dot
76420f4736
Add createEventDefinition() method
2011-11-23 06:38:10 +01:00
de4dot
121bb35633
Add createPropertyDefinition()
2011-11-21 10:32:57 +01:00
de4dot
3f3814001c
Update method sig, rename stuff
2011-11-16 22:56:36 +01:00
de4dot
dba4e3ab79
Update the code to fix some problems
2011-11-16 22:53:53 +01:00
de4dot
695da497a7
Set version: 1.2.3
2011-11-14 06:23:03 +01:00
de4dot
6bf3de0dee
Set version: 1.2.2
2011-11-12 16:57:00 +01:00
de4dot
d9e138bbe1
Strong name sign all assemblies (except tests)
...
You must create your own private de4dot.key file in the root source dir
before compiling:
sn -k de4dot.snk
2011-11-12 14:08:25 +01:00
de4dot
d7ed7abb99
Add removeGuaranteedDeadBlock() method
2011-11-12 13:27:24 +01:00
de4dot
572d9d376d
Update version: 1.2.1
2011-11-11 21:00:42 +01:00
de4dot
a3e7d9c9d6
Update version: 1.2.0
2011-11-10 14:55:40 +01:00
de4dot
1302608470
Move getInstruction() to DotNetUtils.cs
2011-11-09 11:28:09 +01:00
de4dot
75a464a7f4
Merge branch 'master' into dnr
2011-11-05 14:27:40 +01:00
de4dot
c66c062753
Fix problem when HasPInvokeInfo == true but PInvokeInfo == null
2011-11-05 07:46:24 +01:00
de4dot
30f713f8f8
Rename isDelegateType() -> derivesFromDelegate()
2011-11-04 00:39:48 +01:00
de4dot
76241db427
Add isDelegate() method
2011-11-04 00:06:25 +01:00
de4dot
c1820f1a82
Add method to replace generic params with generic args.
...
The code only handles basic cases, eg. T -> int, but not T[] -> int[].
2011-11-03 22:53:04 +01:00
de4dot
555ca393e2
No need to check for typedef since it's checked elsewhere
2011-11-03 18:52:21 +01:00
de4dot
3dd8649859
Merge branch 'master' into dnr
2011-11-03 07:11:10 +01:00
de4dot
f351a09564
Update symbol renamer to load referenced assemblies.
...
This way it's possible to use a rename-all regex (.*) without renaming
symbols that shouldn't be renamed (eg. methods that are defined in an
interface in a non-deobfuscated module, eg. Dispose()). A warning is
displayed if an assembly can't be loaded.
2011-11-03 06:43:33 +01:00
de4dot
b8879e74e6
Merge branch 'master' into dnr
2011-11-02 04:26:12 +01:00