Function at 0x4195f0
Capabilities:
Create tcp socket
Create udp socket

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x118
push ebx
push esi
push edi
lea edi, [ebp - 0x118]
mov ecx, 0x46
mov eax, 0xcccccccc
rep stosd dword es:[edi], eax
mov eax, dword [0x434d40]
xor eax, ebp
mov dword [ebp - 4], eax
mov ecx, 0x4381c7
call fcn.0041169a
mov eax, dword [0x43504c]
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
jne 0x419637
xor eax, eax
jmp 0x41983b
push 4
mov eax, dword [ebp - 0xc]
push eax
lea ecx, [ebp - 0x18]
push ecx
call fcn.00411780
add esp, 0xc
mov byte [ebp - 0x2d], 0
jmp 0x419657
mov al, byte [ebp - 0x2d]
add al, 1
mov byte [ebp - 0x2d], al
movzx eax, byte [ebp - 0x2d]
cmp eax, 0xff
jge 0x4197f2
mov eax, 1
imul ecx, eax, 3
mov dl, byte [ebp - 0x2d]
mov byte [ebp + ecx - 0x18], dl
push 4
lea eax, [ebp - 0x18]
push eax
lea ecx, [ebp - 0x24]
push ecx
call fcn.00411780
add esp, 0xc
mov esi, esp
push 0x28
push 0x40
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
cmp esi, esp
call fcn.004116a9
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 0
jne 0x4196a8
jmp 0x4197f2
mov eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x24]
mov dword [eax + 0x18], ecx
mov eax, dword [ebp - 0x3c]
mov byte [eax + 0x1c], 2
mov esi, esp
push 1
push 0
push 0
push 6
push 1
push 2
call dword [sym.imp.WS2_32.dll_WSASocketW]
cmp esi, esp
call fcn.004116a9
mov ecx, dword [ebp - 0x3c]
mov dword [ecx + 0x14], eax
mov eax, dword [ebp - 0x3c]
cmp dword [eax + 0x14], 0xffffffff
jne 0x4196fa
mov esi, esp
mov eax, dword [ebp - 0x3c]
push eax
call dword [sym.imp.KERNEL32.dll_GlobalFree]
cmp esi, esp
call fcn.004116a9
jmp 0x41964f
push 0x10
lea eax, [ebp - 0x54]
push eax
call fcn.0041132f
add esp, 8
mov eax, 2
mov word [ebp - 0x54], ax
xor eax, eax
mov word [ebp - 0x52], ax
mov dword [ebp - 0x50], 0
mov esi, esp
push 0x10
lea eax, [ebp - 0x54]
push eax
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ecx + 0x14]
push edx
call dword [sym.imp.WS2_32.dll_bind]
cmp esi, esp
call fcn.004116a9
test eax, eax
je 0x41976c
mov esi, esp
mov eax, dword [ebp - 0x3c]
mov ecx, dword [eax + 0x14]
push ecx
call dword [sym.imp.WS2_32.dll_closesocket]
cmp esi, esp
call fcn.004116a9
mov esi, esp
mov eax, dword [ebp - 0x3c]
push eax
call dword [sym.imp.KERNEL32.dll_GlobalFree]
cmp esi, esp
call fcn.004116a9
jmp 0x41964f
mov esi, esp
push 0
push 2
mov eax, dword [0x435064]
push eax
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ecx + 0x14]
push edx
call dword [sym.imp.KERNEL32.dll_CreateIoCompletionPort]
cmp esi, esp
call fcn.004116a9
test eax, eax
jne 0x4197be
mov esi, esp
mov eax, dword [ebp - 0x3c]
mov ecx, dword [eax + 0x14]
push ecx
call dword [sym.imp.WS2_32.dll_closesocket]
cmp esi, esp
call fcn.004116a9
mov esi, esp
mov eax, dword [ebp - 0x3c]
push eax
call dword [sym.imp.KERNEL32.dll_GlobalFree]
cmp esi, esp
call fcn.004116a9
jmp 0x41964f
mov eax, dword [ebp - 0x3c]
mov dword [eax + 0x20], 0
mov eax, dword [ebp - 0x3c]
mov ecx, dword [0x435060]
mov dword [eax + 0x24], ecx
mov eax, dword [0x435060]
mov ecx, dword [ebp - 0x3c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x3c]
add eax, 0x20
mov dword [0x435060], eax
xor eax, eax
jne 0x4197be
jmp 0x41964f
mov eax, dword [ebp - 0xc]
cmp dword [eax + 4], 0
je 0x41980c
mov eax, dword [ebp - 0xc]
mov ecx, dword [eax + 4]
mov edx, dword [ebp - 0xc]
mov eax, dword [edx + 8]
mov dword [ecx + 8], eax
jmp 0x419818
mov eax, dword [ebp - 0xc]
mov ecx, dword [eax + 8]
mov dword [0x435050], ecx
mov eax, dword [ebp - 0xc]
mov ecx, dword [eax + 8]
mov edx, dword [ebp - 0xc]
mov eax, dword [edx + 4]
mov dword [ecx], eax
xor eax, eax
jne 0x4197f2
mov eax, dword [ebp - 0xc]
push eax
call fcn.0041185c
add esp, 4
mov eax, 1
push edx
mov ecx, ebp
push eax
lea edx, [0x41986c]
call fcn.00411703
pop eax
pop edx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004115f0
add esp, 0x118
cmp ebp, esp
call fcn.004116a9
mov esp, ebp
pop ebp
ret