首页
社区
课程
招聘
小弟初学破解 注册窗口已可以破解出来但是没法使用(一用程序就关掉了)
发表于: 2007-2-11 19:10 4284

小弟初学破解 注册窗口已可以破解出来但是没法使用(一用程序就关掉了)

2007-2-11 19:10
4284
0042BF5D    83C4 10         add     esp, 10                          ; 断下
0042BF60    8945 FC         mov     dword ptr [ebp-4], eax  
0042BF63    68 6D934000     push    0040936D ; 子程序(机器码)压栈
0042BF68    FF75 FC         push    dword ptr [ebp-4] ;注册码压栈
0042BF6B    E8 34FFFFFF     call    0042BEA4 ;关键CALL 里面找不到注册码 郁闷
0042BF70    83C4 08         add     esp, 8
0042BF73    83F8 00         cmp     eax, 0
0042BF76    B8 00000000     mov     eax, 0
0042BF7B    0F94C0          sete    al
0042BF7E    8945 F8         mov     dword ptr [ebp-8], eax
0042BF81    8B5D FC         mov     ebx, dword ptr [ebp-4]
0042BF84    85DB            test    ebx, ebx
0042BF86    74 09           je      short 0042BF91
0042BF88    53              push    ebx
0042BF89    E8 31030100     call    0043C2BF
0042BF8E    83C4 04         add     esp, 4
0042BF91    837D F8 00      cmp     dword ptr [ebp-8], 0
0042BF95    0F85 C2000000   jnz     0042C05D
0042BF9B    6A FF           push    -1
0042BF9D    6A 08           push    8
0042BF9F    68 07000116     push    16010007
0042BFA4    68 01000152     push    52010001
0042BFA9    E8 35030100     call    0043C2E3
0042BFAE    83C4 10         add     esp, 10
0042BFB1    8945 F4         mov     dword ptr [ebp-C], eax
0042BFB4    68 04000080     push    80000004
0042BFB9    6A 00           push    0
0042BFBB    8B45 F4         mov     eax, dword ptr [ebp-C]
0042BFBE    85C0            test    eax, eax
0042BFC0    75 05           jnz     short 0042BFC7
0042BFC2    B8 6D934000     mov     eax, 0040936D
0042BFC7    50              push    eax
0042BFC8    68 01000000     push    1
0042BFCD    BB 30010000     mov     ebx, 130
0042BFD2    E8 00030100     call    0043C2D7
0042BFD7    83C4 10         add     esp, 10
0042BFDA    8945 F0         mov     dword ptr [ebp-10], eax
0042BFDD    8B5D F4         mov     ebx, dword ptr [ebp-C]
0042BFE0    85DB            test    ebx, ebx
0042BFE2    74 09           je      short 0042BFED
0042BFE4    53              push    ebx
0042BFE5    E8 D5020100     call    0043C2BF
0042BFEA    83C4 04         add     esp, 4
0042BFED    817D F0 0401000>cmp     dword ptr [ebp-10], 104
0042BFF4    0F8F 63000000   jg      0042C05D
0042BFFA    6A FF           push    -1
0042BFFC    6A 08           push    8
0042BFFE    68 07000116     push    16010007
0042C003    68 01000152     push    52010001
0042C008    E8 D6020100     call    0043C2E3
0042C00D    83C4 10         add     esp, 10
0042C010    8945 E8         mov     dword ptr [ebp-18], eax
0042C013    68 04000080     push    80000004
0042C018    6A 00           push    0
0042C01A    8B45 E8         mov     eax, dword ptr [ebp-18]
0042C01D    85C0            test    eax, eax
0042C01F    75 05           jnz     short 0042C026
0042C021    B8 6D934000     mov     eax, 0040936D
0042C026    50              push    eax
0042C027    68 01000000     push    1
0042C02C    BB 30010000     mov     ebx, 130
0042C031    E8 A1020100     call    0043C2D7
0042C036    83C4 10         add     esp, 10
0042C039    8945 E4         mov     dword ptr [ebp-1C], eax
0042C03C    8B5D E8         mov     ebx, dword ptr [ebp-18]
0042C03F    85DB            test    ebx, ebx
0042C041    74 09           je      short 0042C04C
0042C043    53              push    ebx
0042C044    E8 76020100     call    0043C2BF
0042C049    83C4 04         add     esp, 4
0042C04C    817D E4 F000000>cmp     dword ptr [ebp-1C], 0F0
0042C053    0F8C 04000000   jl      0042C05D
0042C059    33C0            xor     eax, eax
0042C05B    EB 05           jmp     short 0042C062
0042C05D    B8 01000000     mov     eax, 1
0042C062    85C0            test    eax, eax
0042C064    EB 5E           jmp     short 0042C0C4                   ; je 改 jmp
0042C066    90              nop
0042C067    90              nop
0042C068    90              nop
0042C069    90              nop
0042C06A    6A 00           push    0
0042C06C    6A 00           push    0
0042C06E    6A 00           push    0
0042C070    68 01030080     push    80000301
0042C075    6A 00           push    0
0042C077    68 00000000     push    0
0042C07C    68 04000080     push    80000004
0042C081    6A 00           push    0
0042C083    68 1E964000     push    0040961E
0042C088    68 03000000     push    3
0042C08D    BB 00030000     mov     ebx, 300
0042C092    E8 40020100     call    0043C2D7                         ; 注册失败信息
0042C097    83C4 28         add     esp, 28
0042C09A    8945 F8         mov     dword ptr [ebp-8], eax
0042C09D    837D F8 00      cmp     dword ptr [ebp-8], 0
0042C0A1    0F85 1D000000   jnz     0042C0C4
0042C0A7    6A 00           push    0
0042C0A9    68 6D934000     push    0040936D
0042C0AE    6A FF           push    -1
0042C0B0    6A 08           push    8
0042C0B2    68 07000116     push    16010007
0042C0B7    68 01000152     push    52010001
0042C0BC    E8 28020100     call    0043C2E9
0042C0C1    83C4 18         add     esp, 18
0042C0C4    6A FF           push    -1
0042C0C6    6A 08           push    8
0042C0C8    68 01010116     push    16010101
0042C0CD    68 01000152     push    52010001
0042C0D2    E8 0C020100     call    0043C2E3
0042C0D7    83C4 10         add     esp, 10
0042C0DA    8945 FC         mov     dword ptr [ebp-4], eax           ; 第一次出现序列号
0042C0DD    68 04000080     push    80000004
0042C0E2    6A 00           push    0
0042C0E4    8B45 FC         mov     eax, dword ptr [ebp-4]
0042C0E7    85C0            test    eax, eax
0042C0E9    75 05           jnz     short 0042C0F0
0042C0EB    B8 6D934000     mov     eax, 0040936D
0042C0F0    50              push    eax
0042C0F1    68 01000000     push    1
0042C0F6    BB 98010000     mov     ebx, 198
0042C0FB    E8 D7010100     call    0043C2D7
0042C100    83C4 10         add     esp, 10
0042C103    8945 F8         mov     dword ptr [ebp-8], eax
0042C106    8B5D FC         mov     ebx, dword ptr [ebp-4]
0042C109    85DB            test    ebx, ebx
0042C10B    74 09           je      short 0042C116
0042C10D    53              push    ebx
0042C10E    E8 AC010100     call    0043C2BF
0042C113    83C4 04         add     esp, 4
0042C116    6A FF           push    -1
0042C118    6A 08           push    8
0042C11A    68 07000116     push    16010007
0042C11F    68 01000152     push    52010001
0042C124    E8 BA010100     call    0043C2E3
0042C129    83C4 10         add     esp, 10
0042C12C    8945 F4         mov     dword ptr [ebp-C], eax
0042C12F    68 04000080     push    80000004
0042C134    6A 00           push    0
0042C136    A1 F4700002     mov     eax, dword ptr [20070F4]
0042C13B    85C0            test    eax, eax                         ; ASCII 一长串貌似加密信息
0042C13D    75 05           jnz     short 0042C144
0042C13F    B8 6D934000     mov     eax, 0040936D
0042C144    50              push    eax
0042C145    68 04000080     push    80000004
0042C14A    6A 00           push    0
0042C14C    A1 F0700002     mov     eax, dword ptr [20070F0]
0042C151    85C0            test    eax, eax
0042C153    75 05           jnz     short 0042C15A
0042C155    B8 6D934000     mov     eax, 0040936D
0042C15A    50              push    eax
0042C15B    68 04000080     push    80000004
0042C160    6A 00           push    0
0042C162    8B45 F4         mov     eax, dword ptr [ebp-C]
0042C165    85C0            test    eax, eax
0042C167    75 05           jnz     short 0042C16E
0042C169    B8 6D934000     mov     eax, 0040936D
0042C16E    50              push    eax
0042C16F    68 05000080     push    80000005
0042C174    6A 00           push    0
0042C176    8B45 F8         mov     eax, dword ptr [ebp-8]
0042C179    85C0            test    eax, eax
0042C17B    75 05           jnz     short 0042C182
0042C17D    B8 3E964000     mov     eax, 0040963E
0042C182    50              push    eax
0042C183    68 04000000     push    4
0042C188    BB 18000000     mov     ebx, 18
0042C18D    B8 01000000     mov     eax, 1
0042C192    E8 58010100     call    0043C2EF
0042C197    83C4 34         add     esp, 34
0042C19A    8945 F0         mov     dword ptr [ebp-10], eax
0042C19D    8B5D F8         mov     ebx, dword ptr [ebp-8]
0042C1A0    85DB            test    ebx, ebx
0042C1A2    74 09           je      short 0042C1AD
0042C1A4    53              push    ebx
0042C1A5    E8 15010100     call    0043C2BF
0042C1AA    83C4 04         add     esp, 4
0042C1AD    8B5D F4         mov     ebx, dword ptr [ebp-C]
0042C1B0    85DB            test    ebx, ebx
0042C1B2    74 09           je      short 0042C1BD
0042C1B4    53              push    ebx
0042C1B5    E8 05010100     call    0043C2BF
0042C1BA    83C4 04         add     esp, 4
0042C1BD    837D F0 01      cmp     dword ptr [ebp-10], 1
0042C1C1    0F84 12010000   je      0042C2D9                         ; jnz 改 je
0042C1C7    6A FF           push    -1
0042C1C9    6A 08           push    8
0042C1CB    68 07000116     push    16010007
0042C1D0    68 01000152     push    52010001
0042C1D5    E8 09010100     call    0043C2E3
0042C1DA    83C4 10         add     esp, 10
0042C1DD    8945 FC         mov     dword ptr [ebp-4], eax
0042C1E0    68 04000080     push    80000004
0042C1E5    6A 00           push    0
0042C1E7    8B45 FC         mov     eax, dword ptr [ebp-4]
0042C1EA    85C0            test    eax, eax
0042C1EC    75 05           jnz     short 0042C1F3
0042C1EE    B8 6D934000     mov     eax, 0040936D
0042C1F3    50              push    eax
0042C1F4    68 01000000     push    1
0042C1F9    BB 98010000     mov     ebx, 198
0042C1FE    E8 D4000100     call    0043C2D7
0042C203    83C4 10         add     esp, 10
0042C206    8945 F8         mov     dword ptr [ebp-8], eax
0042C209    8B5D FC         mov     ebx, dword ptr [ebp-4]
0042C20C    85DB            test    ebx, ebx
0042C20E    74 09           je      short 0042C219
0042C210    53              push    ebx
0042C211    E8 A9000100     call    0043C2BF
0042C216    83C4 04         add     esp, 4
0042C219    68 05000080     push    80000005
0042C21E    6A 00           push    0
0042C220    8B45 F8         mov     eax, dword ptr [ebp-8]
0042C223    85C0            test    eax, eax
0042C225    75 05           jnz     short 0042C22C
0042C227    B8 3E964000     mov     eax, 0040963E
0042C22C    50              push    eax
0042C22D    68 04000080     push    80000004
0042C232    6A 00           push    0
0042C234    68 46964000     push    00409646                         ; ASCII "SOFTWARE\Carnival"
0042C239    68 01030080     push    80000301
0042C23E    6A 00           push    0
0042C240    68 03000000     push    3
0042C245    68 03000000     push    3
0042C24A    BB A4060000     mov     ebx, 6A4
0042C24F    E8 83000100     call    0043C2D7
0042C254    83C4 28         add     esp, 28
0042C257    8B5D F8         mov     ebx, dword ptr [ebp-8]
0042C25A    85DB            test    ebx, ebx
0042C25C    74 09           je      short 0042C267
0042C25E    53              push    ebx
0042C25F    E8 5B000100     call    0043C2BF
0042C264    83C4 04         add     esp, 4
0042C267    6A 00           push    0
0042C269    68 02000000     push    2
0042C26E    6A FF           push    -1
0042C270    6A 12           push    12
0042C272    68 00000106     push    6010000
0042C277    68 01000152     push    52010001
0042C27C    E8 68000100     call    0043C2E9
0042C281    83C4 18         add     esp, 18
0042C284    6A 00           push    0
0042C286    68 00000000     push    0
0042C28B    6A FF           push    -1
0042C28D    6A 05           push    5
0042C28F    68 00000106     push    6010000
0042C294    68 01000152     push    52010001
0042C299    E8 4B000100     call    0043C2E9
0042C29E    83C4 18         add     esp, 18
0042C2A1    68 02000080     push    80000002
0042C2A6    6A 00           push    0
0042C2A8    68 01000000     push    1
0042C2AD    6A 00           push    0
0042C2AF    6A 00           push    0
0042C2B1    6A 00           push    0
0042C2B3    68 01000100     push    10001
0042C2B8    68 14010106     push    6010114
0042C2BD    68 15010152     push    52010115
0042C2C2    68 03000000     push    3
0042C2C7    BB 20030000     mov     ebx, 320
0042C2CC    E8 06000100     call    0043C2D7
0042C2D1    83C4 28         add     esp, 28
0042C2D4    E9 0F000000     jmp     0042C2E8
0042C2D9    E8 D5000000     call    0042C3B3
0042C2DE    6A 00           push    0
0042C2E0    E8 C2FF0000     call    0043C2A7
0042C2E5    83C4 04         add     esp, 4
0042C2E8    8BE5            mov     esp, ebp
0042C2EA    5D              pop     ebp

42c27c有个CALL是CALL出主程序 但是一用程序功能程序就自己关了
估计是又检测了一次注册码
以上是代码 请高手指点
实在找不到加密的地方

最看不懂的地方 就是好多时候2个相同的寄存器对比不相等跳了

http://astevena.gbaopan.com/files/5a932f362e8e4483afe39b7aa6dd8d33.gbp

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (14)
雪    币: 233
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
有一点忘记了说
我是带壳调试的
2007-2-11 20:20
0
雪    币: 226
活跃值: (11)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
3
建议先脱壳.
2007-2-11 21:37
0
雪    币: 233
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
变形壳 不会脱- -!!
2007-2-12 07:43
0
雪    币: 846
活跃值: (221)
能力值: (RANK:570 )
在线值:
发帖
回帖
粉丝
5
只有压缩和加密的区别,哪个壳不用变形代码的?
2007-2-12 08:24
0
雪    币: 233
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
偶是新手 要不我把源程序放上来吧
2007-2-12 08:47
0
雪    币: 846
活跃值: (221)
能力值: (RANK:570 )
在线值:
发帖
回帖
粉丝
7
你是新手,没有脱壳,估计也不会写内存补丁。
难道每次用都这么改跳转吗?

从基础学起吧,一步一步来
2007-2-12 09:07
0
雪    币: 233
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
最初由 笨笨雄 发布
你是新手,没有脱壳,估计也不会写内存补丁。
难道每次用都这么改跳转吗?

从基础学起吧,一步一步来


是啊 提权和断点的API都不会用
2007-2-12 09:09
0
雪    币: 846
活跃值: (221)
能力值: (RANK:570 )
在线值:
发帖
回帖
粉丝
9
最初由 astevena 发布
是啊 提权和断点的API都不会用


这些都不用管

你现在要想的是,该学脱壳还是学做内存补丁

然后有个方向去学习。

你在自己的电脑上用程序,自己切换成管理员帐号,那些程序不就什么权限都有了。你学提权干什么?

也不是让你做调试器,你学用DbgBreakPoint这个API有意义?

当然你时间要是足够多,盲目学,什么都学点,那也无所谓
2007-2-12 09:16
0
雪    币: 233
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
但是那个程序我追了好久了 现在注册码比对和跳主程序的CALL都找到了
现在让我放弃真的有点不甘心

关键CALL是第一个CALL
但是里面所有的TEXT和CMP全是相同的寄存器对比
完全看不懂他什么意思
2007-2-12 09:22
0
雪    币: 846
活跃值: (221)
能力值: (RANK:570 )
在线值:
发帖
回帖
粉丝
11
不会汇编,谈什么破解

你是想破解了,然后告诉你注册码,又或者这个程序哪里是爆破点?

这样有意义吗?还不如直接搜索那些已经破解好的,搜索不到,大不了用别的。
2007-2-12 09:28
0
雪    币: 846
活跃值: (221)
能力值: (RANK:570 )
在线值:
发帖
回帖
粉丝
12
CMP如果是自己跟自己比较,那么它就是一个伪比较,用来制造伪条件跳转,欺骗反汇编工具的。

不过那么低级的技巧,估计没有人用

TEST和CMP的区别就是逻辑比较和算术比较

那种速查汇编指令的东西,没意义的。熟练的用不上,不会的看不懂。要看就看INTEL自己的手册
2007-2-12 09:31
0
雪    币: 233
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
不知道是不是找到了点什么

0042BED2    8B02            mov     eax, dword ptr [edx]
0042BED4    3A01            cmp     al, byte ptr [ecx]
0042BED6    75 2B           jnz     short 0042BF03
0042BED8    0AC0            or      al, al
0042BEDA    74 24           je      short 0042BF00
0042BEDC    3A61 01         cmp     ah, byte ptr [ecx+1]
0042BEDF    75 22           jnz     short 0042BF03
0042BEE1    0AE4            or      ah, ah
0042BEE3    74 1B           je      short 0042BF00
0042BEE5    C1E8 10         shr     eax, 10
0042BEE8    3A41 02         cmp     al, byte ptr [ecx+2]
0042BEEB    75 16           jnz     short 0042BF03
0042BEED    0AC0            or      al, al
0042BEEF    74 0F           je      short 0042BF00
0042BEF1    3A61 03         cmp     ah, byte ptr [ecx+3]
0042BEF4    75 0D           jnz     short 0042BF03
0042BEF6    83C1 04         add     ecx, 4
0042BEF9    83C2 04         add     edx, 4
0042BEFC    0AE4            or      ah, ah
0042BEFE  ^ 75 D2           jnz     short 0042BED2
0042BF00    33C0            xor     eax, eax
0042BF02    C3              retn
0042BF03    1BC0            sbb     eax, eax
0042BF05    D1E0            shl     eax, 1
0042BF07    40              inc     eax
0042BF08    C3              retn
0042BF09    F7C2 01000000   test    edx, 1
0042BF0F    74 14           je      short 0042BF25
0042BF11    8A02            mov     al, byte ptr [edx]
0042BF13    42              inc     edx
0042BF14    3A01            cmp     al, byte ptr [ecx]
0042BF16  ^ 75 EB           jnz     short 0042BF03
0042BF18    41              inc     ecx
0042BF19    0AC0            or      al, al
0042BF1B  ^ 74 E3           je      short 0042BF00
0042BF1D    F7C2 02000000   test    edx, 2
0042BF23  ^ 74 AD           je      short 0042BED2
0042BF25    66:8B02         mov     ax, word ptr [edx]
0042BF28    83C2 02         add     edx, 2
0042BF2B    3A01            cmp     al, byte ptr [ecx]
0042BF2D  ^ 75 D4           jnz     short 0042BF03
0042BF2F    0AC0            or      al, al
0042BF31  ^ 74 CD           je      short 0042BF00
0042BF33    3A61 01         cmp     ah, byte ptr [ecx+1]
0042BF36  ^ 75 CB           jnz     short 0042BF03
0042BF38    0AE4            or      ah, ah
0042BF3A  ^ 74 C4           je      short 0042BF00
0042BF3C    83C1 02         add     ecx, 2
0042BF3F  ^ EB 91           jmp     short 0042BED2

这一段好象是对注册码的一个一个的对比
2007-2-12 09:32
0
雪    币: 233
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
最初由 笨笨雄 发布
CMP如果是自己跟自己比较,那么它就是一个伪比较,用来制造伪条件跳转,欺骗反汇编工具的。

不过那么低级的技巧,估计没有人用

TEST和CMP的区别就是逻辑比较和算术比较
........


我在学啊 就是那个顶置帖里面的网络课程 不过还没学完
2007-2-12 09:34
0
雪    币: 233
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
总之还是谢谢斑竹了 给了我这么多好的建议
2007-2-12 09:41
0
游客
登录 | 注册 方可回帖
返回
//