Skip to content

reimplement exeption.rs #110

@sha0coder

Description

@sha0coder
  • Support the three typical exceptions handling systems of windows (SEH, VEH and UEF)

    • SEH: structured exception handler (try/catch, stack items)

    • VEH: vectorized exception handler (API)
      ntdll!RtlAddVectoredExceptionHandler
      ntdll!RtlRemoveVectoredExceptionHandler

    • UEF: unhandled exception filter (API)
      ntdll!RtlSetUnhandledExceptionFilter
      kernelbase!SetUnhandledExceptionFilter

  • implement also the tests to trigger different types of handlers and also resume the execution:

    • exception_handler32
    • exception_handler64
  • rename emu.feh to emu.uef for the unhandled exception filter

  • implement missing winapis to schedule or free the exception handler.

note: The VEH was totally ok in theory, in the past I tested it with a chunk of guloader.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions