Function at 0x140068f70
Capabilities:
Set socket configuration

Disassembly:
push rbx
push rbp
push rsi
push rdi
sub rsp, 0x48
mov rdi, rcx
mov rbp, r9
add rcx, 0x270
mov ebx, r8d
mov rsi, rdx
call fcn.1400386a0
test ebx, ebx
jns 0x140069011
mov rax, qword [rsi + 8]
cmp qword [rsi], rax
jne 0x140068fac
mov rax, qword [rsi + 0x20]
cmp qword [rsi + 0x18], rax
jne 0x140068fac
mov al, 1
jmp 0x140068fae
xor al, al
test al, al
je 0x140069011
cmp byte [rdi - 0x448], 0
jne 0x140068fcf
movsxd rax, dword [rdi - 0x434]
cmp qword [rdi - 0x430], rax
jge 0x140068fcf
xor al, al
jmp 0x140068fd1
mov al, 1
test al, al
jne 0x140068ffd
mov rax, qword [rdi - 0x450]
lea rcx, [rdi - 0x450]
call qword [rax + 0x30]
mov r9, rbp
lea rdx, str._s_e_0_31mDNS_error:_e_0me_1_31m__s_e_0m
mov r8, rax
mov ecx, 3
call fcn.140028150
lea rcx, [rdi - 0x450]
add rsp, 0x48
pop rdi
pop rsi
pop rbp
pop rbx
jmp fcn.14006a9b0
mov qword [rsp + 0x78], r14
mov rcx, rsi
mov qword [rsp + 0x40], r15
call fcn.14002ff10
lea rdx, [rsp + 0x30]
mov rcx, rax
mov r14, rax
call fcn.14002fe30
mov rcx, qword [rdi - 0x50]
mov rbx, rax
call fcn.140343460
mov rcx, qword [rbx]
xor ebp, ebp
mov qword [rdi - 0x50], rcx
mov rcx, qword [rbx + 8]
mov qword [rdi - 0x48], rcx
mov qword [rbx], rbp
mov qword [rbx + 8], rbp
mov rcx, qword [rsp + 0x30]
call fcn.140343460
mov ecx, 0x80
call fcn.140343424
mov rcx, qword [rdi + 0x268]
mov r15, rax
mov qword [rax], rcx
mov ecx, 0x140
call fcn.140343424
mov rsi, qword [0x14053c330]
mov rbx, rax
mov rcx, qword [rdi + 0x268]
mov qword [rax], rcx
test rsi, rsi
jne 0x1400690b9
lea rsi, [0x14053c340]
mov rcx, rsi
call fcn.14019b120
test eax, eax
je 0x1400690b2
mov esi, ebp
jmp 0x1400690b9
mov qword [0x14053c330], rsi
mov qword [rbx + 8], rsi
lea rcx, [rbx + 0x20]
mov dword [rbx + 0x10], recv
lea rax, [rsi + 0x10]
mov dword [rbx + 0x58], 8
mov qword [rcx], rax
mov rax, qword [rsi + 0x18]
mov qword [rbx + 0x28], rax
mov qword [rax], rcx
mov qword [rsi + 0x18], rcx
mov rcx, rbx
mov dword [rbx + 0x30], 0xffffffff
mov qword [rbx + 0x60], rbp
mov qword [rbx + 0x78], rbp
mov qword [rbx + 0x108], rbp
mov dword [rbx + 0x100], ebp
mov dword [rbx + 0x88], recv
mov qword [rbx + 0xc0], rbp
mov qword [rbx + 0xf0], rbp
mov qword [rbx + 0xf8], 0xffffffffffffffff
mov qword [rbx + 0x80], rbx
mov qword [rbx + 0x120], rbp
mov qword [rbx + 0x110], 0xffffffffffffffff
mov qword [rbx + 0x138], rbp
mov qword [rbx + 0x130], rbp
mov dword [rbx + 0x128], ebp
mov dword [rbx + 0x118], ebp
call fcn.1401995a0
call fcn.1400c1cc0
test al, al
je 0x1400691f3
mov rsi, qword [rbx + 0x110]
cmp rsi, 0xffffffffffffffff
je 0x1400691ec
lea r9, [rsp + 0x80]
mov dword [rsp + 0x70], 0x3c
mov edx, 0xffff
mov dword [rsp + 0x80], 1
mov r8d, 8
mov dword [rsp + 0x20], 4
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_setsockopt]
cmp eax, 0xffffffff
je 0x1400691e2
cmp dword [rsp + 0x80], ebp
je 0x1400691ec
mov edx, 6
mov dword [rsp + 0x20], 4
lea r9, [rsp + 0x70]
mov rcx, rsi
lea r8d, [rdx - 3]
call qword [sym.imp.WS2_32.dll_setsockopt]
cmp eax, 0xffffffff
jne 0x1400691ec
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
test eax, eax
jne 0x1400691f3
or dword [rbx + 0x58], 0x2000000
cmp dword [rdi - 0xb0], ebp
jle 0x140069263
mov rcx, qword [rdi + 0x280]
mov edx, 0x140
call fcn.140343460
movzx ecx, word [rdi - 0xb0]
mov qword [rdi + 0x280], rbx
call qword [sym.imp.WS2_32.dll_htons]
mov word [r14 + 2], ax
cmp dword [rbx + 0x10], 0xc
jne 0x140069263
movzx eax, word [r14]
cmp ax, 2
jne 0x14006923d
mov r9d, reloc.WS2_32.dll_recv
jmp 0x140069249
cmp ax, 0x17
jne 0x140069263
mov r9d, 0x1c
lea rax, [0x14006ac60]
mov r8, r14
mov rdx, rbx
mov qword [rsp + 0x20], rax
mov rcx, r15
call fcn.140198b40
mov r14, qword [rsp + 0x78]
mov r15, qword [rsp + 0x40]
add rsp, 0x48
pop rdi
pop rsi
pop rbp
pop rbx
ret