Commit Graph

303 Commits

Author SHA1 Message Date
de4dot
325f5e369d Remove some more methods 2012-11-01 09:10:06 +01:00
de4dot
62519e0f6e Remove more code 2012-11-01 07:50:51 +01:00
de4dot
2e0aa36362 Fix more code in blocks 2012-10-31 21:07:57 +01:00
de4dot
8022a445a9 Port the remaining classes in blocks 2012-10-31 18:52:55 +01:00
de4dot
301a2fab97 Port more code 2012-10-31 17:43:51 +01:00
de4dot
6f73696cc5 Port ..... 2012-10-31 16:54:20 +01:00
de4dot
13a5fd8ff0 Add a fix for when type.Scope is null 2012-08-31 00:24:42 +02:00
de4dot
2c68ae14ee New version: 1.9.1 2012-08-21 15:40:23 +02:00
de4dot
8adf6ba5e2 Update method signature 2012-08-15 19:33:43 +02:00
de4dot
7f42fb0e57 Don't treat boxed as non-null 2012-08-13 01:38:42 +02:00
de4dot
3b45ddc336 Include Newobj when checking for method calls 2012-08-11 00:35:06 +02:00
de4dot
5fdd91ae05 Handle more switch cases 2012-08-07 21:57:48 +02:00
de4dot
8aff8b22b1 Appended instructions must be cloned 2012-08-04 23:46:51 +02:00
de4dot
4eb3b63a8a brtrue/brfalse now checks whether it's a non-null value 2012-08-04 12:04:07 +02:00
de4dot
19e8879d45 Emulate ldftn, ldsflda, ldtoken, ldvirtftn and ldflda 2012-08-04 12:03:12 +02:00
de4dot
fdd42859b3 Add a new ObjectValue value class 2012-08-04 12:02:40 +02:00
de4dot
b7715433bf Should also check for newobj instrs 2012-07-31 15:01:54 +02:00
de4dot
94b21490da Add code to truncate r4/r8 values 2012-07-30 19:06:31 +02:00
de4dot
ccb32e1a39 Resource names are in #Strings so can't contain embedded nuls 2012-07-30 10:26:36 +02:00
de4dot
83b805adc3 Move methods 2012-07-30 09:17:22 +02:00
de4dot
4c2de53080 Add Streams property 2012-07-26 16:35:45 +02:00
de4dot
efef6cd297 Update switch cflow deobfuscator 2012-07-25 01:45:57 +02:00
de4dot
755c9ae21a New version: 1.9.0 2012-07-24 20:08:09 +02:00
de4dot
940aa20534 Merge branch 'master' into new_code
Conflicts:
	de4dot.code/de4dot.code.csproj
2012-07-21 11:24:32 +02:00
de4dot
816ff5f369 New version: 1.8.7 2012-07-20 21:55:12 +02:00
de4dot
1b1cf4ec60 Add another getMethod() for generics 2012-07-08 08:12:41 +02:00
de4dot
ad6c6401b9 Support VS2008 2012-07-07 07:16:55 +02:00
de4dot
a2baf1fdea Merge branch 'master' into new_code 2012-06-27 15:15:03 +02:00
de4dot
4dce00b35a Merge branch 'rummage' into new_code
Conflicts:
	de4dot.cui/Program.cs
2012-06-27 15:14:40 +02:00
de4dot
199a0b4043 New version: 1.8.6 2012-06-27 10:46:12 +02:00
de4dot
17cee8fe45 Move code to a new BranchEmulator class 2012-06-11 21:19:36 +02:00
de4dot
d2ec4e2969 New version: 1.8.5 2012-06-02 07:27:50 +02:00
de4dot
2a7a134300 Make a field protected and compare method to inline as a reference 2012-05-29 19:07:58 +02:00
de4dot
58adda95b6 getAllBlocks() now returns a List instead of an IList 2012-05-29 19:06:41 +02:00
de4dot
b88fd666c7 Add FileHeader property 2012-05-28 06:23:16 +02:00
de4dot
1a7c89a173 New version: 1.8.4 2012-05-19 09:02:26 +02:00
de4dot
f6c5ed1c0c New version: 1.8.3 2012-05-15 19:06:21 +02:00
de4dot
d1c09c3fae New version: 1.8.2 2012-05-13 15:06:50 +02:00
de4dot
c78e77c1ec Remove useless class name prefix 2012-05-09 18:26:19 +02:00
de4dot
3d1e3e6ca9 Add method to get instrs pushing args 2012-05-09 18:25:43 +02:00
de4dot
05ec2794eb Add isLadrg() 2012-05-03 08:00:50 +02:00
de4dot
e221fc7f52 Add property to tell whether to execute it or not 2012-05-03 05:34:12 +02:00
de4dot
83e8fac8ea Add CachedCflowDeobfuscator class 2012-05-02 13:49:12 +02:00
de4dot
b404620683 Add MethodDefinition clone() method 2012-05-02 13:48:44 +02:00
de4dot
6f807f2484 Refactor 2012-05-02 10:45:18 +02:00
de4dot
61bb3abdee Add method to return stack size and not truncate locals/args 2012-05-02 10:44:34 +02:00
de4dot
c1abe2965b Add isLdarg() 2012-05-02 10:43:33 +02:00
de4dot
83b14da5c8 Refactor: create common cflow deob iface 2012-04-29 23:51:04 +02:00
de4dot
9754b01ba9 Merge branch 'master' into cs 2012-04-26 19:33:28 +02:00
de4dot
60c98cc944 Add method to find a PInvoke method 2012-04-26 01:14:46 +02:00
de4dot
d755780e7c Add method to find a section 2012-04-24 23:00:36 +02:00
de4dot
b28dd6277a Fix method names 2012-04-23 14:47:05 +02:00
de4dot
ce1edf3612 Add some useful methods 2012-04-23 02:01:27 +02:00
de4dot
d637c1af9a New version: 1.8.1 2012-04-15 23:42:57 +02:00
de4dot
9bde3dee5a New version: 1.8.0 2012-04-15 07:52:36 +02:00
de4dot
b4cec5acbf Ignore opt/req modifiers 2012-04-13 05:03:52 +02:00
de4dot
2bf60b17b0 Calli pops the func ptr 2012-04-13 05:03:37 +02:00
de4dot
5c61f7618f Support invalid try handlers where start == end 2012-04-11 03:11:00 +02:00
de4dot
b97dacbc54 Merge branch 'cs' 2012-04-10 16:32:40 +02:00
de4dot
c756d543c1 Rename PE namespace 2012-04-10 16:32:15 +02:00
de4dot
ffa61e6a89 Move PE code to a common assembly 2012-04-10 15:09:59 +02:00
de4dot
11a5553305 Enable warnings-as-errors in release mode 2012-04-07 21:41:27 +02:00
de4dot
9cfe8431f6 Add shared deobfuscator data/methods 2012-04-04 21:06:10 +02:00
de4dot
ab3c970cf4 Remove useless using statement 2012-03-29 04:52:39 +02:00
de4dot
b323612508 New version: 1.7.4 2012-03-23 10:14:26 +01:00
de4dot
0272a11713 Add XNA public key token 2012-03-21 03:20:59 +01:00
de4dot
6f01d48593 Change getCalledMethods() return type 2012-03-17 20:36:41 +01:00
de4dot
d9aec67fcb Rename 2012-03-16 22:39:50 +01:00
de4dot
996a245ba3 New version: 1.7.3 2012-03-15 23:39:42 +01:00
de4dot
a0db68742f Add callsMethod() methods 2012-03-15 19:29:56 +01:00
de4dot
fd18add5a2 Add method to detect .NET type 2012-03-15 19:03:22 +01:00
de4dot
e4fe749559 Use hasInteger() method 2012-03-15 02:19:35 +01:00
de4dot
8c5c055066 New version: 1.7.2 2012-03-11 15:59:36 +01:00
de4dot
f5ee6e3e5e Move dll files to a bin sub dir 2012-03-10 20:47:42 +01:00
de4dot
8b220697e0 New version: 1.7.1 2012-03-08 19:51:02 +01:00
de4dot
c3c92ebfaa New version: 1.7.0 2012-03-01 22:14:23 +01:00
de4dot
da1d649ef4 Make sure no generic methods are inlined 2012-02-25 06:33:38 +01:00
de4dot
fb832ca3de New version: 1.6.1 2012-02-23 16:25:47 +01:00
de4dot
bf0f136ec9 Allow zero target switch instructions 2012-02-12 21:18:57 +01:00
de4dot
f7abb70475 New version: 1.6.0 2012-02-12 18:07:53 +01:00
de4dot
c15773b709 Merge branch 'cv' into next_version
Conflicts:
	blocks/DotNetUtils.cs
2012-02-12 14:47:24 +01:00
de4dot
ff55be46b6 Rename getField() to getFieldByName() and add a real getField() method 2012-02-12 12:53:36 +01:00
de4dot
51b21c9f9f Check for invalid locals index 2012-02-08 22:01:47 +01:00
de4dot
18f020912d Make sure method operand isn't null 2012-02-05 22:52:34 +01:00
de4dot
5bcb0e51c1 Move code to new checkSameMethods() method 2012-02-03 14:21:58 +01:00
de4dot
d4b5744894 Add a paramIndex parameter 2012-02-03 09:42:55 +01:00
de4dot
7a279ebc19 Add copyBodyFromTo() method 2012-02-03 04:24:43 +01:00
de4dot
975d195dbc Don't need to prefix the method with the class name 2012-02-03 04:24:16 +01:00
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