爱技术

 找回密码
 注册会员

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

搜索
查看: 35713|回复: 20
收起左侧

请大师帮忙,正在学习SFE,新手慎入

[复制链接]
发表于 2006-1-16 18:34:48 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册会员 微信登录

x

这是原补丁:
0x295822: A8C02D1C FABF208D
0x1F8D20: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF D7403600F2F1740D8AF104E0A8C02D13
0x1F8D30: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF FAC92658FABF408DDB00FFFFFFFFFFFF
0x1F8D40: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF A8C02D0988C0DAA3807798C04840CC00
0x1F8D50: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF BB04FAC92658FAC95E5888C0E6FCB000
0x1F8D60: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 88C0E6FCD420E6FD3200E00EE6FFB000
0x1F8D70: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 1BEFF2FE0EFE00CEE6FE8829E6FF3200
0x1F8D80: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DAC7B483080298C0CB00FFFFFFFFFFFF


D:\1>sfe d 1.txt,1f8d20,101 a00000,p

;Siemens Flash Explorer v2.51c (c)Dec.03 by RizaPN <rizapn@yahoo.com>

;File 1.txt (pos=0x0,sz=0x283,rd=0x283) buffered
;Disassembly: offset=0x0, size=0x283, baseAddr=0xA00000

org     0BF8D20h

        extp    #36h, #1
        mov     r1, 0D74h
        jb      r1.14, loc_1F8D34
        mov     r12, [r0]
        jmpr    cc_Z, loc_1F8D56
        jmps    0C9h, 5826h

loc_1F8D34:
        jmps    0BFh, 8D40h

        rets


end


我修改地址后的补丁:
0x295822: A8C02D1C FABF8A8C
0x1F8C40: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF D7403600F2F1740D8AF10460A8C02D13
0x1F8C50: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF FAC92658FABF408CDB00FFFFFFFFFFFF
0x1F8C60: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF A8C02D0988C0DAA3807798C04840CC00
0x1F8C70: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF BB04FAC92658FAC95E5888C0E6FCB000
0x1F8C80: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 88C0E6FCD420E6FD3200E00EE6FFB000
0x1F8C90: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 1BEFF2FE0EFE00CEE6FE8829E6FF3200
0x1F8CA0: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DAC7B483080298C0CB00FFFFFFFFFFFF


D:\1>sfe d 2.txt,1f8c40,101 a00000,p
;Siemens Flash Explorer v2.51c (c)Dec.03 by RizaPN <rizapn@yahoo.com>

;File 2.txt (pos=0x0,sz=0x238,rd=0x238) buffered
;Disassembly: offset=0x0, size=0x238, baseAddr=0xA00000

org     0BF8C40h

        extp    #36h, #1
        mov     r1, 0D74h
        jb      r1.6, loc_1F8C54
        mov     r12, [r0]
        jmpr    cc_Z, loc_1F8C76
        jmps    0C9h, 5826h

loc_1F8C54:
        jmps    0BFh, 8C40h

        rets


end


上面的修改对不对???
我发现下面几个地方不一样 有问题吗?谁能帮解释一下
jb      r1.6, loc_1F8C54
jmpr    cc_Z, loc_1F8C76
jmps    0BFh, 8D40h


[ 本帖最后由 寒山 于 2006-1-16 18:57 编辑 ]
 楼主| 发表于 2006-1-16 18:44:11 | 显示全部楼层
我还这样修改:
0x295822: A8C02D1C FABF8A8C
0x1F8C40: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF A8C02D0988C0DAA3807798C04840CC00
0x1F8C50: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF BB04FAC92658FAC95E5888C0E6FCB000
0x1F8C60: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 88C0E6FCD420E6FD3200E00EE6FFB000
0x1F8C70: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 1BEFF2FE0EFE00CEE6FE8829E6FF3200
0x1F8C80: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DAC7B483080298C0CB00FFFFFFFFFFFF
0x1F8C8A: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF D7403600F2F1740D8AF10460A8C02D13
0x1F8C9A: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF FAC92658FABF408CDB00FFFFFFFFFFFF

D:\1>sfe d 3.txt,1f8c40,101 a00000,p

;Siemens Flash Explorer v2.51c (c)Dec.03 by RizaPN <rizapn@yahoo.com>

;File 3.txt (pos=0x0,sz=0x236,rd=0x236) buffered
;Disassembly: offset=0x0, size=0x236, baseAddr=0xA00000

org     0BF8C40h

        mov     r12, [r0]
        jmpr    cc_Z, loc_1F8C56
        mov     [-r0], r12
        calls   0A3h, 7780h
        mov     r12, [r0+]
        cmp     r4, #0
        nop
        callr   loc_1F8C5A
        jmps    0C9h, 5826h

loc_1F8C56:
        jmps    0C9h, 585Eh

loc_1F8C5A:
        mov     [-r0], r12
        mov     r12, #0B0h
        mov     [-r0], r12
        mov     r12, #20D4h
        mov     r13, #32h
        mov     r14, #0
        mov     r15, #0B0h
        mulu    r14, r15
        mov     r14, 0FE0Eh
        add     r12, r14
        mov     r14, #2988h
        mov     r15, #32h
        calls   0C7h, 83B4h
        add     r0, #2
        mov     r12, [r0+]
        ret

        extp    #36h, #1
        mov     r1, 0D74h
        jb      r1.6, loc_1F8C9E
        mov     r12, [r0]
        jmpr    cc_Z, loc_1F8CC0
        jmps    0C9h, 5826h

loc_1F8C9E:
        jmps    0BFh, 8C40h

        rets


end


似乎错了,但不明白为什么。

[ 本帖最后由 寒山 于 2006-1-16 19:00 编辑 ]
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-1-16 20:31:32 | 显示全部楼层
自己顶,在线等
回复 支持 反对

使用道具 举报

发表于 2006-1-16 20:38:42 | 显示全部楼层
我不是会很用SFE这个!
回复 支持 反对

使用道具 举报

发表于 2006-1-16 20:49:16 | 显示全部楼层
怎么不去SPGC论坛发
回复 支持 反对

使用道具 举报

发表于 2006-1-16 20:52:05 | 显示全部楼层
rg        0BF8D20h

        extp        #36h, #1
        mov        r1, 0D74h
        jb        r1.14, loc_1F8D34
        mov        r12, [r0]
        jmpr        cc_Z, loc_1F8D56
        jmps        0C9h, 5826h

loc_1F8D34:
        jmps        0BFh, 8D40h

        rets

        bset        r15.15
        bset        r15.15
        bset        r15.15
        mov        r12, [r0]
        jmpr        cc_Z, loc_1F8D56
        mov        [-r0], r12
        calls        0A3h, 7780h
        mov        r12, [r0+]
        cmp        r4, #0
        nop
        callr        loc_1F8D5A
        jmps        0C9h, 5826h

loc_1F8D56:
        jmps        0C9h, 585Eh

loc_1F8D5A:
        mov        [-r0], r12
        mov        r12, #0B0h
        mov        [-r0], r12
        mov        r12, #20D4h
        mov        r13, #32h
        mov        r14, #0
        mov        r15, #0B0h
        mulu        r14, r15
        mov        r14, 0FE0Eh
        add        r12, r14
        mov        r14, #2988h
        mov        r15, #32h
        calls        0C7h, 83B4h
        add        r0, #2
        mov        r12, [r0+]
        ret

end

**********************************************************************************

base 0A00000h
org        0C95822h

        jmps        0BFh, 8C8Ah


end




org        0BF8C40h

        mov        r12, [r0]
        jmpr        cc_Z, loc_1F8C56
        mov        [-r0], r12
        calls        0A3h, 7780h
        mov        r12, [r0+]
        cmp        r4, #0
        nop
        callr        loc_1F8C5A
        jmps        0C9h, 5826h

loc_1F8C56:
        jmps        0C9h, 585Eh

loc_1F8C5A:
        mov        [-r0], r12
        mov        r12, #0B0h
        mov        [-r0], r12
        mov        r12, #20D4h
        mov        r13, #32h
        mov        r14, #0
        mov        r15, #0B0h
        mulu        r14, r15
        mov        r14, 0FE0Eh
        add        r12, r14
        mov        r14, #2988h
        mov        r15, #32h
        calls        0C7h, 83B4h
        add        r0, #2
        mov        r12, [r0+]
        ret

        extp        #36h, #1
        mov        r1, 0D74h

end




org        0BF8C8Ah

        extp        #36h, #1
        mov        r1, 0D74h
        jb        r1.6, loc_1F8C9E
        mov        r12, [r0]
        jmpr        cc_Z, loc_1F8CC0
        jmps        0C9h, 5826h

loc_1F8C9E:
        jmps        0BFh, 8C40h

        rets
end
回复 支持 反对

使用道具 举报

发表于 2006-1-16 20:57:05 | 显示全部楼层
要这样
sfe d 1.txt,1f8d20,100 a00000,p
不能用101参数。
回复 支持 反对

使用道具 举报

发表于 2006-1-16 21:00:23 | 显示全部楼层
或者
sfe d 1.txt,295822,4 A00000,p>temp.txt
sfe d 1.txt,1F8D20,70 A00000,p>>temp.txt

[ 本帖最后由 wwssff 于 2006-1-16 21:02 编辑 ]
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-1-16 21:04:41 | 显示全部楼层
100
101
4
70

大师能说说代表什么吗?
回复 支持 反对

使用道具 举报

发表于 2006-1-16 21:08:03 | 显示全部楼层
回复 支持 反对

使用道具 举报

发表于 2006-1-16 21:12:30 | 显示全部楼层
100表示反汇编&H100个字节,101表示在&H101个字节内遇到返回就结束, 4和70也是反汇编的长度,你的代码有两段,分别是4字节和70H字节
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-1-16 22:02:40 | 显示全部楼层
我原程序
0x27D420: FFFFFFFFFFFFFFFF E6F110008810E6FC
0x27D428: FFFFFFFFFFFFFFFF 403DE6FD1100E6FE
0x27D430: FFFFFFFFFFFFFFFF 5E14E6FF1F03DAC7
0x27D438: FFFFFFFFFFFFFFFF 9E850802D7403600
0x27D440: FFFFFFFFFFFFFFFF C2F16203E6FD1100
0x27D448: FFFFFFFFFFFFFFFF 46F12A002D03DC4D
0x27D450: FFFFFFFFFFFFFFFF F7F24A3DE6FC403D
0x27D458: FFFFFFFFFFFFFFFF E01EFABA96E7613A
0x27D460: FFFFFFFFFFFFFFFF 2F6A6176612F732F
0x27D468: FFFFFFFFFFFFFFFF 782E6A616400FFFF


sfe d 1.txt,27d420,100 a00000>1.asm
得到:
;Siemens Flash Explorer v2.51c (c)Dec.03 by RizaPN <rizapn@yahoo.com>

;File 1.txt (pos=0x0,sz=0x1C0,rd=0x1C0) buffered
;Disassembly: offset=0x0, size=0x1C0, baseAddr=0xA00000

27D420: E6 F1 10 00 :         mov        r1, #10h
27D424: 88 10       :         mov        [-r0], r1
27D426: E6 FC 40 3D :         mov        r12, #3D40h
27D42A: E6 FD 11 00 :         mov        r13, #11h
27D42E: E6 FE 5E 14 :         mov        r14, #145Eh
27D432: E6 FF 1F 03 :         mov        r15, #31Fh
27D436: DA C7 9E 85 :         calls        0C7h, loc_C7859E
27D43A: 08 02       :         add        r0, #2
27D43C: D7 40 36 00 :         extp        #36h, #1
27D440: C2 F1 62 03 :         movbz        r1, 0D8362h        ; (0036:0362)
27D444: E6 FD 11 00 :         mov        r13, #11h
27D448: 46 F1 2A 00 :         cmp        r1, #2Ah
27D44C: 2D 03       :         jmpr        cc_Z, loc_27D454
27D44E: DC 4D       :         extp        r13, #1
27D450: F7 F2 4A 3D :         movb        3D4Ah, rl1
27D454: E6 FC 40 3D : loc_27D454:
27D454: E6 FC 40 3D :         mov        r12, #3D40h
27D458: E0 1E       :         mov        r14, #1
27D45A: FA BA 96 E7 :         jmps        0BAh, loc_BAE796
;------------------------------------------------------------
27D45E: 61 3A       :         andb        rh1, rl5
27D460: 2F 6A       :         bset        mem_FED4.2
27D462: 61 76       :         andb        rh3, rl3
27D464: 61 2F       :         andb        rl1, rh7
27D466: 73 2F 78 2E :         orb        mem_FE5E, 2E78h
27D46A: 6A 61 64 00 :         band        PECC4.0, PECC1.0
27D46E: FF FF       :         bset        r15.15


然后我在
sfe a 1.asm p >1.vkp
得到:

;Siemens Flash Explorer v2.51c (c)Dec.03 by RizaPN <rizapn@yahoo.com>

;File 1.asm (pos=0x0,sz=0x50A,rd=0x50A) buffered

Error 'Symbol redefined'
Line 23: "27d454: "

1 error(s) found (0 secs) !


这是为什么啊?
我想地址改移,应该怎么做?


[ 本帖最后由 寒山 于 2006-1-16 22:08 编辑 ]
回复 支持 反对

使用道具 举报

发表于 2006-1-16 22:18:32 | 显示全部楼层
哈哈,我是进来学习的。
对sfe也不大会,只知道汇编成VKP的源码需要指定基址base和汇编起始地址org。

[ 本帖最后由 beyond 于 2006-1-16 22:20 编辑 ]
回复 支持 反对

使用道具 举报

发表于 2006-1-16 22:25:46 | 显示全部楼层
不能带地址的.
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-1-16 22:30:11 | 显示全部楼层
重新做了一边不带地址的:
sfe d 1.txt,27d420,100 a00000,P>1.asm
sfe a 1.asm p >1.vkp
得到:

;Siemens Flash Explorer v2.51c (c)Dec.03 by RizaPN <rizapn@yahoo.com>

;File 1.asm (pos=0x0,sz=0x28A,rd=0x28A) buffered

Error 'Illegal operation'
Line 33: "orb 0FE5Eh, 2E78h"

1 error(s) found (0 secs) !


还是不明白
回复 支持 反对

使用道具 举报

发表于 2006-1-17 12:55:44 | 显示全部楼层
不是可逆的, 有些数据段不能反汇编成功的, 必须把数据结构猜出来, orb确实没这个命令。
回复 支持 反对

使用道具 举报

发表于 2006-1-17 15:01:44 | 显示全部楼层
原帖由 wwssff 于 2006-1-17 12:55 发表
不是可逆的, 有些数据段不能反汇编成功的, 必须把数据结构猜出来, orb确实没这个命令。

基本可逆。少数反汇编不成功的,与原补丁比较一下就可看出,再手工修改就可以了。
orb 应跟这样的语句:  mem_FE5E, 2E78h
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-1-17 15:34:01 | 显示全部楼层
原帖由 Xinshou 于 2006-1-17 15:01 发表

基本可逆。少数反汇编不成功的,与原补丁比较一下就可看出,再手工修改就可以了。
orb 应跟这样的语句:  mem_FE5E, 2E78h


还是不对啊,也许真的不行
;Siemens Flash Explorer v2.51c (c)Dec.03 by RizaPN <rizapn@yahoo.com>

;File 1.asm (pos=0x0,sz=0x28D,rd=0x28D) buffered

Error 'Illegal operation'
Line 33: "orb mem_FE5E, 2E78h"

1 error(s) found (0 secs) !
回复 支持 反对

使用道具 举报

发表于 2006-1-17 15:49:49 | 显示全部楼层
http://mobile.0110.cn/viewthread ... ge=1&highlight=
真的有这个指令啊, 不过你那个地方是数据段, 反汇编没意义的, 用DATA语句吧.
回复 支持 反对

使用道具 举报

发表于 2006-1-17 16:09:39 | 显示全部楼层
27D460: 2F 6A       :         bset        mem_FED4.2
27D462: 61 76       :         andb        rh3, rl3
27D464: 61 2F       :         andb        rl1, rh7
27D466: 73 2F 78 2E :         orb        mem_FE5E, 2E78h
27D46A: 6A 61 64 00 :         band        PECC4.0, PECC1.0
27D46E: FF FF       :         bset        r15.15

以上这部分代码反汇编后,再汇编不出原样来,好像存在问题!但是,仔细看看这些代码好像是无用的!汇编1.asm时,先删去这部分算了,在得出的vkp上直接将原来的照抄上去就是了

比如:
0x295850: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF E6F110008810E6FC403DE6FD1100E6FE
0x295860: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 5E14E6FF1F03DAC79E850802D7403600
0x295870: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF C2F16203E6FD110046F12A002D03DC4D
0x295880: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF F7F24A3DE6FC403DE01EFABA96E7613A
0x295890: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 2F6A6176612F732F782E6A616400FFFF
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员 微信登录

本版积分规则

小黑屋|Archiver|手机版|爱技术 ( 沪ICP备08115260号-3 )

GMT+8, 2025-7-26 10:08

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2020, Tencent Cloud.

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