Function at 0x14002b000
Capabilities:
Set socket configuration

Disassembly:
push rbx
push rbp
push rsi
push r15
sub rsp, 0x68
mov rax, qword [0x140091240]
xor rax, rsp
mov qword [rsp + 0x48], rax
xor ebp, ebp
mov rbx, r9
mov r15, rdx
mov rsi, rcx
cmp rcx, 0xffffffffffffffff
je 0x14002b2ab
movzx eax, byte [rdx]
mov qword [rsp + 0xa0], rdi
mov qword [rsp + 0x60], r12
mov r12d, 4
test al, 8
je 0x14002b0bd
or al, 8
mov dword [rsp + 0x40], ebp
mov byte [rdx], al
lea r9, [rsp + 0x40]
mov edx, 0xffff
mov dword [rsp + 0x20], 4
mov r8d, 0x80
call qword [sym.imp.WS2_32.dll_setsockopt]
test eax, eax
je 0x14002b0bd
mov rax, qword gs:[0x58]
mov rcx, qword [rax]
mov eax, dword [r12 + rcx]
cmp dword [0x140095ac0], eax
jle 0x14002b0b7
lea rcx, [0x140095ac0]
call fcn.140036ebc
cmp dword [0x140095ac0], 0xffffffff
jne 0x14002b0b7
lea rcx, [0x140055390]
call fcn.140036dd0
lea rcx, [0x140095ac0]
call fcn.140036e50
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_closesocket]
mov edi, eax
test eax, eax
jne 0x14002b0d3
mov dword [rbx], ebp
jmp 0x14002b224
mov rax, qword gs:[0x58]
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x50], r14
mov r14d, r12d
add r14, qword [rax]
mov eax, dword [r14]
cmp dword [0x140095ac0], eax
jle 0x14002b124
lea rcx, [0x140095ac0]
call fcn.140036ebc
cmp dword [0x140095ac0], 0xffffffff
jne 0x14002b124
lea rcx, [0x140055390]
call fcn.140036dd0
lea rcx, [0x140095ac0]
call fcn.140036e50
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
lea r13, [0x140091e30]
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x38], r13
movups xmm0, xmmword [rsp + 0x30]
movups xmmword [rbx], xmm0
mov edx, dword [0x140095ac0]
cmp edx, dword [r14]
jle 0x14002b182
lea rcx, [0x140095ac0]
call fcn.140036ebc
mov edx, dword [0x140095ac0]
cmp edx, 0xffffffff
jne 0x14002b182
lea rcx, [0x140055390]
call fcn.140036dd0
lea rcx, [0x140095ac0]
call fcn.140036e50
mov edx, dword [0x140095ac0]
mov rcx, qword [rbx + 8]
mov rax, qword [0x140091e38]
cmp qword [rcx + 8], rax
jne 0x14002b19b
cmp dword [rbx], 0x2733
je 0x14002b1ee
cmp edx, dword [r14]
jle 0x14002b1cd
lea rcx, [0x140095ac0]
call fcn.140036ebc
cmp dword [0x140095ac0], 0xffffffff
jne 0x14002b1cd
lea rcx, [0x140055390]
call fcn.140036dd0
lea rcx, [0x140095ac0]
call fcn.140036e50
mov rdx, qword [rbx + 8]
mov rax, qword [0x140091e38]
cmp qword [rdx + 8], rax
jne 0x14002b2a4
cmp dword [rbx], 0x4d5
jne 0x14002b2a4
lea r8, [rsp + 0x40]
mov dword [rsp + 0x40], ebp
mov edx, 0x8004667e
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_ioctlsocket]
and byte [r15], 0xfc
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_closesocket]
mov edi, eax
test eax, eax
jne 0x14002b248
mov dword [rbx], ebp
mov r13, qword [rsp + 0x58]
mov r14, qword [rsp + 0x50]
mov rdi, qword [rsp + 0xa0]
mov r12, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.140036b80
add rsp, 0x68
pop r15
pop rsi
pop rbp
pop rbx
ret
mov rax, qword gs:[0x58]
mov rdx, qword [rax]
mov eax, dword [r12 + rdx]
cmp dword [0x140095ac0], eax
jle 0x14002b28d
lea rcx, [0x140095ac0]
call fcn.140036ebc
cmp dword [0x140095ac0], 0xffffffff
jne 0x14002b28d
lea rcx, [0x140055390]
call fcn.140036dd0
lea rcx, [0x140095ac0]
call fcn.140036e50
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x38], r13
movups xmm0, xmmword [rsp + 0x30]
movups xmmword [rbx], xmm0
mov eax, edi
jmp 0x14002b21a
mov eax, ebp
jmp 0x14002b231