Function at 0x1400ccd50
Capabilities:
Encrypt data using curve25519

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rdi
push r13
push r14
push r15
sub rsp, 0x40
movsxd rbx, dword [rsp + 0x80]
xor ebp, ebp
cmp dword [rsp + 0x88], 2
mov r15, r9
mov edi, edx
mov r13, rcx
lea r14d, [rbp + 0x20]
je 0x1400cce06
test r8, r8
je 0x1400ccdd0
mov r9, r8
lea rdx, [rsp + 0x30]
xor r8d, r8d
xor ecx, ecx
call fcn.1400a10b0
cmp dword [rsp + 0x30], 0xffffffff
je 0x1400ccdd0
mov dword [rsp + 0x20], 0x3a
mov ecx, reloc.WS2_32.dll_recv
lea r9, str.c:_cygwin_home_shachar_zon_new_pkg_lib_openssl_crypto_ec_ecx_meth.c
mov edx, 0x10a
lea r8d, [rcx + 0x56]
call fcn.14006c250
xor eax, eax
jmp 0x1400ccffd
test r15, r15
je 0x1400ccdfc
cmp edi, 0x40a
je 0x1400ccdf5
cmp edi, 0x43f
je 0x1400ccdf5
cmp edi, 0x40b
mov eax, ebp
setne al
add eax, 0x38
jmp 0x1400ccdf8
mov eax, r14d
cmp ebx, eax
je 0x1400cce06
mov dword [rsp + 0x20], 0x40
jmp 0x1400ccdaf
mov r8d, 0x45
mov qword [rsp + 0x60], rsi
lea rdx, str.c:_cygwin_home_shachar_zon_new_pkg_lib_openssl_crypto_ec_ecx_meth.c
lea ecx, [r8 + 3]
call fcn.14006cbc0
mov rsi, rax
test rax, rax
jne 0x1400cce50
lea r9, str.c:_cygwin_home_shachar_zon_new_pkg_lib_openssl_crypto_ec_ecx_meth.c
mov dword [rsp + 0x20], 0x47
mov edx, 0x10a
lea ecx, [rax + 0x10]
lea r8d, [rax + 0x41]
call fcn.14006c250
xor eax, eax
jmp 0x1400ccff8
cmp dword [rsp + 0x88], ebp
jne 0x1400cce6c
mov r8, rbx
mov rdx, r15
mov rcx, rsi
call fcn.140174c80
jmp 0x1400ccfe6
cmp edi, 0x40a
je 0x1400cce8e
cmp edi, 0x43f
je 0x1400cce8e
cmp edi, 0x40b
mov rcx, rbp
setne cl
add rcx, 0x38
jmp 0x1400cce91
mov rcx, r14
mov r8d, 0x4f
lea rdx, str.c:_cygwin_home_shachar_zon_new_pkg_lib_openssl_crypto_ec_ecx_meth.c
call fcn.14006cca0
mov qword [rsi + 0x40], rax
mov rbx, rax
test rax, rax
jne 0x1400cced1
lea r9, str.c:_cygwin_home_shachar_zon_new_pkg_lib_openssl_crypto_ec_ecx_meth.c
mov dword [rsp + 0x20], 0x51
mov edx, 0x10a
lea ecx, [rax + 0x10]
lea r8d, [rax + 0x41]
call fcn.14006c250
jmp 0x1400ccf28
cmp dword [rsp + 0x88], 2
jne 0x1400ccf6a
cmp edi, 0x40a
je 0x1400ccf00
cmp edi, 0x43f
je 0x1400ccf00
cmp edi, 0x40b
mov r14d, ebp
setne r14b
add r14d, 0x38
mov edx, r14d
mov rcx, rbx
call fcn.14005f7a0
test eax, eax
jg 0x1400ccf44
mov r8d, 0x56
lea rdx, str.c:_cygwin_home_shachar_zon_new_pkg_lib_openssl_crypto_ec_ecx_meth.c
mov rcx, rbx
call fcn.14006cc90
mov qword [rsi + 0x40], rbp
mov r8d, 0x78
lea rdx, str.c:_cygwin_home_shachar_zon_new_pkg_lib_openssl_crypto_ec_ecx_meth.c
mov rcx, rsi
call fcn.14006c8e0
xor eax, eax
jmp 0x1400ccff8
cmp edi, 0x40a
jne 0x1400ccf59
and byte [rbx], 0xf8
and byte [rbx + 0x1f], 0x3f
or byte [rbx + 0x1f], 0x40
jmp 0x1400ccf9b
cmp edi, 0x40b
jne 0x1400ccf9b
and byte [rbx], 0xfc
or byte [rbx + 0x37], 0x80
jmp 0x1400ccf9b
cmp edi, 0x40a
je 0x1400ccf8a
cmp edi, 0x43f
je 0x1400ccf8a
cmp edi, 0x40b
setne bpl
add rbp, 0x38
jmp 0x1400ccf8d
mov rbp, r14
mov r8, rbp
mov rdx, r15
mov rcx, rbx
call fcn.140174c80
mov ecx, edi
sub ecx, 0x40a
je 0x1400ccfdb
sub ecx, 1
je 0x1400ccfce
sub ecx, 0x34
je 0x1400ccfc1
cmp ecx, 1
jne 0x1400ccfe6
mov rdx, rbx
mov rcx, rsi
call fcn.140139010
jmp 0x1400ccfe6
mov rdx, rbx
mov rcx, rsi
call fcn.140139830
jmp 0x1400ccfe6
mov rdx, rbx
mov rcx, rsi
call fcn.140135a20
jmp 0x1400ccfe6
mov rdx, rbx
mov rcx, rsi
call fcn.140139d10
mov r8, rsi
mov edx, edi
mov rcx, r13
call fcn.140067a80
mov eax, 1
mov rsi, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
add rsp, 0x40
pop r15
pop r14
pop r13
ret