This repository has been archived by the owner on Sep 28, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 261
/
ChangeLog
478 lines (380 loc) · 19 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
////////////////////////////////////////////////////////////////////////////////
// v2.7 - 09/08/2021 ///////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
upgrades:
- de4Dot/dnlib update.
////////////////////////////////////////////////////////////////////////////////
// v2.6 - 03/08/2021 ///////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
bugfixes:
- Fix runtime issues with ILSpy 7.1
////////////////////////////////////////////////////////////////////////////////
// v2.5 - 29/12/2020 ///////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
bugfixes:
- Fix runtime issues with ILSpy 6.2.1
////////////////////////////////////////////////////////////////////////////////
// v2.4 - 15/07/2020 ///////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
news:
- Support for ILSpy v6.x.
upgrades:
- de4Dot/dnlib update.
////////////////////////////////////////////////////////////////////////////////
// v2.3 - 28/05/2019 ///////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
news:
- Support for ILSpy v4.x (now using System.Reflection.Metadata).
upgrades:
- de4Dot/dnlib update.
- Mono.Cecil update.
bugfixes:
- Fix assembly loading and resolution with Mono.Cecil.
- Fix DPI issues with progress bars.
////////////////////////////////////////////////////////////////////////////////
// v2.2 - 17/01/2018 ///////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
news:
- Preliminary support for JustDecompile.
upgrades:
- de4Dot/dnlib update. Support for deobfuscating 'Confuser'.
- Mono.Cecil 0.10 update.
- Don't close Edit/Create instruction dialog on opc/operand inconsistency.
- Add editors for all primitive types for constant/custom attributes.
- Support for ILSpy 3.x
- Automatically compute imports for code injection, from current type
members and method calls.
bugfixes:
- Fix method matching with Reflector.
- Fix renaming fields losing constant values.
////////////////////////////////////////////////////////////////////////////////
// v2.1 - 10/08/2016 ///////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
news:
- Replace with NOP in the instructions editor.
- Added copy/paste to instruction editing grid, thanks to Thijs Kroesbergen.
- Added SilverLight 5 compilation profile.
upgrades:
- Use resolver for system assemblies if NoStdLib is set.
- Add extra registry keys for finding SDK tools (thanks to Sander Cox).
bugfixes:
- Fix resource mapping mechanism with ILSpy.
- Fix version display with ILSpy.
- Fix API compatibility with ILSpy 2.4 (you will need to use this version).
- Fix cannot select operator methods when editing call/callvirt opcodes.
- Fix import with generic parameters.
////////////////////////////////////////////////////////////////////////////////
// v2.0 - 31/09/2015 ///////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
news:
- ILSpy support.
- hot assembly replacement feature for ILSpy 2.3+ and Reflector 8.5+.
- support for generic instance types and methods in the instruction editor.
- generic type arguments editor when selecting a type/method with generic
parameter(s).
upgrades:
- improved member matching with code injection.
- try to resolve an assembly from the host assemblies first, then use the
default resolver.
- de4Dot 3.1.4 update.
- Mono.Cecil 0.9.6 update.
- tooltips for long types.
- better display with generic instance providers.
- plugin API cleanup.
bugfixes:
- fixed .NET 3.5 profile detection.
- properly remove assembly context when the host assembly is unloaded.
- validate current handler before switching to keep all alterations.
- fixed injection adding bad or duplicate corlib reference (again).
- fixed implicit version when injecting assembly name reference.
- properly give the focus to the member reference window treeview.
- handle the case when assembly resolving fails during injection.
- workaround Reflector not displaying sub menu separators.
- fixed C# code generation with generics.
- fixed type/method hierarchy mapping with generics.
- fixed NRE when editing custom attribute.
- fixed Reflector type search for lambda methods using the same parameter.
- the assembly browser is now able to properly locate generic members.
- fixed broken symbol loader.
////////////////////////////////////////////////////////////////////////////////
// v1.9 - 01/12/2014 ///////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
news:
- optimize and fix IL code after body alteration or code injection. You can
control this behaviour from the settings window.
- extended verbatim string operand type in the constant & argument
editor so that you can use special chars like \n, \t...
- type specification composition, so that you can define a String[][]* var
- add compilation profiles to better support Unity/Silverlight assemblies
with "Replace all with code".
upgrades:
- Mono.Cecil update.
- filter autogenerated members with "Replace all with code".
bugfixes:
- fixed ModuleAttributes value will never be saved in some case. (lonwern)
- fixed related property when deleting a getter or setter method.
- fixed member selector and properties without getter & setter.
- fixed injection adding bad or duplicate corlib reference.
////////////////////////////////////////////////////////////////////////////////
// v1.8 - 14/07/2014 ///////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
news:
- added verbatim string operand type in the instruction
editor so that you can use special chars like \n, \t...
upgrades:
- support for Microsoft SDK v7.1A, v8.0A, v8.1A.
bugfixes:
- fixed graphical issues with Windows 8.
- PEVerify was not always targeting the proper assembly.
- strong name remover was not always targeting the proper assembly.
- fixed PE Header when removing strong name.
- fixed support for volatile and unsafe modifiers in "replace all with code"
////////////////////////////////////////////////////////////////////////////////
// v1.7 - 03/01/2014 ///////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
news:
- Module attributes support.
upgrades:
- Mono.Cecil update.
- de4Dot 3.0.3 update.
bugfixes:
- Using "Replace All With Code" feature was unable to resolve the working
assembly in some cases, preventing some advanced alterations to the
source code.
- Fixed injection of nested types.
- Properly handle module characteristics.
////////////////////////////////////////////////////////////////////////////////
// v1.6 - 17/01/2013 ///////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
news:
- optional ILMerged version to prevent unexpected Mono.Cecil assemblies.
upgrades:
- de4dot 1.9.0 update. New deobfuscation support for CodeFort, CodeWall,
ILProtector, MPRESS, Rummage.
- Mono.Cecil 0.9.5 update.
- ARM, WindowsRuntime and Module characteristics support.
bugfixes:
- check customized Mono.Cecil assembly
////////////////////////////////////////////////////////////////////////////////
// v1.5 - 16/04/2012 ///////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
news:
- deobfuscation support for Babel NET, CliSecure, CodeVeil, CryptoObfuscator
DeepSea, Dotfuscator, dotNET Reactor, Eazfuscator NET, Goliath NET,
MaxtoCode, Skater NET, SmartAssembly, Spices Net and Xenocode.
Thanks to de4dot by 0xd4d!
upgrades:
- Mono.Cecil update.
bugfixes:
- bugfix for "register for verification skipping" and delay signed assembly.
- bugfix for "resign" and delay signed assembly.
////////////////////////////////////////////////////////////////////////////////
// v1.4 - 27/01/2012 ///////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
news:
- custom attributes support.
- assembly/module renaming.
upgrades:
- search the type tree with a regex like ^SerializableAttribute$.
bugfixes:
- fixed drag&drop issues with column headers.
- fixed broken ExceptionHandler editor after Mono.Cecil 0.9.x migration.
- fixed broken Variable editor after Mono.Cecil 0.9.x migration.
- fixed assembly resolution issues, thanks to Douglas Drinka.
////////////////////////////////////////////////////////////////////////////////
// v1.3 - 24/08/2011 ///////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
news:
- resource support (injection and alteration): Embedded resources, linked
resources and assembly linked resources. Complete hex editor to update,
export or import files.
upgrades:
- works both on Reflector 6.x and Reflector 7.x.
bugfixes:
- fixed assembly loading errors when using symbols and pdb file is not
available.
////////////////////////////////////////////////////////////////////////////////
// v1.2 - 07/03/2011 ///////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
news:
- Reflexil is now MIT/X11 licensed
- technical update: using customized Mono.Cecil/Light 0.9.x
- technical update: using customized ICSharpCode.SharpDevelop.Dom.dll
- technical update: using customized ICSharpCode.TextEditor.dll
- technical update: using customized ICSharpCode.NRefactory.dll
upgrades:
- moved "Kind" and "Target Runtime" from Assembly to Module handler
- better support for pdb and mdb files and strong name assemblies
- complete support for PE32+ assemblies
- less memory consumption
- lazy loading of every metadata element
- speed and optimizations
- you can enable/disable cache settings for intellisense
- injection/compilation with version control: v2.0, v3.5, v4.0
- new injection import process
- added architecture support (I386, AMD64, IA64) in module definition
- new attributes grouping
bugfixes:
- fixed PointerType/ArrayType/ReferenceType Cecil/Reflector code matching
(No data shown for methods with "ref" array parameters)
- fixed crashes when attempting to replace all with code
(Could not find a part of the path)
- fixed type import when updating field, method, property or event
- fixed extra random assembly reference when injecting/compiling
////////////////////////////////////////////////////////////////////////////////
// v1.1 - 28/04/2010 ///////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
news:
- rename, delete or inject class/interface/struct/enum/event/field/method/
constructor/property/assembly reference
- smart injection : injecting a new property will generate a field,
getter/setter methods and IL code.
- open architecture: Reflexil is now able to be used with Reflector,
Cecil.Studio or anything able to convert an object model to Mono.Cecil
- property editor (attributes, type, constant)
- field editor (attributes, type, constant)
- event editor (attributes, type)
- assembly verifier (using peverify.exe from .NET SDK)
upgrades:
- interfaces and base type selection for type editor
- Reflector/Mono.Cecil method matching
bugfixes:
- fixed framework version detection for Mono, initial patch by Robin Herbots
- fixed constant handling with parameters
- fixed InitLocals initialization for method bodies
- fixed branch to self causes stack overflow, patch by Brien Sourceforge
- fixed crash with unsupported assemblies
- fixed grid refresh for method overrides
- fixed offset compute after code injection
- fixed code injection/type matching with nested types
- fixed const handling with parameters, fields and properties
////////////////////////////////////////////////////////////////////////////////
// v1.0 - 23/10/2009 ///////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
news:
- proper configuration for code injection with .NET 3.5 compiled files
- using up to date Mono.Cecil.Pdb (now fully managed)
bugfixes:
- fixed ArgumentOutOfRange with some compile errors (replace all with code)
- fixed error CS0006: Metadata file '...' could not be found
////////////////////////////////////////////////////////////////////////////////
// v0.9.1 - 30/04/2009 /////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
news:
- check if .NET Framework v3.5 is installed
bugfixes:
- some debug code was left, causing errors to users without "c:" drive.
misc:
- source code cleanup
////////////////////////////////////////////////////////////////////////////////
// v0.9 - 28/01/2009 ///////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
news:
- instruction offset column
- code editor intellisense
- region folding
- insight window
bugfixes:
- assembly browser was only listening to mouse events
- fix combobox rendering errors without visual themes
misc:
- source code cleanup
////////////////////////////////////////////////////////////////////////////////
// v0.8 - 25/05/2008 ///////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
news:
- assembly reference editor (name, version, public key, token, hash)
- assembly name editor (entry point, assembly kind, framework version, name,
version, public key, token)
upgrades:
- 'unsafe' code generation support
- reflector item handler
bugfixes:
- field reference fix after code injection
- forms tabindexes
////////////////////////////////////////////////////////////////////////////////
// v0.7 - 17/01/2008 ///////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
news:
- type attributes editor (sealed, semantic, layout, string format,
visibility, ...)
- strong name remover
upgrades:
- sn.exe registry keys with framework 3.5
- C# / VB.NET code generator
bugfixes:
- static field code generation
- VB.NET 'Single' type alias code generation
- C# / VB.NET keywords used as field/method/parameter names
- main window flicker fix
////////////////////////////////////////////////////////////////////////////////
// v0.6 - 30/10/2007 ///////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
news:
- symbol loading support (pdb and mdb)
- method attributes editor (member access, vtable layout, code type,
managment, calling convention, return type) -> so you can change a method
visibility
- parameter editor -> so you can change a method signature
- variable editor
upgrades:
- multiple selection support in grids
- method RVA tooltip in grids
- assembly / method definition cache system
bugfixes:
- namespaces with type browser
- pointer type matching
- method matching
- generic type matching
- remoting timeout with compilation window
- Mono.Cecil import context update
- VB.NET arrays
- unsafe C# compilation setting
- prevent "insert after/insert before" when a list is empty
////////////////////////////////////////////////////////////////////////////////
// v0.5 - 14/09/2007 ///////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
news:
- VB.NET code injection
- binary, octal, hexadecimal, decimal base support.
- configuration form
upgrades:
- code injection is no more 'context-free': type, fields and methods can
be referenced, and are automaticaly mapped to original items.
- scroll positions are now saved when creating/updating/deleting
instructions or exception handlers
bugfixes:
- injection code works even if the library is not in the same folder than
Reflector.
- sn.exe (strong name utility) is correctly located even if PATH variable
contains quotes.
////////////////////////////////////////////////////////////////////////////////
// v0.4 - 29/08/2007 ///////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
news:
- exception handlers support.
- exception handler drag&drop.
- signed assembly support.
upgrades:
- Reflector bug report is sent to reflexil mailbox.
bugfixes:
- using non CLI images with Reflector.
////////////////////////////////////////////////////////////////////////////////
// v0.3 - 20/07/2007 ///////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
news:
- instruction drag&drop.
- delete all instructions.
- C# code injection (preliminary support).
upgrades:
- opcodes autocomplete.
////////////////////////////////////////////////////////////////////////////////
// v0.2 - 08/07/2007 ///////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
news:
- editors: type, method or field references.
upgrades:
- instruction edit form with opcodes descriptions (and grid tooltips).
////////////////////////////////////////////////////////////////////////////////
// v0.1 - 02/07/2007 ///////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////