工具
- notepad++
- HxD Hex Editor(16进制编辑器)
- dumpbin (Visual Studio自带)
- lib (Visual Studio自带)
步骤
- 导出obj文件名列表:
lib /LIST sqlapiusd.lib > liblist.txt
- 解压出obj文件:
mkdir objs & lib sqlapiusd.lib /EXTRACT:.\objs\SQLAPI.obj
- 查找目标函数:按函数名或其他关键字查找出对应的目标obj文件
- 显示obj文件详情(可选):
dumpbin /ALL SQLAPI.obj
- 反编译obj文件为汇编:
dumpbin /disasm SQLAPI.obj > SQLAPI.asm
查看相应的代码并确定修改项

- 使用16进制编辑器根据代码字节定位到目标函数,如'85 C0 75 1F 6A 00 8B 0D 00 00 00 00'

- 根据汇编指令和机器码的对应关系,修改机器码指令
75 -> 74
并保存

- 保存修改的obj到lib文件:
lib /OUT:sqlapiusd.lib ../sqlapiusd.lib SQLAPI.obj
参考
熟练工手操
D:\lib\crack>lib sqlapisd.lib /EXTRACT:SQLAPI.OBJ
Microsoft (R) Library Manager Version 14.27.29111.0
Copyright (C) Microsoft Corporation. All rights reserved.
D:\lib\crack>dumpbin /disasm SQLAPI.obj > SQLAPI.asm
D:\lib\crack>dumpbin /disasm SQLAPI.obj > SQLAPI-u.asm
?CheckTrial@@YAXXZ (void __cdecl CheckTrial(void)):
0000A5F0: 55 push ebp
0000A5F1: 8B EC mov ebp,esp
0000A5F3: 0F B6 05 00 00 00 movzx eax,byte ptr [?bCheckedTrial@?1??CheckTrial@@YAXXZ@4_NA]
00
0000A5FA: 85 C0 test eax,eax
0000A5FC: 75 1F jne 0000A61D
0000A5FE: 6A 00 push 0
0000A600: 8B 0D 00 00 00 00 mov ecx,dword ptr [?sTrialCaption@@3PBDB]
0000A606: 51 push ecx
0000A607: 8B 15 00 00 00 00 mov edx,dword ptr [?sTrialText@@3PBDB]
0000A60D: 52 push edx
0000A60E: 6A 00 push 0
0000A610: FF 15 00 00 00 00 call dword ptr [__imp__MessageBoxA@16]
0000A616: C6 05 00 00 00 00 mov byte ptr [?bCheckedTrial@?1??CheckTrial@@YAXXZ@4_NA],1
01
0000A61D: 5D pop ebp
0000A61E: C3 ret
0000A61F: CC int 3
?CheckTrial@@YAXXZ (void __cdecl CheckTrial(void)):
0000A5F0: 55 push ebp
0000A5F1: 8B EC mov ebp,esp
0000A5F3: 0F B6 05 00 00 00 movzx eax,byte ptr [?bCheckedTrial@?1??CheckTrial@@YAXXZ@4_NA]
00
0000A5FA: 85 C0 test eax,eax
0000A5FC: 74 1F je 0000A61D
0000A5FE: 6A 00 push 0
0000A600: 8B 0D 00 00 00 00 mov ecx,dword ptr [?sTrialCaption@@3PBDB]
0000A606: 51 push ecx
0000A607: 8B 15 00 00 00 00 mov edx,dword ptr [?sTrialText@@3PBDB]
0000A60D: 52 push edx
0000A60E: 6A 00 push 0
0000A610: FF 15 00 00 00 00 call dword ptr [__imp__MessageBoxA@16]
0000A616: C6 05 00 00 00 00 mov byte ptr [?bCheckedTrial@?1??CheckTrial@@YAXXZ@4_NA],1
01
0000A61D: 5D pop ebp
0000A61E: C3 ret
0000A61F: CC int 3
D:\lib\crack>lib /OUT:sqlapisd-u.lib ./sqlapisd.lib SQLAPI.OBJ
Microsoft (R) Library Manager Version 14.27.29111.0
Copyright (C) Microsoft Corporation. All rights reserved.
Replacing SQLAPI.OBJ
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)