Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- .686
- .model flat, stdcall ;32 bit memory model
- option casemap :none ;case sensitive
- include \MASM32\INCLUDE\windows.inc
- include \MASM32\INCLUDE\masm32.inc
- include \MASM32\INCLUDE\gdi32.inc
- include \MASM32\INCLUDE\user32.inc
- include \MASM32\INCLUDE\kernel32.inc
- include \MASM32\INCLUDE\advapi32.inc
- include \MASM32\INCLUDE\Ws2_32.inc
- include \masm32\INCLUDE\wsock32.inc
- includelib \MASM32\LIB\masm32.lib
- includelib \MASM32\LIB\gdi32.lib
- includelib \MASM32\LIB\user32.lib
- includelib \MASM32\LIB\kernel32.lib
- includelib \MASM32\LIB\advapi32.lib
- includelib \MASM32\LIB\Ws2_32.lib
- includelib \masm32\lib\wsock32.lib
- .data
- EXIT DB "Ошибка прграммы!!",0
- Port DD "5000",0
- Server DB "127.0.0.1",0
- mes DB "Connected",0
- DSEND DB "Ошибка открытия сокета",0
- err DB "ERROR",0
- CHECK DB "Сокет не соответствует!",0
- Good DB "Отправлено!!",0
- yes DB "OK!!",0
- .data?
- wsa WSADATA <>
- saddr sockaddr_in <>
- hSocket dd ?
- .code
- Start:
- invoke WSAStartup,202h,offset wsa
- .IF (EAX > 0)
- call Err
- .ELSE
- invoke socket,AF_INET,SOCK_STREAM,IPPROTO_TCP
- .IF (EAX < 0)
- call Err1
- .ELSE
- mov hSocket,eax
- invoke htons,offset Port
- mov dword ptr [saddr.sin_port],eax
- invoke inet_addr,offset Server
- mov dword ptr [saddr.sin_addr],eax
- invoke connect,offset hSocket,offset saddr,sizeof saddr
- .IF (EAX < 0)
- call Exit
- .ELSE
- invoke lstrlen, offset mes
- invoke send,offset hSocket,offset mes,eax,0
- invoke MessageBox,0,offset Good,offset yes,MB_OK
- invoke closesocket,offset hSocket
- invoke ExitProcess,0
- Err1 proc
- invoke MessageBox,0,offset DSEND,offset err,MB_OK
- Err1 endp
- Err proc
- invoke MessageBox,0,offset CHECK,offset err,MB_OK
- Err endp
- Exit proc
- invoke MessageBox,0,offset EXIT,offset err,MB_OK
- invoke ExitProcess,0
- Exit endp
- .ENDIF
- .ENDIF
- .ENDIF
- end Start
Advertisement
Add Comment
Please, Sign In to add comment