Well, you could try changing this:
RewriteCond %haha123;HTTP_REFERER} !^
http://(www\.)?xxxxxxxx.com/.*$ [NC]
to this:
RewriteCond %haha123;HTTP_REFERER} ^
http://(www\.)?domaintoredirect.com/.*$ [NC]
the "!" stands for NOT, so in the original, it's basically saying
if the http_referrer is NOT a url beginning with
http://, and maybe also the
www., followed by a number of characters which contain xxxxxxxx.com/, plus any other characters to the end of the url, (non case sensitive), then proceed to rewriterule.
So removing the "!" would remove the NOT, and change the condition from checking if the url is NOT your domain (and redirecting if it isnt), to checking if the url IS from the offending domain (and redirecting if it is)..
Test rewriting with care though, always.