Use these commands in your script:
...
setvar 0x8004 0x0 //0x0 is for the 1st pokemon in the party, 0x1 is for the 2nd pokemon...
callasm 0x8?????? //offset of the decrypt routine (replace the ? by a free space offset)
setvar 0x8005 0xF //0xf is the maximum duration of the virus (4 days I think...)
callasm 0x8?????? //offset of the give_pokerus routine
callasm 0x8?????? //offset of the encrypt routine
...
Now, you put the machine code of the routines at the offsets you choose:
After that, when you talk to the person (or trigger the event) that uses the script, your pokemon will get the pokerus.
Edit: this works for fire red US, I guess you would need to change the routines for other versions.