Сейчас на форуме: _MBK_, asfa (+6 невидимых)

 eXeL@B —› Вопросы новичков —› Допишем код
Посл.ответ Сообщение


Ранг: 106.9 (ветеран), 27thx
Активность: 0.080
Статус: Участник

Создано: 20 мая 2009 23:44
· Личное сообщение · #1

Вобщем нужно сделать патч в ольке, а точнее дописать код(что-то вроди:eax=random(7,10)). Ну а т.к. Randomize в winapi нет, задача слегка усложняется, кроме подгрузке своей длл(это в крайнем случае т.к. не красиво), на ум чета ни че не приходит. Другого варианта развития событий нет? Кто в теме, подскажите)




Ранг: 673.3 (! !), 400thx
Активность: 0.40.31
Статус: Участник
CyberMonk

Создано: 20 мая 2009 23:56
· Личное сообщение · #2

ничего не понятно патч в ольке ..саму ольку или сторонюю прогу ...для каких целей , может сделать Плагин , с одной кнопкой и процедурой рандомиз и выводом в регистр нужный ?

-----
RE In Progress [!] Coding Hazard [!] Stay Clear of this Cube




Ранг: 49.3 (посетитель), 43thx
Активность: 0.060
Статус: Участник

Создано: 21 мая 2009 00:04
· Личное сообщение · #3

Зубков С.В. Assembler для DOS, Windows и Unix - 5.7.1. Генераторы случайных чисел



Ранг: 210.5 (наставник), 2thx
Активность: 0.140
Статус: Участник

Создано: 21 мая 2009 00:19 · Поправил: arnix
· Личное сообщение · #4

Как я понял нужно дописать код random-генератора в бинарник, но причем тут олька?
Вот очень простой генератор на основе rdtsc:

Code:
  1. ; input:
  2. ; ecx --- the range of the random number to be generated
  3. ;
  4. ; output:
  5. ; eax --- random number as result
  6. ;
  7. __random_rdtsc: 
  8.                  pushad
  9.                  db     0fh,31h
  10.                  add    eax,edx
  11.                  xor    edx,edx
  12.                  or     ecx,ecx
  13.                  jz     rnd_rdt_no_range
  14.                  div    ecx
  15.                  xchg   eax,edx
  16. rnd_rdt_no_range:
  17.                  mov    [esp+28],eax
  18.                  popad
  19.                  ret





Ранг: 106.9 (ветеран), 27thx
Активность: 0.080
Статус: Участник

Создано: 21 мая 2009 07:28 · Поправил: Oott
· Личное сообщение · #5

Блин не так выразлился, надо было сделать патч в бинаре(к примеру используя ольку).
Arnix, спс заценю.
добавлено
Все спасибо, использование rdtsc помогло.




Ранг: 990.2 (! ! !), 380thx
Активность: 0.680
Статус: Модератор
Author of DiE

Создано: 21 мая 2009 15:50
· Личное сообщение · #6

вообще асть апи:

RtlRandom
RtlRandomEx

-----
[nice coder and reverser]





Ранг: 2014.5 (!!!!), 1278thx
Активность: 1.340.25
Статус: Модератор
retired

Создано: 21 мая 2009 18:16
· Личное сообщение · #7

Видимо, можно закрыть, раз помогло.


 eXeL@B —› Вопросы новичков —› Допишем код
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати