Skip to content

Instantly share code, notes, and snippets.

@woachk
Last active October 26, 2018 19:19
Show Gist options
  • Save woachk/98867bf2c592b10d7bb4b4c3a4a545ca to your computer and use it in GitHub Desktop.
Save woachk/98867bf2c592b10d7bb4b4c3a4a545ca to your computer and use it in GitHub Desktop.
Drawbridge
==========
Calls from the NTUM to the PAL
------------------------------
DkcallSemaphoreRelease
DkcallDebugStringPrint
DkcallSemaphoreCreate
DkcallConsoleNotifyUpdate
DkcallSemaphorePeek
DkcallConsoleCreate
DkcallVirtualMemoryAllocate
DkcallVirtualMemoryFree
DkcallConsoleEventPoll
DkcallStreamAttributesQuery
DkcallVirtualMemoryProtect
DkcallObjectClose
DkcallStreamAttributesQueryByHandle
DkcallObjectReference
DkcallSemaphoreReleaseEx
DkcallObjectsWaitAny
DkcallEventSet
DkcallNotificationEventCreate
DkcallSynchronizationEventCreate
DkcallEventPeek
DkcallAsyncPoll
DkcallEventClear
DkcallStreamOpen
DkcallAsyncCancel
DkcallStreamReadScatter
DkcallStreamRead
DkcallStreamControl
DkcallStreamWriteGather
DkcallStreamSetLength
DkcallStreamWrite
DkcallStreamDelete
DkcallStreamFlush
DkcallStreamGetEvent
DkcallStreamRename
DkcallStreamQueryAllocatedRanges
DkcallAsyncCancelPumpIoRequest
DkcallStreamEnableSparse
DkcallStreamMap
DkcallStreamMapPeBinary
DkcallStreamSetZeroData
DkcallStreamEnumerateChildren
DkcallStreamUnmap
DkcallThreadYieldExecution
DkcallThreadCreate
DkcallThreadExit
DkcallProcessCreate
DkcallThreadSetRegisters
DkcallProcessTerminate
DkcallProcessExit
DkcallProcessGetExitCode
DkcallRandomBitsRead
DkcallInstructionCacheFlush
DkcallSystemTimeQuery
DkcallStreamChangesRegister
DkcallExceptionRecordFree
DkcallStreamRangeUnlock
DkcallStreamChangesPoll
DkcallStreamRangeLock
DkcallStreamEventSelect
DkcallPacketAssociate
DkcallStreamEventEnum
DkcallPacketCreate
DkcallNetworkIoPortWakeup
DkcallNetworkIoPortPump
DkcallNetworkIoPortOpen
DRTL functions (Drawbridge runtime library)
-------------------------------------------
DrtlSetPrivateData
DrtlObjectClose
DrtlOpenStream
DrtlReadStreamSync
DrtlWriteStreamSync
DrtlRunningInKernelMode
DrtlGetSystemProcessObject
DrtlGetThreadInfo
DrtlIsDebuggerPresent
DrtlIsCriticalSectionLocked
DrtlDelayCurrentThreadExecution
DrtlDbgPrintEarlyBoot
DrtlRefreshDebuggerPresence
DrtlCreateSystemProcessInfo
DrtlGetThreadHostParameter
DrtlPrepareForHostCall
DrtlBootLibraryOs
DrtlThreadExit
Private:
DrtlpConfigureLibraryOs
DrtlpInitialize
DrtlpTranslateXmmRegister
DrtlpBindToDkPal
DrtlpSetStartModuleLocation
DrtlpInitializeTeb
DrtlpInitializeTebRegisters
DrtlpCanContinueWithInitialization
DrtlpHandleUserSharedDataAccess
DrtlpHandleException
DrtlpHandleIllegalInstruction
DrtlpHandleUserSharedDataAccess
g_DrtlHeaps (global variable)
_Note_: _This is nowhere near complete._
Misc
----
Cross_picoprocess_handle_duplication
Cross_process_protect_virtual_memory
Cross_process_thread_create
Cross_process_virtual_allocation
Functions
---------
StreamMap(Handle, Address, Flags, Prot, Offset, Length)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment