Function at 0x14011c3a0
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 r12d, r12d
mov rsi, rdx
mov r14, rcx
test rdx, rdx
jne 0x14011c3cb
mov ebp, r12d
jmp 0x14011c402
movzx ecx, word [rdx + 0x14]
mov edx, 0x202
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x14011c3eb
cmp byte [rsi + 0x16], 1
jne 0x14011c3eb
mov rbp, qword [rsi + 8]
jmp 0x14011c402
test cl, 1
je 0x14011c3f5
mov rbp, r12
jmp 0x14011c402
mov dl, 1
mov rcx, rsi
call fcn.140079950
mov rbp, rax
mov eax, reloc.WS2_32.dll_sendto
mov qword [rsp + 0x70], r15
add rax, rsi
mov r10, rsi
mov qword [rsp + 0x28], rax
movzx ecx, word [rax]
test cl, 2
je 0x14011c42b
cmp byte [rsi + 0x16], 1
jne 0x14011c42b
mov r15d, dword [rsi + 0x10]
jmp 0x14011c457
test cl, 0x10
je 0x14011c440
bt cx, 0xa
mov r15d, dword [rsi + 0x10]
jae 0x14011c457
add r15d, dword [rsi]
jmp 0x14011c457
test cl, 1
je 0x14011c44a
mov r15d, r12d
jmp 0x14011c457
mov dl, 1
mov rcx, rsi
call fcn.14007a050
mov r15d, eax
mov dword [rsp + 0x24], r12d
mov r9d, 0xffffffff
mov dword [rsp + 0x20], r9d
mov rdi, r12
mov dword [rsp + 0x78], r12d
mov r8d, r12d
test rbp, rbp
je 0x14011c795
mov r13d, r12d
nop
mov rax, qword [r14 + 0x18]
lea edx, [r13 - 0x68f72]
mov rcx, qword [rax + 0x128]
test rcx, rcx
je 0x14011c596
nop dword [rax + rax]
cmp dword [rcx + 4], edx
jne 0x14011c4b1
mov eax, dword [r14 + 0x20]
cmp dword [rcx], eax
je 0x14011c4bf
test edx, edx
js 0x14011c4bf
mov rcx, qword [rcx + 0x18]
test rcx, rcx
jne 0x14011c4a0
jmp 0x14011c596
mov rbx, qword [rcx + 8]
test rbx, rbx
je 0x14011c596
test rdi, rdi
jne 0x14011c556
cmp dword [rbx + 0x3c], r15d
jne 0x14011c51b
cmp byte [rbx + 0x37], r12b
je 0x14011c4ec
mov eax, dword [rsp + 0x88]
test eax, eax
jne 0x14011c522
mov rcx, qword [rbx + 0x10]
cmp rcx, rbp
je 0x14011c50e
movsxd r8, r15d
mov rdx, rbp
call fcn.1401ea6b0
mov r9d, dword [rsp + 0x20]
test eax, eax
jne 0x14011c51b
mov r8d, dword [rsp + 0x78]
mov byte [rbx + 0x32], r12b
mov rdi, rbx
mov byte [rbx + 0x36], r12b
jmp 0x14011c56f
mov eax, dword [rsp + 0x88]
mov rcx, qword [rbx + 0x18]
test rcx, rcx
je 0x14011c556
test eax, eax
jne 0x14011c556
cmp dword [rbx + 0x40], r15d
jne 0x14011c556
movsxd r8, r15d
mov rdx, rbp
call fcn.1401ea6b0
mov r9d, dword [rsp + 0x20]
test eax, eax
jne 0x14011c556
mov byte [rbx + 0x32], r12b
mov rdi, rbx
mov byte [rbx + 0x36], 1
jmp 0x14011c56a
mov eax, dword [rbx + 0x4c]
cmp eax, r9d
jae 0x14011c56a
mov r9d, eax
mov dword [rsp + 0x20], eax
mov dword [rsp + 0x24], r13d
mov r8d, dword [rsp + 0x78]
mov eax, dword [rbx + 0x4c]
cmp eax, r8d
cmovbe eax, r8d
inc r13d
mov dword [rsp + 0x78], eax
mov r8d, eax
cmp r13d, 4
jl 0x14011c480
mov r13d, dword [rsp + 0x24]
mov dword [rsp + 0x78], eax
test rdi, rdi
je 0x14011c5ae
lea ecx, [r8 + 1]
mov byte [rdi + 0x32], r12b
mov dword [rdi + 0x4c], ecx
mov rax, rdi
jmp 0x14011c797
mov rax, qword [rsp + 0x28]
mov edx, recv
movzx eax, word [rax]
lea ebx, [rdx - 0xb]
test al, 0x12
setne cl
bt ax, dx
setb al
test al, cl
je 0x14011c5dd
lea rax, [fcn.14004fc00]
mov edi, ebx
cmp qword [rsi + 0x30], rax
je 0x14011c5e0
mov edi, r12d
lea esi, [r15 + 1]
call fcn.140112500
test eax, eax
jne 0x14011c765
mov eax, r12d
test edi, edi
cmove eax, esi
movsxd rcx, eax
add rcx, 0x50
call fcn.14004ca20
mov rbx, rax
test rax, rax
je 0x14011c760
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 edi, edi
je 0x14011c639
inc qword [rbp - 8]
mov qword [rax + 0x10], rbp
mov byte [rax + 0x34], 1
jmp 0x14011c64c
lea rcx, [rax + 0x50]
movsxd r8, esi
mov rdx, rbp
mov qword [rax + 0x10], rcx
call fcn.1401ea7b0
mov rdi, qword [rsp + 0x80]
mov rcx, rbx
mov rdx, rdi
mov dword [rbx + 0x38], 1
call fcn.14011c190
test eax, eax
je 0x14011c700
test rdi, rdi
jne 0x14011c67f
mov byte [rbx + 0x32], 1
mov rax, rbx
jmp 0x14011c797
mov eax, dword [rbx + 0x38]
cmp eax, 1
jbe 0x14011c691
dec eax
mov dword [rbx + 0x38], eax
jmp 0x14011c795
mov rcx, rbx
call fcn.140119c00
cmp dword [reloc.WS2_32.dll_accept], r12d
je 0x14011c6f2
mov rcx, qword [0x1402e5b88]
test rcx, rcx
je 0x14011c6b4
call qword [0x1402d37a0]
mov rcx, rbx
call qword [0x1402d3758]
dec qword [0x1402e5978]
movsxd rcx, eax
sub qword [0x1402e5930], rcx
mov rcx, rbx
call qword [0x1402d3748]
mov rcx, qword [0x1402e5b88]
test rcx, rcx
je 0x14011c795
call qword [0x1402d37b0]
jmp 0x14011c795
mov rcx, rbx
call qword [0x1402d3748]
jmp 0x14011c795
mov eax, dword [rsp + 0x78]
lea edi, [r13 - 0x68f72]
inc eax
mov dword [rbx + 0x3c], r15d
lea r9, [fcn.140119da0]
mov dword [rbx + 0x4c], eax
mov r8, rbx
mov edx, edi
mov rcx, r14
call fcn.140080ca0
mov rax, qword [r14 + 0x18]
mov rcx, qword [rax + 0x128]
test rcx, rcx
je 0x14011c75b
cmp dword [rcx + 4], edi
jne 0x14011c749
mov eax, dword [r14 + 0x20]
cmp dword [rcx], eax
je 0x14011c757
test edi, edi
js 0x14011c757
mov rcx, qword [rcx + 0x18]
test rcx, rcx
jne 0x14011c738
mov rax, r12
jmp 0x14011c797
mov r12, qword [rcx + 8]
mov rax, r12
jmp 0x14011c797
mov ebx, 1
mov rax, qword [r14]
mov ecx, 0x9000
test word [rax + 0x14], cx
je 0x14011c77d
mov rcx, rax
call fcn.140078a60
jmp 0x14011c781
mov word [rax + 0x14], bx
mov rcx, qword [r14]
mov dword [r14 + 0x24], 7
mov rcx, qword [rcx + 0x18]
call fcn.14004d500
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