Посл.ответ
Сообщение
Ранг: 16.3 (новичок), 2thxАктивность: 0.15↗ 0.22 Статус: Участник
Создано: 18 февраля 2017 17:14 · Личное сообщение · #1
Я знаю, что данное значение игнорируется загрузчиком, и считают его все по разному. Но хотелось бы узнать пару основных возможных вариантов. Например я удлинил в файле размер секции и что то туда дописал. Как мне посчитать новое значение SizeOfInitializedData?
| Сообщение посчитали полезным:
Ранг: 431.7 (мудрец), 390thxАктивность: 0.73↘ 0.32 Статус: Участник
Создано: 18 февраля 2017 17:51 · Поправил: dosprog · Личное сообщение · #2
Адрес начала секции известен, адрес записи тоже.
Вычли и получили.
| Сообщение посчитали полезным:
Ранг: 16.3 (новичок), 2thxАктивность: 0.15↗ 0.22 Статус: Участник
Создано: 18 февраля 2017 18:01 · Поправил: zombi-vadim · Личное сообщение · #3
dosprog Я вас не понял, SizeOfInitializedData хранит суммарный размер всех секций. А если я вообще новую секцию добавил?
| Сообщение посчитали полезным:
Ранг: 2014.5 (!!!!) , 1278thxАктивность: 1.34↘ 0.25 Статус: Модератор retired
Создано: 18 февраля 2017 19:18 · Личное сообщение · #4
Не всех секций, а где стоит флаг Initialized Data. Возьми да пересчитай.
| Сообщение посчитали полезным:
Ранг: 337.5 (мудрец), 348thxАктивность: 2.11↗ 2.42 Статус: Участник
Создано: 18 февраля 2017 20:33 · Личное сообщение · #5
Загрузчик не использует, но все свободные поля нужно корректно заполнять, так как ав может на них строить детекты.
----- vx | Сообщение посчитали полезным:
Ранг: 158.4 (ветеран), 123thxАктивность: 0.14↗ 0.49 Статус: Участник
Создано: 18 февраля 2017 22:25 · Личное сообщение · #6
difexacaw пишет: но все свободные поля нужно корректно заполнять А что значит
корректно ? Даже если у секции стоит флаг initialized data, нигде не указано, где собственно эти инициализированные данные и какой у них размер.
| Сообщение посчитали полезным:
Ранг: 16.3 (новичок), 2thxАктивность: 0.15↗ 0.22 Статус: Участник
Создано: 18 февраля 2017 23:13 · Личное сообщение · #7
Все пишут все что им вздумается, но не слова как все таки получить это значение.
Всякий линкер заполняет эти поля по-своему: одни берут физический размер секций на диске, другие – виртуальный размер в памяти, выровненный по границе Section Alignment , вот вычитал.
| Сообщение посчитали полезным:
Ранг: 158.4 (ветеран), 123thxАктивность: 0.14↗ 0.49 Статус: Участник
Создано: 18 февраля 2017 23:22 · Личное сообщение · #8
zombi-vadim пишет: но не слова как все таки получить это значение Это диаметр сферического коня в попугаях. Заполняй эти поля в соответствии с линкером, который собирал твою ехешку, иначе аверы будут генерик детекты выдавать. Остальным же вообще посрать на эти размеры.
| Сообщение посчитали полезным: sefkrd
Ранг: 6.2 (гость), 10thxАктивность: 0.02↘ 0 Статус: Участник
Создано: 18 февраля 2017 23:36 · Личное сообщение · #9
rmn пишет: Остальным же вообще посрать на эти размеры. Ну для пакеров, например, не посрать, для отладчиков тож.
| Сообщение посчитали полезным:
Ранг: 16.3 (новичок), 2thxАктивность: 0.15↗ 0.22 Статус: Участник
Создано: 18 февраля 2017 23:42 · Личное сообщение · #10
rmn Как я могу заполнить это поле в соответствии с линкером, если я изменил размер секции, значение будет не правильным!!
| Сообщение посчитали полезным:
Ранг: 6.2 (гость), 10thxАктивность: 0.02↘ 0 Статус: Участник
Создано: 18 февраля 2017 23:55 · Поправил: __X3__ · Личное сообщение · #11
zombi-vadim Верни взад размер секции.
ps. А файлик секретный, или можно глянуть?
| Сообщение посчитали полезным:
Ранг: 16.3 (новичок), 2thxАктивность: 0.15↗ 0.22 Статус: Участник
Создано: 19 февраля 2017 00:02 · Личное сообщение · #12
__X3__ Файлик пустой. Я не пишу вирус, я изучаю формат РЕ.
| Сообщение посчитали полезным:
Ранг: 431.7 (мудрец), 390thxАктивность: 0.73↘ 0.32 Статус: Участник
Создано: 19 февраля 2017 00:06 · Поправил: dosprog · Личное сообщение · #13
zombi-vadim пишет: Все пишут все что им вздумается, но не слова как все таки получить это значение. Обнули его и не парься.
| Сообщение посчитали полезным:
Ранг: 16.3 (новичок), 2thxАктивность: 0.15↗ 0.22 Статус: Участник
Создано: 19 февраля 2017 01:04 · Личное сообщение · #14
dosprog Да штож такое то! Я хочу парится, я хочу узнать как рассчитать значение!!
| Сообщение посчитали полезным:
Ранг: 337.5 (мудрец), 348thxАктивность: 2.11↗ 2.42 Статус: Участник
Создано: 19 февраля 2017 01:06 · Личное сообщение · #15
zombi-vadim > Как я могу заполнить это поле в соответствии с линкером
Чем вы там поритесь. Вам в системе к примеру мало файлов
Почитайте матчасть
--> Link <-- и начните думать.
----- vx | Сообщение посчитали полезным:
Ранг: 622.6 (! ), 521thxАктивность: 0.33↗ 0.89 Статус: Участник _Вечный_Студент_
Создано: 19 февраля 2017 01:41 · Личное сообщение · #16
Вроде как-то так:
"If the section is marked to contain initialized data add either the virtual size rounded to the nearest file alignment multiple or the raw data size which ever is greater and the total should add up to the amount in the initialized data section."
----- Give me a HANDLE and I will move the Earth. | Сообщение посчитали полезным: