1. Си / Говнокод #6025

    +126

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    format MS COFF
    
    public fuckHighLevel as '_fuckHighLevel@4'
    
    fuckHighLevel:
            pop ebx
    
                pop eax
                add eax, 1
    
            jmp ebx

    Вызываем ассемблерную процедуру из Си.
    Вместо retn используем безусловыный переход на адрес возврата.
    Но работает же!

    Запостил: danilissimus, 19 Марта 2011

    Комментарии (2) RSS

    • Бля. ошибся разделом. Страйко, поправь, а?
      Ответить
    • Прямой переход на адрес возврата - стандартная практика оптимизации кода, когда необходимо произвести вызов последующей функции с "хвоста" предыдущей. Подобные трюки активно используются компиляторами. Конечно, это есть вопрос о том, стоит ли пользоваться чем-то подобным в рукописных ассемблерных функциях, но это уже зависит от назначения функции.
      Ответить

    Добавить комментарий