деобфусцированный confuser ex исходный код exe - PullRequest
0 голосов
/ 18 апреля 2020

У меня есть декомпиляция. net exe с использованием de4dot, dnspy,. net рефлектор, ILspy и просто декомпилятор, большинство библиотек и классов декомпилированы, но столкнулись с проблемой с несколькими классами, так как они не извлекаются в понятном формате или даже не исполняемый формат ... пожалуйста, советуйте любому приложению / программному обеспечению, которое может извлечь код из этих классов в понятном формате или в исполняемом формате .. пример кода приведен ниже

                    using System;
                    using System.Diagnostics;
                    using System.Windows.Input;

                    namespace GPSserver.Base
                    {
                        // Token: 0x02000026 RID: 38
                        public class DelegateCommand<T> : ICommand
                        {
                            // Token: 0x0600018A RID: 394 RVA: 0x00002E2F File Offset: 0x0000102F
                            public DelegateCommand(Action<T> execute, Predicate<T> canExecute = null)
                            {
                                this._execute = execute;
                                this._canExecute = canExecute;
                            }

                            // Token: 0x0600018B RID: 395 RVA: 0x00002E45 File Offset: 0x00001045
                            [DebuggerStepThrough]
                            public bool CanExecute(object parameter)
                            {
                                return this._canExecute == null || this._canExecute((T)((object)parameter));
                            }

                            // Token: 0x14000004 RID: 4
                            // (add) Token: 0x0600018C RID: 396 RVA: 0x00002E62 File Offset: 0x00001062
                            // (remove) Token: 0x0600018D RID: 397 RVA: 0x00002E72 File Offset: 0x00001072
                            public sealed event EventHandler CanExecuteChanged
                            {
                                add
                                {
                                    if (this._canExecute != null)
                                    {
                                        DelegateCommand<T>.\u200B\u202B\u206F\u206D\u200D\u202E\u200F\u206C\u200E\u206F\u202A\u200D\u202E\u202E\u202E\u206F\u206B\u206F\u202E\u200D\u200F\u200F\u200B\u200B\u202C\u202C\u200C\u202D\u200B\u202D\u202C\u206C\u206D\u200D\u200F\u200E\u202B\u202B\u202C\u202C\u202E(value);
                                    }
                                }
                                remove
                                {
                                    if (this._canExecute != null)
                                    {
                                        DelegateCommand<T>.\u200B\u206F\u206D\u206F\u200C\u206D\u200D\u206C\u202D\u206A\u202E\u206A\u202B\u202E\u206B\u200F\u200D\u202C\u202C\u202A\u200D\u206A\u200D\u202E\u200E\u206C\u200F\u206D\u200E\u202B\u202A\u200F\u206B\u202D\u206F\u202C\u200B\u202E\u200B\u200D\u202E(value);
                                    }
                                }
                            }

                            // Token: 0x0600018F RID: 399 RVA: 0x00002E84 File Offset: 0x00001084
                            public void Execute(object parameter)
                            {
                                this._execute((T)((object)parameter));
                            }

                            // Token: 0x04000044 RID: 68
                            private readonly Predicate<T> _canExecute;

                            // Token: 0x04000045 RID: 69
                            private readonly Action<T> _execute;
                        }
                    }
...