Поинтеры.
Добрый день.
Мне в функцию приходит извне byte ptr в котором находится адрес на нужную мне функцию в памяти, приблизительно это выглядит так:
buf1:byte ptr = [искомый адрес функции]
buf2:byte ptr = varptr buf1
теперь в buf2[0], buf2[1], buf2[2], buf2[3] зашит адрес в памяти по которому находится buf1.
Вот этот buf2 мне и приходит в функцию (доступа к самому buf1 нет, он формируется в другом приложении в которое я делаю инжект длл, я привел его для наглядности)
function test(buf2:byte ptr)
как получить buf1? т.е сделать обратную операцию от varptr
Очень долго мучаюсь, единственное что придумал - делать ReadMemory по адресу в buf2 но это жуткие костыли, помогите сделать красиво...
|