удобно (сжатый отрывок:)
kernel32 dd ?
kernelTable:
FUNC 'LoadLibraryA', 0
FUNC 'ExitProcess', 0
kernelTable.count = 2
code:
krnlInit:
cmp esi, kernelTable.count
je krnlEndInit
lea ebx, [kernelTable]
mov edx, esi
imul edx, sizeof.FUNC
add ebx, edx
push ebx
push [kernel32]
call [GetProcAddress]
mov [ebx+FUNC.addr], eax
inc esi
jmp krnlInit
krnlEndInit:
push 0
lea eax, [kernelTable+1*sizeof.FUNC]
call [eax+FUNC.addr]
ret
а почему ты не хочешь воспользоваться таблицей импорта?
Я ей пользуюсь. Просто конкретно задача такая под софт, что таблицу импорта тут использовать не получится
Обсуждают сегодня