If your batch file accepts only one parameter, you could use the second one to denote whether you want to run the main part or a subroutine (and which one, too).
More specifically, here's how you could do:
@ECHO OFF
IF "%2" == "sub1" GOTO sub1
IF "%2" == "sub2" GOTO sub2
:: otherwise just get on with the main part
...
:sub1
...
:sub2
...
Now you could specify in the registry file something like this:
@="\"C:\\MY_BATCH_PROGRAM.bat\" \"%1\" sub1"