Function at 0x1402b0b80
Capabilities:
Set socket configuration

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xc8
mov rsi, rdx
mov rbp, rcx
lea rdx, [r9 + 0x40]
mov ecx, 0x110
mov r12, r8
mov rdi, r9
mov qword [rsp + 0x70], r9
call fcn.14027f3d0
mov r13, qword [rsi]
mov rbx, rax
mov qword [rsp + 0x78], rax
xor eax, eax
mov qword [rbx + 0x20], rax
lea rax, [0x1402b67e0]
mov rcx, rbx
mov qword [rbx + 0x28], rax
call fcn.1402a05e0
xor eax, eax
mov qword [rbx + 0x68], r13
lea rcx, [rbx + 0x78]
mov dword [rbx + 0x38], eax
xor eax, eax
mov rdx, rdi
mov r13d, 0x1c
mov qword [rbx + 0x40], rax
mov qword [rbx + 0x48], rax
mov qword [rbx + 0x50], rax
mov qword [rbx + 0x58], rax
lea rax, [0x1402bb450]
mov qword [rbx + 0x60], rax
mov byte [rbx + 0x70], 0
call fcn.1402a06b0
mov rdx, qword [rsp + 0x130]
lea rcx, [rbx + 0xd8]
call fcn.14029b570
mov r14d, dword [rsi + 0x38]
cmp word [r12], 2
mov eax, 0x10
cmove r13, rax
lea rax, [rbx + 0x38]
mov qword [rsp + 0x80], rbx
cmp r14d, 2
mov qword [rsp + 0x58], rax
je 0x1402b0c5a
cmp r14d, 0x17
jne 0x1402b0e04
lea rdi, [rbp + 0x28]
lea r15, [rbp + 0x40]
xor eax, eax
lock cmpxchg qword [r15], rax
mov qword [rsp + 0x88], rax
test rax, rax
jne 0x1402b0d02
movabs rax, 0x4660ddf325a207b9
mov dword [rsp + 0x28], 8
mov r9d, 0x10
lea r8, [rsp + 0xa0]
mov qword [rsp + 0xa0], rax
mov edx, 0xc8000006
movabs rax, 0x3e06748ce576e98e
mov qword [rsp + 0xa8], rax
xor eax, eax
mov dword [rsp + 0x60], eax
xor eax, eax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x60]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x88]
mov qword [rsp + 0x20], rax
mov rcx, qword [rsi]
call qword [sym.imp.WS2_32.dll_WSAIoctl]
test eax, eax
je 0x1402b0cf7
mov qword [rsp + 0x88], rdi
mov rax, qword [rsp + 0x88]
xchg qword [r15], rax
mov r15, qword [rsp + 0x88]
cmp rdi, r15
je 0x1402b0e04
test r15, r15
je 0x1402b0e04
lea rdx, [rsp + 0xa2]
xor eax, eax
mov ecx, 0x1a
cmp r14d, 2
mov rdi, rdx
mov r8d, 0x1c
lea r9, [rbx + 0x38]
rep stosb byte [rdi], al
mov eax, 0x10
mov rcx, qword [rsi]
lea rdx, [rsp + 0xa0]
mov word [rsp + 0xa0], r14w
cmove r8, rax
call fcn.140286240
mov rcx, qword [rsp + 0x58]
call fcn.1402ee430
test al, al
je 0x1402b0d9d
lea rdi, [rsp + 0x88]
mov edx, 0x2726
mov rcx, rdi
call fcn.1402c5b70
mov rcx, qword [rsp + 0x58]
mov rdx, rdi
call fcn.1402c7400
test al, al
jne 0x1402b0d9d
mov rcx, qword [rbp + 0x30]
jmp 0x1402b110c
mov byte [rbx + 0x70], 1
mov rcx, qword [rbp + 0x30]
xor edi, edi
xor r14d, r14d
call fcn.1402a0ca0
mov qword [rsp + 0x30], rbx
xor r9d, r9d
mov r8d, r13d
mov qword [rsp + 0x28], rdi
mov rdx, r12
mov dword [rsp + 0x20], r14d
mov rcx, qword [rsi]
call r15
mov esi, eax
call qword [sym.imp.WSOCK32.dll_WSAGetLastError]
mov rcx, qword [rbp + 0x30]
mov r8d, eax
test esi, esi
jne 0x1402b0df7
cmp eax, 0x3e5
je 0x1402b0df7
xor r9d, r9d
mov rdx, rbx
call fcn.1402a0d20
jmp 0x1402b1114
mov rdx, rbx
call fcn.1402a0a10
jmp 0x1402b1114
lea r14, [rbp + 0x38]
xor eax, eax
lock cmpxchg qword [r14], rax
mov rdi, rax
jne 0x1402b0e53
mov rax, qword [rbp + 0x28]
xor r11d, r11d
lea rdx, [rsp + 0xa0]
lea r8, [0x1402905f0]
mov rcx, qword [rax]
lea rax, [0x1404ea940]
mov qword [rsp + 0xa8], r11
mov qword [rsp + 0xa0], rax
mov r9, qword [rcx + 0x30]
call fcn.1402904f0
mov rdi, rax
xchg qword [r14], rax
mov rcx, qword [rsi]
test byte [rsi + 8], 3
jne 0x1402b0eb1
cmp rcx, 0xffffffffffffffff
jne 0x1402b0e76
mov rcx, qword [rsp + 0x58]
mov edx, 0x2719
call fcn.1402c6350
jmp 0x1402b1108
mov dword [rsp + 0xa0], 1
lea r8, [rsp + 0xa0]
mov edx, 0x8004667e
call qword [sym.imp.WSOCK32.dll_ioctlsocket]
mov edx, eax
mov rcx, qword [rsp + 0x58]
mov ebp, eax
shr edx, 0x1f
call fcn.140285ad0
test ebp, ebp
js 0x1402b1108
or byte [rsi + 8], 2
mov rcx, qword [rsi]
lea r9, [rbx + 0x38]
mov r8, r13
mov rdx, r12
call fcn.140287590
test eax, eax
je 0x1402b1108
lea rbp, [rsp + 0x88]
mov edx, 0x2734
mov rcx, rbp
call fcn.1402c5b70
mov rcx, qword [rsp + 0x58]
mov rdx, rbp
call fcn.1402c7400
test al, al
jne 0x1402b0f1b
lea r12, [rsp + 0xa0]
mov edx, 0x2733
mov rcx, r12
call fcn.1402c5b70
mov rcx, qword [rsp + 0x58]
mov rdx, r12
call fcn.1402c7400
test al, al
je 0x1402b1108
xor r10d, r10d
xor r9d, r9d
lea rcx, [rdi + 0x30]
mov dword [rbx + 0x38], r9d
mov qword [rbx + 0x40], r10
mov qword [rbx + 0x48], r10
mov r13, qword [rsi]
mov qword [rsp + 0x60], rcx
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp byte [rdi + 0x248], 0
mov byte [rsp + 0x68], 1
je 0x1402b0f68
mov rcx, qword [rdi + 0x28]
mov rdx, rbx
call fcn.1402a1e90
lea rcx, [rsp + 0x60]
call fcn.140287ca0
jmp 0x1402b1114
mov rax, qword [rdi + 0x160]
xor ecx, ecx
xor r8d, r8d
mov qword [rsp + 0xa0], r13
mov qword [rsp + 0x88], rcx
lea r14, [rdi + 0x160]
mov qword [rsp + 0x90], rcx
lea rdx, [rax + 1]
mov qword [rsp + 0xa8], r8
mov qword [rsp + 0xb0], r8
cmp rdx, qword [rdi + 0x1a0]
jae 0x1402b0fde
mov rax, r13
xor edx, edx
mov r15, qword [rdi + 0x198]
div qword [rdi + 0x1a0]
lea rax, [rdi + 0x168]
shl rdx, 4
add r15, rdx
mov r12, rdx
mov rsi, qword [r15]
cmp rsi, rax
jne 0x1402b1042
jmp 0x1402b100d
xor eax, eax
lea r8, [0x140429d00]
mov rcx, qword [r8 + rax*8]
cmp rdx, rcx
jb 0x1402b1000
inc rax
cmp rax, 0x16
jne 0x1402b0fe7
mov rcx, qword [0x140429db0]
mov rdx, rcx
mov rcx, r14
call fcn.1402bdfa0
jmp 0x1402b0fb0
lea r8, [rsp + 0xa0]
mov rdx, rsi
mov rcx, r14
call fcn.1402bde00
add r12, qword [rdi + 0x198]
mov qword [r15 + 8], rax
mov rax, qword [r12 + 8]
mov rsi, qword [r12 + 8]
mov qword [r12], rax
inc qword [rdi + 0x160]
jmp 0x1402b1085
mov rax, qword [r15 + 8]
mov rdx, qword [rax]
cmp rdx, rsi
je 0x1402b105e
cmp r13, qword [rsi + 0x10]
jne 0x1402b1059
xor r12d, r12d
jmp 0x1402b1088
mov rsi, qword [rsi]
jmp 0x1402b1049
lea r8, [rsp + 0xa0]
mov rcx, r14
call fcn.1402bde00
mov qword [r15 + 8], rax
mov rax, qword [rdi + 0x198]
inc qword [rdi + 0x160]
mov rsi, qword [rax + r12 + 8]
mov r12b, 1
lea rcx, [rsp + 0xa8]
call fcn.1402be0f0
mov rcx, rbp
call fcn.1402be0f0
mov rax, qword [rsi + 0x20]
xor edx, edx
mov qword [rbx + 0x20], rdx
test rax, rax
je 0x1402b10b6
mov qword [rax + 0x20], rbx
mov qword [rsi + 0x20], rbx
jmp 0x1402b10be
mov qword [rsi + 0x20], rbx
mov qword [rsi + 0x18], rbx
mov rcx, qword [rdi + 0x28]
call fcn.1402a0ca0
test r12b, r12b
jne 0x1402b10eb
jmp 0x1402b0f59
mov rcx, qword [rdi + 0x60]
call fcn.1402b3ca0
jmp 0x1402b0f59
mov rcx, qword [rdi + 0x28]
mov rdx, rbx
call fcn.1402a1e90
xor eax, eax
lea rcx, [rsp + 0x70]
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x78], rax
call fcn.1402b6930
nop
add rsp, 0xc8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret