飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 3156|回复: 4

[求助] 一个.net程序,已去除混淆代码,用reflector 已找到关键代码,但不知道如何修改

[复制链接]
  • TA的每日心情
    开心
    2024-3-21 10:42
  • 签到天数: 12 天

    [LV.3]偶尔看看II

    发表于 2014-6-10 15:29:56 | 显示全部楼层 |阅读模式

    已去除混淆代码,用reflector 已找到关键代码,但不知道怎么修改,还请高手帮忙

    软件有试用限制,每次15分钟,只能发10个帖子。程序用de4dot去除了混淆代码。用reflector,找字符串:

    private void MAIN_Shown(object sender, EventArgs e)
    {
        try
        {
            try
            {
                if (!Functions.piv)
                {
                    int num = this.method_3();
                    if (Functions._Getstamp(DateTime.Now) > num)
                    {
                        base.Invoke(new MessageHelper.de_showInfo(null, (IntPtr) MessageHelper.showWarn), new object[] { this, string.Format("试用时间已满,请联系QQ{0}购买Vip权限。", Class34.string_4) });
                        base.Invoke(new Class33.Delegate22(Class33.smethod_0), new object[] { 1, this });
                    }
                    DateTime time = DateTime.Parse(Encryp.TripleDESCryptoDe(Class26.smethod_0("MyGod")));
                    if (Functions._Getstamp(DateTime.Now) > Functions._Getstamp(time.AddDays(4.0)))
                    {
                        base.Invoke(new MessageHelper.de_showInfo(null, (IntPtr) MessageHelper.showWarn), new object[] { this, string.Format("试用时间已满,请联系QQ{0}购买Vip权限。", Class34.string_4) });
                        base.Invoke(new Class33.Delegate22(Class33.smethod_0), new object[] { 1, this });
                    }
                }
            }
            catch (Exception)
            {
                Class26.smethod_1("MyGod", Encryp.TripleDESCrypto(DateTime.Now.ToString()));
            }
            if (Class30.serverCfgWS_0.get_LastestVer() != "5.1.140325")
            {
                this.barStaticItem_4.Glyph = Resources.info;
                this.barStaticItem_4.Caption = string.Format("检测到更新[{0}] {1}", Class30.serverCfgWS_0.get_LastestVer(), Class30.serverCfgWS_0.get_UpdateTime().ToShortDateString());
                this.barEditItem_0.Visibility = BarItemVisibility.Always;
                if (Class30.serverCfgWS_0.get_IsImportantUpdate() && !Functions.piv)
                {
                    if (MessageHelper.showConfirm(this, string.Format("检测到重要更新[{0}] {1}\n是否现在下载最新版?", Class30.serverCfgWS_0.get_LastestVer(), Class30.serverCfgWS_0.get_UpdateTime().ToShortDateString())))
                    {
                        Process.Start(Class30.string_5, Class30.serverCfgWS_0.get_DownUrl());
                    }
                    Environment.Exit(0);
                }
            }
            else
            {
                this.barStaticItem_4.Glyph = Resources.right;
                this.barStaticItem_4.Caption = string.Format("软件为最新版[{0}]{1} {2}", Class30.serverCfgWS_0.get_LastestVer(), "build0325", Class30.serverCfgWS_0.get_UpdateTime().ToShortDateString());
            }
            Class30.sortedDictionary_3 = new SortedDictionary<int, Taskbase>();
            ThreadPool.QueueUserWorkItem(new WaitCallback(fmWaitFormTask.Th_Func_LoadAllTasks));
            fmWaitFormTask.ShowDialog(this, "请稍后", "正在加载任务 ...");
            this.taskTreeList_0.FocusedNode = null;
            this.method_5();
            fmSecCheck._Start();
        }
        catch (Exception exception)
        {
            ExceptionLog._LogException(exception);
        }
    }




      private void MAIN_Shown(object sender, EventArgs e)
    {
        try
        {
            try
            {
                if (!Functions.piv)
                {
                    int num = this.method_3();
                    if (Functions._Getstamp(DateTime.Now) > num)
                    {
                        base.Invoke(new MessageHelper.de_showInfo(null, (IntPtr) MessageHelper.showWarn), new object[] { this, string.Format("试用时间已满,请联系QQ{0}购买Vip权限。", Class34.string_4) });
                        base.Invoke(new Class33.Delegate22(Class33.smethod_0), new object[] { 1, this });
                    }
                    DateTime time = DateTime.Parse(Encryp.TripleDESCryptoDe(Class26.smethod_0("MyGod")));
                    if (Functions._Getstamp(DateTime.Now) > Functions._Getstamp(time.AddDays(4.0)))
                    {
                        base.Invoke(new MessageHelper.de_showInfo(null, (IntPtr) MessageHelper.showWarn), new object[] { this, string.Format("试用时间已满,请联系QQ{0}购买Vip权限。", Class34.string_4) });
                        base.Invoke(new Class33.Delegate22(Class33.smethod_0), new object[] { 1, this });
                    }
                }
            }
            catch (Exception)
            {
                Class26.smethod_1("MyGod", Encryp.TripleDESCrypto(DateTime.Now.ToString()));
            }
            if (Class30.serverCfgWS_0.get_LastestVer() != "5.1.140325")
            {
                this.barStaticItem_4.Glyph = Resources.info;
                this.barStaticItem_4.Caption = string.Format("检测到更新[{0}] {1}", Class30.serverCfgWS_0.get_LastestVer(), Class30.serverCfgWS_0.get_UpdateTime().ToShortDateString());
                this.barEditItem_0.Visibility = BarItemVisibility.Always;
                if (Class30.serverCfgWS_0.get_IsImportantUpdate() && !Functions.piv)
                {
                    if (MessageHelper.showConfirm(this, string.Format("检测到重要更新[{0}] {1}\n是否现在下载最新版?", Class30.serverCfgWS_0.get_LastestVer(), Class30.serverCfgWS_0.get_UpdateTime().ToShortDateString())))
                    {
                        Process.Start(Class30.string_5, Class30.serverCfgWS_0.get_DownUrl());
                    }
                    Environment.Exit(0);
                }
            }
            else
            {
                this.barStaticItem_4.Glyph = Resources.right;
                this.barStaticItem_4.Caption = string.Format("软件为最新版[{0}]{1} {2}", Class30.serverCfgWS_0.get_LastestVer(), "build0325", Class30.serverCfgWS_0.get_UpdateTime().ToShortDateString());
            }
            Class30.sortedDictionary_3 = new SortedDictionary<int, Taskbase>();
            ThreadPool.QueueUserWorkItem(new WaitCallback(fmWaitFormTask.Th_Func_LoadAllTasks));
            fmWaitFormTask.ShowDialog(this, "请稍后", "正在加载任务 ...");
            this.taskTreeList_0.FocusedNode = null;
            this.method_5();
            fmSecCheck._Start();
        }
        catch (Exception exception)
        {
            ExceptionLog._LogException(exception);
        }
    }


    这里是试用时间限制,每次15分钟,请高手指点,这里怎么改。


    private void method_7()
    {
        if (base.InvokeRequired)
        {
            base.BeginInvoke(new MessageHelper.de_showWarn(null, (IntPtr) MessageHelper.showWarn), new object[] { this, string.Format("非V*i*p用*户限*制每*个论*坛顶*贴数为{0}。\r\n需*要购*买V*i*p联*系Q*Q:3*17*5*850*7*1", Class30.serverCfgWS_0.get_LimitReplyMaxPerFm()).Replace("*", ""), "权限不足" });
        }
        else
        {
            MessageHelper.showWarn(this, string.Format("非V*i*p用*户限*制每*个论*坛顶*贴数为{0}。\r\n需*要购*买V*i*p联*系Q*Q:3*17*5*850*7*1", Class30.serverCfgWS_0.get_LimitReplyMaxPerFm()).Replace("*", ""), "权限不足");
        }
    }




      private void method_7()
    {
        if (base.InvokeRequired)
        {
            base.BeginInvoke(new MessageHelper.de_showWarn(null, (IntPtr) MessageHelper.showWarn), new object[] { this, string.Format("非V*i*p用*户限*制每*个论*坛顶*贴数为{0}。\r\n需*要购*买V*i*p联*系Q*Q:3*17*5*850*7*1", Class30.serverCfgWS_0.get_LimitReplyMaxPerFm()).Replace("*", ""), "权限不足" });
        }
        else
        {
            MessageHelper.showWarn(this, string.Format("非V*i*p用*户限*制每*个论*坛顶*贴数为{0}。\r\n需*要购*买V*i*p联*系Q*Q:3*17*5*850*7*1", Class30.serverCfgWS_0.get_LimitReplyMaxPerFm()).Replace("*", ""), "权限不足");
        }
    }


    这里是顶贴限制,只能发10个
    请高手指点下,怎么修改,谢谢


    软件在这里下载:

    http://pan.baidu.com/s/1dDH1Csx
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2019-6-6 20:26
  • 签到天数: 20 天

    [LV.4]偶尔看看III

    发表于 2014-6-12 13:58:21 | 显示全部楼层
    看着好乱,下载一个看看吧
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2019-6-6 20:26
  • 签到天数: 20 天

    [LV.4]偶尔看看III

    发表于 2014-6-12 14:05:05 | 显示全部楼层
    if (Functions._Getstamp(DateTime.Now) > num)
                    {
                        base.Invoke(new MessageHelper.de_showInfo(null, (IntPtr) MessageHelper.showWarn), new object[] { this, string.Format("试用时间已满,请联系QQ{0}购买Vip权限。", Class34.string_4) });
                        base.Invoke(new Class33.Delegate22(Class33.smethod_0), new object[] { 1, this });
                    }
                    DateTime time = DateTime.Parse(Encryp.TripleDESCryptoDe(Class26.smethod_0("MyGod")));
                    if (Functions._Getstamp(DateTime.Now) > Functions._Getstamp(time.AddDays(4.0)))
                    {
                        base.Invoke(new MessageHelper.de_showInfo(null, (IntPtr) MessageHelper.showWarn), new object[] { this, string.Format("试用时间已满,请联系QQ{0}购买Vip权限。", Class34.string_4) });
                        base.Invoke(new Class33.Delegate22(Class33.smethod_0), new object[] { 1, this });
                    }


    这个方法整个删除试试,如果报错的话

    把这个重新赋值一个最大时间值试试 DateTime time = DateTime.Parse(Encryp.TripleDESCryptoDe(Class26.smethod_0("MyGod")));

    软件测试起来不方便啊。。。。。要不多改几次试试就应该行了
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2024-3-21 10:42
  • 签到天数: 12 天

    [LV.3]偶尔看看II

     楼主| 发表于 2014-6-12 21:47:13 | 显示全部楼层
    删除代码后,虽然程序不会出错,但仍然不能运行,没有反应。
    DateTime time 又如何修改呢?
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2024-3-21 10:42
  • 签到天数: 12 天

    [LV.3]偶尔看看II

     楼主| 发表于 2014-6-12 22:08:39 | 显示全部楼层
    发现两个函数都会出错:
    method_13,method_7
    在reflector里,怎么查看是哪里调用了这两个函数?
    method_13代码如下:
    private void method_13()
    {
        if (base.InvokeRequired)
        {
            base.BeginInvoke(new MessageHelper.de_showWarn(null, (IntPtr) MessageHelper.showWarn), new object[] { this, string.Format("非V*i*p用*户限*制每*个论*坛顶*贴数为{0}。\r\n需*要购*买V*i*p联*系Q*Q:3*17*5*850*7*1", Class30.serverCfgWS_0.get_LimitReplyMaxPerFm()).Replace("*", ""), "权限不足" });
        }
        else
        {
            MessageHelper.showWarn(this, string.Format("非V*i*p用*户限*制每*个论*坛顶*贴数为{0}。\r\n需*要购*买V*i*p联*系Q*Q:3*17*5*850*7*1", Class30.serverCfgWS_0.get_LimitReplyMaxPerFm()).Replace("*", ""), "权限不足");
        }
    }




      private void method_13()
    {
        if (base.InvokeRequired)
        {
            base.BeginInvoke(new MessageHelper.de_showWarn(null, (IntPtr) MessageHelper.showWarn), new object[] { this, string.Format("非V*i*p用*户限*制每*个论*坛顶*贴数为{0}。\r\n需*要购*买V*i*p联*系Q*Q:3*17*5*850*7*1", Class30.serverCfgWS_0.get_LimitReplyMaxPerFm()).Replace("*", ""), "权限不足" });
        }
        else
        {
            MessageHelper.showWarn(this, string.Format("非V*i*p用*户限*制每*个论*坛顶*贴数为{0}。\r\n需*要购*买V*i*p联*系Q*Q:3*17*5*850*7*1", Class30.serverCfgWS_0.get_LimitReplyMaxPerFm()).Replace("*", ""), "权限不足");
        }
    }




    method_7代码如下:
    private void method_7()
    {
        if (base.InvokeRequired)
        {
            base.BeginInvoke(new MessageHelper.de_showWarn(null, (IntPtr) MessageHelper.showWarn), new object[] { this, string.Format("非V*i*p用*户限*制每*个论*坛顶*贴数为{0}。\r\n需*要购*买V*i*p联*系Q*Q:3*17*5*850*7*1", Class30.serverCfgWS_0.get_LimitReplyMaxPerFm()).Replace("*", ""), "权限不足" });
        }
        else
        {
            MessageHelper.showWarn(this, string.Format("非V*i*p用*户限*制每*个论*坛顶*贴数为{0}。\r\n需*要购*买V*i*p联*系Q*Q:3*17*5*850*7*1", Class30.serverCfgWS_0.get_LimitReplyMaxPerFm()).Replace("*", ""), "权限不足");
        }
    }




      private void method_7()
    {
        if (base.InvokeRequired)
        {
            base.BeginInvoke(new MessageHelper.de_showWarn(null, (IntPtr) MessageHelper.showWarn), new object[] { this, string.Format("非V*i*p用*户限*制每*个论*坛顶*贴数为{0}。\r\n需*要购*买V*i*p联*系Q*Q:3*17*5*850*7*1", Class30.serverCfgWS_0.get_LimitReplyMaxPerFm()).Replace("*", ""), "权限不足" });
        }
        else
        {
            MessageHelper.showWarn(this, string.Format("非V*i*p用*户限*制每*个论*坛顶*贴数为{0}。\r\n需*要购*买V*i*p联*系Q*Q:3*17*5*850*7*1", Class30.serverCfgWS_0.get_LimitReplyMaxPerFm()).Replace("*", ""), "权限不足");
        }
    }
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

    快速回复 返回顶部 返回列表