能力值:
(RANK:350 )
2 楼
将上面的数据,复制到OD里(二进制复制)
能力值:
(RANK:210 )
3 楼
74 1C 68 74 B2 46 00 89 5C 24 18 89 35 60 37 4B
90 90 68 74 B2 46 00 89 5C 24 18 89 35 60 37 4B
0040102B /74 1C JE SHORT 00401049
0040102D |68 74B24600 PUSH 46B274
00401032 |895C24 18 MOV DWORD PTR SS:[ESP+18],EBX
00401036 |8935 60374B90 MOV DWORD PTR DS:[904B3760],ESI
0040103C |90 NOP
0040103D |68 74B24600 PUSH 46B274
00401042 |895C24 18 MOV DWORD PTR SS:[ESP+18],EBX
00401046 |8935 60374B00 MOV DWORD PTR DS:[4B3760],ESI
CC 0F 00 00 83 C4 08 F7 D8 1B C0 40 89 44 24 14
CC 0F 00 00 83 C4 08 F7 D8 33 C0 40 89 44 24 14
0040104C CC INT3
0040104D 0F0000 SLDT WORD PTR DS:[EAX]
00401050 83C4 08 ADD ESP,8
00401053 F7D8 NEG EAX
00401055 1BC0 SBB EAX,EAX
00401057 40 INC EAX
00401058 894424 14 MOV DWORD PTR SS:[ESP+14],EAX
0040105C CC INT3
0040105D 0F0000 SLDT WORD PTR DS:[EAX]
00401060 83C4 08 ADD ESP,8
00401063 F7D8 NEG EAX
00401065 33C0 XOR EAX,EAX
00401067 40 INC EAX
00401068 894424 14 MOV DWORD PTR SS:[ESP+14],EAX
上面是直接反汇编的结果,我想它显然不是某指令的开始的地方。因为看不出它有什么意义。
能力值:
( LV2,RANK:10 )
4 楼
非常感谢两位,请问能不能详细说一下怎么转换?怎么往OD里复制?
能力值:
( LV7,RANK:100 )
5 楼
其实可以在cmd中用debug
把上面的输入到内存中
在-u查看汇编代码就可以了
可以看看“没有风”大哥的教程
http://bbs.pediy.com/showthread.php?t=64480&tcatid=73
能力值:
( LV2,RANK:10 )
6 楼
你这样做就行了,打开WINHEX,新建一个32Bytes空文件,然后将数据粘贴进去,此时一定要选ASCII HEX模式,即以十六进制方式写入,保存!然后打开W32DASM,选择打开任意文件下拉框,这时,打开刚才保存的文件,选择反汇编,这时选中“检查16反汇编"选项,然后W32DASM就会生成你要的汇编代码。
具体例图如下:(不好意思,看雪上如何发本地图片不会,图就无法上传了)
第一段反汇编代码:
Disassembly of File: I:\DATA\雪中夕阳1.dat
Code Offset = 00000000, Code Size = 00000020
Data Offset = 00000000, Data Size = 00000000
Number of Objects = 0001 (dec), Imagebase = 00000000h
Object01: RVA: 00000000 Offset: 00000000 Size: 00000020 Flags: 00000000 Number of Imported Modules = 0 (decimal) +++++++++++++++++++ IMPORT MODULE DETAILS +++++++++++++++
+++++++++++++++++++ EXPORTED FUNCTIONS ++++++++++++++++++
Number of Exported Functions = 0000 (decimal) +++++++++++++++++++ ASSEMBLY CODE LISTING ++++++++++++++++++
//********************** Start of Code in Object BinaryCode **************
Program Entry Point Not Available //********************** Start of Code in Segment: 1 **************
:0001.0000 741C je 001E
:0001.0002 6874B2 push B274
:0001.0005 46 inc si
:0001.0006 00895C24 add [bx+di+245C], cl
:0001.000A 18893560 sbb [bx+di+6035], cl
:0001.000E 37 aaa
:0001.000F 4B dec bx
:0001.0010 90 nop
:0001.0011 90 nop
:0001.0012 6874B2 push B274
:0001.0015 46 inc si
:0001.0016 00895C24 add [bx+di+245C], cl
:0001.001A 18893560 sbb [bx+di+6035], cl
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0001.0000(C)
|
:0001.001E 37 aaa
:0001.001F 4B dec bx
第二段反汇编代码:
Disassembly of File: I:\DATA\雪中夕阳2.dat
Code Offset = 00000000, Code Size = 00000020
Data Offset = 00000000, Data Size = 00000000
Number of Objects = 0001 (dec), Imagebase = 00000000h
Object01: RVA: 00000000 Offset: 00000000 Size: 00000020 Flags: 00000000 Number of Imported Modules = 0 (decimal) +++++++++++++++++++ IMPORT MODULE DETAILS +++++++++++++++
+++++++++++++++++++ EXPORTED FUNCTIONS ++++++++++++++++++
Number of Exported Functions = 0000 (decimal) +++++++++++++++++++ ASSEMBLY CODE LISTING ++++++++++++++++++
//********************** Start of Code in Object BinaryCode **************
Program Entry Point Not Available //********************** Start of Code in Segment: 1 **************
:0001.0000 CC int 03
:0001.0001 0F0000 sldt [bx+si]
:0001.0004 83C408 add sp, 0008
:0001.0007 F7D8 neg ax
:0001.0009 1BC0 sbb ax, ax
:0001.000B 40 inc ax
:0001.000C 894424 mov [si+24], ax
:0001.000F 14CC adc al, CC
:0001.0011 0F0000 sldt [bx+si]
:0001.0014 83C408 add sp, 0008
:0001.0017 F7D8 neg ax
:0001.0019 33C0 xor ax, ax
:0001.001B 40 inc ax
:0001.001C 894424 mov [si+24], ax
:0001.001F 1400 adc al, 44
能力值:
( LV2,RANK:10 )
7 楼
有点晕了,怎么上面两个 转成的汇编语言不一样啊?
还有老大,用OD怎么转?
能力值:
( LV8,RANK:130 )
8 楼
ollydbg 的强项是调试,做内存copy 还不太方便。winhex 在这方面功能很强,像楼上所说先用
winhex 把你要反汇编内容构造成一个二进制文件。如果想看它的反汇编码,建议你用hiew 吧。
打开该文件,你可以text,hex,及代码三种模式切换。
不明白你取到16进制hex码后的具体意图,做个参考吧。
能力值:
( LV2,RANK:10 )
9 楼
是有两个文件,一个原版,一个pj,我用Beyond Compare 比较出差异,这个软件可以显出十六进制,我想返回到软件,看看pj改了哪些地方。
能力值:
( LV2,RANK:10 )
10 楼
只修改了2个地方 je; xor
能力值:
( LV2,RANK:10 )
11 楼
直接开2个OD,一个原版,一个破解,
根据BC2的提示找到偏移地址
一目了然
能力值:
( LV2,RANK:10 )
12 楼
BC2提示是什么?能说下具体操作吗?
能力值:
( LV2,RANK:10 )
13 楼
Beyond Compare
能力值:
( LV2,RANK:10 )
14 楼
你说的可能是对的,但我看上去好像不只改了这么少哦
能力值:
( LV2,RANK:10 )
15 楼
用OD载入,为什么找不到这几行地址,OD能搜索吗?
能力值:
( LV2,RANK:10 )
16 楼
用Hiew反汇编后和W32DASM反汇编代码一样!而且我觉得正如上面一位坛友说的一样,这不是代码的开始,请联系上下文全面融汇理解!
能力值:
( LV2,RANK:10 )
17 楼
是不是加过壳了啊