冷雪 发表于 2024-4-9 10:41

上一主题 下一主题 收起左侧 [.NET逆向]下面代码是追码还是爆破,请大...

namespace Dentist.xFrm
{
        // Token: 0x020002A6 RID: 678
        public partial class xFrmActivation : FmBaseNoBar
        {
                // Token: 0x06001E12 RID: 7698 RVA: 0x00330CD8 File Offset: 0x0032EED8
                private void simpleButton1_Click(object sender, EventArgs e)
                {
                        string text = this.textEdit1.Text.Replace(" ", "");
                        if (string.IsNullOrEmpty(text))
                        {
                                base.MessCT("请填写激活码!");
                                if (this.textEdit1.CanFocus)
                                {
                                        this.textEdit1.Focus();
                                        return;
                                }
                        }
                        else if (text.Length != 28)
                        {
                                base.MessCT("请填写正确的激活码!");
                                if (this.textEdit1.CanFocus)
                                {
                                        this.textEdit1.Focus();
                                        return;
                                }
                        }
                        else
                        {
                                try
                                {
                                        DataRow dataRowBySQL = NetCenter.GetDataRowBySQL("select * from clincreg");
                                        string text2 = CommHelper.Obj2Str(dataRowBySQL["datacliphone"]);
                                        string text3 = CommHelper.Obj2Str(dataRowBySQL["dataclicomid"]);
                                        if (string.IsNullOrEmpty(text2))
                                        {
                                                base.MessCT("您还没有正确填写注册信息!");
                                        }
                                        else if (string.IsNullOrEmpty(text3) || text3.Length < 4)
                                        {
                                                base.MessCT("您还没有正确配置扩展接口,请检查!");
                                        }
                                        else
                                        {
                                                string text4 = text;
                                                int num = 0;
                                                char c = text4;
                                                if (c != 'I')
                                                {
                                                        if (c != 'O')
                                                        {
                                                                if (c == 'l')
                                                                {
                                                                        num = CommHelper.Object2Var<int>(text4.ToString()) * 10;
                                                                }
                                                        }
                                                        else
                                                        {
                                                                num = CommHelper.Object2Var<int>(text4) - 65;
                                                        }
                                                }
                                                else
                                                {
                                                        num = -1;
                                                }
                                                text = text.Substring(4, text.Length - 4);
                                                StringBuilder stringBuilder = new StringBuilder();
                                                StringBuilder stringBuilder2 = new StringBuilder();
                                                stringBuilder.Append(text.Substring(0, 2));
                                                stringBuilder.Append(text.Substring(16, 2));
                                                stringBuilder2.Append(text.Substring(2, 2));
                                                stringBuilder2.Append(text.Substring(18, 2));
                                                if (!text2.Substring(text2.Length - 4, 4).Equals(new string(stringBuilder.ToString().ToArray<char>().Reverse<char>()
                                                        .ToArray<char>())))
                                                {
                                                        base.MessCT("激活码与您注册的手机号不一致,请检查!");
                                                }
                                                else if (!text3.Substring(text3.Length - 4).Equals(new string(stringBuilder2.ToString().ToArray<char>().Reverse<char>()
                                                        .ToArray<char>())))
                                                {
                                                        base.MessCT("激活码与您客户扩展编码不一致,请检查!");
                                                }
                                                else
                                                {
                                                        int num2 = CommHelper.Object2Var<int>(text.Substring(22, 2));
                                                        int num3 = CommHelper.Object2Var<int>(text.Substring(20, 2) + this.GetCharFromAssic(num2));
                                                        StringBuilder stringBuilder3 = new StringBuilder();
                                                        stringBuilder3.Append(this.GetCharFromAssic(CommHelper.Object2Var<int>(text.Substring(8, 2))));
                                                        stringBuilder3.Append(this.GetCharFromAssic(CommHelper.Object2Var<int>(text.Substring(10, 2))));
                                                        stringBuilder3.Append(this.GetCharFromAssic(CommHelper.Object2Var<int>(text.Substring(4, 2))));
                                                        stringBuilder3.Append(this.GetCharFromAssic(CommHelper.Object2Var<int>(text.Substring(6, 2))));
                                                        stringBuilder3.Append(this.GetCharFromAssic(CommHelper.Object2Var<int>(text.Substring(14, 2))));
                                                        stringBuilder3.Append(this.GetCharFromAssic(CommHelper.Object2Var<int>(text.Substring(12, 2))));
                                                        int num4 = CommHelper.Object2Var<int>(stringBuilder3.ToString().Substring(0, 2)) + CommHelper.Object2Var<int>(stringBuilder3.ToString().Substring(2, 2)) + CommHelper.Object2Var<int>(stringBuilder3.ToString().Substring(4, 2));
                                                        if (num3 != num4)
                                                        {
                                                                base.MessCT("激活码不正确!");
                                                        }
                                                        else
                                                        {
                                                                DateTime dateTime = new DateTime(2000 + CommHelper.Object2Var<int>(stringBuilder3.ToString().Substring(0, 2)), CommHelper.Object2Var<int>(stringBuilder3.ToString().Substring(2, 2)), CommHelper.Object2Var<int>(stringBuilder3.ToString().Substring(4, 2)));
                                                                NetCenter.ExecuteSQL(string.Format("update m_arg set xmarg3 = '{0}',xmargT = '{1}',xmargn1 = {2} where xmid = '3' and mzid = 1", text, dateTime.Date, num), true);
                                                                Global.UpdateRegExpDate(dateTime.Date.ToString("yyyyMMdd"));
                                                                Global.dogVersion = Global.DogVersions.Activation;
                                                                Global.dogValidity = dateTime;
                                                                base.MessCT("激活成功!软件将于" + dateTime.ToString("yyyy-MM-dd") + "过期。");
                                                                base.Close();
                                                        }
                                                }
                                        }
                                }
                                catch (Exception ex)
                                {
                                        base.MessCT(ex.ToString());
                                }
                        }
                }
        }
}


学编程的闹钟 发表于 2024-4-9 15:03

.net的不好破呀

byh3025 发表于 2024-4-9 16:28

在这里一步步的运行,看看能不能看到明码,如不能就爆破

冷雪 发表于 2024-4-9 17:11

byh3025 发表于 2024-4-9 16:28
在这里一步步的运行,看看能不能看到明码,如不能就爆破

看不到明码,也不知道如何爆破,大神能不能告知一下?

热咖啡 发表于 2024-4-9 17:12

都 这么明显了,当然是写注册机了。。{:6_201:}

来个链接下载一起瞅瞅。

冷雪 发表于 2024-4-9 17:18

热咖啡 发表于 2024-4-9 17:12
都 这么明显了,当然是写注册机了。。

来个链接下载一起瞅瞅。

我可以私发你

热咖啡 发表于 2024-4-9 17:25

冷雪 发表于 2024-4-9 17:18
我可以私发你


好啊,来个私信。。{:6_222:}

冷雪 发表于 2024-4-9 17:33

热咖啡 发表于 2024-4-9 17:25
好啊,来个私信。。

在这么论坛怎么发私信,没发过,还是你告诉我邮箱之类的?

热咖啡 发表于 2024-4-9 17:34

本帖最后由 热咖啡 于 2024-4-9 17:39 编辑

冷雪 发表于 2024-4-9 17:33
在这么论坛怎么发私信,没发过,还是你告诉我邮箱之类的?
权限不够,都 发不了论坛消息,留个人信息怕违规吧。还是发个123盘的链接上来吧,我马上 转存一下。

冷雪 发表于 2024-4-9 17:37

C:\Documents and Settings\Administrator\桌面\33.png
页: [1] 2
查看完整版本: 上一主题 下一主题 收起左侧 [.NET逆向]下面代码是追码还是爆破,请大...