Iczelion's Win32 Assembly Homepage
Main Tutorials Source Codes Downloads Links

Win32 Assembly Tutorials

Copyright Notice
All tutorials written by me are copyrighted freeware: they are free so long as you use it for non-profitable purposes. Commercial use is strictly prohibited.
Other articles/tutorials are properties of their authors. Contact them for more detail on conditions for use.

_masta_'s original tutorials

_masta_'s Win32Asm Tut 0

Introduction to Windows 32bit Assembler - requires you to have a basic asm knowledge. The goal is coding the "Hello World!" example.
_masta_'s Win32Asm Tut 1
Going further into the material - this time _masta_ shows us how to code a "seek-and-destroy" patcher,i.e. a patcher that searches for a certain byte-pattern in a file and replaces it with a different pattern. Using such a nice patcher it's possible to write cracks for several versions of a program if the protection scheme itself isn't changed by the author.
_masta_'s Win32Asm Tut 2
This one is interesting for all game-freaks out there as it'll show you how to code trainers for games. _masta_  shows you how to write a trainer for Starcraft ! This is the new version,because there was an error in the source code.
Iczelion's tutorial Series
Win32 Assembly VxD Tutorials

Tutorial 1: The Basics
Tutorial 2: MessageBox
Tutorial 3: A Simple Window
Tutorial 4: Painting with Text
Tutorial 5: More about Text
Tutorial 6: Keyboard Input
Tutorial 7: Mouse Input
Tutorial 8: Menu
Tutorial 9: Child Window Controls
Tutorial 10: Dialog Box as Main Window
Tutorial 11: More about Dialog Box
Tutorial 12: Memory Management and File I/O
Tutorial 13: Memory Mapped File
Tutorial 14: Process
Tutorial 15: Multithreading Programming
Tutorial 16: Event Object
Tutorial 17: Dynamic Link Libraries
Tutorial 18: Common Controls
Tutorial 19: Tree View Control
Tutorial 20: Window Subclassing
Tutorial 21: Pipe
Tutorial 22: Window Superclassing
Tutorial 23: Tray Icon
Tutorial 24: Windows Hooks
Tutorial 25: Simple Bitmap
Tutorial 26: Splash Screen
Tutorial 27: Tooltip Control
Tutorial 28: Win32 Debug API part 1
Tutorial 29: Win32 Debug API part 2
Tutorial 30: Win32 Debug API part 3
Tutorial 31: Listview Control

Tutorial 32: Multiple Document Interface (MDI)
Tutorial 33: RichEdit Control: Basics
Tutorial 34: RichEdit Control: More Text Operations
Tutorial 35: RichEdit Control: Syntax Hilighting

Virtual Device Driver Basics
Virtual Machine Manager
Virtual Device Driver Skeleton
VxD Programming: Primer
VxD Example: MessageBox
DeviceIoControl Interface
Application Time and Shell Functions
Client Register Structure
Virtual 8086 Memory Manager
PE Tutorials
Overview of PE File Format
Detecting a Valid PE File
File Header
Optional Header
Section Table
Import Table
Export Table
ODBC Tutorials
Basics
Connecting to Data Source
Preparing and Using Statements
Retrieving Results
An ODBC Example
Translation Download Whole Packages

Italian
French [PE/VxD/ODBC/import lib/Winsock tuts]
Spanish

Win32 Assembly Package
PE Tutorial Package
VxD Tutorial Package
ODBC Tutorial Package
Other Tutorials by Iczelion
Hints on how to create MASM import lib This short essay gives you hints on how to create your own import libraries which are fully *invokable* with MASM
Guide to Winsock Programming in Assembly Language Give info on how to use winsock in win32asm. The info is for winsock 1.1 but still applicable to winsock 2.x.
Articles by Various Authors
Exagone win32asm Tutorial By Exagone (http://exagone.cjb.net). Cover the more basic topics about assembly language than my own such as memory, opcodes, conditional jumps etc.
Layered Window Tutorial By ultraschall. This short tutorial shows you how to create a layered window under Windows 2000. Layered window is a feature specific to Windows 2000. Thus this information is applicable to win2k only.

Win32 Tips/Techniques for MASM Part #1
Win32 Tips/Techniques for MASM Part #2

By Ates. Contains interesting tricks you can use in your programs.
How to write VxDs using NASM This article describes the mechanics of using NASM to assemble a VxD. The reader must already be familiar with coding VxDs using MASM.
Memory Mapped Files: Sharing Data Between Instances This advanced win32asm lesson by Aesculapius shows you how to use memory mapped files as a way to share data among processes. He explains the memory map used by Win32 first so you get a clear picture of how memory mapped file works. Download this excellent article with the accompanying example.
How to Write NT Services in Assembly Language by Cynical Pinnacle. This tutorial teaches you step by step on how to write NT services in asm. Concise and to the point, this is a must read for NT lovers. Come with source code of a simple beep service which you can use to learn about NT services.
Structured Exception Handling in Win32asm by Jeremy Gordon. This article explains the concept of exception handling which will make your application more robust. The info on structured exception handling is hard to come by, especially in asm. A must read. Download the sample code with this article. Visit his homepage.
Structured Exception Handling in ASM Two articles with code samples by EliCZ and the_owl.
How to use DirectDraw in Win32ASM by X-Calibre. Show you how to use C++ and COM objects from assembly language. Include a cool plasma example in DirectDraw with source code.
How to obtain memory status by 'Razor'X. Demonstrate how to get information about current free physical memory, virtual memory and more. Written with TASM.
Using Tab Controls in win32asm by Latigo. A short tutorial on how to use the tab control. Come with an example with source code.
Win32 Constant List supplied by RokFOX This is a list of most constants you will encounter in your programming chores. They are grouped by alphabet. The value is in hexadecimal.

Main Tutorials Source Codes Downloads Links