CELua[RU]
    • Категории
    • Последние
    • Метки
    • Популярные
    • Пользователи
    • Группы
    • Зарегистрироваться
    • Войти

    Рубрика "Lua код сегодня" №4

    Запланировано Прикреплена Закрыта Перенесена Обучающие примеры
    ce ccodece aace memrecобучалка
    4 Сообщения 2 Posters 57 Просмотры 2 Watching
    Загружаем больше сообщений
    • Сначала старые
    • Сначала новые
    • По количеству голосов
    Ответить
    • Ответить, создав новую тему
    Авторизуйтесь, чтобы ответить
    Эта тема была удалена. Только пользователи с правом управления темами могут её видеть.
    • MasterGHM Не в сети
      MasterGH Администраторы
      отредактировано MasterGH

      Иногда Lua-код слишком медленный, а на asm писать слишком много, тогда на помощь придет CCODE

      C inline вставки позволяют писать C-код вместо ассемблера
      Справочник по C-коду можно найти в Интернете.

      Примерчик будет:

      {$CCODE base=EBX}
         int* myHealth=base+0x4B0;
         *myHealth = 999;
      {$asm}
      
      [ENABLE]
      aobscanmodule(INJECT_test,Tutorial-i386.exe,29 83 B0 04 00 00) 
      alloc(newmem,$1000)
      label(code)
      label(return)
      
      newmem:
      {$CCODE base=EBX}
         int* myHealth=base+0x4B0;
         *myHealth = 999;
      {$asm}
      
      code:
        //sub [ebx+000004B0],eax
        jmp return
      
      INJECT_test:
        jmp newmem
        nop
      return:
      registersymbol(INJECT_test)
      
      [DISABLE]
      INJECT_test:
        db 29 83 B0 04 00 00
      
      unregistersymbol(INJECT_test)
      dealloc(newmem)
      
      {
      // ORIGINAL CODE - INJECTION POINT: Tutorial-i386.exe+25A6F
      
      Tutorial-i386.exe+25A49: 8D 55 DC           - lea edx,[ebp-24]
      Tutorial-i386.exe+25A4C: 8D 4D F4           - lea ecx,[ebp-0C]
      Tutorial-i386.exe+25A4F: E8 8C 7D FE FF     - call Tutorial-i386.exe+D7E0
      Tutorial-i386.exe+25A54: E8 37 E4 FD FF     - call Tutorial-i386.exe+3E90
      Tutorial-i386.exe+25A59: 50                 - push eax
      Tutorial-i386.exe+25A5A: 85 C0              - test eax,eax
      Tutorial-i386.exe+25A5C: 0F 85 CE 00 00 00  - jne Tutorial-i386.exe+25B30
      Tutorial-i386.exe+25A62: B8 05 00 00 00     - mov eax,00000005
      Tutorial-i386.exe+25A67: E8 C4 93 FE FF     - call Tutorial-i386.exe+EE30
      Tutorial-i386.exe+25A6C: 83 C0 01           - add eax,01
      // ---------- INJECTING HERE ----------
      Tutorial-i386.exe+25A6F: 29 83 B0 04 00 00  - sub [ebx+000004B0],eax
      // ---------- DONE INJECTING  ----------
      Tutorial-i386.exe+25A75: 8D 45 D4           - lea eax,[ebp-2C]
      Tutorial-i386.exe+25A78: E8 53 DF FD FF     - call Tutorial-i386.exe+39D0
      Tutorial-i386.exe+25A7D: 8B 83 B0 04 00 00  - mov eax,[ebx+000004B0]
      Tutorial-i386.exe+25A83: 68 FF 00 00 00     - push 000000FF
      Tutorial-i386.exe+25A88: 8D 8D D4 FE FF FF  - lea ecx,[ebp-0000012C]
      Tutorial-i386.exe+25A8E: BA FF FF FF FF     - mov edx,FFFFFFFF
      Tutorial-i386.exe+25A93: E8 68 F2 FD FF     - call Tutorial-i386.exe+4D00
      Tutorial-i386.exe+25A98: 8D 4D D4           - lea ecx,[ebp-2C]
      Tutorial-i386.exe+25A9B: 66 31 D2           - xor dx,dx
      Tutorial-i386.exe+25A9E: 8D 85 D4 FE FF FF  - lea eax,[ebp-0000012C]
      }
      
      1 ответ Последний ответ Ответить Цитировать 0
      • PitronicP Не в сети
        Pitronic Супер модераторы
        отредактировано

        CCODE это какой яп?

        1 ответ Последний ответ Ответить Цитировать 0
        • PitronicP Не в сети
          Pitronic Супер модераторы
          отредактировано

          А понял, извени за тупость это си

          1 ответ Последний ответ Ответить Цитировать 0
          • MasterGHM Не в сети
            MasterGH Администраторы
            отредактировано

            Это C - язык программирования.

            1 ответ Последний ответ Ответить Цитировать 0

            • 1 / 1
            • Первое сообщение
              Последнее сообщение
            Powered by NodeBB | Contributors
            СeLua[RU] 2025©