可可没源码 err eno 破解为啥是改大跳
本帖最后由 lyrong 于 2017-5-21 17:21 编辑最近学习逆向逆向,学习到可可验证,看了《[悬赏杀手视频] DXF爱华逆向教程-err》视频教程和《可可eno和err逆向原理粗讲》,原理讲解是说看到两个jmp jmp后,后面是err,我OD查看了下,确实是,没有问题
【原话】从图中可以看出来,如果找的到err,那么就很好改了,err上面改一个大跳转,下面改一个大跳转就行了
我看视频教程中往上err上面,修改了两处jz为jmp,这两处都是大跳,在我们不知道源码的情况下,为什么要修改这两处大跳转呢?请教思路是什么?不是改一个跳就行了吗?OD能直接读出流程吗?
下面是我截取的关键代码:
00428030 . /74 09 JE SHORT 0042803B
00428032 . |53 PUSH EBX
00428033 . |E8 563A0000 CALL 0042BA8E
00428038 . |83C4 04 ADD ESP, 0x4
0042803B > \58 POP EAX ;0018EEC0
0042803C .8945 F8 MOV DWORD PTR SS:, EAX
0042803F .8D45 F8 LEA EAX, DWORD PTR SS:
00428042 .50 PUSH EAX
00428043 .E8 240A0000 CALL 00428A6C
00428048 .85C0 TEST EAX, EAX
0042804A .E9 80000000 JMP 004280CF;修改为jmp
0042804F 90 NOP
00428050 .8D45 F8 LEA EAX, DWORD PTR SS:
00428053 .50 PUSH EAX
00428054 .E8 F30A0000 CALL 00428B4C
00428059 .8945 F4 MOV DWORD PTR SS:, EAX
0042805C .BB 06000000 MOV EBX, 0x6
00428061 .E8 7393FEFF CALL 004113D9
00428066 .68 01030080 PUSH 0x80000301
0042806B .6A 00 PUSH 0x0
0042806D .68 00000000 PUSH 0x0
00428072 .68 04000080 PUSH 0x80000004
00428077 .6A 00 PUSH 0x0
00428079 .8B45 F4 MOV EAX, DWORD PTR SS:
0042807C .85C0 TEST EAX, EAX
0042807E .75 05 JNZ SHORT 00428085
00428080 .B8 ABD95700 MOV EAX, 0057D9AB
00428085 >50 PUSH EAX
00428086 .68 04000000 PUSH 0x4
0042808B .BB 10DA4200 MOV EBX, 0042DA10
00428090 .E8 0B3A0000 CALL 0042BAA0
00428095 .83C4 34 ADD ESP, 0x34
00428098 .8B5D F4 MOV EBX, DWORD PTR SS:
0042809B .85DB TEST EBX, EBX
0042809D .74 09 JE SHORT 004280A8
0042809F .53 PUSH EBX
004280A0 .E8 E9390000 CALL 0042BA8E
004280A5 .83C4 04 ADD ESP, 0x4
004280A8 >6A 00 PUSH 0x0
004280AA .68 00000000 PUSH 0x0
004280AF .6A FF PUSH -0x1
004280B1 .6A 06 PUSH 0x6
004280B3 .68 B3000116 PUSH 0x160100B3
004280B8 .68 01000152 PUSH 0x52010001
004280BD .E8 D8390000 CALL 0042BA9A
004280C2 .83C4 18 ADD ESP, 0x18
004280C5 .E9 80050000 JMP 0042864A
004280CA .E9 B1010000 JMP 00428280 ;这两个跳转对应图片中的什么代码呢?
004280CF >DB45 FC FILD DWORD PTR SS:
004280D2 .DD5D F0 FSTP QWORD PTR SS:
004280D5 .DD45 F0 FLD QWORD PTR SS:
004280D8 .DC05 3D025800 FADD QWORD PTR DS:
004280DE .DD5D E8 FSTP QWORD PTR SS:
004280E1 .DD45 E8 FLD QWORD PTR SS:
004280E4 .DC0D 9BD95700 FMUL QWORD PTR DS:
004280EA .DD5D E0 FSTP QWORD PTR SS:
004280ED .DD45 E0 FLD QWORD PTR SS:
004280F0 .DC05 7BD95700 FADD QWORD PTR DS:
004280F6 .DD5D D8 FSTP QWORD PTR SS:
004280F9 .68 01030080 PUSH 0x80000301
004280FE .6A 00 PUSH 0x0
00428100 .68 08000000 PUSH 0x8
00428105 .DD45 D8 FLD QWORD PTR SS:
00428108 .E8 4D94FDFF CALL 0040155A
0042810D .68 01030080 PUSH 0x80000301
00428112 .6A 00 PUSH 0x0
00428114 .50 PUSH EAX
00428115 .68 04000080 PUSH 0x80000004
0042811A .6A 00 PUSH 0x0
0042811C .A1 C8655D00 MOV EAX, DWORD PTR DS:
00428121 .85C0 TEST EAX, EAX
00428123 .75 05 JNZ SHORT 0042812A
00428125 .B8 ABD95700 MOV EAX, 0057D9AB
0042812A >50 PUSH EAX
0042812B .68 03000000 PUSH 0x3
00428130 .BB 20C24200 MOV EBX, 0042C220
00428135 .E8 66390000 CALL 0042BAA0
0042813A .83C4 28 ADD ESP, 0x28
0042813D .8945 D4 MOV DWORD PTR SS:, EAX
00428140 .8B45 D4 MOV EAX, DWORD PTR SS:
00428143 .50 PUSH EAX
00428144 .FF75 F8 PUSH DWORD PTR SS:
00428147 .E8 A3B4FDFF CALL 004035EF
0042814C .83C4 08 ADD ESP, 0x8
0042814F .83F8 00 CMP EAX, 0x0
00428152 .B8 00000000 MOV EAX, 0x0
00428157 .0F95C0 SETNE AL
0042815A .8945 D0 MOV DWORD PTR SS:, EAX
0042815D .8B5D D4 MOV EBX, DWORD PTR SS:
00428160 .85DB TEST EBX, EBX
00428162 .74 09 JE SHORT 0042816D
00428164 .53 PUSH EBX
00428165 .E8 24390000 CALL 0042BA8E
0042816A .83C4 04 ADD ESP, 0x4
0042816D >837D D0 00 CMP DWORD PTR SS:, 0x0
00428171 .0F84 09010000 JE 00428280 ;修改为JMP
00428177 .DB45 FC FILD DWORD PTR SS:
0042817A .DD5D F0 FSTP QWORD PTR SS:
0042817D .DD45 F0 FLD QWORD PTR SS:
00428180 .DC0D B4E85700 FMUL QWORD PTR DS:
00428186 .DD5D E8 FSTP QWORD PTR SS:
00428189 .DD45 E8 FLD QWORD PTR SS:
0042818C .DC05 45025800 FADD QWORD PTR DS:
00428192 .DD5D E0 FSTP QWORD PTR SS:
00428195 .68 01030080 PUSH 0x80000301
0042819A .6A 00 PUSH 0x0
0042819C .68 08000000 PUSH 0x8
004281A1 .DD45 E0 FLD QWORD PTR SS:
004281A4 .E8 B193FDFF CALL 0040155A
004281A9 .68 01030080 PUSH 0x80000301
004281AE .6A 00 PUSH 0x0
004281B0 .50 PUSH EAX
004281B1 .68 04000080 PUSH 0x80000004
004281B6 .6A 00 PUSH 0x0
004281B8 .A1 C8655D00 MOV EAX, DWORD PTR DS:
004281BD .85C0 TEST EAX, EAX
004281BF .75 05 JNZ SHORT 004281C6
004281C1 .B8 ABD95700 MOV EAX, 0057D9AB
004281C6 >50 PUSH EAX
004281C7 .68 03000000 PUSH 0x3
004281CC .BB 20C24200 MOV EBX, 0042C220
004281D1 .E8 CA380000 CALL 0042BAA0
004281D6 .83C4 28 ADD ESP, 0x28
004281D9 .8945 DC MOV DWORD PTR SS:, EAX
004281DC .FF75 DC PUSH DWORD PTR SS:
004281DF .68 E0E85700 PUSH 0057E8E0 ;,
004281E4 .FF75 F8 PUSH DWORD PTR SS:
004281E7 .B9 03000000 MOV ECX, 0x3
004281EC .E8 B306FEFF CALL 004088A4
004281F1 .83C4 0C ADD ESP, 0xC
004281F4 .8945 D8 MOV DWORD PTR SS:, EAX
004281F7 .8B5D DC MOV EBX, DWORD PTR SS:
004281FA .85DB TEST EBX, EBX
004281FC .74 09 JE SHORT 00428207
004281FE .53 PUSH EBX
004281FF .E8 8A380000 CALL 0042BA8E
00428204 .83C4 04 ADD ESP, 0x4
00428207 >68 04000080 PUSH 0x80000004
0042820C .6A 00 PUSH 0x0
0042820E .8B45 D8 MOV EAX, DWORD PTR SS:
00428211 .85C0 TEST EAX, EAX
00428213 .75 05 JNZ SHORT 0042821A
00428215 .B8 ABD95700 MOV EAX, 0057D9AB
0042821A >50 PUSH EAX
0042821B .68 04000080 PUSH 0x80000004
00428220 .6A 00 PUSH 0x0
00428222 .68 4D025800 PUSH 0058024D ;err
00428227 .68 04000080 PUSH 0x80000004
0042822C .6A 00 PUSH 0x0
0042822E .68 51025800 PUSH 00580251 ;signdata
00428233 .68 04000080 PUSH 0x80000004
00428238 .6A 00 PUSH 0x0
0042823A .A1 60655D00 MOV EAX, DWORD PTR DS:
0042823F .85C0 TEST EAX, EAX
00428241 .75 05 JNZ SHORT 00428248
00428243 .B8 ABD95700 MOV EAX, 0057D9AB
00428248 >50 PUSH EAX
00428249 .68 04000000 PUSH 0x4
0042824E .BB 80E44200 MOV EBX, 0042E480
00428253 .E8 48380000 CALL 0042BAA0
00428258 .83C4 34 ADD ESP, 0x34
0042825B .8B5D D8 MOV EBX, DWORD PTR SS:
0042825E .85DB TEST EBX, EBX
00428260 .74 09 JE SHORT 0042826B
00428262 .53 PUSH EBX
00428263 .E8 26380000 CALL 0042BA8E
00428268 .83C4 04 ADD ESP, 0x4
0042826B >E8 80C4FDFF CALL 004046F0
00428270 .50 PUSH EAX
00428271 .E8 ABC4FDFF CALL 00404721
00428276 .6A 00 PUSH 0x0
00428278 .E8 3B380000 CALL 0042BAB8
0042827D .83C4 04 ADD ESP, 0x4
00428280 >6A FF PUSH -0x1
00428282 .6A 12 PUSH 0x12
00428284 .68 86070116 PUSH 0x16010786
00428289 .68 01000152 PUSH 0x52010001
0042828E .E8 19380000 CALL 0042BAAC
00428293 .83C4 10 ADD ESP, 0x10
00428296 .8945 F0 MOV DWORD PTR SS:, EAX
00428299 .837D F0 01 CMP DWORD PTR SS:, 0x1
0042829D .0F85 27020000 JNZ 004284CA
没源码直接看汇编代码,我觉得没借鉴的东西,看过可可源码之后,方懂为什么要改跳转,但是不知道为什么改的是大跳转而不是别的jz呢?大神别笑话我哦,心塞。只想了解大家如何想的,谢谢大家了。
源码+程序:https://pan.baidu.com/s/1ccVvQ2
注明:我发的帖子,有些是很菜的问题,但是本人还是不那么菜的,懂编程,只是最近看吾爱汇编论坛的视频教程,一天5、6个教程,都忘记消化,所以脑袋难免短路,希望别介意。
{:5_116:}
因为跳,所以跳,好比1+1=2,为什么登录2 guguangxin 发表于 2017-5-21 08:11
因为跳,所以跳,好比1+1=2,为什么登录2
我想我是钻牛角尖了,如果不设置跳转,那直接点击登录就能成功登录了
但是大跳和普通跳转有什么不同呢? ck62596729 发表于 2017-5-21 08:56
呵呵,我笑了好吗
我钻牛角了,抱歉,很菜的问题,可是当时就没想到,抱歉,抱歉! 我还以为没人会回复,谢谢大家的提点 求指导,.fnc文件用什么软件逆向,谢谢各位老师 很有哲学是问题我表示 很牛逼 {:5_116:}呵呵 这个帖子得改为送分帖了 我这牛角钻的 348762918 发表于 2017-5-21 12:53
很有哲学是问题我表示 很牛逼
呵呵 没想到一个主题让你想到了哲学的范畴,以后发问题还是得自己思考下,否则就留下笑柄了
页:
[1]