Function at 0x14000f47b
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 0x14000fdd4
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.140009260
mov rsi, rax
test sil, 1
je 0x14000f563
mov rbx, qword [rbp + 0x178]
test rbx, rbx
je 0x14000f531
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 0x14000f531
lea rdx, [rbp - 0x50]
mov dword [rdx + 0x10], 0xa
and qword [rdx], 0
mov byte [rdx + 0x14], 1
lea rcx, [rbp + 0x170]
call fcn.1400097c0
cmp ax, 1
jne 0x14000f533
jmp 0x14000f53f
xor eax, eax
mov qword [rbp + 0x178], rbx
test ax, ax
je 0x14000f563
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 0x14000f567
xor esi, esi
xor eax, eax
or rax, rsi
cmp ax, 1
je 0x14000f58b
movzx eax, ax
test eax, eax
jne 0x14000f599
mov qword [rbp + 0x170], rdi
mov qword [rbp + 0x178], 0xf
jmp 0x14000f599
cmp qword [rbp + 0x178], 0
je 0x14000f650
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.14000b610
cmp rax, 1
jne 0x14000f5ec
mov rsi, rdx
cmp rdx, 0xf
jae 0x14000f5e6
cmp byte [rsi + rdi], bl
je 0x14000f60d
cmp rsi, 0xf
jbe 0x14000f5c5
lea rcx, str.invalid_socket_address
call fcn.14000edca
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._h_t_
cmp r14, 0xf
je 0x14000f5f3
lea rbx, [rsi + rdi]
inc rbx
movzx eax, byte [rbx]
push 0xf
pop r8
cmp eax, 0x2d
je 0x14000f8da
cmp eax, 0x2b
jne 0x14000f8e4
cmp r14, 0xe
je 0x14000f5f3
inc rbx
push 0xe
pop r8
jmp 0x14000f8e4
mov al, byte [0x14009c230]
push 0x20
pop rcx
push 4
pop rdx
call fcn.140006810
test rax, rax
je 0x14000fdea
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 0x14000f88c
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 0x14000f88c
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 [0x14009c1b8]
cmp rax, 3
jne 0x14000f882
push 2
pop r12
test si, si
je 0x14000f74a
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 0x14000f787
test si, si
je 0x14000f7e9
mov ax, 0x17
movdqu xmm0, xmmword [rbp + 0x1a2]
push 0x1c
jmp 0x14000f800
call qword [sym.imp.ws2_32.dll_WSAGetLastError]
cmp eax, 0x2739
je 0x14000f7a2
mov r13d, eax
cmp eax, 0x2726
jne 0x14000f850
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 0x14000f877
mov r15, rax
mov rcx, rax
push 1
pop rdx
xor r8d, r8d
call qword [sym.imp.kernel32.dll_SetHandleInformation]
test eax, eax
jne 0x14000f772
call qword [sym.imp.kernel32.dll_GetLastError]
jmp 0x14000f844
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 0x14000f8a8
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.140018856
mov rdi, qword [rbp + 0x1c8]
mov r15, qword [rbp + 0x1c0]
jmp 0x14000f6c1
call qword [sym.imp.ws2_32.dll_WSAGetLastError]
mov r13d, eax
jmp 0x14000f850
call fcn.140025ec0
jmp 0x14000f73d
lea rcx, [rbp - 0x50]
call fcn.14001883b
test r13, r13
lea rcx, str.could_not_resolve_to_any_addresses
cmovne rcx, r13
jmp 0x14000f5f3
lea rcx, [rbp - 0x50]
call fcn.14001883b
mov rcx, qword [rbp + 0x1d0]
call fcn.140018856
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 0x14000f5f3
sub r8, r14
cmp r8, 5
jae 0x14000f967
xor eax, eax
xor edi, edi
movzx edx, byte [rbx + rax]
add edx, 0xffffffd0
cmp edx, 9
ja 0x14000f5f3
imul edi, edi, 0xa
add edi, edx
inc rax
cmp r8, rax
jne 0x14000f8f1
mov rax, qword [0x14009c1b8]
cmp rax, 3
jne 0x14000fdad
lea rdx, str.127.0.0.1:34254Hash_table_capacity_overflow
cmp rsi, 0x17f
ja 0x14000fdb7
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 0x14000f9aa
xor ecx, ecx
cmp byte [rbp + rcx - 0x50], 0
je 0x14000fa3d
inc rcx
cmp r14, rcx
jne 0x14000f94f
jmp 0x14000fa95
xor r9d, r9d
mov r10w, 0xa
xor edi, edi
cmp r8, r9
je 0x14000f90e
movzx r11d, byte [rbx + r9]
mov eax, edi
mul r10w
seto dl
add r11d, 0xffffffd0
cmp r11d, 9
ja 0x14000f5f3
test dl, dl
jne 0x14000f5f3
mov edi, eax
inc r9
add di, r11w
jae 0x14000f971
jmp 0x14000f5f3
lea rax, [rbp - 0x49]
and rax, 0xfffffffffffffff8
sub rax, rbx
je 0x14000f9d5
je 0x14000f9d5
xor ecx, ecx
cmp byte [rbp + rcx - 0x50], 0
je 0x14000fa3d
inc rcx
cmp rax, rcx
jne 0x14000f9bb
lea rcx, [rsi - 0xf]
cmp rax, rcx
jbe 0x14000f9db
jmp 0x14000fa1b
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 0x14000fa1b
add rax, 0x10
cmp rax, rcx
jbe 0x14000f9ed
sub r14, rax
je 0x14000fa95
lea rdx, [rax + rbp]
add rdx, 0xffffffffffffffb0
xor ecx, ecx
cmp byte [rdx + rcx], 0
je 0x14000fa3a
inc rcx
cmp r14, rcx
jne 0x14000fa2a
jmp 0x14000fa95
add rcx, rax
cmp rcx, rsi
jne 0x14000fa95
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 0x14000fd8a
call qword [sym.imp.ws2_32.dll_WSAGetLastError]
shl rax, 0x20
or rax, 2
jmp 0x14000fa9c
lea rax, str.file_name_contained_an_unexpected_NUL_byte
mov qword [rbp + 0x1a8], rax
push 1
pop rax
test rax, rax
je 0x14000fab7
mov rcx, qword [rbp + 0x1a8]
jmp 0x14000f5f3
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.14001fe00
movzx esi, word [rbp - 0x50]
cmp si, 2
jne 0x14000fb2d
push 4
pop rdi
mov rcx, qword [rbp + 0x1a8]
call qword [sym.imp.ws2_32.dll_freeaddrinfo]
xor ecx, ecx
mov r15, rdi
jmp 0x14000f6a7
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 [0x14009c230]
push 4
pop r13
mov ecx, 0x80
mov rdx, r13
call fcn.140006810
test rax, rax
je 0x14000fe12
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.14001fe00
movzx ebx, word [rbp - 0x50]
cmp bx, 2
je 0x14000fd57
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 0x14000fc37
mov edi, esi
movzx esi, word [rbp - 0x34]
movzx r12d, word [rbp - 0x32]
cmp r14, r13
jne 0x14000fd0b
mov rax, r13
inc r13
je 0x14000fdfa
add rax, rax
cmp rax, r13
cmova r13, rax
cmp r13, 5
push 4
pop r9
jae 0x14000fc68
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 0x14000fc9f
shl rcx, 5
mov r8, qword [rbp + 0x1c8]
mov qword [rbp - 0x50], r8
mov qword [rbp - 0x40], rcx
mov rcx, r9
jmp 0x14000fca1
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.140019750
cmp qword [rbp + 0x150], 0
mov r15, qword [rbp + 0x158]
je 0x14000fcfd
movabs rax, 0x8000000000000001
cmp r15, rax
mov r8d, dword [rbp + 0x1c0]
jne 0x14000fdf5
mov r13, qword [rbp + 0x1d0]
mov r15, qword [rbp + 0x1c8]
jmp 0x14000fd0b
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 0x14000fbde
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 0x14000f5f3
mov r15, r14
shl r15, 5
add r15, rdi
jmp 0x14000f6a7
mov rax, qword [rbp + 0x150]
mov qword [rbp + 0x1a8], rax
mov qword [rbp + 0x1b0], rax
mov word [rbp + 0x1b8], di
xor eax, eax
jmp 0x14000faa6
call fcn.140025ec0
jmp 0x14000f91f
lea rbx, [rbp + 0x1a0]
mov rcx, rbx
mov r8, rsi
mov r9d, edi
call fcn.140025f20
mov rax, qword [rbx]
jmp 0x14000faa6
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.140024c80
push 4
pop rcx
push 0x20
pop rdx
call fcn.1400249f0
test r15, r15
jne 0x14000fe01
call fcn.140005650
jmp 0x14000fe26
mov rdx, qword [rbp + 0x160]
mov rcx, r15
call fcn.1400249f0
jmp 0x14000fe26
mov byte [rbp + 0x1df], 1
push 4
pop rcx
mov edx, 0x80
call fcn.1400249f0
ud2