> For the complete documentation index, see [llms.txt](https://docs.hyperdbg.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.hyperdbg.org/using-hyperdbg.md).

# Using HyperDbg

- [Prerequisites](https://docs.hyperdbg.org/using-hyperdbg/prerequisites.md): This document contains essential notes that you should know before starting with HyperDbg
- [Operation Modes](https://docs.hyperdbg.org/using-hyperdbg/prerequisites/operation-modes.md): Different Modes of Operation in HyperDbg
- [How to create a condition?](https://docs.hyperdbg.org/using-hyperdbg/prerequisites/how-to-create-a-condition.md): This document helps you to create a condition for events
- [How to create an action?](https://docs.hyperdbg.org/using-hyperdbg/prerequisites/how-to-create-an-action.md): This document helps you to create an action for events
- [Signatures](https://docs.hyperdbg.org/using-hyperdbg/prerequisites/signatures.md): Different signatures in HyperDbg
- [User-mode Debugging](https://docs.hyperdbg.org/using-hyperdbg/user-mode-debugging.md)
- [Principles](https://docs.hyperdbg.org/using-hyperdbg/user-mode-debugging/principles.md): Principles of designing a standalone user-mode debugger
- [Examples](https://docs.hyperdbg.org/using-hyperdbg/user-mode-debugging/examples.md)
- [basics](https://docs.hyperdbg.org/using-hyperdbg/user-mode-debugging/examples/basics.md)
- [events](https://docs.hyperdbg.org/using-hyperdbg/user-mode-debugging/examples/events.md)
- [Getting Results of a System-call](https://docs.hyperdbg.org/using-hyperdbg/user-mode-debugging/examples/events/getting-results-of-a-system-call.md): Intercepting a SYSCALL and SYSRET result
- [Kernel-mode Debugging](https://docs.hyperdbg.org/using-hyperdbg/kernel-mode-debugging.md): Principles of the kernel-mode debugger
- [Principles](https://docs.hyperdbg.org/using-hyperdbg/kernel-mode-debugging/principles.md): Principles of designing a fast and reliable kernel-mode debugger
- [Examples](https://docs.hyperdbg.org/using-hyperdbg/kernel-mode-debugging/examples.md)
- [beginning](https://docs.hyperdbg.org/using-hyperdbg/kernel-mode-debugging/examples/beginning.md)
- [Connecting To HyperDbg](https://docs.hyperdbg.org/using-hyperdbg/kernel-mode-debugging/examples/beginning/connecting-to-hyperdbg.md): Connecting & Debugging Using HyperDbg
- [Configuring Symbol Server/Path](https://docs.hyperdbg.org/using-hyperdbg/kernel-mode-debugging/examples/beginning/configuring-symbol-server-path.md): Configuring symbol server and path
- [basics](https://docs.hyperdbg.org/using-hyperdbg/kernel-mode-debugging/examples/basics.md)
- [Setting Breakpoints & Stepping Instructions](https://docs.hyperdbg.org/using-hyperdbg/kernel-mode-debugging/examples/basics/setting-breakpoints-and-stepping-instructions.md): Set breakpoint, Step-over, and Step-in
- [Displaying & Editing & Searching Memory](https://docs.hyperdbg.org/using-hyperdbg/kernel-mode-debugging/examples/basics/displaying-and-editing-and-searching-memory.md): Using d\*, e\*, and s\* commands
- [Showing & Modifying Registers and Flags](https://docs.hyperdbg.org/using-hyperdbg/kernel-mode-debugging/examples/basics/showing-and-modifying-registers-and-flags.md): Using the 'r' command
- [Switching to a Specific Process or Thread](https://docs.hyperdbg.org/using-hyperdbg/kernel-mode-debugging/examples/basics/switching-to-a-specific-process-or-thread.md): Using the '.process', and the '.thread' commands
- [Mapping Data & Create Structures, and Enums From Symbols](https://docs.hyperdbg.org/using-hyperdbg/kernel-mode-debugging/examples/basics/mapping-data-and-create-structures-and-enums-from-symbols.md): Using the 'dt' and the 'struct' commands
- [events](https://docs.hyperdbg.org/using-hyperdbg/kernel-mode-debugging/examples/events.md)
- [Managing Events](https://docs.hyperdbg.org/using-hyperdbg/kernel-mode-debugging/examples/events/managing-events.md): Enable, Disable, and remove events
- [Hooking Any Function](https://docs.hyperdbg.org/using-hyperdbg/kernel-mode-debugging/examples/events/hooking-any-function.md): Description about hooking options in HyperDbg
- [Intercepting All SYSCALLs](https://docs.hyperdbg.org/using-hyperdbg/kernel-mode-debugging/examples/events/intercepting-all-syscalls.md): Getting System-Calls
- [Monitoring Accesses To Structures](https://docs.hyperdbg.org/using-hyperdbg/kernel-mode-debugging/examples/events/monitoring-accesses-to-structures.md): Finding the writers and reader of memory
- [Triggering Special Instructions](https://docs.hyperdbg.org/using-hyperdbg/kernel-mode-debugging/examples/events/triggering-special-instructions.md): A description about hooking RDTSC, RDTSCP, I/O IN & OUT, RDPMC, etc.
- [Identifying System Behavior](https://docs.hyperdbg.org/using-hyperdbg/kernel-mode-debugging/examples/events/identifying-system-behavior.md): Intercepting Exceptions, Interrupts, and MSRs
- [Software Development Kit (SDK)](https://docs.hyperdbg.org/using-hyperdbg/sdk.md): Explaining HyperDbg SDK
- [Events](https://docs.hyperdbg.org/using-hyperdbg/sdk/events.md): Details of event management
- [Conditions](https://docs.hyperdbg.org/using-hyperdbg/sdk/events/conditions.md)
- [Actions](https://docs.hyperdbg.org/using-hyperdbg/sdk/events/actions.md)
- [IOCTL](https://docs.hyperdbg.org/using-hyperdbg/sdk/ioctl.md)
- [Event Registration](https://docs.hyperdbg.org/using-hyperdbg/sdk/ioctl/event-registration.md): How to programmatically activate an event using IOCTLs?
