Dll downloader
Содержание:
- Как исправить api-ms-win-downlevel-kernel32-l2-1-0.dll missing error?
- Способ 1: скачать api-ms-win-downlevel-kernel32-l2-1-0.dll
- Загрузка и предупреждения безопасности
- метод 2: Скачать kernel32.dll и установить вручную
- Как исправить ошибки kernel32.dll всего за несколько шагов?
- Решения
- Как исправить ошибки Kernel32.dll
- Таблица импорта
Как исправить api-ms-win-downlevel-kernel32-l2-1-0.dll missing error?
Если «api-ms-win-downlevel-kernel32-l2-1-0.dll отсутствует» не удалось, используйте один из правильных методов для решения проблемы: ручной или автоматический. В первом случае вам необходимо скачать файл api-ms-win-downlevel-kernel32-l2-1-0.dll и отправить его в папку установки игры / приложения. Во втором случае система автоматически исправляет ошибку с минимальными усилиями.
Мы предлагаем несколько эффективных методов:
Способ 1: скачать api-ms-win-downlevel-kernel32-l2-1-0.dll
Диспетчер загрузки отслеживает изображения, документы и другие файлы, загруженные из Интернета. Загруженные api-ms-win-downlevel-kernel32-l2-1-0.dll автоматически сохраняются в папке «Загрузки». Эта папка обычно находится на диске, на котором установлена Windows (например, C: \ Users \ username \ Downloads). Загруженные файлы можно перемещать из папки «Загрузки» в другие папки на компьютере.
В зависимости от типа загружаемого файла доступны следующие параметры:
- Откройте файл для просмотра, но не сохраняйте его на компьютере.
- Сохраните файл на свой компьютер в стандартной папке загрузки. После того как система проверит безопасность и завершит загрузку файла, вы можете открыть файл, открыть папку, в которой он был сохранен, или просмотреть файл в диспетчере загрузки.
- Сохраните под другим именем, с другим типом или в другой папке на компьютере.
-
Запустите приложение, расширение или файл другого типа. После того как система выполнит проверку безопасности, файл откроется и запустится на компьютере.
- Отмените загрузку и вернитесь к просмотру веб-страниц.
Вы также можете сохранять файлы меньшего размера, например отдельные изображения, на своем компьютере. Для этого щелкните правой кнопкой мыши изображение, ссылку или файл и выберите «Сохранить изображение» или «Сохранить объект как».
api-ms-win-downlevel-kernel32-l2-1-0.dll , 1 доступных версий
Bits & Version | File size | Language | Description | Checksums | ||
---|---|---|---|---|---|---|
32bit 6.3.9600.16384 |
5.5 KB | U.S. English | ApiSet Stub DLL |
MD5 MD5 SHA1 SHA1 |
Download |
Загрузка и предупреждения безопасности
Во время загрузки api-ms-win-downlevel-kernel32-l2-1-0.dll система проверяет наличие ряда признаков того, что файл не представляет угрозы для компьютера. Если система считает файл подозрительным, вы получите уведомление и сможете решить, сохранить ли файл, запустить его или открыть
Не все api-ms-win-downlevel-kernel32-l2-1-0.dll, для которых отображается предупреждение, на самом деле опасны, но важно загружать только действительно необходимые файлы и только с надежных сайтов
Предупреждение безопасности «Не удалось проверить достоверность издателя этой программы» означает, что
Система не знает сайт или организацию, которая предлагает вам скачать файл. Перед сохранением или открытием такого файла убедитесь, что его издателю можно доверять
Внимание! Скачивание api-ms-win-downlevel-kernel32-l2-1-0.dll из Интернета всегда рискованно
Вот некоторые меры предосторожности, которые вы можете предпринять, чтобы защитить свой компьютер при загрузке файлов:
- Установите и используйте антивирусную программу.
- Скачать api-ms-win-downlevel-kernel32-l2-1-0.dll только с доверенных сайтов
- Если api-ms-win-downlevel-kernel32-l2-1-0.dll имеет цифровую подпись, убедитесь, что он действителен и файл получен из надежного источника. Чтобы просмотреть цифровую подпись, щелкните ссылку издателя в диалоговом окне с предупреждением о безопасности, которое появляется при первой загрузке файла.
метод 2: Скачать kernel32.dll и установить вручную
Для этого метода скачайте kernel32.dll по нашей ссылке и используйте командную строку, чтобы зарегистрировать отсутствующую kernel32.dll:
- Одновременно нажмите клавиши Windows и R на клавиатуре — появится окно Run — введите cmd — нажмите Ctrl+Shift+Enter — перед вами появится командная строка с правами администратора.
- Когда появится запрос, необходимо разрешить командной строке вносить изменения, поэтому нажмите Yes.
- Теперь удалите файл реестра (введите или скопируйте команду regsvr32 /u kernel32.dll, а затем нажмите Enter).
- Теперь зарегистрируйте файл: введите команду regsvr32 kernel32.dll и нажмите Enter.
- Закрыть командную строку и запустить приложение.
KERNEL32.DLL ВЕРСИИ
дата выпуска: February 28, 2021
Версия / биты | Язык | Размер | MD5 / SHA-1 | |
---|---|---|---|---|
6.3.9600.17056 32bit | U.S. English | 0.99 MB |
MD5 SHA1 |
дата выпуска: February 28, 2021
Версия / биты | Язык | Размер | MD5 / SHA-1 | |
---|---|---|---|---|
6.2.9200.16859 32bit | U.S. English | 0.96 MB |
MD5 SHA1 |
дата выпуска: February 28, 2021
Версия / биты | Язык | Размер | MD5 / SHA-1 | |
---|---|---|---|---|
6.1.7601.18229 32bit | U.S. English | 0.83 MB |
MD5 SHA1 |
дата выпуска: February 28, 2021
Версия / биты | Язык | Размер | MD5 / SHA-1 | |
---|---|---|---|---|
6.1.7601.17651 32bit | U.S. English | 1.06 MB |
MD5 SHA1 |
дата выпуска: February 28, 2021
Версия / биты | Язык | Размер | MD5 / SHA-1 | |
---|---|---|---|---|
6.0.6001.18631 64bit | U.S. English | 1.15 MB |
MD5 SHA1 |
дата выпуска: February 28, 2021
Версия / биты | Язык | Размер | MD5 / SHA-1 | |
---|---|---|---|---|
6.0.6001.18631 32bit | U.S. English | 0.82 MB |
MD5 SHA1 |
дата выпуска: February 28, 2021
Версия / биты | Язык | Размер | MD5 / SHA-1 | |
---|---|---|---|---|
5.1.2600.5781 32bit | Spanish | 0.99 MB |
MD5 SHA1 |
дата выпуска: February 28, 2021
Версия / биты | Язык | Размер | MD5 / SHA-1 | |
---|---|---|---|---|
5.1.2600.5781 32bit | Polish | 0.97 MB |
MD5 SHA1 |
дата выпуска: February 28, 2021
Версия / биты | Язык | Размер | MD5 / SHA-1 | |
---|---|---|---|---|
5.1.2600.5512 32bit | Swedish | 0.96 MB |
MD5 SHA1 |
дата выпуска: February 28, 2021
Версия / биты | Язык | Размер | MD5 / SHA-1 | |
---|---|---|---|---|
5.1.2600.2180 32bit | U.S. English | 0.94 MB |
MD5 SHA1 |
дата выпуска: February 28, 2021
Версия / биты | Язык | Размер | MD5 / SHA-1 | |
---|---|---|---|---|
5.1.2600.2180 32bit | Swedish | 0.95 MB |
MD5 SHA1 |
дата выпуска: February 28, 2021
Версия / биты | Язык | Размер | MD5 / SHA-1 | |
---|---|---|---|---|
5.1.2600.1106 32bit | U.S. English | 0.89 MB |
MD5 SHA1 |
дата выпуска: February 28, 2021
Версия / биты | Язык | Размер | MD5 / SHA-1 | |
---|---|---|---|---|
5.1.2600.1106 32bit | Polish | 0.91 MB |
MD5 SHA1 |
дата выпуска: February 28, 2021
Версия / биты | Язык | Размер | MD5 / SHA-1 | |
---|---|---|---|---|
5.1.2600.0 32bit | Swedish | 0.9 MB |
MD5 SHA1 |
дата выпуска: February 28, 2021
Версия / биты | Язык | Размер | MD5 / SHA-1 | |
---|---|---|---|---|
4.10.0.2222 32bit | Swedish | 0.45 MB |
MD5 SHA1 |
дата выпуска: February 28, 2021
Версия / биты | Язык | Размер | MD5 / SHA-1 | |
---|---|---|---|---|
10.0.19041.292 64bit | U.S. English | 0.73 MB |
MD5 SHA1 |
дата выпуска: February 28, 2021
Версия / биты | Язык | Размер | MD5 / SHA-1 | |
---|---|---|---|---|
10.0.18362.86 64bit | U.S. English | 0.69 MB |
MD5 SHA1 |
дата выпуска: February 28, 2021
Версия / биты | Язык | Размер | MD5 / SHA-1 | |
---|---|---|---|---|
10.0.18362.778 64bit | U.S. English | 0.69 MB |
MD5 SHA1 |
дата выпуска: February 28, 2021
Версия / биты | Язык | Размер | MD5 / SHA-1 | |
---|---|---|---|---|
10.0.18362.329 64bit | U.S. English | 0.69 MB |
MD5 SHA1 |
дата выпуска: February 28, 2021
Версия / биты | Язык | Размер | MD5 / SHA-1 | |
---|---|---|---|---|
10.0.18362.329 32bit | U.S. English | 0.6 MB |
MD5 SHA1 |
дата выпуска: February 28, 2021
Версия / биты | Язык | Размер | MD5 / SHA-1 | |
---|---|---|---|---|
10.0.17763.1 64bit | U.S. English | 0.69 MB |
MD5 SHA1 |
дата выпуска: February 28, 2021
Версия / биты | Язык | Размер | MD5 / SHA-1 | |
---|---|---|---|---|
10.0.17134.1 64bit | U.S. English | 0.69 MB |
MD5 SHA1 |
дата выпуска: February 28, 2021
Версия / биты | Язык | Размер | MD5 / SHA-1 | |
---|---|---|---|---|
10.0.15063.296 64bit | U.S. English | 0.68 MB |
MD5 SHA1 |
дата выпуска: February 28, 2021
Версия / биты | Язык | Размер | MD5 / SHA-1 | |
---|---|---|---|---|
10.0.14393.0 64bit | U.S. English | 0.67 MB |
MD5 SHA1 |
дата выпуска: February 28, 2021
Версия / биты | Язык | Размер | MD5 / SHA-1 | |
---|---|---|---|---|
10.0.14393.0 32bit | U.S. English | 0.59 MB |
MD5 SHA1 |
дата выпуска: February 28, 2021
Версия / биты | Язык | Размер | MD5 / SHA-1 | |
---|---|---|---|---|
10.0.10586.0 64bit | U.S. English | 0.67 MB |
MD5 SHA1 |
дата выпуска: February 28, 2021
Версия / биты | Язык | Размер | MD5 / SHA-1 | |
---|---|---|---|---|
10.0.10586.0 32bit | U.S. English | 0.59 MB |
MD5 SHA1 |
Какая версия kernel32.dll правильная?
Посмотрите на описания в таблице, где можно выбрать нужный файл. Существуют версии для 64-битной или 32-битной Windows и используемые в них языки. Выберите те dll-файлы, язык которых идентичен языку самой программы. Загрузите последние версии dll-файлов для своей программы.
Where should you place kernel32.dll?
Ошибка «kernel32.dll пропущена» будет исправлена, если переместить файл в папку установки приложения или игры. Также можно переместить kernel32.dll в системный каталог Windows.
Если этот метод не помогает, используйте следующий.
Как исправить ошибки kernel32.dll всего за несколько шагов?
Помните, прежде чем предпринимать какие-либо действия, связанные с системными файлами, сделайте резервную копию ваших данных!
Ошибки файла kernel32.dll могут быть вызваны различными причинами, поэтому полезно попытаться исправить их различными способами.
Шаг 1.. Сканирование компьютера на наличие вредоносных программ.
Файлы Windows обычно подвергаются атаке со стороны вредоносного программного обеспечения, которое не позволяет им работать должным образом. Первым шагом в решении проблем с файлом kernel32.dll или любыми другими системными файлами Windows должно быть сканирование системы на наличие вредоносных программ с использованием антивирусного инструмента.
Если по какой-либо причине в вашей системе еще не установлено антивирусное программное обеспечение, вы должны сделать это немедленно
Незащищенная система не только является источником ошибок в файлах, но, что более важно, делает вашу систему уязвимой для многих опасностей. Если вы не знаете, какой антивирусный инструмент выбрать, обратитесь к этой статье Википедии — сравнение антивирусного программного обеспечения
Шаг 2.. Обновите систему и драйверы.
Установка соответствующих исправлений и обновлений Microsoft Windows может решить ваши проблемы, связанные с файлом kernel32.dll. Используйте специальный инструмент Windows для выполнения обновления.
- Откройте меню «Пуск» в Windows.
- Введите «Центр обновления Windows» в поле поиска.
- Выберите подходящую программу (название может отличаться в зависимости от версии вашей системы)
- Проверьте, обновлена ли ваша система. Если в списке есть непримененные обновления, немедленно установите их.
- После завершения обновления перезагрузите компьютер, чтобы завершить процесс.
Помимо обновления системы рекомендуется установить последние версии драйверов устройств, так как драйверы могут влиять на правильную работу kernel32.dll или других системных файлов. Для этого перейдите на веб-сайт производителя вашего компьютера или устройства, где вы найдете информацию о последних обновлениях драйверов.
Шаг 3.. Используйте средство проверки системных файлов (SFC).
Проверка системных файлов — это инструмент Microsoft Windows. Как следует из названия, инструмент используется для идентификации и адресации ошибок, связанных с системным файлом, в том числе связанных с файлом kernel32.dll. После обнаружения ошибки, связанной с файлом %fileextension%, программа пытается автоматически заменить файл kernel32.dll на исправно работающую версию. Чтобы использовать инструмент:
- Откройте меню «Пуск» в Windows.
- Введите «cmd» в поле поиска
- Найдите результат «Командная строка» — пока не запускайте его:
- Нажмите правую кнопку мыши и выберите «Запуск от имени администратора»
- Введите «sfc / scannow» в командной строке, чтобы запустить программу, и следуйте инструкциям.
Шаг 4. Восстановление системы Windows.
Другой подход заключается в восстановлении системы до предыдущего состояния до того, как произошла ошибка файла kernel32.dll. Чтобы восстановить вашу систему, следуйте инструкциям ниже
- Откройте меню «Пуск» в Windows.
- Введите «Восстановление системы» в поле поиска.
- Запустите средство восстановления системы — его имя может отличаться в зависимости от версии системы.
- Приложение проведет вас через весь процесс — внимательно прочитайте сообщения
- После завершения процесса перезагрузите компьютер.
Если все вышеупомянутые методы завершились неудачно и проблема с файлом kernel32.dll не была решена, перейдите к следующему шагу. Помните, что следующие шаги предназначены только для опытных пользователей
Решения
Итак, для большего удобства и максимального КПД применяйте нижеописанные рекомендации именно в том порядке, в котором они будут описаны ниже. Также будет уместно именно сейчас предупредить о том, что следует несколько раз подумать, прежде чем пытаться найти данный файл в интернете и просто скачать его, и вот несколько причин почему:
- Как уже было сказано выше, этим компонентом системы крайне интересуются различные вирусы, выдавая свои инструменты за «kernel32.dll». Поэтому больше чем в половине сайтов вам будет предложено скачать если и корректный файлик, то с «интересной» начинкой.
- Остальная часть предлагаемого для скачивания файлового ассортимента представляет собой обычные пустышки, от которых пользы не будет, но и вреда не предвидится.
- Кроме того, суть проблемы может оказаться не только в самом рассматриваемом файле.
Возвращаясь к способам решения. Выглядят они следующим образом:
- Первый и наиболее логичный вариант – это банальная перезагрузка компьютера, так как сбой в его работе, который и привёл к проблемам, может носить разовый и случайный характер.
- Рассматриваемая ошибка не возникает на пустом месте (обычно!). Следовательно, какое-либо программное обеспечение попыталось обратиться к ресурсам «kernel32.dll», но не получила нужного отклика/ответа. Поэтому попробуйте переустановить программу/приложение или игру. Если это какой-либо репак/сборка, то попробуйте скачать её с другого источника.
Кроме того, если программное обеспечение ранее работало стабильно, то следует обратить своё пристальное внимание и на обновления, которым оно подвергалось
- Проведите полное комплексное сканирование операционной системы на наличие вирусной активности. В качестве антивирусных средств примените, например, «Malwarebytes AdwCleaner», «Dr.Web CureIt» или схожий инструмент от «Лаборатории Касперского».
- Проверьте актуальность всех установленных версий драйверов программного обеспечения. Следует также применить комплексный подход, воспользовавшись не только специализированными средствами, типа «DriverPack Solutions», но и ручным поиском по официальным ресурсам разработчиков ваших компонентов компьютера.
Уделите внимание и периферийным устройствам. Например, вы используете какое-либо программное обеспечение, которому требуется подключение к веб-камере
В работе драйвера этой самой веб-камеры имеются проблемы, которые в последствии и вызывают подобную неприятную ситуацию.
- Проведите сканирование операционной системы на целостность компонентов и файлов, а также просканируйте на наличие битых секторов жёсткий диск, для этого можно использовать следующие команды:
- «sfc/scannow» – проверка целостности.
- «CHKDSK» – проверка жёсткого диска.
- «dism /Online /Cleanup-Image /CheckHealth» – необходимо для получения сведений относительно наличия повреждений компонентов Windows.
- «dism /Online /Cleanup-Image /ScanHealth» – осуществляет проверку хранилища на корректность и целостность.
- «dism /Online /Cleanup-Image /RestoreHealth» – осуществляет и выявление неполадок, и их автоматическое исправление.
Также будет не лишним обратиться к ресурсам стороннего диагностического ПО и проверить корректность работы оперативной памяти, например, давно и с лучшей стороны себя зарекомендовала программа «memtest86+».
В качестве альтернативного варианта можно воспользоваться и штатными диагностирующими утилитами, для этого:
- Нажмите сочетание клавиш «WIN+S» и введите «Средство проверки памяти Windows».
- Откройте найденный вариант и выберите одно из предложенных решений. Первое подразумевает осуществление перезагрузки, после чего и начнётся проверка ОЗУ, второе предлагает отложить проверку до следующего старта операционной системы.
Стоит понимать, что данные тесты могут заниматься продолжительное время (1 час, 2, 3 и 4 часа), всё зависит от вашей оперативной памяти и качества её работы. Поэтому подгадайте время тестирования так, чтобы гарантировать его беспрерывность.
Как исправить ошибки Kernel32.dll
- Перезагрузите компьютер. Если ошибка kernel32.dll появилась случайно.
- Переустановите программу, если ошибка при «обращении к странице памяти в модуле kernel32.dll» возникает только при использовании определенной программы, например при включении Skype.
- Обязательно установите все пакеты обновлений или другие патчи доступны для программы. Один из них возможно исправит поврежденную част программы, что решит проблему с ошибкой. В крайнем случаи придется прекратить использовать программу, если только она продолжает вызывать kernel32.dll ошибку.
- Ремонт поврежденных файлов thumbs.db Часто ошибка по типу: «Проводник вызвал сбой при обращении к памяти в модуле Kernel32.DLL» вызвана поврежденным thumbs.dll в директории или папке, к которой вы пытаетесь получить доступ.
- У вас есть dll файлы, сохраненные на рабочем столе? Если это так, удалите их. Это иногда может привести к ошибки kernel32.dll.
Дополнительные методы исправления ошибки Карнел32
Ошибка Karnel часто связана с проблемой Msvcr100.Dll, об этой ошибке читайте подробно «ТУТ»
- Запустить проверку на вирусы. Некоторые специфические компьютерные вирусы вызывают kernel32.dll ошибки.
Помещения этих вирусов на карантин может полностью решить проблему.
Обновление драйверов для любого оборудования, которое может быть связано с ошибкой kernel32.dll.
Например, если kernel32.dll ошибка появляется при печати на принтер, попробуйте обновить драйвера для вашего принтера.
Если вы подозреваете, что проблема в драйверах, но не знаете с чего начать, обновите драйвера на видеокарту.
Устаревшие версии драйверов видеокарты иногда вызывают kernel32.dll ошибки.
Уменьшить аппаратное ускорение на вашей видеокарте.
Это бывает редко, но все же, в некоторых компьютерах возникают проблемы, когда аппаратное ускорение устанавливается на максимум по умолчанию.
Вы изменяли настройки процессора? Если да, попробуйте сбросить настройки конфигурации оборудования по умолчанию, рекомендованные производителем.
Их изменение, как известно, вызывают проблемы с kernel32.dll.
Проверьте системную память на наличие повреждений.
Сообщения об ошибках Kernel32.dll от случайных программ и действий в Windows может быть признаком сбоя в работе оборудования с памятью компьютера.
Замените память в случае сбоя какого-либо из тестов.
Произведите восстановление Windows.
Если повторная установка отдельных программных и проведение аппаратных тестов не решило проблемы, установка Windows в режиме восстановления заменит любые поврежденные или отсутствующие файлы, которые могут быть причиной возникновения ошибки kernel32.dll.
Выполните чистую установку Windows. Этот тип установки полностью сотрет Windows с компьютера и установить его с нуля. Как создать загрузочную флешку Windows можете прочитать в этой статье.
Так же, если проблема в программном обеспечении, то использование его же после чистой установки Windows возобновит ошибки kernel32.
Наконец, если все остальное не помогает, включая чистую установку как в последнем шаге, скорее всего вам нужно обратить внимание на аппаратные проблемы с жестким диском или другой частью оборудования. Замените оборудование, а затем выполнить чистую установку Windows
Замените оборудование, а затем выполнить чистую установку Windows.
Данные решения проблем «сообщения об ошибках kernel32.dll» можно применять в любых операционных систем Microsoft от Windows 95 до Windows 8, Windows 7, Windows Vista, и Windows ХР.
Kernel32.dll — это 32-битная библиотека динамических ссылок, разработанная для операционных систем Windows XP (32-битная и 64-битная), Vista и Windows 10, 8.1, 8, 7.
Его основная задача — управление системной памятью, операциями ввода / вывода.
Данный файл — неотъемлема часть операционной системы, который не может быть удален.
Таблица импорта
Этот
способ отличается от приведенных выше. При загрузке PE-файла в память
загрузчик заполняет адреса соответствующих функций из соответствующих DLL, которые нужны
программе. Т.е. эти адреса хранятся внутри PE-файла, когда он загружен. Нам необходимо
получить адрес любой функции из kernel32.dll
В
таблице импорта есть два массива адресов. Один не изменяется. В нем содержаться
сразу адреса импортируемых функций. Это применимо, в частности, для системных DLL. Второй массив
заполняется при загрузке PE-файла. Чтобы найти базу kernel32.dllнадо найти таблицу импорта. В таблице импорта найти второй массив
адресов. Массивы называются IMAGE_THUNK_DATA
и описаны в WINNT.H. Первый
массив называется OriginalFirstFunk, второй FirstThunk. Точнее так называются указатели на них, определенные в WINNT.H. Вам надо хорошо
разбираться в импорте PE-файлов, чтобы понять это. Сначала мы должны найти начало зараженного
файла. Потом переходим к PEзаголовку. Далее проходим до IMAGE_DATA_DIRECTORY. Переходим к элементу с индексом 1. Элемент с индексом 1 соответствует
таблице импорта PE-файла. Сохраняем RVAи складываем его с базой нашего EXE. По найденному адресу находятся структуры IMAGE_IMPORT_DESCRIPTOR. В этой
структуре есть элемент – указатель на имя импортируемой DLL. Проверяем не kernel32.dllли это, если нет, то
идет к следующей структуре IMAGE_IMPORT_DESCRIPTOR. Если это kernel32.dll, то идем по указателю FirstThunk. Он указывает на таблицу адресов импорта или по-другому IMAGE_THUNK_DATA. Эта таблица
переписывается загрузчиком PE-файла при загрузке. Вы можете подумать, что можно из таблицы импорта
сразу взять адрес функции GetProcAddress. Но не факт что она будет там, так как сам EXE-файл может не
импортировать функцию. Вот код который выуживает адрес одной из функций
библиотеки kernel32.dll:
Код (Text):
- ;#########################################################################
- ;Процедура GetKernelImport
- ;Поиск адреса внутри kernel32.dll
- ;Вход: ничего
- ;Выход:В eax — адрес внутри kernel32.dll
- ;#########################################################################
- GetKernelImport proc
- push esi
- push ebx
- push edi
- call x
- x:
- mov esi,dword ptr ;в esi — смещение данной команды
- add esp,4;выравниваем стек
- and esi,0FFFF0000h;используем гранулярность
- y:
- call ValidPE;начало EXE-файла?
- .IF eax==0;если нет, то ищем дальше
- sub esi,010000h
- jmp y
- .ENDIF
- mov ebx,esi;в ebx теперь будем хранить базу
- assume esi:ptr IMAGE_DOS_HEADER
- add esi,.e_lfanew;в esi — заголовок PE
- assume esi:ptr IMAGE_NT_HEADERS
- lea esi,.OptionalHeader;в esi — адрес опционального заголовка
- assume esi:ptr IMAGE_OPTIONAL_HEADER
- lea esi,.DataDirectory;в esi — адрес DataDirectory
- add esi,8;в esi — элемент 1 в DataDirectory
- mov eax,ebx
- add eax,dword ptr ;в eax — смещение таблицы импорта
- mov esi,eax
- assume esi:ptr IMAGE_IMPORT_DESCRIPTOR
- NextDLL:
- mov edi,.Name1
- add edi,ebx
- .IF DWORD PTR ==»NREK»;черт, мы могли бы написать так:
- .IF TBYTE PTR ==»LLD.LENREK», но нас сдерживает формат машинной
- ; команды Intel в которой константа может быть не более 4 байт
- ;нашли запись о kernel32!!!
- mov edi,.FirstThunk
- add edi,ebx;в edi — VA массива IMAGE_THUNK_DATA
- mov eax,dword ptr ;в eax адрес какой-то из функций kernel32.dll
- pop edi
- pop ebx
- pop esi
- ret
- .ENDIF
- add esi,sizeof IMAGE_IMPORT_DESCRIPTOR
- jmp NextDLL
- GetKernelImport endp
- ;#########################################################################
- ;Конец процедуры GetKernelImport
- ;#########################################################################
Здесь были
рассмотрены наиболее популярные и известные способы. Если у Вас есть мысли по
этому поводу, то присылайте их мне на электронную почту, обсудим вместе.