首页
社区
课程
招聘
[旧帖] [求助]求高手帮忙看段OD代码 0.00雪花
发表于: 2010-3-3 15:43 1463

[旧帖] [求助]求高手帮忙看段OD代码 0.00雪花

2010-3-3 15:43
1463
下面是OD中一段调用存储过程 usp_Save_Char_Info_E 的代码 。我想找出传入的第26个参数是哪个。请高手帮下忙,谢了
00423272  |.  FF15 DC004600      CALL DWORD PTR DS:[<&KERNEL32.GetTickCou>; [GetTickCount
00423278  |.  8BC5               MOV EAX,EBP
0042327A  |.  C74424 14 01000000 MOV DWORD PTR SS:[ESP+14],1
00423282  |.  E8 0962FEFF        CALL ps_dbAge.00409490
00423287  |.  8BCE               MOV ECX,ESI
00423289  |.  E8 A2B40100        CALL ps_dbAge.0043E730
0042328E  |.  D985 A4000000      FLD DWORD PTR SS:[EBP+A4]
00423294  |.  0FBF95 94000000    MOVSX EDX,WORD PTR SS:[EBP+94]
0042329B  |.  52                 PUSH EDX
0042329C  |.  0FBF85 90000000    MOVSX EAX,WORD PTR SS:[EBP+90]
004232A3  |.  50                 PUSH EAX
004232A4  |.  8B8D 8C000000      MOV ECX,DWORD PTR SS:[EBP+8C]
004232AA  |.  51                 PUSH ECX
004232AB  |.  8B95 88000000      MOV EDX,DWORD PTR SS:[EBP+88]
004232B1  |.  52                 PUSH EDX
004232B2  |.  8B85 84000000      MOV EAX,DWORD PTR SS:[EBP+84]
004232B8  |.  50                 PUSH EAX
004232B9  |.  8B8D 80000000      MOV ECX,DWORD PTR SS:[EBP+80]
004232BF  |.  0FB695 AE000000    MOVZX EDX,BYTE PTR SS:[EBP+AE]
004232C6  |.  0FB685 AD000000    MOVZX EAX,BYTE PTR SS:[EBP+AD]
004232CD  |.  51                 PUSH ECX
004232CE  |.  0FB68D AC000000    MOVZX ECX,BYTE PTR SS:[EBP+AC]
004232D5  |.  52                 PUSH EDX
004232D6  |.  0FBF95 AA000000    MOVSX EDX,WORD PTR SS:[EBP+AA]
004232DD  |.  50                 PUSH EAX
004232DE  |.  0FB785 A8000000    MOVZX EAX,WORD PTR SS:[EBP+A8]
004232E5  |.  51                 PUSH ECX
004232E6  |.  52                 PUSH EDX
004232E7  |.  50                 PUSH EAX
004232E8  |.  8B4D 78            MOV ECX,DWORD PTR SS:[EBP+78]
004232EB  |.  8B55 74            MOV EDX,DWORD PTR SS:[EBP+74]
004232EE  |.  0FBF85 9A000000    MOVSX EAX,WORD PTR SS:[EBP+9A]
004232F5  |.  83EC 18            SUB ESP,18
004232F8  |.  DD5C24 10          FSTP QWORD PTR SS:[ESP+10]
004232FC  |.  D985 A0000000      FLD DWORD PTR SS:[EBP+A0]
00423302  |.  DD5C24 08          FSTP QWORD PTR SS:[ESP+8]
00423306  |.  D985 9C000000      FLD DWORD PTR SS:[EBP+9C]
0042330C  |.  DD1C24             FSTP QWORD PTR SS:[ESP]
0042330F  |.  51                 PUSH ECX
00423310  |.  0FBF8D 98000000    MOVSX ECX,WORD PTR SS:[EBP+98]
00423317  |.  52                 PUSH EDX
00423318  |.  0FBF95 C0000000    MOVSX EDX,WORD PTR SS:[EBP+C0]
0042331F  |.  50                 PUSH EAX
00423320  |.  0FBF85 BE000000    MOVSX EAX,WORD PTR SS:[EBP+BE]
00423327  |.  51                 PUSH ECX
00423328  |.  0FBF8D BC000000    MOVSX ECX,WORD PTR SS:[EBP+BC]
0042332F  |.  52                 PUSH EDX
00423330  |.  0FBF95 BA000000    MOVSX EDX,WORD PTR SS:[EBP+BA]
00423337  |.  50                 PUSH EAX
00423338  |.  0FBF85 B6000000    MOVSX EAX,WORD PTR SS:[EBP+B6]
0042333F  |.  51                 PUSH ECX
00423340  |.  0FBF8D B4000000    MOVSX ECX,WORD PTR SS:[EBP+B4]
00423347  |.  52                 PUSH EDX
00423348  |.  0FBF95 B8000000    MOVSX EDX,WORD PTR SS:[EBP+B8]
0042334F  |.  50                 PUSH EAX
00423350  |.  0FBF85 B2000000    MOVSX EAX,WORD PTR SS:[EBP+B2]
00423357  |.  51                 PUSH ECX
00423358  |.  0FBF8D B0000000    MOVSX ECX,WORD PTR SS:[EBP+B0]
0042335F  |.  52                 PUSH EDX
00423360  |.  0FBF55 72          MOVSX EDX,WORD PTR SS:[EBP+72]
00423364  |.  50                 PUSH EAX
00423365  |.  0FBF45 70          MOVSX EAX,WORD PTR SS:[EBP+70]
00423369  |.  51                 PUSH ECX
0042336A  |.  0FB74D 6E          MOVZX ECX,WORD PTR SS:[EBP+6E]
0042336E  |.  52                 PUSH EDX
0042336F  |.  8B55 60            MOV EDX,DWORD PTR SS:[EBP+60]
00423372  |.  50                 PUSH EAX
00423373  |.  51                 PUSH ECX
00423374  |.  52                 PUSH EDX
00423375  |.  8D8424 B8020000    LEA EAX,DWORD PTR SS:[ESP+2B8]
0042337C  |.  68 40894600        PUSH ps_dbAge.00468940                   ;  ASCII "{?=call usp_Save_Char_Info_E(%d,%d, %d,%d, %d,%d,%d,%d,%d,%d, %d,%d,%d, %d,%d, %d,%d, %f,%f,%f, %d,%d,%d,%d,%d, %d,%d,%d,%d, %u,%u)}"
00423381  |.  50                 PUSH EAX
00423382  |.  E8 F8100200        CALL ps_dbAge.0044447F

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (13)
雪    币: 287
活跃值: (25)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
2
好像是对应
004232CD  |.  51                 PUSH ECX
2010-3-3 16:27
0
雪    币: 7
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
哦。我试试。谢谢楼上的朋友
2010-3-3 17:58
0
雪    币: 7
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
另外请问下这个 PUSH ECX是把字压入堆栈的意思吧。那被压入的值是哪个呢。能告诉下吗,谢谢
2010-3-3 18:02
0
雪    币: 287
活跃值: (25)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
5
在这句断点,看ecx
2010-3-3 18:04
0
雪    币: 7
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
请问下能不能直接在这里给这个被压入堆栈的ECX赋个值呢。比如压50进这个堆栈。是不是这样改PUSH ECX 32(50的十六进制)
2010-3-3 18:12
0
雪    币: 287
活跃值: (25)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
7
可在调试器的寄存器或其它窗口修改ecx
2010-3-3 18:31
0
雪    币: 7
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
哦。不太明白你的说的方法怎么修改。我才学的不太会,呵呵
2010-3-3 18:38
0
雪    币: 116
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
PUSH ECX
2010-3-3 18:39
0
雪    币: 7
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
这样行吗  

MOV ECX,32
push ecx

这样能实瑞ECX等于32这个值 ,再传给存储器吗
2010-3-3 18:45
0
雪    币: 7
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
或者这这样改行吗

004232B9  |.  8B8D 80000000      MOV ECX,DWORD PTR SS:[EBP+80]
004232BF  |.  0FB695 AE000000    MOVZX EDX,BYTE PTR SS:[EBP+AE]
004232C6  |.  0FB685 AD000000    MOVZX EAX,BYTE PTR SS:[EBP+AD]
004232CD  |.  51                 PUSH ECX

把上面的代码改成这样
004232B9  |.  8B8D 80000000      MOV ECX,32//改这里
004232BF  |.  0FB695 AE000000    MOVZX EDX,BYTE PTR SS:[EBP+AE]
004232C6  |.  0FB685 AD000000    MOVZX EAX,BYTE PTR SS:[EBP+AD]
004232CD  |.  51                 PUSH ECX

请问这样可以吗
2010-3-3 18:48
0
雪    币: 287
活跃值: (25)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
12
如果你的工具支持,可以这样做。我没有试过MOV ECX,32生成的机器码是怎样的,如果MOV ECX,32生成的机器码长度比原来的短,还需要补充1个或多个NOP指令。
如果软件只是你自己使用,可以直接在调试器中修改ECX的值。通常的调试器都支持直接修改寄存器的值,不过修改方式可能不同
2010-3-3 23:00
0
雪    币: 7
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
我主要是搞来自己玩。谢谢楼上的朋友。我试试
2010-3-4 12:24
0
雪    币: 7
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
你好。按照你说改这个ECX的值后是可以成功传入我改后的值到存储过程。但有一个问题就是如果这样改 MOV ECX,30的话这个这个ECX的值变成固定的30了。无论我输入的是多少都是多少。我想应该有一个比较的吧 ,请问下这个比较的地方在哪里。能告诉我吗。
2010-3-4 12:43
0
游客
登录 | 注册 方可回帖
返回
//