flat assembler
Message board for the users of flat assembler.
Index
> Macroinstructions > Optimizing library/import macro |
Author |
|
RedGhost 08 Sep 2006, 18:35
Binary size optimization is always good
_________________ redghost.ca |
|||
08 Sep 2006, 18:35 |
|
vid 08 Sep 2006, 20:08
Code: dd $ - krnl32 db 'X' ;to make it easier to find size of imports you have this in header... to your problem, try this: Code: include 'MACROS/apia/kernel32.inc' data import import kernel32, 'kernel32.dll' end data it could be what you want. However i believe this is NOT proper method, all FirstThunks (but not OriginalFirstThunks) have to be located inside data import... i think it is to make it possibile for loader to load just needed part of executable. Why would we otherwise need data length in header? |
|||
08 Sep 2006, 20:08 |
|
okasvi 08 Sep 2006, 21:57
Code: dd $ - krnl32 db 'X' ;to make it easier to find size of imports this was for seeing the size of optimized IAT and original, thought, I forgot to put proper labels around normal IAT on later example. Code: include 'MACROS/apia/kernel32.inc' data import import kernel32, 'kernel32.dll' this quite not doesnt do the optimizations I've made... ie. after Code: WriteConsole dd RVA _WriteConsole I'll fix the labels for 'unoptimized' IAT so last dword of src shows size of IAT correctly edit: fixed, btw. for those who doesnt spot it, my size savings rely on reordering to remove unnecessary zeros |
|||
08 Sep 2006, 21:57 |
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2024, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.