Function at 0x442bd9
Capabilities:
Act as tcp client
Connect socket
Connect tcp socket
Connect udp socket
Create tcp socket
Create udp socket
Initialize winsock library
Send data
Send data on socket

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2c
push 0x10
call fcn.00456f09
add esp, 4
mov dword [ebp - 4], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
add ebx, 0xc
push ebx
push 0x10
call fcn.00456f09
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x46e3a4
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
cmp dword [0x1c119e8], 1
jne 0x442e1b
mov dword [ebp - 0x14], esp
mov eax, dword [0x1c116b0]
push eax
push 0x18e
call fcn.00456f09
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x18], eax
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x101
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x81
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push 0x202
xor eax, eax
call dword [sym.imp.WS2_32.dll_WSAStartup]
nop
nop
cmp dword [ebp - 0x14], esp
je 0x442d01
push 0x30
push 0x40b12e7
push 6
call fcn.00456f15
add esp, 0xc
push eax
mov ebx, dword [ebp - 0x18]
push ebx
mov edi, dword [ebp - 0x1c]
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
push ebx
push edi
push 1
mov eax, 2
call fcn.00457440
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x442d4e
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x442d4c
imul eax, dword [edi]
jmp 0x442d41
mov ecx, eax
cmp ecx, 0x101
jle 0x442d5b
mov ecx, 0x101
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x101
push ebx
push edi
push 1
mov eax, 2
call fcn.00457440
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x442d99
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x442d97
imul eax, dword [edi]
jmp 0x442d8c
mov ecx, eax
cmp ecx, 0x81
jle 0x442da6
mov ecx, 0x81
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x81
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
call fcn.00456f0f
add esp, 4
pop eax
mov dword [ebp - 0x14], esp
push 0
push 1
push 2
xor eax, eax
call dword [sym.imp.WS2_32.dll_socket]
nop
nop
cmp dword [ebp - 0x14], esp
je 0x442e16
push 0x7f
push 0x40b12e7
push 6
call fcn.00456f15
add esp, 0xc
mov dword [0x1c116b4], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0x14]
mov word [ebx], 2
mov ebx, dword [ebp - 4]
add ebx, 4
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x18], esp
push dword [ebp + 0xc]
xor eax, eax
call dword [sym.imp.WS2_32.dll_htons]
nop
nop
cmp dword [ebp - 0x18], esp
je 0x442e5e
push 0x137
push 0x40b12e7
push 6
call fcn.00456f15
add esp, 0xc
mov ebx, dword [ebp - 0x14]
mov word [ebx], ax
mov ebx, dword [ebp - 4]
add ebx, 8
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x18], esp
mov ebx, dword [ebp + 8]
push dword [ebx]
xor eax, eax
call dword [sym.imp.WS2_32.dll_inet_addr]
nop
nop
cmp dword [ebp - 0x18], esp
je 0x442e9b
push 0x174
push 0x40b12e7
push 6
call fcn.00456f15
add esp, 0xc
mov ebx, dword [ebp - 0x14]
mov dword [ebx], eax
mov dword [ebp - 0x14], esp
push 0x10
mov eax, dword [ebp - 4]
push eax
push 0x10
call fcn.00456f09
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x18], eax
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 8
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push dword [0x1c116b4]
xor eax, eax
call dword [sym.imp.WS2_32.dll_connect]
nop
nop
cmp dword [ebp - 0x14], esp
je 0x442f25
push 0x1a8
push 0x40b12e7
push 6
call fcn.00456f15
add esp, 0xc
push eax
mov ebx, dword [ebp - 0x18]
push ebx
mov edi, dword [ebp - 0x1c]
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
push edi
push 1
mov eax, 2
call fcn.00457440
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x442f7c
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x442f7a
imul eax, dword [edi]
jmp 0x442f6f
mov ecx, eax
cmp ecx, 8
jle 0x442f86
mov ecx, 8
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 8
call fcn.00456f0f
add esp, 4
pop eax
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0xffffffff
jne 0x442fe1
mov dword [ebp - 0x14], esp
push dword [0x1c116b4]
xor eax, eax
call dword [0x1c11a38]
nop
nop
cmp dword [ebp - 0x14], esp
je 0x442fd7
push 0x209
push 0x40b12e7
push 6
call fcn.00456f15
add esp, 0xc
mov eax, 0
jmp 0x4432c7
push 0x80000301
push 0
push 0x2712
push 1
mov ebx, 0x9dc
call fcn.00457950
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x198
call fcn.00458520
add esp, 0x10
mov dword [ebp - 0x18], eax
push htons
push 0
mov ebx, dword [ebp + 0x10]
mov eax, dword [ebx]
test eax, eax
jne 0x443031
mov eax, 0x46e255
push eax
push 1
mov ebx, 0x194
call fcn.00457cf0
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x9dc
call fcn.00457950
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x198
call fcn.00458520
add esp, 0x10
mov dword [ebp - 0x24], eax
mov ebx, dword [ebp + 0x10]
push dword [ebx]
push dword [ebp - 0x24]
push dword [ebp - 0x18]
mov ecx, 3
call fcn.00403a2a
add esp, 0xc
mov dword [ebp - 0x28], eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x4430a6
push ebx
call fcn.00456f0f
add esp, 4
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x4430b6
push ebx
call fcn.00456f0f
add esp, 4
mov eax, dword [ebp - 0x28]
push eax
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x4430ca
push ebx
call fcn.00456f0f
add esp, 4
pop eax
mov dword [ebp - 0xc], eax
push htons
push 0
mov eax, dword [ebp - 0xc]
test eax, eax
jne 0x4430e1
mov eax, 0x46e255
push eax
push 1
mov ebx, 0x194
call fcn.00457cf0
add esp, 0x10
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], esp
push 0
push dword [ebp - 0x14]
mov eax, dword [ebp - 0xc]
test eax, eax
je 0x44310c
add eax, 8
push eax
push dword [0x1c116b4]
xor eax, eax
call dword [sym.imp.WS2_32.dll_send]
nop
nop
cmp dword [ebp - 0x18], esp
je 0x443139
push 0x317
push 0x40b12e7
push 6
call fcn.00456f15
add esp, 0xc
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jg 0x44317f
mov dword [ebp - 0x14], esp
push dword [0x1c116b4]
xor eax, eax
call dword [0x1c11a38]
nop
nop
cmp dword [ebp - 0x14], esp
je 0x443175
push 0x372
push 0x40b12e7
push 6
call fcn.00456f15
add esp, 0xc
mov eax, 0
jmp 0x4432c7
push 0x80000301
push 0
push 0x1000
push 1
mov ebx, 0x1bc
call fcn.00457b30
add esp, 0x10
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
push eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x4431b4
push ebx
call fcn.00456f0f
add esp, 4
pop eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x14], esp
push 0
push 0x1000
mov eax, dword [ebp - 0x10]
test eax, eax
je 0x4431cf
add eax, 8
push eax
push dword [0x1c116b4]
xor eax, eax
call dword [0x1c11a34]
nop
nop
cmp dword [ebp - 0x14], esp
je 0x4431fc
push 0x406
push 0x40b12e7
push 6
call fcn.00456f15
add esp, 0xc
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jle 0x443284
fild dword [ebp + 0x14]
fstp qword [ebp - 0x18]
fld qword [ebp - 0x18]
mov ebx, dword [ebp + 0x18]
fild dword [ebx]
fstp qword [ebp - 0x20]
fadd qword [ebp - 0x20]
fstp qword [ebp - 0x28]
mov dword [ebp - 0x2c], esp
push dword [ebp - 8]
mov eax, dword [ebp - 0x10]
test eax, eax
je 0x443230
add eax, 8
push eax
fld qword [ebp - 0x28]
call fcn.00401194
push eax
xor eax, eax
call dword [0x1c11a3c]
nop
nop
cmp dword [ebp - 0x2c], esp
je 0x443260
push 0x482
push 0x40b12e7
push 6
call fcn.00456f15
add esp, 0xc
mov ebx, dword [ebp + 0x18]
fild dword [ebx]
fstp qword [ebp - 0x18]
fld qword [ebp - 0x18]
fild dword [ebp - 8]
fstp qword [ebp - 0x20]
fadd qword [ebp - 0x20]
fstp qword [ebp - 0x28]
fld qword [ebp - 0x28]
call fcn.00401194
mov ebx, dword [ebp + 0x18]
mov dword [ebx], eax
cmp dword [ebp - 8], 0
jg 0x4431b8
mov dword [ebp - 0x14], esp
push dword [0x1c116b4]
xor eax, eax
call dword [0x1c11a38]
nop
nop
cmp dword [ebp - 0x14], esp
je 0x4432bd
push 0x539
push 0x40b12e7
push 6
call fcn.00456f15
add esp, 0xc
mov eax, 1
jmp 0x4432c7
push eax
mov ebx, dword [ebp - 4]
push ebx
add ebx, 0xc
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00456f0f
add esp, 4
pop ebx
call fcn.00456f0f
add esp, 4
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x4432f4
push ebx
call fcn.00456f0f
add esp, 4
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x443304
push ebx
call fcn.00456f0f
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret 0x14