Function at 0x14011d040
Capabilities:
Resolve dns
Set socket configuration

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x98
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x10], 0xfffffffffffffffe
xorps xmm0, xmm0
movups xmmword [rbp - 0x40], xmm0
movups xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x48], 1
cmp qword [rdx + 0x10], 0
je 0x14011d094
mov rsi, rdx
cmp qword [rdx + 0x18], 0x10
jb 0x14011d08a
mov rsi, qword [rsi]
mov eax, 4
xor r9d, r9d
jmp 0x14011d0b2
mov rdx, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 0x10
jb 0x14011d0a2
mov rcx, qword [rcx]
mov eax, dword [rbp + 0x80]
test rdx, rdx
cmove rcx, rdx
mov rsi, rcx
mov dword [rbp - 0x4c], r9d
mov dword [rbp - 0x50], eax
lea rdi, [rbp - 0x20]
mov rcx, rdi
mov edx, r8d
call fcn.140002520
cmp qword [rbp - 8], 0x10
jb 0x14011d0d3
mov rdi, qword [rbp - 0x20]
lea r8, [rbp - 0x50]
lea r9, [rbp + 8]
mov rcx, rsi
mov rdx, rdi
call qword [sym.imp.WS2_32.dll_getaddrinfo]
mov rdi, 0xffffffffffffffff
test eax, eax
jne 0x14011d254
mov rsi, qword [rbp + 8]
mov rdi, 0xffffffffffffffff
test rsi, rsi
je 0x14011d24c
mov r12, qword [sym.imp.WS2_32.dll_WSASocketW]
mov rdi, rbp
mov r13, qword [sym.imp.WS2_32.dll_setsockopt]
mov r14, qword [sym.imp.WS2_32.dll_bind]
mov r15, qword [sym.imp.WS2_32.dll_closesocket]
jmp 0x14011d159
mov r8d, dword [rsi + 0x10]
mov rdx, qword [rsi + 0x20]
mov rcx, rbx
call r14
test eax, eax
je 0x14011d220
mov rcx, rbx
call r15
mov rsi, qword [rsi + 0x28]
test rsi, rsi
je 0x14011d23f
mov r8d, dword [rsi + 0xc]
mov ecx, dword [rsi + 4]
mov edx, dword [rsi + 8]
mov dword [rsp + 0x28], 0x81
mov dword [rsp + 0x20], 0
xor r9d, r9d
call r12
mov rbx, rax
cmp rax, 0xffffffffffffffff
jne 0x14011d19b
mov r8d, dword [rsi + 0xc]
mov ecx, dword [rsi + 4]
mov edx, dword [rsi + 8]
call qword [sym.imp.WS2_32.dll_socket]
mov rbx, rax
cmp rax, 0xffffffffffffffff
je 0x14011d14c
cmp byte [rbp + 0x88], 0
je 0x14011d1c7
mov dword [rbp], 1
mov dword [rsp + 0x20], 4
mov rcx, rbx
mov edx, 6
mov r8d, 1
mov r9, rdi
call r13
mov rax, qword [rbp + 0x90]
mov rcx, qword [rax + 0x38]
test rcx, rcx
je 0x14011d1e4
mov qword [rbp], rbx
mov rax, qword [rcx]
mov rdx, rdi
call qword [rax + reloc.WS2_32.dll_recv]
cmp dword [rsi + 4], 0x17
jne 0x14011d130
mov dword [rbp], 0
mov dword [rsp + 0x20], 4
mov rcx, rbx
mov edx, reloc.WLDAP32.dll_Ordinal_41
mov r8d, reloc.WLDAP32.dll_Ordinal_27
mov r9, rdi
call r13
jmp 0x14011d130
mov rcx, rbx
mov edx, 5
call qword [sym.imp.WS2_32.dll_listen]
test eax, eax
jne 0x14011d146
mov rcx, qword [rbp + 8]
mov rdi, rbx
jmp 0x14011d24e
mov rcx, qword [rbp + 8]
mov rdi, 0xffffffffffffffff
jmp 0x14011d24e
xor ecx, ecx
call qword [sym.imp.WS2_32.dll_freeaddrinfo]
mov rax, qword [rbp - 8]
cmp rax, 0x10
mov rsi, qword [rbp + 0x90]
jb 0x14011d296
mov rcx, qword [rbp - 0x20]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x14011d291
mov rbx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rbx
cmp rcx, 0x20
jae 0x14011d2ca
add rax, 0x28
mov rdx, rax
mov rcx, rbx
call fcn.140141034
mov rcx, qword [rsi + 0x38]
test rcx, rcx
je 0x14011d2b3
cmp rcx, rsi
setne dl
mov rax, qword [rcx]
call qword [rax + reloc.WLDAP32.dll_Ordinal_32]
mov qword [rsi + 0x38], 0
mov rax, rdi
add rsp, 0x98
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
call fcn.140231990
int3