Function at 0x401326
Capabilities:
Act as tcp client
Connect socket
Connect tcp socket
Connect udp socket
Create tcp socket
Create udp socket
Set socket configuration

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x70
push ebx
push esi
push edi
lea edi, [ebp - 0x70]
mov ecx, 0x1c
mov eax, 0xcccccccc
rep stosd dword es:[edi], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x30], eax
mov ecx, dword [ebp - 0x30]
sub ecx, 0x3ea
mov dword [ebp - 0x30], ecx
cmp dword [ebp - 0x30], 0x11
ja case.0x40131f.6
mov eax, dword [ebp - 0x30]
xor edx, edx
mov dl, byte [eax + 0x401541]
jmp dword [edx*4 + 0x401525]
mov byte [ebp - 0x10], 0
xor ecx, ecx
mov dword [ebp - 0xf], ecx
mov dword [ebp - 0xb], ecx
mov dword [ebp - 7], ecx
mov word [ebp - 3], cx
mov byte [ebp - 0x1c], 0
xor edx, edx
mov dword [ebp - 0x1b], edx
mov dword [ebp - 0x17], edx
mov byte [ebp - 0x13], dl
mov esi, esp
push 0xf
lea eax, [ebp - 0x10]
push eax
push 0x3e8
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.USER32.dll_GetDlgItemTextA]
cmp esi, esp
call fcn.00401cd0
mov esi, esp
push 0xa
lea edx, [ebp - 0x1c]
push edx
push 0x3e9
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_GetDlgItemTextA]
cmp esi, esp
call fcn.00401cd0
cmp dword [0x428c50], 0
je 0x4013a3
mov esi, esp
mov ecx, dword [0x428c50]
push ecx
call dword [sym.imp.WSOCK32.dll_closesocket]
cmp esi, esp
call fcn.00401cd0
mov esi, esp
push 6
push 1
push 2
call dword [sym.imp.WSOCK32.dll_socket]
cmp esi, esp
call fcn.00401cd0
mov dword [0x428c50], eax
mov word [ebp - 0x2c], 0
xor edx, edx
mov dword [ebp - 0x2a], edx
mov dword [ebp - 0x26], edx
mov dword [ebp - 0x22], edx
mov word [ebp - 0x1e], dx
mov esi, esp
lea eax, [ebp - 0x10]
push eax
call dword [sym.imp.WSOCK32.dll_inet_addr]
cmp esi, esp
call fcn.00401cd0
mov dword [ebp - 0x28], eax
lea ecx, [ebp - 0x1c]
push ecx
call fcn.00401e10
add esp, 4
mov esi, esp
push eax
call dword [sym.imp.WSOCK32.dll_htons]
cmp esi, esp
call fcn.00401cd0
mov word [ebp - 0x2a], ax
mov word [ebp - 0x2c], 2
mov esi, esp
push 0x10
lea edx, [ebp - 0x2c]
push edx
mov eax, dword [0x428c50]
push eax
call dword [sym.imp.WSOCK32.dll_connect]
cmp esi, esp
call fcn.00401cd0
cmp eax, 0xffffffff
jne 0x401450
mov esi, esp
push 0x423058
push 0x400
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.USER32.dll_SetDlgItemTextA]
cmp esi, esp
call fcn.00401cd0
jmp case.0x40131f.6
mov esi, esp
push 0
push 0x40100f
mov edx, dword [ebp + 8]
push edx
push 0x69
mov edi, esp
push 0xfffffffffffffffa
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_GetWindowLongA]
cmp edi, esp
call fcn.00401cd0
push eax
call dword [sym.imp.USER32.dll_DialogBoxParamA]
cmp esi, esp
call fcn.00401cd0
jmp case.0x40131f.6
mov esi, esp
push 0
push 0x423038
push 0x42304c
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.USER32.dll_MessageBoxA]
cmp esi, esp
call fcn.00401cd0
jmp case.0x40131f.6
mov esi, esp
push 0
push 0xa
push 0x42303c
mov edx, dword [0x428c50]
push edx
call dword [sym.imp.WSOCK32.dll_send]
cmp esi, esp
call fcn.00401cd0
jmp case.0x40131f.6
mov esi, esp
mov eax, dword [0x428c50]
push eax
call dword [sym.imp.WSOCK32.dll_closesocket]
cmp esi, esp
call fcn.00401cd0
jmp case.0x40131f.6
jmp case.0x40131f.6
mov esi, esp
push 0
push 0x40100f
mov ecx, dword [ebp + 8]
push ecx
push 0x68
mov edi, esp
push 0xfffffffffffffffa
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.USER32.dll_GetWindowLongA]
cmp edi, esp
call fcn.00401cd0
push eax
call dword [sym.imp.USER32.dll_DialogBoxParamA]
cmp esi, esp
call fcn.00401cd0
pop edi
pop esi
pop ebx
add esp, 0x70
cmp ebp, esp
call fcn.00401cd0
mov esp, ebp
pop ebp
ret