Function at 0x1400040b2
Capabilities:
Connect socket
Get local ipv4 addresses
Get socket information
Receive data
Receive data on socket

Disassembly:
push rbp
mov rbp, rsp
push rsi
push rbx
sub rsp, 0x60
mov qword [rbp + 0x10], rcx
mov eax, edx
mov qword [rbp + 0x20], r8
mov edx, r9d
mov word [rbp + 0x18], ax
mov eax, edx
mov word [rbp + 0x28], ax
mov qword [rbp - 0x18], 0
mov rax, qword [sym.imp.msvcrt.dll__errno]
call rax
mov dword [rax], 0
movzx r8d, word [rbp + 0x28]
movzx edx, word [rbp + 0x18]
mov rcx, qword [rbp + 0x20]
mov rax, qword [rbp + 0x10]
mov r9d, r8d
mov r8, rcx
mov rcx, rax
call fcn.140003d22
mov dword [rbp - 0x34], eax
test eax, eax
jg 0x14000411a
mov eax, 0xffffffff
jmp 0x1400045b5
movzx eax, word [0x140013234]
test ax, ax
je 0x14000413e
cmp word [rbp + 0x28], 0
jne 0x140004168
lea rax, str.UDP_listen_needs__p_arg
mov rcx, rax
call fcn.1400033f9
jmp 0x140004168
movsxd rax, dword [rbp - 0x34]
mov edx, 1
mov rcx, rax
mov rax, qword [sym.imp.WSOCK32.dll_listen]
call rax
mov ebx, eax
test ebx, ebx
jns 0x140004168
lea rax, str.local_listen_fuxored
mov rcx, rax
call fcn.1400033f9
movzx eax, word [0x140013236]
test ax, ax
je 0x140004276
mov dword [rbp - 0x2c], 0x10
mov rdx, qword [0x1400131c8]
movsxd rax, dword [rbp - 0x34]
lea rcx, [rbp - 0x2c]
mov r8, rcx
mov rcx, rax
mov rax, qword [sym.imp.WSOCK32.dll_getsockname]
call rax
mov ebx, eax
test ebx, ebx
jns 0x1400041b2
lea rax, str.local_getsockname_failed
mov rcx, rax
call fcn.140003302
mov rax, qword [0x1400131f0]
movabs rsi, 0x6e696e657473696c
mov qword [rax], rsi
movabs rsi, 0x5b206e6f20676e
mov qword [rax + 7], rsi
mov rax, qword [0x1400131c8]
mov eax, dword [rax + 4]
test eax, eax
je 0x14000420b
mov rax, qword [0x1400131c8]
mov eax, dword [rax + 4]
mov ecx, eax
mov rax, qword [sym.imp.WSOCK32.dll_inet_ntoa]
call rax
mov rdx, rax
mov rax, qword [0x1400131f0]
mov rcx, rax
call sub.msvcrt.dll_strcat
jmp 0x140004223
mov rbx, qword [0x1400131f0]
mov rcx, rbx
call sub.msvcrt.dll_strlen
add rax, rbx
mov dword [rax], 0x796e61
mov rbx, qword [0x1400131f0]
mov rcx, rbx
call sub.msvcrt.dll_strlen
add rax, rbx
movabs rbx, 0x2e2e2e206425205d
mov qword [rax], rbx
mov byte [rax + 8], 0
mov rax, qword [0x1400131c8]
movzx eax, word [rax + 2]
movzx eax, ax
mov ecx, eax
mov rax, qword [sym.imp.WSOCK32.dll_ntohs]
call rax
mov word [rbp - 0x1a], ax
movzx edx, word [rbp - 0x1a]
mov rax, qword [0x1400131f0]
mov rcx, rax
call fcn.140003302
movzx eax, word [0x140013234]
test ax, ax
je 0x140004328
mov dword [rbp - 0x2c], 0x10
mov eax, dword [0x140013238]
mov edx, eax
mov ecx, 2
call fcn.14000352a
mov rax, rbp
mov rdx, rax
lea rax, [0x1400130a0]
mov rcx, rax
call sub.msvcrt.dll__setjmp
test eax, eax
jne 0x140004574
mov rcx, qword [0x1400131d0]
mov rdx, qword [0x1400131f0]
mov esi, dword [rbp - 0x34]
movsxd rax, esi
lea r8, [rbp - 0x2c]
mov qword [rsp + 0x28], r8
mov qword [rsp + 0x20], rcx
mov r9d, 2
mov r8d, 0x2000
mov rcx, rax
mov rax, qword [sym.imp.WSOCK32.dll_recvfrom]
call rax
mov edx, 0
mov ecx, 0
call fcn.14000352a
mov rdx, qword [0x1400131d0]
movsxd rax, esi
mov r8d, 0x10
mov rcx, rax
mov rax, qword [sym.imp.WSOCK32.dll_connect]
call rax
mov ebx, eax
jmp 0x1400043b5
mov dword [rbp - 0x2c], 0x10
mov eax, dword [0x140013238]
mov edx, eax
mov ecx, 2
call fcn.14000352a
mov rax, rbp
mov rdx, rax
lea rax, [0x1400130a0]
mov rcx, rax
call sub.msvcrt.dll__setjmp
test eax, eax
jne 0x140004577
mov rdx, qword [0x1400131d0]
mov esi, dword [rbp - 0x34]
movsxd rax, esi
lea rcx, [rbp - 0x2c]
mov r8, rcx
mov rcx, rax
mov rax, qword [sym.imp.WSOCK32.dll_accept]
call rax
mov ebx, eax
mov edx, 0
mov ecx, 0
call fcn.14000352a
movsxd rax, esi
mov edx, 2
mov rcx, rax
mov rax, qword [sym.imp.WSOCK32.dll_shutdown]
call rax
movsxd rax, esi
mov rcx, rax
mov rax, qword [sym.imp.WSOCK32.dll_closesocket]
call rax
mov dword [rbp - 0x34], ebx
test ebx, ebx
js 0x140004589
mov rax, qword [0x1400131f0]
mov r8d, 0x40
mov edx, 0
mov rcx, rax
call sub.msvcrt.dll_memset
mov rax, qword [0x1400131f0]
add rax, 0x20
mov qword [rbp - 0x28], rax
mov dword [rbp - 0x2c], 0x10
mov rdx, qword [0x1400131c8]
movsxd rax, dword [rbp - 0x34]
lea rcx, [rbp - 0x2c]
mov r8, rcx
mov rcx, rax
mov rax, qword [sym.imp.WSOCK32.dll_getsockname]
call rax
mov ebx, eax
test ebx, ebx
jns 0x140004420
lea rax, str.post_rcv_getsockname_failed
mov rcx, rax
call fcn.140003302
mov rax, qword [0x1400131c8]
mov eax, dword [rax + 4]
mov ecx, eax
mov rax, qword [sym.imp.WSOCK32.dll_inet_ntoa]
call rax
mov rdx, rax
mov rax, qword [rbp - 0x28]
mov rcx, rax
call sub.msvcrt.dll_strcpy
mov rax, qword [0x1400131d0]
movzx eax, word [rax + 2]
movzx eax, ax
mov ecx, eax
mov rax, qword [sym.imp.WSOCK32.dll_ntohs]
call rax
mov word [rbp - 0x1a], ax
mov rax, qword [0x1400131d0]
mov eax, dword [rax + 4]
mov ecx, eax
mov rax, qword [sym.imp.WSOCK32.dll_inet_ntoa]
call rax
mov rdx, rax
mov rax, qword [0x1400131f0]
mov rcx, rax
call sub.msvcrt.dll_strcpy
movzx eax, word [0x14001322e]
movzx edx, ax
mov rax, qword [0x1400131f0]
mov rcx, rax
call fcn.14000367b
mov qword [rbp - 0x18], rax
mov rax, qword [sym.imp.msvcrt.dll__errno]
call rax
mov dword [rax], 0
mov dword [rbp - 0x2c], 0
cmp qword [rbp + 0x10], 0
je 0x1400044ea
mov rax, qword [rbp - 0x18]
lea rdx, [rax + 0x1c0]
mov rax, qword [rbp + 0x10]
mov r8d, 0x10
mov rcx, rax
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x1400044ea
mov dword [rbp - 0x2c], 1
cmp word [rbp + 0x18], 0
je 0x140004502
movzx eax, word [rbp - 0x1a]
cmp ax, word [rbp + 0x18]
je 0x140004502
mov dword [rbp - 0x2c], 1
mov eax, dword [rbp - 0x2c]
test eax, eax
je 0x14000453c
movzx edx, word [rbp - 0x1a]
mov rax, qword [rbp - 0x18]
lea r8, [rax + 0x100]
mov rcx, qword [rbp - 0x18]
mov rax, qword [rbp - 0x28]
mov dword [rsp + 0x20], edx
mov r9, r8
mov r8, rcx
mov rdx, rax
lea rax, str.invalid_connection_to___s__from__s___s___d
mov rcx, rax
call fcn.1400033f9
movzx edx, word [rbp - 0x1a]
mov rax, qword [rbp - 0x18]
lea r8, [rax + 0x100]
mov rcx, qword [rbp - 0x18]
mov rax, qword [rbp - 0x28]
mov dword [rsp + 0x20], edx
mov r9, r8
mov r8, rcx
mov rdx, rax
lea rax, str.connect_to___s__from__s___s___d
mov rcx, rax
call fcn.140003302
mov eax, dword [rbp - 0x34]
jmp 0x1400045b5
nop
jmp 0x140004578
nop
mov rax, qword [sym.imp.msvcrt.dll__errno]
call rax
mov dword [rax], 0x274c
jmp 0x14000458a
nop
mov ebx, dword [rbp - 0x34]
movsxd rax, ebx
mov edx, 2
mov rcx, rax
mov rax, qword [sym.imp.WSOCK32.dll_shutdown]
call rax
movsxd rax, ebx
mov rcx, rax
mov rax, qword [sym.imp.WSOCK32.dll_closesocket]
call rax
mov eax, 0xffffffff
add rsp, 0x60
pop rbx
pop rsi
pop rbp
ret