Function at 0x14000f5eb
Capabilities:
Create tcp socket
Create udp socket
Resolve dns

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x268
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x1e0], 0xfffffffffffffffe
mov rax, qword [rcx]
cmp byte [rax], 0
mov byte [rax], 0
je 0x14000ff44
lea rdi, str.127.0.0.1:34254Hash_table_capacity_overflow
lea rcx, [rbp + 0x170]
mov qword [rcx], rdi
mov qword [rcx + 8], 0xf
call fcn.1400093d0
mov rsi, rax
test sil, 1
je 0x14000f6d3
mov rbx, qword [rbp + 0x178]
test rbx, rbx
je 0x14000f6a1
mov rax, qword [rbp + 0x170]
lea rcx, [rbx - 1]
mov dl, byte [rax]
inc rax
mov qword [rbp + 0x170], rax
mov qword [rbp + 0x178], rcx
cmp dl, 0x3a
jne 0x14000f6a1
lea rdx, [rbp - 0x50]
mov dword [rdx + 0x10], 0xa
and qword [rdx], 0
mov byte [rdx + 0x14], 1
lea rcx, [rbp + 0x170]
call fcn.140009930
cmp ax, 1
jne 0x14000f6a3
jmp 0x14000f6af
xor eax, eax
mov qword [rbp + 0x178], rbx
test ax, ax
je 0x14000f6d3
movabs rax, 0xffffffff00
and rsi, rax
shr rsi, 8
push 1
pop rax
movzx ecx, dx
shl rcx, 0x30
shl rsi, 0x10
or rsi, rcx
jmp 0x14000f6d7
xor esi, esi
xor eax, eax
or rax, rsi
cmp ax, 1
je 0x14000f6fb
movzx eax, ax
test eax, eax
jne 0x14000f709
mov qword [rbp + 0x170], rdi
mov qword [rbp + 0x178], 0xf
jmp 0x14000f709
cmp qword [rbp + 0x178], 0
je 0x14000f7c0
mov qword [rbp - 0x50], rdi
mov qword [rbp - 0x48], 0xf
and qword [rbp - 0x40], 0
mov qword [rbp - 0x30], 1
movabs rax, 0x3a0000003a
mov qword [rbp - 0x28], rax
mov bl, 0x3a
push 0xf
pop rsi
mov cl, 0x3a
mov rdx, rdi
mov r8, rsi
call fcn.14000b780
cmp rax, 1
jne 0x14000f75c
mov rsi, rdx
cmp rdx, 0xf
jae 0x14000f756
cmp byte [rsi + rdi], bl
je 0x14000f77d
cmp rsi, 0xf
jbe 0x14000f735
lea rcx, str.invalid_socket_address
call fcn.14000ef3a
nop
add rsp, 0x268
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
lea r14, [rsi + 1]
lea rcx, str.invalid_port_value
cmp r14, 0xf
je 0x14000f763
lea rbx, [rsi + rdi]
inc rbx
movzx eax, byte [rbx]
push 0xf
pop r8
cmp eax, 0x2d
je 0x14000fa4a
cmp eax, 0x2b
jne 0x14000fa54
cmp r14, 0xe
je 0x14000f763
inc rbx
push 0xe
pop r8
jmp 0x14000fa54
mov al, byte [0x140038230]
push 0x20
pop rcx
push 4
pop rdx
call fcn.140006980
test rax, rax
je 0x14000ff5a
mov rdi, rax
and word [rax], 0
mov rax, rsi
shr rax, 0x10
and rax, 0xffffffffffffff00
mov ecx, esi
shr ecx, 0x10
movzx ecx, cl
or rcx, rax
shr rsi, 0x30
mov word [rdi + 6], si
mov dword [rdi + 2], ecx
pxor xmm0, xmm0
movdqu xmmword [rdi + 8], xmm0
mov r15, rdi
add r15, 0x20
push 1
pop rcx
mov qword [rbp - 0x50], rdi
mov qword [rbp - 0x48], rcx
mov qword [rbp - 0x40], rdi
mov qword [rbp - 0x38], r15
xor r13d, r13d
mov qword [rbp + 0x1c0], r15
cmp rdi, r15
je 0x14000f9fc
lea rdx, [rdi + 0x20]
mov qword [rbp - 0x40], rdx
movzx esi, word [rdi]
movzx ecx, word [rdi + 0x12]
mov word [rbp + 0x160], cx
movups xmm0, xmmword [rdi + 2]
movaps xmmword [rbp + 0x150], xmm0
cmp si, 2
je 0x14000f9fc
mov qword [rbp + 0x1d0], r13
mov qword [rbp + 0x1c8], rdx
mov ebx, dword [rdi + 0x14]
mov r14d, dword [rdi + 0x18]
movzx edi, word [rdi + 0x1c]
movzx eax, word [rbp + 0x160]
mov word [rbp + 0x1b0], ax
movdqa xmm0, xmmword [rbp + 0x150]
movdqa xmmword [rbp + 0x1a0], xmm0
mov rax, qword [0x1400381b8]
cmp rax, 3
jne 0x14000f9f2
push 2
pop r12
test si, si
je 0x14000f8ba
push 0x17
pop r12
mov dword [rsp + 0x28], 0x81
and dword [rsp + 0x20], 0
mov ecx, r12d
push 2
pop rdx
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.ws2_32.dll_WSASocketW]
mov r15, rax
cmp rax, 0xffffffffffffffff
je 0x14000f8f7
test si, si
je 0x14000f959
mov ax, 0x17
movdqu xmm0, xmmword [rbp + 0x1a2]
push 0x1c
jmp 0x14000f970
call qword [sym.imp.ws2_32.dll_WSAGetLastError]
cmp eax, 0x2739
je 0x14000f912
mov r13d, eax
cmp eax, 0x2726
jne 0x14000f9c0
mov dword [rsp + 0x28], 1
and dword [rsp + 0x20], 0
mov ecx, r12d
push 2
pop rdx
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.ws2_32.dll_WSASocketW]
cmp rax, 0xffffffffffffffff
je 0x14000f9e7
mov r15, rax
mov rcx, rax
push 1
pop rdx
xor r8d, r8d
call qword [sym.imp.kernel32.dll_SetHandleInformation]
test eax, eax
jne 0x14000f8e2
call qword [sym.imp.kernel32.dll_GetLastError]
jmp 0x14000f9b4
movzx edi, word [rbp + 0x1a4]
mov ebx, dword [rbp + 0x1a0]
mov ax, 2
pxor xmm0, xmm0
push 0x10
pop r8
rol di, 8
mov word [rbp + 0x170], ax
mov word [rbp + 0x172], di
mov dword [rbp + 0x174], ebx
movdqu xmmword [rbp + 0x178], xmm0
mov dword [rbp + 0x188], r14d
mov rcx, r15
lea rdx, [rbp + 0x170]
call qword [sym.imp.ws2_32.dll_bind]
cmp eax, 0xffffffff
jne 0x14000fa18
call qword [sym.imp.ws2_32.dll_WSAGetLastError]
mov r13d, eax
mov rcx, r15
call qword [sym.imp.ws2_32.dll_closesocket]
shl r13, 0x20
or r13, 2
mov rcx, qword [rbp + 0x1d0]
call fcn.1400189c6
mov rdi, qword [rbp + 0x1c8]
mov r15, qword [rbp + 0x1c0]
jmp 0x14000f831
call qword [sym.imp.ws2_32.dll_WSAGetLastError]
mov r13d, eax
jmp 0x14000f9c0
call fcn.1400262e0
jmp 0x14000f8ad
lea rcx, [rbp - 0x50]
call fcn.1400189ab
test r13, r13
lea rcx, str.could_not_resolve_to_any_addresses
cmovne rcx, r13
jmp 0x14000f763
lea rcx, [rbp - 0x50]
call fcn.1400189ab
mov rcx, qword [rbp + 0x1d0]
call fcn.1400189c6
mov rcx, r15
add rsp, 0x268
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
jmp qword [sym.imp.ws2_32.dll_closesocket]
cmp r14, 0xe
je 0x14000f763
sub r8, r14
cmp r8, 5
jae 0x14000fad7
xor eax, eax
xor edi, edi
movzx edx, byte [rbx + rax]
add edx, 0xffffffd0
cmp edx, 9
ja 0x14000f763
imul edi, edi, 0xa
add edi, edx
inc rax
cmp r8, rax
jne 0x14000fa61
mov rax, qword [0x1400381b8]
cmp rax, 3
jne 0x14000ff1d
lea rdx, str.127.0.0.1:34254Hash_table_capacity_overflow
cmp rsi, 0x17f
ja 0x14000ff27
lea rbx, [rbp - 0x50]
mov rcx, rbx
mov r8, rsi
call sub.VCRUNTIME140.dll_memcpy
mov byte [rbp + rsi - 0x50], 0
cmp rsi, 0xe
ja 0x14000fb1a
xor ecx, ecx
cmp byte [rbp + rcx - 0x50], 0
je 0x14000fbad
inc rcx
cmp r14, rcx
jne 0x14000fabf
jmp 0x14000fc05
xor r9d, r9d
mov r10w, 0xa
xor edi, edi
cmp r8, r9
je 0x14000fa7e
movzx r11d, byte [rbx + r9]
mov eax, edi
mul r10w
seto dl
add r11d, 0xffffffd0
cmp r11d, 9
ja 0x14000f763
test dl, dl
jne 0x14000f763
mov edi, eax
inc r9
add di, r11w
jae 0x14000fae1
jmp 0x14000f763
lea rax, [rbp - 0x49]
and rax, 0xfffffffffffffff8
sub rax, rbx
je 0x14000fb45
je 0x14000fb45
xor ecx, ecx
cmp byte [rbp + rcx - 0x50], 0
je 0x14000fbad
inc rcx
cmp rax, rcx
jne 0x14000fb2b
lea rcx, [rsi - 0xf]
cmp rax, rcx
jbe 0x14000fb4b
jmp 0x14000fb8b
lea rcx, [rsi - 0xf]
xor eax, eax
movdqa xmm0, xmmword [0x140027600]
movabs rdx, 0x8080808080808080
movdqu xmm1, xmmword [rbp + rax - 0x50]
movdqa xmm2, xmm1
paddq xmm2, xmm0
pandn xmm1, xmm2
pshufd xmm2, xmm1, 0xee
por xmm2, xmm1
movq r8, xmm2
test r8, rdx
jne 0x14000fb8b
add rax, 0x10
cmp rax, rcx
jbe 0x14000fb5d
sub r14, rax
je 0x14000fc05
lea rdx, [rax + rbp]
add rdx, 0xffffffffffffffb0
xor ecx, ecx
cmp byte [rdx + rcx], 0
je 0x14000fbaa
inc rcx
cmp r14, rcx
jne 0x14000fb9a
jmp 0x14000fc05
add rcx, rax
cmp rcx, rsi
jne 0x14000fc05
pxor xmm0, xmm0
lea r8, [rbp + 0x170]
movdqa xmmword [r8], xmm0
movdqa xmmword [r8 + 0x20], xmm0
movdqa xmmword [r8 + 0x10], xmm0
mov dword [r8 + 8], 1
lea r9, [rbp + 0x150]
and qword [r9], 0
lea rcx, [rbp - 0x50]
xor edx, edx
call qword [sym.imp.ws2_32.dll_getaddrinfo]
test eax, eax
je 0x14000fefa
call qword [sym.imp.ws2_32.dll_WSAGetLastError]
shl rax, 0x20
or rax, 2
jmp 0x14000fc0c
lea rax, str.file_name_contained_an_unexpected_NUL_byte
mov qword [rbp + 0x1a8], rax
push 1
pop rax
test rax, rax
je 0x14000fc27
mov rcx, qword [rbp + 0x1a8]
jmp 0x14000f763
lea rdx, [rbp + 0x1a8]
movups xmm0, xmmword [rdx]
movzx eax, word [rdx + 0x10]
mov ecx, dword [rdx + 0x12]
mov dword [rbp + 0x148], ecx
movzx r8d, word [rdx + 0x16]
mov word [rbp + 0x14c], r8w
lea r9, [rbp + 0x16e]
mov word [r9], ax
movups xmmword [rdx], xmm0
mov word [rdx + 0x10], ax
mov dword [rdx + 0x12], ecx
mov word [rdx + 0x16], r8w
mov qword [rdx - 8], r9
mov byte [rbp + 0x1df], 1
lea rcx, [rbp - 0x50]
call fcn.1400201c0
movzx esi, word [rbp - 0x50]
cmp si, 2
jne 0x14000fc9d
push 4
pop rdi
mov rcx, qword [rbp + 0x1a8]
call qword [sym.imp.ws2_32.dll_freeaddrinfo]
xor ecx, ecx
mov r15, rdi
jmp 0x14000f817
mov edi, dword [rbp - 0x4e]
movzx ebx, word [rbp - 0x4a]
mov eax, dword [rbp - 0x38]
mov dword [rbp + 0x180], eax
movups xmm0, xmmword [rbp - 0x48]
movaps xmmword [rbp + 0x170], xmm0
movzx r15d, word [rbp - 0x34]
movzx r14d, word [rbp - 0x32]
mov rax, qword [rbp + 0x1a0]
movzx r12d, word [rax]
mov al, byte [0x140038230]
push 4
pop r13
mov ecx, 0x80
mov rdx, r13
call fcn.140006980
test rax, rax
je 0x14000ff82
test si, si
cmovne r15d, r12d
cmove ebx, r12d
lea rdx, [rbp + 0x178]
mov ecx, dword [rdx + 8]
mov dword [rax + 0x18], ecx
movaps xmm0, xmmword [rdx - 8]
movups xmmword [rax + 8], xmm0
mov word [rax], si
mov dword [rax + 2], edi
mov word [rax + 6], bx
mov word [rax + 0x1c], r15w
mov word [rax + 0x1e], r14w
movups xmm0, xmmword [rbp + 0x1a0]
movdqu xmm1, xmmword [rbp + 0x1b0]
movdqa xmmword [rdx + 8], xmm1
movaps xmmword [rdx - 8], xmm0
push 1
pop r14
mov qword [rbp + 0x1d0], r13
mov qword [rbp + 0x1c8], rax
mov r15, rax
lea rcx, [rbp - 0x50]
lea rdx, [rbp + 0x178]
call fcn.1400201c0
movzx ebx, word [rbp - 0x50]
cmp bx, 2
je 0x14000fec7
mov r8d, dword [rbp - 0x4e]
movzx edi, word [rbp - 0x4a]
lea rcx, [rbp - 0x48]
mov eax, dword [rcx + 0x10]
mov dword [rbp + 0x140], eax
movups xmm0, xmmword [rcx]
movaps xmmword [rbp + 0x130], xmm0
mov rax, qword [rbp + 0x170]
movzx esi, word [rax]
test bx, bx
mov r13, qword [rbp + 0x1d0]
jne 0x14000fda7
mov edi, esi
movzx esi, word [rbp - 0x34]
movzx r12d, word [rbp - 0x32]
cmp r14, r13
jne 0x14000fe7b
mov rax, r13
inc r13
je 0x14000ff6a
add rax, rax
cmp rax, r13
cmova r13, rax
cmp r13, 5
push 4
pop r9
jae 0x14000fdd8
mov r13, r9
xor edx, edx
mov rax, r13
shr rax, 0x3a
sete al
mov rcx, qword [rbp + 0x1d0]
test rcx, rcx
mov dword [rbp + 0x1c0], r8d
je 0x14000fe0f
shl rcx, 5
mov r8, qword [rbp + 0x1c8]
mov qword [rbp - 0x50], r8
mov qword [rbp - 0x40], rcx
mov rcx, r9
jmp 0x14000fe11
xor ecx, ecx
mov r8, r13
shl r8, 5
mov dl, al
shl rdx, 2
mov qword [rbp - 0x48], rcx
lea rcx, [rbp + 0x150]
lea r9, [rbp - 0x50]
call fcn.1400198c0
cmp qword [rbp + 0x150], 0
mov r15, qword [rbp + 0x158]
je 0x14000fe6d
movabs rax, 0x8000000000000001
cmp r15, rax
mov r8d, dword [rbp + 0x1c0]
jne 0x14000ff65
mov r13, qword [rbp + 0x1d0]
mov r15, qword [rbp + 0x1c8]
jmp 0x14000fe7b
mov qword [rbp + 0x1c8], r15
mov r8d, dword [rbp + 0x1c0]
mov rax, r14
shl rax, 5
mov word [r15 + rax], bx
mov dword [r15 + rax + 2], r8d
mov word [r15 + rax + 6], di
movdqa xmm0, xmmword [rbp + 0x130]
movdqu xmmword [r15 + rax + 8], xmm0
mov ecx, dword [rbp + 0x140]
mov dword [r15 + rax + 0x18], ecx
mov word [r15 + rax + 0x1c], si
mov word [r15 + rax + 0x1e], r12w
inc r14
mov qword [rbp + 0x1d0], r13
jmp 0x14000fd4e
mov rcx, qword [rbp + 0x178]
call qword [sym.imp.ws2_32.dll_freeaddrinfo]
mov rdi, qword [rbp + 0x1c8]
test rdi, rdi
mov rcx, qword [rbp + 0x1d0]
je 0x14000f763
mov r15, r14
shl r15, 5
add r15, rdi
jmp 0x14000f817
mov rax, qword [rbp + 0x150]
mov qword [rbp + 0x1a8], rax
mov qword [rbp + 0x1b0], rax
mov word [rbp + 0x1b8], di
xor eax, eax
jmp 0x14000fc16
call fcn.1400262e0
jmp 0x14000fa8f
lea rbx, [rbp + 0x1a0]
mov rcx, rbx
mov r8, rsi
mov r9d, edi
call fcn.140026340
mov rax, qword [rbx]
jmp 0x14000fc16
lea rcx, str.called__Option::unwrap____on_a__None__value_rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_srcio_borrowed_buf.rs_rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrarycore_src_sliceiter.rs
lea r8, str._rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrary_std_src_synconce.rs
push 0x2b
pop rdx
call fcn.140025040
push 4
pop rcx
push 0x20
pop rdx
call fcn.140024db0
test r15, r15
jne 0x14000ff71
call fcn.1400057c0
jmp 0x14000ff96
mov rdx, qword [rbp + 0x160]
mov rcx, r15
call fcn.140024db0
jmp 0x14000ff96
mov byte [rbp + 0x1df], 1
push 4
pop rcx
mov edx, 0x80
call fcn.140024db0
ud2