Function at 0x1400d2940
Capabilities:
Act as tcp client
Connect socket
Connect tcp socket
Connect udp socket
Create tcp socket
Create udp socket
Get local ipv4 addresses
Get socket information
Receive data
Receive data on socket
Send data
Send data on socket
Set socket configuration
Start tcp server

Disassembly:
mov qword [rsp + 0x20], r9
mov dword [rsp + 0x18], r8d
mov dword [rsp + 0x10], edx
mov dword [rsp + 8], ecx
push rsi
push rdi
sub rsp, 0x1a8
lea rdi, [rsp + 0x30]
mov ecx, 0x5e
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov ecx, dword [rsp + 0x1c0]
mov rax, qword [0x14031f010]
xor rax, rsp
mov qword [rsp + 0x190], rax
mov dword [rsp + 0x64], reloc.WS2_32.dll_recv
mov dword [rsp + 0x74], 1
mov r8d, 6
mov edx, 1
mov ecx, 2
call qword [sym.imp.WS2_32.dll_socket]
mov qword [rsp + 0x58], rax
cmp qword [rsp + 0x58], 0xffffffffffffffff
jne 0x1400d29c2
mov eax, 0xffffffff
jmp 0x1400d2e52
mov r8d, reloc.WS2_32.dll_recv
xor edx, edx
lea rcx, [rsp + 0x38]
call fcn.14012dfc0
mov eax, 2
mov word [rsp + 0x38], ax
mov ecx, 0x7f000001
call qword [sym.imp.WS2_32.dll_htonl]
mov dword [rsp + 0x3c], eax
xor eax, eax
mov word [rsp + 0x3a], ax
mov eax, 8
imul rax, rax, 1
mov rcx, qword [rsp + 0x1d8]
mov qword [rcx + rax], 0xffffffffffffffff
mov eax, 8
imul rax, rax, 0
mov rcx, qword [rsp + 0x1d8]
mov qword [rcx + rax], 0xffffffffffffffff
mov dword [rsp + 0xb4], 1
mov dword [rsp + 0x20], 4
lea r9, [rsp + 0xb4]
mov r8d, 0xfffffffb
mov edx, 0xffff
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.WS2_32.dll_setsockopt]
cmp eax, 0xffffffff
jne 0x1400d2a61
jmp 0x1400d2e0c
mov r8d, reloc.WS2_32.dll_recv
lea rdx, [rsp + 0x38]
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.WS2_32.dll_bind]
cmp eax, 0xffffffff
jne 0x1400d2a81
jmp 0x1400d2e0c
lea r8, [rsp + 0x64]
lea rdx, [rsp + 0x38]
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.WS2_32.dll_getsockname]
cmp eax, 0xffffffff
je 0x1400d2aa2
cmp dword [rsp + 0x64], 0x10
jge 0x1400d2aa7
jmp 0x1400d2e0c
mov edx, 1
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.WS2_32.dll_listen]
cmp eax, 0xffffffff
jne 0x1400d2ac1
jmp 0x1400d2e0c
xor r8d, r8d
mov edx, 1
mov ecx, 2
call qword [sym.imp.WS2_32.dll_socket]
mov ecx, 8
imul rcx, rcx, 0
mov rdx, qword [rsp + 0x1d8]
mov qword [rdx + rcx], rax
mov eax, 8
imul rax, rax, 0
mov rcx, qword [rsp + 0x1d8]
cmp qword [rcx + rax], 0xffffffffffffffff
jne 0x1400d2b06
jmp 0x1400d2e0c
mov eax, 8
imul rax, rax, 0
mov r8d, reloc.WS2_32.dll_recv
lea rdx, [rsp + 0x38]
mov rcx, qword [rsp + 0x1d8]
mov rcx, qword [rcx + rax]
call qword [sym.imp.WS2_32.dll_connect]
cmp eax, 0xffffffff
jne 0x1400d2b36
jmp 0x1400d2e0c
mov edx, 1
mov rcx, qword [rsp + 0x58]
call fcn.14011e100
test eax, eax
jge 0x1400d2b4e
jmp 0x1400d2e0c
mov eax, reloc.WS2_32.dll_recv
imul rax, rax, 0
mov rcx, qword [rsp + 0x58]
mov qword [rsp + rax + 0x88], rcx
mov eax, reloc.WS2_32.dll_recv
imul rax, rax, 0
mov ecx, 0x300
mov word [rsp + rax + 0x90], cx
mov eax, reloc.WS2_32.dll_recv
imul rax, rax, 0
xor ecx, ecx
mov word [rsp + rax + 0x92], cx
mov r8d, 0x3e8
mov edx, 1
lea rcx, [rsp + 0x88]
call fcn.1400d02e0
xor r8d, r8d
xor edx, edx
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.WS2_32.dll_accept]
mov ecx, 8
imul rcx, rcx, 1
mov rdx, qword [rsp + 0x1d8]
mov qword [rdx + rcx], rax
mov eax, 8
imul rax, rax, 1
mov rcx, qword [rsp + 0x1d8]
cmp qword [rcx + rax], 0xffffffffffffffff
jne 0x1400d2bec
jmp 0x1400d2e0c
lea rcx, [rsp + 0x150]
call fcn.1400981a0
lea rcx, [rsp + 0x108]
mov rdi, rcx
mov rsi, rax
mov ecx, reloc.WS2_32.dll_recv
rep movsb byte [rdi], byte [rsi]
lea rax, [rsp + 0xd8]
mov qword [rsp + 0x128], rax
mov qword [rsp + 0x130], reloc.WS2_32.dll_recv
mov eax, 8
imul rax, rax, 0
xor r9d, r9d
mov r8d, reloc.WS2_32.dll_recv
lea rdx, [rsp + 0x108]
mov rcx, qword [rsp + 0x1d8]
mov rcx, qword [rcx + rax]
call qword [sym.imp.WS2_32.dll_send]
mov eax, 8
imul rax, rax, 1
mov ecx, reloc.WS2_32.dll_recv
imul rcx, rcx, 0
mov rdx, qword [rsp + 0x1d8]
mov rax, qword [rdx + rax]
mov qword [rsp + rcx + 0x88], rax
mov eax, reloc.WS2_32.dll_recv
imul rax, rax, 0
mov ecx, 0x300
mov word [rsp + rax + 0x90], cx
mov eax, reloc.WS2_32.dll_recv
imul rax, rax, 0
xor ecx, ecx
mov word [rsp + rax + 0x92], cx
mov r8d, 0x3e8
mov edx, 1
lea rcx, [rsp + 0x88]
call fcn.1400d02e0
mov eax, 8
imul rax, rax, 1
xor r9d, r9d
mov r8d, dword [rsp + 0x130]
mov rdx, qword [rsp + 0x128]
mov rcx, qword [rsp + 0x1d8]
mov rcx, qword [rcx + rax]
call qword [sym.imp.WS2_32.dll_recv]
cdqe
mov qword [rsp + 0x138], rax
cmp qword [rsp + 0x138], 0xffffffffffffffff
jne 0x1400d2d86
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [rsp + 0x140], eax
lea rax, [rsp + 0x180]
lea rcx, [rsp + 0x108]
mov rdi, rax
mov rsi, rcx
mov ecx, reloc.WS2_32.dll_recv
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x160]
call fcn.1400981a0
lea rcx, [rsp + 0x170]
mov rdi, rcx
mov rsi, rax
mov ecx, reloc.WS2_32.dll_recv
rep movsb byte [rdi], byte [rsi]
lea rdx, [rsp + 0x180]
lea rcx, [rsp + 0x170]
call fcn.1400982b0
cmp rax, 0xea60
jle 0x1400d2d72
jmp 0x1400d2e0c
cmp dword [rsp + 0x140], 0x2733
jne 0x1400d2d81
jmp 0x1400d2df2
jmp 0x1400d2e0c
mov rax, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x130]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x130], rax
cmp qword [rsp + 0x130], 0
je 0x1400d2dcf
mov rax, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x128]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x128], rax
jmp 0x1400d2df2
mov r8d, reloc.WS2_32.dll_recv
lea rdx, [rsp + 0xd8]
lea rcx, [rsp + 0x108]
call fcn.14012e1b0
test eax, eax
je 0x1400d2df0
jmp 0x1400d2e0c
jmp 0x1400d2dfd
xor eax, eax
cmp eax, 1
jne 0x1400d2c56
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.WS2_32.dll_closesocket]
xor eax, eax
jmp 0x1400d2e52
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.WS2_32.dll_closesocket]
mov eax, 8
imul rax, rax, 0
mov rcx, qword [rsp + 0x1d8]
mov rcx, qword [rcx + rax]
call qword [sym.imp.WS2_32.dll_closesocket]
mov eax, 8
imul rax, rax, 1
mov rcx, qword [rsp + 0x1d8]
mov rcx, qword [rcx + rax]
call qword [sym.imp.WS2_32.dll_closesocket]
mov eax, 0xffffffff
mov rdi, rax
mov rcx, rsp
lea rdx, reloc.WS2_32.dll_getsockname
call fcn.14019e3d0
mov rax, rdi
mov rcx, qword [rsp + 0x190]
xor rcx, rsp
call fcn.14005de20
add rsp, 0x1a8
pop rdi
pop rsi
ret