Example #1
0
		public void Call(X86Label label) {
			if (label.IsMarked) {
				Call(label.Position);
			} else {
				label.AddPatchRequired();
				writer.Write(new byte[] { 0xE8 });
				writer.Write(0xDEADBEEF);
			}
		}
Example #2
0
		public void Jmp(X86ConditionCode cond, X86Label label) {
			if (label.IsMarked) {
				Jmp(cond, label.Position.ToInt32() - this.Position.ToInt32());
			} else {
				label.AddPatchRequired();
				writer.Write(new byte[] { 0x0F, (byte)(0x80 | (byte)cond) });
				writer.Write(0xDEADBEEF);
			}
		}
Example #3
0
 public void Call(X86Label label)
 {
     if (label.IsMarked)
     {
         Call(label.Position);
     }
     else
     {
         label.AddPatchRequired();
         writer.Write(new byte[] { 0xE8 });
         writer.Write(0xDEADBEEF);
     }
 }
Example #4
0
 public void Jmp(X86ConditionCode cond, X86Label label)
 {
     if (label.IsMarked)
     {
         Jmp(cond, label.Position.ToInt32() - this.Position.ToInt32());
     }
     else
     {
         label.AddPatchRequired();
         writer.Write(new byte[] { 0x0F, (byte)(0x80 | (byte)cond) });
         writer.Write(0xDEADBEEF);
     }
 }