首页
社区
课程
招聘
[旧帖] [求助]请教各位大侠!这段代码怎么解决! 0.00雪花
发表于: 2008-6-18 21:44 3064

[旧帖] [求助]请教各位大侠!这段代码怎么解决! 0.00雪花

2008-6-18 21:44
3064
0050740E  |> \C605 A2985F00>MOV BYTE PTR DS:[5F98A2],0
00507415  |.  6A 00         PUSH 0
00507417  |.  6A 00         PUSH 0
00507419  |.  6A 00         PUSH 0
0050741B  |.  6A 00         PUSH 0
0050741D  |.  6A 00         PUSH 0
0050741F  |.  68 65785000   PUSH 3+WinCNC.00507865
00507424  |.  E8 27620500   CALL 3+WinCNC.0055D650
00507429  |.  A3 B0985F00   MOV DWORD PTR DS:[5F98B0],EAX
0050742E  |>  0FBE15 A2985F>/MOVSX EDX,BYTE PTR DS:[5F98A2]     <=====(如果这里插入狗)
00507435  |.  85D2          |TEST EDX,EDX
00507437  |.  75 02         |JNZ SHORT 3+WinCNC.0050743B
00507439  |.^ EB F3         \JMP SHORT 3+WinCNC.0050742E
0050743B  |>  0FBE05 39E3AB>MOVSX EAX,BYTE PTR DS:[1ABE339]     <=====(这里拔出狗,软件运行正常)
00507442  |.  83F8 01       CMP EAX,1
00507445  |.  7C 14         JL SHORT 3+WinCNC.0050745B
00507447  |.  6A 00         PUSH 0                        

   初学,调试了几天还是不明!请教各位大侠!这段代码怎么解决!
   这是个工控软件,需要带硬件运行。软件还带个MicroDog USB狗!!
   这大概是在代码的中段!我在0050742E <===> 0050743B下F2断点,只要在这小段循环里有狗软件运行正常!但如果反过来在这个循环里拔出狗软件运行后就报错误!

   
所指向的地址有如下变化:
   
   DS:[5F98A2]
   有狗:
   005F98A2    0100            ADD DWORD PTR DS:[EAX],EAX
   005F98A4    0000            ADD BYTE PTR DS:[EAX],AL
   005F98A6    0000            ADD BYTE PTR DS:[EAX],AL
   005F98A8    843C5B          TEST BYTE PTR DS:[EBX+EBX*2],BH
   005F98AB    0070 00         ADD BYTE PTR DS:[EAX],DH
   005F98AE    0000            ADD BYTE PTR DS:[EAX],AL
   005F98B0    C038 10         SAR BYTE PTR DS:[EAX],10
   005F98B3    0201            ADD AL,BYTE PTR DS:[ECX]
   005F98B5    0000            ADD BYTE PTR DS:[EAX],AL
   005F98B7    0017            ADD BYTE PTR DS:[EDI],DL
   005F98B9    0002            ADD BYTE PTR DS:[EDX],AL
   005F98BB    0000            ADD BYTE PTR DS:[EAX],AL
   005F98BD    0300            ADD EAX,DWORD PTR DS:[EAX]
   
   无狗:
   005F98A2    0100            ADD DWORD PTR DS:[EAX],EAX
   005F98A4    0000            ADD BYTE PTR DS:[EAX],AL
   005F98A6    0000            ADD BYTE PTR DS:[EAX],AL
   005F98A8    843C5B          TEST BYTE PTR DS:[EBX+EBX*2],BH
   005F98AB    0070 00         ADD BYTE PTR DS:[EAX],DH
   005F98AE    0000            ADD BYTE PTR DS:[EAX],AL
   005F98B0    C038 10         SAR BYTE PTR DS:[EAX],10
   005F98B3    0200            ADD AL,BYTE PTR DS:[EAX]
   005F98B5    0000            ADD BYTE PTR DS:[EAX],AL
   005F98B7    0000            ADD BYTE PTR DS:[EAX],AL
   005F98B9    0000            ADD BYTE PTR DS:[EAX],AL
   005F98BB    0000            ADD BYTE PTR DS:[EAX],AL
   005F98BD    0000            ADD BYTE PTR DS:[EAX],AL

  在:005F98B3、005F98B7、005F98B9、005F98BD 这四个地自址数据有变化。

   DS:[1ABE339]
   有狗:
   01ABE339    0000            ADD BYTE PTR DS:[EAX],AL
   01ABE33B    006A BA         ADD BYTE PTR DS:[EDX-46],CH
   01ABE33E    87E8            XCHG EAX,EBP
   01ABE340    E5 E2           IN EAX,0E2                               ; I/O 命令
   01ABE342    C6              ???                                      ; 未知命令
   01ABE343    0800            OR BYTE PTR DS:[EAX],AL
   01ABE345    0000            ADD BYTE PTR DS:[EAX],AL
   
   无狗:
   01ABE339    0000            ADD BYTE PTR DS:[EAX],AL
   01ABE33B    0000            ADD BYTE PTR DS:[EAX],AL
   01ABE33D    0000            ADD BYTE PTR DS:[EAX],AL
   01ABE33F    0000            ADD BYTE PTR DS:[EAX],AL
   01ABE341    0000            ADD BYTE PTR DS:[EAX],AL
   01ABE343    0000            ADD BYTE PTR DS:[EAX],AL
   01ABE345    0000            ADD BYTE PTR DS:[EAX],AL

   在:01ABE33B、01ABE33E、01ABE340、01ABE342、01ABE343 这五个地自址数据有变化。

   请教各位大侠!赐教!

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
请教各位大侠!自己顶一下!!
2008-6-19 19:31
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
晕啊 搞工控的高手啊
2008-6-19 21:04
0
游客
登录 | 注册 方可回帖
返回
//