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

 eXeL@B —› Программирование —› как ето написать на асме?
Посл.ответ Сообщение

Ранг: 12.9 (новичок)
Активность: 0.010
Статус: Участник

Создано: 19 мая 2007 00:43
· Личное сообщение · #1

вот написал я програмульку каких в нете наверное валом, но из всего что я скачивал, моя мне самая удобная
вопрос: учу асм почучуть, может ктото етот мой делфовский прожект на асм перевести.

там пассворд генератор
вот ссыль www.rapidshare.ru/284598



Ранг: 309.8 (мудрец), 21thx
Активность: 0.170
Статус: Участник

Создано: 19 мая 2007 02:01
· Личное сообщение · #2

чё писать-то... типа (от балды нафигачил):


.data
szmatrix db 'qwertyuio.......',0

.code

; prng
rnd2gen proc near
....
rnd2gen endp

;main
gen proc
...
xor ebx,ebx
@@:
mov eax,sizeof(szmatrix)
call rnd2gen
add eax,offset szmatrix
movzx eax,byte ptr[eax]
mov byte ptr[szpass+ebx],al
inc ebx
cmp ebx,pass_len
jne @B
...
gen endp


-----
Shalom ebanats!




Ранг: 74.4 (постоянный)
Активность: 0.050
Статус: Участник

Создано: 19 мая 2007 02:01 · Поправил: WoLFeR
· Личное сообщение · #3

делфу на асм переводить проще с 0 написать



Ранг: 12.9 (новичок)
Активность: 0.010
Статус: Участник

Создано: 19 мая 2007 02:40
· Личное сообщение · #4

WoLFeR дык я в асме балда, вот и хотел узнать как ето все будет выглядеть, рендом как делать и тд
если можеш, напиши плиз.. мнебы с окошком как у меня чтоб посмотреть как все работает, а там думаю уже разберусь



Ранг: 161.0 (ветеран)
Активность: 0.120
Статус: Участник

Создано: 19 мая 2007 12:55
· Личное сообщение · #5

Ну дык ты возьми в РадАсме создай новый проект с окном + добавь код SLV. Потом юзай функцию SetDlgItemText чтобы вывести пасс.




Ранг: 282.8 (наставник), 24thx
Активность: 0.260
Статус: Участник
win32.org.ru

Создано: 19 мая 2007 13:16
· Личное сообщение · #6

Ze0S пишет:
моя мне самая удобная

скромный

kaiZer пишет:
Ну дык ты возьми в РадАсме создай новый проект с окном + добавь код SLV

добавить код не получится, так как слв дал тока конструкцию

-----
may all your PUSHes be POPed!





Ранг: 353.0 (мудрец)
Активность: 0.370
Статус: Участник
resreveR

Создано: 19 мая 2007 13:21
· Личное сообщение · #7

Guru_eXe пишет:
добавить код не получится, так как слв дал тока конструкцию

А может еще посоветуешь за топикстартера все сделать? =)

-----
Тут не могла быть ваша реклама




Ранг: 12.9 (новичок)
Активность: 0.010
Статус: Участник

Создано: 09 апреля 2007 13:49
· Личное сообщение · #8

а как состояние чекбоксов менять, да и рендом число в асме брать?
форточку уже склеил, значения брать умею...



Ранг: 56.3 (постоянный)
Активность: 0.030
Статус: Участник

Создано: 19 мая 2007 14:40 · Поправил: W[4Fh]LF
· Личное сообщение · #9

Прочти туториалы ICZELION'a. У него куча уроков по написанию интерфейса + можно взять примеры из пакета masm32 и fasm. Не вижу никаких проблем.




Ранг: 353.0 (мудрец)
Активность: 0.370
Статус: Участник
resreveR

Создано: 19 мая 2007 15:34
· Личное сообщение · #10

Ze0S пишет:
а как состояние чекбоксов менять, да и рендом число в асме брать?
форточку уже склеил, значения брать умею...

Примеры масма смотри. Поиск по "nrandom". Ну или gettickcount/rdtsc =)

-----
Тут не могла быть ваша реклама




Ранг: 103.1 (ветеран), 3thx
Активность: 0.070.01
Статус: Участник

Создано: 19 мая 2007 15:48 · Поправил: Styx
· Личное сообщение · #11

invoke GetTickCount
mov [rand], eax

;между вызовом GetTickCount и random_range должно пройти время т.к. GetTickCount ф-ция не точная!

; процедура рандома base - число до которого генерится рандом ( для улучшения алгоритма можно использовать sub
; от начального числа, в данном случае рандом от 0 до base )
; Есть возможность использовать улучшенную версию алгоритма с использованием ф-ции
; RDTSC, но с предварительным определением типа процессора с помощью CPUID, т.к.
; ф-ция пристствует только в процессорах Intel начиная с Pentium Pro.
; ( см. справку по CPUID и RDTSC )

proc random_range, base
;enter
; RDTSC ; pentium processor only
; invoke GetTickCount
; mov edx, eax
; invoke GetTickCount
mov ecx, [rand]
mov eax, 214013h
imul ecx
sub edx, edx ; предупреждение деления на ноль от вызывающего ( ? )
add eax, 2531011h
mov [rand], eax

xor eax, edx
xor edx,edx
push 127773
div dword [esp] ;;; 127773
push eax
mov eax, 16807
mul edx
pop edx
push eax
mov eax, 2836
mul edx
pop edx
sub edx, eax
mov eax, edx
push [base]
mov edx, 0
div dword [esp] ;;; [base]
add esp,8 ; лучше чем 2 pop для очистки стека!!!
mov eax, edx ; возвращаем значение через eax
ret
endp

Вот тебе, кушай на здоровье (:
З.Ы. FASM

-----
Crack your mind, save the planet




Ранг: 12.9 (новичок)
Активность: 0.010
Статус: Участник

Создано: 19 мая 2007 19:54
· Личное сообщение · #12

Styx спасибо




Ранг: 605.2 (!), 341thx
Активность: 0.470.25
Статус: Модератор
Research & Development

Создано: 20 мая 2007 11:43
· Личное сообщение · #13

Ze0S
На форуме WinAsm я выкладывал Password Generator http://www.winasm.net/forum/showtopic=719 , Generate passwords using custom alphabet
С исходниками на асме.
На всякий случай приложил здесь архив с прогой, т.к. на форуме WinAsm требуется регистрация для скачивания аттачей.

b884_20.05.2007_CRACKLAB.rU.tgz - PassGen.v1.o8.zip

-----
EnJoy!





Ранг: 605.2 (!), 341thx
Активность: 0.470.25
Статус: Модератор
Research & Development

Создано: 20 мая 2007 11:45
· Личное сообщение · #14

Исходники PassGen на асме с проектом для WinAsm Studio.

e9f7_20.05.2007_CRACKLAB.rU.tgz - PassGen.v1.o8.Source.zip

-----
EnJoy!





Ранг: 85.4 (постоянный)
Активность: 0.080
Статус: Участник

Создано: 20 мая 2007 13:02
· Личное сообщение · #15

Ze0S простой совет. Если не знаешь как работать с контролами на асме. Берешь дельфу, открываешь свой проект, ищещь код, который надо переложить на асм, жмешь ctrl и левой кнопкой по ф-ии и попадаешь в библу, где ф-ия описана - смотришь че там. В основном всё общение с контролами происходит через сообщения ;) Нашел нужное, открываешь Win32.hlp или MSDN и читаешь описание. Всё. Как отправить сообщение контролу на асме думаю объяснять не надо..

-----
radio uno in ibisa ...




Ранг: 12.9 (новичок)
Активность: 0.010
Статус: Участник

Создано: 20 мая 2007 15:01
· Личное сообщение · #16

Icelot ну как текст на едит оправлять и снимать я знаю, как снять онклик с кнопки тоже, с остальным траблы



Ранг: 12.9 (новичок)
Активность: 0.010
Статус: Участник

Создано: 20 мая 2007 15:03
· Личное сообщение · #17

Jupiter спасибо, думаю теперь разберусь




Ранг: 85.4 (постоянный)
Активность: 0.080
Статус: Участник

Создано: 20 мая 2007 15:04
· Личное сообщение · #18

С остальным всё также просто. У всех контролов есть набор сообщений, который они используют.
А вообще бери Айсилиона и cюда http://www.bitfry.narod.ru/ .

-----
radio uno in ibisa ...





Ранг: 340.0 (мудрец), 22thx
Активность: 0.120
Статус: Участник
THETA

Создано: 20 мая 2007 18:59
· Личное сообщение · #19

Ze0S
По созданию и работе с интерфейсом советую посмотреть "Win32 Asm for Crackers" от Goppit (ARTeam). Этот учебник является своего рода переложением уроков Iczelion только с использованием WinAsm Studio, - все исходники там прилагаются, множество картинок, иллюстрирующих материал, и также включено описание синтаксиса MASM32 и многое другое.
Вообще одним из достоинств WinAsm является встроенный редактор ресурсов, предоставляющий очень удобные средтва для работы с ресурасми (лично мне он кажется более удобным по сравнению с другими IDE для асма), который неплохо описан в справке, - которая опять же хорошо иллюстрирована.

-----
Программист SkyNet




Ранг: 12.9 (новичок)
Активность: 0.010
Статус: Участник

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

FrenFolio спасибо, уже качаю.
Icelot пишет:
С остальным всё также просто. У всех контролов есть набор сообщений, который они используют.

я таки не нашел как с чекбоксом работать, пишу ето дело на радасме, там в хелпе чекбокс пробивал но ниче путнего не нашел




Ранг: 85.4 (постоянный)
Активность: 0.080
Статус: Участник

Создано: 21 мая 2007 06:53
· Личное сообщение · #21

Ze0S cкачай Win32.hlp, вбей в поиск Check Box - там есть. Или MSDN. Вот здесь http://msdn2.microsoft.com/en-us/library/system.windows.controls.checkbox.aspx .

-----
radio uno in ibisa ...





Ранг: 104.9 (ветеран), 47thx
Активность: 0.040.02
Статус: Участник

Создано: 21 мая 2007 07:06
· Личное сообщение · #22

The CheckDlgButton function changes the check state of a button control.

BOOL CheckDlgButton(

HWND hDlg, // handle to dialog box
int nIDButton, // button-control identifier
UINT uCheck // check state
);


The CheckRadioButton function adds a check mark to (checks) a specified radio button in a group and removes a check mark from (clears) all other radio buttons in the group.

BOOL CheckRadioButton(

HWND hDlg, // handle to dialog box
int nIDFirstButton, // identifier of first radio button in group
int nIDLastButton, // identifier of last radio button in group
int nIDCheckButton // identifier of radio button to select
);


The IsDlgButtonChecked function determines whether a button control has a check mark next to it or whether a three-state button control is grayed, checked, or neither.

UINT IsDlgButtonChecked(

HWND hDlg, // handle of dialog box
int nIDButton // button identifier
);



Ранг: 12.9 (новичок)
Активность: 0.010
Статус: Участник

Создано: 21 мая 2007 12:52
· Личное сообщение · #23

ManHunter спасибо... начало получатся


 eXeL@B —› Программирование —› как ето написать на асме?
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати