Function at 0x423390
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, 0x1174
call fcn.00450200
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 - 0x110], eax
mov dword [ebp - 0x1134], 0
mov word [ebp - 0x1130], 2
push 0x89
call dword [sym.imp.WS2_32.dll_htons]
mov word [ebp - 0x112e], ax
mov edx, dword [ebp + 8]
mov dword [ebp - 0x112c], edx
mov byte [ebp - 0x1168], 0
mov byte [ebp - 0x1167], 0
mov byte [ebp - 0x1166], 0
mov byte [ebp - 0x1165], 0
mov byte [ebp - 0x1164], 0
mov byte [ebp - 0x1163], 1
mov byte [ebp - 0x1162], 0
mov byte [ebp - 0x1161], 0
mov byte [ebp - 0x1160], 0
mov byte [ebp - 0x115f], 0
mov byte [ebp - 0x115e], 0
mov byte [ebp - 0x115d], 0
mov byte [ebp - 0x115c], 0x20
mov byte [ebp - 0x115b], 0x43
mov byte [ebp - 0x115a], 0x4b
mov byte [ebp - 0x1159], 0x41
mov byte [ebp - 0x1158], 0x41
mov byte [ebp - 0x1157], 0x41
mov byte [ebp - 0x1156], 0x41
mov byte [ebp - 0x1155], 0x41
mov byte [ebp - 0x1154], 0x41
mov byte [ebp - 0x1153], 0x41
mov byte [ebp - 0x1152], 0x41
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], 0
mov byte [ebp - 0x113a], 0
mov byte [ebp - 0x1139], 0x21
mov byte [ebp - 0x1138], 0
mov byte [ebp - 0x1137], 1
push 0x10
lea eax, [ebp - 0x1130]
push eax
push 0
push 0x32
lea ecx, [ebp - 0x1168]
push ecx
mov edx, dword [ebp - 0x110]
push edx
call dword [sym.imp.WS2_32.dll_sendto]
mov dword [ebp - 0x1134], eax
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0x10
lea eax, [ebp - 0x1130]
push eax
push 0
push 0x32
lea ecx, [ebp - 0x1168]
push ecx
mov edx, dword [ebp - 0x110]
push edx
call dword [sym.imp.WS2_32.dll_sendto]
mov dword [ebp - 0x1134], eax
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0x10
lea eax, [ebp - 0x1130]
push eax
push 0
push 0x32
lea ecx, [ebp - 0x1168]
push ecx
mov edx, dword [ebp - 0x110]
push edx
call dword [sym.imp.WS2_32.dll_sendto]
mov dword [ebp - 0x1134], eax
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
cmp dword [ebp - 0x1134], 0
jg 0x4235f2
mov eax, dword [ebp - 0x110]
push eax
call dword [sym.imp.WS2_32.dll_closesocket]
xor eax, eax
jmp 0x42381f
mov cl, byte [0x475ae7]
mov byte [ebp - 0x1120], cl
mov ecx, 0x400
xor eax, eax
lea edi, [ebp - 0x111f]
rep stosd dword es:[edi], eax
mov dword [ebp - 0x118], 1
mov dword [ebp - 0x114], 0
mov dword [ebp - 0x108], 0
mov dword [ebp - 0x116c], 0
jmp 0x423646
mov edx, dword [ebp - 0x116c]
add edx, 1
mov dword [ebp - 0x116c], edx
mov eax, dword [ebp - 0x116c]
cmp eax, dword [ebp - 0x108]
jae 0x42366d
mov ecx, dword [ebp - 0x116c]
mov edx, dword [ebp + ecx*4 - 0x104]
cmp edx, dword [ebp - 0x110]
jne 0x42366b
jmp 0x42366d
jmp 0x423637
mov eax, dword [ebp - 0x116c]
cmp eax, dword [ebp - 0x108]
jne 0x4236a6
cmp dword [ebp - 0x108], 0x40
jae 0x4236a6
mov ecx, dword [ebp - 0x116c]
mov edx, dword [ebp - 0x110]
mov dword [ebp + ecx*4 - 0x104], edx
mov eax, dword [ebp - 0x108]
add eax, 1
mov dword [ebp - 0x108], eax
xor ecx, ecx
jne 0x42362b
lea edx, [ebp - 0x118]
push edx
push 0
push 0
lea eax, [ebp - 0x108]
push eax
push 0x40
call dword [sym.imp.WS2_32.dll_select]
mov dword [ebp - 0x10c], eax
cmp dword [ebp - 0x10c], 0
jne 0x4236e7
mov ecx, dword [ebp - 0x110]
push ecx
call dword [sym.imp.WS2_32.dll_closesocket]
xor eax, eax
jmp 0x42381f
cmp dword [ebp - 0x10c], 0
jge 0x423704
mov edx, dword [ebp - 0x110]
push edx
call dword [sym.imp.WS2_32.dll_closesocket]
xor eax, eax
jmp 0x42381f
lea eax, [ebp - 0x108]
push eax
mov ecx, dword [ebp - 0x110]
push ecx
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x423810
push 0
push 0x1000
lea edx, [ebp - 0x1120]
push edx
mov eax, dword [ebp - 0x110]
push eax
call dword [sym.imp.WS2_32.dll_recv]
mov dword [ebp - 0x1170], eax
cmp dword [ebp - 0x1170], 0
jg 0x42375d
mov ecx, dword [ebp - 0x110]
push ecx
call dword [sym.imp.WS2_32.dll_closesocket]
xor eax, eax
jmp 0x42381f
movsx edx, byte [ebp - 0x10e8]
imul edx, edx, 0x12
lea eax, [ebp + edx - 0x10e7]
mov dword [ebp - 0x1174], eax
mov ecx, dword [ebp - 0x1174]
movzx edx, byte [ecx + 5]
push edx
mov eax, dword [ebp - 0x1174]
movzx ecx, byte [eax + 4]
push ecx
mov edx, dword [ebp - 0x1174]
movzx eax, byte [edx + 3]
push eax
mov ecx, dword [ebp - 0x1174]
movzx edx, byte [ecx + 2]
push edx
mov eax, dword [ebp - 0x1174]
movzx ecx, byte [eax + 1]
push ecx
mov edx, dword [ebp - 0x1174]
movzx eax, byte [edx]
push eax
push 0x477f70
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.0044ffa8
add esp, 0x20
movsx edx, byte [ebp - 0x10e8]
test edx, edx
jle 0x4237fc
push 0xf
lea eax, [ebp - 0x10e7]
push eax
mov ecx, dword [ebp + 0x10]
push ecx
call fcn.00451240
add esp, 0xc
mov edx, dword [ebp + 0x10]
mov byte [edx + 0xf], 0
push 0x478b90
mov eax, dword [ebp + 0x10]
push eax
call dword [sym.imp.SHLWAPI.dll_StrTrimA]
mov ecx, dword [ebp - 0x110]
push ecx
call dword [sym.imp.WS2_32.dll_closesocket]
mov eax, 1
jmp 0x42381f
mov edx, dword [ebp - 0x110]
push edx
call dword [sym.imp.WS2_32.dll_closesocket]
xor eax, eax
pop edi
mov esp, ebp
pop ebp
ret