You should be able to do this with the following (haven't tested this):
static (inside,outside) 212.58.28.157 192.169.0.21 netmask 255.255.255.255
static (inside,outside) udp 212.58.28.157 5060 192.169.0.20 5060 netmask 255.255.255.255
static (inside,outside) tcp 212.58.28.157 5060 192.169.0.20 5060 netmask 255.255.255.255
You'll get a warning that the addresses overlap, but as long as the port-specific statics are above the general static when you do a "wr term" (static's are read from top down), then you should be fine.