Function at 0x14001ba70
Capabilities:
Set socket configuration

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rdi
sub rsp, 0x30
xor ebp, ebp
mov edi, edx
mov rbx, rcx
bt edx, 0xb
jae 0x14001bb05
mov edx, dword [rcx + 0x378]
mov dword [0x1400cfe70], 0x1000021
mov dword [0x1400cfe78], 0x46000089
test edx, edx
js 0x14001bab4
cmp edx, 0xf
jle 0x14001bab6
lea edx, [rbp + 0xf]
jmp 0x14001bab6
mov edx, ebp
mov eax, dword [rcx + 0x37c]
test eax, eax
mov ecx, dword [0x1400c7988]
cmovns ecx, eax
mov dword [0x1400cfe94], edx
lea eax, [rdx - 5]
mov dword [0x1400c7988], ecx
test eax, eax
sete al
mov byte [rbx + 0xf50], al
cmp edx, 3
jb 0x14001bb05
mov ecx, 0x22000003
call fcn.14000e3d0
test al, al
je 0x14001bb05
lea rdx, str.OPTIONS_IMPORT:___verb_and_or___mute_level_changed
mov ecx, 0x22000003
call fcn.14000e000
test dil, dil
jns 0x14001bb3c
mov dl, 1
mov rcx, rbx
call fcn.140019670
cmp dword [0x1400cfe94], 3
jb 0x14001bb3c
mov ecx, 0x22000003
call fcn.14000e3d0
test al, al
je 0x14001bb3c
lea rdx, str.OPTIONS_IMPORT:_timers_and_or_timeouts_modified
mov ecx, 0x22000003
call fcn.14000e000
bt edi, 0x13
jae 0x14001bb91
mov eax, dword [rbx + 0x68]
cmp eax, 4
ja 0x14001c12f
cmp eax, 1
je 0x14001bee9
cmp dword [rbx + 0xf0], ebp
je 0x14001bee9
cmp dword [0x1400cfe94], 3
jb 0x14001bb8b
mov ecx, 0x22000003
call fcn.14000e3d0
test al, al
je 0x14001bb8b
lea rdx, str.OPTIONS_IMPORT:___explicit_exit_notify_can_only_be_used_with___proto_udp
mov ecx, 0x22000003
call fcn.14000e000
mov dword [rbx + 0xf0], ebp
bt edi, 0xa
jae 0x14001bbf7
cmp dword [0x1400cfe94], 3
mov qword [rsp + 0x40], rsi
jb 0x14001bbc4
mov ecx, 0x22000003
call fcn.14000e3d0
test al, al
je 0x14001bbc4
lea rdx, str.OPTIONS_IMPORT:_compression_parms_modified
mov ecx, 0x22000003
call fcn.14000e000
mov rsi, qword [rbx + 0xef0]
test rsi, rsi
je 0x14001bbdf
mov rcx, rsi
call qword [rsi + 0x18]
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
lea rcx, [rbx + 0x394]
call fcn.140005340
mov rsi, qword [rsp + 0x40]
mov qword [rbx + 0xef0], rax
test dil, 0x40
je 0x14001bc2d
cmp dword [0x1400cfe94], 3
jb 0x14001bc25
mov ecx, 0x22000003
call fcn.14000e3d0
test al, al
je 0x14001bc25
lea rdx, str.OPTIONS_IMPORT:_traffic_shaper_enabled
mov ecx, 0x22000003
call fcn.14000e000
mov rcx, rbx
call fcn.1400197f0
bt edi, 0x19
jae 0x14001bc93
cmp dword [0x1400cfe94], 3
jb 0x14001bc5b
mov ecx, 0x22000003
call fcn.14000e3d0
test al, al
je 0x14001bc5b
lea rdx, str.OPTIONS_IMPORT:___sndbuf___rcvbuf_options_modified
mov ecx, 0x22000003
call fcn.14000e000
mov rdx, qword [rbx + 0xc20]
mov r8d, dword [rbx + 0x39c]
test rdx, rdx
je 0x14001bc93
mov rcx, qword [rdx + 0x30]
cmp rcx, 0xffffffffffffffff
je 0x14001bc93
mov eax, dword [rbx + 0x3a0]
mov dword [rdx + 0x1b8], eax
add rdx, 0x1b4
mov dword [rdx], r8d
call fcn.140061ed0
bt edi, 0x1a
jae 0x14001bd3b
cmp dword [0x1400cfe94], 3
jb 0x14001bcc5
mov ecx, 0x22000003
call fcn.14000e3d0
test al, al
je 0x14001bcc5
lea rdx, str.OPTIONS_IMPORT:___socket_flags_option_modified
mov ecx, 0x22000003
call fcn.14000e000
mov rax, qword [rbx + 0xc20]
mov ecx, dword [rbx + 0x3b0]
test rax, rax
je 0x14001bd3b
mov rdx, qword [rax + 0x30]
cmp rdx, 0xffffffffffffffff
je 0x14001bd3b
mov dword [rax + 0x1c0], ecx
test cl, 2
je 0x14001bd3b
movsxd rcx, edx
lea r9, [rsp + 0x48]
mov edx, 6
mov dword [rsp + 0x48], 1
mov dword [rsp + 0x20], 4
lea r8d, [rdx - 5]
call qword [sym.imp.WS2_32.dll_setsockopt]
test eax, eax
je 0x14001bd3b
mov ecx, 0x40
call fcn.14000e3d0
test al, al
je 0x14001bd3b
mov r8d, dword [rsp + 0x48]
lea rdx, str.NOTE:_setsockopt_TCP_NODELAY_d_failed
mov ecx, 0x40
call fcn.14000e000
bt edi, 8
jae 0x14001bd69
cmp dword [0x1400cfe94], 3
jb 0x14001bd69
mov ecx, 0x22000003
call fcn.14000e3d0
test al, al
je 0x14001bd69
lea rdx, str.OPTIONS_IMPORT:___persist_options_modified
mov ecx, 0x22000003
call fcn.14000e000
test dil, 2
je 0x14001bd97
cmp dword [0x1400cfe94], 3
jb 0x14001bd97
mov ecx, 0x22000003
call fcn.14000e3d0
test al, al
je 0x14001bd97
lea rdx, str.OPTIONS_IMPORT:___ifconfig_up_options_modified
mov ecx, 0x22000003
call fcn.14000e000
test dil, 4
je 0x14001bdc5
cmp dword [0x1400cfe94], 3
jb 0x14001bdc5
mov ecx, 0x22000003
call fcn.14000e3d0
test al, al
je 0x14001bdc5
lea rdx, str.OPTIONS_IMPORT:_route_options_modified
mov ecx, 0x22000003
call fcn.14000e000
bt edi, 0x16
jae 0x14001bdf3
cmp dword [0x1400cfe94], 3
jb 0x14001bdf3
mov ecx, 0x22000003
call fcn.14000e3d0
test al, al
je 0x14001bdf3
lea rdx, str.OPTIONS_IMPORT:_route_related_options_modified
mov ecx, 0x22000003
call fcn.14000e000
test dil, 8
je 0x14001be21
cmp dword [0x1400cfe94], 3
jb 0x14001be21
mov ecx, 0x22000003
call fcn.14000e3d0
test al, al
je 0x14001be21
lea rdx, str.OPTIONS_IMPORT:___ip_win32_and_or___dhcp_option_options_modified
mov ecx, 0x22000003
call fcn.14000e000
test dil, 0x20
je 0x14001be4f
cmp dword [0x1400cfe94], 3
jb 0x14001be4f
mov ecx, 0x22000003
call fcn.14000e3d0
test al, al
je 0x14001be4f
lea rdx, str.OPTIONS_IMPORT:_environment_modified
mov ecx, 0x22000003
call fcn.14000e000
bt edi, 0x1c
jae 0x14001bf52
cmp dword [0x1400cfe94], 3
jb 0x14001be81
mov ecx, 0x22000003
call fcn.14000e3d0
test al, al
je 0x14001be81
lea rdx, str.OPTIONS_IMPORT:_peer_id_set
mov ecx, 0x22000003
call fcn.14000e000
mov rax, qword [rbx + 0xdf0]
mov byte [rax + 0x3cc], 1
mov rcx, qword [rbx + 0xdf0]
mov eax, dword [rbx + 0x91c]
mov dword [rcx + 0x3c8], eax
add dword [rbx + 0xc6c], 3
cmp byte [rbx + 0xdc], bpl
jne 0x14001bf1e
add dword [rbx + 0xc64], 3
cmp dword [0x1400cfe94], 3
jb 0x14001bf52
mov ecx, 0x22000003
call fcn.14000e3d0
test al, al
je 0x14001bf52
mov r8d, dword [rbx + 0xc64]
lea rdx, str.OPTIONS_IMPORT:_adjusting_link_mtu_to__d
mov ecx, 0x22000003
jmp 0x14001bf4d
cmp dword [0x1400cfe94], 3
jb 0x14001bb91
mov ecx, 0x22000003
call fcn.14000e3d0
test al, al
je 0x14001bb91
lea rdx, str.OPTIONS_IMPORT:_explicit_notify_parm_s__modified
mov ecx, 0x22000003
call fcn.14000e000
jmp 0x14001bb91
mov ecx, 0x40
call fcn.14000e3d0
test al, al
je 0x14001bf52
mov r8d, dword [rbx + 0xc64]
lea rdx, str.OPTIONS_IMPORT:_WARNING:_peer_id_set__but_link_mtu_fixed_by_config___reducing_tun_mtu_to__d__expect_MTU_problems
sub r8d, dword [rbx + 0xc74]
mov ecx, 0x40
sub r8d, dword [rbx + 0xc6c]
call fcn.14000e000
cmp byte [rbx + 0x5c2], bpl
je 0x14001c11d
bt edi, 0xc
jae 0x14001c001
cmp dword [0x1400cfe94], 3
jb 0x14001bf91
mov ecx, 0x22000003
call fcn.14000e3d0
test al, al
je 0x14001bf91
lea rdx, str.OPTIONS_IMPORT:_data_channel_crypto_options_modified
mov ecx, 0x22000003
call fcn.14000e000
mov rcx, qword [rbx + 0xdf0]
lea r9, [rbx + 0xcb0]
add rcx, 0x3d8
lea r8, [rbx + 0xc64]
cmp dword [rbx + 0xe4], ebp
mov rdx, rbx
cmove r9, rbp
call fcn.14006a620
test al, al
jne 0x14001c11d
cmp dword [0x1400cfe94], 1
jb 0x14001bfef
mov ecx, 0x3000021
call fcn.14000e3d0
test al, al
je 0x14001bfef
lea rdx, str.OPTIONS_ERROR:_failed_to_import_crypto_options
mov ecx, 0x3000021
call fcn.14000e000
xor al, al
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
add rsp, 0x30
pop rdi
ret
cmp byte [rbx + 0x611], bpl
je 0x14001bf91
mov rax, qword [rbx + 0xdf0]
mov rdi, qword [rax + 0x3d0]
test rdi, rdi
je 0x14001c07e
mov rdx, qword [rbx + 0x618]
mov rcx, rdi
call fcn.140071e60
test al, al
je 0x14001c07e
mov rdx, rbx
mov rcx, rdi
call fcn.1400035e0
cmp dword [0x1400cfe94], 3
mov qword [rbx + 0x608], rax
jb 0x14001bf91
mov ecx, 0x14000003
call fcn.14000e3d0
test al, al
je 0x14001bf91
mov r8, qword [rbx + 0x608]
lea rdx, str.Using_peer_cipher__s
mov ecx, 0x14000003
call fcn.14000e000
jmp 0x14001bf91
mov rax, qword [rbx + 0xdf0]
cmp qword [rax + 0x3d0], rbp
jne 0x14001c0c6
cmp byte [rbx + 0x610], bpl
jne 0x14001bf91
cmp dword [0x1400cfe94], 1
jb 0x14001bfef
mov ecx, 0x3000021
call fcn.14000e3d0
test al, al
je 0x14001bfef
lea rdx, str.OPTIONS_ERROR:_failed_to_negotiate_cipher_with_server._Configure___data_ciphers_fallback_if_you_want_to_connect_to_this_server.
jmp 0x14001bfe5
cmp dword [0x1400cfe94], 1
jb 0x14001bfef
mov ecx, 0x3000021
call fcn.14000e3d0
test al, al
je 0x14001bfef
mov r8, qword [rbx + 0xdf0]
lea rdx, str.OPTIONS_ERROR:_failed_to_negotiate_cipher_with_server.__Add_the_servers_cipher___s__to___data_ciphers__currently__s__if_you_want_to_connect_to_this_server.
mov r9, qword [rbx + 0x618]
mov ecx, 0x3000021
mov r8, qword [r8 + 0x3d0]
call fcn.14000e000
xor al, al
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
add rsp, 0x30
pop rdi
ret
mov rbx, qword [rsp + 0x50]
mov al, 1
mov rbp, qword [rsp + 0x58]
add rsp, 0x30
pop rdi
ret
lea r8, [0x14008b3f4]
mov edx, 0xc88
lea rcx, str.C:Users_vagrant_buildopenvpn_srcopenvpn_socket.c
call fcn.14000e4c0
int3