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

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push r13
sub rsp, 0x60
mov rax, qword [rcx + 0x60]
mov r8, rcx
mov r13d, 1
mov byte [rsp + 0x88], 0
test rax, rax
je 0x1400c3962
nop word [rax + rax]
cmp byte [rax + 0x38], 0
je 0x1400c3935
mov rax, qword [rax]
test rax, rax
jne 0x1400c3920
add rsp, 0x60
pop r13
ret
xor edx, edx
mov eax, reloc.WS2_32.dll_sendto
cmp word [rcx + 0x6d8], r13w
je 0x1400c3948
mov eax, edx
add eax, 0xb
mov ecx, 0xfffffffc
and eax, ecx
add eax, 0x28
mov dword [rsp + 0x20], eax
cmp dword [r8 + 0x524], eax
ja 0x1400c396b
xor eax, eax
add rsp, 0x60
pop r13
ret
mov qword [rsp + 0x58], rbp
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], r15
mov r15, qword [0x1402e6b48]
mov qword [rsp + 0x80], rbx
mov esi, 8
mov rbp, rdx
mov r14, rdx
mov r12d, edx
nop word [rax + rax]
cmp esi, 0xb0
jle 0x1400c3a5e
mov rcx, r15
call fcn.1401e3610
mov rdi, rax
test rax, rax
je 0x1400c3a0b
xor ecx, ecx
mov dword [rax + 0x1c], 2
mov word [rax + 0x20], r13w
mov qword [rax], rcx
mov qword [rax + 8], rcx
mov dword [rax + 0x18], ecx
add rax, 0x50
mov qword [rdi + 0x28], rcx
mov dword [rdi + 0x38], ecx
mov qword [rdi + 0x30], rcx
mov dword [rdi + 0x3c], ecx
mov dword [rdi + 0x40], ecx
mov qword [rdi + 0x10], rax
mov word [rdi + 0x44], cx
mov word [rdi + 0x46], cx
mov qword [rdi + 0x48], rcx
jmp 0x1400c3a0d
xor ecx, ecx
mov qword [rdi + 0x50], rcx
mov rcx, qword [0x1402e6b50]
call fcn.1401e3610
mov rcx, qword [0x1402e6b58]
mov rbx, rax
call fcn.1401e3610
mov dword [rax], r13d
or dword [rdi + 0x1c], r13d
xor edx, edx
mov qword [rdi + 0x70], rax
mov qword [rdi + 0x58], rdx
mov qword [rdi + 0x60], rdx
mov qword [rdi + 0x50], rbx
mov qword [rdi + 0x10], rbx
mov dword [rdi + 0x68], 0x800
mov dword [rdi + 0x78], r13d
mov eax, 0x800
jmp 0x1400c3b06
test r12b, 2
je 0x1400c3acb
mov rcx, r15
call fcn.1401e3610
mov rdi, rax
test rax, rax
je 0x1400c3abd
xor edx, edx
mov dword [rax + 0x1c], 2
mov word [rax + 0x20], r13w
mov qword [rax], rdx
mov qword [rax + 8], rdx
mov dword [rax + 0x18], edx
add rax, 0x50
mov qword [rdi + 0x28], rdx
mov dword [rdi + 0x38], edx
mov qword [rdi + 0x10], rax
mov eax, 0xb0
mov qword [rdi + 0x30], rdx
cmp esi, eax
mov dword [rdi + 0x3c], edx
mov dword [rdi + 0x40], edx
mov word [rdi + 0x44], dx
mov word [rdi + 0x46], dx
mov qword [rdi + 0x48], rdx
cmovl eax, esi
jmp 0x1400c3b06
mov eax, 0xb0
xor edx, edx
cmp esi, eax
cmovl eax, esi
jmp 0x1400c3b06
mov rcx, r15
call fcn.1401e3610
mov rdi, rax
test rax, rax
je 0x1400c3afa
xor edx, edx
mov word [rax + 0x20], r13w
add rax, 0x28
mov qword [rax - 0x28], rdx
mov qword [rax - 0x20], rdx
mov dword [rax - 0x10], edx
mov dword [rax - 0xc], edx
mov qword [rdi + 0x10], rax
jmp 0x1400c3afc
xor edx, edx
mov eax, 0xd8
cmp esi, eax
cmovl eax, esi
test rdi, rdi
je 0x1400c405e
cmp eax, 8
jl 0x1400c4023
sub esi, eax
test r14, r14
je 0x1400c3b24
mov qword [r14], rdi
jmp 0x1400c3b27
mov rbp, rdi
and r12d, 0xfffffffd
mov r14, rdi
test esi, esi
jg 0x1400c39b0
test r12b, 4
je 0x1400c3b40
or dword [rdi + 0x1c], 4
test rbp, rbp
je 0x1400c406b
mov r12d, 0x800
mov rsi, rdx
mov rbx, rdx
mov qword [rsp + 0x28], rdx
mov r14d, edx
nop dword [rax]
cmp r12d, 0xb0
jle 0x1400c3c14
mov rcx, r15
call fcn.1401e3610
mov rdi, rax
test rax, rax
je 0x1400c3bbc
xor ecx, ecx
mov dword [rax + 0x1c], 2
mov word [rax + 0x20], r13w
mov qword [rax], rcx
mov qword [rax + 8], rcx
mov dword [rax + 0x18], ecx
add rax, 0x50
mov qword [rdi + 0x28], rcx
mov dword [rdi + 0x38], ecx
mov qword [rdi + 0x30], rcx
mov dword [rdi + 0x3c], ecx
mov dword [rdi + 0x40], ecx
mov qword [rdi + 0x10], rax
mov word [rdi + 0x44], cx
mov word [rdi + 0x46], cx
mov qword [rdi + 0x48], rcx
jmp 0x1400c3bbe
xor ecx, ecx
mov qword [rdi + 0x50], rcx
mov rcx, qword [0x1402e6b50]
call fcn.1401e3610
mov rcx, qword [0x1402e6b58]
mov rbx, rax
call fcn.1401e3610
mov dword [rax], r13d
or dword [rdi + 0x1c], r13d
xor edx, edx
mov qword [rdi + 0x50], rbx
mov qword [rdi + 0x10], rbx
mov rbx, qword [rsp + 0x28]
mov qword [rdi + 0x70], rax
mov qword [rdi + 0x58], rdx
mov qword [rdi + 0x60], rdx
mov dword [rdi + 0x68], 0x800
mov dword [rdi + 0x78], r13d
mov eax, 0x800
jmp 0x1400c3cc2
test r14b, 2
je 0x1400c3c85
mov rcx, r15
call fcn.1401e3610
mov rdi, rax
test rax, rax
je 0x1400c3c75
xor edx, edx
mov dword [rax + 0x1c], 2
mov word [rax + 0x20], r13w
mov qword [rax], rdx
mov qword [rax + 8], rdx
mov dword [rax + 0x18], edx
add rax, 0x50
mov qword [rdi + 0x28], rdx
mov dword [rdi + 0x38], edx
mov qword [rdi + 0x10], rax
mov eax, 0xb0
mov qword [rdi + 0x30], rdx
cmp r12d, eax
mov dword [rdi + 0x3c], edx
mov dword [rdi + 0x40], edx
mov word [rdi + 0x44], dx
mov word [rdi + 0x46], dx
mov qword [rdi + 0x48], rdx
cmovl eax, r12d
jmp 0x1400c3cc2
mov eax, 0xb0
xor edx, edx
cmp r12d, eax
cmovl eax, r12d
jmp 0x1400c3cc2
mov rcx, r15
call fcn.1401e3610
mov rdi, rax
test rax, rax
je 0x1400c3cb4
xor edx, edx
mov word [rax + 0x20], r13w
add rax, 0x28
mov qword [rax - 0x28], rdx
mov qword [rax - 0x20], rdx
mov dword [rax - 0x10], edx
mov dword [rax - 0xc], edx
mov qword [rdi + 0x10], rax
jmp 0x1400c3cb6
xor edx, edx
mov eax, 0xd8
cmp r12d, eax
cmovl eax, r12d
test rdi, rdi
je 0x1400c4014
cmp eax, 0x800
jl 0x1400c400a
sub r12d, eax
test rbx, rbx
je 0x1400c3ce3
mov qword [rbx], rdi
jmp 0x1400c3ce6
mov rsi, rdi
mov rbx, rdi
and r14d, 0xfffffffd
mov qword [rsp + 0x28], rbx
test r12d, r12d
jg 0x1400c3b60
test r14b, 4
je 0x1400c3d05
or dword [rdi + 0x1c], 4
test rsi, rsi
je 0x1400c4063
mov r14, qword [rsp + 0x70]
mov dword [rbp + 0x18], 8
mov dword [rsi + 0x18], edx
mov r15, qword [rbp + 0x10]
xor eax, eax
mov qword [r15], rax
mov r12, qword [rsi + 0x10]
mov byte [r15], 0xc1
mov byte [r15 + 1], al
mov ecx, dword [r14 + 0x4fc]
mov qword [rsp + 0x28], r12
call sub.WS2_32.dll_htonl
mov dword [r15 + 4], eax
mov rbx, qword [r14 + 0x60]
inc dword [r14 + 0x4fc]
test rbx, rbx
je 0x1400c3ee9
mov edx, 0xc002
cmp byte [rbx + 0x38], 0
jne 0x1400c3ead
movzx edi, word [rbx + 0x12]
mov ecx, dword [rsi + 0x18]
mov eax, 0xfffffffc
add edi, 3
and edi, eax
mov eax, dword [r14 + 0x524]
sub eax, dword [rsp + 0x20]
add ecx, edi
cmp ecx, eax
ja 0x1400c3eb9
cmp ecx, 0x800
ja 0x1400c3eb9
mov dword [rbx + 0x14], r13d
inc r13d
cmp byte [rsp + 0x88], 0
jne 0x1400c3e38
cmp byte [rbx + 0x39], 0
jne 0x1400c3e38
cmp word [rbx + 0x10], dx
jne 0x1400c3e38
movzx ecx, word [rbx + 0x18]
call sub.WS2_32.dll_htons
mov word [r15 + 8], ax
cmp word [rbx + 0x18], 6
jne 0x1400c3de3
mov r12d, reloc.WS2_32.dll_sendto
lea r14d, [r12 - 4]
jmp 0x1400c3dee
mov r12d, 8
lea r14d, [r12 - 4]
lea ecx, [r12 + 3]
mov eax, 0xfffc
and cx, ax
call sub.WS2_32.dll_htons
lea rdx, [rbx + 0x1c]
lea rcx, [r15 + 0xc]
movzx r8d, r14w
mov word [r15 + 0xa], ax
call fcn.1401e3ed0
mov r14, qword [rsp + 0x70]
movzx r11d, r12w
mov r12, qword [rsp + 0x28]
add r11d, 3
mov byte [rsp + 0x88], 1
and r11d, 0xfffffffc
add dword [rbp + 0x18], r11d
lea rdx, [rbx + 0x10]
mov r8d, edi
mov rcx, r12
call fcn.1401e3ed0
movzx ecx, word [r12]
call sub.WS2_32.dll_htons
movzx ecx, word [r12 + 2]
mov word [r12], ax
call sub.WS2_32.dll_htons
movzx ecx, word [r12 + 8]
mov word [r12 + 2], ax
call sub.WS2_32.dll_htons
movzx ecx, word [r12 + 0xa]
mov word [r12 + 8], ax
call sub.WS2_32.dll_htons
lea ecx, [rdi + 3]
mov word [r12 + 0xa], ax
mov eax, ecx
mov edx, 0xc002
and eax, 0xfffffffc
add dword [rsi + 0x18], eax
mov eax, 0xfffffffc
mov byte [rbx + 0x38], 1
and rcx, rax
add r12, rcx
mov qword [rsp + 0x28], r12
mov rbx, qword [rbx]
test rbx, rbx
jne 0x1400c3d60
cmp byte [rsp + 0x88], 0
je 0x1400c3ee9
mov rcx, qword [rsp + 0x78]
mov qword [rbp], rsi
mov eax, dword [rsi + 0x18]
add eax, dword [rbp + 0x18]
mov dword [rcx], eax
movzx ecx, ax
call sub.WS2_32.dll_htons
mov word [r15 + 2], ax
mov rax, rbp
jmp 0x1400c406d
mov rax, qword [r14 + 8]
test byte [rax + 0x158], 4
je 0x1400c3f02
xor edx, edx
mov rcx, r14
call fcn.1400c37d0
jmp 0x1400c3f0a
mov rcx, r14
call fcn.1400c3870
test rax, rax
je 0x1400c3f90
mov eax, dword [rbp + 0x1c]
mov rbx, qword [rbp]
test al, 1
je 0x1400c3f28
mov rcx, rbp
call fcn.140077180
jmp 0x1400c3f44
bt eax, 0x12
jb 0x1400c3f44
test al, 2
je 0x1400c3f3c
xor edx, edx
mov rcx, rbp
call fcn.140077060
mov rcx, rbp
call fcn.1401e36c8
mov rbp, rbx
test rbx, rbx
jne 0x1400c3f13
nop dword [rax]
mov eax, dword [rsi + 0x1c]
mov rbx, qword [rsi]
test al, 1
je 0x1400c3f64
mov rcx, rsi
call fcn.140077180
jmp 0x1400c3f80
bt eax, 0x12
jb 0x1400c3f80
test al, 2
je 0x1400c3f78
xor edx, edx
mov rcx, rsi
call fcn.140077060
mov rcx, rsi
call fcn.1401e36c8
mov rsi, rbx
test rbx, rbx
jne 0x1400c3f50
jmp 0x1400c406b
mov eax, dword [rbp + 0x1c]
mov rbx, qword [rbp]
test al, 1
je 0x1400c3fa5
mov rcx, rbp
call fcn.140077180
jmp 0x1400c3fc1
bt eax, 0x12
jb 0x1400c3fc1
test al, 2
je 0x1400c3fb9
xor edx, edx
mov rcx, rbp
call fcn.140077060
mov rcx, rbp
call fcn.1401e36c8
mov rbp, rbx
test rbx, rbx
jne 0x1400c3f90
nop dword [rax]
mov eax, dword [rsi + 0x1c]
mov rbx, qword [rsi]
test al, 1
je 0x1400c3fe4
mov rcx, rsi
call fcn.140077180
jmp 0x1400c4000
bt eax, 0x12
jb 0x1400c4000
test al, 2
je 0x1400c3ff8
xor edx, edx
mov rcx, rsi
call fcn.140077060
mov rcx, rsi
call fcn.1401e36c8
mov rsi, rbx
test rbx, rbx
jne 0x1400c3fd0
jmp 0x1400c406b
mov rcx, rdi
call fcn.140077120
jmp 0x1400c4063
test rsi, rsi
je 0x1400c4063
mov rcx, rsi
call fcn.140077120
jmp 0x1400c4063
mov eax, dword [rdi + 0x1c]
mov rbx, qword [rdi]
test r13b, al
je 0x1400c4038
mov rcx, rdi
call fcn.140077180
jmp 0x1400c4054
bt eax, 0x12
jb 0x1400c4054
test al, 2
je 0x1400c404c
xor edx, edx
mov rcx, rdi
call fcn.140077060
mov rcx, rdi
call fcn.1401e36c8
mov rdi, rbx
test rbx, rbx
jne 0x1400c4023
jmp 0x1400c406b
test rbp, rbp
je 0x1400c406b
mov rcx, rbp
call fcn.140077120
xor eax, eax
mov rbx, qword [rsp + 0x80]
mov r12, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov r14, qword [rsp + 0x38]
mov r15, qword [rsp + 0x30]
add rsp, 0x60
pop r13
ret