Function at 0x14004e57b
Capabilities:
Set socket configuration

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x308
mov r15, r8
mov rbx, rdx
mov qword [rsp + 0x58], rcx
movzx eax, byte [rdx + 0x358]
test eax, eax
je 0x14004e5c7
cmp eax, 3
jne case.default.0x14004e5c5
lea r12, [rbx + 0x1e0]
movzx eax, byte [rbx + 0x268]
lea rcx, [0x1400bc0cc]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov rax, qword [rbx]
mov rcx, qword [rbx + 8]
mov qword [rbx + 0x10], rax
mov qword [rbx + 0x18], rcx
and qword [rbx + 0x20], 0
mov qword [rbx + 0x40], rax
xor ebp, ebp
jmp 0x14004e5fb
lea rcx, str._async_fn__resumed_after_completionunable_to_find_any_user_specified_roots_in_the_final_cert_chain_home_zed_.cargo_registry_src_index.crates.io_6f17d22bba15001f_tokio_util_0.7.11_src_util_poll_buf.rs
lea r8, str._home_zed_.cargo_registry_src_index.crates.io_6f17d22bba15001f_hyper_0.14.29_src_client_connect_http.rs
mov edx, 0x23
call fcn.1400087a0
mov rcx, qword [rax + 8]
cmp rcx, qword [rax + 0x18]
je 0x14004ee23
lea rdx, [rcx + 0x20]
mov qword [rax + 8], rdx
movzx r14d, word [rcx]
movups xmm0, xmmword [rcx + 0x10]
movups xmmword [rsp + 0x18e], xmm0
movups xmm0, xmmword [rcx + 2]
movaps xmmword [rsp + 0x180], xmm0
cmp r14w, 2
je 0x14004ee1f
mov word [rbx + 0x48], r14w
movaps xmm0, xmmword [rsp + 0x180]
movups xmmword [rbx + 0x4a], xmm0
movups xmm0, xmmword [rsp + 0x18e]
movups xmmword [rbx + 0x58], xmm0
mov rax, qword [rbx + 0x10]
mov r13, qword [rbx + 0x18]
mov rcx, qword [rax + 0x20]
mov qword [rsp + 0xd8], rcx
mov eax, dword [rax + 0x28]
mov dword [rsp + 0x7c], eax
test r14w, r14w
mov eax, 2
mov esi, 0x17
cmove esi, eax
mov rax, qword [0x140115040]
cmp rax, 3
jne 0x14004eddf
mov dword [rsp + 0x28], 0x81
and dword [rsp + 0x20], 0
mov ecx, esi
mov edx, 1
mov r8d, 6
xor r9d, r9d
call sub.ws2_32.dll_WSASocketW
mov rsi, rax
cmp rax, 0xffffffffffffffff
jne 0x14004e6fe
call fcn.140034376
lea rdx, str.tcp_open_errortcp_set_nonblocking_errortcp_bind_local_error
lea rdi, [rsp + 0xf8]
mov r8d, 0xe
mov rcx, rdi
mov r9, rax
call fcn.14002ac3b
mov rbp, qword [rdi]
mov rsi, qword [rdi + 8]
movups xmm0, xmmword [rdi + 0x10]
movaps xmmword [rsp + 0xa0], xmm0
test rbp, rbp
jne 0x14004ef4d
lea rdi, [rsp + 0xa0]
mov dword [rdi], 1
mov rcx, rsi
mov edx, 0x8004667e
mov r8, rdi
call sub.ws2_32.dll_ioctlsocket
xor edx, edx
cmp eax, 0xffffffff
jne 0x14004e72b
call fcn.140034376
mov rdx, rax
lea r8, [0x1400d82e6]
lea r12, [rsp + 0xf8]
mov r9d, 0x19
mov rcx, r12
call fcn.14002ae0b
mov rbp, qword [r12]
test rbp, rbp
jne 0x14004ee39
mov ebp, dword [r13 + 0x48]
cmp ebp, 0x3b9aca00
je 0x14004e827
mov r12, qword [r13 + 0x40]
mov rcx, rsi
mov edx, 8
mov r8d, 1
call fcn.140083760
test rax, rax
je 0x14004e796
lea rcx, [rsp + 0xf8]
mov qword [rcx], rax
call fcn.140024c85
jmp 0x14004e827
mov ecx, 0x3e8
mov rax, r12
mul rcx
mov rcx, rax
mov r8, rdx
xor r9d, r9d
mov r10d, 0xf4240
mov eax, ebp
xor edx, edx
div r10d
add rax, rcx
adc r8, 0
mov ecx, 0xffffffff
cmp rax, rcx
cmovae rax, rcx
neg r8
sbb r9d, r9d
or r9d, eax
lea r8, [rsp + 0xf8]
mov dword [r8], 1
mov dword [r8 + 4], r9d
and dword [r8 + 8], 0
and dword [rsp + 0xa0], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
and dword [rsp + 0x28], 0
mov qword [rsp + 0x30], rdi
and qword [rsp + 0x20], 0
mov rcx, rsi
mov edx, 0x98000004
mov r9d, 0xc
call sub.ws2_32.dll_WSAIoctl
cmp eax, 0xffffffff
je 0x14004edc1
test r14w, r14w
je 0x14004e896
cmp byte [r13 + 0x56], 0
je 0x14004e8e2
movss xmm0, dword [r13 + 0x57]
movss xmm1, dword [r13 + 0x63]
movsd xmm2, qword [r13 + 0x5b]
movlhps xmm0, xmm2
movlhps xmm2, xmm1
shufps xmm0, xmm2, 0x98
lea rdx, [rsp + 0xf8]
movups xmmword [rdx + 8], xmm0
xorps xmm0, xmm0
movups xmmword [rdx + 0x68], xmm0
movups xmmword [rdx + 0x58], xmm0
movups xmmword [rdx + 0x48], xmm0
movups xmmword [rdx + 0x38], xmm0
and qword [rdx + 0x78], 0
movups xmmword [rdx + 0x28], xmm0
movups xmmword [rdx + 0x18], xmm0
mov qword [rdx], 0x17
mov dword [rdx + 0x80], 0x1c
jmp 0x14004e934
cmp byte [r13 + 0x51], 0
je 0x14004e8ed
mov eax, dword [r13 + 0x52]
xorps xmm0, xmm0
lea rdx, [rsp + 0xf8]
movups xmmword [rdx + 0x68], xmm0
movups xmmword [rdx + 0x58], xmm0
movups xmmword [rdx + 0x48], xmm0
movups xmmword [rdx + 0x38], xmm0
movups xmmword [rdx + 0x28], xmm0
movups xmmword [rdx + 0x18], xmm0
and qword [rdx + 0x78], 0
movups xmmword [rdx + 8], xmm0
mov dword [rdx], 2
mov dword [rdx + 4], eax
mov dword [rdx + 0x80], 0x10
jmp 0x14004e934
mov eax, 0x1c
mov cx, 0x17
jmp 0x14004e8f6
mov eax, 0x10
mov cx, 2
xorps xmm0, xmm0
lea rdx, [rsp + 0xf8]
movups xmmword [rdx + 0x68], xmm0
movups xmmword [rdx + 0x58], xmm0
movups xmmword [rdx + 0x48], xmm0
movups xmmword [rdx + 0x38], xmm0
movups xmmword [rdx + 0x28], xmm0
movups xmmword [rdx + 0x18], xmm0
movups xmmword [rdx + 8], xmm0
and qword [rdx + 0x78], 0
mov word [rdx], cx
and word [rdx + 2], 0
and dword [rdx + 4], 0
mov dword [rdx + 0x80], eax
mov rcx, rsi
call fcn.14008373c
lea r8, [0x1400d82ff]
lea rdi, [rsp + 0xa0]
mov r9d, 0x14
mov rcx, rdi
mov rdx, rax
call fcn.14002ae0b
mov rbp, qword [rdi]
test rbp, rbp
jne 0x14004ee4b
cmp byte [r13 + 0x68], 0
je 0x14004e997
mov rcx, rsi
mov edx, 4
mov r8d, 1
call fcn.140083760
test rax, rax
je 0x14004e997
lea rcx, [rsp + 0xf8]
mov qword [rcx], rax
call fcn.140024c85
cmp qword [r13], 0
je 0x14004e9d7
mov rax, qword [r13 + 8]
mov rcx, rax
shr rcx, 0x20
xor r8d, r8d
neg rcx
sbb r8d, r8d
or r8d, eax
mov rcx, rsi
mov edx, 0x1001
call fcn.140083760
test rax, rax
je 0x14004e9d7
lea rcx, [rsp + 0xf8]
mov qword [rcx], rax
call fcn.140024c85
cmp qword [r13 + 0x10], 0
je 0x14004ea17
mov rax, qword [r13 + 0x18]
mov rcx, rax
shr rcx, 0x20
xor r8d, r8d
neg rcx
sbb r8d, r8d
or r8d, eax
mov rcx, rsi
mov edx, 0x1002
call fcn.140083760
test rax, rax
je 0x14004ea17
lea rcx, [rsp + 0xf8]
mov qword [rcx], rax
call fcn.140024c85
movups xmm0, xmmword [rbx + 0x48]
movups xmm1, xmmword [rbx + 0x58]
movaps xmmword [rsp + 0x60], xmm1
lea r13, [rbx + 0x68]
mov rax, qword [rsp + 0xd8]
mov qword [rbx + 0x68], rax
mov eax, dword [rsp + 0x7c]
mov dword [rbx + 0x70], eax
movups xmmword [rbx + 0x78], xmm0
movaps xmm0, xmmword [rsp + 0x60]
movups xmmword [rbx + 0x88], xmm0
mov qword [rbx + 0x98], rsi
lea rdi, [rbx + 0xa0]
lea rsi, [rsp + 0x1a0]
mov ecx, 9
rep movsq qword [rdi], qword [rsi]
xor eax, eax
mov byte [rbx + 0xe8], al
mov ecx, dword [rsp + 0x90]
mov edx, dword [rsp + 0x93]
mov dword [rbx + 0xe9], ecx
mov dword [rbx + 0xec], edx
mov byte [rbx + 0xf0], al
lea rcx, [rbx + 0xf1]
lea rdx, [rsp + 0x218]
mov r8d, 0xef
call sub.msvcrt.dll_memcpy
lea r12, [rbx + 0x1e0]
mov r8d, 0x178
mov rcx, r12
mov rdx, r13
call sub.msvcrt.dll_memcpy
movzx eax, byte [rbx + 0x268]
lea rcx, [0x1400bc0cc]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov ebp, dword [rbx + 0x1e8]
cmp ebp, 0x3b9aca00
jne 0x14004eb52
lea rsi, [rbx + 0x1f0]
lea rdi, [rbx + 0x270]
mov ecx, 0xf
rep movsq qword [rdi], qword [rsi]
lea rdi, [rbx + 0x270]
lea rsi, [rsp + 0x218]
mov rcx, rsi
mov rdx, rdi
mov r8, r15
call fcn.14004f183
cmp qword [rsi], 0
jne 0x14004ee18
mov r14, qword [rsp + 0x220]
mov rsi, qword [rsp + 0x228]
movups xmm0, xmmword [rsp + 0x230]
movaps xmmword [rsp + 0x90], xmm0
mov rcx, rdi
call fcn.14004f12a
jmp 0x14004ed2a
mov r13, qword [rbx + 0x1e0]
lea rsi, [rbx + 0x1f0]
lea rdi, [rsp + 0xf8]
mov ecx, 0xf
rep movsq qword [rdi], qword [rsi]
call fcn.140086c30
mov rcx, rax
mov r8, r13
mov r9d, ebp
call fcn.1400a5320
cmp edx, 0x3b9aca00
jne 0x14004eb9a
lea rcx, [rsp + 0x1a0]
call fcn.1400b045d
jmp 0x14004ebb4
mov r8d, edx
lea r9, str._home_zed_.cargo_registry_src_index.crates.io_6f17d22bba15001f_hyper_0.14.29_src_client_connect_http.rs
lea rcx, [rsp + 0x1a0]
mov rdx, rax
call fcn.1400b0360
lea rdi, [rsp + 0x288]
lea rsi, [rsp + 0xf8]
mov ecx, 0xf
rep movsq qword [rdi], qword [rsi]
lea rdx, [rsp + 0x218]
lea rsi, [rsp + 0x1a0]
mov ecx, 0xe
mov rdi, rdx
rep movsq qword [rdi], qword [rsi]
lea rcx, [rbx + 0x270]
mov r8d, 0xe8
call sub.msvcrt.dll_memcpy
lea rsi, [rbx + 0x270]
lea r13, [rbx + 0x2e0]
call fcn.14004fbef
mov edi, eax
lea rbp, [rsp + 0xf8]
mov rcx, rbp
mov rdx, r13
mov r8, r15
call fcn.14004f183
mov r14, qword [rbp]
test r14, r14
je 0x14004ec8b
cmp dil, 2
setne bpl
test dil, 1
sete dil
call fcn.14004fbef
test bpl, dil
jne 0x14004ecbd
cmp al, 2
je 0x14004ecbd
and al, 1
jne 0x14004ecbd
xor ecx, ecx
call fcn.1400ab405
mov dil, 2
test rax, rax
je 0x14004ec6a
mov dil, byte [rax + 0x44]
mov bpl, byte [rax + 0x45]
mov byte [rax + 0x44], 0
mov rcx, rsi
mov rdx, r15
call fcn.1400ad28a
mov r13d, eax
mov ecx, edi
mov edx, ebp
call fcn.14004fc18
test r13b, r13b
je 0x14004ecd0
jmp 0x14004ef1d
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x80], rax
movups xmm0, xmmword [rsp + 0x110]
movaps xmmword [rsp + 0x1a0], xmm0
jmp 0x14004ecd0
mov rcx, rsi
mov rdx, r15
call fcn.1400ad28a
test al, al
jne 0x14004ef1d
movaps xmm0, xmmword [rsp + 0x1a0]
movaps xmmword [rsp + 0x60], xmm0
mov rcx, rsi
call fcn.14004f14a
test r14, r14
je 0x14004ecf7
xor r14d, r14d
call fcn.14004fb7f
mov rsi, rax
jmp 0x14004ed2a
xor r14d, r14d
mov rsi, qword [rsp + 0x80]
cmp qword [rsp + 0x88], 0
je 0x14004ed2a
movaps xmm0, xmmword [rsp + 0x60]
movaps xmmword [rsp + 0x90], xmm0
mov rsi, qword [rsp + 0x80]
mov r14, qword [rsp + 0x88]
test r14, r14
je 0x14004ed44
movaps xmm0, xmmword [rsp + 0x90]
movaps xmmword [rsp + 0xa0], xmm0
mov rbp, r14
jmp 0x14004ed77
lea rdx, [0x1400f937b]
lea rdi, [rsp + 0x218]
mov r8d, 0x11
mov rcx, rdi
mov r9, rsi
call fcn.14002ac3b
mov rbp, qword [rdi]
mov rsi, qword [rdi + 8]
movups xmm0, xmmword [rdi + 0x10]
movaps xmmword [rsp + 0xa0], xmm0
movaps xmm0, xmmword [rsp + 0xa0]
movaps xmmword [rsp + 0xe0], xmm0
mov byte [rbx + 0x268], 1
mov rcx, r12
call fcn.14004f0e8
test r14, r14
jne 0x14004edcb
lea rcx, [rbx + 0x20]
call fcn.14004f11f
mov qword [rbx + 0x20], rbp
mov qword [rbx + 0x28], rsi
movaps xmm0, xmmword [rsp + 0xe0]
movups xmmword [rbx + 0x30], xmm0
mov rax, qword [rbx + 0x40]
jmp 0x14004e5fb
call fcn.140034376
jmp 0x14004e781
xor edi, edi
lea rax, [rsp + 0xe0]
mov r14, qword [rsp + 0x58]
jmp 0x14004ee9a
lea rax, [rsp + 0x57]
mov byte [rax], 1
lea r8, [rsp + 0xf8]
mov qword [r8], rax
lea rax, str._home_zed_.cargo_registry_src_index.crates.io_6f17d22bba15001f_socket2_0.5.7_src_sys_windows.rs
mov qword [rsp + 0x20], rax
lea rcx, [0x140115040]
lea r9, [0x1400fd4e8]
xor edx, edx
call fcn.140083c90
jmp 0x14004e692
mov al, 4
jmp 0x14004ef1f
mov rbp, qword [rbx + 0x20]
test rbp, rbp
je 0x14004eeb0
mov rsi, qword [rbx + 0x28]
movups xmm0, xmmword [rbx + 0x30]
jmp 0x14004eeef
mov rdi, qword [rsp + 0x100]
movups xmm0, xmmword [rsp + 0x108]
jmp 0x14004ee5b
mov rdi, qword [rsp + 0xa8]
movups xmm0, xmmword [rsp + 0xb0]
movaps xmmword [rsp + 0x60], xmm0
mov rcx, rsi
call fcn.1400b83a4
mov rsi, rdi
mov r14, qword [rsp + 0x58]
mov qword [rbx + 0x78], rbp
mov qword [rbx + 0x80], rsi
lea rax, [rbx + 0x88]
movaps xmm0, xmmword [rsp + 0x60]
movups xmmword [rbx + 0x88], xmm0
mov dword [rbx + 0x70], 0x3b9aca01
mov edi, 1
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0xc0], xmm0
lea rcx, [rbx + 0x20]
call fcn.14004f11f
jmp 0x14004ef01
lea rdx, str.Network_unreachabletcp_connect_error
mov r8d, 0x13
mov cl, 7
call fcn.140033829
lea rdx, [0x1400f937b]
lea rdi, [rsp + 0x218]
mov r8d, 0x11
mov rcx, rdi
mov r9, rax
call fcn.14002ac3b
mov rbp, qword [rdi]
mov rsi, qword [rdi + 8]
movups xmm0, xmmword [rdi + 0x10]
movaps xmmword [rsp + 0xc0], xmm0
mov edi, 1
mov r14, qword [rsp + 0x58]
mov qword [r14], rdi
mov qword [r14 + 8], rbp
mov qword [r14 + 0x10], rsi
movaps xmm0, xmmword [rsp + 0xc0]
movups xmmword [r14 + 0x18], xmm0
mov al, 1
jmp 0x14004ef33
mov al, 3
mov byte [rbx + 0x268], al
mov rax, qword [rsp + 0x58]
mov qword [rax], 2
mov al, 3
mov byte [rbx + 0x358], al
add rsp, 0x308
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
movaps xmm0, xmmword [rsp + 0xa0]
movaps xmmword [rsp + 0x60], xmm0
jmp 0x14004ee6b
lea rcx, str._async_fn__resumed_after_completionunable_to_find_any_user_specified_roots_in_the_final_cert_chain_home_zed_.cargo_registry_src_index.crates.io_6f17d22bba15001f_tokio_util_0.7.11_src_util_poll_buf.rs
lea r8, str._home_zed_.cargo_registry_src_index.crates.io_6f17d22bba15001f_hyper_0.14.29_src_client_connect_http.rs
jmp 0x14004e5f1
ud2