首页
社区
课程
招聘
[旧帖] [求助]功能限制的激活 0.00雪花
发表于: 2007-11-6 22:09 3716

[旧帖] [求助]功能限制的激活 0.00雪花

2007-11-6 22:09
3716
   手头上有一软件,保存功能补变灰了,通过改了一个代码后,菜单灰色解除,但用鼠标点击保存功能,却没有反应,不知如何解决,请各位高手帮忙,谢谢!
   附上功能限制几段代码:

 0046D6C0  /$  53            PUSH EBX
0046D6C1  |.  56            PUSH ESI
0046D6C2  |.  57            PUSH EDI
0046D6C3  |.  8BDA          MOV EBX,EDX
0046D6C5  |.  8BF0          MOV ESI,EAX
0046D6C7  |.  3A5E 2D       CMP BL,BYTE PTR DS:[ESI+2D]  --->改成 cmp bl,0 后灰色解除
0046D6CA  |.  74 67         JE SHORT JactekDS.0046D733
0046D6CC  |.  885E 2D       MOV BYTE PTR DS:[ESI+2D],BL
0046D6CF  |.  A1 28145100   MOV EAX,DWORD PTR DS:[511428]
0046D6D4  |.  8338 02       CMP DWORD PTR DS:[EAX],2
0046D6D7  |.  75 0B         JNZ SHORT JactekDS.0046D6E4
0046D6D9  |.  8BC6          MOV EAX,ESI
0046D6DB  |.  E8 B4000000   CALL JactekDS.0046D794
0046D6E0  |.  85C0          TEST EAX,EAX
0046D6E2  |.  75 0D         JNZ SHORT JactekDS.0046D6F1
0046D6E4  |>  8B7E 58       MOV EDI,DWORD PTR DS:[ESI+58]
0046D6E7  |.  85FF          TEST EDI,EDI
0046D6E9  |.  74 11         JE SHORT JactekDS.0046D6FC
0046D6EB  |.  837F 60 00    CMP DWORD PTR DS:[EDI+60],0
0046D6EF  |.  74 0B         JE SHORT JactekDS.0046D6FC
0046D6F1  |>  B2 01         MOV DL,1
0046D6F3  |.  8BC6          MOV EAX,ESI
0046D6F5  |.  8B08          MOV ECX,DWORD PTR DS:[EAX]
0046D6F7  |.  FF51 38       CALL DWORD PTR DS:[ECX+38]
0046D6FA  |.  EB 37         JMP SHORT JactekDS.0046D733
0046D6FC  |>  8B7E 58       MOV EDI,DWORD PTR DS:[ESI+58]
0046D6FF  |.  85FF          TEST EDI,EDI
0046D701  |.  74 27         JE SHORT JactekDS.0046D72A
0046D703  |.  F646 20 02    TEST BYTE PTR DS:[ESI+20],2
0046D707  |.  75 21         JNZ SHORT JactekDS.0046D72A
0046D709  |.  33C0          XOR EAX,EAX
0046D70B  |.  8AC3          MOV AL,BL
0046D70D  |.  8B0485 087350>MOV EAX,DWORD PTR DS:[EAX*4+507308]
0046D714      83C8 00       OR EAX,0
0046D717      50            PUSH EAX
0046D718      0FB746 44     MOVZX EAX,WORD PTR DS:[ESI+44]
0046D71C  |.  50            PUSH EAX
0046D71D      8BC7          MOV EAX,EDI
0046D71F      E8 20E7FFFF   CALL JactekDS.0046BE44
0046D724  |.  50            PUSH EAX                                 ; |hMenu
0046D725  |.  E8 38430800   CALL <JMP.&USER32.EnableMenuItem>        ; \EnableMenuItem
0046D72A  |>  33D2          XOR EDX,EDX
0046D72C  |.  8BC6          MOV EAX,ESI
0046D72E  |.  8B08          MOV ECX,DWORD PTR DS:[EAX]
0046D730  |.  FF51 38       CALL DWORD PTR DS:[ECX+38]
0046D733  |>  5F            POP EDI
0046D734  |.  5E            POP ESI
0046D735  |.  5B            POP EBX
0046D736  \.  C3            RETN

.
.
.
.
.
.
0048DC88  /$  55            PUSH EBP
0048DC89  |.  8BEC          MOV EBP,ESP
0048DC8B  |.  53            PUSH EBX
0048DC8C  |.  8B45 08       MOV EAX,DWORD PTR SS:[EBP+8]
0048DC8F  |.  8B40 FC       MOV EAX,DWORD PTR DS:[EAX-4]
0048DC92  |.  80B8 11020000>CMP BYTE PTR DS:[EAX+211],0
0048DC99  |.  0F84 DF000000 JE JactekDS.0048DD7E
0048DC9F  |.  8B45 08       MOV EAX,DWORD PTR SS:[EBP+8]
0048DCA2  |.  8B40 FC       MOV EAX,DWORD PTR DS:[EAX-4]
0048DCA5  |.  F680 10020000>TEST BYTE PTR DS:[EAX+210],1
0048DCAC  |.  0F84 CC000000 JE JactekDS.0048DD7E
0048DCB2  |.  8B45 08       MOV EAX,DWORD PTR SS:[EBP+8]
0048DCB5  |.  8B40 FC       MOV EAX,DWORD PTR DS:[EAX-4]
0048DCB8  |.  80B8 17020000>CMP BYTE PTR DS:[EAX+217],1
0048DCBF  |.  0F84 B9000000 JE JactekDS.0048DD7E
0048DCC5  |.  6A 00         PUSH 0
0048DCC7  |.  8B45 08       MOV EAX,DWORD PTR SS:[EBP+8]
0048DCCA  |.  8B40 FC       MOV EAX,DWORD PTR DS:[EAX-4]
0048DCCD  |.  E8 3EAB0100   CALL JactekDS.004A8810
0048DCD2  |.  50            PUSH EAX                                 ; |hWnd
0048DCD3  |.  E8 D8400600   CALL <JMP.&USER32.GetSystemMenu>         ; \GetSystemMenu
0048DCD8  |.  8BD8          MOV EBX,EAX
0048DCDA  |.  8B45 08       MOV EAX,DWORD PTR SS:[EBP+8]
0048DCDD  |.  8B40 FC       MOV EAX,DWORD PTR DS:[EAX-4]
0048DCE0  |.  80B8 11020000>CMP BYTE PTR DS:[EAX+211],3
0048DCE7      75 5D         JNZ SHORT JactekDS.0048DD46
0048DCE9  |.  6A 00         PUSH 0                                   ; /Flags = MF_BYCOMMAND|MF_ENABLED|MF_STRING
0048DCEB  |.  68 30F10000   PUSH 0F130                               ; |ItemId = F130 (61744.)
0048DCF0  |.  53            PUSH EBX                                 ; |hMenu
0048DCF1  |.  E8 183D0600   CALL <JMP.&USER32.DeleteMenu>            ; \DeleteMenu
0048DCF6  |.  68 00040000   PUSH 400                                 ; /Flags = MF_BYPOSITION|MF_ENABLED|MF_STRING
0048DCFB  |.  6A 07         PUSH 7                                   ; |ItemId = 7
0048DCFD  |.  53            PUSH EBX                                 ; |hMenu
0048DCFE  |.  E8 0B3D0600   CALL <JMP.&USER32.DeleteMenu>            ; \DeleteMenu
0048DD03  |.  68 00040000   PUSH 400                                 ; /Flags = MF_BYPOSITION|MF_ENABLED|MF_STRING
0048DD08  |.  6A 05         PUSH 5                                   ; |ItemId = 5
0048DD0A  |.  53            PUSH EBX                                 ; |hMenu
0048DD0B  |.  E8 FE3C0600   CALL <JMP.&USER32.DeleteMenu>            ; \DeleteMenu
0048DD10  |.  6A 00         PUSH 0                                   ; /Flags = MF_BYCOMMAND|MF_ENABLED|MF_STRING
0048DD12  |.  68 30F00000   PUSH 0F030                               ; |ItemId = F030 (61488.)
0048DD17  |.  53            PUSH EBX                                 ; |hMenu
0048DD18  |.  E8 F13C0600   CALL <JMP.&USER32.DeleteMenu>            ; \DeleteMenu
0048DD1D  |.  6A 00         PUSH 0                                   ; /Flags = MF_BYCOMMAND|MF_ENABLED|MF_STRING
0048DD1F  |.  68 20F00000   PUSH 0F020                               ; |ItemId = F020 (61472.)
0048DD24  |.  53            PUSH EBX                                 ; |hMenu
0048DD25  |.  E8 E43C0600   CALL <JMP.&USER32.DeleteMenu>            ; \DeleteMenu
0048DD2A  |.  6A 00         PUSH 0                                   ; /Flags = MF_BYCOMMAND|MF_ENABLED|MF_STRING
0048DD2C  |.  68 00F00000   PUSH 0F000                               ; |ItemId = F000 (61440.)
0048DD31  |.  53            PUSH EBX                                 ; |hMenu
0048DD32  |.  E8 D73C0600   CALL <JMP.&USER32.DeleteMenu>            ; \DeleteMenu
0048DD37  |.  6A 00         PUSH 0                                   ; /Flags = MF_BYCOMMAND|MF_ENABLED|MF_STRING
0048DD39  |.  68 20F10000   PUSH 0F120                               ; |ItemId = F120 (61728.)
0048DD3E  |.  53            PUSH EBX                                 ; |hMenu
0048DD3F  |.  E8 CA3C0600   CALL <JMP.&USER32.DeleteMenu>            ; \DeleteMenu
0048DD44  |.  EB 38         JMP SHORT JactekDS.0048DD7E
0048DD46  |>  8B45 08       MOV EAX,DWORD PTR SS:[EBP+8]
0048DD49  |.  8B40 FC       MOV EAX,DWORD PTR DS:[EAX-4]
0048DD4C  |.  F680 10020000>TEST BYTE PTR DS:[EAX+210],2
0048DD53  |.  75 0D         JNZ SHORT JactekDS.0048DD62
0048DD55      6A 01         PUSH 1
0048DD57  |.  68 20F00000   PUSH 0F020                               ; |ItemID = F020 (61472.)
0048DD5C  |.  53            PUSH EBX                                 ; |hMenu
0048DD5D  |.  E8 003D0600   CALL <JMP.&USER32.EnableMenuItem>        ; \EnableMenuItem
0048DD62  |>  8B45 08       MOV EAX,DWORD PTR SS:[EBP+8]
0048DD65  |.  8B40 FC       MOV EAX,DWORD PTR DS:[EAX-4]
0048DD68  |.  F680 10020000>TEST BYTE PTR DS:[EAX+210],4
0048DD6F  |.  75 0D         JNZ SHORT JactekDS.0048DD7E
0048DD71      6A 01         PUSH 1
0048DD73  |.  68 30F00000   PUSH 0F030                               ; |ItemID = F030 (61488.)
0048DD78  |.  53            PUSH EBX                                 ; |hMenu
0048DD79  |.  E8 E43C0600   CALL <JMP.&USER32.EnableMenuItem>        ; \EnableMenuItem
0048DD7E  |>  5B            POP EBX
0048DD7F  |.  5D            POP EBP
0048DD80  \.  C3            RETN

.
.
.
.
.
00489004  /.  55            PUSH EBP
00489005  |.  8BEC          MOV EBP,ESP
00489007  |.  53            PUSH EBX
00489008  |.  8B5D 08       MOV EBX,DWORD PTR SS:[EBP+8]
0048900B  |.  3B1D 7C765000 CMP EBX,DWORD PTR DS:[50767C]
00489011  |.  74 36         JE SHORT JactekDS.00489049
00489013  |.  53            PUSH EBX                                 ; /hWnd
00489014  |.  E8 ED8B0600   CALL <JMP.&USER32.IsWindowVisible>       ; \IsWindowVisible
00489019  |.  85C0          TEST EAX,EAX
0048901B  |.  74 2C         JE SHORT JactekDS.00489049
0048901D  |.  53            PUSH EBX                                 ; /hWnd
0048901E  |.  E8 DD8B0600   CALL <JMP.&USER32.IsWindowEnabled>       ; \IsWindowEnabled
00489023  |.  85C0          TEST EAX,EAX
00489025  |.  74 22         JE SHORT JactekDS.00489049
00489027  |.  B8 08000000   MOV EAX,8
0048902C  |.  E8 F35C0400   CALL JactekDS.004CED24
00489031  |.  8B15 88765000 MOV EDX,DWORD PTR DS:[507688]
00489037  |.  8910          MOV DWORD PTR DS:[EAX],EDX
00489039  |.  8958 04       MOV DWORD PTR DS:[EAX+4],EBX
0048903C  |.  A3 88765000   MOV DWORD PTR DS:[507688],EAX
00489041  |.  6A 00         PUSH 0                                   ; /Enable = FALSE
00489043  |.  53            PUSH EBX                                 ; |hWnd
00489044  |.  E8 258A0600   CALL <JMP.&USER32.EnableWindow>          ; \EnableWindow
00489049  |>  83C8 FF       OR EAX,FFFFFFFF
0048904C  |.  5B            POP EBX
0048904D  |.  5D            POP EBP
0048904E  \.  C2 0800       RETN 8

.
.
.
.
.
.00489108  /$  53            PUSH EBX
00489109  |.  56            PUSH ESI
0048910A  |.  8BF0          MOV ESI,EAX
0048910C  |.  85F6          TEST ESI,ESI
0048910E  |.  74 2C         JE SHORT JactekDS.0048913C
00489110  |>  8BDE          /MOV EBX,ESI
00489112  |.  8B43 04       |MOV EAX,DWORD PTR DS:[EBX+4]
00489115  |.  50            |PUSH EAX                                ; /hWnd
00489116  |.  E8 DF8A0600   |CALL <JMP.&USER32.IsWindow>             ; \IsWindow
0048911B  |.  85C0          |TEST EAX,EAX
0048911D  |.  74 0B         |JE SHORT JactekDS.0048912A
0048911F  |.  6A FF         |PUSH -1                                 ; /Enable = TRUE
00489121  |.  8B43 04       |MOV EAX,DWORD PTR DS:[EBX+4]            ; |
00489124  |.  50            |PUSH EAX                                ; |hWnd
00489125  |.  E8 44890600   |CALL <JMP.&USER32.EnableWindow>         ; \EnableWindow
0048912A  |>  8B33          |MOV ESI,DWORD PTR DS:[EBX]
0048912C  |.  BA 08000000   |MOV EDX,8
00489131  |.  8BC3          |MOV EAX,EBX
00489133  |.  E8 045C0400   |CALL JactekDS.004CED3C
00489138  |.  85F6          |TEST ESI,ESI
0048913A  |.^ 75 D4         \JNZ SHORT JactekDS.00489110
0048913C  |>  5E            POP ESI
0048913D  |.  5B            POP EBX
0048913E  \.  C3            RETN

.
.
.
.
.004A7DA0  /$  53            PUSH EBX
004A7DA1  |.  8BD8          MOV EBX,EAX
004A7DA3  |.  8BC3          MOV EAX,EBX
004A7DA5  |.  8B10          MOV EDX,DWORD PTR DS:[EAX]
004A7DA7  |.  FF52 4C       CALL DWORD PTR DS:[EDX+4C]
004A7DAA  |.  84C0          TEST AL,AL
004A7DAC  |.  75 0F         JNZ SHORT JactekDS.004A7DBD
004A7DAE  |.  837B 24 00    CMP DWORD PTR DS:[EBX+24],0
004A7DB2  |.  74 09         JE SHORT JactekDS.004A7DBD
004A7DB4  |.  33D2          XOR EDX,EDX
004A7DB6  |.  8BC3          MOV EAX,EBX
004A7DB8  |.  E8 F3D6FFFF   CALL JactekDS.004A54B0
004A7DBD  |>  8BC3          MOV EAX,EBX
004A7DBF  |.  E8 480D0000   CALL JactekDS.004A8B0C
004A7DC4  |.  84C0          TEST AL,AL
004A7DC6  |.  74 1E         JE SHORT JactekDS.004A7DE6
004A7DC8  |.  F643 20 10    TEST BYTE PTR DS:[EBX+20],10
004A7DCC  |.  75 18         JNZ SHORT JactekDS.004A7DE6
004A7DCE  |.  8BC3          MOV EAX,EBX
004A7DD0  |.  8B10          MOV EDX,DWORD PTR DS:[EAX]
004A7DD2  |.  FF52 4C       CALL DWORD PTR DS:[EDX+4C]
004A7DD5  |.  F6D8          NEG AL
004A7DD7  |.  1BC0          SBB EAX,EAX
004A7DD9  |.  50            PUSH EAX                                 ; /Enable
004A7DDA  |.  8B83 4C010000 MOV EAX,DWORD PTR DS:[EBX+14C]           ; |
004A7DE0  |.  50            PUSH EAX                                 ; |hWnd
004A7DE1  |.  E8 889C0400   CALL <JMP.&USER32.EnableWindow>          ; \EnableWindow
004A7DE6  |>  5B            POP EBX
004A7DE7  \.  C3            RETN

刚入破解的门,有些东东还不是很了解,也不知道上面的这些代码对激活功能有没有用,麻烦各位了.

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (5)
雪    币: 207
活跃值: (12)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
软件按钮是否变灰并不重要,关键要看按钮功能段的检测比较结果。当然,若按钮里边没有检测,只靠变灰来控制那就另当别论了。
2007-11-7 11:32
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
不太明白,帮顶!
2007-11-7 17:05
0
雪    币: 204
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
下按钮消息断点跟一下按钮按下的执行过程...
2007-11-7 17:52
0
雪    币: 211
活跃值: (13)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
zhd
5
菜单功能并没有删除,我是用OD调试的,但不知道在OD里面如何下消息断点?或着如何下鼠标拦截断点?

软件按钮是否变灰并不重要,关键要看按钮功能段的检测比较结果。当然,若按钮里边没有检测,只靠变灰来控制那就另当别论了。
请问:按钮功能段检测如何在OD里下断?
谢谢!
2007-11-7 18:25
0
雪    币: 211
活跃值: (13)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
zhd
6
不好意思,我没有上传附件的权力,不知道能不能发邮件给几位呀,帮我看一下.谢谢!
2007-11-7 19:43
0
游客
登录 | 注册 方可回帖
返回
//