Function at 0x402383
Capabilities:
Act as tcp client
Connect socket
Connect tcp socket
Create process on windows
Create tcp socket
Receive data
Receive data on socket
Send data
Send data on socket
Send http request
Send http request with host header

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
mov eax, 0x400
mov dword [ebp - 0xc], eax
xor eax, eax
mov dword [ebp - 0x14], eax
push 6
push 1
push 2
call dword [sym.imp.WS2_32.DLL_socket]
mov dword [0x401014], eax
xor eax, eax
mov dword [0x401034], eax
push 0x10
push 0x401004
mov eax, dword [0x401014]
push eax
call dword [sym.imp.WS2_32.DLL_connect]
test eax, eax
jne 0x40257e
mov eax, dword [0x40102c]
push eax
call fcn.00402353
push 0x401070
mov eax, dword [0x40102c]
push eax
push 0x40110b
mov eax, dword [0x401018]
push eax
call dword [sym.imp.MSVCRT.DLL_sprintf]
mov eax, dword [0x401018]
push eax
call dword [sym.imp.MSVCRT.DLL_strlen]
mov dword [ebp - 8], eax
push 0
push dword [ebp - 8]
mov eax, dword [0x401018]
push eax
mov eax, dword [0x401014]
push eax
call dword [sym.imp.WS2_32.DLL_send]
mov eax, dword [ebp + 8]
cmp eax, 1
jne 0x40243a
push 0
mov eax, dword [0x40102c]
push eax
call dword [sym.imp.KERNEL32.DLL__lcreat]
mov dword [ebp - 4], eax
push 0
push 0x1400
mov eax, dword [0x401018]
push eax
mov eax, dword [0x401014]
push eax
call dword [sym.imp.WS2_32.DLL_recv]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x4024d6
mov eax, dword [0x401018]
add eax, 9
push eax
call dword [sym.imp.MSVCRT.DLL_atoi]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
cmp eax, 0xc8
je 0x402481
jmp 0x40257e
push 0x40112a
mov eax, dword [0x401018]
push eax
call dword [sym.imp.MSVCRT.DLL_strstr]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
test eax, eax
jle 0x4024ad
mov eax, dword [ebp - 0x10]
add eax, 0x10
push eax
call dword [sym.imp.MSVCRT.DLL_atoi]
mov dword [ebp - 0xc], eax
push 0x40113b
mov eax, dword [0x401018]
push eax
call dword [sym.imp.MSVCRT.DLL_strstr]
add eax, 4
mov dword [ebp - 0x10], eax
push dword [ebp - 0x10]
mov edx, dword [0x401018]
pop eax
sub eax, edx
sub dword [ebp - 8], eax
jmp 0x4024df
mov eax, dword [0x401018]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 8]
add dword [0x401034], eax
cmp dword [ebp + 8], 0
jne 0x40250c
mov edi, dword [ebp - 0x10]
push dword [ebp - 8]
xor eax, eax
pop ecx
mov byte [edi + ecx], al
push dword [ebp - 0x10]
mov eax, dword [0x40101c]
push eax
call dword [sym.imp.MSVCRT.DLL_strcpy]
jmp 0x40255c
cmp dword [ebp + 8], 1
jne 0x40255c
push dword [ebp - 8]
push dword [ebp - 0x10]
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.DLL__lwrite]
mov eax, dword [0x401034]
imul eax, eax, 0x64
mov ecx, dword [ebp - 0xc]
cdq
idiv ecx
mov dword [ebp - 0x14], eax
push 0
push dword [ebp - 0x14]
push 0x402
mov eax, dword [0x4010c8]
push eax
call dword [sym.imp.USER32.DLL_SendMessageA]
mov eax, dword [0x401034]
mov edx, dword [ebp - 0xc]
cmp eax, edx
jge 0x40255c
jmp 0x40243a
mov eax, dword [ebp + 8]
cmp eax, 1
jne 0x40257c
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.DLL__lclose]
push 0
mov eax, dword [0x401024]
push eax
call dword [sym.imp.KERNEL32.DLL_WinExec]
jmp 0x402594
push 0x10
push 0x401140
mov eax, dword [0x40102c]
push eax
push 0
call dword [sym.imp.USER32.DLL_MessageBoxA]
mov eax, dword [0x401014]
push eax
call dword [sym.imp.WS2_32.DLL_closesocket]
mov esp, ebp
pop ebp
ret 4