Encrypting messages using the XOR operation
Looks okay, perform-xor can be both simpler and the variables in the
let should be each on a single line.  You don't need the double map,
so just map over bigmap and then you also don't need the take, as
map will only run till one of the arguments runs out, thus:

(defn perform-xor []
  (let [bigmap (repeat 12 0xFF)
        xorkey [1 2 3 4 5]]
    (map (fn [x y] (bit-xor x y))
         bigmap (cycle xorkey))))


The -main function can be simpler, given that you don't (in principle)
care about the garbage from the mapv (mapv because it's eager):

(defn -main [&amp; args]
  (mapv print (get-string-output))
  (newline))


newline just for giggles, or (more seriously) clarifying intent.