一、破解方法:
1. 先安装serial-monitor.exe
2. 将res.dll覆盖掉安装目录下的同名文件
二、版本说明:
Device Monitoring Studio 6.02(Serial Monitor)
三、破解说明:
本破解使过期时间永远停留在了11天,软件仍然是全功能版.
本软件将license校验信息放在了驱动里面,ollydbg是进入不了ring0的,我的方法是在驱动检验后
将信息从ring0返回到ring3的线程时截获并修改,以下是部分代码:
跟踪发现res.dll处理注册信息,以下代码都是res.dll中的
1.时间停止
10018607 |. 51 push ecx ; /pOverlapped => NULL
10018608 |. 897C24 1C mov dword ptr [esp+1C], edi ; |
1001860C |. 8B78 04 mov edi, dword ptr [eax+4] ; |
1001860F |. 897C24 20 mov dword ptr [esp+20], edi ; |
10018613 |. 8B78 08 mov edi, dword ptr [eax+8] ; |
10018616 |. 897C24 24 mov dword ptr [esp+24], edi ; |
1001861A |. 8B40 0C mov eax, dword ptr [eax+C] ; |
1001861D |. 8D4C24 34 lea ecx, dword ptr [esp+34] ; |
10018621 |. 51 push ecx ; |pBytesReturned
10018622 |. 6A 24 push 24 ; |OutBufferSize = 24 (36.)
10018624 |. 894424 30 mov dword ptr [esp+30], eax ; |
10018628 |. 8D4424 14 lea eax, dword ptr [esp+14] ; |
1001862C |. 50 push eax ; |OutBuffer
1001862D |. 6A 24 push 24 ; |InBufferSize = 24 (36.)
1001862F |. 8BC8 mov ecx, eax ; |
10018631 |. 51 push ecx ; |InBuffer
10018632 |. 68 10201B83 push 831B2010 ; |IoControlCode = 831B2010
10018637 |. 52 push edx ; |hDevice
10018638 |. FF15 8CF10110 call dword ptr [<&KERNEL32.DeviceIoCo>; \DeviceIoControl
1001863E |. 85C0 test eax, eax
10018640 |. 74 15 je short 10018657
10018642 |. 837C24 30 24 cmp dword ptr [esp+30], 24
10018647 |. 75 0E jnz short 10018657
10018649 C746 08 0B000>mov dword ptr [esi+8], 0B ; 从驱动返回剩余天数
10018650 C746 04 02000>mov dword ptr [esi+4], 2 ; 标记位,2为试用版
10018657 |> 5F pop edi
10018658 |. 5E pop esi
10018659 |> 83C4 24 add esp, 24
1001865C \. C2 0400 retn 4
2.消除弹窗提示
1000C93F |. 837C24 64 00 |cmp dword ptr [esp+64], 0
1000C944 |. 74 12 |je short 1000C958
1000C946 |. 8B4424 24 |mov eax, dword ptr [esp+24]
1000C94A 83F8 01 cmp eax, 1 ; 消除弹窗提示
1000C94D |. 74 09 |je short 1000C958
1000C94F |. 83F8 03 |cmp eax, 3
1000C952 |. 0F85 8D000000 |jnz 1000C9E5
四、后记:
只是对程序做了小小的改动,并没有深入分析,俺没这能力,不过这些对我进行串口调试已经足够了。
感觉这个软件做串口调试简直是太棒了!
评论30
最新资源