Function at 0x416f60
Capabilities:
Contain obfuscated stackstrings
Create tcp socket
Create udp socket
Get socket status
Receive data
Receive data on socket
Send data
Send data on socket

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x116c
call fcn.00465440
push edi
mov eax, dword [ebp + 0xc]
mov byte [eax], 0
mov ecx, dword [ebp + 0x10]
mov byte [ecx], 0
push 0
push 2
push 2
call dword [sym.imp.WS2_32.dll_socket]
mov dword [ebp - 0x100c], eax
mov dword [ebp - 0x1008], 0
mov word [ebp - 0x101c], 2
push 0x89
call dword [sym.imp.WS2_32.dll_htons]
mov word [ebp - 0x101a], ax
mov edx, dword [ebp + 8]
mov dword [ebp - 0x1018], edx
mov byte [ebp - 0x1160], 0
mov byte [ebp - 0x115f], 0
mov byte [ebp - 0x115e], 0
mov byte [ebp - 0x115d], 0
mov byte [ebp - 0x115c], 0
mov byte [ebp - 0x115b], 1
mov byte [ebp - 0x115a], 0
mov byte [ebp - 0x1159], 0
mov byte [ebp - 0x1158], 0
mov byte [ebp - 0x1157], 0
mov byte [ebp - 0x1156], 0
mov byte [ebp - 0x1155], 0
mov byte [ebp - 0x1154], 0x20
mov byte [ebp - 0x1153], 0x43
mov byte [ebp - 0x1152], 0x4b
mov byte [ebp - 0x1151], 0x41
mov byte [ebp - 0x1150], 0x41
mov byte [ebp - 0x114f], 0x41
mov byte [ebp - 0x114e], 0x41
mov byte [ebp - 0x114d], 0x41
mov byte [ebp - 0x114c], 0x41
mov byte [ebp - 0x114b], 0x41
mov byte [ebp - 0x114a], 0x41
mov byte [ebp - 0x1149], 0x41
mov byte [ebp - 0x1148], 0x41
mov byte [ebp - 0x1147], 0x41
mov byte [ebp - 0x1146], 0x41
mov byte [ebp - 0x1145], 0x41
mov byte [ebp - 0x1144], 0x41
mov byte [ebp - 0x1143], 0x41
mov byte [ebp - 0x1142], 0x41
mov byte [ebp - 0x1141], 0x41
mov byte [ebp - 0x1140], 0x41
mov byte [ebp - 0x113f], 0x41
mov byte [ebp - 0x113e], 0x41
mov byte [ebp - 0x113d], 0x41
mov byte [ebp - 0x113c], 0x41
mov byte [ebp - 0x113b], 0x41
mov byte [ebp - 0x113a], 0x41
mov byte [ebp - 0x1139], 0x41
mov byte [ebp - 0x1138], 0x41
mov byte [ebp - 0x1137], 0x41
mov byte [ebp - 0x1136], 0x41
mov byte [ebp - 0x1135], 0x41
mov byte [ebp - 0x1134], 0x41
mov byte [ebp - 0x1133], 0
mov byte [ebp - 0x1132], 0
mov byte [ebp - 0x1131], 0x21
mov byte [ebp - 0x1130], 0
mov byte [ebp - 0x112f], 1
push 0x10
lea eax, [ebp - 0x101c]
push eax
push 0
push 0x32
lea ecx, [ebp - 0x1160]
push ecx
mov edx, dword [ebp - 0x100c]
push edx
call dword [sym.imp.WS2_32.dll_sendto]
mov dword [ebp - 0x1008], eax
cmp dword [ebp - 0x1008], 0
jg 0x41715c
mov eax, dword [ebp - 0x100c]
push eax
call dword [sym.imp.WS2_32.dll_closesocket]
xor eax, eax
jmp 0x417386
mov cl, byte [0x4af244]
mov byte [ebp - 0x1004], cl
mov ecx, 0x400
xor eax, eax
lea edi, [ebp - 0x1003]
rep stosd dword es:[edi], eax
mov dword [ebp - 0x112c], 0
mov dword [ebp - 0x1128], 0xc8
mov dword [ebp - 0x1120], 0
mov dword [ebp - 0x1164], 0
jmp 0x4171b0
mov edx, dword [ebp - 0x1164]
add edx, 1
mov dword [ebp - 0x1164], edx
mov eax, dword [ebp - 0x1164]
cmp eax, dword [ebp - 0x1120]
jae 0x4171d7
mov ecx, dword [ebp - 0x1164]
mov edx, dword [ebp + ecx*4 - 0x111c]
cmp edx, dword [ebp - 0x100c]
jne 0x4171d5
jmp 0x4171d7
jmp 0x4171a1
mov eax, dword [ebp - 0x1164]
cmp eax, dword [ebp - 0x1120]
jne 0x417210
cmp dword [ebp - 0x1120], 0x40
jae 0x417210
mov ecx, dword [ebp - 0x1164]
mov edx, dword [ebp - 0x100c]
mov dword [ebp + ecx*4 - 0x111c], edx
mov eax, dword [ebp - 0x1120]
add eax, 1
mov dword [ebp - 0x1120], eax
xor ecx, ecx
test ecx, ecx
jne 0x417195
lea edx, [ebp - 0x112c]
push edx
push 0
push 0
lea eax, [ebp - 0x1120]
push eax
push 0x40
call dword [sym.imp.WS2_32.dll_select]
mov dword [ebp - 0x1124], eax
cmp dword [ebp - 0x1124], 0
jne 0x417257
mov ecx, dword [ebp - 0x100c]
push ecx
call dword [sym.imp.WS2_32.dll_closesocket]
xor eax, eax
jmp 0x417386
cmp dword [ebp - 0x1124], 0
jge 0x417274
mov edx, dword [ebp - 0x100c]
push edx
call dword [sym.imp.WS2_32.dll_closesocket]
xor eax, eax
jmp 0x417386
lea eax, [ebp - 0x1120]
push eax
mov ecx, dword [ebp - 0x100c]
push ecx
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x417377
push 0
push 0x1000
lea edx, [ebp - 0x1004]
push edx
mov eax, dword [ebp - 0x100c]
push eax
call dword [sym.imp.WS2_32.dll_recv]
mov dword [ebp - 0x1168], eax
cmp dword [ebp - 0x1168], 0
jg 0x4172cd
mov ecx, dword [ebp - 0x100c]
push ecx
call dword [sym.imp.WS2_32.dll_closesocket]
xor eax, eax
jmp 0x417386
movsx edx, byte [ebp - 0xfcc]
imul edx, edx, 0x12
lea eax, [ebp + edx - 0xfcb]
mov dword [ebp - 0x116c], eax
mov ecx, dword [ebp - 0x116c]
xor edx, edx
mov dl, byte [ecx + 5]
push edx
mov eax, dword [ebp - 0x116c]
xor ecx, ecx
mov cl, byte [eax + 4]
push ecx
mov edx, dword [ebp - 0x116c]
xor eax, eax
mov al, byte [edx + 3]
push eax
mov ecx, dword [ebp - 0x116c]
xor edx, edx
mov dl, byte [ecx + 2]
push edx
mov eax, dword [ebp - 0x116c]
xor ecx, ecx
mov cl, byte [eax + 1]
push ecx
mov edx, dword [ebp - 0x116c]
xor eax, eax
mov al, byte [edx]
push eax
push 0x4a578c
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.004650e4
add esp, 0x20
movsx edx, byte [ebp - 0xfcc]
test edx, edx
jle 0x417363
push 0xf
lea eax, [ebp - 0xfcb]
push eax
mov ecx, dword [ebp + 0x10]
push ecx
call fcn.004669d0
add esp, 0xc
mov edx, dword [ebp + 0x10]
mov byte [edx + 0xf], 0
mov eax, dword [ebp - 0x100c]
push eax
call dword [sym.imp.WS2_32.dll_closesocket]
mov eax, 1
jmp 0x417386
mov ecx, dword [ebp - 0x100c]
push ecx
call dword [sym.imp.WS2_32.dll_closesocket]
xor eax, eax
pop edi
mov esp, ebp
pop ebp
ret