示例#1
0
        public Arm64Instruction[] DisasmArm64(byte[] bytes)
        {
            const Arm64DisassembleMode disassembleMode = Arm64DisassembleMode.Arm;

            using (CapstoneArm64Disassembler disassembler = CapstoneDisassembler.CreateArm64Disassembler(disassembleMode))
            {
                disassembler.EnableInstructionDetails = true;
                disassembler.DisassembleSyntax        = DisassembleSyntax.Intel;
                Arm64Instruction[] instructions = disassembler.Disassemble(bytes);
                return(instructions);
            }
        }
示例#2
0
 /// <summary>
 ///     Create an ARM64 Disassembler.
 /// </summary>
 /// <param name="disassembleMode">
 ///     The hardware mode for the disassembler to use.
 /// </param>
 /// <returns>
 ///     An ARM64 disassembler.
 /// </returns>
 /// <exception cref="Capstone.Net.CapstoneException">
 ///     Thrown if a disassembler could not be created.
 /// </exception>
 /// <exception cref="System.OutOfMemoryException">
 ///     Thrown if sufficient memory cannot be allocated to perform the operation as a rare indication that the
 ///     system is under heavy load.
 /// </exception>
 public static CapstoneArm64Disassembler CreateArm64Disassembler(Arm64DisassembleMode disassembleMode)
 {
     return(new CapstoneArm64Disassembler(disassembleMode));
 }