|||

0038-assembly_adventures_01

This Sounded Better at 3am

This sounded a whole lot better the other night.

Learn Assembly? What was I thinking? Where to start?

What is Assembly? That question is probably a great place to start. I knew from my conversation, I wanted to learn x86, 32bit, and for me I wanted to use it in Windows too.

Some Tools Required

I wanted to do this at little to no cost. A few quick google searches and it sounds like I need tools called MASM, and an IDE or Editor to work with and save the code. WinASM came up quite a bit so I’m looking at that too.

MASM

The Microsoft Assembler also called MASM is for programming operating system level code and high performance object modules, executable files and dynamic link libraries”. The MASM SDK can be downloaded in the link below.

Reference: https://www.masm32.com/

MASM Installation

After downloading the MASM SDK, extract the contents and execute install.exe.

Click on the Install graphic from the Welcome screen to begin the installation.

Select the Partition to install MASM.

Now set up will run through a series of checks with OK buttons. Proceed on.

Click on Extract

Click OK

At this point I received several errors like ones below when installing on Windows 10. Just OK through and ignore them for now.

After the installation is complete. Open a Command Prompt and run the below command to make any missing libraries. So far this has not inhibited me from continuing.

c:\masm32\makelibs.bat

You could choose to use the DOS editor the came with the MASM SDK but I choose to install WinASM.

WinASM

WinASM can be downloaded here https://www.winasm.net/free-downloads.html

Once it is downloaded extract the folder and contents to a location of your choice. It is a portable application you can move it anywhere.

Double click on WinASM.exe in the folder you just extracted and WinASM Studio should start.

We are ready to start learning some actual code and syntax. In the next post we will code a popup box with Hello World!” in Windows.

I can’t wait for the next step.

Up next 0037-how_to_get_the_last_boot_time 0039-sparks_of_inspiration
Latest posts 0104-change-synology-password-cli 0105-free-git-ebook 0103-using-brew-bundle-to-backup-and-restore-mac-app-store-and-brew-apps Update macOS with an all in one alias Mac App Store Command Line Interface 0100-macos-softwareupdate-cli Markdown Crash Course Video What’s New with Fusion and Workstation [HCP1833] File IO in Python Overview of vSphere 7 Video 0095-what_is_iso Migrating Website HTML details Tag Microsoft RD Client iOS App 0091-create_vmware_esxi_usb_install_media Intel NUC Lab Hosts Hardware Setup 0089-installng_microsoft_sql_2016 Installing the First Two Domain Controllers in the VMware ESXi 6.7 Lab Environment 0088-deploy_vcsa_in_lab Macchanger Utility, and Usage Install a Kali Linux VM in a VMware ESXi 6.7 Environment Install Ubuntu 18.04 Virtual Machine in a VMware ESXi 6.7 Environment Install xRDP on Ubuntu 18.04 Install Chromium on Ubuntu 18.04 Install OpenSSH on Ubuntu 18.04 Install VMware Workstation 14 on Ubuntu 18.04 Nested ESXi server Laboratorium Rattus The Animal Within Who is Veeam? RSAC OnDemand Videos 0075-create_win10_sandbox_vm