Stack-frames of QueueUserAPC and SleepEx
KERNELBASE! QueueUserAPC https://learn.microsoft.com/en-us/windows/win32/api/processthreadsapi/nf-processthreadsapi-queueuserapc https://repnz.github.io/posts/apc/user-apc/ KERNELBASE!QueueUserAPC KERNELBASE!__imp_RtlQueryInformationActivationContext KERNELBASE!__imp_NtQueueApcThreadEx2 -> syscall KERNELBASE!SleepEx https://learn.microsoft.com/en-us/windows/win32/api/synchapi/nf-synchapi-sleepex KERNELBASE!SleepEx KERNELBASE!__imp_RtlActivateActivationContextUnsafeFast ntdll!RtlDelayExecution ntdll!NtDelayExecution -> syscall ntdll!KiUserApcDispatch ntdll!KiUserCallForwarder ntdll!RtlDispatchAPC ntdll!RtlActivateActivationContextUnsafeFast ntdll!_guard_dispatch_icall$thunk$10345483385596137414 (APCQueue!APCProc) -> jmp APCQueue!APCProc ntdll!RtlDeactivateActivationContextUnsafeFast ntdll!RtlReleaseActivationContext ntdll!NtContinueEx (7ffc907e0c50) -> syscall -> ntdll!KiUserApcDispatch APC큐가 empty 될 때까지 반복 호출 KERNELBASE!WriteFileEx WriteFileEx function (fileapi.h) - ...