Function at 0x100261f
Capabilities:
Create raw socket
Initialize winsock library
Receive data
Receive data on socket
Send data
Send data on socket

Disassembly:
sub esp, 0x5d4
push ebp
push edi
xor edi, edi
push 0x275b
inc edi
xor ebp, ebp
push edi
mov dword [esp + 0x28], 0x10
mov dword [esp + 0x24], ebp
call fcn.0100308e
pop ecx
pop ecx
lea eax, [esp + 0x44c]
push eax
push 0x102
call dword [sym.imp.WS2_32.dll_WSAStartup]
test eax, eax
je 0x1002676
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x2732
push edi
call fcn.0100308e
add esp, 0xc
jmp 0x100292a
push esi
mov esi, dword [sym.imp.WS2_32.dll_WSACreateEvent]
call esi
cmp eax, ebp
mov dword [esp + 0xc], eax
je 0x1002691
call esi
cmp eax, ebp
mov dword [esp + 0x14], eax
jne 0x10026ab
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
push 0x2745
push edi
call fcn.0100308e
add esp, 0xc
jmp 0x1002919
mov esi, dword [sym.imp.WS2_32.dll_WSASocketW]
push ebx
push ebp
push ebp
push ebp
push 0x2e
push 3
push 2
call esi
mov ebx, eax
or edi, 0xffffffff
cmp ebx, edi
mov dword [esp + 0x1c], ebx
jne 0x10026db
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
push 0x2746
jmp 0x1002984
push ebp
push ebp
push ebp
push 1
push 3
push 2
call esi
cmp eax, edi
mov dword [esp + 0x20], eax
je 0x10026ca
mov esi, dword [sym.imp.WS2_32.dll_WSAEventSelect]
push 1
push dword [esp + 0x1c]
push eax
call esi
cmp eax, edi
jne 0x1002712
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
push 0x2747
jmp 0x1002984
push 3
push dword [esp + 0x14]
push ebx
call esi
cmp eax, edi
je 0x1002701
mov eax, dword [esp + 0x10]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0x40], eax
xor eax, eax
lea edi, [esp + 0x44]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
lea edi, [esp + 0x2c]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov edi, dword [esp + 0x5e8]
cmp edi, dword [esp + 0x5ec]
mov word [esp + 0x44], 2
mov word [esp + 0x2c], 2
mov dword [esp + 0x14], edi
ja 0x100290e
imul edi, edi, 0x98
add edi, 0x10044cc
push dword [edi]
call fcn.010021cd
mov dword [esp + 0x30], eax
push 0x10
lea eax, [esp + 0x30]
push eax
push dword [esp + 0x28]
call dword [sym.imp.WS2_32.dll_bind]
push dword [esp + 0x14]
push 0x2717
push 1
call fcn.0100308e
add esp, 0xc
push dword [edi]
call dword [sym.imp.WS2_32.dll_inet_ntoa]
push eax
push 0x2755
push 1
call fcn.0100308e
mov eax, dword [edi]
add esp, 0xc
mov dword [esp + 0x48], eax
mov esi, 0x10041a0
xor ebx, ebx
movzx eax, byte [esi + 2]
dec eax
je 0x10027df
dec eax
dec eax
je 0x10027d9
sub eax, 7
jne 0x10027eb
mov eax, dword [esp + 0x30]
jmp 0x10027e7
mov eax, dword [esp + 0x48]
mov dword [esp + 0x24], esi
mov dword [esi + 4], eax
inc ebx
xor eax, eax
mov ax, word [esi]
push eax
call dword [sym.imp.WS2_32.dll_ntohs]
movzx eax, ax
add esi, eax
cmp ebx, 3
jne 0x10027c9
xor eax, eax
mov ax, word [0x100419e]
mov word [0x100419a], bp
push eax
call dword [sym.imp.WS2_32.dll_ntohs]
movzx eax, ax
push eax
mov esi, 0x1004198
push esi
call fcn.01002175
push 0x10
mov word [0x100419a], ax
lea eax, [esp + 0x48]
push eax
push ebp
push 0x60
push esi
push dword [esp + 0x30]
call dword [sym.imp.WS2_32.dll_sendto]
or esi, 0xffffffff
cmp eax, esi
je 0x1002978
xor ebx, ebx
inc ebx
push ebx
push dword [section..data]
lea eax, [esp + 0x44]
push ebp
push eax
push 2
call dword [sym.imp.WS2_32.dll_WSAWaitForMultipleEvents]
cmp eax, ebp
je 0x10028c7
cmp eax, ebx
je 0x1002889
cmp eax, 0x102
jne 0x100298b
push 0x2728
push ebx
call fcn.0100308e
pop ecx
pop ecx
jmp 0x100295b
lea eax, [esp + 0x28]
push eax
lea eax, [esp + 0x30]
push eax
push ebp
push 0x400
lea eax, [esp + 0x64]
push eax
push dword [esp + 0x34]
call dword [sym.imp.WS2_32.dll_recvfrom]
cmp eax, esi
je 0x10028ea
push ebp
push ebx
lea ecx, [esp + 0x34]
push ecx
push eax
lea eax, [esp + 0x64]
push eax
call fcn.01001fe2
push dword [esp + 0x18]
jmp 0x1002955
lea eax, [esp + 0x28]
push eax
lea eax, [esp + 0x30]
push eax
push ebp
push 0x400
lea eax, [esp + 0x64]
push eax
push dword [esp + 0x30]
call dword [sym.imp.WS2_32.dll_recvfrom]
cmp eax, esi
jne 0x100293b
mov esi, dword [sym.imp.WS2_32.dll_WSAGetLastError]
call esi
cmp eax, 0x274c
je 0x1002877
call esi
push eax
push 0x2749
push ebx
call fcn.0100308e
add esp, 0xc
push dword [esp + 0x18]
call dword [sym.imp.WS2_32.dll_WSACloseEvent]
pop ebx
cmp dword [esp + 0xc], ebp
pop esi
je 0x100292a
push dword [esp + 8]
call dword [sym.imp.WS2_32.dll_WSACloseEvent]
call dword [sym.imp.WS2_32.dll_WSACleanup]
pop edi
pop ebp
add esp, 0x5d4
ret 8
push dword [esp + 0x24]
lea ecx, [esp + 0x30]
push 2
push ecx
push eax
lea eax, [esp + 0x64]
push eax
call fcn.01001fe2
push dword [esp + 0x10]
call dword [sym.imp.WS2_32.dll_WSAResetEvent]
inc dword [esp + 0x14]
mov eax, dword [esp + 0x14]
add edi, 0x98
cmp eax, dword [esp + 0x5ec]
jbe 0x1002775
jmp 0x100290e
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
push 0x2748
push 1
jmp 0x1002906
cmp eax, esi
jne 0x100290e
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
push 0x2757
jmp 0x1002905