vahidmy

وبلاگ شخصی وحید محمدی

vahidmy

وبلاگ شخصی وحید محمدی

وحیدمی

وبلاگ شخصی وحید محمدی . یک تایپیست که عاشق علم و تجربه است.


آدرس وبلاگ وحیدمی :

Home Page


https://vahidmy.blog.ir

+


Archive

آرشیو و بایگانی وبلاگ وحیدمی

https://vahidmy.blog.ir/archive

+


نقشه وبلاگ وحیدمی:

Sitemap

https://vahidmy.blog.ir/sitemap.xml

+

خوراکخوان وبلاگ وحیدمی

Feed

RSS

https://vahidmy.blog.ir/rss

+

آدرس مورد استفاده خزنده ها روباتها و موتورهای جستجوگر

Robot

https://vahidmy.blog.ir/robots.txt


+

مشخصات وبلاگ وحیدمی:


ساعات انتشار پست جدید وبلاگ :

بیست و چهار ساعته

وضعیت انتشار پست : نامنظم . در طول شبانه روز و در صورت صلاحدید ؛ پست جدید منتشر می کنم.


نام مدیر : وحید محمدی

گونه : وبلاگ شخصی با آدرس اختصاصی و محتوای عمومی

ژانر : تمام ژانرها

کاربرد : همه منظوره

هدف وبلاگ : به اشتراک گذاشتن دانش و تجربه با مردم و پرداخت زکات علم

مقصد مدیر وبلاگ : کسب رضای خداوند .

جنس وبلاگ : وبلاگ شخصی

تاریخ تاسیس : تیر 1398 خورشیدی



موضوعات وبلاگ : تمام علوم و فنون و مسائل مختلف در تمام زمینه


کپی برداری از مطالب وبلاگ وحیدمی به شرط لینک دادن به آدرس اصلی وبلاگ با دامنه vahidmy.blog.ir ، بلامانع و آزاد است . با خیال راحت ، کپی برداری نمایید . هیچگونه کپی رایت و انحصار برای وبلاگ وحیدمی ، وجود ندارد .

بروزرسانی:

وبلاگ وحیدمی منحصرا توسط سایت بلاگ دات آی آر به آدرس blog.ir میزبانی می شود . بنابراین بجز دامنه vahidmy.blog.ir سایر دامنه ها جعلی و فیک و خطرناک هستند .
برای مشاهده نکات جدید و ترفندهای امنیتی لطفا به آدرس زیر مراجعه فرمایید:

https://vahidmy.blog.ir/post/1



آدرس وبلاگهای تخصصی :

https://spasm.blog.ir

https://fasmy.blog.ir

https://binasm.blog.ir

طبقه بندی موضوعی
مطالب پربحث‌تر
  • ۰۱/۰۴/۱۱
    adc
نویسندگان
پیوندها

Quick start

شنبه, ۱ بهمن ۱۴۰۱، ۰۷:۱۱ ب.ظ





Quick start  ...



Quick start for experienced programmers who feel too lazy to read the full documentation.



Simple installation: Create a Directory. Unzip RosAsm. Unzip into this new Directory:  'Structures.zip' and 'Equates.zip'. At least 'Equates.zip' must be there. The other External Files (Help Files) may be anywhere and you may later organize them through the [Configuration] Tab. For details about the Win32 Data Directory, see Include_Files


       

Make a copy of RosAsm. Run RosAsm. Load the copy. Try to get some idea of the size of the beast. Click on [Compile]  and see how long it takes to turn RosAsm source into a new PE with all its components...

 

      

Play with the IDE features to take a hand. Try to 'Right Click' on various symbols and see what it does. Right click again on a blank area. Try 'Double Click' too.


       

Load 'Base.exe', write a faulty statement and [compile]. Write a faulty instruction (or some 'Int 3') and [Run]. [Run] includes a Debugger. Stepping possible after 'Int 3'. Do not step inside an Win32 API call.



(مترجم:

خط آخر که می گوید : در درون فراخوانی توابع API وین32 گام برندارید ، فقط محض احتیاط است زیرا من خودم بدون ترس ، با فشردن مرتب کلید F7 سعی می کردم ببینم که داخل هرکدام از توابع API ویندوز ، چه دستوراتی نهفته است که دیدم در نوار عنوان بالای پنجره دیباگر با هر بار فشردن کلید F7 شاهد ظهور یکسری دستورات زبان اسمبلی هستم که این دستورات زبان اسمبلی ، همگی در فایل NTDLL.DLL یعنی در فایل اصلی کرنل سیستم عامل ویندوز حضور داشتند !! 

بله من تا سطح صفر ( رینگ صفر ) هم پیش رفتم و هیچ اتفاق بدی رخ نداد ! 

دیباگر روسسم عملا باعث می شود که شما دقیقا متوجه شوید که هرکدام از توابع ویندوز از چه دستورات زبان اسمبلی تشکیل شده اند  و چگونه با کرنل ویندوز در ارتباط می باشند . لذا  به توصیه ی جناب رنه تورنویس گوش ندهید و بدون ترس ، سعی کنید توابع ویندوز را  دیباگ نمایید ) 


For writing some source, you can  use 'Base3.exe' source for a start. 



>>>>> Ascii sources are inside the PE's .exe file . <<<<<



Quick description of syntax:



[ Hexa_Dword_Value: D$ 0FFFFFFFF 

 Decimal_Word_Value: W$ 123 

 Binary_Byte_Value: B$ 00101 ]

;this is 3 data values.

 


[push | push #1 | #+1]

[call | push #L>2 | call #1]

; this is 2 macros to be used that way, for example:

       

call  'MYDLL.MyFunction'  para1, para2 


... it becomes:


push para2 | push para1 | call 'MYDLL.MyFunction'



[TRUE 1  FALSE 0] ; these are 2 user defined equates.


mov  eax  &TRUE ; &TRUE is a Win32 integrated Equates (no declaration).




RosAsm syntax differs from older Assemblers on this point:


mov  eax  D$Hexa_Dword_Value

; = mov eax,  Dword ptr  [Hexa_Dword_Value]


mov  eax  Hexa_Dword_Value

; = mov eax,  ADDR  Hexa_Dword_Value


(All user defined symbols -out of Equates/Macros- are addresses, never values, just like in NASM).


~~~~~~~