Function at 0x14001c050
Capabilities:
Set socket configuration

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rdi
sub rsp, 0x40
xor ebp, ebp
mov edi, edx
mov rbx, rcx
bt edx, 0xb
jae 0x14001c0e5
mov edx, dword [rcx + 0x380]
mov dword [0x1400d3eb0], 0x1000021
mov dword [0x1400d3eb8], 0x46000089
test edx, edx
js 0x14001c094
cmp edx, 0xf
jle 0x14001c096
lea edx, [rbp + 0xf]
jmp 0x14001c096
mov edx, ebp
mov eax, dword [rcx + 0x384]
test eax, eax
mov ecx, dword [0x1400cb9c8]
cmovns ecx, eax
mov dword [0x1400d3ed4], edx
lea eax, [rdx - 5]
mov dword [0x1400cb9c8], ecx
test eax, eax
sete al
mov byte [rbx + 0x1060], al
cmp edx, 3
jb 0x14001c0e5
mov ecx, 0x22000003
call fcn.14000ec70
test al, al
je 0x14001c0e5
lea rdx, str.OPTIONS_IMPORT:___verb_and_or___mute_level_changed
mov ecx, 0x22000003
call fcn.14000e820
test dil, dil
jns 0x14001c11c
mov dl, 1
mov rcx, rbx
call fcn.140019d50
cmp dword [0x1400d3ed4], 3
jb 0x14001c11c
mov ecx, 0x22000003
call fcn.14000ec70
test al, al
je 0x14001c11c
lea rdx, str.OPTIONS_IMPORT:_timers_and_or_timeouts_modified
mov ecx, 0x22000003
call fcn.14000e820
bt edi, 0x13
jae 0x14001c171
mov eax, dword [rbx + 0x68]
cmp eax, 4
ja 0x14001c717
cmp eax, 1
je 0x14001c4d0
cmp dword [rbx + 0xf0], ebp
je 0x14001c4d0
cmp dword [0x1400d3ed4], 3
jb 0x14001c16b
mov ecx, 0x22000003
call fcn.14000ec70
test al, al
je 0x14001c16b
lea rdx, str.OPTIONS_IMPORT:___explicit_exit_notify_can_only_be_used_with___proto_udp
mov ecx, 0x22000003
call fcn.14000e820
mov dword [rbx + 0xf0], ebp
bt edi, 0xa
jae 0x14001c1de
cmp dword [0x1400d3ed4], 3
mov qword [rsp + 0x58], rsi
jb 0x14001c1a4
mov ecx, 0x22000003
call fcn.14000ec70
test al, al
je 0x14001c1a4
lea rdx, str.OPTIONS_IMPORT:_compression_parms_modified
mov ecx, 0x22000003
call fcn.14000e820
mov rsi, qword [rbx + 0x1000]
test rsi, rsi
je 0x14001c1c6
mov rax, qword [rsi + 0x18]
mov rcx, rsi
call qword [0x14008d1f0]
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
lea rcx, [rbx + 0x39c]
call fcn.140005550
mov rsi, qword [rsp + 0x58]
mov qword [rbx + 0x1000], rax
test dil, 0x40
je 0x14001c214
cmp dword [0x1400d3ed4], 3
jb 0x14001c20c
mov ecx, 0x22000003
call fcn.14000ec70
test al, al
je 0x14001c20c
lea rdx, str.OPTIONS_IMPORT:_traffic_shaper_enabled
mov ecx, 0x22000003
call fcn.14000e820
mov rcx, rbx
call fcn.140019ed0
bt edi, 0x19
jae 0x14001c27a
cmp dword [0x1400d3ed4], 3
jb 0x14001c242
mov ecx, 0x22000003
call fcn.14000ec70
test al, al
je 0x14001c242
lea rdx, str.OPTIONS_IMPORT:___sndbuf___rcvbuf_options_modified
mov ecx, 0x22000003
call fcn.14000e820
mov rdx, qword [rbx + 0xd30]
mov r8d, dword [rbx + 0x3a4]
test rdx, rdx
je 0x14001c27a
mov rcx, qword [rdx + 0x30]
cmp rcx, 0xffffffffffffffff
je 0x14001c27a
mov eax, dword [rbx + 0x3a8]
mov dword [rdx + 0x1b8], eax
add rdx, 0x1b4
mov dword [rdx], r8d
call fcn.140063bb0
bt edi, 0x1a
jae 0x14001c322
cmp dword [0x1400d3ed4], 3
jb 0x14001c2ac
mov ecx, 0x22000003
call fcn.14000ec70
test al, al
je 0x14001c2ac
lea rdx, str.OPTIONS_IMPORT:___socket_flags_option_modified
mov ecx, 0x22000003
call fcn.14000e820
mov rax, qword [rbx + 0xd30]
mov ecx, dword [rbx + 0x3b8]
test rax, rax
je 0x14001c322
mov rdx, qword [rax + 0x30]
cmp rdx, 0xffffffffffffffff
je 0x14001c322
mov dword [rax + 0x1c0], ecx
test cl, 2
je 0x14001c322
movsxd rcx, edx
lea r9, [rsp + 0x30]
mov edx, 6
mov dword [rsp + 0x30], 1
mov dword [rsp + 0x20], 4
lea r8d, [rdx - 5]
call qword [sym.imp.WS2_32.dll_setsockopt]
test eax, eax
je 0x14001c322
mov ecx, 0x40
call fcn.14000ec70
test al, al
je 0x14001c322
mov r8d, dword [rsp + 0x30]
lea rdx, str.NOTE:_setsockopt_TCP_NODELAY_d_failed
mov ecx, 0x40
call fcn.14000e820
bt edi, 8
jae 0x14001c350
cmp dword [0x1400d3ed4], 3
jb 0x14001c350
mov ecx, 0x22000003
call fcn.14000ec70
test al, al
je 0x14001c350
lea rdx, str.OPTIONS_IMPORT:___persist_options_modified
mov ecx, 0x22000003
call fcn.14000e820
test dil, 2
je 0x14001c37e
cmp dword [0x1400d3ed4], 3
jb 0x14001c37e
mov ecx, 0x22000003
call fcn.14000ec70
test al, al
je 0x14001c37e
lea rdx, str.OPTIONS_IMPORT:___ifconfig_up_options_modified
mov ecx, 0x22000003
call fcn.14000e820
test dil, 4
je 0x14001c3ac
cmp dword [0x1400d3ed4], 3
jb 0x14001c3ac
mov ecx, 0x22000003
call fcn.14000ec70
test al, al
je 0x14001c3ac
lea rdx, str.OPTIONS_IMPORT:_route_options_modified
mov ecx, 0x22000003
call fcn.14000e820
bt edi, 0x16
jae 0x14001c3da
cmp dword [0x1400d3ed4], 3
jb 0x14001c3da
mov ecx, 0x22000003
call fcn.14000ec70
test al, al
je 0x14001c3da
lea rdx, str.OPTIONS_IMPORT:_route_related_options_modified
mov ecx, 0x22000003
call fcn.14000e820
test dil, 8
je 0x14001c408
cmp dword [0x1400d3ed4], 3
jb 0x14001c408
mov ecx, 0x22000003
call fcn.14000ec70
test al, al
je 0x14001c408
lea rdx, str.OPTIONS_IMPORT:___ip_win32_and_or___dhcp_option_options_modified
mov ecx, 0x22000003
call fcn.14000e820
test dil, 0x20
je 0x14001c436
cmp dword [0x1400d3ed4], 3
jb 0x14001c436
mov ecx, 0x22000003
call fcn.14000ec70
test al, al
je 0x14001c436
lea rdx, str.OPTIONS_IMPORT:_environment_modified
mov ecx, 0x22000003
call fcn.14000e820
bt edi, 0x1c
jae 0x14001c539
cmp dword [0x1400d3ed4], 3
jb 0x14001c468
mov ecx, 0x22000003
call fcn.14000ec70
test al, al
je 0x14001c468
lea rdx, str.OPTIONS_IMPORT:_peer_id_set
mov ecx, 0x22000003
call fcn.14000e820
mov rax, qword [rbx + 0xf00]
mov byte [rax + 0x3cc], 1
mov rcx, qword [rbx + 0xf00]
mov eax, dword [rbx + 0xa24]
mov dword [rcx + 0x3c8], eax
add dword [rbx + 0xd7c], 3
cmp byte [rbx + 0xdc], bpl
jne 0x14001c505
add dword [rbx + 0xd74], 3
cmp dword [0x1400d3ed4], 3
jb 0x14001c539
mov ecx, 0x22000003
call fcn.14000ec70
test al, al
je 0x14001c539
mov r8d, dword [rbx + 0xd74]
lea rdx, str.OPTIONS_IMPORT:_adjusting_link_mtu_to__d
mov ecx, 0x22000003
jmp 0x14001c534
cmp dword [0x1400d3ed4], 3
jb 0x14001c171
mov ecx, 0x22000003
call fcn.14000ec70
test al, al
je 0x14001c171
lea rdx, str.OPTIONS_IMPORT:_explicit_notify_parm_s__modified
mov ecx, 0x22000003
call fcn.14000e820
jmp 0x14001c171
mov ecx, 0x40
call fcn.14000ec70
test al, al
je 0x14001c539
mov r8d, dword [rbx + 0xd74]
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 + 0xd84]
mov ecx, 0x40
sub r8d, dword [rbx + 0xd7c]
call fcn.14000e820
cmp byte [rbx + 0x5ca], bpl
je 0x14001c705
bt edi, 0xc
jae 0x14001c5e9
cmp dword [0x1400d3ed4], 3
jb 0x14001c578
mov ecx, 0x22000003
call fcn.14000ec70
test al, al
je 0x14001c578
lea rdx, str.OPTIONS_IMPORT:_data_channel_crypto_options_modified
mov ecx, 0x22000003
call fcn.14000e820
cmp dword [rbx + 0xe4], ebp
je 0x14001c587
lea rbp, [rbx + 0xdc0]
mov rcx, qword [rbx + 0xf00]
lea r8, [rbx + 0xd74]
add rcx, 0x3d8
mov r9, rbp
mov rdx, rbx
call fcn.14006c1d0
test al, al
jne 0x14001c705
cmp dword [0x1400d3ed4], 1
jb 0x14001c5d7
mov ecx, 0x3000021
call fcn.14000ec70
test al, al
je 0x14001c5d7
lea rdx, str.OPTIONS_ERROR:_failed_to_import_crypto_options
mov ecx, 0x3000021
call fcn.14000e820
xor al, al
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x68]
add rsp, 0x40
pop rdi
ret
cmp byte [rbx + 0x619], bpl
je 0x14001c578
mov rax, qword [rbx + 0xf00]
mov rdi, qword [rax + 0x3d0]
test rdi, rdi
je 0x14001c666
mov rdx, qword [rbx + 0x620]
mov rcx, rdi
call fcn.140073c00
test al, al
je 0x14001c666
mov rdx, rbx
mov rcx, rdi
call fcn.1400037b0
cmp dword [0x1400d3ed4], 3
mov qword [rbx + 0x610], rax
jb 0x14001c578
mov ecx, 0x14000003
call fcn.14000ec70
test al, al
je 0x14001c578
mov r8, qword [rbx + 0x610]
lea rdx, str.Using_peer_cipher__s
mov ecx, 0x14000003
call fcn.14000e820
jmp 0x14001c578
mov rax, qword [rbx + 0xf00]
cmp qword [rax + 0x3d0], rbp
jne 0x14001c6ae
cmp byte [rbx + 0x618], bpl
jne 0x14001c578
cmp dword [0x1400d3ed4], 1
jb 0x14001c5d7
mov ecx, 0x3000021
call fcn.14000ec70
test al, al
je 0x14001c5d7
lea rdx, str.OPTIONS_ERROR:_failed_to_negotiate_cipher_with_server._Configure___data_ciphers_fallback_if_you_want_to_connect_to_this_server.
jmp 0x14001c5cd
cmp dword [0x1400d3ed4], 1
jb 0x14001c5d7
mov ecx, 0x3000021
call fcn.14000ec70
test al, al
je 0x14001c5d7
mov r8, qword [rbx + 0xf00]
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 + 0x620]
mov ecx, 0x3000021
mov r8, qword [r8 + 0x3d0]
call fcn.14000e820
xor al, al
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x68]
add rsp, 0x40
pop rdi
ret
mov rbx, qword [rsp + 0x60]
mov al, 1
mov rbp, qword [rsp + 0x68]
add rsp, 0x40
pop rdi
ret
lea r8, [0x14008d704]
mov edx, 0xc88
lea rcx, str.C:Users_vagrant_buildbotwindows_server_2019_static_msbuildopenvpn_srcopenvpn_socket.c
call fcn.14000ed60
int3