• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            AtomineerUtils爆破過(guò)程記錄

            AtomineerUtils爆破過(guò)程記錄

            AtomineerUtils是國(guó)外的一款用于生成源代碼注釋的一款VS插件,官方網(wǎng)站:http://www.atomineerutils.com/products.php

            通過(guò)鏈接,可以看出這款插件的功能十分強(qiáng)大,不像GhostDoc那樣,只支持C#,這款插件,支持C、C++、C++/CLI、C#、Java語(yǔ)言等,由此可以看出其強(qiáng)大,注釋的風(fēng)格可以靈活配置。

            雖然他功能十分強(qiáng)大,但是由于是收費(fèi)的軟件,所以當(dāng)使用超過(guò)30天后,就無(wú)法再繼續(xù)適用了。雖然價(jià)格不貴,只有40美刀,但是由于時(shí)間緊急,必須立刻使用他的功能,所以沒有時(shí)間去購(gòu)買license。

            那么能不能試著破解他呢,或者繼續(xù)使用。說(shuō)到破解,我的水平也就只能研究一下未混淆的.Net程序,如果這個(gè)插件是用C++寫的話,那么不好意思,破不了。

            用Reflector試著打開,發(fā)現(xiàn)能識(shí)別,如下:

            Atomineer版本

            同時(shí)也可以看到這個(gè)版本號(hào)是:8.16.5174.40541。這是最新版本了。

            既然是.Net的DLL,那么相對(duì)來(lái)說(shuō)就好說(shuō)了,至少和C++相比來(lái)說(shuō),有希望了。

            既然是VS的插件,那么肯定要遵守VS的插件接口規(guī)范。(VS的插件接口不在本篇中介紹)

            首先找到它的OnConnect方法:

            OnConnect方法

            然后從OnConnect方法入手進(jìn)行研究,最終定位到這里:

            Collapse

            復(fù)制代碼

            internal static bool b(bool A_0, bool A_1 = false)
            {
                bool flag = true;
                int num = (((DateTime.Today.Year - 2010) * 365) + DateTime.Today.DayOfYear) << 8;
                int num2 = 0;
                try
                {
                    num2 = Convert.ToInt32(c(f, "0", string.Empty));
                }
                catch
                {
                }
                int num3 = (num - num2) >> 8;
                if (num3 > 19)
                {
                    if (e[0][0] == 'I')
                    {
                        for (int i = 0; i < e.Length; i++)
                        {
                            StringBuilder builder = new StringBuilder();
                            for (int j = 0; j < e[i].Length; j++)
                            {
                                builder.Append((char) (e[i][j] ^ (16 | (j % 16))));
                            }
                            e[i] = builder.ToString();
                        }
                    }
                    if (num3 > 29)
                    {
                        flag = false;
                        Commands.f();
                        if ((num3 == g) || A_1)
                        {
                            return false;
                        }
                        MessageBox.Show(e[0] + Environment.NewLine + Environment.NewLine + e[1] + Environment.NewLine + Environment.NewLine + e[2], "Atomineer Pro Documentation", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    }
                    else
                    {
                        if ((num3 == g) || !A_0)
                        {
                            return true;
                        }
                        string[] strArray2 = new string[] { e[3], (30 - num3).ToString(), e[4], Environment.NewLine, Environment.NewLine, e[5] };
                        if (MessageBox.Show(string.Concat(strArray2), "Atomineer Pro Documentation", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation) != DialogResult.Yes)
                        {
                            return true;
                        }
                    }
                    k.h("t~e}xzws");
                    g = num3;
                }
                return flag;
            }

            復(fù)制代碼

            根據(jù)上面的邏輯,只要不執(zhí)行 num3 > 29的邏輯,并且返回值為true即可,可以做如下修改:

            Collapse

            bool flag = true;
            ...
            int num3 = (num2 - num2) >> 8;

            這樣,num3等于0,而且返回值為true。

            那么如何修改這些代碼呢,基于Reflector的Reflexil插件,來(lái)修改IL代碼,然后另存為dll文件即可。

            如下,是修改后的截圖:

            Atomineer破解后

            這樣,整個(gè)插件就算是被破解了,可以無(wú)限期使用了。

            posted on 2017-02-22 12:39 FongLuo 閱讀(535) 評(píng)論(0)  編輯 收藏 引用


            只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


            <2017年2月>
            2930311234
            567891011
            12131415161718
            19202122232425
            2627281234
            567891011

            導(dǎo)航

            常用鏈接

            留言簿

            隨筆分類(11)

            隨筆檔案(79)

            文章檔案(1)

            收藏夾(38)

            學(xué)習(xí)網(wǎng)站

            一般網(wǎng)站

            最新隨筆

            搜索

            積分與排名

            最新評(píng)論

            閱讀排行榜

            99久久国产亚洲高清观看2024 | 久久精品人人做人人爽电影| 久久丫精品国产亚洲av不卡 | 国产精品内射久久久久欢欢| 久久天天躁狠狠躁夜夜不卡| 久久毛片一区二区| 国产精品99精品久久免费| 国产精品综合久久第一页 | 国产V综合V亚洲欧美久久| 国产精品99久久久久久猫咪| 少妇人妻综合久久中文字幕| 久久成人精品视频| 综合久久国产九一剧情麻豆| 精品久久久久一区二区三区| 亚洲中文字幕无码久久2017| 久久精品女人天堂AV麻| AAA级久久久精品无码片| 尹人香蕉久久99天天拍| 国产视频久久| 久久r热这里有精品视频| 亚洲精品无码久久久久久| 久久精品中文字幕第23页| 久久er99热精品一区二区| 久久成人国产精品免费软件| 人妻少妇精品久久| 久久国产成人精品国产成人亚洲| 久久久噜噜噜久久中文福利| 18岁日韩内射颜射午夜久久成人| 理论片午午伦夜理片久久 | 久久久久久久91精品免费观看| 精品熟女少妇av免费久久| 热re99久久精品国99热| 久久久噜噜噜久久中文福利| 久久人人爽人人爽人人片av高请| 亚洲中文字幕无码久久2020| 亚洲中文字幕无码一久久区| 亚洲精品无码久久久影院相关影片| 亚洲愉拍99热成人精品热久久| 亚洲va国产va天堂va久久| 久久精品一本到99热免费| 大伊人青草狠狠久久|