Here follows a quick reference guide of the most useful API calls for cracking with SoftICE. Note that the "A" after the API means 32 bit so if the program you wanna crack is 32 bit put the "A" else don't. Reading/Writing files: ReadFile WriteFile CreateFileA Reading data from INI file: GetPrivateProfileStringA GetPrivateProfileIntA WritePrivateProfileStringA WritePrivateProfileIntA Registry Access: RegCreateKeyA RegDeleteKeyA RegQueryValueA RegCloseKeyA RegOpenKeyA DialogBoxes: GetWindowTextA GetDlgItemTextA GetDlgItemInt MessageBoxes: MessageBox MessageBoxA MessageBoxExA MessageBeep Time And Date: GetLocalTime GetSystemTime GetFileTime Creating a window (like a NAG): CreateWindowExA ShowWindow The following is not an API but it can intercept almost any kind of call for getting a serial number: Hmemcpy ============================================================================== And here follows a quick table with the most used ASM jump used in cracking with their HEX code. Hex: Asm: Means 75 or 0F85 jne jump if not equal 74 or 0F84 je jump if equal EB jmp jump directly to 90 nop no operation 77 or 0F87 ja jump if above 0F86 jna jump if not above 0F83 jae jump if above or equal 0F82 jnae jump if not above or equal 0F82 jb jump if below 0F83 jnb jump if not below 0F86 jbe jump if below or equal 0F87 jnbe jump if not below or equal 0F8F jg jump if greater 0F8E jng jump if not greater 0F8D jge jump if greater or equal 0F8C jnge jump if not greater or equal 0F8C jl jump if less 0F8D jnl jump if not less 0F8E jle jump if less or equal 0F8F jnle jump if not less or equal Compiled in 99/10/10, for any question: lockless@email.com