问题描述
拿到了一份样本,却怎么也运行不起来,然后自己写了dll加载器进行调试,发现报错1114,网上很多相关资料没有。实在没有办法了,只能自己进入loadlibrary函数内部进行调试。
关键点
发现在报错之前执行了StrStrIA函数
StrStrIA 函数 (shlwapi.h)
查找字符串中第一次出现的子字符串。比较不区分大小写。
注:shlwapi.h 头文件将 StrStrI 定义为别名,它根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。将编码中性别名与非编码中性的代码混合使用可能会导致不匹配,从而导致编译或运行时错误。有关详细信息,请参阅函数原型的约定。
报错原因
未找到字符串,导致 运行时错误,使得dll初始化失败
本文通过分析DLL加载失败的问题,深入探讨了StrStrIA函数在字符串查找中的作用及导致运行时错误的原因。作者通过自制DLL加载器并进行内部调试,最终定位到问题所在。
6962

被折叠的 条评论
为什么被折叠?



