Commit Graph

1287 Commits

Author SHA1 Message Date
de4dot
33645432f1 Fix TypesRestorer porting bug 2012-11-18 00:20:07 +01:00
de4dot
e5ab5ee23c Re-encrypt x86 methods if any (DNR v4.x) 2012-11-17 23:49:19 +01:00
de4dot
d52a1014ef Port .NET Reactor v4.x deobfuscator 2012-11-17 18:57:36 +01:00
de4dot
413a032e0a Port .NET Reactor v3.x deobfuscator 2012-11-17 15:46:02 +01:00
de4dot
7e1d16dafb Clear RVA when resetting field type and initial value 2012-11-17 11:45:24 +01:00
de4dot
6a7ddbaa56 Update code; submodule was updated 2012-11-16 23:50:52 +01:00
de4dot
4be5776da7 Also add all methods found in VTableFixups 2012-11-16 20:52:10 +01:00
de4dot
0dc129d340 Fix renaming of non-external pinvoke methods 2012-11-16 02:15:36 +01:00
de4dot
686f9953fd Also remove Spices.Net watermark attribute 2012-11-14 21:45:12 +01:00
de4dot
9e708ed4fd Ignore req/opt modifiers 2012-11-14 21:44:57 +01:00
de4dot
475c597a60 Port Spices.Net deobfuscator 2012-11-14 19:29:29 +01:00
de4dot
445b68f4f5 Don't treat System.Void as a value type 2012-11-14 19:28:46 +01:00
de4dot
226d18dff7 Only set ILOnly if there are no native methods 2012-11-14 11:33:47 +01:00
de4dot
6d43a7d6ee Update code since submodule was updated 2012-11-14 10:23:29 +01:00
de4dot
76d898a285 Keep extra PE data and keep orig Win32 resources 2012-11-13 07:45:34 +01:00
de4dot
8c228e6e70 Also preserve #Blob offsets when preserving MD tokens 2012-11-13 07:44:25 +01:00
de4dot
3bd00c99bc Use NativeModuleWriterOptions when saving a mixed-mode assembly 2012-11-13 07:42:35 +01:00
de4dot
2f6e5badb1 Update code since submodule got updated 2012-11-12 22:06:13 +01:00
de4dot
ac9168599b Use IPEImage.FindWin32ResourceData() 2012-11-12 04:40:48 +01:00
de4dot
3646bca56b Align the numbers 2012-11-11 16:56:29 +01:00
de4dot
99b38ac22f Don't Dispose() of the resource data reader 2012-11-11 14:46:00 +01:00
de4dot
c47039c2ef Don't call logger.v() unless verbose log level is enabled 2012-11-11 11:37:40 +01:00
de4dot
5a9d76e8c7 Speed up DeepSea string decrypter detector 2012-11-11 07:54:26 +01:00
de4dot
b152362088 Update logger
- It's not static anymore
- It implements ILogger
- It can ignore errors/warnings but an option to disable it
2012-11-11 05:41:54 +01:00
de4dot
7b0ba43248 UTF8String was moved to DotNet ns. Fix code 2012-11-10 00:45:04 +01:00
de4dot
311a3c9c05 Remove now useless using statements 2012-11-10 00:02:11 +01:00
de4dot
73e15c0919 Change method sig to take a IPEImage instead of a PEImage 2012-11-09 11:34:23 +01:00
de4dot
d47a03f51a Unpack CS packed files 2012-11-09 11:32:29 +01:00
de4dot
d00fcb79e4 Don't remove fields if we should keep all types 2012-11-09 02:15:28 +01:00
de4dot
3b740a4106 Port DeepSea deobfuscator 2012-11-09 00:21:45 +01:00
de4dot
5d25a499aa Port CryptoObfuscator deobfuscator 2012-11-08 22:24:13 +01:00
de4dot
472d57ed0f Use ModuleDefMD.GetAssemblyRef() 2012-11-08 11:26:14 +01:00
de4dot
f2f156dc40 Port CodeWall deobfuscator 2012-11-08 10:40:58 +01:00
de4dot
eb7d4c5f88 Use CreateStream() instead of creating a MemoryStream from a byte[] 2012-11-08 10:16:58 +01:00
de4dot
f6b5a3117f Port CodeVeil deobfuscator 2012-11-08 09:48:05 +01:00
de4dot
10e83acebc Port CodeFort deobfuscator 2012-11-08 07:43:57 +01:00
de4dot
4393df31d9 Update detection of CSVM asm ref 2012-11-08 07:07:02 +01:00
de4dot
f699017197 Port Babel.NET deobfuscator 2012-11-08 07:06:46 +01:00
de4dot
ce6659510e Use ToGenericInstSig() ext method 2012-11-08 07:05:41 +01:00
de4dot
e600696182 Use IBinaryReader.ReadRemainingBytes() 2012-11-07 07:29:39 +01:00
de4dot
ab78e97423 Use the new name of this obfuscator 2012-11-07 05:47:33 +01:00
de4dot
9c64165d15 Add a getDumpedMethod() method 2012-11-07 05:38:06 +01:00
de4dot
583d4201f5 Port Agile.NET deobfuscator 2012-11-07 05:17:45 +01:00
de4dot
cc1e36389d Update resolve{Method,Field}() sigs with a more general arg type 2012-11-07 04:46:19 +01:00
de4dot
814c3d3944 Fix method decrypter 2012-11-07 04:45:36 +01:00
de4dot
b6537dc188 Fix lookup<T> method sigs 2012-11-07 04:45:05 +01:00
de4dot
6efb96740d Update code since EntryPoint was renamed ManagedEntryPoint 2012-11-07 02:02:38 +01:00
de4dot
427ea38595 Port MPRESS unpacker 2012-11-07 01:52:15 +01:00
de4dot
d98d4b10bb Add code to restore dumped methods 2012-11-07 01:15:52 +01:00
de4dot
4be7e4fe46 Initialize DumpedMethod.mdRVA 2012-11-07 00:26:36 +01:00
de4dot
001b67804f Move DumpedMethod{,s} to de4dot.blocks namespace 2012-11-06 22:25:19 +01:00
de4dot
90ab31eda2 Port Rummage deobfuscator 2012-11-06 17:21:56 +01:00
de4dot
25cee0e206 Port Skater.NET deobfuscator 2012-11-06 17:15:11 +01:00
de4dot
19ed1ac219 Rename CliSecure -> Agile_NET 2012-11-06 16:38:39 +01:00
de4dot
c67c267c8e Port Dotfuscator deobfuscator 2012-11-06 16:30:39 +01:00
de4dot
ac171e3f29 Fix code since CilBody/HasCilBody were renamed 2012-11-06 15:58:55 +01:00
de4dot
3ed2daebd1 Port Xenocode deobfuscator 2012-11-06 15:58:21 +01:00
de4dot
f5ec3e2a27 String can be empty so return early if so 2012-11-06 01:59:40 +01:00
de4dot
c8039d249e Add more checks when input has lots of invalid metadata 2012-11-06 00:18:02 +01:00
de4dot
6d45a3499f Fix porting mistakes 2012-11-05 19:21:33 +01:00
de4dot
ea001865c9 Rename FnPtr args, and also null type sigs params 2012-11-05 02:42:48 +01:00
de4dot
2aedcc730c Preserve tokens if necessary 2012-11-04 23:24:12 +01:00
de4dot
c9f1f8073e MethodDef.Parameters contains the hidden 'this' param, so add some fixes to old code 2012-11-04 22:41:45 +01:00
de4dot
6a8e8dcb78 Initialize loaded modules' module context 2012-11-04 20:06:58 +01:00
de4dot
d5838aa6c2 Use the IModuleWriterListener interface 2012-11-04 19:40:36 +01:00
de4dot
f4ce67d836 Remove useless class and fix a porting todo 2012-11-04 13:25:14 +01:00
de4dot
83cb59718a Move GenericArgsSubstitutor and add more methods 2012-11-04 12:13:13 +01:00
de4dot
f7f424efe7 Remove more "#if PORT" 2012-11-04 11:50:10 +01:00
de4dot
9376aa0de5 Rename method return parameters 2012-11-04 11:45:04 +01:00
de4dot
7ba4905cc7 Port more code, including renamer 2012-11-04 01:05:52 +01:00
de4dot
db6875859a Port more code 2012-11-03 22:49:52 +01:00
de4dot
9b6c698dc1 Port some code 2012-11-02 22:53:24 +01:00
de4dot
89cd55a071 Port more code 2012-11-02 20:10:34 +01:00
de4dot
00177034b9 Rename cecil names; add new MemberRefFinder class 2012-11-02 16:08:11 +01:00
de4dot
65e6887fbc Port more code; remove cecil refs 2012-11-02 08:28:39 +01:00
de4dot
70916173f3 Update code since dot10 was updated 2012-11-02 07:36:02 +01:00
de4dot
24c43d5a66 Port some more code 2012-11-01 21:09:09 +01:00
de4dot
1341cc7199 Port more code 2012-11-01 16:42:02 +01:00
de4dot
3b6ef4fa1f Port more code 2012-11-01 14:39:39 +01:00
de4dot
c5d183983b Port more code 2012-11-01 11:28:09 +01:00
de4dot
eeef8a2580 Use dot10.PE 2012-11-01 07:51:08 +01:00
de4dot
04e1568c61 Port ConstantsReader 2012-10-31 17:09:58 +01:00
de4dot
6f73696cc5 Port ..... 2012-10-31 16:54:20 +01:00
de4dot
ee7826576c Sort project file 2012-10-31 13:48:12 +01:00
de4dot
95d49c5b9e Add more assembly search paths 2012-09-20 05:57:16 +02:00
de4dot
d29ac1a4cf Check for generic params in all generic arguments too 2012-09-19 22:51:49 +02:00
de4dot
13a5fd8ff0 Add a fix for when type.Scope is null 2012-08-31 00:24:42 +02:00
de4dot
30a73371c8 Fat header type is encoded in the lower 3 bits 2012-08-23 12:02:09 +02:00
de4dot
a34b3f7855 Support latest CO build 2012-08-22 18:33:27 +02:00
de4dot
f1a725cd19 Restore MaxStack 2012-08-21 20:17:35 +02:00
de4dot
58b1b27c69 Use correct upper limit in loop, and return false on failure... 2012-08-21 20:17:21 +02:00
de4dot
3b9ba16df6 Make restoreMethod() virtual 2012-08-21 20:14:43 +02:00
de4dot
2c68ae14ee New version: 1.9.1 2012-08-21 15:40:23 +02:00
de4dot
64cc8e3856 Decrypt CO encrypted methods 2012-08-21 15:40:06 +02:00
de4dot
0a5973e541 Update detection of CO types 2012-08-21 15:06:42 +02:00
de4dot
957a8ab8dd Move method to new CoUtils class 2012-08-21 15:04:40 +02:00
de4dot
729780c235 Update MethodBodyReaderBase
- Change field types to IList<T>
- Add restoreMethod()
- Add readInstructionsNumBytes()
2012-08-21 14:59:46 +02:00
de4dot
bfcd42804e Add getModuleAttribute() 2012-08-15 19:33:57 +02:00
de4dot
1768de1d6b Remove earlyDetect() 2012-08-13 00:54:46 +02:00
de4dot
47a3034259 Call method later 2012-08-03 17:57:45 +02:00
de4dot
b455ae8dab Fix arg name 2012-08-02 19:53:30 +02:00
de4dot
e496cea7da Add an option to remove a present unbox.any instr 2012-08-01 22:20:35 +02:00
de4dot
9cbbea2c01 Use a better resource key 2012-07-31 12:50:55 +02:00
de4dot
c005ab2998 Check for div by zero 2012-07-31 12:43:23 +02:00
de4dot
dace82cca9 Add find2() method for derived classes 2012-07-31 07:13:07 +02:00
de4dot
329efd9a0f Add code to let a derived class to push new values 2012-07-31 04:40:45 +02:00
de4dot
87a8052cbe Declaring type is null if it's already been removed 2012-07-31 04:40:06 +02:00
de4dot
6be691ab6d Increment errors if there's an exception 2012-07-31 04:39:34 +02:00
de4dot
06b7374276 Add support for reading r8 values. Also rename some methods 2012-07-31 01:14:38 +02:00
de4dot
11256d6e76 Make property public 2012-07-30 10:26:49 +02:00
de4dot
83b805adc3 Move methods 2012-07-30 09:17:22 +02:00
de4dot
b2d72b153f Ignore exceptions when calling detect()
Most likely invalid code and/or metadata, which usually means it's still
encrypted.
2012-07-29 18:12:29 +02:00
de4dot
de8090df61 Add setConstant methods 2012-07-29 14:21:13 +02:00
de4dot
c924d84340 Add another decrypt() method 2012-07-29 13:20:35 +02:00
de4dot
c3c1ab64d8 Add setDeobfuscator() method 2012-07-29 13:19:12 +02:00
de4dot
f07f664553 Don't cast to a possible value type when result can be null 2012-07-29 09:49:00 +02:00
de4dot
cb6a3ac503 Support generic decrypter methods 2012-07-28 04:39:14 +02:00
de4dot
a2c8e99b3f Ignore any exceptions during deobfuscation 2012-07-28 04:18:11 +02:00
de4dot
e88479f71d Add OtherMethods prop 2012-07-27 08:03:02 +02:00
de4dot
3abb8de345 getFieldToMethodDictionary() is now a non-virtual method 2012-07-27 07:57:13 +02:00
de4dot
1a1ccb2121 Update code since GetUserString() arg is now a token 2012-07-26 20:07:27 +02:00
de4dot
bbd41a549c Add MD5 and SHA256 sum methods 2012-07-26 16:35:28 +02:00
de4dot
916948249e Add missing null check 2012-07-26 16:35:08 +02:00
de4dot
5fc6e1ac75 Add method to get a 64-bit int 2012-07-25 21:06:35 +02:00
de4dot
423c33a9f2 Append 32 to 32-bit methods and fields 2012-07-25 20:48:06 +02:00
de4dot
e2ec6548ed Add more ctors and add EmulateConvInstructions prop 2012-07-25 20:43:22 +02:00
de4dot
755c9ae21a New version: 1.9.0 2012-07-24 20:08:09 +02:00
de4dot
a815a70415 Rename arrays 2012-07-24 19:58:00 +02:00
de4dot
880441571e Update class comment 2012-07-24 19:52:34 +02:00
de4dot
c31e6c2c3d Main embedded asm doesn't always have the same asm name as the original asm 2012-07-24 19:05:50 +02:00
de4dot
e1f8793302 Add option to disable decrypting main embedded assembly 2012-07-24 18:52:39 +02:00
de4dot
490ce203b6 Update invalid name regex 2012-07-24 18:13:18 +02:00
de4dot
e54b026ae7 Make the embedded (original) start up assembly the new decrypted assembly 2012-07-24 17:49:04 +02:00
de4dot
4374a08020 getDecryptedModule() can now be called multiple times 2012-07-24 17:02:27 +02:00
de4dot
c8477bdbce Print a warning and use default encoding if the code page doesn't exist 2012-07-23 13:19:04 +02:00
de4dot
8a81e98b3f Fix invalid Mvid 2012-07-23 13:15:32 +02:00
de4dot
6c04a950e7 Remove duplicate resources 2012-07-23 10:22:39 +02:00
de4dot
b03cb46f53 Rename class 2012-07-23 10:08:13 +02:00
de4dot
ebbc8d2ab8 Remove encoding arg 2012-07-23 10:04:40 +02:00
de4dot
74aaf19257 Support the latest CO build 2012-07-22 20:35:33 +02:00
de4dot
2320c458cf Check for null (invalid method ref in call instr) 2012-07-21 23:13:34 +02:00
de4dot
762e043236 Merge branch 'co' into new_code
Conflicts:
	de4dot.code/de4dot.code.csproj
	de4dot.code/deobfuscators/CryptoObfuscator/Deobfuscator.cs
2012-07-21 12:14:04 +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
fd9d4a40cc Support another MC runtime 2012-07-21 11:13:59 +02:00
de4dot
816ff5f369 New version: 1.8.7 2012-07-20 21:55:12 +02:00
de4dot
e05bfc9c8a Decrypt strings 2012-07-20 21:54:56 +02:00
de4dot
dfafc4a94b Remove useless method 2012-07-20 18:32:49 +02:00
de4dot
9b48632354 Refactor 2012-07-20 18:15:40 +02:00
de4dot
8b82f8b47d Support the latest MC versions 2012-07-20 14:49:47 +02:00
de4dot
1eaa9f8c51 Add verify methods 2012-07-20 14:48:19 +02:00
de4dot
d9b3a81ba9 Add little endian encrypt/decrypt methods 2012-07-20 14:47:55 +02:00
de4dot
9b71da3633 Remove call to InitializeArray 2012-07-18 14:39:27 +02:00
de4dot
d0712b46aa Update detection of resource resolver class 2012-07-16 20:00:37 +02:00
de4dot
6766c10969 Split array state into a new class 2012-07-16 19:59:50 +02:00
de4dot
ca65972c64 Add a force option to deobfuscate() method 2012-07-16 18:02:32 +02:00
de4dot
2aa3c8aaea Add constants decrypter 2012-07-11 08:05:06 +02:00
de4dot
8f2f2f46ce Support latest CO build 2012-07-11 02:15:33 +02:00
de4dot
9f8cac4dac Fix #56 2012-07-08 08:14:36 +02:00
de4dot
598529a039 Support calli instruction 2012-07-08 04:18:26 +02:00
de4dot
16d5a31640 Create a SentinelType 2012-07-08 03:50:50 +02:00
de4dot
1581ec959d Merge branch 'master' into new_code 2012-07-07 19:35:54 +02:00
de4dot
1867a06e84 Continue if same method 2012-07-07 09:09:55 +02:00
de4dot
ad6c6401b9 Support VS2008 2012-07-07 07:16:55 +02:00
de4dot
e440270a63 Fix proxy calls 2012-07-07 01:59:03 +02:00
de4dot
0a5764a093 Change method to take a ref to a type 2012-07-07 00:58:18 +02:00
de4dot
02c89550cb Update the counter 2012-07-05 23:19:37 +02:00
de4dot
d5c8f6842a Update log string 2012-07-02 21:49:59 +02:00
de4dot
8a34b6e015 Make method static 2012-07-02 21:49:45 +02:00
de4dot
b9e88972ae Support latest CO build 2012-07-02 14:26:00 +02:00
de4dot
23697e2c00 Support ILP 1.0.5 2012-07-01 16:23:51 +02:00
de4dot
4c5fa3e809 Remove ILP detection 2012-06-27 15:19:09 +02:00
de4dot
4236514691 Merge branch 'ilp' into new_code 2012-06-27 15:15: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
12797ecb03 Support latest CO build 2012-06-27 10:45:45 +02:00
de4dot
cd0a193bdf Support latest AN build 2012-06-27 10:27:16 +02:00
de4dot
d1259460e3 Update detection of decrypter constants. Fixes #59 2012-06-25 01:14:26 +02:00
de4dot
fa594c6213 Add better BL support 2012-06-12 11:15:19 +02:00
de4dot
4a29eae1c8 Add more inflate() overloads 2012-06-11 21:20:14 +02:00
de4dot
31118c11ba Add the code from SharpZipLib that de4dot uses 2012-06-11 21:18:03 +02:00
de4dot
b964996388 Support Babel.NET 5.5 2012-06-06 21:16:32 +02:00
de4dot
a8bf74ca78 Support Rummage 2012-06-06 11:40:48 +02:00
de4dot
6d675fea54 Add XTEA decrypter 2012-06-06 11:39:48 +02:00
de4dot
3264bfc5cd Support latest CO build 2012-06-04 09:51:07 +02:00
de4dot
5567c9a06a Warn if strings resource couldn't be found 2012-06-04 06:34:32 +02:00
de4dot
3582b773ca Support ILP 2012-06-04 05:02:46 +02:00
de4dot
27a91f5942 Change parameters type from [] to IList 2012-06-04 03:55:25 +02:00
de4dot
286462db4b Move file 2012-06-03 19:08:46 +02:00
de4dot
e75386d0f9 Move method to Utils.cs 2012-06-03 16:44:08 +02:00
de4dot
b844dbc428 Detect ILP 2012-06-02 20:56:36 +02:00
de4dot
bff92e02e7 Remove unused method 2012-06-02 17:32:05 +02:00
de4dot
d2ec4e2969 New version: 1.8.5 2012-06-02 07:27:50 +02:00
de4dot
ec8139f640 Refactor code and support latest AN build 2012-06-02 07:26:21 +02:00
de4dot
a25f4f4640 Remove proxy methods type and make sure all proxy methods are inlined 2012-06-02 03:33:21 +02:00
de4dot
3c99e8d0d6 Update valid name regex 2012-06-01 12:53:03 +02:00
de4dot
6696c26496 Assembly resolver init method is sometimes only called from Main() 2012-06-01 12:40:16 +02:00
de4dot
d091564d85 Fix ToString(). Should separate generic args with commas 2012-06-01 12:05:01 +02:00
de4dot
cd2851baf4 Add an option to disable dumping embedded assemblies 2012-06-01 12:01:45 +02:00
de4dot
58b62ff914 Decrypt main assembly and embedded assemblies 2012-06-01 11:53:54 +02:00
de4dot
ddc270b963 Remove newlines from names when calling logger methods 2012-05-31 06:08:01 +02:00
de4dot
96f9f4154d Decrypt CF encrypted strings 2012-05-29 20:20:11 +02:00
de4dot
9b591c68d3 Fix CF proxy calls 2012-05-29 19:14:41 +02:00
de4dot
512c650e11 Add another proxy call fixer class 2012-05-29 19:13:43 +02:00
de4dot
24d1c5182b Update comment 2012-05-29 19:07:01 +02:00
de4dot
58adda95b6 getAllBlocks() now returns a List instead of an IList 2012-05-29 19:06:41 +02:00
de4dot
7b3dcf8e05 Refactor proxy call fixer classes 2012-05-29 11:13:39 +02:00
de4dot
1b569a0d24 Support MPRESS 2012-05-28 18:00:29 +02:00
de4dot
3e6a259e8f Add 50 more points if methods decrypter is detected 2012-05-27 07:43:26 +02:00
de4dot
c441a60372 Print CW version number 2012-05-27 07:00:13 +02:00
de4dot
eebb090827 Support old CW 2.x 2012-05-27 02:31:53 +02:00
de4dot
06a30473da Decrypt strings encrypted with older CW version 2012-05-26 20:20:11 +02:00
de4dot
adaf41c769 Decrypt embedded assemblies 2012-05-26 17:41:08 +02:00
de4dot
3a96ae391a Move common resolver handler detector code to DeobUtils 2012-05-26 17:33:26 +02:00
de4dot
dbd7affaa8 Update valid name regex 2012-05-26 14:40:51 +02:00
de4dot
f1c8549066 Decrypt CW encrypted strings 2012-05-26 14:38:08 +02:00
de4dot
20452fe964 Decrypt CW encrypted methods 2012-05-26 05:26:00 +02:00
de4dot
b1f5fe92be Clear invalid method bodies 2012-05-24 16:42:04 +02:00
de4dot
1a7c89a173 New version: 1.8.4 2012-05-19 09:02:26 +02:00
de4dot
c48b2d92c2 Support AN 6.0.0.5 (new build, same version) 2012-05-19 08:59:13 +02:00
de4dot
f6c5ed1c0c New version: 1.8.3 2012-05-15 19:06:21 +02:00
de4dot
c3cdf95fcf Support AN 6.0.0.5 2012-05-15 19:05:47 +02:00
de4dot
d1c09c3fae New version: 1.8.2 2012-05-13 15:06:50 +02:00
de4dot
654ebf652e Merge branch 'ds' 2012-05-12 21:40:01 +02:00
de4dot
bec6725aa7 Rename option 2012-05-12 21:39:49 +02:00
de4dot
40898cf238 Decrypt embedded assemblies (SL) 2012-05-11 19:38:31 +02:00
de4dot
ce3622f6e8 Use the correct variable 2012-05-11 18:18:19 +02:00
de4dot
94ee4064ed Remove namespace prefix 2012-05-11 18:17:51 +02:00
de4dot
cd014f1d72 Update fields restorer 2012-05-10 20:20:29 +02:00
de4dot
1d2a78979f Use generic prop creator if the type has a generic parameter 2012-05-10 19:00:12 +02:00
de4dot
f05a334c11 Make sure we don't rename a key to an already existing non-renamed key 2012-05-10 18:41:21 +02:00
de4dot
0b47ccf070 Remove cflow obfuscation arrays 2012-05-10 18:38:27 +02:00
de4dot
ae7e32ae5b Remove decrypt method and other init method 2012-05-10 13:39:14 +02:00
de4dot
c5f8aaeb1a Dump 4.1 embedded assemblies 2012-05-09 22:24:39 +02:00
de4dot
ee32b84283 Move code to DsUtils 2012-05-09 22:20:17 +02:00
de4dot
9b9e692947 Move version specific data to their own class 2012-05-09 19:10:20 +02:00
de4dot
dadc064b55 Decrypt V4.1 resources 2012-05-09 19:00:21 +02:00
de4dot
1aaa5df9ce Support trial string encrypter 2012-05-09 17:30:35 +02:00
de4dot
3572bdfdcc Set maxlen to 50. Fix incorrect method sig. Make sure there are no dupes. 2012-05-09 17:28:52 +02:00
de4dot
e5a64a4402 Remove more XC attributes 2012-05-06 13:07:34 +02:00
de4dot
44fea8f185 Fix problems found while testing 2012-05-03 17:24:59 +02:00
de4dot
b27e1b36af Add option to disable cast deobfuscation 2012-05-03 16:51:36 +02:00
de4dot
ea205dcae8 Add option to disable renaming resource keys 2012-05-03 16:48:03 +02:00
de4dot
955c1f10bd Rename resource keys 2012-05-03 16:47:34 +02:00
de4dot
76a10b1f34 Add Data property 2012-05-03 16:40:17 +02:00
de4dot
83725200c1 Add isValidResourceKeyName() 2012-05-03 14:53:01 +02:00
de4dot
2761216e39 Add a resource reader 2012-05-03 14:34:58 +02:00
de4dot
83dc4226c1 Make sure string decrypter methods aren't detected as inlined methods 2012-05-03 09:51:26 +02:00
de4dot
870dab5b90 Fix renaming events/properties 2012-05-03 09:05:05 +02:00
de4dot
fb9e217dac Add a cast deobfuscator 2012-05-03 08:01:35 +02:00