/// <summary>
 /// Enumerates all instructions in all methods across each type of the assembly
 /// </summary>
 public static void ForEachInstruction(this ModuleDefinition module, Action <MethodDefinition, Mono.Cecil.Cil.Instruction> callback)
 {
     module.ForEachMethod(method =>
     {
         if (method.HasBody)
         {
             foreach (var ins in method.Body.Instructions.ToArray())
             {
                 callback.Invoke(method, ins);
             }
         }
     });
 }