На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Перед отправкой сообщения внимательно прочтите правила раздела!!!
1. Запрещается обсуждать написание вирусов, троянов и других вредоносных программ!
2. Помните, что у нас есть FAQ раздела Assembler и Полезные ссылки. Посмотрите, возможно, там уже имеется решение вашего вопроса.

3. Настоятельно рекомендуем обратить особое внимание на правила форума, которые нарушаются чаще всего:
  3.1. Заголовок темы должен кратко отражать её суть. Темы с заголовками типа "Срочно помогите!" или "Ассемблер" будут отправляться в Корзину для мусора.
  3.2. Исходники программ обязательно выделяйте тегами [code]...[/code] (одиночные инструкции можно не выделять).
  3.3. Нежелательно поднимать старые темы (не обновлявшиеся более года) без веской на то причины.

Не забывайте также про главные Правила форума!

Добро пожаловать и приятного вам общения!!! ;)
 
Модераторы: Jin X, Qraizer
Страницы: (2) 1 [2]  все  ( Перейти к последнему сообщению )  
> Как найти базовый адрес User32.dll? , и других как Kernel32,advapi.dll,SetupApi.dll
    Демо Технический можно.
      Цитата Arazel @
      Демо Технический можно.


      Да? И как?

      Добавлено
      Спустись на землю и выпусти воздух.
        M

        Демо,Arazel, вы отдалились от темы.

          ProgramMan Согласись если захотеть можно все!
          а со своими вопросами я разобрался ;)
            находим адрес кернела
            ExpandedWrap disabled
              .486p
              .model flat
               
              extrn ExitProcess:proc
               
              .data
               
              vrs:
                mov ebx,[esp]    ;возьмем из стека адрес Kernel`а
                xor bx,bx        ;и найдем его начало
               
              next_block:
                cmp word ptr [ebx],'ZM'  ;начало?
                je  found_MZ             ; угу!
                sub ebx,1000h            ; ищем дальше
                jmp next_block
               
              found_MZ:
                mov  edx,ebx                ;сохраним указатель
                mov edi,dword ptr [ebx+3Ch] ;адрес РЕ заголовка
                add edi,edx                 ;+ адрес Kernel`а
                cmp word ptr [edi],'EP'     ;проверка на РЕ
                jmp Exit                    ;не равно-выходим
                mov 4 ptr [KrnAddr],edx     ;сохраним базовый адрес Kernel`а
               
              Exit:
                jmp fin
                KrnAddr dd 0
               
              .code
              start:
                jmp vrs
               
              fin:
                push 0
               
                call ExitProcess
              end start
            0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
            0 пользователей:


            Рейтинг@Mail.ru
            [ Script execution time: 0.0723 ]   [ 15 queries used ]   [ Generated: 20.09.26, 15:52 GMT ]