docs: def xor_app(parser, cmd, args):  # pragma: no cover
      """
      Xor a value with a key.
      """
  
      parser.add_argument(
          '-d', '--dec',
          help='interpret the key as a decimal integer',
          dest='type',
          action='store_const',
          const=int
      )
      parser.add_argument(
          '-x', '--hex',
          help='interpret the key as an hexadecimal integer',
          dest='type',
          action='store_const',
          const=lambda v: int(v, 16)
      )
      parser.add_argument('key', help='the key to xor the value with')
      parser.add_argument('value', help='the value to xor, read from stdin if omitted', nargs='?')
  
      args = parser.parse_args(args)
      if args.type is not None:
          args.key = args.type(args.key)
  
      return xor(args.key, pwnypack.main.binary_value_or_stdin(args.value))