Изменил сигнатуру точки входа на сишную: #include <stddef.h> extern void write(const void *, size_t); int main(int argc, char **argv) {...
Изучая системные вызовы, решил написать свою обертку для вызова write на Си. Получился вот такой код: write.c #include <stddef.h> void...
Хорошие исходники. Нашел все, что мне нужно.
Хочу попробовать обойти эмуляцию, отыскивая в стеке то, что функция не убрала за собой, потому что заглушки на API просто имитируют поведение...
В винде есть функции, которые не чистят за собой стек полностью и оставляют в нем некоторые данные. Можете привести пример таких функций? По...
111111_2 = 63_{10} - последнее 6-битное число. Стыдно на васме путаться в битах.
Так вычисления по модулю 2^{12} - 5 же.
Откуда качать сорусы?
Я собираю свой упаковщик студией 2015 и хочу, чтобы базовый адрес загрузчика был повыше: например, 0x02000000. Для этого в поле Base Address в...
void int32_pow(big* r, const big* base, int exp) { big tmp; make_big(&tmp, 1, 0, 0); while (exp--) { int32_mul(&tmp, &tmp,...
Я пишу библиотеку 256-битной арифметики для реализации эллиптической криптографии на микроконтроллерах. Вычисления должны проводиться в конечном...
Что копировать, откуда и куда? Непонятно. >Третье поле AddressOfIndex - это адрес, куда загрузчик запишет индекс блока данных потока Какого блока...
Может, в моей функции обработки релоков чего-то не хватает? void LoadPE_PerformRelocation(const LoadPE_CONTEXT* ctx) { DWORD Delta =...
И эти адреса не патчатся при обработке релоков?
Нет, не смотрел. Пытаюсь разобраться по статьям, но не получается. Все, что у меня пока получилось - это вызвать коллбэки до старта программы, но...
Возникли проблемы с обработкой TLS загружаемого образа. Перед обработкой TLS я проделал такие шаги: 1) Загрузил дисковый PE-образ в память 2)...
Я разбираюсь в написании своих скриптов для линкера и составлении карты памяти для микроконтроллеров ARM. Есть несколько вещей, которые я не...
Имена участников (разделяйте запятой).