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