วิธีนี้เหมาะสำหรับคนที่เขียน shellcode นะครับ เพราะถ้าเขียน assembly ปกติคงไม่จำเป็นต้องใช้เท่าไหร่
สำหรับคนที่เขียน shellcode ในบางครั้งต้องการใส่ string เข้าไปใน shellcode ที่เขียนขึ้นมาด้วย
ซึ่งก็ต้องอ้างอิงตำแหน่งของ string ที่ใส่เข้าไปโดยใช้ EIP นี่แหละ

แต่การดึงค่าจาก EIP ไม่สามารถดึงตรงๆ ได้ เพราะพวกคำสั่งปกติเช่น
mov eax, eip หรือ push eip มันไม่มี เครื่องก็จะไม่สามารถประมวลผลได้ ก็เลยต้องอาศัย trick นิดหน่อย ;D

[hide=25]
พอดีผมไปเจอวิธีนี้มาจากเว็บต่างประเทศนะครับ (ไม่ได้คิดเองหรอก เพราะปกติก็ไม่ค่อยเก่ง asm อยู่แล้ว - -a)
แต่จำไม่ได้ว่าเว็บอะไรต้องขออภัยมา ณ ที่นี้ด้วยนะครับ

[code]
jmp