Codegolf — Перевернуть Шестнадцатеричный Дамп Xxd

  • Автор темы Domdomdom
  • Обновлено
  • 20, Oct 2024
  • #1
На этот вопрос уже есть ответы здесь:

 
 xxd 
hexdump such as this one:

xxd

Утилита обратимого шестнадцатеричного дампа (также известная как `xxd`)

I "Xpillow.txt����'��E��A��L}`�P�<D��"�C4�(�<D��"�C4�(� �Q-F�

(4 ответа)

Закрыт 5 лет назад. 00000000: 1f8b 0808 4920 2258 0003 7069 6c6c 6f77 ....I "X..pillow 00000010: 2e74 7874 00d3 d707 8218 10d0 2799 c545 .txt........'..E 00000020: ba96 41a1 994c 7d60 d650 d53c 44a3 8a22 ..A..L}`.P.<D.." 00000030: cd43 34aa 28d2 3c44 a38a 22cd 4334 aa28 .C4.(.<D..".C4.( 00000040: d20c 00fd 512d 46b8 0500 00 ....Q-F.... hexdump challenge because this one does not to be expanded to shellcodes.

Учитывая

  • Переверните его, чтобы получить исходный ввод: xxd ).
  • (Это лишь приближение исходного ввода)
  • Вам не нужно расширяться до шеллкодов.

Оповещение о обмане

Domdomdom


Рег
03 Mar, 2009

Тем
72

Постов
190

Баллов
570
  • 26, Oct 2024
  • #2

В, 27 байт

 
 
 
 
 
 éi               " Insert an 'i'

D              " Delete this line

@"            " And evaluate it as V code
 

Попробуйте онлайн!

Обратите внимание, что Ó " Replace .. " Two characters / " with <C-v><C-v>x " the text "<C-v>x" & " And the two characters we just matched <C-v>x1fi<C-v>x8bi<C-v>x08i<C-v>x08i<C-v>x49... represents the unprintable character <C-v>x<hex-value> .

Объяснение

Этот ответ довольно забавный, потому что речь идет об изменении ввода в V-код и последующем выполнении этого кода. Я объясню каждую команду по одной

1f8b080849202258000370696c6c6f772e74787400d3d707821810d02799c545ba9641a1994c7d60d650d53c44a38a22cd4334aa28d23c44a38a22cd4334aa28d20c00fd512d46b8050000

Теперь буфер выглядит так:

Î " On every line: dW " Delete a word 40| " Move to the 40th column D " Delete everything after this Í " Remove all occurrences of " A space üî " or a newline

Команда для вставки символа по его шестнадцатеричному значению:

0x16

Здесь мы начинаем преобразовывать его в настоящий V-код.

<C-v>

Но команда должна находиться в режиме вставки. Поэтому мы вставляем букву «i» в начале.

ÎdW40|D Í üî Ó../<C-v><C-v>x& éiD@"
 

Wera10


Рег
13 Jul, 2007

Тем
70

Постов
219

Баллов
589
Тем
403,760
Комментарии
400,028
Опыт
2,418,908

Интересно