Function at 0x14002d433
Capabilities:
Set socket configuration

Disassembly:
push rbp
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x68
lea rbp, [rsp + 0x60]
mov qword [rbp], 0xfffffffffffffffe
cmp r8d, 0x3b9aca00
jne 0x14002d464
xor eax, eax
add rsp, 0x68
pop rbx
pop rdi
pop rsi
pop r14
pop r15
pop rbp
ret
mov ebx, r8d
mov rdi, rdx
mov rsi, rcx
call fcn.1400272e0
cmp rax, rdi
ja 0x14002d484
mov r15, rax
mov r14d, edx
jne 0x14002d4a2
cmp r14d, ebx
jb 0x14002d4a2
lea rdx, [0x14004ded0]
push 0x22
pop r8
mov cl, 0x16
add rsp, 0x68
pop rbx
pop rdi
pop rsi
pop r14
pop r15
pop rbp
jmp fcn.140011115
mov r8, qword [0x14005ec00]
test r8, r8
jne 0x14002d4d8
lea rcx, [rbp - 8]
and qword [rcx], 0
call qword [sym.imp.kernel32.dll_QueryPerformanceFrequency]
test eax, eax
je 0x14002d6a8
mov r8, qword [rbp - 8]
mov qword [0x14005ec00], r8
test r8, r8
je 0x14002d65f
mov eax, 0x3b9aca00
xor edx, edx
div r8
lea ecx, [rax - 0x3b9aca00]
cmp r8, 2
cmovb eax, ecx
mov ecx, 0x3b9aca00
xor edx, edx
div ecx
mov r9d, eax
cmp r8, 2
adc r9, 0
mov r10, r15
sub r10, rdi
jb 0x14002d51c
mov ecx, edx
jne 0x14002d5f1
cmp r14d, ebx
ja 0x14002d5f1
sub rdi, r15
cmp r14d, ebx
jbe 0x14002d536
test rdi, rdi
je 0x14002d60b
dec rdi
add ebx, 0x3b9aca00
sub ebx, r14d
mov ecx, 0x3b9aca00
mov eax, ebx
xor edx, edx
div ecx
add rax, rdi
jb 0x14002d677
mov r8d, edx
xor edx, edx
cmp r8d, 0x3b9aca00
cmove r8d, edx
mov rcx, qword [rsi]
cmovne rdx, rax
mov r9d, 0x3e8
mov rax, rdx
mul r9
push 0xffffffffffffffff
pop r10
jo 0x14002d5ae
mov r9, rax
mov r11d, 0xf4240
mov eax, r8d
xor edx, edx
div r11d
add r9, rax
jb 0x14002d5ae
xor eax, eax
test edx, edx
setne al
add r9, rax
jb 0x14002d5ae
mov r10d, 0xffffffff
cmp r9, r10
cmovb r10, r9
test r10, r10
je 0x14002d656
lea r9, [rbp - 0x38]
mov dword [r9], r10d
mov dword [rsp + 0x20], 4
mov edx, 0xffff
mov r8d, 0x1006
call qword [sym.imp.ws2_32.dll_setsockopt]
cmp eax, 0xffffffff
je 0x14002d5d7
xor ecx, ecx
jmp 0x14002d5e7
call qword [sym.imp.ws2_32.dll_WSAGetLastError]
mov ecx, eax
shl rcx, 0x20
or rcx, 2
call fcn.14002d75b
jmp 0x14002d455
cmp r14d, ebx
jae 0x14002d616
test r10, r10
je 0x14002d717
dec r10
lea eax, [r14 + 0x3b9aca00]
jmp 0x14002d619
mov r8d, 0x3b9aca00
jmp 0x14002d550
mov eax, r14d
sub eax, ebx
mov r8d, 0x3b9aca00
xor edx, edx
div r8d
xor r8d, r8d
add rax, r10
jb 0x14002d6e1
cmp rax, r9
jae 0x14002d63e
xor eax, eax
jmp 0x14002d550
jne 0x14002d51c
cmp edx, ecx
ja 0x14002d51c
xor eax, eax
xor r8d, r8d
jmp 0x14002d550
lea rcx, str.cannot_set_a_0_duration_timeout
jmp 0x14002d5e7
lea rcx, str.attempt_to_divide_by_zero
lea r8, str.library_std_src_syswindows_time.rs
push 0x19
pop rdx
call fcn.140041c70
ud2
lea rax, str.overflow_in_Duration::new
lea rcx, [rbp - 0x38]
mov qword [rcx], rax
mov qword [rcx + 8], 1
lea rax, str._rustc_cc66ad468955717ab92600c770da8c1601a4ff33librarycore_src_fmtmod.rs
mov qword [rcx + 0x10], rax
xorps xmm0, xmm0
movups xmmword [rcx + 0x18], xmm0
lea rdx, str._rustc_cc66ad468955717ab92600c770da8c1601a4ff33librarycore_src_time.rs_b
adc eax, 0x1cbaa
call qword [sym.imp.kernel32.dll_GetLastError]
shl rax, 0x20
or rax, 2
lea r8, [rbp - 0x38]
mov qword [r8], rax
lea rax, str.library_std_src_syswindows_time.rs
lea eax, [0x14004cb68]
lea rax, str.overflow_in_Duration::new
lea rcx, [rbp - 0x38]
mov qword [rcx], rax
mov qword [rcx + 8], 1
add byte [rax - 0x73], cl
add eax, 0x20002
invalid
lea rcx, str.overflow_when_subtracting_durations