See Microsoft article Registering an Application for Use with Default Programs.
Or, seeing that you have WinSCP installed, check what WinSCP does to register itself as
@="\"C:\\Program Files (x86)\\WinSCP\\WinSCP.exe\",0"
@="\"C:\\Program Files (x86)\\WinSCP\\WinSCP.exe\" /Unsafe \"%1\""
"ApplicationDescription"="WinSCP is a popular free SFTP and FTP client for Windows, a powerful file manager that will improve your productivity. It supports also Amazon S3, FTPS, SCP and WebDAV protocols. Power users can automate WinSCP using .NET assembly."
And do a similar thing for FileZilla.
For the above to work, you still need to have
ftp protocol registered in
HKEY_CLASSES_ROOT\ftp. But you have that already.
Note that FileZilla does not support URLs pointing to a file. Only URLs pointing to a directory. WinSCP supports both.