- 1
- 2
- 3
- 4
- 5
; Program entry point
00401000: push 0070F001
00401005: call 0040100B
0040100A: ret
0040100B: ret
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+225
; Program entry point
00401000: push 0070F001
00401005: call 0040100B
0040100A: ret
0040100B: ret
Суровый старт зашифрованного самораспаковывающегося архива. Так хитро передаётся управление на 0070F001 (за сегмент кода).
TarasB 28.12.2010 14:54 # −2
guest 28.12.2010 15:08 # −1
TarasB 28.12.2010 15:12 # 0
istem 28.12.2010 22:58 # 0
Можно и так?
00401000: push 0070F001
00401005: call 0040100A
0040100A: ret
--
И почему, в обоих случаях, нельзя использовать счётчик команд?.. (вопрос)
FadedInto 29.12.2010 00:17 # 0
Хм, похоже, так и нужно. Хотя есть же jmp 0070F001.
> почему, в обоих случаях, нельзя использовать счётчик команд?
Дело в хитрожопом 3-битном кодировании регистров: Для EIP не нашлось места. Ну и еще, например, команда mov eip, <src> была бы посложнее обычной записи в регистр.
istem 29.12.2010 00:29 # −1
> Для EIP не нашлось места.
:) весело.
Значит с усложнением архитектуры процессоров более лояльнее, использование высокоуровневых языков, либо всеобщая глобальная процессоростандартизация.
FadedInto 29.12.2010 01:01 # −1
Это вряд ли :)
inkanus-gray 29.12.2010 00:38 # +3
К счастью, её вскоре отменили.
bugmenot 29.12.2010 00:47 # 0
FadedInto 29.12.2010 00:59 # −1
bugmenot 29.12.2010 02:31 # +2
guest 29.12.2010 02:39 # 0
bugmenot 29.12.2010 02:43 # 0
guest 29.12.2010 02:51 # 0
bugmenot 29.12.2010 03:56 # 0
guest 29.12.2010 11:01 # −1
FadedInto 29.12.2010 02:56 # −1
bugmenot 29.12.2010 03:55 # 0
кстати, у этого чувака нет винрарнейшего справочника Ralf Brown's Interrupt List
guest 29.12.2010 00:59 # −1
Теперь в х64 есть доступ к EIP. :)
inkanus-gray 29.12.2010 00:35 # −1
bugmenot 29.12.2010 00:46 # +1
JMP ptr16:32
Jump far, absolute, address given in operand
FadedInto 29.12.2010 00:54 # −1
guest 29.12.2010 01:02 # −1
istem 29.12.2010 01:13 # −1
Как бы:
Но здесь же несколько иная ситуация, не?
guest 29.12.2010 02:41 # −1
inkanus-gray 29.12.2010 02:49 # −1
bugmenot 29.12.2010 03:58 # 0
Dummy00001 28.12.2010 15:17 # −1
guest 29.12.2010 00:01 # −1
?
bugmenot 29.12.2010 00:22 # 0
inkanus-gray 29.12.2010 00:26 # −1
1. Что-нибудь сгенерированное языками высокого уровня.
2. Дурилка для отладчика.
bugmenot 29.12.2010 00:44 # +2
guest 29.12.2010 00:55 # 0
guest 29.12.2010 00:56 # −2
TarasB 29.12.2010 10:21 # 0
Просто я захотет поковырять самоархиватор, требующий у меня СМС и сразу напоролся на такой прикол.
Govnocoder#0xFF 10.05.2011 14:13 # 0
TarasB 10.05.2011 15:48 # 0
Govnocoder#0xFF 10.05.2011 14:12 # 0
Анонимус 29.12.2010 01:37 # −1
если руками -- сам же запутается
можно еще набить в стек 42 адреса и 8 раз сделать рет
Анонимус 30.12.2010 22:22 # −1
Кажется я понял, о чем он))
govnokod3r 31.12.2010 03:24 # 0
guest 31.12.2010 11:47 # +3
Да. В Ass, конечно, юзаются.))
guest 02.01.2011 00:29 # −8
guest 02.01.2011 23:27 # −4
Govnocoder#0xFF 10.05.2011 14:09 # 0
DemonId7 12.06.2011 22:49 # 0