Naive write_string for OSX

A naive port (read: copy-paste) of the Linux `write_string` to OSX. One difference: it uses straight `malloc` instead of a remote `mmap2`. I have zero idea how to do that :) I took care to make sure that if `malloc` returns a pointer to an address outside the range of `VIRTADDR`, the application won't blow up (didn't test it though).

I've been using this for just a few minutes now, seems to work so far.