Import Table в Visual Basic

Тема в разделе "WASM.RESEARCH", создана пользователем Robix, 24 апр 2010.

  1. Robix

    Robix New Member

    Публикаций:
    0
    Регистрация:
    16 мар 2008
    Сообщения:
    13
    Есть маленькая программка https://sourceforge.net/projects/vpnlifeguard/
    Я ее нашел для того, чтобы просмотреть немного как выглядит код native VB в дисассемблере. Так как распаковываю счас одну прогу. Решил посмотреть для сравнения с c++ Import table и IAT. Почему-то тут в IAT какие-то непонятные адреса, которых вообще нет в исполняемом файле:

    00001000 734777EA ;?
    00001004 73479841 ;?
    00001008 73450344 ;?

    Вообщем когда я сделал ради интереса дамп, и починил его с помощью imprec'а, то с его импортом программа не захотела работать, хтя по идее эти самые адреса в IAT теперь ссылались на имена функций, как и положено. Кстати, сама Import Table даже у исходного файла немного отличается в начале. Вот интересно, как это работает ? Файл ничем не запакован. Мож для бейсика есть еще проги для восстановления импорта, никто не вкурсе ? какя-то особая структура ?
     
  2. r0064

    r0064 New Member

    Публикаций:
    0
    Регистрация:
    24 апр 2010
    Сообщения:
    2
    А вы Bound Import обнулили после дампинга и прикручиванивания нового импорта?
     
  3. Robix

    Robix New Member

    Публикаций:
    0
    Регистрация:
    16 мар 2008
    Сообщения:
    13
    Спасибо за ответ. Подскажите что это такое, по каким адресам лежит и как его обнулять.
     
  4. r0064

    r0064 New Member

    Публикаций:
    0
    Регистрация:
    24 апр 2010
    Сообщения:
    2
    Воспользуйтесь каким-либо софтом для просмотра PE. Например, cff explorer. Так, в Data Directories обнулите RVA и размер Bound Import Directory