Size: a a a

Ассемблер

2020 June 09

s

s54816 in Ассемблер
Rusty Shackleford
вот код секции импорта
section '.import' import data readable writeable
       library kernel32, 'kernel32.dll', msvcrt, 'msvcrt.dll', wsock,'Ws2_32.dll'

       import wsock,\
              WSAGetLastError, 'WSAGetLastError'

       import kernel32,\
             ExitProcess, 'ExitProcess',\
             CreateFile, 'CreateFileA',\
             CloseHandle, 'CloseHandle',\
             WriteFile, 'WriteFile',\
             ReadFile, 'ReadFile',\
             GetFileSize, 'GetFileSize',\
             HeapAlloc, 'HeapAlloc',\
             GetProcessHeap, 'GetProcessHeap',\
             HeapFree,'HeapFree'

       import msvcrt, printf, 'printf', getchar,'_fgetchar'
А при загрузке файла в IDA случайно не стоит идиотская галочка «create imports segment»? А то ведь IDA в таких делах доверять нельзя, у них традиционно очень кривой лоадер. Посмотри в нормальном PE-вьювере, что у тебя там создаётся.
источник

RS

Rusty Shackleford in Ассемблер
Aiwan ╭∩╮ (òÓ,) ╭∩╮
каковы их имена?
повторюсь - если в коде имя секции .import то в результате в exe 3 секции - две секции с одиноковым именем .import по разным адресам, и одна секция .idata
источник

RS

Rusty Shackleford in Ассемблер
s54816
А при загрузке файла в IDA случайно не стоит идиотская галочка «create imports segment»? А то ведь IDA в таких делах доверять нельзя, у них традиционно очень кривой лоадер. Посмотри в нормальном PE-вьювере, что у тебя там создаётся.
мм стоит )
источник

RS

Rusty Shackleford in Ассемблер
хмм, надо попробывать в дампе руками глянуть, наверное и правда дело в иде )
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮... in Ассемблер
для таких случаев лучше отладчик ом пользоваться, а не дищассемблером
источник

RS

Rusty Shackleford in Ассемблер
дело раскрыто )) спасибо гопода, я стал на капельку опытнее благодаря вам )
источник

RS

Rusty Shackleford in Ассемблер
просто это рушило мои знания скромные о фасме, о том, что пофиг на имя секции ) теперь ясно, что дело в иде
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮... in Ассемблер
Rusty Shackleford
просто это рушило мои знания скромные о фасме, о том, что пофиг на имя секции ) теперь ясно, что дело в иде
вообще-то пофиг, и не только для фасма, но и для системы
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮... in Ассемблер
секции идентифицируются не по этому признаку, эт просто название для прогеров
источник

RS

Rusty Shackleford in Ассемблер
Aiwan ╭∩╮ (òÓ,) ╭∩╮
для таких случаев лучше отладчик ом пользоваться, а не дищассемблером
кстати в отладчике с этой опцией тоже разбивает на 3 секции, local windows debugger
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮... in Ассемблер
Rusty Shackleford
кстати в отладчике с этой опцией тоже разбивает на 3 секции, local windows debugger
скинь exe
источник

RS

Rusty Shackleford in Ассемблер
Aiwan ╭∩╮ (òÓ,) ╭∩╮
секции идентифицируются не по этому признаку, эт просто название для прогеров
вот и я про тоже, встретился просто с необъяснимым для себя результатом, а хочется понимать за что отвечает каждый байт в коде но не от балды писать, а тут целых 2 секции непонятно откуда взялись )
источник

RS

Rusty Shackleford in Ассемблер
да там скидывать нечего особо, 3 строки кода + секция импорта которую скинул уже
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮... in Ассемблер
Rusty Shackleford
кстати в отладчике с этой опцией тоже разбивает на 3 секции, local windows debugger
тоже с иды запускаешь?
источник

RS

Rusty Shackleford in Ассемблер
Aiwan ╭∩╮ (òÓ,) ╭∩╮
тоже с иды запускаешь?
да
источник

RS

Rusty Shackleford in Ассемблер
можно попробывать xdbg
источник

RS

Rusty Shackleford in Ассемблер
но дело в иде похоже, как уже верно подменитили выше, потому что без галочки на опции создание импорта при загрузке все норм
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮... in Ассемблер
Rusty Shackleford
можно попробывать xdbg
давай, пробуй
источник

s

s54816 in Ассемблер
Rusty Shackleford
но дело в иде похоже, как уже верно подменитили выше, потому что без галочки на опции создание импорта при загрузке все норм
Сегменты в IDA не обязательно отражают реальные секции. Кое-что IDA может вообще не грузить, те же ресурсы например (тоже есть галочка на этот счёт), можно все секции в одну слить (что-то там про FLAT segment). И кроме родного лоадера какие-нибудь другие плагины тоже свои сегменты создавать могут. Поэтому проще взять PE-вьювер, он точно не соврёт.
источник

RS

Rusty Shackleford in Ассемблер
Aiwan ╭∩╮ (òÓ,) ╭∩╮
давай, пробуй
да в xdbg всё нормально, 3 секции как и в коде
источник