Also this line (in the same section) is wrong "movlw PORTB", you can't use MOVLW to transfer anything to W except an explicitly stated number - in this case the assembler will relace 'PORTB' with it's equate value from the include file, which is 6.
As with your other incorrect line, it should be "movf PORTB, W", to transfer the contents of PORTB to the W register.
The incorrect line that Jay mentioned will have the same fault, it will load W with the numeric address of 'save', which will be defined in the definitons at the beginning of your code (something at least as high as 0x20 for a 628).