Function at 0x1800d3560
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
sub rsp, 0x30
xor r13d, r13d
mov rsi, rdx
mov r14, rcx
test rdx, rdx
jne 0x1800d358b
mov ebp, r13d
jmp 0x1800d35c2
movzx ecx, word [rdx + 0x14]
mov edx, 0x202
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x1800d35ab
cmp byte [rsi + 0x16], 1
jne 0x1800d35ab
mov rbp, qword [rsi + 8]
jmp 0x1800d35c2
test cl, 1
je 0x1800d35b5
mov rbp, r13
jmp 0x1800d35c2
mov dl, 1
mov rcx, rsi
call fcn.180033020
mov rbp, rax
mov eax, setsockopt
mov qword [rsp + 0x70], r15
add rax, rsi
mov r10, rsi
mov qword [rsp + 0x28], rax
movzx ecx, word [rax]
test cl, 2
je 0x1800d35eb
cmp byte [rsi + 0x16], 1
jne 0x1800d35eb
mov r15d, dword [rsi + 0x10]
jmp 0x1800d3617
test cl, 0x10
je 0x1800d3600
bt cx, 0xa
mov r15d, dword [rsi + 0x10]
jae 0x1800d3617
add r15d, dword [rsi]
jmp 0x1800d3617
test cl, 1
je 0x1800d360a
mov r15d, r13d
jmp 0x1800d3617
mov dl, 1
mov rcx, rsi
call fcn.180033730
mov r15d, eax
mov dword [rsp + 0x20], r13d
mov r8d, 0xffffffff
mov dword [rsp + 0x78], r8d
mov rdi, r13
mov r12d, r13d
test rbp, rbp
je 0x1800d39ed
nop word [rax + rax]
mov rax, qword [r14 + 0x18]
lea edx, [r13 - 0x68f72]
mov rcx, qword [rax + 0x128]
test rcx, rcx
je 0x1800d3671
cmp dword [rcx + 4], edx
jne 0x1800d3668
mov eax, dword [r14 + 0x20]
cmp dword [rcx], eax
je 0x1800d3693
test edx, edx
js 0x1800d3693
mov rcx, qword [rcx + 0x18]
test rcx, rcx
jne 0x1800d3657
mov dword [rsp + 0x20], r13d
test rdi, rdi
je 0x1800d374f
lea ecx, [r12 + 1]
mov byte [rdi + 0x32], 0
mov dword [rdi + 0x4c], ecx
mov rax, rdi
jmp 0x1800d39ef
mov rbx, qword [rcx + 8]
test rbx, rbx
je 0x1800d3671
test rdi, rdi
jne 0x1800d371c
cmp dword [rbx + 0x3c], r15d
jne 0x1800d36e2
cmp byte [rbx + 0x37], dil
je 0x1800d36b8
mov eax, dword [rsp + 0x88]
test eax, eax
jne 0x1800d36e9
mov rcx, qword [rbx + 0x10]
cmp rcx, rbp
je 0x1800d36d5
movsxd r8, r15d
mov rdx, rbp
call fcn.1801a1610
mov r8d, dword [rsp + 0x78]
test eax, eax
jne 0x1800d36e2
mov byte [rbx + 0x32], 0
mov rdi, rbx
mov byte [rbx + 0x36], 0
jmp 0x1800d3730
mov eax, dword [rsp + 0x88]
mov rcx, qword [rbx + 0x18]
test rcx, rcx
je 0x1800d371c
test eax, eax
jne 0x1800d371c
cmp dword [rbx + 0x40], r15d
jne 0x1800d371c
movsxd r8, r15d
mov rdx, rbp
call fcn.1801a1610
mov r8d, dword [rsp + 0x78]
test eax, eax
jne 0x1800d371c
mov byte [rbx + 0x32], al
mov rdi, rbx
mov byte [rbx + 0x36], 1
jmp 0x1800d3730
mov eax, dword [rbx + 0x4c]
cmp eax, r8d
jae 0x1800d3730
mov r8d, eax
mov dword [rsp + 0x78], eax
mov dword [rsp + 0x20], r13d
mov eax, dword [rbx + 0x4c]
cmp eax, r12d
cmovbe eax, r12d
inc r13d
mov r12d, eax
cmp r13d, 4
jl 0x1800d3640
jmp 0x1800d3676
mov rax, qword [rsp + 0x28]
mov edx, recv
movzx eax, word [rax]
lea edi, [rdx - 0xb]
test al, 0x12
setne cl
bt ax, dx
setb al
test al, cl
je 0x1800d3783
lea rax, [fcn.180009c30]
cmp qword [rsi + 0x30], rax
jne 0x1800d3783
mov ebx, edi
xor r13d, r13d
jmp 0x1800d3789
xor r13d, r13d
mov ebx, r13d
lea esi, [r15 + 1]
call fcn.1800c9aa0
test eax, eax
jne 0x1800d39bd
mov eax, r13d
test ebx, ebx
cmove eax, esi
movsxd rcx, eax
add rcx, 0x50
call fcn.180006980
mov rdi, rax
test rax, rax
je 0x1800d39b8
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
movups xmmword [rax + 0x40], xmm0
test ebx, ebx
je 0x1800d37e2
inc qword [rbp - 8]
mov qword [rax + 0x10], rbp
mov byte [rax + 0x34], 1
jmp 0x1800d37f5
lea rcx, [rax + 0x50]
movsxd r8, esi
mov rdx, rbp
mov qword [rax + 0x10], rcx
call fcn.1801a1710
mov rbx, qword [rsp + 0x80]
mov rcx, rdi
mov rdx, rbx
mov dword [rdi + 0x38], 1
call fcn.1800d3350
test eax, eax
je 0x1800d38a9
test rbx, rbx
jne 0x1800d3828
mov byte [rdi + 0x32], 1
mov rax, rdi
jmp 0x1800d39ef
mov eax, dword [rdi + 0x38]
cmp eax, 1
jbe 0x1800d383a
dec eax
mov dword [rdi + 0x38], eax
jmp 0x1800d39ed
mov rcx, rdi
call fcn.1800d0dd0
cmp dword [reloc.WS2_32.dll_accept], 0
je 0x1800d389b
mov rcx, qword [0x18024ba98]
test rcx, rcx
je 0x1800d385d
call qword [0x180241820]
mov rcx, rdi
call qword [0x1802417d8]
dec qword [0x18024b888]
movsxd rcx, eax
sub qword [0x18024b840], rcx
mov rcx, rdi
call qword [0x1802417c8]
mov rcx, qword [0x18024ba98]
test rcx, rcx
je 0x1800d39ed
call qword [0x180241830]
jmp 0x1800d39ed
mov rcx, rdi
call qword [0x1802417c8]
jmp 0x1800d39ed
mov esi, dword [rsp + 0x20]
lea eax, [r12 + 1]
mov dword [rdi + 0x4c], eax
add esi, 0xfff9708e
mov dword [rdi + 0x3c], r15d
mov r15, qword [r14 + 0x18]
mov rbx, qword [r15 + 0x128]
test rbx, rbx
je 0x1800d38ea
nop
cmp dword [rbx + 4], esi
jne 0x1800d38e1
mov eax, dword [r14 + 0x20]
cmp dword [rbx], eax
je 0x1800d38fe
test esi, esi
js 0x1800d38fe
mov rbx, qword [rbx + 0x18]
test rbx, rbx
jne 0x1800d38d0
mov rcx, qword [r15]
test rcx, rcx
je 0x1800d391e
mov edx, 0x20
call fcn.180007150
jmp 0x1800d3928
mov rax, qword [rbx + 0x10]
test rax, rax
je 0x1800d3964
mov rcx, qword [rbx + 8]
call rax
lea rax, [fcn.1800d0f70]
mov qword [rbx + 8], rdi
mov qword [rbx + 0x10], rax
jmp 0x1800d397d
mov ecx, 0x20
call fcn.180006980
mov rbx, rax
test rax, rax
je 0x1800d3975
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
mov eax, dword [r14 + 0x20]
mov dword [rbx], eax
mov dword [rbx + 4], esi
mov rax, qword [r15 + 0x128]
mov qword [rbx + 0x18], rax
mov qword [r15 + 0x128], rbx
cmp dword [r14 + 0x24], 0
jne 0x1800d3964
mov dword [r14 + 0x24], 0xffffffff
lea rax, [fcn.1800d0f70]
mov qword [rbx + 8], rdi
mov qword [rbx + 0x10], rax
jmp 0x1800d397d
mov rcx, rdi
call fcn.1800d0f70
mov rax, qword [r14 + 0x18]
mov rcx, qword [rax + 0x128]
test rcx, rcx
je 0x1800d39b3
nop dword [rax]
cmp dword [rcx + 4], esi
jne 0x1800d39a1
mov eax, dword [r14 + 0x20]
cmp dword [rcx], eax
je 0x1800d39af
test esi, esi
js 0x1800d39af
mov rcx, qword [rcx + 0x18]
test rcx, rcx
jne 0x1800d3990
mov rax, r13
jmp 0x1800d39ef
mov r13, qword [rcx + 8]
mov rax, r13
jmp 0x1800d39ef
mov edi, 1
mov rax, qword [r14]
mov ecx, 0x9000
test word [rax + 0x14], cx
je 0x1800d39d5
mov rcx, rax
call fcn.1800320a0
jmp 0x1800d39d9
mov word [rax + 0x14], di
mov rcx, qword [r14]
mov dword [r14 + 0x24], 7
mov rcx, qword [rcx + 0x18]
call fcn.180007460
xor eax, eax
mov r15, qword [rsp + 0x70]
add rsp, 0x30
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret