The first thing you'll need to figure out is how to multiply, because you don't have an opcode to do so. you can do something like:
loop add mul1 to result
subtract 1 from mul2
if counter is greater zero jump to loop
where you are trying to compute mul1 * mul2 and when the loop exits your answer will be in result.
Now you need to figure out how to do the factorial. It would be something like this using the multiply I just wrote:
load num
set i = num
top multipy num and i
subtract 1 from i
if i is greater than 0 jump to top
Now for translating this into your assembler's opcodes, I'm not going to do that. I don't know enough about it, ie how many registers, whats the opcode specification, etc. because there are many different kinds of assembly code.
The main thing that helped me to get started with ASM was breaking down tasks into smaller, more manageable tasks. Good luck!