吾爱汇编

 找回密码
 立即注册

QQ登录

绑定QQ避免忘记帐号

查看: 4444|回复: 95

[原创逆向图文] 制作IDBE RibbonCreator 2019 x64和谐中文版

  [复制链接]
zyyujq 发表于 2022-4-12 00:58 | 显示全部楼层 |阅读模式

运行环境: WINDOWS X64
涉及工具:de4dot、DnSpy
教程类型:逆向限制,算法分析等
是否讲解思路和原理:

以下为图文内容:

一、Ribbon Creator是所见所得的 Office 功能区编辑器工具
      RibbonCreator是用于开发功能区的WYSIWYG接口。RibbonCreator是在VB2005中开发的,需要.NET Framework 2.0版 .
      对于Microsoft Access 2007、Microsoft Excel 2007、Microsoft Word 2007
      RibbonCreator 2010 对于 Microsoft Access 2010、Excel 2010、PowerPoint 2010、Word 2010
      RibbonCreator 2016 对于 Microsoft Access 2013 & 2016、Microsoft Excel 2013 & 2016、Microsoft Word 2013 & 2016、Microsoft PowerPoint 2013 & 2016
      RibbonCreator 2019 对于 Microsoft Access 2019、Excel 2019、PowerPoint 2019、Word 2019
      它支持为以下控件创建自定义功能区:
             标签,组,对话框启动器,标签,按钮(大或小),切换按钮(大或小),编辑框,复选框,下拉控件,组合框控件,按钮组按钮和切换按钮,拆分按钮(大或小),
             画廊(大或小),菜单(大或小),动态菜单(大或小)和分隔符(在带有文本的菜单中)
      您可以使用适当的对话框(Office IdMso内部图像)为控件选择图像。此外,还可以选择功能区控件的用户定义图像并将其写入Access数据库中的表中。
      您可以为支持此功能的控件创建屏幕提示、超级提示和按键提示。

      共享版本限制了Office自定义 2个 TAB菜单、5个组合框、10个控件。

一、和谐 Ribbon Creator2019_x64_V1.1003
    1、先安装Setup IDBE Ribbon Creator2019_x64_V1.1003,主程序为Ribbon2019.exe
    1、再用de4dot脱壳,获得Ribbon2019-cleaned.exe
    2、dnSpy打开已经脱壳的Ribbon2019-cleaned.exe程序,按数字/字符串搜索 SHAREWARE 后,在其中查找 2、5、10关键字,匹配特征

例如:在 AddMRU 过程中有下面代码,修改  Not Class21.smethod_20(True) 为 Class21.smethod_20(True),进入该类,编辑IL代码
            If Not Class21.smethod_20(True) Then
                Me.Text = strCaption + " - SHAREWARE - " + strNewFile
                Return
            End If
            Me.Text = strCaption + " - " + strNewFile
在 CheckControls 函数中: Class10.bool_19 应为 True 才不是共享软件的限制。 False为限制。查找该布尔开关的过程,和谐此过程。
Public Function CheckControls() As Boolean
            Dim result As Boolean
            If Class10.bool_19 Then
                result = True
            Else
                Dim strErrorControl1a As String = Class7.strErrorControl1a
                Dim strErrorControl2a As String = Class7.strErrorControl2a
                If Class10.int_5 <= 9 Then
                    result = True
                Else
                    Interaction.MsgBox("SHAREWARE: " + strErrorControl1a + " 10 " + strErrorControl2a, MsgBoxStyle.Information, Class10.string_20)
                    result = False
                End If
            End If
            Return result
        End Function

通过Form1.AddMRU 、Form1.CheckControls、Form1.iuAjgosejh、Form1.method_18、frmOptions.method_3、Form1.method_3、Form1.method_342、Form1.method_5 过程代码分析
Class21.smethod_20(True)和Class10.bool_19的布尔值为 True 就解除了共享软件的限制。

dnSpy导出源代码,所有文件搜索 bool_19,还有Form1.StartForm、Form1.method_87、frmOptions.CheckLic中有此字符(dnSpy不支持搜索变量名称)
        Public Sub CheckLic()   '证书验证注册过程
            Dim flag As Boolean = False
            Dim flag2 As Boolean = True
            Dim text As String = Application.StartupPath
            If Not text.EndsWith("\") Then
                text += "\"
            End If
            Me.lblWarning.Visible = False
            If Operators.CompareString(Me.txtLicence.Text, "", False) <> 0 Then
                Try
                    Me.lblWarning.Visible = False
                    Dim text2 As String = Class16.smethod_1(Me.txtLicence.Text)
                    If Strings.InStr(text2, "joshtewalt@msn.com", CompareMethod.Binary) > 0 Then
                        flag = False
                    ElseIf Strings.InStr(text2, "ednardo.mail@gmail.com", CompareMethod.Binary) > 0 Then
                        flag = False
                    Else
                        Dim value As String = Strings.Left(text2, 1)
                        Dim num As Integer
                        Try
                            num = Conversions.ToInteger(value)
                        Catch ex As Exception
                            flag = False
                            GoTo IL_17C
                        End Try
                        Dim num2 As Integer = Conversions.ToInteger(Class10.string_23)
                        If Operators.CompareString(FileSystem.Dir(text + Class10.string_19, FileAttribute.Normal), "", False) = 0 Then
                            Using frmLicFehlt As frmLicFehlt = New frmLicFehlt()
                                frmLicFehlt.ShowDialog(Me)
                            End Using
                            flag2 = False
                            flag = False
                        ElseIf num >= num2 Then
                            flag = True
                            If Strings.InStr(text2, "HeLL 2008", CompareMethod.Binary) = 0 And Strings.InStr(text2, "=", CompareMethod.Binary) = 0 Then
                                flag = True
                                If Class10.bool_18 Then
                                    flag = (Operators.CompareString(FileSystem.Dir(text + Class10.string_19, FileAttribute.Normal), "", False) <> 0 AndAlso Class21.smethod_58(text + Class10.string_19))
                                End If
                            Else
                                flag = False
                            End If
                        Else
                            flag = False
                        End If
                    End If
                    IL_17C:
                    If flag Then
                        Class16.smethod_4(Me.txtLicence.Text)
                        Dim text3 As String = Strings.Mid(text2, 3)
                        Me.txtLicenceName.Text = text3
                        Me.txtLicenceName.Visible = True
                        Me.lblAddLicence.Visible = False
                        Me.txtLicence.Visible = False
                        Me.btnAddLicence.Visible = False
                        Me.btnBuy.Visible = False
                        Me.btnSelectFiles.Visible = False
                        Class10.bool_19 = True
                    Else
                        Class10.bool_19 = False
                    End If
                    GoTo IL_230
                Catch ex2 As Exception
                    Class10.bool_19 = False
                    GoTo IL_230
                End Try
            End If
            If flag2 Then
                Me.lblWarning.Visible = True     '修改为False,不显示警告,即为注册
            End If
            Me.txtLicence.Text = ""
            IL_230:
            If Operators.CompareString(Me.txtLicenceName.Text, Me.string_0, False) = 0 Then
                If flag2 Then
                    Me.lblWarning.Visible = True     '修改为False,不显示警告,即为注册
                End If
                Me.txtLicence.Text = ""
                Class10.bool_19 = False     '修改为True,即为注册
            End If
        End Sub


Public Function smethod_20(Optional bool_0 As Boolean = False) As Boolean
    Dim text As String = Application.StartupPath
    If Not text.EndsWith("\") Then
        text += "\"
    End If
    Dim text2 As String = Class16.smethod_2()
    If Operators.CompareString(text2, "", False) <> 0 Then
        text2 = Class16.smethod_1(text2)
    Else
        text2 = ""
    End If
    Dim result As Boolean
    If Strings.InStr(text2, "joshtewalt@msn.com", CompareMethod.Binary) > 0 Then
        result = True
    ElseIf Strings.InStr(text2, "kondorosy.csanad@gmail.com", CompareMethod.Binary) > 0 Then
        result = True
    ElseIf Strings.InStr(text2, "dimitriska@gmail.com", CompareMethod.Binary) > 0 Then
        result = True
    ElseIf Strings.InStr(text2, "ednardo.mail@gmail.com", CompareMethod.Binary) > 0 Then
        result = True
    ElseIf Operators.CompareString(text2, "", False) <> 0 Then
        Dim value As String = Strings.Left(text2, 1)
        Dim num As Integer
        Try
            ' The following expression was wrapped in a checked-expression
            num = CInt(Conversions.ToLong(value))
            If Operators.CompareString(FileSystem.Dir(text + Class10.string_19, FileAttribute.Normal), "", False) = 0 Then
                If Not bool_0 Then
                    Using frmLicFehlt As frmLicFehlt = New frmLicFehlt()
                        frmLicFehlt.ShowDialog()
                    End Using
                End If
                Return False
            End If
        Catch ex As Exception
            Return False
        End Try
        Dim num2 As Integer = Conversions.ToInteger(Class10.string_23)
        If num >= num2 Then
            result = True
            result = (Strings.InStr(text2, "HeLL 2008", CompareMethod.Binary) = 0 And Strings.InStr(text2, "=", CompareMethod.Binary) = 0)
            If Class10.bool_18 Then
                result = (Operators.CompareString(FileSystem.Dir(text + Class10.string_19, FileAttribute.Normal), "", False) <> 0 AndAlso Class21.smethod_58(text + Class10.string_19))
            End If
        Else
            result = False
        End If
    Else
        result = False     '修改为True,即为注册
    End If
    Return result
End Function

在 frmOptions.method_3中   改:text = "这是完整注册版:洞庭鱼",注册成功后显示注册。

以上代码修改,在DnSpy中右键编辑IL指令
现在已经完美和谐了。
然后汉化。


下载地址:
链接:https://pan.baidu.com/s/1vwWDiV8m7FLbCFFe0nTNUQ
提取码:yujq



fakename.png

fakename.png


评分

参与人数 22HB +13 THX +12 收起 理由
消逝的过去 + 1
Jawon + 1
一路走来不容易 + 1
Cerolluo + 1 [吾爱汇编论坛52HB.COM]-吃水不忘打井人,给个评分懂感恩!
459121520 + 1
后学真 + 1
飞刀梦想 + 1
l278785481 + 1
风里去 + 1 [吾爱汇编论坛52HB.COM]-软件反汇编逆向分析,软件安全必不可少!
xgbnapsua + 2
liugu0hai + 1 + 1 [吾爱汇编论坛52HB.COM]-软件反汇编逆向分析,软件安全必不可少!
别来无恙 + 1
taykey + 1 [吾爱汇编论坛52HB.COM]-吃水不忘打井人,给个评分懂感恩!
zxjzzh + 1 [吾爱汇编论坛52HB.COM]-学破解防破解,知进攻懂防守!
longge188 + 1 [吾爱汇编论坛52HB.COM]-学破解防破解,知进攻懂防守!
玖霊後 + 1 + 1 [吾爱汇编论坛52HB.COM]-吃水不忘打井人,给个评分懂感恩!
DeeDarrick + 1
baobeitom + 1 [吾爱汇编论坛52HB.COM]-感谢楼主热心分享,小小评分不成敬意!
三月十六 + 1
temp + 1
我是好人 + 1 [吾爱汇编论坛52HB.COM]-学破解防破解,知进攻懂防守!
weiran324 + 1 [吾爱汇编论坛52HB.COM]-吃水不忘打井人,给个评分懂感恩!

查看全部评分

吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
pjkxPYsh 发表于 2022-4-12 00:58 | 显示全部楼层
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
IKfTXCG95807 发表于 2022-4-12 00:59 | 显示全部楼层

我觉得楼主这帖很强!
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
kZNywIf83 发表于 2022-4-12 15:59 | 显示全部楼层
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
Naxsh 发表于 2022-4-12 16:17 | 显示全部楼层

威武霸气!
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
pUcvSEeV58 发表于 2022-4-12 16:17 | 显示全部楼层
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
hldcY791 发表于 2022-4-12 16:17 | 显示全部楼层

谢谢分享
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
tkmOD6 发表于 2022-4-12 16:17 | 显示全部楼层

回复看看
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
oIUCxRZ85960 发表于 2022-4-12 16:23 | 显示全部楼层

谢谢分享
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
ImnxBAtW 发表于 2022-4-12 16:32 | 显示全部楼层

感谢楼主
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

警告:本站严惩灌水回复,尊重自己从尊重他人开始!

1层
2层
3层
4层
5层
6层
7层
8层
9层
10层

免责声明

吾爱汇编(www.52hb.com)所讨论的技术及相关工具仅限用于研究学习,皆在提高软件产品的安全性,严禁用于不良动机。任何个人、团体、组织不得将其用于非法目的,否则,一切后果自行承担。吾爱汇编不承担任何因为技术滥用所产生的连带责任。吾爱汇编内容源于网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除。如有侵权请邮件或微信与我们联系处理。

站长邮箱:SharkHeng@sina.com
站长QQ:1140549900


QQ|RSS|手机版|小黑屋|帮助|吾爱汇编 ( 京公网安备11011502005403号 , 京ICP备20003498号-6 )|网站地图

Powered by Discuz!

吾爱汇编 www.52hb.com

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