When I run the following code in IRB:
1.9.3p194 :001 > x = %w(61 6C 6C 20 75 72 20 73 79 73 74 65 6D 73 20 62 65 6C 6F 6E 67 20 32 20 75 73)
1.9.3p194 :002 > puts x.map {|z| z.to_i(16)}.map(&:chr).join.inspect
I get:
"\x00ll ur systems belong 2 us"
=> nil
However "61".to_i(16).chr is "a", not "\x00".
What is going on there?
The problem is that you have an invisible Unicode left-to-right mark, located just after the
%w(. It shows up encoded in UTF-8 by the time I see it via Stack Overflow, but it looks like it must have been (Windows?) UTF-16 in your original source.