<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://xboxdevwiki.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Haxar</id>
		<title>xboxdevwiki - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="https://xboxdevwiki.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Haxar"/>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/Special:Contributions/Haxar"/>
		<updated>2026-05-23T22:46:50Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.28.0</generator>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=Main_Page/Header&amp;diff=6973</id>
		<title>Main Page/Header</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=Main_Page/Header&amp;diff=6973"/>
				<updated>2022-01-12T19:22:58Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: Former freenode is now Libera.Chat; gitter link is decommissioned&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div style=&amp;quot;background-color:#e7eef6; border: 1px solid #ccc; color:#000; margin-top: 15px; margin-bottom: 10px; padding: 8px; text-align:center;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size: 162%; border: none; margin: 0; padding:.1em;&amp;quot;&amp;gt;Welcome to XboxDevWiki.net,&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size: 95%&amp;quot;&amp;gt;a wiki dedicated to research of the original Microsoft Xbox.&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:left;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;hr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
XboxDevWiki is an effort to document the inner workings of the original Microsoft Xbox and Xbox-based SEGA Chihiro.&lt;br /&gt;
We not only care about technical details about those platforms, but also how to develop homebrew and emulate them.&lt;br /&gt;
&lt;br /&gt;
We are not interested in documenting the Xbox 360, Xbox One or any other console at this point.&lt;br /&gt;
&lt;br /&gt;
Also check out the [https://github.com/xboxdev XboxDev GitHub organization] where we provide tools and code related to Xbox research and development.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;hr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Want to help? Contact us!'''&lt;br /&gt;
&lt;br /&gt;
This wiki is the place for all remaining Xbox projects to come together.&lt;br /&gt;
Please come chat with us in [https://discord.gg/WxJPPyz XboxDev on Discord] or in [irc://irc.libera.chat/xqemu #xqemu on Libera.Chat IRC] ([https://web.libera.chat/#xqemu Webchat]).&lt;br /&gt;
&lt;br /&gt;
You'll also get the details for wiki account creation there.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=LPC_Debug_Port&amp;diff=6799</id>
		<title>LPC Debug Port</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=LPC_Debug_Port&amp;diff=6799"/>
				<updated>2019-10-26T18:47:32Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: Embed LFRAME# reconnection images from external links&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;float:right;margin-left:10px;&amp;quot;&lt;br /&gt;
|+ Pin Layout&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align:right&amp;quot; | Name !! style=&amp;quot;text-align:right&amp;quot; | Pin !! Pin !! Name&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right&amp;quot; | SERIRQ (v1.0) || style=&amp;quot;text-align:right&amp;quot; | 16 || 15 || 3.3V&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right&amp;quot; | SDA || style=&amp;quot;text-align:right&amp;quot; | 14 || 13 || SCL&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right&amp;quot; | GND || style=&amp;quot;text-align:right&amp;quot; | 12 || 11 || LAD0&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right&amp;quot; | LAD1 || style=&amp;quot;text-align:right&amp;quot; | 10 || 9 || 3.3V&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right&amp;quot; | LAD2 || style=&amp;quot;text-align:right&amp;quot; | 8 || 7 || LAD3&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right&amp;quot; | 5V || style=&amp;quot;text-align:right&amp;quot; | 6 || 5 || LRESET#&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right&amp;quot; | PWR (v1.6) || style=&amp;quot;text-align:right&amp;quot; | 4 || 3 || LFRAME#&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right&amp;quot; | GND || style=&amp;quot;text-align:right&amp;quot; | 2 || 1 || LCLK&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The '''LPC Debug Port''' is an unpopulated 2x8 2.54mm (0.1&amp;quot;) footprint on the Xbox motherboard that provides access to the system's [https://en.wikipedia.org/wiki/Low_Pin_Count Low Pin Count] Bus, as well as the [[SMBus]]. Throughout the Xbox's lifetime, Microsoft modified the LPC port in an attempt to prevent modding and, in some cases, it must be &amp;quot;rebuilt&amp;quot; to restore the port's full functionality. Rebuilding the LPC debug port involves soldering wires between it and very small vias on the motherboard.&lt;br /&gt;
&lt;br /&gt;
The LPC bus is controlled by the [[MCPX|MCPX southbridge]], which conforms to the Intel Low Pin Count Specification 1.0.&lt;br /&gt;
&lt;br /&gt;
== Pins ==&lt;br /&gt;
&lt;br /&gt;
* '''3.3V''' (15 &amp;amp; 9) - Provides 3.3V while the Xbox is powered on. On 1.6 hardware, pin 9 is disconnected. Reconnect to pin 15 to restore the supply voltage.&lt;br /&gt;
* '''SDA''' (14) - [[SMBus]] data and address signal.&lt;br /&gt;
* '''SCL''' (13) - [[SMBus]] clock signal.&lt;br /&gt;
* '''GND''' (12 &amp;amp; 2) - Ground.&lt;br /&gt;
* '''LAD[3:0]''' (11, 10, 8, 7) - LPC address and data signals.&lt;br /&gt;
* '''5V''' (6) - Provides 5V while the Xbox is powered on or v1.6 always on when AC plugged in.&lt;br /&gt;
* '''LRESET#''' (5) - LPC reset signal; same as PCIRST#.&lt;br /&gt;
* '''PWR''' (4) - On pre-1.6 hardware, this pin does not physically exist. On 1.6 hardware, this pin is connected to the power button. Shorting it to ground will turn the Xbox on and off.&lt;br /&gt;
* '''LFRAME#''' (3) - LPC start-of-cycle signal. On 1.3-1.5 hardware, this pin is disconnected. See [[LPC_Debug_Port#LFRAME.23_reconnect|LFRAME# reconnect]] for a possible reconnection.&lt;br /&gt;
* '''LCLK''' (1) - 33MHz LPC clock signal; same as PCICLK.&lt;br /&gt;
&lt;br /&gt;
The debug port lacks the optional LDRQ#, SERIRQ, CLKRUN#, PME#, LPCPD#, and LSMI# signals. This means peripherals connected to the debug port cannot utilize interrupt, DMA, bus mastering, or power management features.&lt;br /&gt;
&lt;br /&gt;
== LFRAME# reconnect ==&lt;br /&gt;
&lt;br /&gt;
[[File:LFRAME-for-v1_3-and-up.png|thumb|200px|Disconnected LFRAME# can be reconstructed with via found on all [[MCPX]] revisions]]&lt;br /&gt;
&lt;br /&gt;
It is possible to reconnect the LFRAME# signal to the LPC port on 1.3-1.5 hardware by tapping the MCPX soldermask and soldering a jumper wire from the via to the disconnected pin on the LPC port.&lt;br /&gt;
&lt;br /&gt;
Result should look similar to this:&lt;br /&gt;
&lt;br /&gt;
[[File:Dreimer-lframe-v1-3-reconnect.jpg|500px|Image provided by dreimer]]&lt;br /&gt;
&lt;br /&gt;
In the end, we can gain kernel debug output from Super I/O serial again:&lt;br /&gt;
&lt;br /&gt;
[[File:Dreimer-lframe-v1-3-windbg.png|500px|Image provided by dreimer]]&lt;br /&gt;
&lt;br /&gt;
This reconnection was tested on 1.3 hardware, and should also work with the later 1.4 and 1.5 revisions.&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
* [https://web.archive.org/web/20140805105234/http://dwl.xbox-scene.com/~xbox/xbox-scene/tutorials/LFRAME-for-v1_3-and-up.pdf LFRAME-for-v1_3-and-up.pdf] An old manual from Xbox-Scene that explains how to reconnect '''LFRAME#''' (3) for a Cheapmod. This we don't care about, but is what we want for [[Kernel_Debug|kernel debugging]] via [[Super_I/O|Super I/O]]. Thanks to dreimer for finding and testing this documentation.&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=File:Dreimer-lframe-v1-3-windbg.png&amp;diff=6798</id>
		<title>File:Dreimer-lframe-v1-3-windbg.png</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=File:Dreimer-lframe-v1-3-windbg.png&amp;diff=6798"/>
				<updated>2019-10-26T18:34:18Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: Image provided by dreimer&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Image provided by dreimer&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=File:Dreimer-lframe-v1-3-reconnect.jpg&amp;diff=6797</id>
		<title>File:Dreimer-lframe-v1-3-reconnect.jpg</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=File:Dreimer-lframe-v1-3-reconnect.jpg&amp;diff=6797"/>
				<updated>2019-10-26T18:33:31Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: Image provided by dreimer&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Image provided by dreimer&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=File:LFRAME-for-v1_3-and-up.png&amp;diff=6796</id>
		<title>File:LFRAME-for-v1 3-and-up.png</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=File:LFRAME-for-v1_3-and-up.png&amp;diff=6796"/>
				<updated>2019-10-26T18:29:16Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: Image extracted from LFRAME-for-v1_3-and-up.pdf&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Image extracted from LFRAME-for-v1_3-and-up.pdf&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=LFRAME&amp;diff=6765</id>
		<title>LFRAME</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=LFRAME&amp;diff=6765"/>
				<updated>2019-08-04T22:16:39Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: Redirected page to LPC_Debug_Port&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[LPC_Debug_Port#LFRAME.23_reconnect]]&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=LPC_Debug_Port&amp;diff=6764</id>
		<title>LPC Debug Port</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=LPC_Debug_Port&amp;diff=6764"/>
				<updated>2019-08-04T22:13:46Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: Move LFRAME# reconnection page to its own section&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;float:right;margin-left:10px;&amp;quot;&lt;br /&gt;
|+ Pin Layout&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align:right&amp;quot; | Name !! style=&amp;quot;text-align:right&amp;quot; | Pin !! Pin !! Name&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right&amp;quot; | SERIRQ (v1.0) || style=&amp;quot;text-align:right&amp;quot; | 16 || 15 || 3.3V&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right&amp;quot; | SDA || style=&amp;quot;text-align:right&amp;quot; | 14 || 13 || SCL&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right&amp;quot; | GND || style=&amp;quot;text-align:right&amp;quot; | 12 || 11 || LAD0&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right&amp;quot; | LAD1 || style=&amp;quot;text-align:right&amp;quot; | 10 || 9 || 3.3V&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right&amp;quot; | LAD2 || style=&amp;quot;text-align:right&amp;quot; | 8 || 7 || LAD3&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right&amp;quot; | 5V || style=&amp;quot;text-align:right&amp;quot; | 6 || 5 || LRESET#&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right&amp;quot; | PWR (v1.6) || style=&amp;quot;text-align:right&amp;quot; | 4 || 3 || LFRAME#&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right&amp;quot; | GND || style=&amp;quot;text-align:right&amp;quot; | 2 || 1 || LCLK&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The '''LPC Debug Port''' is an unpopulated 2x8 2.54mm (0.1&amp;quot;) footprint on the Xbox motherboard that provides access to the system's [https://en.wikipedia.org/wiki/Low_Pin_Count Low Pin Count] Bus, as well as the [[SMBus]]. Throughout the Xbox's lifetime, Microsoft modified the LPC port in an attempt to prevent modding and, in some cases, it must be &amp;quot;rebuilt&amp;quot; to restore the port's full functionality. Rebuilding the LPC debug port involves soldering wires between it and very small vias on the motherboard.&lt;br /&gt;
&lt;br /&gt;
The LPC bus is controlled by the [[MCPX|MCPX southbridge]], which conforms to the Intel Low Pin Count Specification 1.0.&lt;br /&gt;
&lt;br /&gt;
== Pins ==&lt;br /&gt;
&lt;br /&gt;
* '''3.3V''' (15 &amp;amp; 9) - Provides 3.3V while the Xbox is powered on. On 1.6 hardware, pin 9 is disconnected. Reconnect to pin 15 to restore the supply voltage.&lt;br /&gt;
* '''SDA''' (14) - [[SMBus]] data and address signal.&lt;br /&gt;
* '''SCL''' (13) - [[SMBus]] clock signal.&lt;br /&gt;
* '''GND''' (12 &amp;amp; 2) - Ground.&lt;br /&gt;
* '''LAD[3:0]''' (11, 10, 8, 7) - LPC address and data signals.&lt;br /&gt;
* '''5V''' (6) - Provides 5V while the Xbox is powered on or v1.6 always on when AC plugged in.&lt;br /&gt;
* '''LRESET#''' (5) - LPC reset signal; same as PCIRST#.&lt;br /&gt;
* '''PWR''' (4) - On pre-1.6 hardware, this pin does not physically exist. On 1.6 hardware, this pin is connected to the power button. Shorting it to ground will turn the Xbox on and off.&lt;br /&gt;
* '''LFRAME#''' (3) - LPC start-of-cycle signal. On 1.3-1.5 hardware, this pin is disconnected. See [[LPC_Debug_Port#LFRAME.23_reconnect|LFRAME# reconnect]] for a possible reconnection.&lt;br /&gt;
* '''LCLK''' (1) - 33MHz LPC clock signal; same as PCICLK.&lt;br /&gt;
&lt;br /&gt;
The debug port lacks the optional LDRQ#, SERIRQ, CLKRUN#, PME#, LPCPD#, and LSMI# signals. This means peripherals connected to the debug port cannot utilize interrupt, DMA, bus mastering, or power management features.&lt;br /&gt;
&lt;br /&gt;
== LFRAME# reconnect ==&lt;br /&gt;
&lt;br /&gt;
It is possible to reconnect this pin on 1.3-1.5 hardware by tapping the MCPX soldermask and soldering a jumper wire to the disconnected pin on the LPC port.&lt;br /&gt;
&lt;br /&gt;
Result should look similar to this in the end: [https://photos.app.goo.gl/wUvAwm3KS3ePSnYj8] (Image provided by dreimer)&lt;br /&gt;
&lt;br /&gt;
In the end, we can gain kernel debug output from Super I/O serial again: [https://cdn.discordapp.com/attachments/603568167255801861/607540322871803904/unknown.png] (Image provided by dreimer)&lt;br /&gt;
&lt;br /&gt;
This reconnection was tested on 1.3 hardware, and should work on 1.4 and 1.5 revisions, as the MCPX is the same.&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
* [https://web.archive.org/web/20140805105234/http://dwl.xbox-scene.com/~xbox/xbox-scene/tutorials/LFRAME-for-v1_3-and-up.pdf LFRAME-for-v1_3-and-up.pdf] An old manual from Xbox-Scene that explains how to reconnect '''LFRAME#''' (3) for a Cheapmod. This we don't care about, but is what we want for [[Kernel_Debug|kernel debugging]] via [[Super_I/O|Super I/O]]. Thanks to dreimer for finding and testing this documentation.&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=Main_Page&amp;diff=6763</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=Main_Page&amp;diff=6763"/>
				<updated>2019-08-04T21:05:00Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: Added LPC bus under MCPX southbridge&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{:Main Page/Header}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&lt;br /&gt;
== Hardware ==&lt;br /&gt;
&lt;br /&gt;
* [[Chihiro]]&lt;br /&gt;
* [[Xbox]]&lt;br /&gt;
&lt;br /&gt;
* [[Hardware Revisions]]&lt;br /&gt;
* [[Motherboard]]&lt;br /&gt;
* [[CPU]]&lt;br /&gt;
* [[NV2A]]&lt;br /&gt;
** [[NV2A/Vertex attributes]]&lt;br /&gt;
** [[NV2A/Fixed Function Pipeline]]&lt;br /&gt;
** [[NV2A/Vertex Shader]]&lt;br /&gt;
** [[NV2A/Pixel Combiner]]&lt;br /&gt;
** [[NV2A/Surface Formats]]&lt;br /&gt;
* [[Memory]]&lt;br /&gt;
* [[Flash ROM]]&lt;br /&gt;
* [[MCPX]]&lt;br /&gt;
** [[LPC_Debug_Port|LPC]]&lt;br /&gt;
** [[APU]]&lt;br /&gt;
*** [[DSP]]&lt;br /&gt;
** [[ACI]]&lt;br /&gt;
** [[Network]]&lt;br /&gt;
* [[PCI]]&lt;br /&gt;
* [[SMBus]]&lt;br /&gt;
** [[EEPROM]]&lt;br /&gt;
** [[SMC]]&lt;br /&gt;
** [[Video Encoder]]&lt;br /&gt;
*** [[AV Cables]]&lt;br /&gt;
* [[DVD Drive]]&lt;br /&gt;
** [[Xbox Game Disc]]&lt;br /&gt;
* [[Hard Drive]]&lt;br /&gt;
** [[Config Sector]]&lt;br /&gt;
* [[USB]]&lt;br /&gt;
** [[Xbox Input Devices]]&lt;br /&gt;
** [[Xbox Memory Unit]]&lt;br /&gt;
** [[Xbox Live Communicator]] &amp;lt;!-- Maybe rename this to microphones later? --&amp;gt;&lt;br /&gt;
** [[Xbox DVD Movie Playback Kit]]&lt;br /&gt;
* [[Power Supply]]&lt;br /&gt;
* [[Development Kits]]&lt;br /&gt;
** [[Super I/O]]&lt;br /&gt;
** [[DVD Emulator]]&lt;br /&gt;
* [[Manufacturing Process]]&lt;br /&gt;
&lt;br /&gt;
== System Software ==&lt;br /&gt;
* [[MCPX ROM]]&lt;br /&gt;
* [[BIOS]] / [[Kernel]]&lt;br /&gt;
** [[Boot Process]]&lt;br /&gt;
** [[XBE]] (Executable file format)&lt;br /&gt;
* [[FATX]] (Filesystem)&lt;br /&gt;
* [[Xbox ADPCM]]&lt;br /&gt;
* [[Dashboard]]&lt;br /&gt;
** [[Soundtracks]]&lt;br /&gt;
* [[Exploits]]&lt;br /&gt;
&lt;br /&gt;
== Development Kits and Tools ==&lt;br /&gt;
* [https://github.com/xqemu/nxdk nxdk (New Xbox Development Kit)]&lt;br /&gt;
* [[OpenXDK]]&lt;br /&gt;
* [[Microsoft XDK]]&lt;br /&gt;
** [[Xbox Title Libraries]]&lt;br /&gt;
** [[Direct3D]]&lt;br /&gt;
** [[DirectSound]]&lt;br /&gt;
** [[System Link]]&lt;br /&gt;
** [[Xbox Live]]&lt;br /&gt;
** [[Xbox Debug Monitor]]&lt;br /&gt;
** [[Xbox Neighborhood]]&lt;br /&gt;
** [[Kernel_Debug|Xbox Kernel Debugging]]&lt;br /&gt;
&lt;br /&gt;
== Games ==&lt;br /&gt;
* [[:Category:Games|Games]]&lt;br /&gt;
* [[Engine List]]&lt;br /&gt;
&lt;br /&gt;
== Emulation ==&lt;br /&gt;
* [[Emulators]]&lt;br /&gt;
** [[XQEMU]]&lt;br /&gt;
** [[Xbox 360 Backward Compatibility]]&lt;br /&gt;
&lt;br /&gt;
== Historical Pages ==&lt;br /&gt;
(archived from the xbox-linux wiki)&lt;br /&gt;
* [[Xbox Hard Drive Locking Mechanism]]&lt;br /&gt;
* [[Xbox Savegame System]]&lt;br /&gt;
* [[Xbox Hardware Overview]]&lt;br /&gt;
* [[Xbox Hard Disk Technical_Details]]&lt;br /&gt;
* [[Xbox Hard Disk Partitioning]]&lt;br /&gt;
* [[Xbox Manufacturing Process]]&lt;br /&gt;
* [[The Hidden Boot Code of the Xbox]]&lt;br /&gt;
* [[PIC]]&lt;br /&gt;
* [[SMBus]]&lt;br /&gt;
* [[NForce]]&lt;br /&gt;
* [[17 Mistakes Microsoft Made in the Xbox Security System]]&lt;br /&gt;
* [[Porting an Operating System to the Xbox HOWTO]]&lt;br /&gt;
&lt;br /&gt;
== Other ==&lt;br /&gt;
* [[Patents]]&lt;br /&gt;
* [[Resources]]&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=Main_Page&amp;diff=6762</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=Main_Page&amp;diff=6762"/>
				<updated>2019-08-04T20:55:06Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: nit&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{:Main Page/Header}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&lt;br /&gt;
== Hardware ==&lt;br /&gt;
&lt;br /&gt;
* [[Chihiro]]&lt;br /&gt;
* [[Xbox]]&lt;br /&gt;
&lt;br /&gt;
* [[Hardware Revisions]]&lt;br /&gt;
* [[Motherboard]]&lt;br /&gt;
* [[CPU]]&lt;br /&gt;
* [[NV2A]]&lt;br /&gt;
** [[NV2A/Vertex attributes]]&lt;br /&gt;
** [[NV2A/Fixed Function Pipeline]]&lt;br /&gt;
** [[NV2A/Vertex Shader]]&lt;br /&gt;
** [[NV2A/Pixel Combiner]]&lt;br /&gt;
** [[NV2A/Surface Formats]]&lt;br /&gt;
* [[Memory]]&lt;br /&gt;
* [[Flash ROM]]&lt;br /&gt;
* [[MCPX]]&lt;br /&gt;
** [[APU]]&lt;br /&gt;
*** [[DSP]]&lt;br /&gt;
** [[ACI]]&lt;br /&gt;
** [[Network]]&lt;br /&gt;
* [[PCI]]&lt;br /&gt;
* [[SMBus]]&lt;br /&gt;
** [[EEPROM]]&lt;br /&gt;
** [[SMC]]&lt;br /&gt;
** [[Video Encoder]]&lt;br /&gt;
*** [[AV Cables]]&lt;br /&gt;
* [[DVD Drive]]&lt;br /&gt;
** [[Xbox Game Disc]]&lt;br /&gt;
* [[Hard Drive]]&lt;br /&gt;
** [[Config Sector]]&lt;br /&gt;
* [[USB]]&lt;br /&gt;
** [[Xbox Input Devices]]&lt;br /&gt;
** [[Xbox Memory Unit]]&lt;br /&gt;
** [[Xbox Live Communicator]] &amp;lt;!-- Maybe rename this to microphones later? --&amp;gt;&lt;br /&gt;
** [[Xbox DVD Movie Playback Kit]]&lt;br /&gt;
* [[Power Supply]]&lt;br /&gt;
* [[Development Kits]]&lt;br /&gt;
** [[Super I/O]]&lt;br /&gt;
** [[DVD Emulator]]&lt;br /&gt;
* [[Manufacturing Process]]&lt;br /&gt;
&lt;br /&gt;
== System Software ==&lt;br /&gt;
* [[MCPX ROM]]&lt;br /&gt;
* [[BIOS]] / [[Kernel]]&lt;br /&gt;
** [[Boot Process]]&lt;br /&gt;
** [[XBE]] (Executable file format)&lt;br /&gt;
* [[FATX]] (Filesystem)&lt;br /&gt;
* [[Xbox ADPCM]]&lt;br /&gt;
* [[Dashboard]]&lt;br /&gt;
** [[Soundtracks]]&lt;br /&gt;
* [[Exploits]]&lt;br /&gt;
&lt;br /&gt;
== Development Kits and Tools ==&lt;br /&gt;
* [https://github.com/xqemu/nxdk nxdk (New Xbox Development Kit)]&lt;br /&gt;
* [[OpenXDK]]&lt;br /&gt;
* [[Microsoft XDK]]&lt;br /&gt;
** [[Xbox Title Libraries]]&lt;br /&gt;
** [[Direct3D]]&lt;br /&gt;
** [[DirectSound]]&lt;br /&gt;
** [[System Link]]&lt;br /&gt;
** [[Xbox Live]]&lt;br /&gt;
** [[Xbox Debug Monitor]]&lt;br /&gt;
** [[Xbox Neighborhood]]&lt;br /&gt;
** [[Kernel_Debug|Xbox Kernel Debugging]]&lt;br /&gt;
&lt;br /&gt;
== Games ==&lt;br /&gt;
* [[:Category:Games|Games]]&lt;br /&gt;
* [[Engine List]]&lt;br /&gt;
&lt;br /&gt;
== Emulation ==&lt;br /&gt;
* [[Emulators]]&lt;br /&gt;
** [[XQEMU]]&lt;br /&gt;
** [[Xbox 360 Backward Compatibility]]&lt;br /&gt;
&lt;br /&gt;
== Historical Pages ==&lt;br /&gt;
(archived from the xbox-linux wiki)&lt;br /&gt;
* [[Xbox Hard Drive Locking Mechanism]]&lt;br /&gt;
* [[Xbox Savegame System]]&lt;br /&gt;
* [[Xbox Hardware Overview]]&lt;br /&gt;
* [[Xbox Hard Disk Technical_Details]]&lt;br /&gt;
* [[Xbox Hard Disk Partitioning]]&lt;br /&gt;
* [[Xbox Manufacturing Process]]&lt;br /&gt;
* [[The Hidden Boot Code of the Xbox]]&lt;br /&gt;
* [[PIC]]&lt;br /&gt;
* [[SMBus]]&lt;br /&gt;
* [[NForce]]&lt;br /&gt;
* [[17 Mistakes Microsoft Made in the Xbox Security System]]&lt;br /&gt;
* [[Porting an Operating System to the Xbox HOWTO]]&lt;br /&gt;
&lt;br /&gt;
== Other ==&lt;br /&gt;
* [[Patents]]&lt;br /&gt;
* [[Resources]]&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=APU&amp;diff=6743</id>
		<title>APU</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=APU&amp;diff=6743"/>
				<updated>2019-07-14T01:21:03Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: Include APU audio frame duration (0.6ms / 666.6us)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The [[MCPX]] contains an APU (Audio Processing Unit).&lt;br /&gt;
&lt;br /&gt;
The APU consists of 3 main components for audio-processing:&lt;br /&gt;
&lt;br /&gt;
* VP: A fixed-function block, that generates 32 channel mono audio from voices; the audio is output to the GP MIXBUF.&lt;br /&gt;
* GP: A programmable DSP, it is intended for general-purpose audio processing (programmable audio effects for example).&lt;br /&gt;
* EP: A programmable DSP, it is intended for audio encoding (5.1 AC3 encoding for example).&lt;br /&gt;
&lt;br /&gt;
VP and GP are connected by the MIXBUF, but GP and EP are entirely independent, and no special-purpose memory area connects them.&lt;br /&gt;
Therefore, the  communication between the GP and EP typically happens through programmable DMA transfers (via FIFO or scratch memory).&lt;br /&gt;
&lt;br /&gt;
The GP and EP are based on the same DSP architecture, run at the same clockrate, and have the same functionality (the EP has less memory, and no direct access to the MIXBUF). So, theoretically, nothing prevents the GP from doing EP tasks or vice versa{{FIXME|reason=I have not seen counter-arguments}}.&lt;br /&gt;
&lt;br /&gt;
The APU does only audio-processing but no audio output. Hence, one of the DSPs typically uses programmable DMA to transfer the finished audio to system memory, where it can be read by other components (such as AC97).&lt;br /&gt;
&lt;br /&gt;
All audio processing by the APU is typically done in 24bit PCM.&lt;br /&gt;
An APU audio frame is 32 samples long with a duration of 0.{{overline|6}}ms at 48000Hz, giving a total of 1500 frames per second.&lt;br /&gt;
The MIXBUF therefore holds 1024 samples (32 channels * 32 samples/channel).&lt;br /&gt;
&lt;br /&gt;
=== Glossary ===&lt;br /&gt;
&lt;br /&gt;
* PRD = Physical Resource Descriptor (Same thing as SGE?!)&lt;br /&gt;
* SGE = Scatter Gather Entry&lt;br /&gt;
* SSL = Stream Segment List&lt;br /&gt;
&lt;br /&gt;
== Frontend Engine (FE) ==&lt;br /&gt;
&lt;br /&gt;
== Voice Processor (VP) ==&lt;br /&gt;
&lt;br /&gt;
A powerful voice processor. There can be up to 256 voices [http://www.gamasutra.com/blogs/BrianSchmidt/20111117/90625/Designing_the_Boot_Sound_for_the_Original_Xbox.php][https://web.archive.org/web/20010410003338/http://www.nvnews.net/previews/mcpx/mcpx.shtml] and 64[http://www.nvidia.com/object/IO_20010530_6177.html] of those can be 3D.&lt;br /&gt;
&lt;br /&gt;
Per-voice settings:&lt;br /&gt;
* Input type (8bit, 16bit, 24bit, ADPCM)&lt;br /&gt;
* 8 target bins, each with controllable volume for this voice&lt;br /&gt;
* [[wikipedia:Head-related transfer function|Head-related transfer function]] (HRTF)&lt;br /&gt;
* [[wikipedia:Low-frequency oscillation|Low-frequency oscillation]] (LFO)&lt;br /&gt;
* Pitch (~187.5 Hz to ~12285920.7 Hz)&lt;br /&gt;
* Optionally one of the following filters modes:&lt;br /&gt;
** For 2D Mono:&lt;br /&gt;
*** DLS2 Low-Pass&lt;br /&gt;
*** Parametric Equalizer&lt;br /&gt;
*** DLS2 Low-Pass + Parametric Equalizer&lt;br /&gt;
** For 2D Stereo:&lt;br /&gt;
*** DLS2 Low-Pass&lt;br /&gt;
*** Parametric Equalizer&lt;br /&gt;
** For 3D:&lt;br /&gt;
*** DLS2 Low-Pass + I3DL2 Reverb&lt;br /&gt;
*** Parametric Equalizer + I3DL2 Reverb&lt;br /&gt;
*** I3DL2 Reverb&lt;br /&gt;
* 2 Envelopes (DAHDSR: Delay, Attack, Hold, Decay, Sustain, Release)&lt;br /&gt;
** Amplitude Envelope&lt;br /&gt;
** Pitch / DLS2 Low-Pass Cutoff Envelope&lt;br /&gt;
* Tracking of certain parameters&lt;br /&gt;
** Volume&lt;br /&gt;
** LFO parameters&lt;br /&gt;
** DLS2 Low-Pass parameters?{{FIXME|reason=Not 100% sure, also not sure if this also works for the other filters}}&lt;br /&gt;
&lt;br /&gt;
There are 32 bins which these voices will be mixed into.&lt;br /&gt;
&lt;br /&gt;
=== Related APU memory ===&lt;br /&gt;
&lt;br /&gt;
* VPV = VP Voices&lt;br /&gt;
* VPHT = VP HRTF Target&lt;br /&gt;
* VPHC = VP HRTF Current&lt;br /&gt;
* VPSGE = VP SGEs&lt;br /&gt;
* VPSSL = VP SSLs&lt;br /&gt;
&lt;br /&gt;
=== Voice lists ===&lt;br /&gt;
&lt;br /&gt;
The voices are kept in a single-linked list. There are 3 voice lists:&lt;br /&gt;
&lt;br /&gt;
* 2D&lt;br /&gt;
* 3D&lt;br /&gt;
* MP (Multipass?)&lt;br /&gt;
&lt;br /&gt;
=== Voice structure ===&lt;br /&gt;
&lt;br /&gt;
This is 0x80 bytes&lt;br /&gt;
&lt;br /&gt;
==== Pitch calculation ====&lt;br /&gt;
&lt;br /&gt;
The 16 bit signed pitch value (''p'') can be converted to and from a unsigned frequency in Hz (''f'') using the following formulas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
p = 4096 * log2(f / 48000)&lt;br /&gt;
f = pow2(p / 4096) * 48000&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== LFO ===&lt;br /&gt;
&lt;br /&gt;
=== Tracking ===&lt;br /&gt;
&lt;br /&gt;
Some of the parameters of the VP can be controlled by setting timing parameters.&lt;br /&gt;
New values will then be slowly be adapted over time.&lt;br /&gt;
{{FIXME}}&lt;br /&gt;
&lt;br /&gt;
=== Envelopes ===&lt;br /&gt;
&lt;br /&gt;
There are seperate segments of the envelopes, 2 registers (CUR and COUNT) per envelope keeps track of this and control the envelopes level (LVL):&lt;br /&gt;
&lt;br /&gt;
* 0: Off = Envelope is not used&lt;br /&gt;
* 1: Delay = Time where envelope stays at 0% until attack&lt;br /&gt;
** COUNT register counts down from DELAYTIME.&lt;br /&gt;
* 2: Attack = Rate at which the envelope goes from 0 to 100%&lt;br /&gt;
** COUNT register counts up to ATTACKRATE.&lt;br /&gt;
** LVL seems to be linear.&lt;br /&gt;
* 3: Hold = Time the envelope stays at 100%&lt;br /&gt;
** COUNT register counts down from HOLDTIME.&lt;br /&gt;
* 4: Decay = Rate at which the envelope goes from 100% to 0%&lt;br /&gt;
** COUNT register counts down from DECAYRATE.&lt;br /&gt;
** The LVL is not linear, it's a curve which drops steep at first and then slowly becomes level[https://docs.google.com/spreadsheets/d/1fNsfkvBfnlRQ9XplNnTgmh8jBaWJ56bvh2AVWn8B_k0/edit?usp=sharing]&lt;br /&gt;
** The best approximation I could come up with so far is: &amp;lt;code&amp;gt;255*pow(0.99988799,(DECAYRATE*16-COUNT)*4096/DECAYRATE)&amp;lt;/code&amp;gt;.&lt;br /&gt;
** When the output level (not LVL!) reaches the sustain level the decay section is over (In my example above, this happens when the output level is less than 0.2 away from the sustain level; so if sustain is 0, the voice would switch to the sustain segment when a value below 0.2 is reached)&lt;br /&gt;
** Writes to the LVL register are ignored&lt;br /&gt;
** Writes to count (any value?) impact the LVL&lt;br /&gt;
** If the COUNT is larger than the decayrate the envelope will switch to the sustain state&lt;br /&gt;
** If the COUNT results in a smaller output level than the sustainlevel the envelope will switch to the sustain state&lt;br /&gt;
* 5: Sustain = Level at which the envelope stays while the voice is being played&lt;br /&gt;
** COUNT register writes are ignored, it will stay at 0&lt;br /&gt;
** LVL register writes are ignored, it will stay at the current sustain level&lt;br /&gt;
* 6: Release = Rate at which the envelope goes from current level to 0%&lt;br /&gt;
** Can start at any time{{FIXME|reason=the voice state PERSIST has to do with this. Voice is released using NV1BA0_PIO_VOICE_RELEASE ?}}&lt;br /&gt;
** COUNT register starts at RELEASERATE, regardless of the current sustain level&lt;br /&gt;
** COUNT register counts down{{FIXME|reason=What happens when it reaches 0? DirectSound seems to turn off voice - or is the hw doing that?}}&lt;br /&gt;
** LVL is not updated during this phase (it will keep it's previous value)&lt;br /&gt;
** Writes to LVL have an impact on the output volume&lt;br /&gt;
** If the COUNT register is higher than the releaserate, the output will be silent and LVL will drop to zero&lt;br /&gt;
** The actual output level is probably determined like: &amp;lt;code&amp;gt;int(COUNT * LVL / (RELEASERATE * 16))&amp;lt;/code&amp;gt;{{FIXME|reason=Test..}}{{FIXME|reason=Unknown output shape}}&lt;br /&gt;
** COUNT will keep counting until 0 even after the output level has hit 0&lt;br /&gt;
* 7: Force Release = Unknown still{{FIXME}}&lt;br /&gt;
** Seems to happen during invalid conditions? Happened to me when modifying ebo during playback{{citation needed|reason=Need to find out why this happens}}&lt;br /&gt;
** LVL and COUNT seem to be ignored during this, but writes go through? Output level seems to stay at 100% ? (I only got repeating 32 samples during this and the whole Xbox crashed shortly after)&lt;br /&gt;
&lt;br /&gt;
All durations are described using unsigned 12-bit times/rates. The level of sustain is stored unsigned in 8-bit.&lt;br /&gt;
The COUNT register is stored in unsigned 16-bit.&lt;br /&gt;
&lt;br /&gt;
The 12-bit times/rates are multiplied by 16 when loading them into the 16-bit COUNT register.&lt;br /&gt;
The COUNT register counts at 1500 Hz[https://docs.google.com/spreadsheets/d/11jxeJ9aey_TVkyiMmmd6SKuow4j4GR9E9fRZ6HXc2WU/edit#gid=396423867].&lt;br /&gt;
A unit in the COUNT register is therefore 0.{{overline|6}} ms.&lt;br /&gt;
&lt;br /&gt;
The 12-bit values of the envelope sections are given in units of 0.{{overline|6}} ms * 16 = 10.{{overline|6}} ms.&lt;br /&gt;
This can also be written as 512 / (48000 Hz) = 10.{{overline|6}} ms.&lt;br /&gt;
The maximum length of an envelope section is therefore 4095 * 10.{{overline|6}} ms = 43.68 seconds.&lt;br /&gt;
&lt;br /&gt;
As the envelope counter runs at a fixed clock speed, it is independent of the voice pitch and duration.&lt;br /&gt;
&lt;br /&gt;
If the Amplitude Envelope COUNT hits 0 during release, DirectSound{{FIXME|reason=Is this a hardware thing? I guess it makes sense..}} already deletes the voice, regardless of the Filter Envelope.&lt;br /&gt;
&lt;br /&gt;
The sustain level can be changed during playback.&lt;br /&gt;
Also the attack register can be changed to a lower value while the counter is counting up, however, if the COUNTER does not compare equal to the set value, it will keep counting, even after an overflow. It will not leave the attack phase and keep counting until it sees value COUNTER / 16 in the attack register. If the attack register is set to a higher value while counting, the volume is going down again.&lt;br /&gt;
Also, if the attack register value is zero while counting, there won't be any audio output during the attack phase.&lt;br /&gt;
This indicates that the COUNT register is used to calculate the actual value from the current rates.&lt;br /&gt;
&lt;br /&gt;
The initial state of each envelope can be controlled by the NV1BA0_PIO_VOICE_ON command. It can either be: DISABLE, DELAY, ATTACK or HOLD.&lt;br /&gt;
&lt;br /&gt;
==== Amplitude Envelope ====&lt;br /&gt;
&lt;br /&gt;
The amplitude envelope is mixed with the volume during mixing. The volume registers are not modified.&lt;br /&gt;
{{FIXME|reason=Is it multiplied on? Is it added? subtracted?}}&lt;br /&gt;
It is not yet known how many bits of the envelope state are used.&lt;br /&gt;
&lt;br /&gt;
==== Filter Envelope ====&lt;br /&gt;
&lt;br /&gt;
{{FIXME|reason=Research}}&lt;br /&gt;
&lt;br /&gt;
The pitch scale is multiplied with the current envelope state and added to the current pitch during mixing. The pitch registers are not modified.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
f = 2^((signed_pitch+signed_pitch_mod*32*envelope_state_float)/4096)*48000 # envelope_state_float: [0, 1]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is not yet known how many bits of the envelope state are used.&lt;br /&gt;
&lt;br /&gt;
=== Filters ===&lt;br /&gt;
&lt;br /&gt;
==== DLS2 ====&lt;br /&gt;
&lt;br /&gt;
Formulas from DirectSound&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
FreqToHardwareCoeff(frequency): # Input in Hz&lt;br /&gt;
  if (frequency &amp;lt; 30) { return 0x8000 }&lt;br /&gt;
  if (frequency &amp;gt; 8000) { return 0x0000 }&lt;br /&gt;
  FC = 2 * sin(PI * frequency / 48000)&lt;br /&gt;
  octaves = 4096 * log2(FC)&lt;br /&gt;
  return octaves &amp;amp; 0xFFFF&lt;br /&gt;
hardware_coefficient[0] = FreqToHardwareCoeff(frequency)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
dBToHardwareCoeff(resonance): # Input in dB&lt;br /&gt;
  resonance = min(resonance, 22.5)&lt;br /&gt;
  Q = pow(10, -0.05 * resonance)&lt;br /&gt;
  return min(0xFFFF)&lt;br /&gt;
hardware_coefficient[1] = dBToHardwareCoeff(resonance_in_db)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Stuff from the DLS2 spec:{{FIXME|reason=Untested / unconfirmed. Most info comes from Merry of Citra}}&lt;br /&gt;
&lt;br /&gt;
There are 2 coeffiecents per channel:&lt;br /&gt;
&lt;br /&gt;
* F_c (Cutoff frequency)&lt;br /&gt;
* resonance&lt;br /&gt;
&lt;br /&gt;
From Page 8 of &amp;quot;DLS 2.2 Version 1.0&amp;quot;[https://www.midi.org/specifications/item/dls-level-2-specification]&lt;br /&gt;
&lt;br /&gt;
* b_1 = -2 * r * cos(θ)&lt;br /&gt;
* b_2 = r * r&lt;br /&gt;
* K =  g * (1 + b_1 + b_2)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
y[i] = K * x[i] - b_1 * y[i-1] - b_2 * y[i-2]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Where y[i-2] and y[i-1] are the last two frames of the output and x[i] the current input.&lt;br /&gt;
&lt;br /&gt;
=== Operation ===&lt;br /&gt;
&lt;br /&gt;
Voices are stored in VPV.&lt;br /&gt;
Input data (from the CPU) is loaded using VPSGE.&lt;br /&gt;
Voices are then processed and written to the GP MIXBUF.&lt;br /&gt;
&lt;br /&gt;
== Global Processor (GP) ==&lt;br /&gt;
&lt;br /&gt;
The GP is a DSP to do programmable audio processing on the voice bins.&lt;br /&gt;
&lt;br /&gt;
The GP DSP seems to run at 160 MHz.&lt;br /&gt;
&lt;br /&gt;
=== MIXBUF ===&lt;br /&gt;
&lt;br /&gt;
The MIXBUF is a 0x400 word (24-Bit, stored as 32-Bit) section. It is split into 32 * 0x20 words.&lt;br /&gt;
Each 0x20 word block represents one of the 32 voice bins of the VP.&lt;br /&gt;
The 0x20 words are 24-Bit PCM mono samples to be played back at 48kHz. The duration of each frame is hence 0.{{overline|6}}ms.&lt;br /&gt;
&lt;br /&gt;
=== Memory map ===&lt;br /&gt;
&lt;br /&gt;
=== Related APU memory ===&lt;br /&gt;
&lt;br /&gt;
* GPS = GP Scratch (?)&lt;br /&gt;
* GPF = GP FIFO&lt;br /&gt;
&lt;br /&gt;
== Encode Processor (EP) ==&lt;br /&gt;
&lt;br /&gt;
The EP is a DSP to encode the audio signal.&lt;br /&gt;
&lt;br /&gt;
=== Memory map ===&lt;br /&gt;
&lt;br /&gt;
=== Related APU memory ===&lt;br /&gt;
&lt;br /&gt;
* EPS = EP Scratch (?)&lt;br /&gt;
* EPF = EP FIFO&lt;br /&gt;
&lt;br /&gt;
== Usage in DirectSound ==&lt;br /&gt;
&lt;br /&gt;
''This topic deserves it's own article{{FIXME}}''&lt;br /&gt;
&lt;br /&gt;
The bins are used {{FIXME|reason=How?}}&lt;br /&gt;
DirectSound allows to load custom GP DSP code for a filter / effects chain.&lt;br /&gt;
{{FIXME|reaon=Will GP DSP automatically download code or is code pushed to it?}}&lt;br /&gt;
The GP waits for the frame interrupt which signals that MIXBUF data is available. It then goes through the filter chain.&lt;br /&gt;
At the end of the chain, the GP DSP will verify that the execution didn't take longer than the frame duration.&lt;br /&gt;
&lt;br /&gt;
The GP will then issue 6 DMA requests to output the processed frames to a ringbuffer in scratch space.&lt;br /&gt;
The frameformat will be the same format as the GP MIXBUF format (also 0x20 words per channel).&lt;br /&gt;
Each ringbuffer is 0x200 words and therefore holds the last 16 frames.&lt;br /&gt;
Therefore, the ringbuffer region is 6 * 0x800 Bytes = 0x3000 Bytes in physical memory.&lt;br /&gt;
&lt;br /&gt;
The order of the channels in the ringbuffer is (also DMA order):&lt;br /&gt;
&lt;br /&gt;
* 0: Front Left&lt;br /&gt;
* 1: Center{{citation needed}}&lt;br /&gt;
* 2: Front Right&lt;br /&gt;
* 3: Rear Left{{citation needed}}&lt;br /&gt;
* 4: Rear Right{{citation needed}}&lt;br /&gt;
* 5: [[Wikipedia:Low-frequency effects|Low-frequency effects]] (LFE){{citation needed}}&lt;br /&gt;
&lt;br /&gt;
The EP maps the same data to its own scratch space. It is assumed that it will DMA this region to its own internal memory.&lt;br /&gt;
The EP then AC3 encodes the audio data{{citation needed}} and writes it to the EP FIFO memory{{FIXME|How does this happen? DMA?}}.&lt;br /&gt;
{{FIXME|reason=When does this happen and what happens to stereo? headphones? mono?}}&lt;br /&gt;
The data is then send to the ACI AC97 using EP FIFO channels 0 (PCM) and 1 (SPDIF){{citation needed}}.&lt;br /&gt;
The EP code is loaded by DirectSound. The EP is not programmable using DirectSound APIs.&lt;br /&gt;
&lt;br /&gt;
=== Modifications for Boot Animation ===&lt;br /&gt;
&lt;br /&gt;
During the [[Boot Animation]] a different version of DirectSound is used.&lt;br /&gt;
The EP is disabled in this case.&lt;br /&gt;
The data is send to the ACI AC97 using GP FIFO channel 0 (PCM).&lt;br /&gt;
There is no AC3 / SPDIF during the boot animation[http://www.gamasutra.com/blogs/BrianSchmidt/20111117/90625/Designing_the_Boot_Sound_for_the_Original_Xbox.php]{{citation needed|reason=Link to brians gamasutra stuff}}.&lt;br /&gt;
&lt;br /&gt;
== Related notes ==&lt;br /&gt;
&lt;br /&gt;
* [[ACI]]&lt;br /&gt;
* [[DSP]]&lt;br /&gt;
* [[Xbox ADPCM]]&lt;br /&gt;
* [http://www.nvidia.com/object/apu.html Information at NVIDIAs website]&lt;br /&gt;
* [http://www.nvidia.com/attach/9004 &amp;quot;Technical Brief: NVIDIA nForce MCP Audio Processing Unit&amp;quot; by NVIDIA]&lt;br /&gt;
* [https://github.com/JayFoxRox/xbox-tools/blob/master/python-scripts/ Scripts to inspect APU registers and voice buffers]&lt;br /&gt;
* Filter information&lt;br /&gt;
** [https://de.mathworks.com/help/audio/examples/parametric-equalizer-design.html Something about Parametric Equalizers]&lt;br /&gt;
** [https://github.com/kcat/openal-soft/blob/master/Alc/effects/reverb.c Mentions I3DL2 Reverb]&lt;br /&gt;
** [https://www.midi.org/specifications/item/dls-level-2-specification DLS2 low-pass filter with resonance and dynamic filter cutoff frequency]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:APU]]&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=File:Haxar-a20m.jpg&amp;diff=6468</id>
		<title>File:Haxar-a20m.jpg</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=File:Haxar-a20m.jpg&amp;diff=6468"/>
				<updated>2018-07-07T01:25:47Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: Haxar uploaded a new version of File:Haxar-a20m.jpg&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=Exploits&amp;diff=6467</id>
		<title>Exploits</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=Exploits&amp;diff=6467"/>
				<updated>2018-07-06T20:47:31Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: /* A20M# hack */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== MCPX ==&lt;br /&gt;
&lt;br /&gt;
=== LDT (Hypertransport) bus tap ===&lt;br /&gt;
&lt;br /&gt;
See [http://www.xenatera.com/bunnie/proj/anatak/xboxmod.html#ldt bunnie's adventures hacking the Xbox].&lt;br /&gt;
&lt;br /&gt;
=== Visor hack ===&lt;br /&gt;
&lt;br /&gt;
Exploits incorrect rollover of memory address.&lt;br /&gt;
&lt;br /&gt;
=== MIST hack ===&lt;br /&gt;
&lt;br /&gt;
Exploits error in xcode interpreter security check.&lt;br /&gt;
There are at least 2 variations of this hack.&lt;br /&gt;
&lt;br /&gt;
=== A20M# hack ===&lt;br /&gt;
&lt;br /&gt;
[[File:Haxar-a20m.jpg|thumb|200px|A jumper wire hack to enable A20]]&lt;br /&gt;
&lt;br /&gt;
Uses a legacy x86 feature.&lt;br /&gt;
&lt;br /&gt;
=== RC4 attack (MCPX 1.0 only) ===&lt;br /&gt;
&lt;br /&gt;
Microsoft uses the last bytes of the decrypted 2BL to check the integrity of the 2BL.&lt;br /&gt;
However, RC4 does not have any feedback which means changes in the 2BL will not reflect in the last couple of bytes which are checked.&lt;br /&gt;
As such, the 2BL can be freely modified, as long as the last couple of bytes still match what the MCPX ROM expects.&lt;br /&gt;
&lt;br /&gt;
This can be used to take over the 2BL entry point.&lt;br /&gt;
&lt;br /&gt;
When the attack happens, the MCPX ROM is still visible, making this a very powerful attack.&lt;br /&gt;
&lt;br /&gt;
''This attack is described by Michael Steil in his Google talk.''&lt;br /&gt;
&lt;br /&gt;
=== TEA attack (MCPX 1.1 only) ===&lt;br /&gt;
&lt;br /&gt;
TEA, which is only used in MCPX 1.1, can not be used as a hash in Davies-Meyer mode [http://www.tayloredge.com/reference/Mathematics/VRAndem.pdf][https://www.schneier.com/academic/paperfiles/paper-key-schedule.pdf]. And yet, Microsoft used it that way.&lt;br /&gt;
&lt;br /&gt;
The original attack uses the 5 bytes at 0xffffd400 (FBL entry point) which are &amp;lt;code&amp;gt;E9 83 01 00 00&amp;lt;/code&amp;gt;.&lt;br /&gt;
This is &amp;lt;code&amp;gt;jmp 0xffffd588&amp;lt;/code&amp;gt; (which is a jump within the flash region).&lt;br /&gt;
&lt;br /&gt;
When flipping the highest bit of the operand DWORD (at 0xffffd400, mind your endianess) this will become: &amp;lt;code&amp;gt;E9 83 01 80 00&amp;lt;/code&amp;gt;.&lt;br /&gt;
This is &amp;lt;code&amp;gt;jmp 0x7fd588&amp;lt;/code&amp;gt; (which is a jump into the RAM region).&lt;br /&gt;
For the attack to be succssful, the highest bit in the DWORD at 0xffffd404 also has to be flipped.&lt;br /&gt;
&lt;br /&gt;
The RAM can be controlled using the x-code command to write to RAM.&lt;br /&gt;
So the idea is to copy a program from Flash to RAM using x-codes.&lt;br /&gt;
Then the FBL / 2BL is modified to jump into said RAM region by flipping a bit of a jump operand (as described above).&lt;br /&gt;
The 2 bit flips will not change the hash of FBL / 2BL as TEA is broken.&lt;br /&gt;
&lt;br /&gt;
As such, the FBL verification will succeed, the MCPX ROM will hand control to the FBL which will then jump into the attacker controlled RAM.&lt;br /&gt;
&lt;br /&gt;
When the attack happens, the MCPX ROM is still visible, making this a very powerful attack.&lt;br /&gt;
&lt;br /&gt;
''The TEA algorithm and exploit are also described in more detail in Bunnnies book (Page 109 and Page 142).''&lt;br /&gt;
&lt;br /&gt;
== Dashboard ==&lt;br /&gt;
&lt;br /&gt;
=== Audio hacks ===&lt;br /&gt;
=== Font hacks ===&lt;br /&gt;
&lt;br /&gt;
[http://archiv.sega-dc.de/phoenix.maxconsole.net/docs/berternie.inc.htm Analysis of &amp;quot;Bert &amp;amp; Ernie&amp;quot; font-exploit].&lt;br /&gt;
&lt;br /&gt;
==== Easter-egg exploit ====&lt;br /&gt;
&lt;br /&gt;
== Savegames ==&lt;br /&gt;
Savedgames can be used as an exploit method, but care must be taken for most games are verifying digital signatures of savedgames {{citation needed}} [http://bunniefoo.com/nostarch/HackingTheXbox_Free.pdf]&lt;br /&gt;
=== [[007: Agent Under Fire]] ===&lt;br /&gt;
=== [[Frogger Beyond]] ===&lt;br /&gt;
=== [[MechAssault]] ===&lt;br /&gt;
=== [[Tom Clancy's Splinter Cell]] ===&lt;br /&gt;
=== [[Tony Hawk's Pro Skater 4]] ===&lt;br /&gt;
Grimdoomer found a savedgame exloit and shared it on Discord and later with Rocky5 for his softmod installer.&lt;br /&gt;
[https://drive.google.com/file/d/0B9WVULxHOmNkQVBCMHMtVGhqVVU/view a video demonstrating the game trigger (custom skatepark)]&lt;br /&gt;
&lt;br /&gt;
''10-4-2017 it's just shell code I injected into the game save/ granted this save is slightly more complicated than the others and requires a small &amp;quot;loader&amp;quot; that is just a memcpy basically it's literally as simple as a buffer overflow...I just looked for null terminated strings and fuzzed them then when I got a crash I looked in teh xbe to figure out what was going on. yeah it's literally just a stack overflow'' - grimdoomer&lt;br /&gt;
&lt;br /&gt;
another website talking about his exploit.&lt;br /&gt;
[https://www.xbmc4xbox.org.uk/forum/viewtopic.php?t=7310 xbmc4xbox.org.uk]&lt;br /&gt;
&lt;br /&gt;
== Attack ideas ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Purpose || Author || Description || Status&lt;br /&gt;
|-&lt;br /&gt;
| Dumping the MCPX ROM || JayFoxRox&lt;br /&gt;
| Partial system reset using 0xCF9 I/O register&lt;br /&gt;
| Only crashes so far, mostly untested&lt;br /&gt;
|-&lt;br /&gt;
| Dumping the MCPX ROM || JayFoxRox&lt;br /&gt;
| Trying to find problems with the SMC reset chain. The SMC takes a couple of milliseconds to reset the system. Parts of the peripherals might stay alive for long enough. So chances (extremly unlikely) are, the peripherals could be programmed to do DMA where the DMA is only executed after the reboot.&lt;br /&gt;
| Untested&lt;br /&gt;
|-&lt;br /&gt;
| Unknown || JayFoxRox&lt;br /&gt;
| Resetting from wrong address. The errata for the CPU states that a warm-reset might occur from the wrong address.&lt;br /&gt;
| Concept phase, needs more research&lt;br /&gt;
|-&lt;br /&gt;
| Dumping the MCPX ROM || JayFoxRox&lt;br /&gt;
| Trying to access MCPX ROM through peripherals in the southbridge. If the address logic is broken, parts like the OHCI, APU or AC97 might be able to access it still.&lt;br /&gt;
|&lt;br /&gt;
* AC97: Lots of crashes / hangs. Sometimes crackling noise. Sometimes does not crash. Also can access some non-existing memory regions without any crashes. Data read from invalid addresses seemed to be 300 Hz square wave. While crashing the hardware output will have exponential falloff (measured on PCM line-out).&lt;br /&gt;
* APU: Untested&lt;br /&gt;
* OHCI: Untested&lt;br /&gt;
* Others: Untested&lt;br /&gt;
|-&lt;br /&gt;
| Dumping Kernel INIT || JayFoxRox&lt;br /&gt;
| INIT is free'd right before passing execution to the first XBE. Depending on what the XBE allocates, the INIT section might still be in memory when a dumper is run.&lt;br /&gt;
| Probably doesn't work. Would need the dumper to directly run after cold-boot. Softmods unfortunately reboot the Xbox and during this warm-boot the INIT section is (in at least most cases) lost.&lt;br /&gt;
|-&lt;br /&gt;
| Dumping Kernel INIT || DaveX || An extension to JayFoxRox dumping idea. Instead of running a dumper-XBE through a softmod, the softmod itself could do the dumping. This means creation of a custom softmod, just for dumping. This depends on the used softmod entry-point (font-explot, audio-exploit, ..) to gain execution as early as possible. This strategy might be slightly risky as harddisk contents have to be modified for the temporary softmod.&lt;br /&gt;
| WIP as of 2018-03-04&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; | Homebrew entry point || rowspan=&amp;quot;13&amp;quot; | Community&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; | Some movie DVDs contain default XBEs signed to run on original Xbox from DVD-R{{FIXME|reason=Add region / product codes and other DVDs you know of}}. If we can find an exploit in one of them (loaded files), we could possibly take over the entire system and run homebrew from DVD-R.&lt;br /&gt;
|-&lt;br /&gt;
|'''Star Wars: Clone Wars - Volume Two'''&lt;br /&gt;
[[Battlefront II]]&lt;br /&gt;
&lt;br /&gt;
Untested&lt;br /&gt;
|-&lt;br /&gt;
|'''Star Wars: Episode III - Revenge of the Sith (Widescreen Edition)'''&lt;br /&gt;
[[Battlefront II]]&lt;br /&gt;
&lt;br /&gt;
Untested&lt;br /&gt;
|-&lt;br /&gt;
|'''Star Wars Trilogy (Widescreen Edition with Bonus Disc)'''&lt;br /&gt;
[[Battlefront]]&lt;br /&gt;
&lt;br /&gt;
Untested&lt;br /&gt;
|-&lt;br /&gt;
|'''Star Wars Trilogy DVD with Demo'''&lt;br /&gt;
[[Lego Star Wars 2]]&lt;br /&gt;
&lt;br /&gt;
Untested&lt;br /&gt;
|-&lt;br /&gt;
|'''Star Wars: Clone Wars - Volume One'''&lt;br /&gt;
[[Battlefront]]&lt;br /&gt;
&lt;br /&gt;
Untested&lt;br /&gt;
|-&lt;br /&gt;
|'''The Chronicles of Riddick (Widescreen Unrated Director's Cut)'''&lt;br /&gt;
[[Chronicles of Riddick]]&lt;br /&gt;
&lt;br /&gt;
Untested&lt;br /&gt;
|-&lt;br /&gt;
|'''Doom (Unrated Widescreen Edition)'''&lt;br /&gt;
[[Doom 3]]&lt;br /&gt;
&lt;br /&gt;
Untested&lt;br /&gt;
|-&lt;br /&gt;
|'''Hulk (Special Edition)'''&lt;br /&gt;
[[Hulk]]&lt;br /&gt;
&lt;br /&gt;
Untested&lt;br /&gt;
|-&lt;br /&gt;
|'''King Arthur - The Director's Cut (Widescreen Edition)'''&lt;br /&gt;
[[King Arthur]]&lt;br /&gt;
&lt;br /&gt;
Untested&lt;br /&gt;
|-&lt;br /&gt;
|'''Robots (Widescreen Edition)'''&lt;br /&gt;
[[Robots]]&lt;br /&gt;
&lt;br /&gt;
Untested&lt;br /&gt;
|-&lt;br /&gt;
|'''Van Helsing (Widescreen Edition)'''&lt;br /&gt;
[[Van Helsing]]&lt;br /&gt;
&lt;br /&gt;
Untested&lt;br /&gt;
|-&lt;br /&gt;
|'''Clone Wars Volume 1'''&lt;br /&gt;
[[Republic Commando]]&lt;br /&gt;
&lt;br /&gt;
Untested&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Notes ==&lt;br /&gt;
&lt;br /&gt;
* [https://events.ccc.de/congress/2005/fahrplan/attachments/591-paper_xbox.pdf 17 Mistakes Microsoft Made in the Xbox Security System]&lt;br /&gt;
* [http://toogam.bespin.org/xboxmod/site/xbehacks.htm A list of some exploit implementations]&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=File:Haxar-a20m.jpg&amp;diff=6466</id>
		<title>File:Haxar-a20m.jpg</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=File:Haxar-a20m.jpg&amp;diff=6466"/>
				<updated>2018-07-06T20:41:08Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=Xbox_Input_Devices&amp;diff=5943</id>
		<title>Xbox Input Devices</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=Xbox_Input_Devices&amp;diff=5943"/>
				<updated>2017-08-09T06:30:35Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: /* USB Adapters */ Replaced Amazon link to the right Xbox to USB-A cable. These are the right ones, while the old link gave me USB-A to Xbox cables.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== XID Overview ==&lt;br /&gt;
&lt;br /&gt;
XIDs are USB devices.&lt;br /&gt;
&lt;br /&gt;
The hardware side is USB with a different plug while the software side is USB without HID-descriptors.&lt;br /&gt;
Technicly a XID is a USB-hub for the Memory-Units and the XBL Communicator.&lt;br /&gt;
The logical XID gamepad USB device is internally connected to that hub.&lt;br /&gt;
&lt;br /&gt;
=== USB Adapters ===&lt;br /&gt;
The Xbox input devices are USB devices. As such, you can connect a keyboard to the Xbox, or a gamepad to your PC. In fact, Linux already has drivers for the gamepad. In order to preserve Xbox hardware, please do not cut OEM Xbox cables to make an adapter. Decent adapters can be acquired cheaply (~$10 USD ea. on 2017.04.30).&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Port (From)&lt;br /&gt;
! Plug (To)&lt;br /&gt;
! Link&lt;br /&gt;
|-&lt;br /&gt;
| Xbox&lt;br /&gt;
| USB-A&lt;br /&gt;
| [https://www.amazon.com/gp/product/B000RT2868 Amazon]&lt;br /&gt;
|-&lt;br /&gt;
| USB-A&lt;br /&gt;
| Xbox&lt;br /&gt;
| [https://www.amazon.com/gp/product/B00F52LQHO Amazon]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Wiring ===&lt;br /&gt;
&lt;br /&gt;
Untested / unverified! Take this with a grain of salt.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Pin&lt;br /&gt;
!Typical cable color&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Green&lt;br /&gt;
|USB D-&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|White&lt;br /&gt;
|USB D+&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|Black&lt;br /&gt;
|GND&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|Red&lt;br /&gt;
|VCC&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|Yellow&lt;br /&gt;
|VBlank signal from video output (for Lightguns)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Protocol ===&lt;br /&gt;
&lt;br /&gt;
==== Controller to Xbox ====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;typedef struct XIDGamepadReport {&lt;br /&gt;
    uint8_t bReportId;&lt;br /&gt;
    uint8_t bLength;&lt;br /&gt;
    &amp;lt;Data&amp;gt;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Xbox to Controller ====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;typedef struct XIDGamepadOutputReport {&lt;br /&gt;
    uint8_t report_id; //FIXME: is this correct?&lt;br /&gt;
    uint8_t length;&lt;br /&gt;
    &amp;lt;Data&amp;gt;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Standard Gamepads ==&lt;br /&gt;
&lt;br /&gt;
=== USB Descriptors ===&lt;br /&gt;
&lt;br /&gt;
Most standard gamepads share the same USB descriptor.&lt;br /&gt;
Usually the only difference will be the VID / PID.&lt;br /&gt;
See https://github.com/xboxdrv/xboxdrv/blob/stable/src/xpad_device.cpp for a list of devices.&lt;br /&gt;
&lt;br /&gt;
=== Controller to Xbox ===&lt;br /&gt;
&lt;br /&gt;
20 bytes&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Field&lt;br /&gt;
!Offset (Bytes)&lt;br /&gt;
!Mask&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|DPAD_UP&lt;br /&gt;
|2&lt;br /&gt;
|0x01&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|DPAD_DOWN&lt;br /&gt;
|2&lt;br /&gt;
|0x02&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|DPAD_LEFT&lt;br /&gt;
|2&lt;br /&gt;
|0x04&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|DPAD_RIGHT&lt;br /&gt;
|2&lt;br /&gt;
|0x08&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|START&lt;br /&gt;
|2&lt;br /&gt;
|0x10&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|BACK&lt;br /&gt;
|2&lt;br /&gt;
|0x20&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|LEFT_THUMB&lt;br /&gt;
|2&lt;br /&gt;
|0x40&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|RIGHT_THUMB&lt;br /&gt;
|2&lt;br /&gt;
|0x80&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|A&lt;br /&gt;
|4&lt;br /&gt;
|0xFF&lt;br /&gt;
|Button is analog&lt;br /&gt;
|-&lt;br /&gt;
|B&lt;br /&gt;
|5&lt;br /&gt;
|0xFF&lt;br /&gt;
|Button is analog&lt;br /&gt;
|-&lt;br /&gt;
|X&lt;br /&gt;
|6&lt;br /&gt;
|0xFF&lt;br /&gt;
|Button is analog&lt;br /&gt;
|-&lt;br /&gt;
|Y&lt;br /&gt;
|7&lt;br /&gt;
|0xFF&lt;br /&gt;
|Button is analog&lt;br /&gt;
|-&lt;br /&gt;
|BLACK&lt;br /&gt;
|8&lt;br /&gt;
|0xFF&lt;br /&gt;
|Button is analog&lt;br /&gt;
|-&lt;br /&gt;
|WHITE&lt;br /&gt;
|9&lt;br /&gt;
|0xFF&lt;br /&gt;
|Button is analog&lt;br /&gt;
|-&lt;br /&gt;
|LEFT_TRIGGER&lt;br /&gt;
|10&lt;br /&gt;
|0xFF&lt;br /&gt;
|Trigger is analog&lt;br /&gt;
|-&lt;br /&gt;
|RIGHT_TRIGGER&lt;br /&gt;
|11&lt;br /&gt;
|0xFF&lt;br /&gt;
|Trigger is analog&lt;br /&gt;
|-&lt;br /&gt;
|sThumbLX&lt;br /&gt;
|12&lt;br /&gt;
|0xFFFF&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|sThumbLY&lt;br /&gt;
|14&lt;br /&gt;
|0xFFFF&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|sThumbRX&lt;br /&gt;
|16&lt;br /&gt;
|0xFFFF&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|sThumbRY&lt;br /&gt;
|18&lt;br /&gt;
|0xFFFF&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Xbox to Controller ===&lt;br /&gt;
&lt;br /&gt;
6 bytes&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Field&lt;br /&gt;
!Offset (Bytes)&lt;br /&gt;
!Mask&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|Left actuator strength&lt;br /&gt;
|2&lt;br /&gt;
|0xFFFF&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Right actuator strength&lt;br /&gt;
|4&lt;br /&gt;
|0xFFFF&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The Microsoft Controller S will not react to packets which don't have a value of 6 in the &amp;lt;code&amp;gt;length&amp;lt;/code&amp;gt; field of the header.&lt;br /&gt;
The Fanatec Speedster 3 ForceShock will still react to those. Further testing is necessary with other gamepads.&lt;br /&gt;
&lt;br /&gt;
== Steering wheels ==&lt;br /&gt;
&lt;br /&gt;
=== MadCatz Wheel ===&lt;br /&gt;
&lt;br /&gt;
{{FIXME}}&lt;br /&gt;
&lt;br /&gt;
=== Fanatec Speedster 3 ForceShock ===&lt;br /&gt;
&lt;br /&gt;
==== Pedals ====&lt;br /&gt;
&lt;br /&gt;
The Pedals are ''not'' a USB device.&lt;br /&gt;
&lt;br /&gt;
Note that the cable going to the pedals is also ''not'' a USB port despite using the Xbox controller breakaway plug.&lt;br /&gt;
Likewise, plugging the pedals to a PC / Xbox won't provide a USB / XID (it is detected as garbage):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
new full-speed USB device number 14 using xhci_hcd&lt;br /&gt;
device descriptor read/64, error -71&lt;br /&gt;
device descriptor read/64, error -71&lt;br /&gt;
new full-speed USB device number 15 using xhci_hcd&lt;br /&gt;
device descriptor read/64, error -71&lt;br /&gt;
device descriptor read/64, error -71&lt;br /&gt;
new full-speed USB device number 16 using xhci_hcd&lt;br /&gt;
Device not responding to setup address.&lt;br /&gt;
Device not responding to setup address.&lt;br /&gt;
device not accepting address 16, error -71&lt;br /&gt;
new full-speed USB device number 17 using xhci_hcd&lt;br /&gt;
Device not responding to setup address.&lt;br /&gt;
Device not responding to setup address.&lt;br /&gt;
device not accepting address 17, error -71&lt;br /&gt;
unable to enumerate USB device&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Internal HUB ====&lt;br /&gt;
&lt;br /&gt;
===== USB Descriptors =====&lt;br /&gt;
&lt;br /&gt;
Power not connected, pedals not connected, not in Tuning mode:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Device Descriptor:&lt;br /&gt;
  bLength                18&lt;br /&gt;
  bDescriptorType         1&lt;br /&gt;
  bcdUSB               1.10&lt;br /&gt;
  bDeviceClass            9 Hub&lt;br /&gt;
  bDeviceSubClass         0 &lt;br /&gt;
  bDeviceProtocol         0 Full speed (or root) hub&lt;br /&gt;
  bMaxPacketSize0         8&lt;br /&gt;
  idVendor           0x3767 &lt;br /&gt;
  idProduct          0x0102 &lt;br /&gt;
  bcdDevice            0.01&lt;br /&gt;
  iManufacturer           0 &lt;br /&gt;
  iProduct                1 End&lt;br /&gt;
  iSerial                 0 &lt;br /&gt;
  bNumConfigurations      1&lt;br /&gt;
  Configuration Descriptor:&lt;br /&gt;
    bLength                 9&lt;br /&gt;
    bDescriptorType         2&lt;br /&gt;
    wTotalLength           25&lt;br /&gt;
    bNumInterfaces          1&lt;br /&gt;
    bConfigurationValue     1&lt;br /&gt;
    iConfiguration          0 &lt;br /&gt;
    bmAttributes         0xa0&lt;br /&gt;
      (Bus Powered)&lt;br /&gt;
      Remote Wakeup&lt;br /&gt;
    MaxPower               64mA&lt;br /&gt;
    Interface Descriptor:&lt;br /&gt;
      bLength                 9&lt;br /&gt;
      bDescriptorType         4&lt;br /&gt;
      bInterfaceNumber        0&lt;br /&gt;
      bAlternateSetting       0&lt;br /&gt;
      bNumEndpoints           1&lt;br /&gt;
      bInterfaceClass         9 Hub&lt;br /&gt;
      bInterfaceSubClass      0 &lt;br /&gt;
      bInterfaceProtocol      0 Full speed (or root) hub&lt;br /&gt;
      iInterface              0 &lt;br /&gt;
      Endpoint Descriptor:&lt;br /&gt;
        bLength                 7&lt;br /&gt;
        bDescriptorType         5&lt;br /&gt;
        bEndpointAddress     0x81  EP 1 IN&lt;br /&gt;
        bmAttributes            3&lt;br /&gt;
          Transfer Type            Interrupt&lt;br /&gt;
          Synch Type               None&lt;br /&gt;
          Usage Type               Data&lt;br /&gt;
        wMaxPacketSize     0x0001  1x 1 bytes&lt;br /&gt;
        bInterval             255&lt;br /&gt;
Hub Descriptor:&lt;br /&gt;
  bLength               9&lt;br /&gt;
  bDescriptorType      41&lt;br /&gt;
  nNbrPorts             3&lt;br /&gt;
  wHubCharacteristic 0x000d&lt;br /&gt;
    Per-port power switching&lt;br /&gt;
    Compound device&lt;br /&gt;
    Per-port overcurrent protection&lt;br /&gt;
  bPwrOn2PwrGood       50 * 2 milli seconds&lt;br /&gt;
  bHubContrCurrent     64 milli Ampere&lt;br /&gt;
  DeviceRemovable    0x02&lt;br /&gt;
  PortPwrCtrlMask    0xff&lt;br /&gt;
 Hub Port Status:&lt;br /&gt;
   Port 1: 0000.0103 power enable connect&lt;br /&gt;
   Port 2: 0000.0100 power&lt;br /&gt;
   Port 3: 0000.0100 power&lt;br /&gt;
can't get debug descriptor: Resource temporarily unavailable&lt;br /&gt;
Device Status:     0x0003&lt;br /&gt;
  Self Powered&lt;br /&gt;
  Remote Wakeup Enabled&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Steering wheel (and Pedals) ====&lt;br /&gt;
&lt;br /&gt;
Always connected to port 1 of the internal HUB&lt;br /&gt;
&lt;br /&gt;
===== USB Descriptors =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Device Descriptor:&lt;br /&gt;
  bLength                18&lt;br /&gt;
  bDescriptorType         1&lt;br /&gt;
  bcdUSB               1.10&lt;br /&gt;
  bDeviceClass            0 &lt;br /&gt;
  bDeviceSubClass         0 &lt;br /&gt;
  bDeviceProtocol         0 &lt;br /&gt;
  bMaxPacketSize0         8&lt;br /&gt;
  idVendor           0x3767 &lt;br /&gt;
  idProduct          0x0101 &lt;br /&gt;
  bcdDevice            2.80&lt;br /&gt;
  iManufacturer           0 &lt;br /&gt;
  iProduct                0 &lt;br /&gt;
  iSerial                 0 &lt;br /&gt;
  bNumConfigurations      1&lt;br /&gt;
  Configuration Descriptor:&lt;br /&gt;
    bLength                 9&lt;br /&gt;
    bDescriptorType         2&lt;br /&gt;
    wTotalLength           32&lt;br /&gt;
    bNumInterfaces          1&lt;br /&gt;
    bConfigurationValue     1&lt;br /&gt;
    iConfiguration          0 &lt;br /&gt;
    bmAttributes         0x80&lt;br /&gt;
      (Bus Powered)&lt;br /&gt;
    MaxPower              100mA&lt;br /&gt;
    Interface Descriptor:&lt;br /&gt;
      bLength                 9&lt;br /&gt;
      bDescriptorType         4&lt;br /&gt;
      bInterfaceNumber        0&lt;br /&gt;
      bAlternateSetting       0&lt;br /&gt;
      bNumEndpoints           2&lt;br /&gt;
      bInterfaceClass        88 Xbox&lt;br /&gt;
      bInterfaceSubClass     66 Controller&lt;br /&gt;
      bInterfaceProtocol      0 &lt;br /&gt;
      iInterface              0 &lt;br /&gt;
      Endpoint Descriptor:&lt;br /&gt;
        bLength                 7&lt;br /&gt;
        bDescriptorType         5&lt;br /&gt;
        bEndpointAddress     0x82  EP 2 IN&lt;br /&gt;
        bmAttributes            3&lt;br /&gt;
          Transfer Type            Interrupt&lt;br /&gt;
          Synch Type               None&lt;br /&gt;
          Usage Type               Data&lt;br /&gt;
        wMaxPacketSize     0x0020  1x 32 bytes&lt;br /&gt;
        bInterval               4&lt;br /&gt;
      Endpoint Descriptor:&lt;br /&gt;
        bLength                 7&lt;br /&gt;
        bDescriptorType         5&lt;br /&gt;
        bEndpointAddress     0x02  EP 2 OUT&lt;br /&gt;
        bmAttributes            3&lt;br /&gt;
          Transfer Type            Interrupt&lt;br /&gt;
          Synch Type               None&lt;br /&gt;
          Usage Type               Data&lt;br /&gt;
        wMaxPacketSize     0x0020  1x 32 bytes&lt;br /&gt;
        bInterval               4&lt;br /&gt;
can't get debug descriptor: Resource temporarily unavailable&lt;br /&gt;
Device Status:     0x0000&lt;br /&gt;
  (Bus Powered)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Light guns ==&lt;br /&gt;
&lt;br /&gt;
=== EMS TopGun II ===&lt;br /&gt;
&lt;br /&gt;
''This is an unlicensed / unofficial Xbox accessory.''&lt;br /&gt;
&lt;br /&gt;
The website for this product can be found at http://www.hkems.com/product/xbox/EMSTopGun2.htm&lt;br /&gt;
&lt;br /&gt;
The gun presents itself as a standard Xbox gamepad. It uses a different USB descriptor for Xbox (X) and the other mode (P).&lt;br /&gt;
There is no internal hub in this device.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! EMS TopGun II !! Xbox Gamepad !! Notes&lt;br /&gt;
|-&lt;br /&gt;
| Stick || Directional Pad ||&lt;br /&gt;
|-&lt;br /&gt;
| Trigger || A || rowspan=&amp;quot;4&amp;quot; | Digital only, either 0 or 255&lt;br /&gt;
|-&lt;br /&gt;
| Grip || B&lt;br /&gt;
|-&lt;br /&gt;
| A || X&lt;br /&gt;
|-&lt;br /&gt;
| B || Y&lt;br /&gt;
|-&lt;br /&gt;
| START || Start ||&lt;br /&gt;
|-&lt;br /&gt;
| SE/BA || Back ||&lt;br /&gt;
|-&lt;br /&gt;
| Aim Left / Right || Negative / Positive on left thumbstick X axis || rowspan=&amp;quot;2&amp;quot; | Absolute position using the full stick range&lt;br /&gt;
|-&lt;br /&gt;
| Aim Up / Down || Positive / Negative on left thumbstick Y axis&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
There is no right thumbstick, thumbstick presses, black/white button or trigger buttons (All of those read constant zeros).&lt;br /&gt;
&lt;br /&gt;
===== Turbo Mode =====&lt;br /&gt;
&lt;br /&gt;
* Turbo mode 0 keeps A pressed  while trigger is held&lt;br /&gt;
* Turbo mode 1 toggles A rapidly while trigger is held&lt;br /&gt;
* Turbo mode 2 toggles A rapidly and once in a while B while trigger is held&lt;br /&gt;
&lt;br /&gt;
===== Force Feedback =====&lt;br /&gt;
&lt;br /&gt;
The upper part of the gun is moveable and should push back to simulate recoil (possibly hurting your thumb while you are using the stick).&lt;br /&gt;
I could not get the force feedback working, but I'm sure I've had it working in the past on PC.{{citation needed}}&lt;br /&gt;
&lt;br /&gt;
==== USB Descriptors ====&lt;br /&gt;
&lt;br /&gt;
This is the descriptor in the Xbox mode (X).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Bus 003 Device 016: ID 0b9a:016b  &lt;br /&gt;
Device Descriptor:&lt;br /&gt;
  bLength                18&lt;br /&gt;
  bDescriptorType         1&lt;br /&gt;
  bcdUSB               1.10&lt;br /&gt;
  bDeviceClass            0 &lt;br /&gt;
  bDeviceSubClass         0 &lt;br /&gt;
  bDeviceProtocol         0 &lt;br /&gt;
  bMaxPacketSize0        64&lt;br /&gt;
  idVendor           0x0b9a &lt;br /&gt;
  idProduct          0x016b &lt;br /&gt;
  bcdDevice            4.57&lt;br /&gt;
  iManufacturer           1 EMS̖E&lt;br /&gt;
  iProduct                2 EMS TopGun&lt;br /&gt;
  iSerial                 0 &lt;br /&gt;
  bNumConfigurations      1&lt;br /&gt;
  Configuration Descriptor:&lt;br /&gt;
    bLength                 9&lt;br /&gt;
    bDescriptorType         2&lt;br /&gt;
    wTotalLength           32&lt;br /&gt;
    bNumInterfaces          1&lt;br /&gt;
    bConfigurationValue     1&lt;br /&gt;
    iConfiguration          0 &lt;br /&gt;
    bmAttributes         0x80&lt;br /&gt;
      (Bus Powered)&lt;br /&gt;
    MaxPower              100mA&lt;br /&gt;
    Interface Descriptor:&lt;br /&gt;
      bLength                 9&lt;br /&gt;
      bDescriptorType         4&lt;br /&gt;
      bInterfaceNumber        0&lt;br /&gt;
      bAlternateSetting       0&lt;br /&gt;
      bNumEndpoints           2&lt;br /&gt;
      bInterfaceClass        88 Xbox&lt;br /&gt;
      bInterfaceSubClass     66 Controller&lt;br /&gt;
      bInterfaceProtocol      0 &lt;br /&gt;
      iInterface              0 &lt;br /&gt;
      Endpoint Descriptor:&lt;br /&gt;
        bLength                 7&lt;br /&gt;
        bDescriptorType         5&lt;br /&gt;
        bEndpointAddress     0x81  EP 1 IN&lt;br /&gt;
        bmAttributes            3&lt;br /&gt;
          Transfer Type            Interrupt&lt;br /&gt;
          Synch Type               None&lt;br /&gt;
          Usage Type               Data&lt;br /&gt;
        wMaxPacketSize     0x0040  1x 64 bytes&lt;br /&gt;
        bInterval               4&lt;br /&gt;
      Endpoint Descriptor:&lt;br /&gt;
        bLength                 7&lt;br /&gt;
        bDescriptorType         5&lt;br /&gt;
        bEndpointAddress     0x02  EP 2 OUT&lt;br /&gt;
        bmAttributes            3&lt;br /&gt;
          Transfer Type            Interrupt&lt;br /&gt;
          Synch Type               None&lt;br /&gt;
          Usage Type               Data&lt;br /&gt;
        wMaxPacketSize     0x0040  1x 64 bytes&lt;br /&gt;
        bInterval               8&lt;br /&gt;
can't get debug descriptor: Resource temporarily unavailable&lt;br /&gt;
Device Status:     0x0000&lt;br /&gt;
  (Bus Powered)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Steel Battalion Controller ==&lt;br /&gt;
&lt;br /&gt;
=== USB Descriptors ===&lt;br /&gt;
&lt;br /&gt;
From http://www.yaronet.com/topics/154490-steel-battalion-controller-homemade#post-15&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;bcdUSB:             0x0110&lt;br /&gt;
bDeviceClass:         0x00&lt;br /&gt;
bDeviceSubClass:      0x00&lt;br /&gt;
bDeviceProtocol:      0x00&lt;br /&gt;
bMaxPacketSize0:      0x08 (8)&lt;br /&gt;
idVendor:           0x0A7B&lt;br /&gt;
idProduct:          0xD000&lt;br /&gt;
bcdDevice:          0x0100&lt;br /&gt;
iManufacturer:        0x00&lt;br /&gt;
iProduct:             0x00&lt;br /&gt;
iSerialNumber:        0x00&lt;br /&gt;
bNumConfigurations:   0x01&lt;br /&gt;
&lt;br /&gt;
ConnectionStatus: DeviceConnected&lt;br /&gt;
Current Config Value: 0x00&lt;br /&gt;
Device Bus Speed:     Full&lt;br /&gt;
Device Address:       0x03&lt;br /&gt;
Open Pipes:              0&lt;br /&gt;
&lt;br /&gt;
Configuration Descriptor:&lt;br /&gt;
wTotalLength:       0x0020&lt;br /&gt;
bNumInterfaces:       0x01&lt;br /&gt;
bConfigurationValue:  0x01&lt;br /&gt;
iConfiguration:       0x00&lt;br /&gt;
bmAttributes:         0x80 (Bus Powered )&lt;br /&gt;
MaxPower:             0xFA (500 Ma)&lt;br /&gt;
&lt;br /&gt;
Interface Descriptor:&lt;br /&gt;
bInterfaceNumber:     0x00&lt;br /&gt;
bAlternateSetting:    0x00&lt;br /&gt;
bNumEndpoints:        0x02&lt;br /&gt;
bInterfaceClass:      0x58&lt;br /&gt;
bInterfaceSubClass:   0x42&lt;br /&gt;
bInterfaceProtocol:   0x00&lt;br /&gt;
iInterface:           0x00&lt;br /&gt;
&lt;br /&gt;
Endpoint Descriptor:&lt;br /&gt;
bEndpointAddress:     0x82&lt;br /&gt;
Transfer Type:   Interrupt&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Controller to Xbox ===&lt;br /&gt;
&lt;br /&gt;
From http://steelbattalionnet.codeplex.com/SourceControl/latest#SBC/SteelBattalionController.cs&lt;br /&gt;
&lt;br /&gt;
26 bytes&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Field&lt;br /&gt;
!Offset (Bytes)&lt;br /&gt;
!Mask&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|RightJoyMainWeapon&lt;br /&gt;
|2&lt;br /&gt;
|0x01&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|RightJoyFire&lt;br /&gt;
|2&lt;br /&gt;
|0x03&lt;br /&gt;
|FIXME: WTF?! Mask might be bad?&lt;br /&gt;
|-&lt;br /&gt;
|RightJoyLockOn&lt;br /&gt;
|2&lt;br /&gt;
|0x04&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Eject&lt;br /&gt;
|2&lt;br /&gt;
|0x08&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|CockpitHatch&lt;br /&gt;
|2&lt;br /&gt;
|0x10&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Ignition&lt;br /&gt;
|2&lt;br /&gt;
|0x20&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Start&lt;br /&gt;
|2&lt;br /&gt;
|0x40&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|MultiMonOpenClose&lt;br /&gt;
|2&lt;br /&gt;
|0x80&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|MultiMonMapZoomInOut&lt;br /&gt;
|3&lt;br /&gt;
|0x01&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|MultiMonModeSelect&lt;br /&gt;
|3&lt;br /&gt;
|0x02&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|MultiMonSubMonitor&lt;br /&gt;
|3&lt;br /&gt;
|0x04&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|MainMonZoomIn&lt;br /&gt;
|3&lt;br /&gt;
|0x08&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|MainMonZoomOut&lt;br /&gt;
|3&lt;br /&gt;
|0x10&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|FunctionFSS&lt;br /&gt;
|3&lt;br /&gt;
|0x20&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|FunctionManipulator&lt;br /&gt;
|3&lt;br /&gt;
|0x40&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|FunctionLineColorChange&lt;br /&gt;
|3&lt;br /&gt;
|0x80&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Washing&lt;br /&gt;
|4&lt;br /&gt;
|0x01&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Extinguisher&lt;br /&gt;
|4&lt;br /&gt;
|0x02&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Chaff&lt;br /&gt;
|4&lt;br /&gt;
|0x04&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|FunctionTankDetach&lt;br /&gt;
|4&lt;br /&gt;
|0x08&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|FunctionOverride&lt;br /&gt;
|4&lt;br /&gt;
|0x10&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|FunctionNightScope&lt;br /&gt;
|4&lt;br /&gt;
|0x20&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|FunctionF1&lt;br /&gt;
|4&lt;br /&gt;
|0x40&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|FunctionF2&lt;br /&gt;
|4&lt;br /&gt;
|0x80&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|FunctionF3&lt;br /&gt;
|5&lt;br /&gt;
|0x01&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|WeaponConMain&lt;br /&gt;
|5&lt;br /&gt;
|0x02&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|WeaponConSub&lt;br /&gt;
|5&lt;br /&gt;
|0x04&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|WeaponConMagazine&lt;br /&gt;
|5&lt;br /&gt;
|0x08&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Comm1&lt;br /&gt;
|5&lt;br /&gt;
|0x10&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Comm2&lt;br /&gt;
|5&lt;br /&gt;
|0x20&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Comm3&lt;br /&gt;
|5&lt;br /&gt;
|0x40&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Comm4&lt;br /&gt;
|5&lt;br /&gt;
|0x80&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Comm5&lt;br /&gt;
|6&lt;br /&gt;
|0x01&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|LeftJoySightChange&lt;br /&gt;
|6&lt;br /&gt;
|0x02&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|ToggleFilterControl&lt;br /&gt;
|6&lt;br /&gt;
|0x04&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|ToggleOxygenSupply&lt;br /&gt;
|6&lt;br /&gt;
|0x08&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|ToggleFuelFlowRate&lt;br /&gt;
|6&lt;br /&gt;
|0x10&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|ToggleBuffreMaterial&lt;br /&gt;
|6&lt;br /&gt;
|0x20&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|ToggleVTLocation&lt;br /&gt;
|6&lt;br /&gt;
|0x40&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|6&lt;br /&gt;
|0x80&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|7&lt;br /&gt;
|0xFF&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|8&lt;br /&gt;
|0xFF&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|AimingX&lt;br /&gt;
|9&lt;br /&gt;
|0xFF, maybe 0xFFFF at offset 8?&lt;br /&gt;
|&amp;quot;Aiming Lever&amp;quot; joystick on the right.  X Axis value.&lt;br /&gt;
|-&lt;br /&gt;
|AimingY&lt;br /&gt;
|11&lt;br /&gt;
|0xFF, maybe 0xFFFF at offset 10?&lt;br /&gt;
|&amp;quot;Aiming Lever&amp;quot; joystick on the right.  Y Axis value.&lt;br /&gt;
|-&lt;br /&gt;
|RotationLever&lt;br /&gt;
|13&lt;br /&gt;
|0xFF, maybe 0xFFFF at offset 12?&lt;br /&gt;
|&amp;quot;Rotation Lever&amp;quot; joystick on the left.&lt;br /&gt;
|-&lt;br /&gt;
|SightChangeX&lt;br /&gt;
|15&lt;br /&gt;
|0xFF, maybe 0xFFFF at offset 14?&lt;br /&gt;
|&amp;quot;Sight Change&amp;quot; analog stick on the &amp;quot;Rotation Lever&amp;quot; joystick.  X Axis value.&lt;br /&gt;
|-&lt;br /&gt;
|SightChangeY&lt;br /&gt;
|17&lt;br /&gt;
|0xFF, maybe 0xFFFF at offset 16?&lt;br /&gt;
|&amp;quot;Sight Change&amp;quot; analog stick on the &amp;quot;Rotation Lever&amp;quot; joystick.  Y Axis value.&lt;br /&gt;
|-&lt;br /&gt;
|LeftPedal&lt;br /&gt;
|19&lt;br /&gt;
|0xFF, maybe 0xFFFF at offset 18?&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|MiddlePedal&lt;br /&gt;
|21&lt;br /&gt;
|0xFF, maybe 0xFFFF at offset 20?&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|RightPedal&lt;br /&gt;
|23&lt;br /&gt;
|0xFF, maybe 0xFFFF at offset 22?&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|TunerDial&lt;br /&gt;
|24&lt;br /&gt;
|0x0F&lt;br /&gt;
|The 9 o'clock postion is 0, and the 6 o'clock position is 12. The blank area between the 6 and 9 o'clock positions is 13, 14, and 15 clockwise.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|24&lt;br /&gt;
|0xF0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|GearLever&lt;br /&gt;
|25&lt;br /&gt;
|0xFF&lt;br /&gt;
|The gear lever on the left block.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Xbox to Controller ===&lt;br /&gt;
&lt;br /&gt;
From http://steelbattalionnet.codeplex.com/SourceControl/latest#SBC/SteelBattalionController.cs&lt;br /&gt;
&lt;br /&gt;
34 bytes&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Field&lt;br /&gt;
!Offset (Bytes)&lt;br /&gt;
!Mask&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|EmergencyEject&lt;br /&gt;
|2&lt;br /&gt;
|0x0F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|CockpitHatch&lt;br /&gt;
|2&lt;br /&gt;
|0xF0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Ignition&lt;br /&gt;
|3&lt;br /&gt;
|0x0F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Start&lt;br /&gt;
|3&lt;br /&gt;
|0xF0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|OpenClose&lt;br /&gt;
|4&lt;br /&gt;
|0x0F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|MapZoomInOut&lt;br /&gt;
|4&lt;br /&gt;
|0xF0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|ModeSelect&lt;br /&gt;
|5&lt;br /&gt;
|0x0F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SubMonitorModeSelect&lt;br /&gt;
|5&lt;br /&gt;
|0xF0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|MainMonitorZoomIn&lt;br /&gt;
|6&lt;br /&gt;
|0x0F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|MainMonitorZoomOut&lt;br /&gt;
|6&lt;br /&gt;
|0xF0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|ForecastShootingSystem&lt;br /&gt;
|7&lt;br /&gt;
|0x0F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Manipulator&lt;br /&gt;
|7&lt;br /&gt;
|0xF0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|LineColorChange&lt;br /&gt;
|8&lt;br /&gt;
|0x0F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Washing&lt;br /&gt;
|8&lt;br /&gt;
|0xF0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Extinguisher&lt;br /&gt;
|9&lt;br /&gt;
|0x0F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Chaff&lt;br /&gt;
|9&lt;br /&gt;
|0xF0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|TankDetach&lt;br /&gt;
|10&lt;br /&gt;
|0x0F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Override&lt;br /&gt;
|10&lt;br /&gt;
|0xF0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|NightScope&lt;br /&gt;
|11&lt;br /&gt;
|0x0F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|F1&lt;br /&gt;
|11&lt;br /&gt;
|0xF0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|F2&lt;br /&gt;
|12&lt;br /&gt;
|0x0F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|F3&lt;br /&gt;
|12&lt;br /&gt;
|0xF0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|MainWeaponControl&lt;br /&gt;
|13&lt;br /&gt;
|0x0F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SubWeaponControl&lt;br /&gt;
|13&lt;br /&gt;
|0xF0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|MagazineChange&lt;br /&gt;
|14&lt;br /&gt;
|0x0F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Comm1&lt;br /&gt;
|14&lt;br /&gt;
|0xF0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Comm2&lt;br /&gt;
|15&lt;br /&gt;
|0x0F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Comm3&lt;br /&gt;
|15&lt;br /&gt;
|0xF0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Comm4&lt;br /&gt;
|16&lt;br /&gt;
|0x0F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Comm5&lt;br /&gt;
|16&lt;br /&gt;
|0xF0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|17&lt;br /&gt;
|0x0F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|GearR&lt;br /&gt;
|17&lt;br /&gt;
|0xF0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|GearN&lt;br /&gt;
|18&lt;br /&gt;
|0x0F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Gear1&lt;br /&gt;
|18&lt;br /&gt;
|0xF0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Gear2&lt;br /&gt;
|19&lt;br /&gt;
|0x0F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Gear3&lt;br /&gt;
|19&lt;br /&gt;
|0xF0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Gear4&lt;br /&gt;
|20&lt;br /&gt;
|0x0F&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Gear5&lt;br /&gt;
|20&lt;br /&gt;
|0xF0&lt;br /&gt;
|&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=Main_Page&amp;diff=5938</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=Main_Page&amp;diff=5938"/>
				<updated>2017-07-31T07:35:44Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{:Main Page/Header}}&lt;br /&gt;
&lt;br /&gt;
== Hardware ==&lt;br /&gt;
&lt;br /&gt;
* [[Chihiro]]&lt;br /&gt;
* [[Xbox]]&lt;br /&gt;
&lt;br /&gt;
* [[Hardware Revisions]]&lt;br /&gt;
* [[Motherboard]]&lt;br /&gt;
* [[CPU]]&lt;br /&gt;
* [[NV2A]]&lt;br /&gt;
** [[NV2A/Vertex attributes]]&lt;br /&gt;
** [[NV2A/Fixed Function Pipeline]]&lt;br /&gt;
** [[NV2A/Vertex Shader]]&lt;br /&gt;
** [[NV2A/Pixel Combiner]]&lt;br /&gt;
** [[NV2A/Surface Formats]]&lt;br /&gt;
* [[Memory]]&lt;br /&gt;
* [[Flash]]&lt;br /&gt;
* [[MCPX]]&lt;br /&gt;
** [[APU]]&lt;br /&gt;
** [[ACI]]&lt;br /&gt;
* [[EEPROM]]&lt;br /&gt;
* [[SMC]]&lt;br /&gt;
* [[Video Encoder]]&lt;br /&gt;
** [[AV Cables]]&lt;br /&gt;
* [[NVNet|Network Controller (NVNet)]]&lt;br /&gt;
* [[DVD Drive]]&lt;br /&gt;
** [[Xbox Game Disc]]&lt;br /&gt;
* [[Hard Drive]]&lt;br /&gt;
* [[USB]]&lt;br /&gt;
** [[Xbox Input Devices]]&lt;br /&gt;
** [[Xbox Memory Unit]]&lt;br /&gt;
** [[Xbox Live Communicator]] &amp;lt;!-- Maybe rename this to microphones later? --&amp;gt;&lt;br /&gt;
** [[DVD-IR Internals]]&lt;br /&gt;
* [[Power Supply]]&lt;br /&gt;
&lt;br /&gt;
* [[Development Kits]]&lt;br /&gt;
** [[Super I/O]]&lt;br /&gt;
** [[DVD Emulator]]&lt;br /&gt;
&lt;br /&gt;
== System Software ==&lt;br /&gt;
* [[MCPX ROM]]&lt;br /&gt;
* [[BIOS]] / [[Kernel]]&lt;br /&gt;
** [[Boot Process]]&lt;br /&gt;
** [[XBE]] (Executable file format)&lt;br /&gt;
* [[FATX]] (Filesystem)&lt;br /&gt;
* [[Dashboard]]&lt;br /&gt;
* [[Exploits]]&lt;br /&gt;
&lt;br /&gt;
== Development Kits and Tools ==&lt;br /&gt;
* [https://github.com/xqemu/nxdk nxdk (New Xbox Development Kit)]&lt;br /&gt;
* [[OpenXDK]]&lt;br /&gt;
* [[Microsoft XDK]]&lt;br /&gt;
** [[Xbox Debug Monitor]]&lt;br /&gt;
** [[Xbox Neighborhood]]&lt;br /&gt;
** [[Kernel_Debug| Xbox Kernel Debugging]]&lt;br /&gt;
&lt;br /&gt;
== Games ==&lt;br /&gt;
* [[:Category:Games|Games]]&lt;br /&gt;
* [[Engine List]]&lt;br /&gt;
&lt;br /&gt;
== Emulation ==&lt;br /&gt;
* [[Emulators]]&lt;br /&gt;
** [[XQEMU]]&lt;br /&gt;
** [[Xbox 360 Backward Compatibility]]&lt;br /&gt;
&lt;br /&gt;
== Other ==&lt;br /&gt;
* [[Network]]&lt;br /&gt;
* [[Patents]]&lt;br /&gt;
* Find random stuff in [[Resources]]&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=Kernel&amp;diff=5922</id>
		<title>Kernel</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=Kernel&amp;diff=5922"/>
				<updated>2017-07-17T04:08:11Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: Calling conventions are x86 specific.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Xbox kernel is called xboxkrnl.exe. It is closely related to the Windows NT [[Wikipedia:Ntoskrnl.exe|ntoskrnl.exe]].&lt;br /&gt;
Its image base address is always 0x80010000.&lt;br /&gt;
&lt;br /&gt;
== Header modifications ==&lt;br /&gt;
&lt;br /&gt;
xboxkrnl.exe is a mostly standard exe file.&lt;br /&gt;
However, the MS-DOS header was patched to contain Xbox specific data in the reserved 20 byte block starting at offset 40:&lt;br /&gt;
&lt;br /&gt;
{| class=wikitable&lt;br /&gt;
! Offset !! Meaning&lt;br /&gt;
|-&lt;br /&gt;
|40 || Size of uninitialized portion of the .data section&lt;br /&gt;
|-&lt;br /&gt;
|44 || Size of initialized portion of the .data section&lt;br /&gt;
|-&lt;br /&gt;
|48 || Memory address of initialized portion of the .data section (usually in [[Flash]]). &amp;lt;br&amp;gt; Used to re-initialize the data section pointed to by the next field. &amp;lt;br&amp;gt; Note that the pointer might be invalid during normal execution as the Flash might not be mapped at all times.&lt;br /&gt;
|-&lt;br /&gt;
|52 || Memory address where the .data section is stored (usually the same as in the section header + image base).&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Sections ==&lt;br /&gt;
&lt;br /&gt;
All sections are identity mapped (meaning file offsets and offsets in RAM match). This is because the kernel is not loaded through a traditional PE / exe loader, but just unpacked into memory.&lt;br /&gt;
&lt;br /&gt;
=== .text ===&lt;br /&gt;
&lt;br /&gt;
The .text section contains the kernel exports.&lt;br /&gt;
&lt;br /&gt;
=== .data ===&lt;br /&gt;
&lt;br /&gt;
The .data section stores initialized and uninitialized data.&lt;br /&gt;
A copy of the initialized portion of this section is usually stored in the [[BIOS]].&lt;br /&gt;
&lt;br /&gt;
=== STICKY ===&lt;br /&gt;
&lt;br /&gt;
Stores variables which must be preserved across a quick-reboot.&lt;br /&gt;
&lt;br /&gt;
=== IDEXPRDT ===&lt;br /&gt;
&lt;br /&gt;
A Physical Region Descriptor Table (PRDT) for the IDE bus. This section serves as a memory allocation only, it does not have to be initialized when loading the kernel{{citation needed}}.&lt;br /&gt;
&lt;br /&gt;
=== INIT ===&lt;br /&gt;
&lt;br /&gt;
This section is always the last one. It contains the entrypoint of the kernel.&lt;br /&gt;
This does all the cold-boot kernel initialization as described [[Boot_Process#Initialization|here]].&lt;br /&gt;
Later kernels{{FIXME|reason=Which revision? right now it appears that *ALL* kernels will discard this}} will discard this section after initialization.&lt;br /&gt;
INIT also contains the [[Boot Animation]], so once the kernel has finished booting it can't do a full hardware re-initialization or play the boot animation anymore.&lt;br /&gt;
&lt;br /&gt;
== Kernel exports ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Kernel exports&lt;br /&gt;
|-&lt;br /&gt;
!Name&lt;br /&gt;
!Ordinal&lt;br /&gt;
!x86 Calling Convention&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/AvGetSavedDataAddress]]&lt;br /&gt;
|1&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/AvSendTVEncoderOption]]&lt;br /&gt;
|2&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/AvSetDisplayMode]]&lt;br /&gt;
|3&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/AvSetSavedDataAddress]]&lt;br /&gt;
|4&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgBreakPoint]]&lt;br /&gt;
|5&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgBreakPointWithStatus]]&lt;br /&gt;
|6&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgLoadImageSymbols]]&lt;br /&gt;
|7&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgPrint]]&lt;br /&gt;
|8&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalReadSMCTrayState]]&lt;br /&gt;
|9&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgPrompt]]&lt;br /&gt;
|10&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgUnLoadImageSymbols]]&lt;br /&gt;
|11&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExAcquireReadWriteLockExclusive]]&lt;br /&gt;
|12&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExAcquireReadWriteLockShared]]&lt;br /&gt;
|13&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExAllocatePool]]&lt;br /&gt;
|14&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExAllocatePoolWithTag]]&lt;br /&gt;
|15&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExEventObjectType]]&lt;br /&gt;
|16&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_TYPE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExFreePool]]&lt;br /&gt;
|17&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExInitializeReadWriteLock]]&lt;br /&gt;
|18&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExInterlockedAddLargeInteger]]&lt;br /&gt;
|19&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExInterlockedAddLargeStatistic]]&lt;br /&gt;
|20&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExInterlockedCompareExchange64]]&lt;br /&gt;
|21&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExMutantObjectType]]&lt;br /&gt;
|22&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_TYPE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExQueryPoolBlockSize]]&lt;br /&gt;
|23&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExQueryNonVolatileSetting]]&lt;br /&gt;
|24&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExReadWriteRefurbInfo]]&lt;br /&gt;
|25&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExRaiseException]]&lt;br /&gt;
|26&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExRaiseStatus]]&lt;br /&gt;
|27&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExReleaseReadWriteLock]]&lt;br /&gt;
|28&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExSaveNonVolatileSetting]]&lt;br /&gt;
|29&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExSemaphoreObjectType]]&lt;br /&gt;
|30&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_TYPE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExTimerObjectType]]&lt;br /&gt;
|31&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_TYPE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExfInterlockedInsertHeadList]]&lt;br /&gt;
|32&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExfInterlockedInsertTailList]]&lt;br /&gt;
|33&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExfInterlockedRemoveHeadList]]&lt;br /&gt;
|34&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/FscGetCacheSize]]&lt;br /&gt;
|35&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/FscInvalidateIdleBlocks]]&lt;br /&gt;
|36&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/FscSetCacheSize]]&lt;br /&gt;
|37&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalClearSoftwareInterrupt]]&lt;br /&gt;
|38&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalDisableSystemInterrupt]]&lt;br /&gt;
|39&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalDiskCachePartitionCount]]&lt;br /&gt;
|40&lt;br /&gt;
|&lt;br /&gt;
|Variable: ULONG&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalDiskModelNumber]]&lt;br /&gt;
|41&lt;br /&gt;
|&lt;br /&gt;
|Variable: STRING&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalDiskSerialNumber]]&lt;br /&gt;
|42&lt;br /&gt;
|&lt;br /&gt;
|Variable: STRING&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalEnableSystemInterrupt]]&lt;br /&gt;
|43&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalGetInterruptVector]]&lt;br /&gt;
|44&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalReadSMBusValue]]&lt;br /&gt;
|45&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalReadWritePCISpace]]&lt;br /&gt;
|46&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalRegisterShutdownNotification]]&lt;br /&gt;
|47&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalRequestSoftwareInterrupt]]&lt;br /&gt;
|48&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalReturnToFirmware]]&lt;br /&gt;
|49&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalWriteSMBusValue]]&lt;br /&gt;
|50&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedCompareExchange]]&lt;br /&gt;
|51&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedDecrement]]&lt;br /&gt;
|52&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedIncrement]]&lt;br /&gt;
|53&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedExchange]]&lt;br /&gt;
|54&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedExchangeAdd]]&lt;br /&gt;
|55&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedFlushSList]]&lt;br /&gt;
|56&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedPopEntrySList]]&lt;br /&gt;
|57&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedPushEntrySList]]&lt;br /&gt;
|58&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoAllocateIrp]]&lt;br /&gt;
|59&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoBuildAsynchronousFsdRequest]]&lt;br /&gt;
|60&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoBuildDeviceIoControlRequest]]&lt;br /&gt;
|61&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoBuildSynchronousFsdRequest]]&lt;br /&gt;
|62&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoCheckShareAccess]]&lt;br /&gt;
|63&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoCompletionObjectType]]&lt;br /&gt;
|64&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_TYPE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoCreateDevice]]&lt;br /&gt;
|65&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoCreateFile]]&lt;br /&gt;
|66&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoCreateSymbolicLink]]&lt;br /&gt;
|67&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoDeleteDevice]]&lt;br /&gt;
|68&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoDeleteSymbolicLink]]&lt;br /&gt;
|69&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoDeviceObjectType]]&lt;br /&gt;
|70&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_TYPE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoFileObjectType]]&lt;br /&gt;
|71&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_TYPE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoFreeIrp]]&lt;br /&gt;
|72&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoInitializeIrp]]&lt;br /&gt;
|73&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoInvalidDeviceRequest]]&lt;br /&gt;
|74&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoQueryFileInformation]]&lt;br /&gt;
|75&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoQueryVolumeInformation]]&lt;br /&gt;
|76&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoQueueThreadIrp]]&lt;br /&gt;
|77&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoRemoveShareAccess]]&lt;br /&gt;
|78&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoSetIoCompletion]]&lt;br /&gt;
|79&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoSetShareAccess]]&lt;br /&gt;
|80&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoStartNextPacket]]&lt;br /&gt;
|81&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoStartNextPacketByKey]]&lt;br /&gt;
|82&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoStartPacket]]&lt;br /&gt;
|83&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoSynchronousDeviceIoControlRequest]]&lt;br /&gt;
|84&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoSynchronousFsdRequest]]&lt;br /&gt;
|85&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IofCallDriver]]&lt;br /&gt;
|86&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IofCompleteRequest]]&lt;br /&gt;
|87&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KdDebuggerEnabled]]&lt;br /&gt;
|88&lt;br /&gt;
|&lt;br /&gt;
|Variable: BOOLEAN&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KdDebuggerNotPresent]]&lt;br /&gt;
|89&lt;br /&gt;
|&lt;br /&gt;
|Variable: BOOLEAN&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoDismountVolume]]&lt;br /&gt;
|90&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoDismountVolumeByName]]&lt;br /&gt;
|91&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeAlertResumeThread]]&lt;br /&gt;
|92&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeAlertThread]]&lt;br /&gt;
|93&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeBoostPriorityThread]]&lt;br /&gt;
|94&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeBugCheck]]&lt;br /&gt;
|95&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeBugCheckEx]]&lt;br /&gt;
|96&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeCancelTimer]]&lt;br /&gt;
|97&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeConnectInterrupt]]&lt;br /&gt;
|98&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeDelayExecutionThread]]&lt;br /&gt;
|99&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeDisconnectInterrupt]]&lt;br /&gt;
|100&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeEnterCriticalRegion]]&lt;br /&gt;
|101&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmGlobalData]]&lt;br /&gt;
|102&lt;br /&gt;
|&lt;br /&gt;
|Variable: MMGLOBALDATA&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeGetCurrentIrql]]&lt;br /&gt;
|103&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeGetCurrentThread]]&lt;br /&gt;
|104&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeApc]]&lt;br /&gt;
|105&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeDeviceQueue]]&lt;br /&gt;
|106&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeDpc]]&lt;br /&gt;
|107&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeEvent]]&lt;br /&gt;
|108&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeInterrupt]]&lt;br /&gt;
|109&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeMutant]]&lt;br /&gt;
|110&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeQueue]]&lt;br /&gt;
|111&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeSemaphore]]&lt;br /&gt;
|112&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeTimerEx]]&lt;br /&gt;
|113&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertByKeyDeviceQueue]]&lt;br /&gt;
|114&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertDeviceQueue]]&lt;br /&gt;
|115&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertHeadQueue]]&lt;br /&gt;
|116&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertQueue]]&lt;br /&gt;
|117&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertQueueApc]]&lt;br /&gt;
|118&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertQueueDpc]]&lt;br /&gt;
|119&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInterruptTime]]&lt;br /&gt;
|120&lt;br /&gt;
|&lt;br /&gt;
|Variable: KSYSTEM_TIME&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeIsExecutingDpc]]&lt;br /&gt;
|121&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeLeaveCriticalRegion]]&lt;br /&gt;
|122&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KePulseEvent]]&lt;br /&gt;
|123&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeQueryBasePriorityThread]]&lt;br /&gt;
|124&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeQueryInterruptTime]]&lt;br /&gt;
|125&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeQueryPerformanceCounter]]&lt;br /&gt;
|126&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeQueryPerformanceFrequency]]&lt;br /&gt;
|127&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeQuerySystemTime]]&lt;br /&gt;
|128&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRaiseIrqlToDpcLevel]]&lt;br /&gt;
|129&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRaiseIrqlToSynchLevel]]&lt;br /&gt;
|130&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeReleaseMutant]]&lt;br /&gt;
|131&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeReleaseSemaphore]]&lt;br /&gt;
|132&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRemoveByKeyDeviceQueue]]&lt;br /&gt;
|133&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRemoveDeviceQueue]]&lt;br /&gt;
|134&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRemoveEntryDeviceQueue]]&lt;br /&gt;
|135&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRemoveQueue]]&lt;br /&gt;
|136&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRemoveQueueDpc]]&lt;br /&gt;
|137&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeResetEvent]]&lt;br /&gt;
|138&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRestoreFloatingPointState]]&lt;br /&gt;
|139&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeResumeThread]]&lt;br /&gt;
|140&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRundownQueue]]&lt;br /&gt;
|141&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSaveFloatingPointState]]&lt;br /&gt;
|142&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetBasePriorityThread]]&lt;br /&gt;
|143&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetDisableBoostThread]]&lt;br /&gt;
|144&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetEvent]]&lt;br /&gt;
|145&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetEventBoostPriority]]&lt;br /&gt;
|146&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetPriorityProcess]]&lt;br /&gt;
|147&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetPriorityThread]]&lt;br /&gt;
|148&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetTimer]]&lt;br /&gt;
|149&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetTimerEx]]&lt;br /&gt;
|150&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeStallExecutionProcessor]]&lt;br /&gt;
|151&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSuspendThread]]&lt;br /&gt;
|152&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSynchronizeExecution]]&lt;br /&gt;
|153&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSystemTime]]&lt;br /&gt;
|154&lt;br /&gt;
|&lt;br /&gt;
|Variable: KSYSTEM_TIME&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeTestAlertThread]]&lt;br /&gt;
|155&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeTickCount]]&lt;br /&gt;
|156&lt;br /&gt;
|&lt;br /&gt;
|Variable: ULONG&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeTimeIncrement]]&lt;br /&gt;
|157&lt;br /&gt;
|&lt;br /&gt;
|Variable: ULONG&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeWaitForMultipleObjects]]&lt;br /&gt;
|158&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeWaitForSingleObject]]&lt;br /&gt;
|159&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KfRaiseIrql]]&lt;br /&gt;
|160&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KfLowerIrql]]&lt;br /&gt;
|161&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KiBugCheckData]]&lt;br /&gt;
|162&lt;br /&gt;
|&lt;br /&gt;
|Variable: ULONG_PTR[5]&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KiUnlockDispatcherDatabase]]&lt;br /&gt;
|163&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/LaunchDataPage]]&lt;br /&gt;
|164&lt;br /&gt;
|&lt;br /&gt;
|Variable: PLAUNCH_DATA_PAGE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmAllocateContiguousMemory]]&lt;br /&gt;
|165&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmAllocateContiguousMemoryEx]]&lt;br /&gt;
|166&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmAllocateSystemMemory]]&lt;br /&gt;
|167&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmClaimGpuInstanceMemory]]&lt;br /&gt;
|168&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmCreateKernelStack]]&lt;br /&gt;
|169&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDeleteKernelStack]]&lt;br /&gt;
|170&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmFreeContiguousMemory]]&lt;br /&gt;
|171&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmFreeSystemMemory]]&lt;br /&gt;
|172&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmGetPhysicalAddress]]&lt;br /&gt;
|173&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmIsAddressValid]]&lt;br /&gt;
|174&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmLockUnlockBufferPages]]&lt;br /&gt;
|175&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmLockUnlockPhysicalPage]]&lt;br /&gt;
|176&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmMapIoSpace]]&lt;br /&gt;
|177&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmPersistContiguousMemory]]&lt;br /&gt;
|178&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmQueryAddressProtect]]&lt;br /&gt;
|179&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmQueryAllocationSize]]&lt;br /&gt;
|180&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmQueryStatistics]]&lt;br /&gt;
|181&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmSetAddressProtect]]&lt;br /&gt;
|182&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmUnmapIoSpace]]&lt;br /&gt;
|183&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtAllocateVirtualMemory]]&lt;br /&gt;
|184&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCancelTimer]]&lt;br /&gt;
|185&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtClearEvent]]&lt;br /&gt;
|186&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtClose]]&lt;br /&gt;
|187&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateDirectoryObject]]&lt;br /&gt;
|188&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateEvent]]&lt;br /&gt;
|189&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateFile]]&lt;br /&gt;
|190&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateIoCompletion]]&lt;br /&gt;
|191&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateMutant]]&lt;br /&gt;
|192&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateSemaphore]]&lt;br /&gt;
|193&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateTimer]]&lt;br /&gt;
|194&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtDeleteFile]]&lt;br /&gt;
|195&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtDeviceIoControlFile]]&lt;br /&gt;
|196&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtDuplicateObject]]&lt;br /&gt;
|197&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtFlushBuffersFile]]&lt;br /&gt;
|198&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtFreeVirtualMemory]]&lt;br /&gt;
|199&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtFsControlFile]]&lt;br /&gt;
|200&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtOpenDirectoryObject]]&lt;br /&gt;
|201&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtOpenFile]]&lt;br /&gt;
|202&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtOpenSymbolicLinkObject]]&lt;br /&gt;
|203&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtProtectVirtualMemory]]&lt;br /&gt;
|204&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtPulseEvent]]&lt;br /&gt;
|205&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueueApcThread]]&lt;br /&gt;
|206&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryDirectoryFile]]&lt;br /&gt;
|207&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryDirectoryObject]]&lt;br /&gt;
|208&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryEvent]]&lt;br /&gt;
|209&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryFullAttributesFile]]&lt;br /&gt;
|210&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryInformationFile]]&lt;br /&gt;
|211&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryIoCompletion]]&lt;br /&gt;
|212&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryMutant]]&lt;br /&gt;
|213&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQuerySemaphore]]&lt;br /&gt;
|214&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQuerySymbolicLinkObject]]&lt;br /&gt;
|215&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryTimer]]&lt;br /&gt;
|216&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryVirtualMemory]]&lt;br /&gt;
|217&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryVolumeInformationFile]]&lt;br /&gt;
|218&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtReadFile]]&lt;br /&gt;
|219&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtReadFileScatter]]&lt;br /&gt;
|220&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtReleaseMutant]]&lt;br /&gt;
|221&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtReleaseSemaphore]]&lt;br /&gt;
|222&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtRemoveIoCompletion]]&lt;br /&gt;
|223&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtResumeThread]]&lt;br /&gt;
|224&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSetEvent]]&lt;br /&gt;
|225&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSetInformationFile]]&lt;br /&gt;
|226&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSetIoCompletion]]&lt;br /&gt;
|227&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSetSystemTime]]&lt;br /&gt;
|228&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSetTimerEx]]&lt;br /&gt;
|229&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSignalAndWaitForSingleObjectEx]]&lt;br /&gt;
|230&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSuspendThread]]&lt;br /&gt;
|231&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtUserIoApcDispatcher]]&lt;br /&gt;
|232&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtWaitForSingleObject]]&lt;br /&gt;
|233&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtWaitForSingleObjectEx]]&lt;br /&gt;
|234&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtWaitForMultipleObjectsEx]]&lt;br /&gt;
|235&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtWriteFile]]&lt;br /&gt;
|236&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtWriteFileGather]]&lt;br /&gt;
|237&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtYieldExecution]]&lt;br /&gt;
|238&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObCreateObject]]&lt;br /&gt;
|239&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObDirectoryObjectType]]&lt;br /&gt;
|240&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_TYPE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObInsertObject]]&lt;br /&gt;
|241&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObMakeTemporaryObject]]&lt;br /&gt;
|242&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObOpenObjectByName]]&lt;br /&gt;
|243&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObOpenObjectByPointer]]&lt;br /&gt;
|244&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObpObjectHandleTable]]&lt;br /&gt;
|245&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_HANDLE_TABLE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObReferenceObjectByHandle]]&lt;br /&gt;
|246&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObReferenceObjectByName]]&lt;br /&gt;
|247&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObReferenceObjectByPointer]]&lt;br /&gt;
|248&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObSymbolicLinkObjectType]]&lt;br /&gt;
|249&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_TYPE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObfDereferenceObject]]&lt;br /&gt;
|250&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObfReferenceObject]]&lt;br /&gt;
|251&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PhyGetLinkState]]&lt;br /&gt;
|252&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PhyInitialize]]&lt;br /&gt;
|253&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsCreateSystemThread]]&lt;br /&gt;
|254&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsCreateSystemThreadEx]]&lt;br /&gt;
|255&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsQueryStatistics]]&lt;br /&gt;
|256&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsSetCreateThreadNotifyRoutine]]&lt;br /&gt;
|257&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsTerminateSystemThread]]&lt;br /&gt;
|258&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsThreadObjectType]]&lt;br /&gt;
|259&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_TYPE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlAnsiStringToUnicodeString]]&lt;br /&gt;
|260&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlAppendStringToString]]&lt;br /&gt;
|261&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlAppendUnicodeStringToString]]&lt;br /&gt;
|262&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlAppendUnicodeToString]]&lt;br /&gt;
|263&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlAssert]]&lt;br /&gt;
|264&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCaptureContext]]&lt;br /&gt;
|265&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCaptureStackBackTrace]]&lt;br /&gt;
|266&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCharToInteger]]&lt;br /&gt;
|267&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCompareMemory]]&lt;br /&gt;
|268&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCompareMemoryUlong]]&lt;br /&gt;
|269&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCompareString]]&lt;br /&gt;
|270&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCompareUnicodeString]]&lt;br /&gt;
|271&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCopyString]]&lt;br /&gt;
|272&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCopyUnicodeString]]&lt;br /&gt;
|273&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCreateUnicodeString]]&lt;br /&gt;
|274&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlDowncaseUnicodeChar]]&lt;br /&gt;
|275&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlDowncaseUnicodeString]]&lt;br /&gt;
|276&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlEnterCriticalSection]]&lt;br /&gt;
|277&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlEnterCriticalSectionAndRegion]]&lt;br /&gt;
|278&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlEqualString]]&lt;br /&gt;
|279&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlEqualUnicodeString]]&lt;br /&gt;
|280&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlExtendedIntegerMultiply]]&lt;br /&gt;
|281&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlExtendedLargeIntegerDivide]]&lt;br /&gt;
|282&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlExtendedMagicDivide]]&lt;br /&gt;
|283&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlFillMemory]]&lt;br /&gt;
|284&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlFillMemoryUlong]]&lt;br /&gt;
|285&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlFreeAnsiString]]&lt;br /&gt;
|286&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlFreeUnicodeString]]&lt;br /&gt;
|287&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlGetCallersAddress]]&lt;br /&gt;
|288&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlInitAnsiString]]&lt;br /&gt;
|289&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlInitUnicodeString]]&lt;br /&gt;
|290&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlInitializeCriticalSection]]&lt;br /&gt;
|291&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlIntegerToChar]]&lt;br /&gt;
|292&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlIntegerToUnicodeString]]&lt;br /&gt;
|293&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlLeaveCriticalSection]]&lt;br /&gt;
|294&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlLeaveCriticalSectionAndRegion]]&lt;br /&gt;
|295&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlLowerChar]]&lt;br /&gt;
|296&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlMapGenericMask]]&lt;br /&gt;
|297&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlMoveMemory]]&lt;br /&gt;
|298&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlMultiByteToUnicodeN]]&lt;br /&gt;
|299&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlMultiByteToUnicodeSize]]&lt;br /&gt;
|300&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlNtStatusToDosError]]&lt;br /&gt;
|301&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlRaiseException]]&lt;br /&gt;
|302&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlRaiseStatus]]&lt;br /&gt;
|303&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlTimeFieldsToTime]]&lt;br /&gt;
|304&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlTimeToTimeFields]]&lt;br /&gt;
|305&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlTryEnterCriticalSection]]&lt;br /&gt;
|306&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUlongByteSwap]]&lt;br /&gt;
|307&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUnicodeStringToAnsiString]]&lt;br /&gt;
|308&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUnicodeStringToInteger]]&lt;br /&gt;
|309&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUnicodeToMultiByteN]]&lt;br /&gt;
|310&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUnicodeToMultiByteSize]]&lt;br /&gt;
|311&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUnwind]]&lt;br /&gt;
|312&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUpcaseUnicodeChar]]&lt;br /&gt;
|313&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUpcaseUnicodeString]]&lt;br /&gt;
|314&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUpcaseUnicodeToMultiByteN]]&lt;br /&gt;
|315&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUpperChar]]&lt;br /&gt;
|316&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUpperString]]&lt;br /&gt;
|317&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUshortByteSwap]]&lt;br /&gt;
|318&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlWalkFrameChain]]&lt;br /&gt;
|319&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlZeroMemory]]&lt;br /&gt;
|320&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxEEPROMKey]]&lt;br /&gt;
|321&lt;br /&gt;
|&lt;br /&gt;
|Variable: XBOX_KEY_DATA&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxHardwareInfo]]&lt;br /&gt;
|322&lt;br /&gt;
|&lt;br /&gt;
|Variable: XBOX_HARDWARE_INFO&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxHDKey]]&lt;br /&gt;
|323&lt;br /&gt;
|&lt;br /&gt;
|Variable: XBOX_KEY_DATA&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxKrnlVersion]]&lt;br /&gt;
|324&lt;br /&gt;
|&lt;br /&gt;
|Variable: XBOX_KRNL_VERSION&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxSignatureKey]]&lt;br /&gt;
|325&lt;br /&gt;
|&lt;br /&gt;
|Variable: XBOX_KEY_DATA&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XeImageFileName]]&lt;br /&gt;
|326&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_STRING&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XeLoadSection]]&lt;br /&gt;
|327&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XeUnloadSection]]&lt;br /&gt;
|328&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/READ_PORT_BUFFER_UCHAR]]&lt;br /&gt;
|329&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/READ_PORT_BUFFER_USHORT]]&lt;br /&gt;
|330&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/READ_PORT_BUFFER_ULONG]]&lt;br /&gt;
|331&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/WRITE_PORT_BUFFER_UCHAR]]&lt;br /&gt;
|332&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/WRITE_PORT_BUFFER_USHORT]]&lt;br /&gt;
|333&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/WRITE_PORT_BUFFER_ULONG]]&lt;br /&gt;
|334&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcSHAInit]]&lt;br /&gt;
|335&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcSHAUpdate]]&lt;br /&gt;
|336&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcSHAFinal]]&lt;br /&gt;
|337&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcRC4Key]]&lt;br /&gt;
|338&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcRC4Crypt]]&lt;br /&gt;
|339&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcHMAC]]&lt;br /&gt;
|340&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcPKEncPublic]]&lt;br /&gt;
|341&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcPKDecPrivate]]&lt;br /&gt;
|342&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcPKGetKeyLen]]&lt;br /&gt;
|343&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcVerifyPKCS1Signature]]&lt;br /&gt;
|344&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcModExp]]&lt;br /&gt;
|345&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcDESKeyParity]]&lt;br /&gt;
|346&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcKeyTable]]&lt;br /&gt;
|347&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcBlockCrypt]]&lt;br /&gt;
|348&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcBlockCryptCBC]]&lt;br /&gt;
|349&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcCryptService]]&lt;br /&gt;
|350&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcUpdateCrypto]]&lt;br /&gt;
|351&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlRip]]&lt;br /&gt;
|352&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxLANKey]]&lt;br /&gt;
|353&lt;br /&gt;
|&lt;br /&gt;
|Variable: XBOX_KEY_DATA&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxAlternateSignatureKeys]]&lt;br /&gt;
|354&lt;br /&gt;
|&lt;br /&gt;
|Variable: XBOX_KEY_DATA[XBEIMAGE_ALTERNATE_TITLE_ID_COUNT]&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XePublicKeyData]]&lt;br /&gt;
|355&lt;br /&gt;
|&lt;br /&gt;
|Variable: UCHAR[XC_PUBLIC_KEYDATA_SIZE]&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalBootSMCVideoMode]]&lt;br /&gt;
|356&lt;br /&gt;
|&lt;br /&gt;
|Variable: ULONG&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IdexChannelObject]]&lt;br /&gt;
|357&lt;br /&gt;
|&lt;br /&gt;
|Variable: IDE_CHANNEL_OBJECT&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalIsResetOrShutdownPending]]&lt;br /&gt;
|358&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoMarkIrpMustComplete]]&lt;br /&gt;
|359&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalInitiateShutdown]]&lt;br /&gt;
|360&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlSnprintf]]&lt;br /&gt;
|361&lt;br /&gt;
|stdcall&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlSprintf]]&lt;br /&gt;
|362&lt;br /&gt;
|stdcall&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlVsnprintf]]&lt;br /&gt;
|363&lt;br /&gt;
|stdcall&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlVsprintf]]&lt;br /&gt;
|364&lt;br /&gt;
|stdcall&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalEnableSecureTrayEject]]&lt;br /&gt;
|365&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalWriteSMCScratchRegister]]&lt;br /&gt;
|366&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|367&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|368&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|369&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|370&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|371&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|372&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|373&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDbgAllocateMemory]]&lt;br /&gt;
|374&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDbgFreeMemory]]&lt;br /&gt;
|375&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDbgQueryAvailablePages]]&lt;br /&gt;
|376&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDbgReleaseAddress]]&lt;br /&gt;
|377&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDbgWriteCheck]]&lt;br /&gt;
|378&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=CPU&amp;diff=5921</id>
		<title>CPU</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=CPU&amp;diff=5921"/>
				<updated>2017-07-17T02:47:32Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The CPU in the Xbox was a custom Pentium 3 running at 733MHz. The 'custom' part of this was that that the Pentium 3 in the Xbox was that it had only 128KB L2 cache instead of the usual 256KB. This allowed Microsoft to buy them at a bit of a discount and Intel to shift a few more CPUs{{citation needed}}.&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.intel.com/content/dam/support/us/en/documents/processors/mobile/celeron/sb/28365403.pdf Mobile Intel® Celeron® Processor (0.18μ) in BGA2 and Micro-PGA2 Packages] (This datasheet is for the mobile version Coppermine with 256kB L2 cache. It does not contain the Xbox Coppermine-128 with 128kB L2 cache at 733MHz (S-Spec SL5SN). No such datasheet exists. Both differences are pin compatible.&lt;br /&gt;
* [https://www.google.com/patents/US20050282621 CPU upgrading adapter for a Microsoft XboxTM game machine] US Patent Application 20050282621 by Friendtech, filed 2003-08-21.&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=Patents&amp;diff=5920</id>
		<title>Patents</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=Patents&amp;diff=5920"/>
				<updated>2017-07-17T02:34:41Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Here a list of patents that might be related to the original Xbox:&lt;br /&gt;
&lt;br /&gt;
* Filed 1997-11-25 by Nvidia: https://www.google.com/patents/US6697063 &amp;quot;Rendering pipeline&amp;quot;&lt;br /&gt;
* Filed 1998-12-23 by Microsoft: https://www.google.com/patents/US6417858 &amp;quot;Processor for geometry transformations and lighting calculations&amp;quot;&lt;br /&gt;
* Filed 1999-12-06 by Nvidia: https://www.google.com/patents/US6198488 &amp;quot;Transform, lighting and rasterization system embodied on a single semiconductor platform&amp;quot;&lt;br /&gt;
* Filed 1999-12-06 by Nvidia: https://www.google.com/patents/US6573900 &amp;quot;Method, apparatus and article of manufacture for a sequencer in a transform/lighting module capable of processing multiple independent execution threads&amp;quot;&lt;br /&gt;
* Filed 1999-12-06 by Nvidia: https://www.google.com/patents/US6765575 &amp;quot;Clip-less rasterization using line equation-based traversal&amp;quot;&lt;br /&gt;
* Filed 1999-12-06 by Nvidia: https://www.google.com/patents/US6650325 &amp;quot;Method, apparatus and article of manufacture for boustrophedonic rasterization&amp;quot;&lt;br /&gt;
* Filed 2000-12-05 by Nvidia: https://www.google.com/patents/US6690372 &amp;quot;System, method and article of manufacture for shadow mapping&amp;quot;&lt;br /&gt;
* Filed 2001-01-11 by Microsoft: https://www.google.com/patents/USD452282 &amp;quot;Portion of an electronic housing&amp;quot;&lt;br /&gt;
* Filed 2001-01-11 by Microsoft: https://www.google.com/patents/USD451513 &amp;quot;Computer input device&amp;quot; (describes the original Xbox controller, a.k.a. : &amp;quot;the Duke&amp;quot;)&lt;br /&gt;
* Filed 2001-06-19 by Nvidia: https://www.google.com/patents/US6870540 &amp;quot;System, method and computer program product for a programmable pixel processing model with instruction set&amp;quot;&lt;br /&gt;
* Filed 2002-06-07 by Microsoft: https://www.google.com/patents/US6907522 &amp;quot;Use of hashing in a secure boot loader&amp;quot; (mentions &amp;quot;NV2A&amp;quot;)&lt;br /&gt;
* Filed 2003-08-21 by Friendtech: https://www.google.com/patents/US20050282621 &amp;quot;CPU upgrading adapter for a Microsoft XboxTM game machine&amp;quot;&lt;br /&gt;
* Filed 2005-01-04 by Nvidia: https://www.google.com/patents/US7916149 &amp;quot;Block linear memory ordering of texture data&amp;quot;&lt;br /&gt;
* Filed 2005-01-07 by Microsoft: https://www.google.com/patents/US7676840 &amp;quot;Use of hashing in a secure boot loader&amp;quot; (a continuation of patent US6907522)&lt;br /&gt;
* Filed 2005-05-17 by Nvidia: https://www.google.com/patents/US7793029 &amp;quot;Translation device apparatus for configuring printed circuit board connectors &amp;quot; (describes coupling two PCI Express connectors, possibly for the secondary Chihiro board, mentions &amp;quot;Xbox&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
Possibly unrelated :&lt;br /&gt;
* Filed 1989-12-29 by Dolby Laboratories: https://www.google.com/patents/US5109417 &amp;quot;Low bit rate transform coder, decoder, and encoder/decoder for high-quality audio&amp;quot;&lt;br /&gt;
* Filed 2008-01-15 by Microsoft: https://www.google.com/patents/US8607324 &amp;quot;Untrusted gaming system access to online gaming service&amp;quot; (describes part of Xbox online)&lt;br /&gt;
* Filed 2011-06-17 by Microsoft: https://www.google.com/patents/US8641525 &amp;quot;Controller for video game console&amp;quot; (one of the 51 patents comprising the Xbox One controller)&lt;br /&gt;
* Filed 2011-09-07 by Microsoft: https://www.google.com/patents/US8597125 &amp;quot;System and method for configuring game data about players&amp;quot;&lt;br /&gt;
* Filed 2012-01-13 by Microsoft: https://www.google.com/patents/US8602897 &amp;quot;Extended and editable gamer profile&amp;quot;&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=Kernel&amp;diff=5726</id>
		<title>Kernel</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=Kernel&amp;diff=5726"/>
				<updated>2017-06-19T02:23:20Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: Kernel/XboxLANKey&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Xbox kernel is called xboxkrnl.exe. It is closely related to the Windows NT [[Wikipedia:Ntoskrnl.exe|ntoskrnl.exe]].&lt;br /&gt;
Its image base address is always 0x80010000.&lt;br /&gt;
&lt;br /&gt;
== Header modifications ==&lt;br /&gt;
&lt;br /&gt;
xboxkrnl.exe is a mostly standard exe file.&lt;br /&gt;
However, the MS-DOS header was patched to contain Xbox specific data in the reserved 20 byte block starting at offset 40:&lt;br /&gt;
&lt;br /&gt;
{| class=wikitable&lt;br /&gt;
! Offset !! Meaning&lt;br /&gt;
|-&lt;br /&gt;
|40 || Size of uninitialized portion of the .data section&lt;br /&gt;
|-&lt;br /&gt;
|44 || Size of initialized portion of the .data section&lt;br /&gt;
|-&lt;br /&gt;
|48 || Memory address of initialized portion of the .data section (usually in [[Flash]]). &amp;lt;br&amp;gt; Used to re-initialize the data section pointed to by the next field. &amp;lt;br&amp;gt; Note that the pointer might be invalid during normal execution as the Flash might not be mapped at all times.&lt;br /&gt;
|-&lt;br /&gt;
|52 || Memory address where the .data section is stored (usually the same as in the section header + image base).&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Sections ==&lt;br /&gt;
&lt;br /&gt;
All sections are identity mapped (meaning file offsets and offsets in RAM match). This is because the kernel is not loaded through a traditional PE / exe loader, but just unpacked into memory.&lt;br /&gt;
&lt;br /&gt;
=== .text ===&lt;br /&gt;
&lt;br /&gt;
The .text section contains the kernel exports.&lt;br /&gt;
&lt;br /&gt;
=== .data ===&lt;br /&gt;
&lt;br /&gt;
The .data section stores initialized and uninitialized data.&lt;br /&gt;
A copy of the initialized portion of this section is usually stored in the [[BIOS]].&lt;br /&gt;
&lt;br /&gt;
=== STICKY ===&lt;br /&gt;
&lt;br /&gt;
Stores variables which must be preserved across a quick-reboot.&lt;br /&gt;
&lt;br /&gt;
=== IDEXPRDT ===&lt;br /&gt;
&lt;br /&gt;
A Physical Region Descriptor Table (PRDT) for the IDE bus. This section serves as a memory allocation only, it does not have to be initialized when loading the kernel{{citation needed}}.&lt;br /&gt;
&lt;br /&gt;
=== INIT ===&lt;br /&gt;
&lt;br /&gt;
This section is always the last one. It contains the entrypoint of the kernel.&lt;br /&gt;
This does all the cold-boot kernel initialization as described [[Boot_Process#Initialization|here]].&lt;br /&gt;
Later kernels{{FIXME|reason=Which revision? right now it appears that *ALL* kernels will discard this}} will discard this section after initialization.&lt;br /&gt;
INIT also contains the [[Boot Animation]], so once the kernel has finished booting it can't do a full hardware re-initialization or play the boot animation anymore.&lt;br /&gt;
&lt;br /&gt;
== Kernel exports ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Kernel exports&lt;br /&gt;
|-&lt;br /&gt;
!Name&lt;br /&gt;
!Ordinal&lt;br /&gt;
!Calling Convention&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/AvGetSavedDataAddress]]&lt;br /&gt;
|1&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/AvSendTVEncoderOption]]&lt;br /&gt;
|2&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/AvSetDisplayMode]]&lt;br /&gt;
|3&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/AvSetSavedDataAddress]]&lt;br /&gt;
|4&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgBreakPoint]]&lt;br /&gt;
|5&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgBreakPointWithStatus]]&lt;br /&gt;
|6&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgLoadImageSymbols]]&lt;br /&gt;
|7&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgPrint]]&lt;br /&gt;
|8&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalReadSMCTrayState]]&lt;br /&gt;
|9&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgPrompt]]&lt;br /&gt;
|10&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgUnLoadImageSymbols]]&lt;br /&gt;
|11&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExAcquireReadWriteLockExclusive]]&lt;br /&gt;
|12&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExAcquireReadWriteLockShared]]&lt;br /&gt;
|13&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExAllocatePool]]&lt;br /&gt;
|14&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExAllocatePoolWithTag]]&lt;br /&gt;
|15&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExEventObjectType]]&lt;br /&gt;
|16&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_TYPE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExFreePool]]&lt;br /&gt;
|17&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExInitializeReadWriteLock]]&lt;br /&gt;
|18&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExInterlockedAddLargeInteger]]&lt;br /&gt;
|19&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExInterlockedAddLargeStatistic]]&lt;br /&gt;
|20&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExInterlockedCompareExchange64]]&lt;br /&gt;
|21&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExMutantObjectType]]&lt;br /&gt;
|22&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_TYPE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExQueryPoolBlockSize]]&lt;br /&gt;
|23&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExQueryNonVolatileSetting]]&lt;br /&gt;
|24&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExReadWriteRefurbInfo]]&lt;br /&gt;
|25&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExRaiseException]]&lt;br /&gt;
|26&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExRaiseStatus]]&lt;br /&gt;
|27&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExReleaseReadWriteLock]]&lt;br /&gt;
|28&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExSaveNonVolatileSetting]]&lt;br /&gt;
|29&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExSemaphoreObjectType]]&lt;br /&gt;
|30&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_TYPE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExTimerObjectType]]&lt;br /&gt;
|31&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_TYPE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExfInterlockedInsertHeadList]]&lt;br /&gt;
|32&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExfInterlockedInsertTailList]]&lt;br /&gt;
|33&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExfInterlockedRemoveHeadList]]&lt;br /&gt;
|34&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/FscGetCacheSize]]&lt;br /&gt;
|35&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/FscInvalidateIdleBlocks]]&lt;br /&gt;
|36&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/FscSetCacheSize]]&lt;br /&gt;
|37&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalClearSoftwareInterrupt]]&lt;br /&gt;
|38&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalDisableSystemInterrupt]]&lt;br /&gt;
|39&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalDiskCachePartitionCount]]&lt;br /&gt;
|40&lt;br /&gt;
|&lt;br /&gt;
|Variable: ULONG&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalDiskModelNumber]]&lt;br /&gt;
|41&lt;br /&gt;
|&lt;br /&gt;
|Variable: STRING&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalDiskSerialNumber]]&lt;br /&gt;
|42&lt;br /&gt;
|&lt;br /&gt;
|Variable: STRING&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalEnableSystemInterrupt]]&lt;br /&gt;
|43&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalGetInterruptVector]]&lt;br /&gt;
|44&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalReadSMBusValue]]&lt;br /&gt;
|45&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalReadWritePCISpace]]&lt;br /&gt;
|46&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalRegisterShutdownNotification]]&lt;br /&gt;
|47&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalRequestSoftwareInterrupt]]&lt;br /&gt;
|48&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalReturnToFirmware]]&lt;br /&gt;
|49&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalWriteSMBusValue]]&lt;br /&gt;
|50&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedCompareExchange]]&lt;br /&gt;
|51&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedDecrement]]&lt;br /&gt;
|52&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedIncrement]]&lt;br /&gt;
|53&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedExchange]]&lt;br /&gt;
|54&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedExchangeAdd]]&lt;br /&gt;
|55&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedFlushSList]]&lt;br /&gt;
|56&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedPopEntrySList]]&lt;br /&gt;
|57&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedPushEntrySList]]&lt;br /&gt;
|58&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoAllocateIrp]]&lt;br /&gt;
|59&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoBuildAsynchronousFsdRequest]]&lt;br /&gt;
|60&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoBuildDeviceIoControlRequest]]&lt;br /&gt;
|61&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoBuildSynchronousFsdRequest]]&lt;br /&gt;
|62&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoCheckShareAccess]]&lt;br /&gt;
|63&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoCompletionObjectType]]&lt;br /&gt;
|64&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_TYPE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoCreateDevice]]&lt;br /&gt;
|65&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoCreateFile]]&lt;br /&gt;
|66&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoCreateSymbolicLink]]&lt;br /&gt;
|67&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoDeleteDevice]]&lt;br /&gt;
|68&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoDeleteSymbolicLink]]&lt;br /&gt;
|69&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoDeviceObjectType]]&lt;br /&gt;
|70&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_TYPE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoFileObjectType]]&lt;br /&gt;
|71&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_TYPE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoFreeIrp]]&lt;br /&gt;
|72&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoInitializeIrp]]&lt;br /&gt;
|73&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoInvalidDeviceRequest]]&lt;br /&gt;
|74&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoQueryFileInformation]]&lt;br /&gt;
|75&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoQueryVolumeInformation]]&lt;br /&gt;
|76&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoQueueThreadIrp]]&lt;br /&gt;
|77&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoRemoveShareAccess]]&lt;br /&gt;
|78&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoSetIoCompletion]]&lt;br /&gt;
|79&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoSetShareAccess]]&lt;br /&gt;
|80&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoStartNextPacket]]&lt;br /&gt;
|81&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoStartNextPacketByKey]]&lt;br /&gt;
|82&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoStartPacket]]&lt;br /&gt;
|83&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoSynchronousDeviceIoControlRequest]]&lt;br /&gt;
|84&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoSynchronousFsdRequest]]&lt;br /&gt;
|85&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IofCallDriver]]&lt;br /&gt;
|86&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IofCompleteRequest]]&lt;br /&gt;
|87&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KdDebuggerEnabled]]&lt;br /&gt;
|88&lt;br /&gt;
|&lt;br /&gt;
|Variable: BOOLEAN&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KdDebuggerNotPresent]]&lt;br /&gt;
|89&lt;br /&gt;
|&lt;br /&gt;
|Variable: BOOLEAN&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoDismountVolume]]&lt;br /&gt;
|90&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoDismountVolumeByName]]&lt;br /&gt;
|91&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeAlertResumeThread]]&lt;br /&gt;
|92&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeAlertThread]]&lt;br /&gt;
|93&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeBoostPriorityThread]]&lt;br /&gt;
|94&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeBugCheck]]&lt;br /&gt;
|95&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeBugCheckEx]]&lt;br /&gt;
|96&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeCancelTimer]]&lt;br /&gt;
|97&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeConnectInterrupt]]&lt;br /&gt;
|98&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeDelayExecutionThread]]&lt;br /&gt;
|99&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeDisconnectInterrupt]]&lt;br /&gt;
|100&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeEnterCriticalRegion]]&lt;br /&gt;
|101&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmGlobalData]]&lt;br /&gt;
|102&lt;br /&gt;
|&lt;br /&gt;
|Variable: MMGLOBALDATA&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeGetCurrentIrql]]&lt;br /&gt;
|103&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeGetCurrentThread]]&lt;br /&gt;
|104&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeApc]]&lt;br /&gt;
|105&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeDeviceQueue]]&lt;br /&gt;
|106&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeDpc]]&lt;br /&gt;
|107&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeEvent]]&lt;br /&gt;
|108&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeInterrupt]]&lt;br /&gt;
|109&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeMutant]]&lt;br /&gt;
|110&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeQueue]]&lt;br /&gt;
|111&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeSemaphore]]&lt;br /&gt;
|112&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeTimerEx]]&lt;br /&gt;
|113&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertByKeyDeviceQueue]]&lt;br /&gt;
|114&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertDeviceQueue]]&lt;br /&gt;
|115&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertHeadQueue]]&lt;br /&gt;
|116&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertQueue]]&lt;br /&gt;
|117&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertQueueApc]]&lt;br /&gt;
|118&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertQueueDpc]]&lt;br /&gt;
|119&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInterruptTime]]&lt;br /&gt;
|120&lt;br /&gt;
|&lt;br /&gt;
|Variable: KSYSTEM_TIME&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeIsExecutingDpc]]&lt;br /&gt;
|121&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeLeaveCriticalRegion]]&lt;br /&gt;
|122&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KePulseEvent]]&lt;br /&gt;
|123&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeQueryBasePriorityThread]]&lt;br /&gt;
|124&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeQueryInterruptTime]]&lt;br /&gt;
|125&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeQueryPerformanceCounter]]&lt;br /&gt;
|126&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeQueryPerformanceFrequency]]&lt;br /&gt;
|127&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeQuerySystemTime]]&lt;br /&gt;
|128&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRaiseIrqlToDpcLevel]]&lt;br /&gt;
|129&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRaiseIrqlToSynchLevel]]&lt;br /&gt;
|130&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeReleaseMutant]]&lt;br /&gt;
|131&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeReleaseSemaphore]]&lt;br /&gt;
|132&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRemoveByKeyDeviceQueue]]&lt;br /&gt;
|133&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRemoveDeviceQueue]]&lt;br /&gt;
|134&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRemoveEntryDeviceQueue]]&lt;br /&gt;
|135&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRemoveQueue]]&lt;br /&gt;
|136&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRemoveQueueDpc]]&lt;br /&gt;
|137&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeResetEvent]]&lt;br /&gt;
|138&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRestoreFloatingPointState]]&lt;br /&gt;
|139&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeResumeThread]]&lt;br /&gt;
|140&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRundownQueue]]&lt;br /&gt;
|141&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSaveFloatingPointState]]&lt;br /&gt;
|142&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetBasePriorityThread]]&lt;br /&gt;
|143&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetDisableBoostThread]]&lt;br /&gt;
|144&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetEvent]]&lt;br /&gt;
|145&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetEventBoostPriority]]&lt;br /&gt;
|146&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetPriorityProcess]]&lt;br /&gt;
|147&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetPriorityThread]]&lt;br /&gt;
|148&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetTimer]]&lt;br /&gt;
|149&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetTimerEx]]&lt;br /&gt;
|150&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeStallExecutionProcessor]]&lt;br /&gt;
|151&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSuspendThread]]&lt;br /&gt;
|152&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSynchronizeExecution]]&lt;br /&gt;
|153&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSystemTime]]&lt;br /&gt;
|154&lt;br /&gt;
|&lt;br /&gt;
|Variable: KSYSTEM_TIME&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeTestAlertThread]]&lt;br /&gt;
|155&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeTickCount]]&lt;br /&gt;
|156&lt;br /&gt;
|&lt;br /&gt;
|Variable: ULONG&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeTimeIncrement]]&lt;br /&gt;
|157&lt;br /&gt;
|&lt;br /&gt;
|Variable: ULONG&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeWaitForMultipleObjects]]&lt;br /&gt;
|158&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeWaitForSingleObject]]&lt;br /&gt;
|159&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KfRaiseIrql]]&lt;br /&gt;
|160&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KfLowerIrql]]&lt;br /&gt;
|161&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KiBugCheckData]]&lt;br /&gt;
|162&lt;br /&gt;
|&lt;br /&gt;
|Variable: ULONG_PTR[5]&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KiUnlockDispatcherDatabase]]&lt;br /&gt;
|163&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/LaunchDataPage]]&lt;br /&gt;
|164&lt;br /&gt;
|&lt;br /&gt;
|Variable: PLAUNCH_DATA_PAGE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmAllocateContiguousMemory]]&lt;br /&gt;
|165&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmAllocateContiguousMemoryEx]]&lt;br /&gt;
|166&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmAllocateSystemMemory]]&lt;br /&gt;
|167&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmClaimGpuInstanceMemory]]&lt;br /&gt;
|168&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmCreateKernelStack]]&lt;br /&gt;
|169&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDeleteKernelStack]]&lt;br /&gt;
|170&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmFreeContiguousMemory]]&lt;br /&gt;
|171&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmFreeSystemMemory]]&lt;br /&gt;
|172&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmGetPhysicalAddress]]&lt;br /&gt;
|173&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmIsAddressValid]]&lt;br /&gt;
|174&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmLockUnlockBufferPages]]&lt;br /&gt;
|175&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmLockUnlockPhysicalPage]]&lt;br /&gt;
|176&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmMapIoSpace]]&lt;br /&gt;
|177&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmPersistContiguousMemory]]&lt;br /&gt;
|178&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmQueryAddressProtect]]&lt;br /&gt;
|179&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmQueryAllocationSize]]&lt;br /&gt;
|180&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmQueryStatistics]]&lt;br /&gt;
|181&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmSetAddressProtect]]&lt;br /&gt;
|182&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmUnmapIoSpace]]&lt;br /&gt;
|183&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtAllocateVirtualMemory]]&lt;br /&gt;
|184&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCancelTimer]]&lt;br /&gt;
|185&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtClearEvent]]&lt;br /&gt;
|186&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtClose]]&lt;br /&gt;
|187&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateDirectoryObject]]&lt;br /&gt;
|188&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateEvent]]&lt;br /&gt;
|189&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateFile]]&lt;br /&gt;
|190&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateIoCompletion]]&lt;br /&gt;
|191&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateMutant]]&lt;br /&gt;
|192&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateSemaphore]]&lt;br /&gt;
|193&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateTimer]]&lt;br /&gt;
|194&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtDeleteFile]]&lt;br /&gt;
|195&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtDeviceIoControlFile]]&lt;br /&gt;
|196&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtDuplicateObject]]&lt;br /&gt;
|197&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtFlushBuffersFile]]&lt;br /&gt;
|198&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtFreeVirtualMemory]]&lt;br /&gt;
|199&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtFsControlFile]]&lt;br /&gt;
|200&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtOpenDirectoryObject]]&lt;br /&gt;
|201&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtOpenFile]]&lt;br /&gt;
|202&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtOpenSymbolicLinkObject]]&lt;br /&gt;
|203&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtProtectVirtualMemory]]&lt;br /&gt;
|204&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtPulseEvent]]&lt;br /&gt;
|205&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueueApcThread]]&lt;br /&gt;
|206&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryDirectoryFile]]&lt;br /&gt;
|207&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryDirectoryObject]]&lt;br /&gt;
|208&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryEvent]]&lt;br /&gt;
|209&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryFullAttributesFile]]&lt;br /&gt;
|210&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryInformationFile]]&lt;br /&gt;
|211&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryIoCompletion]]&lt;br /&gt;
|212&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryMutant]]&lt;br /&gt;
|213&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQuerySemaphore]]&lt;br /&gt;
|214&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQuerySymbolicLinkObject]]&lt;br /&gt;
|215&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryTimer]]&lt;br /&gt;
|216&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryVirtualMemory]]&lt;br /&gt;
|217&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryVolumeInformationFile]]&lt;br /&gt;
|218&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtReadFile]]&lt;br /&gt;
|219&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtReadFileScatter]]&lt;br /&gt;
|220&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtReleaseMutant]]&lt;br /&gt;
|221&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtReleaseSemaphore]]&lt;br /&gt;
|222&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtRemoveIoCompletion]]&lt;br /&gt;
|223&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtResumeThread]]&lt;br /&gt;
|224&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSetEvent]]&lt;br /&gt;
|225&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSetInformationFile]]&lt;br /&gt;
|226&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSetIoCompletion]]&lt;br /&gt;
|227&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSetSystemTime]]&lt;br /&gt;
|228&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSetTimerEx]]&lt;br /&gt;
|229&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSignalAndWaitForSingleObjectEx]]&lt;br /&gt;
|230&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSuspendThread]]&lt;br /&gt;
|231&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtUserIoApcDispatcher]]&lt;br /&gt;
|232&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtWaitForSingleObject]]&lt;br /&gt;
|233&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtWaitForSingleObjectEx]]&lt;br /&gt;
|234&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtWaitForMultipleObjectsEx]]&lt;br /&gt;
|235&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtWriteFile]]&lt;br /&gt;
|236&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtWriteFileGather]]&lt;br /&gt;
|237&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtYieldExecution]]&lt;br /&gt;
|238&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObCreateObject]]&lt;br /&gt;
|239&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObDirectoryObjectType]]&lt;br /&gt;
|240&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_TYPE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObInsertObject]]&lt;br /&gt;
|241&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObMakeTemporaryObject]]&lt;br /&gt;
|242&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObOpenObjectByName]]&lt;br /&gt;
|243&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObOpenObjectByPointer]]&lt;br /&gt;
|244&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObpObjectHandleTable]]&lt;br /&gt;
|245&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_HANDLE_TABLE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObReferenceObjectByHandle]]&lt;br /&gt;
|246&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObReferenceObjectByName]]&lt;br /&gt;
|247&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObReferenceObjectByPointer]]&lt;br /&gt;
|248&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObSymbolicLinkObjectType]]&lt;br /&gt;
|249&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_TYPE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObfDereferenceObject]]&lt;br /&gt;
|250&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObfReferenceObject]]&lt;br /&gt;
|251&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PhyGetLinkState]]&lt;br /&gt;
|252&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PhyInitialize]]&lt;br /&gt;
|253&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsCreateSystemThread]]&lt;br /&gt;
|254&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsCreateSystemThreadEx]]&lt;br /&gt;
|255&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsQueryStatistics]]&lt;br /&gt;
|256&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsSetCreateThreadNotifyRoutine]]&lt;br /&gt;
|257&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsTerminateSystemThread]]&lt;br /&gt;
|258&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsThreadObjectType]]&lt;br /&gt;
|259&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_TYPE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlAnsiStringToUnicodeString]]&lt;br /&gt;
|260&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlAppendStringToString]]&lt;br /&gt;
|261&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlAppendUnicodeStringToString]]&lt;br /&gt;
|262&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlAppendUnicodeToString]]&lt;br /&gt;
|263&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlAssert]]&lt;br /&gt;
|264&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCaptureContext]]&lt;br /&gt;
|265&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCaptureStackBackTrace]]&lt;br /&gt;
|266&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCharToInteger]]&lt;br /&gt;
|267&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCompareMemory]]&lt;br /&gt;
|268&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCompareMemoryUlong]]&lt;br /&gt;
|269&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCompareString]]&lt;br /&gt;
|270&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCompareUnicodeString]]&lt;br /&gt;
|271&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCopyString]]&lt;br /&gt;
|272&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCopyUnicodeString]]&lt;br /&gt;
|273&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCreateUnicodeString]]&lt;br /&gt;
|274&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlDowncaseUnicodeChar]]&lt;br /&gt;
|275&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlDowncaseUnicodeString]]&lt;br /&gt;
|276&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlEnterCriticalSection]]&lt;br /&gt;
|277&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlEnterCriticalSectionAndRegion]]&lt;br /&gt;
|278&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlEqualString]]&lt;br /&gt;
|279&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlEqualUnicodeString]]&lt;br /&gt;
|280&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlExtendedIntegerMultiply]]&lt;br /&gt;
|281&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlExtendedLargeIntegerDivide]]&lt;br /&gt;
|282&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlExtendedMagicDivide]]&lt;br /&gt;
|283&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlFillMemory]]&lt;br /&gt;
|284&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlFillMemoryUlong]]&lt;br /&gt;
|285&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlFreeAnsiString]]&lt;br /&gt;
|286&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlFreeUnicodeString]]&lt;br /&gt;
|287&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlGetCallersAddress]]&lt;br /&gt;
|288&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlInitAnsiString]]&lt;br /&gt;
|289&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlInitUnicodeString]]&lt;br /&gt;
|290&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlInitializeCriticalSection]]&lt;br /&gt;
|291&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlIntegerToChar]]&lt;br /&gt;
|292&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlIntegerToUnicodeString]]&lt;br /&gt;
|293&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlLeaveCriticalSection]]&lt;br /&gt;
|294&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlLeaveCriticalSectionAndRegion]]&lt;br /&gt;
|295&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlLowerChar]]&lt;br /&gt;
|296&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlMapGenericMask]]&lt;br /&gt;
|297&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlMoveMemory]]&lt;br /&gt;
|298&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlMultiByteToUnicodeN]]&lt;br /&gt;
|299&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlMultiByteToUnicodeSize]]&lt;br /&gt;
|300&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlNtStatusToDosError]]&lt;br /&gt;
|301&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlRaiseException]]&lt;br /&gt;
|302&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlRaiseStatus]]&lt;br /&gt;
|303&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlTimeFieldsToTime]]&lt;br /&gt;
|304&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlTimeToTimeFields]]&lt;br /&gt;
|305&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlTryEnterCriticalSection]]&lt;br /&gt;
|306&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUlongByteSwap]]&lt;br /&gt;
|307&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUnicodeStringToAnsiString]]&lt;br /&gt;
|308&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUnicodeStringToInteger]]&lt;br /&gt;
|309&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUnicodeToMultiByteN]]&lt;br /&gt;
|310&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUnicodeToMultiByteSize]]&lt;br /&gt;
|311&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUnwind]]&lt;br /&gt;
|312&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUpcaseUnicodeChar]]&lt;br /&gt;
|313&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUpcaseUnicodeString]]&lt;br /&gt;
|314&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUpcaseUnicodeToMultiByteN]]&lt;br /&gt;
|315&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUpperChar]]&lt;br /&gt;
|316&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUpperString]]&lt;br /&gt;
|317&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUshortByteSwap]]&lt;br /&gt;
|318&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlWalkFrameChain]]&lt;br /&gt;
|319&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlZeroMemory]]&lt;br /&gt;
|320&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxEEPROMKey]]&lt;br /&gt;
|321&lt;br /&gt;
|&lt;br /&gt;
|Variable: XBOX_KEY_DATA&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxHardwareInfo]]&lt;br /&gt;
|322&lt;br /&gt;
|&lt;br /&gt;
|Variable: XBOX_HARDWARE_INFO&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxHDKey]]&lt;br /&gt;
|323&lt;br /&gt;
|&lt;br /&gt;
|Variable: XBOX_KEY_DATA&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxKrnlVersion]]&lt;br /&gt;
|324&lt;br /&gt;
|&lt;br /&gt;
|Variable: XBOX_KRNL_VERSION&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxSignatureKey]]&lt;br /&gt;
|325&lt;br /&gt;
|&lt;br /&gt;
|Variable: XBOX_KEY_DATA&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XeImageFileName]]&lt;br /&gt;
|326&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_STRING&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XeLoadSection]]&lt;br /&gt;
|327&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XeUnloadSection]]&lt;br /&gt;
|328&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/READ_PORT_BUFFER_UCHAR]]&lt;br /&gt;
|329&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/READ_PORT_BUFFER_USHORT]]&lt;br /&gt;
|330&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/READ_PORT_BUFFER_ULONG]]&lt;br /&gt;
|331&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/WRITE_PORT_BUFFER_UCHAR]]&lt;br /&gt;
|332&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/WRITE_PORT_BUFFER_USHORT]]&lt;br /&gt;
|333&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/WRITE_PORT_BUFFER_ULONG]]&lt;br /&gt;
|334&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcSHAInit]]&lt;br /&gt;
|335&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcSHAUpdate]]&lt;br /&gt;
|336&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcSHAFinal]]&lt;br /&gt;
|337&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcRC4Key]]&lt;br /&gt;
|338&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcRC4Crypt]]&lt;br /&gt;
|339&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcHMAC]]&lt;br /&gt;
|340&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcPKEncPublic]]&lt;br /&gt;
|341&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcPKDecPrivate]]&lt;br /&gt;
|342&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcPKGetKeyLen]]&lt;br /&gt;
|343&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcVerifyPKCS1Signature]]&lt;br /&gt;
|344&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcModExp]]&lt;br /&gt;
|345&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcDESKeyParity]]&lt;br /&gt;
|346&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcKeyTable]]&lt;br /&gt;
|347&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcBlockCrypt]]&lt;br /&gt;
|348&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcBlockCryptCBC]]&lt;br /&gt;
|349&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcCryptService]]&lt;br /&gt;
|350&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcUpdateCrypto]]&lt;br /&gt;
|351&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlRip]]&lt;br /&gt;
|352&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxLANKey]]&lt;br /&gt;
|353&lt;br /&gt;
|&lt;br /&gt;
|Variable: XBOX_KEY_DATA&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxAlternateSignatureKeys]]&lt;br /&gt;
|354&lt;br /&gt;
|&lt;br /&gt;
|Variable: XBOX_KEY_DATA[XBEIMAGE_ALTERNATE_TITLE_ID_COUNT]&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XePublicKeyData]]&lt;br /&gt;
|355&lt;br /&gt;
|&lt;br /&gt;
|Variable: UCHAR[XC_PUBLIC_KEYDATA_SIZE]&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalBootSMCVideoMode]]&lt;br /&gt;
|356&lt;br /&gt;
|&lt;br /&gt;
|Variable: ULONG&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IdexChannelObject]]&lt;br /&gt;
|357&lt;br /&gt;
|&lt;br /&gt;
|Variable: IDE_CHANNEL_OBJECT&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalIsResetOrShutdownPending]]&lt;br /&gt;
|358&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoMarkIrpMustComplete]]&lt;br /&gt;
|359&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalInitiateShutdown]]&lt;br /&gt;
|360&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlSnprintf]]&lt;br /&gt;
|361&lt;br /&gt;
|stdcall&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlSprintf]]&lt;br /&gt;
|362&lt;br /&gt;
|stdcall&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlVsnprintf]]&lt;br /&gt;
|363&lt;br /&gt;
|stdcall&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlVsprintf]]&lt;br /&gt;
|364&lt;br /&gt;
|stdcall&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalEnableSecureTrayEject]]&lt;br /&gt;
|365&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalWriteSMCScratchRegister]]&lt;br /&gt;
|366&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|367&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|368&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|369&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|370&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|371&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|372&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|373&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDbgAllocateMemory]]&lt;br /&gt;
|374&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDbgFreeMemory]]&lt;br /&gt;
|375&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDbgQueryAvailablePages]]&lt;br /&gt;
|376&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDbgReleaseAddress]]&lt;br /&gt;
|377&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDbgWriteCheck]]&lt;br /&gt;
|378&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=Kernel&amp;diff=5719</id>
		<title>Kernel</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=Kernel&amp;diff=5719"/>
				<updated>2017-06-18T21:48:20Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: Kernel Variables&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Xbox kernel is called xboxkrnl.exe. It is closely related to the Windows NT [[Wikipedia:Ntoskrnl.exe|ntoskrnl.exe]].&lt;br /&gt;
Its image base address is always 0x80010000.&lt;br /&gt;
&lt;br /&gt;
== Header modifications ==&lt;br /&gt;
&lt;br /&gt;
xboxkrnl.exe is a mostly standard exe file.&lt;br /&gt;
However, the MS-DOS header was patched to contain Xbox specific data in the reserved 20 byte block starting at offset 40:&lt;br /&gt;
&lt;br /&gt;
{| class=wikitable&lt;br /&gt;
! Offset !! Meaning&lt;br /&gt;
|-&lt;br /&gt;
|40 || Size of uninitialized portion of the .data section&lt;br /&gt;
|-&lt;br /&gt;
|44 || Size of initialized portion of the .data section&lt;br /&gt;
|-&lt;br /&gt;
|48 || Memory address of initialized portion of the .data section (usually in [[Flash]]). &amp;lt;br&amp;gt; Used to re-initialize the data section pointed to by the next field. &amp;lt;br&amp;gt; Note that the pointer might be invalid during normal execution as the Flash might not be mapped at all times.&lt;br /&gt;
|-&lt;br /&gt;
|52 || Memory address where the .data section is stored (usually the same as in the section header + image base).&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Sections ==&lt;br /&gt;
&lt;br /&gt;
All sections are identity mapped (meaning file offsets and offsets in RAM match). This is because the kernel is not loaded through a traditional PE / exe loader, but just unpacked into memory.&lt;br /&gt;
&lt;br /&gt;
=== .text ===&lt;br /&gt;
&lt;br /&gt;
The .text section contains the kernel exports.&lt;br /&gt;
&lt;br /&gt;
=== .data ===&lt;br /&gt;
&lt;br /&gt;
The .data section stores initialized and uninitialized data.&lt;br /&gt;
A copy of the initialized portion of this section is usually stored in the [[BIOS]].&lt;br /&gt;
&lt;br /&gt;
=== STICKY ===&lt;br /&gt;
&lt;br /&gt;
Stores variables which must be preserved across a quick-reboot.&lt;br /&gt;
&lt;br /&gt;
=== IDEXPRDT ===&lt;br /&gt;
&lt;br /&gt;
A Physical Region Descriptor Table (PRDT) for the IDE bus. This section serves as a memory allocation only, it does not have to be initialized when loading the kernel{{citation needed}}.&lt;br /&gt;
&lt;br /&gt;
=== INIT ===&lt;br /&gt;
&lt;br /&gt;
This section is always the last one. It contains the entrypoint of the kernel.&lt;br /&gt;
This does all the cold-boot kernel initialization as described [[Boot_Process#Initialization|here]].&lt;br /&gt;
Later kernels{{FIXME|reason=Which revision? right now it appears that *ALL* kernels will discard this}} will discard this section after initialization.&lt;br /&gt;
INIT also contains the [[Boot Animation]], so once the kernel has finished booting it can't do a full hardware re-initialization or play the boot animation anymore.&lt;br /&gt;
&lt;br /&gt;
== Kernel exports ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Kernel exports&lt;br /&gt;
|-&lt;br /&gt;
!Name&lt;br /&gt;
!Ordinal&lt;br /&gt;
!Calling Convention&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/AvGetSavedDataAddress]]&lt;br /&gt;
|1&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/AvSendTVEncoderOption]]&lt;br /&gt;
|2&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/AvSetDisplayMode]]&lt;br /&gt;
|3&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/AvSetSavedDataAddress]]&lt;br /&gt;
|4&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgBreakPoint]]&lt;br /&gt;
|5&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgBreakPointWithStatus]]&lt;br /&gt;
|6&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgLoadImageSymbols]]&lt;br /&gt;
|7&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgPrint]]&lt;br /&gt;
|8&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalReadSMCTrayState]]&lt;br /&gt;
|9&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgPrompt]]&lt;br /&gt;
|10&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgUnLoadImageSymbols]]&lt;br /&gt;
|11&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExAcquireReadWriteLockExclusive]]&lt;br /&gt;
|12&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExAcquireReadWriteLockShared]]&lt;br /&gt;
|13&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExAllocatePool]]&lt;br /&gt;
|14&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExAllocatePoolWithTag]]&lt;br /&gt;
|15&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExEventObjectType]]&lt;br /&gt;
|16&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_TYPE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExFreePool]]&lt;br /&gt;
|17&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExInitializeReadWriteLock]]&lt;br /&gt;
|18&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExInterlockedAddLargeInteger]]&lt;br /&gt;
|19&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExInterlockedAddLargeStatistic]]&lt;br /&gt;
|20&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExInterlockedCompareExchange64]]&lt;br /&gt;
|21&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExMutantObjectType]]&lt;br /&gt;
|22&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_TYPE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExQueryPoolBlockSize]]&lt;br /&gt;
|23&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExQueryNonVolatileSetting]]&lt;br /&gt;
|24&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExReadWriteRefurbInfo]]&lt;br /&gt;
|25&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExRaiseException]]&lt;br /&gt;
|26&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExRaiseStatus]]&lt;br /&gt;
|27&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExReleaseReadWriteLock]]&lt;br /&gt;
|28&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExSaveNonVolatileSetting]]&lt;br /&gt;
|29&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExSemaphoreObjectType]]&lt;br /&gt;
|30&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_TYPE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExTimerObjectType]]&lt;br /&gt;
|31&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_TYPE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExfInterlockedInsertHeadList]]&lt;br /&gt;
|32&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExfInterlockedInsertTailList]]&lt;br /&gt;
|33&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExfInterlockedRemoveHeadList]]&lt;br /&gt;
|34&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/FscGetCacheSize]]&lt;br /&gt;
|35&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/FscInvalidateIdleBlocks]]&lt;br /&gt;
|36&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/FscSetCacheSize]]&lt;br /&gt;
|37&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalClearSoftwareInterrupt]]&lt;br /&gt;
|38&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalDisableSystemInterrupt]]&lt;br /&gt;
|39&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalDiskCachePartitionCount]]&lt;br /&gt;
|40&lt;br /&gt;
|&lt;br /&gt;
|Variable: ULONG&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalDiskModelNumber]]&lt;br /&gt;
|41&lt;br /&gt;
|&lt;br /&gt;
|Variable: STRING&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalDiskSerialNumber]]&lt;br /&gt;
|42&lt;br /&gt;
|&lt;br /&gt;
|Variable: STRING&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalEnableSystemInterrupt]]&lt;br /&gt;
|43&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalGetInterruptVector]]&lt;br /&gt;
|44&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalReadSMBusValue]]&lt;br /&gt;
|45&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalReadWritePCISpace]]&lt;br /&gt;
|46&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalRegisterShutdownNotification]]&lt;br /&gt;
|47&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalRequestSoftwareInterrupt]]&lt;br /&gt;
|48&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalReturnToFirmware]]&lt;br /&gt;
|49&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalWriteSMBusValue]]&lt;br /&gt;
|50&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedCompareExchange]]&lt;br /&gt;
|51&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedDecrement]]&lt;br /&gt;
|52&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedIncrement]]&lt;br /&gt;
|53&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedExchange]]&lt;br /&gt;
|54&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedExchangeAdd]]&lt;br /&gt;
|55&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedFlushSList]]&lt;br /&gt;
|56&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedPopEntrySList]]&lt;br /&gt;
|57&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedPushEntrySList]]&lt;br /&gt;
|58&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoAllocateIrp]]&lt;br /&gt;
|59&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoBuildAsynchronousFsdRequest]]&lt;br /&gt;
|60&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoBuildDeviceIoControlRequest]]&lt;br /&gt;
|61&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoBuildSynchronousFsdRequest]]&lt;br /&gt;
|62&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoCheckShareAccess]]&lt;br /&gt;
|63&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoCompletionObjectType]]&lt;br /&gt;
|64&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_TYPE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoCreateDevice]]&lt;br /&gt;
|65&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoCreateFile]]&lt;br /&gt;
|66&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoCreateSymbolicLink]]&lt;br /&gt;
|67&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoDeleteDevice]]&lt;br /&gt;
|68&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoDeleteSymbolicLink]]&lt;br /&gt;
|69&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoDeviceObjectType]]&lt;br /&gt;
|70&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_TYPE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoFileObjectType]]&lt;br /&gt;
|71&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_TYPE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoFreeIrp]]&lt;br /&gt;
|72&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoInitializeIrp]]&lt;br /&gt;
|73&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoInvalidDeviceRequest]]&lt;br /&gt;
|74&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoQueryFileInformation]]&lt;br /&gt;
|75&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoQueryVolumeInformation]]&lt;br /&gt;
|76&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoQueueThreadIrp]]&lt;br /&gt;
|77&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoRemoveShareAccess]]&lt;br /&gt;
|78&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoSetIoCompletion]]&lt;br /&gt;
|79&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoSetShareAccess]]&lt;br /&gt;
|80&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoStartNextPacket]]&lt;br /&gt;
|81&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoStartNextPacketByKey]]&lt;br /&gt;
|82&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoStartPacket]]&lt;br /&gt;
|83&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoSynchronousDeviceIoControlRequest]]&lt;br /&gt;
|84&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoSynchronousFsdRequest]]&lt;br /&gt;
|85&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IofCallDriver]]&lt;br /&gt;
|86&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IofCompleteRequest]]&lt;br /&gt;
|87&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KdDebuggerEnabled]]&lt;br /&gt;
|88&lt;br /&gt;
|&lt;br /&gt;
|Variable: BOOLEAN&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KdDebuggerNotPresent]]&lt;br /&gt;
|89&lt;br /&gt;
|&lt;br /&gt;
|Variable: BOOLEAN&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoDismountVolume]]&lt;br /&gt;
|90&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoDismountVolumeByName]]&lt;br /&gt;
|91&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeAlertResumeThread]]&lt;br /&gt;
|92&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeAlertThread]]&lt;br /&gt;
|93&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeBoostPriorityThread]]&lt;br /&gt;
|94&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeBugCheck]]&lt;br /&gt;
|95&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeBugCheckEx]]&lt;br /&gt;
|96&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeCancelTimer]]&lt;br /&gt;
|97&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeConnectInterrupt]]&lt;br /&gt;
|98&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeDelayExecutionThread]]&lt;br /&gt;
|99&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeDisconnectInterrupt]]&lt;br /&gt;
|100&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeEnterCriticalRegion]]&lt;br /&gt;
|101&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmGlobalData]]&lt;br /&gt;
|102&lt;br /&gt;
|&lt;br /&gt;
|Variable: MMGLOBALDATA&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeGetCurrentIrql]]&lt;br /&gt;
|103&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeGetCurrentThread]]&lt;br /&gt;
|104&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeApc]]&lt;br /&gt;
|105&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeDeviceQueue]]&lt;br /&gt;
|106&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeDpc]]&lt;br /&gt;
|107&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeEvent]]&lt;br /&gt;
|108&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeInterrupt]]&lt;br /&gt;
|109&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeMutant]]&lt;br /&gt;
|110&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeQueue]]&lt;br /&gt;
|111&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeSemaphore]]&lt;br /&gt;
|112&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeTimerEx]]&lt;br /&gt;
|113&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertByKeyDeviceQueue]]&lt;br /&gt;
|114&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertDeviceQueue]]&lt;br /&gt;
|115&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertHeadQueue]]&lt;br /&gt;
|116&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertQueue]]&lt;br /&gt;
|117&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertQueueApc]]&lt;br /&gt;
|118&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertQueueDpc]]&lt;br /&gt;
|119&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInterruptTime]]&lt;br /&gt;
|120&lt;br /&gt;
|&lt;br /&gt;
|Variable: KSYSTEM_TIME&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeIsExecutingDpc]]&lt;br /&gt;
|121&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeLeaveCriticalRegion]]&lt;br /&gt;
|122&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KePulseEvent]]&lt;br /&gt;
|123&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeQueryBasePriorityThread]]&lt;br /&gt;
|124&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeQueryInterruptTime]]&lt;br /&gt;
|125&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeQueryPerformanceCounter]]&lt;br /&gt;
|126&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeQueryPerformanceFrequency]]&lt;br /&gt;
|127&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeQuerySystemTime]]&lt;br /&gt;
|128&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRaiseIrqlToDpcLevel]]&lt;br /&gt;
|129&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRaiseIrqlToSynchLevel]]&lt;br /&gt;
|130&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeReleaseMutant]]&lt;br /&gt;
|131&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeReleaseSemaphore]]&lt;br /&gt;
|132&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRemoveByKeyDeviceQueue]]&lt;br /&gt;
|133&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRemoveDeviceQueue]]&lt;br /&gt;
|134&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRemoveEntryDeviceQueue]]&lt;br /&gt;
|135&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRemoveQueue]]&lt;br /&gt;
|136&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRemoveQueueDpc]]&lt;br /&gt;
|137&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeResetEvent]]&lt;br /&gt;
|138&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRestoreFloatingPointState]]&lt;br /&gt;
|139&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeResumeThread]]&lt;br /&gt;
|140&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRundownQueue]]&lt;br /&gt;
|141&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSaveFloatingPointState]]&lt;br /&gt;
|142&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetBasePriorityThread]]&lt;br /&gt;
|143&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetDisableBoostThread]]&lt;br /&gt;
|144&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetEvent]]&lt;br /&gt;
|145&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetEventBoostPriority]]&lt;br /&gt;
|146&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetPriorityProcess]]&lt;br /&gt;
|147&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetPriorityThread]]&lt;br /&gt;
|148&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetTimer]]&lt;br /&gt;
|149&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetTimerEx]]&lt;br /&gt;
|150&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeStallExecutionProcessor]]&lt;br /&gt;
|151&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSuspendThread]]&lt;br /&gt;
|152&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSynchronizeExecution]]&lt;br /&gt;
|153&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSystemTime]]&lt;br /&gt;
|154&lt;br /&gt;
|&lt;br /&gt;
|Variable: KSYSTEM_TIME&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeTestAlertThread]]&lt;br /&gt;
|155&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeTickCount]]&lt;br /&gt;
|156&lt;br /&gt;
|&lt;br /&gt;
|Variable: ULONG&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeTimeIncrement]]&lt;br /&gt;
|157&lt;br /&gt;
|&lt;br /&gt;
|Variable: ULONG&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeWaitForMultipleObjects]]&lt;br /&gt;
|158&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeWaitForSingleObject]]&lt;br /&gt;
|159&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KfRaiseIrql]]&lt;br /&gt;
|160&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KfLowerIrql]]&lt;br /&gt;
|161&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KiBugCheckData]]&lt;br /&gt;
|162&lt;br /&gt;
|&lt;br /&gt;
|Variable: ULONG_PTR[5]&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KiUnlockDispatcherDatabase]]&lt;br /&gt;
|163&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/LaunchDataPage]]&lt;br /&gt;
|164&lt;br /&gt;
|&lt;br /&gt;
|Variable: PLAUNCH_DATA_PAGE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmAllocateContiguousMemory]]&lt;br /&gt;
|165&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmAllocateContiguousMemoryEx]]&lt;br /&gt;
|166&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmAllocateSystemMemory]]&lt;br /&gt;
|167&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmClaimGpuInstanceMemory]]&lt;br /&gt;
|168&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmCreateKernelStack]]&lt;br /&gt;
|169&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDeleteKernelStack]]&lt;br /&gt;
|170&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmFreeContiguousMemory]]&lt;br /&gt;
|171&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmFreeSystemMemory]]&lt;br /&gt;
|172&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmGetPhysicalAddress]]&lt;br /&gt;
|173&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmIsAddressValid]]&lt;br /&gt;
|174&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmLockUnlockBufferPages]]&lt;br /&gt;
|175&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmLockUnlockPhysicalPage]]&lt;br /&gt;
|176&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmMapIoSpace]]&lt;br /&gt;
|177&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmPersistContiguousMemory]]&lt;br /&gt;
|178&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmQueryAddressProtect]]&lt;br /&gt;
|179&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmQueryAllocationSize]]&lt;br /&gt;
|180&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmQueryStatistics]]&lt;br /&gt;
|181&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmSetAddressProtect]]&lt;br /&gt;
|182&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmUnmapIoSpace]]&lt;br /&gt;
|183&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtAllocateVirtualMemory]]&lt;br /&gt;
|184&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCancelTimer]]&lt;br /&gt;
|185&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtClearEvent]]&lt;br /&gt;
|186&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtClose]]&lt;br /&gt;
|187&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateDirectoryObject]]&lt;br /&gt;
|188&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateEvent]]&lt;br /&gt;
|189&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateFile]]&lt;br /&gt;
|190&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateIoCompletion]]&lt;br /&gt;
|191&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateMutant]]&lt;br /&gt;
|192&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateSemaphore]]&lt;br /&gt;
|193&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateTimer]]&lt;br /&gt;
|194&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtDeleteFile]]&lt;br /&gt;
|195&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtDeviceIoControlFile]]&lt;br /&gt;
|196&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtDuplicateObject]]&lt;br /&gt;
|197&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtFlushBuffersFile]]&lt;br /&gt;
|198&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtFreeVirtualMemory]]&lt;br /&gt;
|199&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtFsControlFile]]&lt;br /&gt;
|200&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtOpenDirectoryObject]]&lt;br /&gt;
|201&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtOpenFile]]&lt;br /&gt;
|202&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtOpenSymbolicLinkObject]]&lt;br /&gt;
|203&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtProtectVirtualMemory]]&lt;br /&gt;
|204&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtPulseEvent]]&lt;br /&gt;
|205&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueueApcThread]]&lt;br /&gt;
|206&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryDirectoryFile]]&lt;br /&gt;
|207&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryDirectoryObject]]&lt;br /&gt;
|208&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryEvent]]&lt;br /&gt;
|209&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryFullAttributesFile]]&lt;br /&gt;
|210&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryInformationFile]]&lt;br /&gt;
|211&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryIoCompletion]]&lt;br /&gt;
|212&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryMutant]]&lt;br /&gt;
|213&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQuerySemaphore]]&lt;br /&gt;
|214&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQuerySymbolicLinkObject]]&lt;br /&gt;
|215&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryTimer]]&lt;br /&gt;
|216&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryVirtualMemory]]&lt;br /&gt;
|217&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryVolumeInformationFile]]&lt;br /&gt;
|218&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtReadFile]]&lt;br /&gt;
|219&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtReadFileScatter]]&lt;br /&gt;
|220&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtReleaseMutant]]&lt;br /&gt;
|221&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtReleaseSemaphore]]&lt;br /&gt;
|222&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtRemoveIoCompletion]]&lt;br /&gt;
|223&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtResumeThread]]&lt;br /&gt;
|224&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSetEvent]]&lt;br /&gt;
|225&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSetInformationFile]]&lt;br /&gt;
|226&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSetIoCompletion]]&lt;br /&gt;
|227&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSetSystemTime]]&lt;br /&gt;
|228&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSetTimerEx]]&lt;br /&gt;
|229&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSignalAndWaitForSingleObjectEx]]&lt;br /&gt;
|230&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSuspendThread]]&lt;br /&gt;
|231&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtUserIoApcDispatcher]]&lt;br /&gt;
|232&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtWaitForSingleObject]]&lt;br /&gt;
|233&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtWaitForSingleObjectEx]]&lt;br /&gt;
|234&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtWaitForMultipleObjectsEx]]&lt;br /&gt;
|235&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtWriteFile]]&lt;br /&gt;
|236&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtWriteFileGather]]&lt;br /&gt;
|237&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtYieldExecution]]&lt;br /&gt;
|238&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObCreateObject]]&lt;br /&gt;
|239&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObDirectoryObjectType]]&lt;br /&gt;
|240&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_TYPE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObInsertObject]]&lt;br /&gt;
|241&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObMakeTemporaryObject]]&lt;br /&gt;
|242&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObOpenObjectByName]]&lt;br /&gt;
|243&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObOpenObjectByPointer]]&lt;br /&gt;
|244&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObpObjectHandleTable]]&lt;br /&gt;
|245&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_HANDLE_TABLE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObReferenceObjectByHandle]]&lt;br /&gt;
|246&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObReferenceObjectByName]]&lt;br /&gt;
|247&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObReferenceObjectByPointer]]&lt;br /&gt;
|248&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObSymbolicLinkObjectType]]&lt;br /&gt;
|249&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_TYPE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObfDereferenceObject]]&lt;br /&gt;
|250&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObfReferenceObject]]&lt;br /&gt;
|251&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PhyGetLinkState]]&lt;br /&gt;
|252&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PhyInitialize]]&lt;br /&gt;
|253&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsCreateSystemThread]]&lt;br /&gt;
|254&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsCreateSystemThreadEx]]&lt;br /&gt;
|255&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsQueryStatistics]]&lt;br /&gt;
|256&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsSetCreateThreadNotifyRoutine]]&lt;br /&gt;
|257&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsTerminateSystemThread]]&lt;br /&gt;
|258&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsThreadObjectType]]&lt;br /&gt;
|259&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_TYPE&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlAnsiStringToUnicodeString]]&lt;br /&gt;
|260&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlAppendStringToString]]&lt;br /&gt;
|261&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlAppendUnicodeStringToString]]&lt;br /&gt;
|262&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlAppendUnicodeToString]]&lt;br /&gt;
|263&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlAssert]]&lt;br /&gt;
|264&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCaptureContext]]&lt;br /&gt;
|265&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCaptureStackBackTrace]]&lt;br /&gt;
|266&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCharToInteger]]&lt;br /&gt;
|267&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCompareMemory]]&lt;br /&gt;
|268&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCompareMemoryUlong]]&lt;br /&gt;
|269&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCompareString]]&lt;br /&gt;
|270&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCompareUnicodeString]]&lt;br /&gt;
|271&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCopyString]]&lt;br /&gt;
|272&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCopyUnicodeString]]&lt;br /&gt;
|273&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCreateUnicodeString]]&lt;br /&gt;
|274&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlDowncaseUnicodeChar]]&lt;br /&gt;
|275&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlDowncaseUnicodeString]]&lt;br /&gt;
|276&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlEnterCriticalSection]]&lt;br /&gt;
|277&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlEnterCriticalSectionAndRegion]]&lt;br /&gt;
|278&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlEqualString]]&lt;br /&gt;
|279&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlEqualUnicodeString]]&lt;br /&gt;
|280&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlExtendedIntegerMultiply]]&lt;br /&gt;
|281&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlExtendedLargeIntegerDivide]]&lt;br /&gt;
|282&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlExtendedMagicDivide]]&lt;br /&gt;
|283&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlFillMemory]]&lt;br /&gt;
|284&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlFillMemoryUlong]]&lt;br /&gt;
|285&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlFreeAnsiString]]&lt;br /&gt;
|286&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlFreeUnicodeString]]&lt;br /&gt;
|287&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlGetCallersAddress]]&lt;br /&gt;
|288&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlInitAnsiString]]&lt;br /&gt;
|289&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlInitUnicodeString]]&lt;br /&gt;
|290&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlInitializeCriticalSection]]&lt;br /&gt;
|291&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlIntegerToChar]]&lt;br /&gt;
|292&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlIntegerToUnicodeString]]&lt;br /&gt;
|293&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlLeaveCriticalSection]]&lt;br /&gt;
|294&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlLeaveCriticalSectionAndRegion]]&lt;br /&gt;
|295&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlLowerChar]]&lt;br /&gt;
|296&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlMapGenericMask]]&lt;br /&gt;
|297&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlMoveMemory]]&lt;br /&gt;
|298&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlMultiByteToUnicodeN]]&lt;br /&gt;
|299&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlMultiByteToUnicodeSize]]&lt;br /&gt;
|300&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlNtStatusToDosError]]&lt;br /&gt;
|301&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlRaiseException]]&lt;br /&gt;
|302&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlRaiseStatus]]&lt;br /&gt;
|303&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlTimeFieldsToTime]]&lt;br /&gt;
|304&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlTimeToTimeFields]]&lt;br /&gt;
|305&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlTryEnterCriticalSection]]&lt;br /&gt;
|306&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUlongByteSwap]]&lt;br /&gt;
|307&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUnicodeStringToAnsiString]]&lt;br /&gt;
|308&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUnicodeStringToInteger]]&lt;br /&gt;
|309&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUnicodeToMultiByteN]]&lt;br /&gt;
|310&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUnicodeToMultiByteSize]]&lt;br /&gt;
|311&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUnwind]]&lt;br /&gt;
|312&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUpcaseUnicodeChar]]&lt;br /&gt;
|313&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUpcaseUnicodeString]]&lt;br /&gt;
|314&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUpcaseUnicodeToMultiByteN]]&lt;br /&gt;
|315&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUpperChar]]&lt;br /&gt;
|316&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUpperString]]&lt;br /&gt;
|317&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUshortByteSwap]]&lt;br /&gt;
|318&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlWalkFrameChain]]&lt;br /&gt;
|319&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlZeroMemory]]&lt;br /&gt;
|320&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxEEPROMKey]]&lt;br /&gt;
|321&lt;br /&gt;
|&lt;br /&gt;
|Variable: XBOX_KEY_DATA&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxHardwareInfo]]&lt;br /&gt;
|322&lt;br /&gt;
|&lt;br /&gt;
|Variable: XBOX_HARDWARE_INFO&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxHDKey]]&lt;br /&gt;
|323&lt;br /&gt;
|&lt;br /&gt;
|Variable: XBOX_KEY_DATA&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxKrnlVersion]]&lt;br /&gt;
|324&lt;br /&gt;
|&lt;br /&gt;
|Variable: XBOX_KRNL_VERSION&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxSignatureKey]]&lt;br /&gt;
|325&lt;br /&gt;
|&lt;br /&gt;
|Variable: XBOX_KEY_DATA&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XeImageFileName]]&lt;br /&gt;
|326&lt;br /&gt;
|&lt;br /&gt;
|Variable: OBJECT_STRING&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XeLoadSection]]&lt;br /&gt;
|327&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XeUnloadSection]]&lt;br /&gt;
|328&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/READ_PORT_BUFFER_UCHAR]]&lt;br /&gt;
|329&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/READ_PORT_BUFFER_USHORT]]&lt;br /&gt;
|330&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/READ_PORT_BUFFER_ULONG]]&lt;br /&gt;
|331&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/WRITE_PORT_BUFFER_UCHAR]]&lt;br /&gt;
|332&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/WRITE_PORT_BUFFER_USHORT]]&lt;br /&gt;
|333&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/WRITE_PORT_BUFFER_ULONG]]&lt;br /&gt;
|334&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcSHAInit]]&lt;br /&gt;
|335&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcSHAUpdate]]&lt;br /&gt;
|336&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcSHAFinal]]&lt;br /&gt;
|337&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcRC4Key]]&lt;br /&gt;
|338&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcRC4Crypt]]&lt;br /&gt;
|339&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcHMAC]]&lt;br /&gt;
|340&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcPKEncPublic]]&lt;br /&gt;
|341&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcPKDecPrivate]]&lt;br /&gt;
|342&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcPKGetKeyLen]]&lt;br /&gt;
|343&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcVerifyPKCS1Signature]]&lt;br /&gt;
|344&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcModExp]]&lt;br /&gt;
|345&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcDESKeyParity]]&lt;br /&gt;
|346&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcKeyTable]]&lt;br /&gt;
|347&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcBlockCrypt]]&lt;br /&gt;
|348&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcBlockCryptCBC]]&lt;br /&gt;
|349&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcCryptService]]&lt;br /&gt;
|350&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcUpdateCrypto]]&lt;br /&gt;
|351&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlRip]]&lt;br /&gt;
|352&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxLANKey]]&lt;br /&gt;
|353&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxAlternateSignatureKeys]]&lt;br /&gt;
|354&lt;br /&gt;
|&lt;br /&gt;
|Variable: XBOX_KEY_DATA[XBEIMAGE_ALTERNATE_TITLE_ID_COUNT]&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XePublicKeyData]]&lt;br /&gt;
|355&lt;br /&gt;
|&lt;br /&gt;
|Variable: UCHAR[XC_PUBLIC_KEYDATA_SIZE]&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalBootSMCVideoMode]]&lt;br /&gt;
|356&lt;br /&gt;
|&lt;br /&gt;
|Variable: ULONG&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IdexChannelObject]]&lt;br /&gt;
|357&lt;br /&gt;
|&lt;br /&gt;
|Variable: IDE_CHANNEL_OBJECT&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalIsResetOrShutdownPending]]&lt;br /&gt;
|358&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoMarkIrpMustComplete]]&lt;br /&gt;
|359&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalInitiateShutdown]]&lt;br /&gt;
|360&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlSnprintf]]&lt;br /&gt;
|361&lt;br /&gt;
|stdcall&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlSprintf]]&lt;br /&gt;
|362&lt;br /&gt;
|stdcall&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlVsnprintf]]&lt;br /&gt;
|363&lt;br /&gt;
|stdcall&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlVsprintf]]&lt;br /&gt;
|364&lt;br /&gt;
|stdcall&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalEnableSecureTrayEject]]&lt;br /&gt;
|365&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalWriteSMCScratchRegister]]&lt;br /&gt;
|366&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|367&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|368&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|369&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|370&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|371&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|372&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|373&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDbgAllocateMemory]]&lt;br /&gt;
|374&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDbgFreeMemory]]&lt;br /&gt;
|375&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDbgQueryAvailablePages]]&lt;br /&gt;
|376&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDbgReleaseAddress]]&lt;br /&gt;
|377&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDbgWriteCheck]]&lt;br /&gt;
|378&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=Memory&amp;diff=5709</id>
		<title>Memory</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=Memory&amp;diff=5709"/>
				<updated>2017-06-10T22:09:36Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: Table centered.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Xbox has 64MB Memory. This could be expanded to 128MB of memory (and the motherboard has empty spots where these could have been) but no games took advantage of it. The debug Xbox and the Chihiro both contained 128MB Memory.&lt;br /&gt;
&lt;br /&gt;
The memory was shared between the CPU and GPU. On the retail Xbox, the [[Flash]] and [[MCPX ROM]] are also mapped to memory at the top 16 MiB and the top 512 Bytes respectively. On Debug Xboxs and Chihiro, only the Flash is mapped as they don't contain an MCPX ROM.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
! Memory Type&lt;br /&gt;
! Retail Xbox Range&lt;br /&gt;
! Debug/Chihiro Range&lt;br /&gt;
|-&lt;br /&gt;
|Main Memory&lt;br /&gt;
|0x00000000 - 0x04000000&lt;br /&gt;
|0x00000000 - 0x08000000&lt;br /&gt;
|-&lt;br /&gt;
|[[GPU|GPU (NV2A) Registers]]&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot;|0xFD000000 - 0xFE000000&lt;br /&gt;
|-&lt;br /&gt;
|APU Registers&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot;|0xFE800000 - 0xFE880000&lt;br /&gt;
|-&lt;br /&gt;
|ACI (AC97) Registers&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot;|0xFEC00000 - 0xFEC01000&lt;br /&gt;
|-&lt;br /&gt;
|USB 0 Registers&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot;|0xFED00000 - 0xFED01000&lt;br /&gt;
|-&lt;br /&gt;
|USB 1 Registers&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot;|0xFED08000 - 0xFED09000&lt;br /&gt;
|-&lt;br /&gt;
|NIC (NVNet) Registers&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot;|0xFEF00000 - 0xFEF00400&lt;br /&gt;
|-&lt;br /&gt;
|[[Flash]]&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot;|0xFF000000 - 0xFFFFFFFF&lt;br /&gt;
|-&lt;br /&gt;
|[[MCPX ROM]]&lt;br /&gt;
|0xFFFFFE00 - 0xFFFFFFFF&lt;br /&gt;
|N/A&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Code for emulating the memory might consist of:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#ifdef DEBUG || CHIHIRO&lt;br /&gt;
#define MEMORY_SIZE 128 * 1024 * 1024&lt;br /&gt;
int mcpx_active = 0;&lt;br /&gt;
#else&lt;br /&gt;
#define MEMORY_SIZE 64 * 1024 * 1024&lt;br /&gt;
int mcpx_active = 1;&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
#define FLASH_SIZE 256 * 1024&lt;br /&gt;
#define FLASH_MAP_SIZE 16 * 1024 * 1024&lt;br /&gt;
#define FLASH_MAP_ADDRESS (0xFFFFFFFF - FLASH_MAP_SIZE + 1)&lt;br /&gt;
&lt;br /&gt;
#define MCPX_SIZE   0x200&lt;br /&gt;
#define MCPX_MAP_ADDRESS (0xFFFFFFFF - MCPX_MAP_SIZE + 1)&lt;br /&gt;
&lt;br /&gt;
uint8_t memory[MEMORY_SIZE] = {0};&lt;br /&gt;
uint8_t flash[FLASH_SIZE] = {0};&lt;br /&gt;
uint8_t mcpx[MCPX_SIZE] = {0};&lt;br /&gt;
&lt;br /&gt;
uint8_t get_memory_byte(uint32_t location) {&lt;br /&gt;
    if (location &amp;lt; MEMORY_SIZE) {&lt;br /&gt;
        return memory[location];&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    if (mcpx_active &amp;amp;&amp;amp; location &amp;gt;= MCPX_MAP_ADDRESS) {&lt;br /&gt;
        return mcpx[location - MCPX_MAP_ADDRESS];&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    if (location &amp;gt;= FLASH_MAP_ADDRESS) {&lt;br /&gt;
        return flash[(location - FLASH_MAP_ADDRESS) % FLASH_SIZE];&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    printf(&amp;quot;Memory in unspecified range: %08X\n&amp;quot;, location);&lt;br /&gt;
    return 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
uint16_t get_memory_word(uint32_t location) {&lt;br /&gt;
    return get_memory(location + 1) &amp;lt;&amp;lt; 8 | get_memory(location);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
uint32_t get_memory_dword(uint32_t location) {&lt;br /&gt;
    return get_memory_word(location + 2) &amp;lt;&amp;lt; 16 | get_memory_word(location);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void deactivate_mcpx() {&lt;br /&gt;
    mcpx_active = 0;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=Memory&amp;diff=5708</id>
		<title>Memory</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=Memory&amp;diff=5708"/>
				<updated>2017-06-10T22:00:36Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: Hardware Registers&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Xbox has 64MB Memory. This could be expanded to 128MB of memory (and the motherboard has empty spots where these could have been) but no games took advantage of it. The debug Xbox and the Chihiro both contained 128MB Memory.&lt;br /&gt;
&lt;br /&gt;
The memory was shared between the CPU and GPU. On the retail Xbox, the [[Flash]] and [[MCPX ROM]] are also mapped to memory at the top 16 MiB and the top 512 Bytes respectively. On Debug Xboxs and Chihiro, only the Flash is mapped as they don't contain an MCPX ROM.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Memory Type&lt;br /&gt;
! Retail Xbox Range&lt;br /&gt;
! Debug/Chihiro Range&lt;br /&gt;
|-&lt;br /&gt;
|Main Memory&lt;br /&gt;
|0x00000000 - 0x04000000&lt;br /&gt;
|0x00000000 - 0x08000000&lt;br /&gt;
|-&lt;br /&gt;
|[[GPU|GPU (NV2A) Registers]]&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot;|0xFD000000 - 0xFE000000&lt;br /&gt;
|-&lt;br /&gt;
|APU Registers&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot;|0xFE800000 - 0xFE880000&lt;br /&gt;
|-&lt;br /&gt;
|ACI (AC97) Registers&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot;|0xFEC00000 - 0xFEC01000&lt;br /&gt;
|-&lt;br /&gt;
|USB 0 Registers&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot;|0xFED00000 - 0xFED01000&lt;br /&gt;
|-&lt;br /&gt;
|USB 1 Registers&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot;|0xFED08000 - 0xFED09000&lt;br /&gt;
|-&lt;br /&gt;
|NIC (NVNet) Registers&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot;|0xFEF00000 - 0xFEF00400&lt;br /&gt;
|-&lt;br /&gt;
|[[Flash]]&lt;br /&gt;
|colspan=&amp;quot;2&amp;quot;|0xFF000000 - 0xFFFFFFFF&lt;br /&gt;
|-&lt;br /&gt;
|[[MCPX ROM]]&lt;br /&gt;
|0xFFFFFE00 - 0xFFFFFFFF&lt;br /&gt;
|N/A&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Code for emulating the memory might consist of:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#ifdef DEBUG || CHIHIRO&lt;br /&gt;
#define MEMORY_SIZE 128 * 1024 * 1024&lt;br /&gt;
int mcpx_active = 0;&lt;br /&gt;
#else&lt;br /&gt;
#define MEMORY_SIZE 64 * 1024 * 1024&lt;br /&gt;
int mcpx_active = 1;&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
#define FLASH_SIZE 256 * 1024&lt;br /&gt;
#define FLASH_MAP_SIZE 16 * 1024 * 1024&lt;br /&gt;
#define FLASH_MAP_ADDRESS (0xFFFFFFFF - FLASH_MAP_SIZE + 1)&lt;br /&gt;
&lt;br /&gt;
#define MCPX_SIZE   0x200&lt;br /&gt;
#define MCPX_MAP_ADDRESS (0xFFFFFFFF - MCPX_MAP_SIZE + 1)&lt;br /&gt;
&lt;br /&gt;
uint8_t memory[MEMORY_SIZE] = {0};&lt;br /&gt;
uint8_t flash[FLASH_SIZE] = {0};&lt;br /&gt;
uint8_t mcpx[MCPX_SIZE] = {0};&lt;br /&gt;
&lt;br /&gt;
uint8_t get_memory_byte(uint32_t location) {&lt;br /&gt;
    if (location &amp;lt; MEMORY_SIZE) {&lt;br /&gt;
        return memory[location];&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    if (mcpx_active &amp;amp;&amp;amp; location &amp;gt;= MCPX_MAP_ADDRESS) {&lt;br /&gt;
        return mcpx[location - MCPX_MAP_ADDRESS];&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    if (location &amp;gt;= FLASH_MAP_ADDRESS) {&lt;br /&gt;
        return flash[(location - FLASH_MAP_ADDRESS) % FLASH_SIZE];&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    printf(&amp;quot;Memory in unspecified range: %08X\n&amp;quot;, location);&lt;br /&gt;
    return 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
uint16_t get_memory_word(uint32_t location) {&lt;br /&gt;
    return get_memory(location + 1) &amp;lt;&amp;lt; 8 | get_memory(location);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
uint32_t get_memory_dword(uint32_t location) {&lt;br /&gt;
    return get_memory_word(location + 2) &amp;lt;&amp;lt; 16 | get_memory_word(location);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void deactivate_mcpx() {&lt;br /&gt;
    mcpx_active = 0;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=GPU&amp;diff=5707</id>
		<title>GPU</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=GPU&amp;diff=5707"/>
				<updated>2017-06-10T21:39:34Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: Redirected page to NV2A&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[NV2A]]&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=Halo_2&amp;diff=5694</id>
		<title>Halo 2</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=Halo_2&amp;diff=5694"/>
				<updated>2017-06-07T00:17:51Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Game}}&lt;br /&gt;
&lt;br /&gt;
== Map File Format (Iron_Forge whitepaper) ==&lt;br /&gt;
&lt;br /&gt;
Retrieved from [http://old.halomods.com old.halomods.com].&lt;br /&gt;
&lt;br /&gt;
Halo 2 .map file format whitepaper originally by Iron_Forge.&lt;br /&gt;
&lt;br /&gt;
Filename: H2WhitePaper.doc&lt;br /&gt;
&lt;br /&gt;
Created: 11/21/2004, 12:13:00, Iron_Forge.&lt;br /&gt;
&lt;br /&gt;
Revision: 0.9b&lt;br /&gt;
&lt;br /&gt;
=== 1 - General Information ===&lt;br /&gt;
&lt;br /&gt;
==== 1.1 - Introduction ====&lt;br /&gt;
&lt;br /&gt;
Greetings. My name is Iron_Forge, and I have been working on and off with Halo map files of one type or another for a little over a year now. I have remained active in all areas of map formatting of Halo 1 for the xbox as well as the pc. Odds are if you have used an application for Halo 1, I have had a hand in it, or the information that led to its conception.&lt;br /&gt;
&lt;br /&gt;
I have been working on the Halo 2 map format since its release, and this document serves as a collection of the information I have compiled with the help of good friends MonoxideC and ViperNeo. Applying my experience from Halo 1 and other projects, I am one of a handful of people who could be considered experts on the map file formats. Using this document, I hope to pass this on to you.&lt;br /&gt;
&lt;br /&gt;
Many things are not contained within this document, for the simple reason of I did not figure out how they work (the BSP is a good example.) That’s not to say these things are still unknown. ViperNeo had the BSP information completed the same time we were working on models together, due to the strong similarity between them.&lt;br /&gt;
&lt;br /&gt;
==== 1.2 - Glossary ====&lt;br /&gt;
&lt;br /&gt;
'''dword''' – 4 bytes of data (double word)&lt;br /&gt;
&lt;br /&gt;
'''word''' – 2 bytes of data&lt;br /&gt;
&lt;br /&gt;
'''primary magic''' – A value used to increase offsets, allowing large areas of data to be moved without modifying the offsets contained within it.&lt;br /&gt;
&lt;br /&gt;
'''secondary magic''' – A value used to increase offsets, allowing large areas of data to be moved without modifying the offsets contained within it, primarily used for meta.&lt;br /&gt;
&lt;br /&gt;
'''pure offset''' – A value which represents an offset in the file that has not been modified in any way&lt;br /&gt;
&lt;br /&gt;
'''raw offset''' – A pure offset whose 2 most significant bits represent the file the offset references&lt;br /&gt;
&lt;br /&gt;
'''primary magic offset''' – A pure offset whose value has been increased by the primary magic value&lt;br /&gt;
&lt;br /&gt;
'''secondary magic offset''' – A pure offset whose value has been increased by the secondary magic value&lt;br /&gt;
&lt;br /&gt;
=== 2 - Map Information ===&lt;br /&gt;
&lt;br /&gt;
==== 2.1 - Map Layout ====&lt;br /&gt;
&lt;br /&gt;
The Halo 2 map files can be broken up into the following sections: header, sound raw data, model raw data, bsp model raw data, model animation raw data, bsp structure, script references, file names, unicode strings raw data, other, texture raw data, object index, index padding, object meta information, and finally the cache where applicable.&lt;br /&gt;
&lt;br /&gt;
==== 2.2 - Processing ====&lt;br /&gt;
&lt;br /&gt;
When Halo 2 is loaded, it will create cache files (copying the original files to the hard drive of the xbox). The shared and single player shared map files are exceptions to this rule, most likely to lower the load times of the game starting, and each map being processed. If your installation has valid bink video files, these will be played during load times, otherwise a progress text will appear on the screen showing the percentage copied.&lt;br /&gt;
&lt;br /&gt;
All loaded files are signed (see section on encryptomatic signature), and should a loading map fail, the engine will retry the copy twice more before giving a “dirty disk” error, or a “map failed to load” error, depending on the map.&lt;br /&gt;
 &lt;br /&gt;
Upon loading a map, only the required resources are placed in memory. As objects appear on screen, the data for them is streamed from the shared files, replacing the very low copy kept in memory with a much richer and more detailed counterparts. This process allows even multiplayer maps to have access to several hundred megabytes of information, while remaining within the limitations of the xbox hardware.&lt;br /&gt;
&lt;br /&gt;
==== 2.3 - Map Header ====&lt;br /&gt;
&lt;br /&gt;
The map header1 is 2048 bytes just as previous versions of Halo. The version tag is now 8. The index offset is a pure offset pointing to the index header, followed by the meta start, which when added to the index offset will point to the beginning of the meta area. Map origin will define the path (and file) the cache was created from, and as such is only defined in the cache files.&lt;br /&gt;
&lt;br /&gt;
===== 2.3.1 - File Table =====&lt;br /&gt;
&lt;br /&gt;
The file table contains full paths for each object in relative order (first filename is for the first object.) The strings are standard ASCII, with a null termination and no padding is used regardless of where the string terminates.&lt;br /&gt;
&lt;br /&gt;
The file table index contains unsigned integers defining the offset which each string begins, also relative. This allows the file table to be read as a single block of characters, and each object to be issued a pointer to the beginning of its string.&lt;br /&gt;
&lt;br /&gt;
===== 2.3.2 - Encryptomatic Signature =====&lt;br /&gt;
&lt;br /&gt;
The encryptomatic signature is created by xoring every dword after the header together. It is my belief that this value has the single purpose of validating maps copied correctly, and was not used to “thwart” would be modders.&lt;br /&gt;
&lt;br /&gt;
===== 2.3.3 - Script References =====&lt;br /&gt;
&lt;br /&gt;
Script references link some object to a specific event. The string table defining these references is in the same format as the file table, including an index. They can often be found following dependencies such as effect dependencies. This would link that effect to be triggered by a given event, such as a button being pressed, or an item being picked up. The reference themselves consist of a pair of words, the first being the index to the string in the table, the second being the length of the script reference string.&lt;br /&gt;
&lt;br /&gt;
==== 2.4 - Index Header ====&lt;br /&gt;
&lt;br /&gt;
The first value in the index header remains the constant used to calculate magic. The object index offset here is a primary magic offset, and points to the object index.&lt;br /&gt;
&lt;br /&gt;
===== 2.4.1 - Tag List =====&lt;br /&gt;
&lt;br /&gt;
Directly following the index header is the tag list. This list contains all used tags in the map file, and defines their object hierarchy. This allows the engine to know for example, that all vehicles are a sub class of the unit class, which is a sub class of the object class. I believe the wildcard tags are used as a way of using the primary tag without its parents, though this is just speculation.&lt;br /&gt;
&lt;br /&gt;
===== 2.4.2 - Object Index =====&lt;br /&gt;
&lt;br /&gt;
The object index is a recursively-constructed collection defining all objects in the map. The objects identifier is defined here, which is used to reference the object from all other areas of the map file. The identifier is composed of two short values, each are incremented equally throughout the index. The meta offset is a secondary magic offset which points to the beginning of the objects meta.&lt;br /&gt;
&lt;br /&gt;
===== 2.4.3 - Primary and Secondary Magic =====&lt;br /&gt;
&lt;br /&gt;
The magic values are used to allow moving large blocks of data without having to modify the data itself. Using a magic value applied to all offsets, after moving the data x bytes, the magic only needs to be increased or decreased 8 to correct all offsets, rather than each offset needing re-calculation. Primary magic is still calculated by magic constant - (index header offset) + sizeof(index header)). Secondary magic, which is now used instead of primary magic for meta related offsets, is primary magic + sizeof(BSP). Since we cannot obtain the size of the BSP object without using secondary magic (it is located in the scenery tag), we use the known offset of the meta start and the secondary magic offset of the first object to calculate this value.&lt;br /&gt;
&lt;br /&gt;
=== 3 - Objects ===&lt;br /&gt;
&lt;br /&gt;
==== 3.1 - Raw Offsets ====&lt;br /&gt;
&lt;br /&gt;
Raw offsets in Halo 2 have no magic applied to them. However, they can reference the current map file, or the three shared files. To do this, it reserves the two most significant (highest) bits to define the referencing file. These are defined as: 002 being local file, 012 being mainmenu.map, 102 being shared.map, and 112 being single_player_shared.map.&lt;br /&gt;
&lt;br /&gt;
When referencing a raw offset, one should first determine the file being referenced, remove those two bits from the offset value (and with 0x3FFFFFFF), and then seek to that offset in the correct file to find the referenced data. Given the size of the shared files, it is possible that the third most significant bit is also reserved for sharing new downloadable content in the future, but this would just be speculation.&lt;br /&gt;
&lt;br /&gt;
==== 3.2 - Unicode Strings ====&lt;br /&gt;
&lt;br /&gt;
Unicode strings are built to allow for up to nine languages. The globals object defines where each language block is located, and its related information (size, string count, etc.) as needed. Each unicode string object then contains two shorts per language, the first defining the offset (as a string count) in the language block that the unicode object begins, and the second defining how many strings are in the object.&lt;br /&gt;
&lt;br /&gt;
This method allows the multiplayer maps to be identical for every version and region of Halo 2. The engine can simply detect you xbox language settings, and supply the correct string(s) form the language block.&lt;br /&gt;
&lt;br /&gt;
==== 3.3 - Bitmaps &amp;amp; Textures ====&lt;br /&gt;
&lt;br /&gt;
Bitmap objects are collections of the textures in Halo 2, and their layout is rather straightforward.  Each texture is allowed up to six levels of detail. Each level of detail is identical to its predecessors first mipmap. So if the first quality level were 256x256, the following would be 128x128. Each level of detail however still contains its own entire set of mipmaps. I suspect this goes further towards Halo 2’s efficient use of memory management.&lt;br /&gt;
&lt;br /&gt;
Each bitmap object may also contain several images, usually used where options between similar sets of images are needed (such as multiple level images in the main menu.) These will be represented by the bitm struct reflexive. Each bitmap may be extracted as if it were its own object.&lt;br /&gt;
&lt;br /&gt;
Referencing the source to HME/HMT, we can find the different image formats for the different image objects. In addition to these types, 0x11 and 0x12 are both single channel images (you may extract them as A8 if using the common DDS), and are used for bump maps, and light maps (respectively.)&lt;br /&gt;
&lt;br /&gt;
Many images are still swizzled (a technique for faster memory copies), and this information may also be referenced from the HME/HMT sources.&lt;br /&gt;
&lt;br /&gt;
==== 3.4 - Sounds ====&lt;br /&gt;
&lt;br /&gt;
Sounds were probably the most enjoyable piece of Halo 2 to work on. They entwine with an “ugh!” object named “I’ve got a lovely bunch of coconuts”, a song done by the amazing comedic group Monty Python. I cannot help but believe this system was done as an easter egg designed just for me as “the curious modder”. To Bungie, I thank you (unless of course this was designed to keep us from removing sounds, in which case I sincerely apologize.)&lt;br /&gt;
&lt;br /&gt;
In each sound meta, there is an index and chunk count that references a block in the fifth reflexive in the coconuts object. This block has another index and chunk count, referencing the sixth reflexive in the coconuts object. These chunks reference “option” sounds, such as several different sound choices for entering a vehicle.&lt;br /&gt;
&lt;br /&gt;
Each item in the sixth block contains another index and chunk count, this time referencing the ninth reflexive in the coconuts object. The ninth reflexive contains the size and raw offset for each piece of the sound.&lt;br /&gt;
&lt;br /&gt;
Sounds in Halo 2 are xbox adpcm or WMA, depending on the type byte. The WMA sounds can be assembled completely from the raw data pieces. The xbox adpcm pieces require the header be written.&lt;br /&gt;
&lt;br /&gt;
If the type byte is 1, then the sound is an adpcm, mono, and 22050kbps sound file. Type 2 is also adpcm, stereo, and 44100kbps sound file. Type 3 is a WMA sound file. There is more to the sound formatting than this, however this was mare than enough for me to extract all the sounds.&lt;br /&gt;
&lt;br /&gt;
==== 3.5 - Models ====&lt;br /&gt;
&lt;br /&gt;
Models in Halo 2 use a compressed format based on a bounding box.  This bounding box can be found in the first reflexive of the model meta. Using its constraints for each value relevant to the models, the uncompressed value can be found using the formula (((shortValue + 32768) / 65535) * (maxValue – minValue)) + minValue.&lt;br /&gt;
&lt;br /&gt;
The model raw data block now contains a header, footer, and several resource chunks. The header contains information regarding how many chunks are in each resource block, allowing you to determine which block contains the information needed (for example, if a given block has 0 chunks, then it will not have a corresponding resource block). The important resource blocks are the mesh information block (containing mesh information), the indices block (containing the indices for the triangle strip), the vertices block (containing at minimum 3 shorts defining the x, y, and z of the vertices), the UV map (containing the compressed UV points.), and the bone map.&lt;br /&gt;
&lt;br /&gt;
The third dword (as an unsigned integer) in each mesh information block defines how many indices are in that mesh. The indices are placed in order, so each meshes indices can be found after its predecessor in the indices resource block.&lt;br /&gt;
&lt;br /&gt;
The vertices are stored with several sized blocks within their resource block, however the x, y, and z points are still represented by the first 3 shorts respectively. The size of each vertex block can be determined by the type bytes in the model meta. Each short must then be decompressed using the above-mentioned formula and their own constraint value, min x and max x for x, and so on.&lt;br /&gt;
&lt;br /&gt;
If the given vertex type has more than 6 bytes, it is followed by the bone references and weights of this vertex. Both are one byte in length, and the bone references are sorted. Therefore if a bone with a value of 0 is read in any position other than the first, this bone reference should be discarded, as should all that follow. Following the bone references are their weights, which are also one byte in length, and can be considered compressed. The weights are a value between 0 an 1 once uncompressed, thus a byte with a weight of 128 will have a weight of 0.5 (or 50% deformation based on this bone.) The exception to this is the 8 byte vertices, where the two bytes following are both bones. If both are set, they each have a weight of 0.5, and if only one is set it is given full weight.&lt;br /&gt;
&lt;br /&gt;
The UV’s are slightly more complicated. They are compressed in the same fashion as the vertices. However, while UV’s must always remain between 0 and 1, their constraints are not governed by the same limits. The resulting uncompressed values can be fixed through “looping” them. If the value is 1.3, the resulting value would be 0.3, and given the value -0.3, the resulting value would be 0.7. The easiest way to accomplish this is to mod the resulting value by 1, and then if the value is negative, subtract it from 1.&lt;br /&gt;
&lt;br /&gt;
Since the bones have to act over several different pieces, each raw model block has a bone map, relating the bone byte to the correct bone id. This is a byte array, so if a vertex references bone 0, then boneMap[0] will provide the correct bone id.&lt;br /&gt;
&lt;br /&gt;
Back to the meta, the sixth reflexive in the model meta defines the bone hierarchy of the model. When parent, child, or sibling is none, the value will be set to 0xFFFF. These chunks are the bones which are mapped to from the raw data. The name is a script reference, and defines what the bone is called.&lt;br /&gt;
&lt;br /&gt;
The second reflexive defines all the level of details (LOD) for the model pieces. The name is again a script reference defining what this particular LOD is called. This is followed by a reflexive. This reflexive is for all the different options for the particular LOD (for example: base, default, damaged, etc.) Each of these reflexives consist of another script reference name, defining what this option is referred to as, followed by a series of 5 shorts. These shorts refer to the piece of the model which makes up one of the 5 LODs for this option. The last short (following the 5 LODs), defines the piece of the model which has the highest LOD (this should be equal to the 5th LOD value.) If a model only has 3 LODs, the first three LOD values will be the same, defining one piece to be used for all three levels.&lt;br /&gt;
&lt;br /&gt;
The seventh reflexive in the model meta defines a series of locations defining everything from where lights and other effects are located on a model, to where the characters place their hands while using the model. These are set by a script reference to link the point to, and the points location data.&lt;br /&gt;
&lt;br /&gt;
==== 3.6 - Other Tags ====&lt;br /&gt;
&lt;br /&gt;
For the most part, objects are quite similar to their Halo 1 counterparts. Usually there has been some general compacting of the data (the tags have been cleaned up, unused values removed), or a reflexive added here and there. Notable exceptions that I haven’t written about here (as lack of time and motivation kept me away) are the model animations, which now have large blocks of raw data.&lt;br /&gt;
&lt;br /&gt;
=== 4 - In Closing ===&lt;br /&gt;
&lt;br /&gt;
==== 4.1 - Conclusion ====&lt;br /&gt;
&lt;br /&gt;
In closing, I would like to say that not all the information enclosed here is guaranteed to be accurate. It is composed of my findings, and how I interpreted them at the time. Much of the structs are incomplete, as I tend to not write down things I figure out while seeking other answers, and I tried to only include solid information, instead of all my random notes. &lt;br /&gt;
&lt;br /&gt;
The information contained within these pages should be enough to get any one started, and take them to the point of being able to obtain any of the above items, and replace them with their own creations.&lt;br /&gt;
&lt;br /&gt;
I would like to thank all of you who read this far (and bothered reading this), and to you all, happy modding.&lt;br /&gt;
&lt;br /&gt;
==== 4.2 - Acknowledgements ====&lt;br /&gt;
&lt;br /&gt;
I would also once again like to thank MonoxideC and ViperNeo for their help in this. While they may remain modest, both were invaluable in explaining things I didn’t fully understand, bouncing ideas off, and just helping out anyway they could. The community is better for having them, and I better for knowing them.&lt;br /&gt;
&lt;br /&gt;
=== 5 - Appendix I - Structures ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
struct mapHeader {&lt;br /&gt;
  char[4] head;&lt;br /&gt;
  int version;&lt;br /&gt;
  int filesize;&lt;br /&gt;
  int zero;&lt;br /&gt;
  int indexOffset;&lt;br /&gt;
  int metaStart;&lt;br /&gt;
  dword[2] unknown;&lt;br /&gt;
  char[32] mapOrigin;&lt;br /&gt;
  byte[224]unknown;&lt;br /&gt;
  char[32] build;&lt;br /&gt;
  byte[20] unknown;&lt;br /&gt;
  int unknown;&lt;br /&gt;
  int offsetToStrangeFileStrings;&lt;br /&gt;
  int unknown;&lt;br /&gt;
  int offsetToSomething;&lt;br /&gt;
  int scriptReferenceCount;&lt;br /&gt;
  int sizeOfScriptReference;&lt;br /&gt;
  int offsetToScriptReferenceIndex;&lt;br /&gt;
  int offsetToScriptReferenceStrings;&lt;br /&gt;
  byte[36] unknown;&lt;br /&gt;
  char[32] mapName;&lt;br /&gt;
  int zero;&lt;br /&gt;
  char[32] scenarioPath;&lt;br /&gt;
  byte[224] zero;&lt;br /&gt;
  int unknown;&lt;br /&gt;
  int fileCount;&lt;br /&gt;
  int fileTableOffset;&lt;br /&gt;
  int fileTableSize;&lt;br /&gt;
  int filesIndex;&lt;br /&gt;
  int signature;&lt;br /&gt;
  byte[1320] zero;&lt;br /&gt;
  char[4] foot;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
struct indexHeader {&lt;br /&gt;
  int primaryMagicConstantMagic;&lt;br /&gt;
  int tagListCount;&lt;br /&gt;
  int objectIndexOffset;&lt;br /&gt;
  int scenarioID;&lt;br /&gt;
  int tagIDStart;&lt;br /&gt;
  int unknown;&lt;br /&gt;
  int objectCount;&lt;br /&gt;
  char[4] tags;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
struct tagListEntry {&lt;br /&gt;
  char[4] objectClass;&lt;br /&gt;
  char[4] parentClass;&lt;br /&gt;
  char[4] grandparentClass;&lt;br /&gt;
}&lt;br /&gt;
struct objectEntry {&lt;br /&gt;
  char[4] tag;&lt;br /&gt;
  int ID;&lt;br /&gt;
  int offset;&lt;br /&gt;
  int metaSize;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
struct unicMeta {&lt;br /&gt;
  uint[4] zero;&lt;br /&gt;
  short lang1Offset;&lt;br /&gt;
  short lang1Count;&lt;br /&gt;
  short lang2Offset;&lt;br /&gt;
  short lang2Count;&lt;br /&gt;
  short lang3Offset;&lt;br /&gt;
  short lang3Count;&lt;br /&gt;
  short lang4Offset;&lt;br /&gt;
  short lang4Count;&lt;br /&gt;
  short lang5Offset;&lt;br /&gt;
  short lang5Count;&lt;br /&gt;
  short lang6Offset;&lt;br /&gt;
  short lang6Count;&lt;br /&gt;
  short lang7Offset;&lt;br /&gt;
  short lang7Count;&lt;br /&gt;
  short lang8Offset;&lt;br /&gt;
  short lang8Count;&lt;br /&gt;
  short lang9Offset;&lt;br /&gt;
  short lang9Count;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
struct bitmMeta {&lt;br /&gt;
  byte[68] data;&lt;br /&gt;
  struct image {&lt;br /&gt;
    char[4] bitm;&lt;br /&gt;
    ushort width;&lt;br /&gt;
    ushort height;&lt;br /&gt;
    ushort depth;&lt;br /&gt;
    ushort type;&lt;br /&gt;
    ushort format;&lt;br /&gt;
    ushort flags;&lt;br /&gt;
    ushort regPointX;&lt;br /&gt;
    ushort regPointY;&lt;br /&gt;
    ushort mipMapCount;&lt;br /&gt;
    ushort pixelOffset;&lt;br /&gt;
    uint zero;&lt;br /&gt;
    uint[6] offset;&lt;br /&gt;
    uint[6] size;&lt;br /&gt;
    uint identifier;&lt;br /&gt;
    byte[36] unknown;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
struct sndMeta {&lt;br /&gt;
  dword unknown;&lt;br /&gt;
  byte format;&lt;br /&gt;
  byte[3] unknown;&lt;br /&gt;
  short index;&lt;br /&gt;
  byte chunkCount;&lt;br /&gt;
  byte unknown;&lt;br /&gt;
  dword[2] unknown;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
struct ughMeta {&lt;br /&gt;
  struct {}&lt;br /&gt;
  struct {}&lt;br /&gt;
  struct {&lt;br /&gt;
    scriptRef sound;&lt;br /&gt;
  }&lt;br /&gt;
  struct {}&lt;br /&gt;
  struct soundOptions {&lt;br /&gt;
    dword[2] unknown;&lt;br /&gt;
    short index;&lt;br /&gt;
    short chunkCount;&lt;br /&gt;
  }&lt;br /&gt;
  struct soundPieces {&lt;br /&gt;
    dword[3] unknown;&lt;br /&gt;
    short index;&lt;br /&gt;
    short chunkCount;&lt;br /&gt;
  }&lt;br /&gt;
  struct {}&lt;br /&gt;
  struct {}&lt;br /&gt;
  struct rawSound {&lt;br /&gt;
    uint rawOffset;&lt;br /&gt;
    uint size;&lt;br /&gt;
    uint eff;&lt;br /&gt;
  }&lt;br /&gt;
  struct {}&lt;br /&gt;
  struct {}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
struct modeMeta {&lt;br /&gt;
  scriptRef modelName;&lt;br /&gt;
  dword val2;&lt;br /&gt;
  dword val3;&lt;br /&gt;
  dword zero;&lt;br /&gt;
  dword zero;&lt;br /&gt;
  struct boundingBox&lt;br /&gt;
  {&lt;br /&gt;
    float minX;&lt;br /&gt;
    float maxX;&lt;br /&gt;
    float minY;&lt;br /&gt;
    float maxY;&lt;br /&gt;
    float minZ;&lt;br /&gt;
    float maxZ;&lt;br /&gt;
    float minU;&lt;br /&gt;
    float maxU;&lt;br /&gt;
    float minV;&lt;br /&gt;
    float maxV;&lt;br /&gt;
    dword:4 zero;&lt;br /&gt;
  }&lt;br /&gt;
  struct LODs&lt;br /&gt;
  {&lt;br /&gt;
    scriptRef modelPiece;&lt;br /&gt;
    word sval1; // FFFF&lt;br /&gt;
    word sval2; // 0000&lt;br /&gt;
    struct ref2.1&lt;br /&gt;
    {&lt;br /&gt;
      scriptRef modelType;&lt;br /&gt;
      word LODPiece1;&lt;br /&gt;
      word LODPiece2;&lt;br /&gt;
      word LODPiece3;&lt;br /&gt;
      word LODPiece4;&lt;br /&gt;
      word LODPiece5;&lt;br /&gt;
      word LODPieceHigh;&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  struct pieces&lt;br /&gt;
  {&lt;br /&gt;
    dword unknown;&lt;br /&gt;
    ushort vertCount;&lt;br /&gt;
    ushort unknown;&lt;br /&gt;
    byte[12] val1;&lt;br /&gt;
    ushort type;&lt;br /&gt;
    ushort unkown;&lt;br /&gt;
    dword val;&lt;br /&gt;
    dword[2] zero;&lt;br /&gt;
    dword[3] val;&lt;br /&gt;
    dword[2] zero;&lt;br /&gt;
    uint rawOffset;&lt;br /&gt;
    uint size;&lt;br /&gt;
    uint headerSize;&lt;br /&gt;
    dword val4;&lt;br /&gt;
    struct rsrc&lt;br /&gt;
    {&lt;br /&gt;
      word val;&lt;br /&gt;
      word val;&lt;br /&gt;
      word val;&lt;br /&gt;
      word val;&lt;br /&gt;
      uint size;&lt;br /&gt;
      uint offset;&lt;br /&gt;
    }&lt;br /&gt;
    dword identifier;&lt;br /&gt;
    dword val5;&lt;br /&gt;
    dword eff;&lt;br /&gt;
  }&lt;br /&gt;
  struct ref4&lt;br /&gt;
  {&lt;br /&gt;
    dword zero;&lt;br /&gt;
  }&lt;br /&gt;
  struct ref5&lt;br /&gt;
  {&lt;br /&gt;
    dword val1;&lt;br /&gt;
    dword:2 zero;&lt;br /&gt;
  }&lt;br /&gt;
  dword[3] zero;&lt;br /&gt;
  struct bones&lt;br /&gt;
  {&lt;br /&gt;
    scriptRef boneName&lt;br /&gt;
    ushort parent;&lt;br /&gt;
    ushort firstChild;&lt;br /&gt;
    ushort nextSibling;&lt;br /&gt;
    word val1;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float distanceFromParent;&lt;br /&gt;
  }&lt;br /&gt;
  dword[2] zero;&lt;br /&gt;
  struct points&lt;br /&gt;
  {&lt;br /&gt;
    scriptRef pointName;&lt;br /&gt;
    struct points&lt;br /&gt;
    {&lt;br /&gt;
      short; // 0xFFFF&lt;br /&gt;
      short;&lt;br /&gt;
      float[7] val;&lt;br /&gt;
      dword zero;&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  struct shaders&lt;br /&gt;
  {&lt;br /&gt;
    dependancy shad;&lt;br /&gt;
    dependancy shad;&lt;br /&gt;
    dword:4 zero;&lt;br /&gt;
  }&lt;br /&gt;
  dword[7] zero;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
struct modelHeader {&lt;br /&gt;
  char[4] blkh;&lt;br /&gt;
  uint size;&lt;br /&gt;
  uint informationChunks;&lt;br /&gt;
  uint zero;&lt;br /&gt;
  uint unkChunks;&lt;br /&gt;
  uint zero;&lt;br /&gt;
  uint unk2Chunks;&lt;br /&gt;
  uint[3] zero;&lt;br /&gt;
  uint indicesChunks;&lt;br /&gt;
  uint[5] zero;&lt;br /&gt;
  uint unk3Chunks;&lt;br /&gt;
  uint[10] zero;&lt;br /&gt;
  uint boneChunks;&lt;br /&gt;
  uint[2] zero;&lt;br /&gt;
} &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=Halo_2&amp;diff=5693</id>
		<title>Halo 2</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=Halo_2&amp;diff=5693"/>
				<updated>2017-06-07T00:11:37Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: Created page with &amp;quot;{{Game}}  == Map File Format (Iron_Forge whitepaper) ==  Halo 2 .map file format whitepaper originally by Iron_Forge.  Created: 11/21/2004, 12:13:00, Iron_Forge.  Filename: H2...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Game}}&lt;br /&gt;
&lt;br /&gt;
== Map File Format (Iron_Forge whitepaper) ==&lt;br /&gt;
&lt;br /&gt;
Halo 2 .map file format whitepaper originally by Iron_Forge.&lt;br /&gt;
&lt;br /&gt;
Created: 11/21/2004, 12:13:00, Iron_Forge.&lt;br /&gt;
&lt;br /&gt;
Filename: H2WhitePaper.doc&lt;br /&gt;
&lt;br /&gt;
Retrieved from [http://old.halomods.com old.halomods.com].&lt;br /&gt;
&lt;br /&gt;
=== 1 - General Information ===&lt;br /&gt;
&lt;br /&gt;
==== 1.1 - Introduction ====&lt;br /&gt;
&lt;br /&gt;
Greetings. My name is Iron_Forge, and I have been working on and off with Halo map files of one type or another for a little over a year now. I have remained active in all areas of map formatting of Halo 1 for the xbox as well as the pc. Odds are if you have used an application for Halo 1, I have had a hand in it, or the information that led to its conception.&lt;br /&gt;
&lt;br /&gt;
I have been working on the Halo 2 map format since its release, and this document serves as a collection of the information I have compiled with the help of good friends MonoxideC and ViperNeo. Applying my experience from Halo 1 and other projects, I am one of a handful of people who could be considered experts on the map file formats. Using this document, I hope to pass this on to you.&lt;br /&gt;
&lt;br /&gt;
Many things are not contained within this document, for the simple reason of I did not figure out how they work (the BSP is a good example.) That’s not to say these things are still unknown. ViperNeo had the BSP information completed the same time we were working on models together, due to the strong similarity between them.&lt;br /&gt;
&lt;br /&gt;
==== 1.2 - Glossary ====&lt;br /&gt;
&lt;br /&gt;
'''dword''' – 4 bytes of data (double word)&lt;br /&gt;
&lt;br /&gt;
'''word''' – 2 bytes of data&lt;br /&gt;
&lt;br /&gt;
'''primary magic''' – A value used to increase offsets, allowing large areas of data to be moved without modifying the offsets contained within it.&lt;br /&gt;
&lt;br /&gt;
'''secondary magic''' – A value used to increase offsets, allowing large areas of data to be moved without modifying the offsets contained within it, primarily used for meta.&lt;br /&gt;
&lt;br /&gt;
'''pure offset''' – A value which represents an offset in the file that has not been modified in any way&lt;br /&gt;
&lt;br /&gt;
'''raw offset''' – A pure offset whose 2 most significant bits represent the file the offset references&lt;br /&gt;
&lt;br /&gt;
'''primary magic offset''' – A pure offset whose value has been increased by the primary magic value&lt;br /&gt;
&lt;br /&gt;
'''secondary magic offset''' – A pure offset whose value has been increased by the secondary magic value&lt;br /&gt;
&lt;br /&gt;
=== 2 - Map Information ===&lt;br /&gt;
&lt;br /&gt;
==== 2.1 - Map Layout ====&lt;br /&gt;
&lt;br /&gt;
The Halo 2 map files can be broken up into the following sections: header, sound raw data, model raw data, bsp model raw data, model animation raw data, bsp structure, script references, file names, unicode strings raw data, other, texture raw data, object index, index padding, object meta information, and finally the cache where applicable.&lt;br /&gt;
&lt;br /&gt;
==== 2.2 - Processing ====&lt;br /&gt;
&lt;br /&gt;
When Halo 2 is loaded, it will create cache files (copying the original files to the hard drive of the xbox). The shared and single player shared map files are exceptions to this rule, most likely to lower the load times of the game starting, and each map being processed. If your installation has valid bink video files, these will be played during load times, otherwise a progress text will appear on the screen showing the percentage copied.&lt;br /&gt;
&lt;br /&gt;
All loaded files are signed (see section on encryptomatic signature), and should a loading map fail, the engine will retry the copy twice more before giving a “dirty disk” error, or a “map failed to load” error, depending on the map.&lt;br /&gt;
 &lt;br /&gt;
Upon loading a map, only the required resources are placed in memory. As objects appear on screen, the data for them is streamed from the shared files, replacing the very low copy kept in memory with a much richer and more detailed counterparts. This process allows even multiplayer maps to have access to several hundred megabytes of information, while remaining within the limitations of the xbox hardware.&lt;br /&gt;
&lt;br /&gt;
==== 2.3 - Map Header ====&lt;br /&gt;
&lt;br /&gt;
The map header1 is 2048 bytes just as previous versions of Halo. The version tag is now 8. The index offset is a pure offset pointing to the index header, followed by the meta start, which when added to the index offset will point to the beginning of the meta area. Map origin will define the path (and file) the cache was created from, and as such is only defined in the cache files.&lt;br /&gt;
&lt;br /&gt;
===== 2.3.1 - File Table =====&lt;br /&gt;
&lt;br /&gt;
The file table contains full paths for each object in relative order (first filename is for the first object.) The strings are standard ASCII, with a null termination and no padding is used regardless of where the string terminates.&lt;br /&gt;
&lt;br /&gt;
The file table index contains unsigned integers defining the offset which each string begins, also relative. This allows the file table to be read as a single block of characters, and each object to be issued a pointer to the beginning of its string.&lt;br /&gt;
&lt;br /&gt;
===== 2.3.2 - Encryptomatic Signature =====&lt;br /&gt;
&lt;br /&gt;
The encryptomatic signature is created by xoring every dword after the header together. It is my belief that this value has the single purpose of validating maps copied correctly, and was not used to “thwart” would be modders.&lt;br /&gt;
&lt;br /&gt;
===== 2.3.3 - Script References =====&lt;br /&gt;
&lt;br /&gt;
Script references link some object to a specific event. The string table defining these references is in the same format as the file table, including an index. They can often be found following dependencies such as effect dependencies. This would link that effect to be triggered by a given event, such as a button being pressed, or an item being picked up. The reference themselves consist of a pair of words, the first being the index to the string in the table, the second being the length of the script reference string.&lt;br /&gt;
&lt;br /&gt;
==== 2.4 - Index Header ====&lt;br /&gt;
&lt;br /&gt;
The first value in the index header remains the constant used to calculate magic. The object index offset here is a primary magic offset, and points to the object index.&lt;br /&gt;
&lt;br /&gt;
===== 2.4.1 - Tag List =====&lt;br /&gt;
&lt;br /&gt;
Directly following the index header is the tag list. This list contains all used tags in the map file, and defines their object hierarchy. This allows the engine to know for example, that all vehicles are a sub class of the unit class, which is a sub class of the object class. I believe the wildcard tags are used as a way of using the primary tag without its parents, though this is just speculation.&lt;br /&gt;
&lt;br /&gt;
===== 2.4.2 - Object Index =====&lt;br /&gt;
&lt;br /&gt;
The object index is a recursively-constructed collection defining all objects in the map. The objects identifier is defined here, which is used to reference the object from all other areas of the map file. The identifier is composed of two short values, each are incremented equally throughout the index. The meta offset is a secondary magic offset which points to the beginning of the objects meta.&lt;br /&gt;
&lt;br /&gt;
===== 2.4.3 - Primary and Secondary Magic =====&lt;br /&gt;
&lt;br /&gt;
The magic values are used to allow moving large blocks of data without having to modify the data itself. Using a magic value applied to all offsets, after moving the data x bytes, the magic only needs to be increased or decreased 8 to correct all offsets, rather than each offset needing re-calculation. Primary magic is still calculated by magic constant - (index header offset) + sizeof(index header)). Secondary magic, which is now used instead of primary magic for meta related offsets, is primary magic + sizeof(BSP). Since we cannot obtain the size of the BSP object without using secondary magic (it is located in the scenery tag), we use the known offset of the meta start and the secondary magic offset of the first object to calculate this value.&lt;br /&gt;
&lt;br /&gt;
=== 3 - Objects ===&lt;br /&gt;
&lt;br /&gt;
==== 3.1 - Raw Offsets ====&lt;br /&gt;
&lt;br /&gt;
Raw offsets in Halo 2 have no magic applied to them. However, they can reference the current map file, or the three shared files. To do this, it reserves the two most significant (highest) bits to define the referencing file. These are defined as: 002 being local file, 012 being mainmenu.map, 102 being shared.map, and 112 being single_player_shared.map.&lt;br /&gt;
&lt;br /&gt;
When referencing a raw offset, one should first determine the file being referenced, remove those two bits from the offset value (and with 0x3FFFFFFF), and then seek to that offset in the correct file to find the referenced data. Given the size of the shared files, it is possible that the third most significant bit is also reserved for sharing new downloadable content in the future, but this would just be speculation.&lt;br /&gt;
&lt;br /&gt;
==== 3.2 - Unicode Strings ====&lt;br /&gt;
&lt;br /&gt;
Unicode strings are built to allow for up to nine languages. The globals object defines where each language block is located, and its related information (size, string count, etc.) as needed. Each unicode string object then contains two shorts per language, the first defining the offset (as a string count) in the language block that the unicode object begins, and the second defining how many strings are in the object.&lt;br /&gt;
&lt;br /&gt;
This method allows the multiplayer maps to be identical for every version and region of Halo 2. The engine can simply detect you xbox language settings, and supply the correct string(s) form the language block.&lt;br /&gt;
&lt;br /&gt;
==== 3.3 - Bitmaps &amp;amp; Textures ====&lt;br /&gt;
&lt;br /&gt;
Bitmap objects are collections of the textures in Halo 2, and their layout is rather straightforward.  Each texture is allowed up to six levels of detail. Each level of detail is identical to its predecessors first mipmap. So if the first quality level were 256x256, the following would be 128x128. Each level of detail however still contains its own entire set of mipmaps. I suspect this goes further towards Halo 2’s efficient use of memory management.&lt;br /&gt;
&lt;br /&gt;
Each bitmap object may also contain several images, usually used where options between similar sets of images are needed (such as multiple level images in the main menu.) These will be represented by the bitm struct reflexive. Each bitmap may be extracted as if it were its own object.&lt;br /&gt;
&lt;br /&gt;
Referencing the source to HME/HMT, we can find the different image formats for the different image objects. In addition to these types, 0x11 and 0x12 are both single channel images (you may extract them as A8 if using the common DDS), and are used for bump maps, and light maps (respectively.)&lt;br /&gt;
&lt;br /&gt;
Many images are still swizzled (a technique for faster memory copies), and this information may also be referenced from the HME/HMT sources.&lt;br /&gt;
&lt;br /&gt;
==== 3.4 - Sounds ====&lt;br /&gt;
&lt;br /&gt;
Sounds were probably the most enjoyable piece of Halo 2 to work on. They entwine with an “ugh!” object named “I’ve got a lovely bunch of coconuts”, a song done by the amazing comedic group Monty Python. I cannot help but believe this system was done as an easter egg designed just for me as “the curious modder”. To Bungie, I thank you (unless of course this was designed to keep us from removing sounds, in which case I sincerely apologize.)&lt;br /&gt;
&lt;br /&gt;
In each sound meta, there is an index and chunk count that references a block in the fifth reflexive in the coconuts object. This block has another index and chunk count, referencing the sixth reflexive in the coconuts object. These chunks reference “option” sounds, such as several different sound choices for entering a vehicle.&lt;br /&gt;
&lt;br /&gt;
Each item in the sixth block contains another index and chunk count, this time referencing the ninth reflexive in the coconuts object. The ninth reflexive contains the size and raw offset for each piece of the sound.&lt;br /&gt;
&lt;br /&gt;
Sounds in Halo 2 are xbox adpcm or WMA, depending on the type byte. The WMA sounds can be assembled completely from the raw data pieces. The xbox adpcm pieces require the header be written.&lt;br /&gt;
&lt;br /&gt;
If the type byte is 1, then the sound is an adpcm, mono, and 22050kbps sound file. Type 2 is also adpcm, stereo, and 44100kbps sound file. Type 3 is a WMA sound file. There is more to the sound formatting than this, however this was mare than enough for me to extract all the sounds.&lt;br /&gt;
&lt;br /&gt;
==== 3.5 - Models ====&lt;br /&gt;
&lt;br /&gt;
Models in Halo 2 use a compressed format based on a bounding box.  This bounding box can be found in the first reflexive of the model meta. Using its constraints for each value relevant to the models, the uncompressed value can be found using the formula (((shortValue + 32768) / 65535) * (maxValue – minValue)) + minValue.&lt;br /&gt;
&lt;br /&gt;
The model raw data block now contains a header, footer, and several resource chunks. The header contains information regarding how many chunks are in each resource block, allowing you to determine which block contains the information needed (for example, if a given block has 0 chunks, then it will not have a corresponding resource block). The important resource blocks are the mesh information block (containing mesh information), the indices block (containing the indices for the triangle strip), the vertices block (containing at minimum 3 shorts defining the x, y, and z of the vertices), the UV map (containing the compressed UV points.), and the bone map.&lt;br /&gt;
&lt;br /&gt;
The third dword (as an unsigned integer) in each mesh information block defines how many indices are in that mesh. The indices are placed in order, so each meshes indices can be found after its predecessor in the indices resource block.&lt;br /&gt;
&lt;br /&gt;
The vertices are stored with several sized blocks within their resource block, however the x, y, and z points are still represented by the first 3 shorts respectively. The size of each vertex block can be determined by the type bytes in the model meta. Each short must then be decompressed using the above-mentioned formula and their own constraint value, min x and max x for x, and so on.&lt;br /&gt;
&lt;br /&gt;
If the given vertex type has more than 6 bytes, it is followed by the bone references and weights of this vertex. Both are one byte in length, and the bone references are sorted. Therefore if a bone with a value of 0 is read in any position other than the first, this bone reference should be discarded, as should all that follow. Following the bone references are their weights, which are also one byte in length, and can be considered compressed. The weights are a value between 0 an 1 once uncompressed, thus a byte with a weight of 128 will have a weight of 0.5 (or 50% deformation based on this bone.) The exception to this is the 8 byte vertices, where the two bytes following are both bones. If both are set, they each have a weight of 0.5, and if only one is set it is given full weight.&lt;br /&gt;
&lt;br /&gt;
The UV’s are slightly more complicated. They are compressed in the same fashion as the vertices. However, while UV’s must always remain between 0 and 1, their constraints are not governed by the same limits. The resulting uncompressed values can be fixed through “looping” them. If the value is 1.3, the resulting value would be 0.3, and given the value -0.3, the resulting value would be 0.7. The easiest way to accomplish this is to mod the resulting value by 1, and then if the value is negative, subtract it from 1.&lt;br /&gt;
&lt;br /&gt;
Since the bones have to act over several different pieces, each raw model block has a bone map, relating the bone byte to the correct bone id. This is a byte array, so if a vertex references bone 0, then boneMap[0] will provide the correct bone id.&lt;br /&gt;
&lt;br /&gt;
Back to the meta, the sixth reflexive in the model meta defines the bone hierarchy of the model. When parent, child, or sibling is none, the value will be set to 0xFFFF. These chunks are the bones which are mapped to from the raw data. The name is a script reference, and defines what the bone is called.&lt;br /&gt;
&lt;br /&gt;
The second reflexive defines all the level of details (LOD) for the model pieces. The name is again a script reference defining what this particular LOD is called. This is followed by a reflexive. This reflexive is for all the different options for the particular LOD (for example: base, default, damaged, etc.) Each of these reflexives consist of another script reference name, defining what this option is referred to as, followed by a series of 5 shorts. These shorts refer to the piece of the model which makes up one of the 5 LODs for this option. The last short (following the 5 LODs), defines the piece of the model which has the highest LOD (this should be equal to the 5th LOD value.) If a model only has 3 LODs, the first three LOD values will be the same, defining one piece to be used for all three levels.&lt;br /&gt;
&lt;br /&gt;
The seventh reflexive in the model meta defines a series of locations defining everything from where lights and other effects are located on a model, to where the characters place their hands while using the model. These are set by a script reference to link the point to, and the points location data.&lt;br /&gt;
&lt;br /&gt;
==== 3.6 - Other Tags ====&lt;br /&gt;
&lt;br /&gt;
For the most part, objects are quite similar to their Halo 1 counterparts. Usually there has been some general compacting of the data (the tags have been cleaned up, unused values removed), or a reflexive added here and there. Notable exceptions that I haven’t written about here (as lack of time and motivation kept me away) are the model animations, which now have large blocks of raw data.&lt;br /&gt;
&lt;br /&gt;
=== 4 - In Closing ===&lt;br /&gt;
&lt;br /&gt;
==== 4.1 - Conclusion ====&lt;br /&gt;
&lt;br /&gt;
In closing, I would like to say that not all the information enclosed here is guaranteed to be accurate. It is composed of my findings, and how I interpreted them at the time. Much of the structs are incomplete, as I tend to not write down things I figure out while seeking other answers, and I tried to only include solid information, instead of all my random notes. &lt;br /&gt;
&lt;br /&gt;
The information contained within these pages should be enough to get any one started, and take them to the point of being able to obtain any of the above items, and replace them with their own creations.&lt;br /&gt;
&lt;br /&gt;
I would like to thank all of you who read this far (and bothered reading this), and to you all, happy modding.&lt;br /&gt;
&lt;br /&gt;
==== 4.2 - Acknowledgements ====&lt;br /&gt;
&lt;br /&gt;
I would also once again like to thank MonoxideC and ViperNeo for their help in this. While they may remain modest, both were invaluable in explaining things I didn’t fully understand, bouncing ideas off, and just helping out anyway they could. The community is better for having them, and I better for knowing them.&lt;br /&gt;
&lt;br /&gt;
=== 5 - Appendix I - Structures ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
struct mapHeader {&lt;br /&gt;
  char[4] head;&lt;br /&gt;
  int version;&lt;br /&gt;
  int filesize;&lt;br /&gt;
  int zero;&lt;br /&gt;
  int indexOffset;&lt;br /&gt;
  int metaStart;&lt;br /&gt;
  dword[2] unknown;&lt;br /&gt;
  char[32] mapOrigin;&lt;br /&gt;
  byte[224]unknown;&lt;br /&gt;
  char[32] build;&lt;br /&gt;
  byte[20] unknown;&lt;br /&gt;
  int unknown;&lt;br /&gt;
  int offsetToStrangeFileStrings;&lt;br /&gt;
  int unknown;&lt;br /&gt;
  int offsetToSomething;&lt;br /&gt;
  int scriptReferenceCount;&lt;br /&gt;
  int sizeOfScriptReference;&lt;br /&gt;
  int offsetToScriptReferenceIndex;&lt;br /&gt;
  int offsetToScriptReferenceStrings;&lt;br /&gt;
  byte[36] unknown;&lt;br /&gt;
  char[32] mapName;&lt;br /&gt;
  int zero;&lt;br /&gt;
  char[32] scenarioPath;&lt;br /&gt;
  byte[224] zero;&lt;br /&gt;
  int unknown;&lt;br /&gt;
  int fileCount;&lt;br /&gt;
  int fileTableOffset;&lt;br /&gt;
  int fileTableSize;&lt;br /&gt;
  int filesIndex;&lt;br /&gt;
  int signature;&lt;br /&gt;
  byte[1320] zero;&lt;br /&gt;
  char[4] foot;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
struct indexHeader {&lt;br /&gt;
  int primaryMagicConstantMagic;&lt;br /&gt;
  int tagListCount;&lt;br /&gt;
  int objectIndexOffset;&lt;br /&gt;
  int scenarioID;&lt;br /&gt;
  int tagIDStart;&lt;br /&gt;
  int unknown;&lt;br /&gt;
  int objectCount;&lt;br /&gt;
  char[4] tags;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
struct tagListEntry {&lt;br /&gt;
  char[4] objectClass;&lt;br /&gt;
  char[4] parentClass;&lt;br /&gt;
  char[4] grandparentClass;&lt;br /&gt;
}&lt;br /&gt;
struct objectEntry {&lt;br /&gt;
  char[4] tag;&lt;br /&gt;
  int ID;&lt;br /&gt;
  int offset;&lt;br /&gt;
  int metaSize;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
struct unicMeta {&lt;br /&gt;
  uint[4] zero;&lt;br /&gt;
  short lang1Offset;&lt;br /&gt;
  short lang1Count;&lt;br /&gt;
  short lang2Offset;&lt;br /&gt;
  short lang2Count;&lt;br /&gt;
  short lang3Offset;&lt;br /&gt;
  short lang3Count;&lt;br /&gt;
  short lang4Offset;&lt;br /&gt;
  short lang4Count;&lt;br /&gt;
  short lang5Offset;&lt;br /&gt;
  short lang5Count;&lt;br /&gt;
  short lang6Offset;&lt;br /&gt;
  short lang6Count;&lt;br /&gt;
  short lang7Offset;&lt;br /&gt;
  short lang7Count;&lt;br /&gt;
  short lang8Offset;&lt;br /&gt;
  short lang8Count;&lt;br /&gt;
  short lang9Offset;&lt;br /&gt;
  short lang9Count;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
struct bitmMeta {&lt;br /&gt;
  byte[68] data;&lt;br /&gt;
  struct image {&lt;br /&gt;
    char[4] bitm;&lt;br /&gt;
    ushort width;&lt;br /&gt;
    ushort height;&lt;br /&gt;
    ushort depth;&lt;br /&gt;
    ushort type;&lt;br /&gt;
    ushort format;&lt;br /&gt;
    ushort flags;&lt;br /&gt;
    ushort regPointX;&lt;br /&gt;
    ushort regPointY;&lt;br /&gt;
    ushort mipMapCount;&lt;br /&gt;
    ushort pixelOffset;&lt;br /&gt;
    uint zero;&lt;br /&gt;
    uint[6] offset;&lt;br /&gt;
    uint[6] size;&lt;br /&gt;
    uint identifier;&lt;br /&gt;
    byte[36] unknown;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
struct sndMeta {&lt;br /&gt;
  dword unknown;&lt;br /&gt;
  byte format;&lt;br /&gt;
  byte[3] unknown;&lt;br /&gt;
  short index;&lt;br /&gt;
  byte chunkCount;&lt;br /&gt;
  byte unknown;&lt;br /&gt;
  dword[2] unknown;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
struct ughMeta {&lt;br /&gt;
  struct {}&lt;br /&gt;
  struct {}&lt;br /&gt;
  struct {&lt;br /&gt;
    scriptRef sound;&lt;br /&gt;
  }&lt;br /&gt;
  struct {}&lt;br /&gt;
  struct soundOptions {&lt;br /&gt;
    dword[2] unknown;&lt;br /&gt;
    short index;&lt;br /&gt;
    short chunkCount;&lt;br /&gt;
  }&lt;br /&gt;
  struct soundPieces {&lt;br /&gt;
    dword[3] unknown;&lt;br /&gt;
    short index;&lt;br /&gt;
    short chunkCount;&lt;br /&gt;
  }&lt;br /&gt;
  struct {}&lt;br /&gt;
  struct {}&lt;br /&gt;
  struct rawSound {&lt;br /&gt;
    uint rawOffset;&lt;br /&gt;
    uint size;&lt;br /&gt;
    uint eff;&lt;br /&gt;
  }&lt;br /&gt;
  struct {}&lt;br /&gt;
  struct {}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
struct modeMeta {&lt;br /&gt;
  scriptRef modelName;&lt;br /&gt;
  dword val2;&lt;br /&gt;
  dword val3;&lt;br /&gt;
  dword zero;&lt;br /&gt;
  dword zero;&lt;br /&gt;
  struct boundingBox&lt;br /&gt;
  {&lt;br /&gt;
    float minX;&lt;br /&gt;
    float maxX;&lt;br /&gt;
    float minY;&lt;br /&gt;
    float maxY;&lt;br /&gt;
    float minZ;&lt;br /&gt;
    float maxZ;&lt;br /&gt;
    float minU;&lt;br /&gt;
    float maxU;&lt;br /&gt;
    float minV;&lt;br /&gt;
    float maxV;&lt;br /&gt;
    dword:4 zero;&lt;br /&gt;
  }&lt;br /&gt;
  struct LODs&lt;br /&gt;
  {&lt;br /&gt;
    scriptRef modelPiece;&lt;br /&gt;
    word sval1; // FFFF&lt;br /&gt;
    word sval2; // 0000&lt;br /&gt;
    struct ref2.1&lt;br /&gt;
    {&lt;br /&gt;
      scriptRef modelType;&lt;br /&gt;
      word LODPiece1;&lt;br /&gt;
      word LODPiece2;&lt;br /&gt;
      word LODPiece3;&lt;br /&gt;
      word LODPiece4;&lt;br /&gt;
      word LODPiece5;&lt;br /&gt;
      word LODPieceHigh;&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  struct pieces&lt;br /&gt;
  {&lt;br /&gt;
    dword unknown;&lt;br /&gt;
    ushort vertCount;&lt;br /&gt;
    ushort unknown;&lt;br /&gt;
    byte[12] val1;&lt;br /&gt;
    ushort type;&lt;br /&gt;
    ushort unkown;&lt;br /&gt;
    dword val;&lt;br /&gt;
    dword[2] zero;&lt;br /&gt;
    dword[3] val;&lt;br /&gt;
    dword[2] zero;&lt;br /&gt;
    uint rawOffset;&lt;br /&gt;
    uint size;&lt;br /&gt;
    uint headerSize;&lt;br /&gt;
    dword val4;&lt;br /&gt;
    struct rsrc&lt;br /&gt;
    {&lt;br /&gt;
      word val;&lt;br /&gt;
      word val;&lt;br /&gt;
      word val;&lt;br /&gt;
      word val;&lt;br /&gt;
      uint size;&lt;br /&gt;
      uint offset;&lt;br /&gt;
    }&lt;br /&gt;
    dword identifier;&lt;br /&gt;
    dword val5;&lt;br /&gt;
    dword eff;&lt;br /&gt;
  }&lt;br /&gt;
  struct ref4&lt;br /&gt;
  {&lt;br /&gt;
    dword zero;&lt;br /&gt;
  }&lt;br /&gt;
  struct ref5&lt;br /&gt;
  {&lt;br /&gt;
    dword val1;&lt;br /&gt;
    dword:2 zero;&lt;br /&gt;
  }&lt;br /&gt;
  dword[3] zero;&lt;br /&gt;
  struct bones&lt;br /&gt;
  {&lt;br /&gt;
    scriptRef boneName&lt;br /&gt;
    ushort parent;&lt;br /&gt;
    ushort firstChild;&lt;br /&gt;
    ushort nextSibling;&lt;br /&gt;
    word val1;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float;&lt;br /&gt;
    float distanceFromParent;&lt;br /&gt;
  }&lt;br /&gt;
  dword[2] zero;&lt;br /&gt;
  struct points&lt;br /&gt;
  {&lt;br /&gt;
    scriptRef pointName;&lt;br /&gt;
    struct points&lt;br /&gt;
    {&lt;br /&gt;
      short; // 0xFFFF&lt;br /&gt;
      short;&lt;br /&gt;
      float[7] val;&lt;br /&gt;
      dword zero;&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  struct shaders&lt;br /&gt;
  {&lt;br /&gt;
    dependancy shad;&lt;br /&gt;
    dependancy shad;&lt;br /&gt;
    dword:4 zero;&lt;br /&gt;
  }&lt;br /&gt;
  dword[7] zero;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
struct modelHeader {&lt;br /&gt;
  char[4] blkh;&lt;br /&gt;
  uint size;&lt;br /&gt;
  uint informationChunks;&lt;br /&gt;
  uint zero;&lt;br /&gt;
  uint unkChunks;&lt;br /&gt;
  uint zero;&lt;br /&gt;
  uint unk2Chunks;&lt;br /&gt;
  uint[3] zero;&lt;br /&gt;
  uint indicesChunks;&lt;br /&gt;
  uint[5] zero;&lt;br /&gt;
  uint unk3Chunks;&lt;br /&gt;
  uint[10] zero;&lt;br /&gt;
  uint boneChunks;&lt;br /&gt;
  uint[2] zero;&lt;br /&gt;
} &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=User:Haxar/NV2A&amp;diff=5672</id>
		<title>User:Haxar/NV2A</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=User:Haxar/NV2A&amp;diff=5672"/>
				<updated>2017-06-04T09:51:02Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== NV2A register access from D3D8 ===&lt;br /&gt;
&lt;br /&gt;
I wanted to know how NV2A registers were being accessed from Xbox executables. So, I loaded IDA with Turok with the applied Xbox Flirt Signatures v.2 and took references from '''pbkit''' to help me out with this.&lt;br /&gt;
&lt;br /&gt;
'''D3D::CMiniport::MapRegisters''' is where it all begins. This is just a handful of subroutines from the '''D3D::CMiniport''' namespace.&lt;br /&gt;
&lt;br /&gt;
Every single access is annotated from '''pbkit'''. It has been very useful.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
// turok&lt;br /&gt;
// using pbkit/outer.h&lt;br /&gt;
// gpu == 0xfd000000&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
signed int __thiscall D3D::CMiniport::MapRegisters(void *this)&lt;br /&gt;
{&lt;br /&gt;
  *(_DWORD *)this = 0xFD000000u;                // VIDEO_BASE&lt;br /&gt;
  vFD001804 |= 4u;                              // NV_PBUS_PCI_NV_1_BUS_MASTER_ENABLED&lt;br /&gt;
  vFD600140 = 0;                                // PCRTC_INTR_EN_VBLANK_DISABLED&lt;br /&gt;
  vFD009140 = 0;                                // NV_PTIMER_INTR_EN_0_ALARM_DISABLED&lt;br /&gt;
  return 1;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
signed int __thiscall D3D::CMiniport::LoadEngines(void *this)&lt;br /&gt;
{&lt;br /&gt;
  void *v1; // edi@1&lt;br /&gt;
  int gpu; // esi@1&lt;br /&gt;
  int v3; // eax@1&lt;br /&gt;
  int v4; // ecx@1&lt;br /&gt;
&lt;br /&gt;
  v1 = this;&lt;br /&gt;
  gpu = *(_DWORD *)this;&lt;br /&gt;
  v3 = *(_DWORD *)this + 6220;&lt;br /&gt;
  v4 = *(_DWORD *)v3;&lt;br /&gt;
  *(_DWORD *)v3 &amp;amp;= 0xFFFFFCFFu;&lt;br /&gt;
  *(_DWORD *)v3 = v4;&lt;br /&gt;
  *(_DWORD *)(gpu + 0x200) = 0xFFFFFFFFu;       // NV_PMC_ENABLE_ALL_ENABLE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x140) = *((_DWORD *)v1 + 45);// NV_PMC_INTR_EN_0&lt;br /&gt;
  D3D::CMiniport::HalDacLoad(v1);               // PCRTC_INTR_EN_VBLANK_ENABLED&lt;br /&gt;
  *(_DWORD *)(gpu + 0x9400) = 0;                // NV_PTIMER_TIME_0&lt;br /&gt;
  *(_DWORD *)(gpu + 0x9410) = 0;                // NV_PTIMER_TIME_1&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400720) = 0;              // NV_PGRAPH_FIFO_ACCESS_DISABLE&lt;br /&gt;
  D3D::CMiniport::HalGrControlLoad(v1);&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400100) = 0xFFFFFFFFu;    // NV_PGRAPH_INTR_ALL_ENABLE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400140) = 0xFFFFFFFFu;    // NV_PGRAPH_INTR_EN_ALL_ENABLE&lt;br /&gt;
  D3D::CMiniport::HalFifoControlLoad(v1);&lt;br /&gt;
  *(_DWORD *)(gpu + 0x2100) = 0xFFFFFFFFu;      // NV_PFIFO_INTR_0_ALL_RESET&lt;br /&gt;
  *(_DWORD *)(gpu + 0x2140) = *((_DWORD *)v1 + 71);// NV_PFIFO_INTR_EN_0&lt;br /&gt;
  *((_DWORD *)v1 + 528) = 0xFFFFFFFFu;&lt;br /&gt;
  *((_DWORD *)v1 + 529) = 0xFFFFFFFFu;&lt;br /&gt;
  *((_DWORD *)v1 + 520) = 0;&lt;br /&gt;
  *((_DWORD *)v1 + 521) = 0;&lt;br /&gt;
  return 1;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
int __thiscall D3D::CMiniport::HalDacLoad(void *this)&lt;br /&gt;
{&lt;br /&gt;
  int gpu; // eax@1&lt;br /&gt;
&lt;br /&gt;
  gpu = *(_DWORD *)this;&lt;br /&gt;
  *(_DWORD *)(*(_DWORD *)this + 6291712) = 1;&lt;br /&gt;
  *(_DWORD *)(gpu + 0x600140) = 1;              // PCRTC_INTR_EN_VBLANK_ENABLED&lt;br /&gt;
  return gpu;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
int __thiscall D3D::CMiniport::HalGrControlLoad(int this)&lt;br /&gt;
{&lt;br /&gt;
  int v1; // edi@1&lt;br /&gt;
  int gpu; // esi@1&lt;br /&gt;
  int v3; // eax@1&lt;br /&gt;
  signed int v4; // edx@1&lt;br /&gt;
  int v5; // eax@1&lt;br /&gt;
  int v6; // ebp@2&lt;br /&gt;
  int v7; // ebp@2&lt;br /&gt;
  int v8; // ebp@2&lt;br /&gt;
  int v9; // eax@3&lt;br /&gt;
  int v10; // edx@4&lt;br /&gt;
  int v11; // ebp@4&lt;br /&gt;
  char v12; // zf@4&lt;br /&gt;
  int v13; // eax@5&lt;br /&gt;
  int v14; // eax@5&lt;br /&gt;
  int v15; // eax@5&lt;br /&gt;
  signed int v17; // [sp+14h] [bp-4h]@3&lt;br /&gt;
&lt;br /&gt;
  v1 = this;&lt;br /&gt;
  gpu = *(_DWORD *)this;&lt;br /&gt;
  v3 = *(_DWORD *)this + 512;&lt;br /&gt;
  *(_DWORD *)v3 &amp;amp;= 0xFFFFEFFFu;&lt;br /&gt;
  *(_DWORD *)v3 |= 0x1000u;&lt;br /&gt;
  *(_DWORD *)(this + 2028) = 0;&lt;br /&gt;
  *(_DWORD *)(this + 2044) = 0;                 // NV_PGRAPH_DEBUG_4&lt;br /&gt;
  *(_DWORD *)(this + 2056) = 0;                 // NV_PGRAPH_UNKNOWN_400B84&lt;br /&gt;
  *(_DWORD *)(this + 2068) = 0;                 // NV_PGRAPH_UNKNOWN_400B88&lt;br /&gt;
  *(_DWORD *)(this + 2032) = 0x118700u;         // NV_PGRAPH_DEBUG_1&lt;br /&gt;
  *(_DWORD *)(this + 2036) = 0x28C3FFu;         // NV_PGRAPH_DEBUG_7&lt;br /&gt;
  *(_DWORD *)(this + 2040) = 0xF3DE0479u;       // NV_PGRAPH_DEBUG_3&lt;br /&gt;
  *(_DWORD *)(this + 2048) = 4;                 // NV_PGRAPH_DEBUG_5&lt;br /&gt;
  *(_DWORD *)(this + 2052) = 0x45EAD10Eu;       // NV_PGRAPH_UNKNOWN_400B80&lt;br /&gt;
  *(_DWORD *)(this + 2060) = 0x78u;             // NV_PGRAPH_UNKNOWN_400098&lt;br /&gt;
  *(_DWORD *)(this + 2064) = 0x40u;             // NV_PGRAPH_UNKNOWN_40009C&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400080) = 0;              // NV_PGRAPH_DEBUG_0_NO_RESET&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400084) = *(_DWORD *)(this + 2032);// NV_PGRAPH_DEBUG_1&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400880) = *(_DWORD *)(this + 2036);// NV_PGRAPH_DEBUG_7&lt;br /&gt;
  *(_DWORD *)(gpu + 0x40008C) = *(_DWORD *)(this + 2040);// NV_PGRAPH_DEBUG_3&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400090) = *(_DWORD *)(this + 2044);// NV_PGRAPH_DEBUG_4&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400094) = *(_DWORD *)(this + 2048);// NV_PGRAPH_DEBUG_5&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400B80) = *(_DWORD *)(this + 2052);// NV_PGRAPH_UNKNOWN_400B80&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400B84) = *(_DWORD *)(this + 2056);// NV_PGRAPH_UNKNOWN_400B84&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400098) = *(_DWORD *)(this + 2060);// NV_PGRAPH_UNKNOWN_400098&lt;br /&gt;
  *(_DWORD *)(gpu + 0x40009C) = *(_DWORD *)(this + 2064);// NV_PGRAPH_UNKNOWN_40009C&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400B88) = *(_DWORD *)(this + 2068);// NV_PGRAPH_UNKNOWN_400B88&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400780) = *(_DWORD *)(this + 320) &amp;amp; 0xFFFF;// NV_PGRAPH_CHANNEL_CTX_TABLE&lt;br /&gt;
  D3D::CMiniport::HalGrIdle((void *)this);&lt;br /&gt;
  v4 = 80;&lt;br /&gt;
  v5 = gpu + 0x400904;                          // NV_PGRAPH_TLIMIT_XBOX&lt;br /&gt;
  do&lt;br /&gt;
  {&lt;br /&gt;
    v6 = *(_DWORD *)(v5 - 0x3006C0);            // NV_PFB_TLIMIT&lt;br /&gt;
    *(_DWORD *)v5 = v6;                         // NV_PGRAPH_TLIMIT_XBOX&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400750) = (v4 - 32) &amp;amp; 0x1FFC | 0xEA0000;// NV_PGRAPH_RDI_INDEX&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400754) = v6;           // NV_PGRAPH_RDI_DATA&lt;br /&gt;
    v7 = *(_DWORD *)(v5 - 0x3006BC);            // NV_PFB_TSIZE&lt;br /&gt;
    *(_DWORD *)(v5 + 4) = v7;                   // NV_PGRAPH_TSIZE_XBOX&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400750) = v4 &amp;amp; 0x1FFC | 0xEA0000;// NV_PGRAPH_RDI_INDEX&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400754) = v7;           // NV_PGRAPH_RDI_DATA&lt;br /&gt;
    v8 = *(_DWORD *)(v5 - 0x3006C4);            // NV_PFB_TILE&lt;br /&gt;
    *(_DWORD *)(v5 - 4) = v8;                   // NV_PGRAPH_TILE_XBOX&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400750) = (v4 - 64) &amp;amp; 0x1FFC | 0xEA0000;// NV_PGRAPH_RDI_INDEX&lt;br /&gt;
    v4 += 4;&lt;br /&gt;
    v5 += 0x10u;&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400754) = v8;           // NV_PGRAPH_RDI_DATA&lt;br /&gt;
  }&lt;br /&gt;
  while ( v4 &amp;lt; 112 );&lt;br /&gt;
  v9 = gpu + 0x400980;                          // NV_PGRAPH_ZCOMP_XBOX&lt;br /&gt;
  v17 = 8;&lt;br /&gt;
  do&lt;br /&gt;
  {&lt;br /&gt;
    v10 = *(_DWORD *)(v9 - 0x300680);           // NV_PFB_ZCOMP&lt;br /&gt;
    *(_DWORD *)v9 = v10;                        // NV_PGRAPH_ZCOMP_XBOX&lt;br /&gt;
    v11 = (v9 + 0xFFBFF710 - gpu) &amp;amp; 0x1FFC | 0xEA0000;// (0x90) &amp;amp; 0x1FFC | 0xEA0000&lt;br /&gt;
    v9 += 4;&lt;br /&gt;
    v12 = v17-- == 1;&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400750) = v11;          // NV_PGRAPH_RDI_INDEX&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400754) = v10;          // NV_PGRAPH_RDI_DATA&lt;br /&gt;
  }&lt;br /&gt;
  while ( !v12 );&lt;br /&gt;
  v13 = *(_DWORD *)(gpu + 0x100324);            // NV_PFB_ZCOMP_OFFSET&lt;br /&gt;
  *(_DWORD *)(gpu + 0x4009A0) = v13;            // NV_PGRAPH_ZCOMP_OFFSET_XBOX&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400750) = 0xEA000Cu;      // NV_PGRAPH_RDI_INDEX&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400754) = v13;            // NV_PGRAPH_RDI_DATA&lt;br /&gt;
  v14 = *(_DWORD *)(gpu + 0x100200);            // NV_PFB_CFG0&lt;br /&gt;
  *(_DWORD *)(gpu + 0x4009A4) = v14;            // NV_PGRAPH_CFG0_XBOX&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400750) = 0xEA0000u;      // NV_PGRAPH_RDI_INDEX&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400754) = v14;            // NV_PGRAPH_RDI_DATA&lt;br /&gt;
  v15 = *(_DWORD *)(gpu + 0x100204);            // NV_PFB_CFG1&lt;br /&gt;
  *(_DWORD *)(gpu + 0x4009A8) = v15;            // NV_PGRAPH_CFG1_XBOX&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400750) = 0xEA0004u;      // NV_PGRAPH_RDI_INDEX&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400754) = v15;            // NV_PGRAPH_RDI_DATA&lt;br /&gt;
  *(_DWORD *)(gpu + 0x40014C) = 0;              // NV_PGRAPH_CTX_SWITCH1_ALL_DISABLE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400150) = 0;              // NV_PGRAPH_CTX_SWITCH2_ALL_DISABLE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400154) = 0;              // NV_PGRAPH_CTX_SWITCH3_ALL_DISABLE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400158) = 0;              // NV_PGRAPH_CTX_SWITCH4_ALL_DISABLE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400144) = 0x10000000u;    // NV_PGRAPH_CTX_CONTROL_DEVICE_ENABLED&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400764) = 0x8000000u;     // NV_PGRAPH_FFINTFC_ST2_CHID_STATUS_VALID&lt;br /&gt;
  return D3D::CMiniport::HalGrLoadChannelContext((void *)v1, *(_DWORD *)(v1 + 308));&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
int __thiscall D3D::CMiniport::HalGrIdle(void *this)&lt;br /&gt;
{&lt;br /&gt;
  void *v1; // edi@1&lt;br /&gt;
  int gpu; // esi@1&lt;br /&gt;
  int result; // eax@1&lt;br /&gt;
  int v4; // ebx@2&lt;br /&gt;
&lt;br /&gt;
  v1 = this;&lt;br /&gt;
  gpu = *(_DWORD *)this;&lt;br /&gt;
  result = *(_DWORD *)(*(_DWORD *)this + 4196096);&lt;br /&gt;
  if ( result )&lt;br /&gt;
  {&lt;br /&gt;
    do&lt;br /&gt;
    {&lt;br /&gt;
      v4 = *(_DWORD *)(gpu + 0x100);            // NV_PBUS_ROM_VERSION_MASK&lt;br /&gt;
      if ( BYTE1(v4) &amp;amp; 0x10 )&lt;br /&gt;
        result = unknown_libname_835(v1);&lt;br /&gt;
      if ( v4 &amp;amp; 0x1000000 )&lt;br /&gt;
        result = D3D::CMiniport::VBlank(v1);&lt;br /&gt;
    }&lt;br /&gt;
    while ( *(_DWORD *)(gpu + 0x400700) );      // NV_PGRAPH_STATUS_NOT_BUSY (while BUSY)&lt;br /&gt;
  }&lt;br /&gt;
  return result;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
int __thiscall unknown_libname_835(void *this)&lt;br /&gt;
{&lt;br /&gt;
  int gpu; // esi@1&lt;br /&gt;
  int v2; // eax@1&lt;br /&gt;
  int v3; // ebx@1&lt;br /&gt;
  int v4; // edi@1&lt;br /&gt;
  void *v6; // [sp+0h] [bp-4h]@1&lt;br /&gt;
&lt;br /&gt;
  v6 = this;&lt;br /&gt;
  gpu = *(_DWORD *)this;&lt;br /&gt;
  *(_DWORD *)(*(_DWORD *)this + 0x400720) = 0;  // NV_PGRAPH_FIFO_ACCESS_DISABLE&lt;br /&gt;
  v2 = *(_DWORD *)(gpu + 0x400100);             // NV_PGRAPH_INTR&lt;br /&gt;
  v3 = *(_DWORD *)(gpu + 0x400108);             // NV_PGRAPH_NSOURCE&lt;br /&gt;
  v4 = *(_DWORD *)(gpu + 0x400704) &amp;amp; 0x1FFC;    // NV_PGRAPH_TRAPPED_ADDR_MTHD&lt;br /&gt;
  if ( !(BYTE1(v2) &amp;amp; 0x10) )                    // NV_PGRAPH_INTR_MISSING_HW_PENDING&lt;br /&gt;
    goto LABEL_14;&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400100) = 0x1000u;        // NV_PGRAPH_INTR_CONTEXT_SWITCH_PENDING&lt;br /&gt;
  while ( *(_DWORD *)(*(_DWORD *)this + 0x400700) )// NV_PGRAPH_STATUS_NOT_BUSY (while BUSY)&lt;br /&gt;
    ;&lt;br /&gt;
  D3D::CMiniport::HalGrLoadChannelContext(this, ((unsigned int)v4 &amp;gt;&amp;gt; 20) &amp;amp; 0x1F);&lt;br /&gt;
  v2 = *(_DWORD *)(gpu + 0x400100);             // NV_PGRAPH_INTR&lt;br /&gt;
  if ( v2 )&lt;br /&gt;
  {&lt;br /&gt;
LABEL_14:&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400100) = v2;           // NV_PGRAPH_INTR&lt;br /&gt;
    if ( v3 &amp;amp;&amp;amp; v2 &amp;amp; 0x100001 &amp;amp;&amp;amp; !(v3 &amp;amp; 0x40) )  // NV_PGRAPH_NSOURCE &amp;amp;&amp;amp; NV_PGRAPH_INTR &amp;amp; NV_PGRAPH_INTR_NOTIFY_PENDING|NV_PGRAPH_INTR_ERROR_PENDING &amp;amp;&amp;amp; !(NV_PGRAPH_NSOURCE &amp;amp; NV_PGRAPH_NSOURCE_ILLEGAL_MTHD_PENDING)&lt;br /&gt;
    {&lt;br /&gt;
      if ( v4 == 0x100 )                        // NV_PGRAPH_TRAPPED_ADDR_MTHD&lt;br /&gt;
      {&lt;br /&gt;
        D3D::CMiniport::SoftwareMethod(v6, *(_DWORD *)(gpu + 0x400708));// NV_PGRAPH_TRAPPED_DATA_LOW&lt;br /&gt;
      }&lt;br /&gt;
      else&lt;br /&gt;
      {&lt;br /&gt;
        unknown_libname_837(&lt;br /&gt;
          &amp;quot;Graphics hardware error information:\n Source: %08x\n   ChID: %d\n  Class: %x\n Method: %08x\n   Data: %08x\n    Get: %08x\n&amp;quot;,&lt;br /&gt;
          v3,                                   // NV_PGRAPH_NSOURCE&lt;br /&gt;
          ((unsigned int)v4 &amp;gt;&amp;gt; 20) &amp;amp; 0x1F,      // NV_PGRAPH_TRAPPED_ADDR_CHID&lt;br /&gt;
          *(_DWORD *)(gpu + 0x40014C) &amp;amp; 0xFF,   // NV_PGRAPH_CTX_SWITCH1_GRCLASS&lt;br /&gt;
          v4,                                   // NV_PGRAPH_TRAPPED_ADDR_MTHD&lt;br /&gt;
          *(_DWORD *)(gpu + 0x400708),          // NV_PGRAPH_TRAPPED_DATA_LOW&lt;br /&gt;
          vFD003244 | 0x80000000);              // NV_PFIFO_CACHE1_DMA_GET&lt;br /&gt;
        __debugbreak();&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400720) = 1;              // NV_PGRAPH_FIFO_ACCESS_ENABLE&lt;br /&gt;
  return *(_DWORD *)(gpu + 0x400100);           // NV_PGRAPH_INTR&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
//TODO D3D::CMiniport::VBlank&lt;br /&gt;
&lt;br /&gt;
int __thiscall D3D::CMiniport::HalGrLoadChannelContext(void *this, int a2)&lt;br /&gt;
{&lt;br /&gt;
  void *v2; // ebx@1&lt;br /&gt;
  int gpu; // esi@1&lt;br /&gt;
  int v4; // edx@3&lt;br /&gt;
  int result; // eax@6&lt;br /&gt;
  signed int v6; // eax@8&lt;br /&gt;
  int v7; // edi@10&lt;br /&gt;
  int v8; // esi@10&lt;br /&gt;
  int v9; // [sp+Ch] [bp-4h]@3&lt;br /&gt;
&lt;br /&gt;
  v2 = this;&lt;br /&gt;
  gpu = *(_DWORD *)this;&lt;br /&gt;
  if ( *(_DWORD *)(*(_DWORD *)this + 4194560) )&lt;br /&gt;
    unknown_libname_835(this);&lt;br /&gt;
  v9 = *(_DWORD *)(gpu + 0x400720);             // NV_PGRAPH_FIFO&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400720) = 0;              // NV_PGRAPH_FIFO_ACCESS_DISABLE&lt;br /&gt;
  D3D::CMiniport::HalGrIdle(v2);&lt;br /&gt;
  v4 = a2;&lt;br /&gt;
  if ( *((_DWORD *)v2 + 77) != a2 )&lt;br /&gt;
  {&lt;br /&gt;
    D3D::CMiniport::HalGrUnloadChannelContext(v2, *((_DWORD *)v2 + 77));&lt;br /&gt;
    v4 = a2;&lt;br /&gt;
  }&lt;br /&gt;
  *((_DWORD *)v2 + 77) = v4;&lt;br /&gt;
  if ( v4 == 2 )&lt;br /&gt;
  {&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400144) = 0x10000100u;  // NV_PGRAPH_CTX_CONTROL_TIME_NOT_EXPIRED|NV_PGRAPH_CTX_CONTROL_DEVICE_ENABLED&lt;br /&gt;
    result = v9 | 1;&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400764) = 0x8000000u;   // NV_PGRAPH_FFINTFC_ST2_CHID_STATUS_VALID&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400720) = v9 | 1;       // NV_PGRAPH_FIFO_ACCESS_ENABLE&lt;br /&gt;
  }&lt;br /&gt;
  else&lt;br /&gt;
  {&lt;br /&gt;
    if ( *((_DWORD *)v2 + v4 + 81) )&lt;br /&gt;
    {&lt;br /&gt;
      *(_DWORD *)(gpu + 0x400080) = 0x70000u;   // NV_PGRAPH_DEBUG_0_IDX_STATE_RESET|NV_PGRAPH_DEBUG_0_VTX_STATE_RESET|NV_PGRAPH_DEBUG_0_CAS_STATE_RESET&lt;br /&gt;
      *(_DWORD *)(gpu + 0x400080) = 0;          // NV_PGRAPH_DEBUG_0_NO_RESET&lt;br /&gt;
      *(_DWORD *)(gpu + 0x400750) = 0x3D0000u;  // NV_PGRAPH_RDI_INDEX_SELECT&lt;br /&gt;
      v6 = 15;&lt;br /&gt;
      do&lt;br /&gt;
      {&lt;br /&gt;
        --v6;&lt;br /&gt;
        *(_DWORD *)(gpu + 0x400754) = 0;        // NV_PGRAPH_RDI_DATA&lt;br /&gt;
      }&lt;br /&gt;
      while ( v6 );&lt;br /&gt;
    }&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400084) |= 0x1000000u;  // NV_PGRAPH_DEBUG_1_CACHE_INVALIDATE&lt;br /&gt;
    v7 = (v4 &amp;amp; 0x1F) &amp;lt;&amp;lt; 24;&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400148) = v7;           // NV_PGRAPH_CTX_USER&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400784) = *((_DWORD *)v2 + a2 + 78) &amp;amp; 0xFFFF;// NV_PGRAPH_CHANNEL_CTX_POINTER_INST&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400788) = 1;            // NV_PGRAPH_CHANNEL_CTX_STATUS_LOADED&lt;br /&gt;
    D3D::CMiniport::HalGrIdle(v2);&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400148) = v7 | *(_DWORD *)(gpu + 0x400148) &amp;amp; 0xE0FFFFFF;// NV_PGRAPH_CTX_USER_CHID (inverted mask)&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400144) = 0x10010100u;  // NV_PGRAPH_CTX_CONTROL_TIME_NOT_EXPIRED|NV_PGRAPH_CTX_CONTROL_CHID_VALID|NV_PGRAPH_CTX_CONTROL_DEVICE_ENABLED&lt;br /&gt;
    v8 = gpu + 0x400764;                        // NV_PGRAPH_FFINTFC_ST2&lt;br /&gt;
    result = *(_DWORD *)v8 &amp;amp; 0xCFFFFFFF;        // NV_PGRAPH_FFINTFC_ST2_CHSWITCH_CLEAR&amp;amp;NV_PGRAPH_FFINTFC_ST2_FIFOHOLD_CLEAR&lt;br /&gt;
    *(_DWORD *)v8 = result;                     // NV_PGRAPH_FFINTFC_ST2&lt;br /&gt;
  }&lt;br /&gt;
  return result;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
int __thiscall D3D::CMiniport::HalGrUnloadChannelContext(void *this, int a2)&lt;br /&gt;
{&lt;br /&gt;
  int result; // eax@1&lt;br /&gt;
  int gpu; // esi@1&lt;br /&gt;
&lt;br /&gt;
  result = a2;&lt;br /&gt;
  gpu = *(_DWORD *)this;&lt;br /&gt;
  if ( a2 != 2 )&lt;br /&gt;
  {&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400784) = *((_DWORD *)this + a2 + 78) &amp;amp; 0xFFFF;// NV_PGRAPH_CHANNEL_CTX_POINTER_INST&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400788) = 2;            // NV_PGRAPH_CHANNEL_CTX_STATUS_UNLOADED&lt;br /&gt;
    result = D3D::CMiniport::HalGrIdle(this);&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400144) = 0x10000000u;  // NV_PGRAPH_CTX_CONTROL_DEVICE_ENABLED&lt;br /&gt;
  }&lt;br /&gt;
  return result;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
int __thiscall D3D::CMiniport::HalFifoControlLoad(void *this)&lt;br /&gt;
{&lt;br /&gt;
  int gpu; // esi@1&lt;br /&gt;
  int result; // eax@1&lt;br /&gt;
&lt;br /&gt;
  gpu = *(_DWORD *)this;&lt;br /&gt;
  *(_DWORD *)(*(_DWORD *)this + 12836) = 0xF0078u;&lt;br /&gt;
  *(_DWORD *)(gpu + 0x2044) = 0x101FFFFu;       // NV_PFIFO_DMA_TIMESLICE_SELECT_128K|NV_PFIFO_DMA_TIMESLICE_TIMEOUT_ENABLED&lt;br /&gt;
  *(_DWORD *)(gpu + 0x2040) = *((_DWORD *)this + 72) &amp;amp; 0x3FF;// NV_PFIFO_DELAY_0_WAIT_RETRY&lt;br /&gt;
  *(_DWORD *)(gpu + 0x2500) = 0;                // NV_PFIFO_CACHES_ALL_DISABLE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3000) = 0;                // NV_PFIFO_CACHE0_PUSH0_ACCESS_DISABLE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3050) = 0;                // NV_PFIFO_CACHE0_PULL0_ACCESS_DISABLE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3200) = 0;                // NV_PFIFO_CACHE1_PUSH0_ACCESS_DISABLE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3250) = 0;                // NV_PFIFO_CACHE1_PULL0_ACCESS_DISABLE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3220) = 0;                // NV_PFIFO_CACHE1_DMA_PUSH_ACCESS_DISABLE&lt;br /&gt;
  result = D3D::CMiniport::HalFifoContextSwitch(this, 1);&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3210) = 0;                // NV_PFIFO_CACHE1_PUT_ADDRESS&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3270) = 0;                // NV_PFIFO_CACHE1_GET_ADDRESS&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3250) = 1;                // NV_PFIFO_CACHE1_PULL0_ACCESS_ENABLE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3200) = 1;                // NV_PFIFO_CACHE1_PUSH0_ACCESS_ENABLE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x2500) = 1;                // NV_PFIFO_CACHES_REASSIGN_ENABLED&lt;br /&gt;
  *(_DWORD *)(gpu + 0x2500) = 0;                // NV_PFIFO_CACHES_ALL_DISABLE&lt;br /&gt;
  return result;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
int __thiscall D3D::CMiniport::HalFifoContextSwitch(void *this, int a2_switch)&lt;br /&gt;
{&lt;br /&gt;
  void *v2; // esi@1&lt;br /&gt;
  int gpu; // eax@1&lt;br /&gt;
  int v4; // ebx@1&lt;br /&gt;
  int v5; // ecx@1&lt;br /&gt;
  int v6; // edx@1&lt;br /&gt;
  int v7; // ecx@2&lt;br /&gt;
  int v8; // edx@8&lt;br /&gt;
  int v9; // [sp+Ch] [bp-14h]@1&lt;br /&gt;
  int v10; // [sp+10h] [bp-10h]@1&lt;br /&gt;
  int v11; // [sp+14h] [bp-Ch]@1&lt;br /&gt;
  signed int v12; // [sp+1Ch] [bp-4h]@2&lt;br /&gt;
&lt;br /&gt;
  v2 = this;&lt;br /&gt;
  gpu = *(_DWORD *)this;&lt;br /&gt;
  v4 = *((_DWORD *)this + 74);                  // unknown1&lt;br /&gt;
  v9 = *(_DWORD *)(*(_DWORD *)this + 9472);&lt;br /&gt;
  v10 = *(_DWORD *)(*(_DWORD *)this + 12800);&lt;br /&gt;
  v11 = *(_DWORD *)(*(_DWORD *)this + 12880);&lt;br /&gt;
  *(_DWORD *)(*(_DWORD *)this + 9472) = 0;&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3200) = 0;                // NV_PFIFO_CACHE1_PUSH0_ACCESS_DISABLE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3250) = 0;                // NV_PFIFO_CACHE1_PULL0_ACCESS_DISABLE&lt;br /&gt;
  v5 = *(_DWORD *)(gpu + 0x3204) &amp;amp; 0x1F;        // NV_PFIFO_CACHE1_PUSH1_CHID&lt;br /&gt;
  v6 = gpu + v4 + ((*(_DWORD *)(gpu + 0x3204) &amp;amp; 0x1F) &amp;lt;&amp;lt; 6);// unknown2&lt;br /&gt;
  *(_DWORD *)v6 = *(_DWORD *)(gpu + 0x3240);    // NV_PFIFO_CACHE1_DMA_PUT&lt;br /&gt;
  *(_DWORD *)(v6 + 4) = *(_DWORD *)(gpu + 0x3244);// NV_PFIFO_CACHE1_DMA_GET&lt;br /&gt;
  *(_DWORD *)(v6 + 8) = *(_DWORD *)(gpu + 0x3248);// NV_PFIFO_CACHE1_REF&lt;br /&gt;
  *(_DWORD *)(v6 + 12) = *(_DWORD *)(gpu + 0x322C);// NV_PFIFO_CACHE1_DMA_INSTANCE&lt;br /&gt;
  *(_DWORD *)(v6 + 16) = *(_DWORD *)(gpu + 0x3228);// NV_PFIFO_CACHE1_DMA_STATE&lt;br /&gt;
  *(_DWORD *)(v6 + 20) = *(_DWORD *)(gpu + 0x3224);// NV_PFIFO_CACHE1_DMA_FETCH&lt;br /&gt;
  *(_DWORD *)(v6 + 24) = *(_DWORD *)(gpu + 0x3280);// NV_PFIFO_CACHE1_ENGINE&lt;br /&gt;
  *(_DWORD *)(v6 + 28) = *(_DWORD *)(gpu + 0x3254);// NV_PFIFO_CACHE1_PULL1&lt;br /&gt;
  *(_DWORD *)(v6 + 32) = *(_DWORD *)(gpu + 0x3268);// NV_PFIFO_CACHE1_ACQUIRE_2&lt;br /&gt;
  *(_DWORD *)(v6 + 36) = *(_DWORD *)(gpu + 0x3264);// NV_PFIFO_CACHE1_ACQUIRE_1&lt;br /&gt;
  *(_DWORD *)(v6 + 40) = *(_DWORD *)(gpu + 0x3260);// NV_PFIFO_CACHE1_ACQUIRE_0&lt;br /&gt;
  *(_DWORD *)(v6 + 44) = *(_DWORD *)(gpu + 0x326C);// NV_PFIFO_CACHE1_SEMAPHORE&lt;br /&gt;
  *(_DWORD *)(v6 + 48) = *(_DWORD *)(gpu + 0x324C);// NV_PFIFO_CACHE1_DMA_SUBROUTINE&lt;br /&gt;
  if ( *(_DWORD *)(gpu + 0x3204) &amp;amp; 0x100 )      // NV_PFIFO_CACHE1_PUSH1_MODE_DMA&lt;br /&gt;
  {&lt;br /&gt;
    v12 = 1 &amp;lt;&amp;lt; v5;&lt;br /&gt;
    v7 = *(_DWORD *)(gpu + 0x2508) &amp;amp; ~(1 &amp;lt;&amp;lt; v5);// NV_PFIFO_DMA&lt;br /&gt;
    if ( *(_DWORD *)(gpu + 0x3240) != *(_DWORD *)(gpu + 0x3244) )// NV_PFIFO_CACHE1_DMA_PUT != NV_PFIFO_CACHE1_DMA_GET&lt;br /&gt;
      v7 |= v12;&lt;br /&gt;
    *(_DWORD *)(gpu + 0x2508) = v7;             // NV_PFIFO_DMA&lt;br /&gt;
  }&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3204) = a2_switch &amp;amp; 0x1F; // NV_PFIFO_CACHE1_PUSH1_CHID&lt;br /&gt;
  if ( (1 &amp;lt;&amp;lt; a2_switch) &amp;amp; *((_DWORD *)v2 + 65) &amp;amp;&amp;amp; a2_switch != 1 )&lt;br /&gt;
    *(_DWORD *)(gpu + 0x3204) |= 0x100u;        // NV_PFIFO_CACHE1_PUSH1_MODE_DMA&lt;br /&gt;
  v8 = v4 + (a2_switch &amp;lt;&amp;lt; 6) + gpu;             // unknown3&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3240) = *(_DWORD *)v8;    // NV_PFIFO_CACHE1_DMA_PUT&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3244) = *(_DWORD *)(v8 + 4);// NV_PFIFO_CACHE1_DMA_GET&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3248) = *(_DWORD *)(v8 + 8);// NV_PFIFO_CACHE1_REF&lt;br /&gt;
  *(_DWORD *)(gpu + 0x322C) = *(_DWORD *)(v8 + 12);// NV_PFIFO_CACHE1_DMA_INSTANCE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3228) = *(_DWORD *)(v8 + 16);// NV_PFIFO_CACHE1_DMA_STATE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3224) = *(_DWORD *)(v8 + 20);// NV_PFIFO_CACHE1_DMA_FETCH&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3280) = *(_DWORD *)(v8 + 24);// NV_PFIFO_CACHE1_ENGINE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3254) = *(_DWORD *)(v8 + 28);// NV_PFIFO_CACHE1_PULL1&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3268) = *(_DWORD *)(v8 + 32);// NV_PFIFO_CACHE1_ACQUIRE_2&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3264) = *(_DWORD *)(v8 + 36);// NV_PFIFO_CACHE1_ACQUIRE_1&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3260) = *(_DWORD *)(v8 + 40);// NV_PFIFO_CACHE1_ACQUIRE_0&lt;br /&gt;
  *(_DWORD *)(gpu + 0x326C) = *(_DWORD *)(v8 + 44);// NV_PFIFO_CACHE1_SEMAPHORE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x324C) = *(_DWORD *)(v8 + 48);// NV_PFIFO_CACHE1_DMA_SUBROUTINE&lt;br /&gt;
  if ( (1 &amp;lt;&amp;lt; a2_switch) &amp;amp; *((_DWORD *)v2 + 65) &amp;amp;&amp;amp; a2_switch != 1 )&lt;br /&gt;
    *(_DWORD *)(gpu + 0x3220) = 1;              // NV_PFIFO_CACHE1_DMA_PUSH_ACCESS_ENABLE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x204C) = 0x1FFFFFu;        // NV_PFIFO_TIMESLICE_TIMER_EXPIRED&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3250) = v11;              // NV_PFIFO_CACHE1_PULL0&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3200) = v10;              // NV_PFIFO_CACHE1_PUSH0&lt;br /&gt;
  *(_DWORD *)(gpu + 0x2500) = v9;               // NV_PFIFO_CACHES&lt;br /&gt;
  return gpu;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=User:Haxar&amp;diff=5671</id>
		<title>User:Haxar</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=User:Haxar&amp;diff=5671"/>
				<updated>2017-06-04T09:49:59Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== GitHub ===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/haxar/cxbx-shogun Cxbx w/ Wine support.]&lt;br /&gt;
&lt;br /&gt;
=== R&amp;amp;D ===&lt;br /&gt;
&lt;br /&gt;
* [[User:Haxar/fastcall|fastcall routines from rgrep]]&lt;br /&gt;
* [[User:Haxar/NV2A|NV2A register access from D3D8]]&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=User:Haxar/NV2A&amp;diff=5670</id>
		<title>User:Haxar/NV2A</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=User:Haxar/NV2A&amp;diff=5670"/>
				<updated>2017-06-04T09:48:31Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: Created page with &amp;quot;I wanted to know how NV2A registers were being accessed from Xbox executables. So, I loaded IDA with Turok with the applied Xbox Flirt Signatures v.2 and took references from...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I wanted to know how NV2A registers were being accessed from Xbox executables. So, I loaded IDA with Turok with the applied Xbox Flirt Signatures v.2 and took references from '''pbkit''' to help me out with this.&lt;br /&gt;
&lt;br /&gt;
'''D3D::CMiniport::MapRegisters''' is where it all begins. This is just a handful of subroutines from the '''D3D::CMiniport''' namespace.&lt;br /&gt;
&lt;br /&gt;
Every single access is annotated from '''pbkit'''. It has been very useful.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
// turok&lt;br /&gt;
// using pbkit/outer.h&lt;br /&gt;
// gpu == 0xfd000000&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
signed int __thiscall D3D::CMiniport::MapRegisters(void *this)&lt;br /&gt;
{&lt;br /&gt;
  *(_DWORD *)this = 0xFD000000u;                // VIDEO_BASE&lt;br /&gt;
  vFD001804 |= 4u;                              // NV_PBUS_PCI_NV_1_BUS_MASTER_ENABLED&lt;br /&gt;
  vFD600140 = 0;                                // PCRTC_INTR_EN_VBLANK_DISABLED&lt;br /&gt;
  vFD009140 = 0;                                // NV_PTIMER_INTR_EN_0_ALARM_DISABLED&lt;br /&gt;
  return 1;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
signed int __thiscall D3D::CMiniport::LoadEngines(void *this)&lt;br /&gt;
{&lt;br /&gt;
  void *v1; // edi@1&lt;br /&gt;
  int gpu; // esi@1&lt;br /&gt;
  int v3; // eax@1&lt;br /&gt;
  int v4; // ecx@1&lt;br /&gt;
&lt;br /&gt;
  v1 = this;&lt;br /&gt;
  gpu = *(_DWORD *)this;&lt;br /&gt;
  v3 = *(_DWORD *)this + 6220;&lt;br /&gt;
  v4 = *(_DWORD *)v3;&lt;br /&gt;
  *(_DWORD *)v3 &amp;amp;= 0xFFFFFCFFu;&lt;br /&gt;
  *(_DWORD *)v3 = v4;&lt;br /&gt;
  *(_DWORD *)(gpu + 0x200) = 0xFFFFFFFFu;       // NV_PMC_ENABLE_ALL_ENABLE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x140) = *((_DWORD *)v1 + 45);// NV_PMC_INTR_EN_0&lt;br /&gt;
  D3D::CMiniport::HalDacLoad(v1);               // PCRTC_INTR_EN_VBLANK_ENABLED&lt;br /&gt;
  *(_DWORD *)(gpu + 0x9400) = 0;                // NV_PTIMER_TIME_0&lt;br /&gt;
  *(_DWORD *)(gpu + 0x9410) = 0;                // NV_PTIMER_TIME_1&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400720) = 0;              // NV_PGRAPH_FIFO_ACCESS_DISABLE&lt;br /&gt;
  D3D::CMiniport::HalGrControlLoad(v1);&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400100) = 0xFFFFFFFFu;    // NV_PGRAPH_INTR_ALL_ENABLE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400140) = 0xFFFFFFFFu;    // NV_PGRAPH_INTR_EN_ALL_ENABLE&lt;br /&gt;
  D3D::CMiniport::HalFifoControlLoad(v1);&lt;br /&gt;
  *(_DWORD *)(gpu + 0x2100) = 0xFFFFFFFFu;      // NV_PFIFO_INTR_0_ALL_RESET&lt;br /&gt;
  *(_DWORD *)(gpu + 0x2140) = *((_DWORD *)v1 + 71);// NV_PFIFO_INTR_EN_0&lt;br /&gt;
  *((_DWORD *)v1 + 528) = 0xFFFFFFFFu;&lt;br /&gt;
  *((_DWORD *)v1 + 529) = 0xFFFFFFFFu;&lt;br /&gt;
  *((_DWORD *)v1 + 520) = 0;&lt;br /&gt;
  *((_DWORD *)v1 + 521) = 0;&lt;br /&gt;
  return 1;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
int __thiscall D3D::CMiniport::HalDacLoad(void *this)&lt;br /&gt;
{&lt;br /&gt;
  int gpu; // eax@1&lt;br /&gt;
&lt;br /&gt;
  gpu = *(_DWORD *)this;&lt;br /&gt;
  *(_DWORD *)(*(_DWORD *)this + 6291712) = 1;&lt;br /&gt;
  *(_DWORD *)(gpu + 0x600140) = 1;              // PCRTC_INTR_EN_VBLANK_ENABLED&lt;br /&gt;
  return gpu;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
int __thiscall D3D::CMiniport::HalGrControlLoad(int this)&lt;br /&gt;
{&lt;br /&gt;
  int v1; // edi@1&lt;br /&gt;
  int gpu; // esi@1&lt;br /&gt;
  int v3; // eax@1&lt;br /&gt;
  signed int v4; // edx@1&lt;br /&gt;
  int v5; // eax@1&lt;br /&gt;
  int v6; // ebp@2&lt;br /&gt;
  int v7; // ebp@2&lt;br /&gt;
  int v8; // ebp@2&lt;br /&gt;
  int v9; // eax@3&lt;br /&gt;
  int v10; // edx@4&lt;br /&gt;
  int v11; // ebp@4&lt;br /&gt;
  char v12; // zf@4&lt;br /&gt;
  int v13; // eax@5&lt;br /&gt;
  int v14; // eax@5&lt;br /&gt;
  int v15; // eax@5&lt;br /&gt;
  signed int v17; // [sp+14h] [bp-4h]@3&lt;br /&gt;
&lt;br /&gt;
  v1 = this;&lt;br /&gt;
  gpu = *(_DWORD *)this;&lt;br /&gt;
  v3 = *(_DWORD *)this + 512;&lt;br /&gt;
  *(_DWORD *)v3 &amp;amp;= 0xFFFFEFFFu;&lt;br /&gt;
  *(_DWORD *)v3 |= 0x1000u;&lt;br /&gt;
  *(_DWORD *)(this + 2028) = 0;&lt;br /&gt;
  *(_DWORD *)(this + 2044) = 0;                 // NV_PGRAPH_DEBUG_4&lt;br /&gt;
  *(_DWORD *)(this + 2056) = 0;                 // NV_PGRAPH_UNKNOWN_400B84&lt;br /&gt;
  *(_DWORD *)(this + 2068) = 0;                 // NV_PGRAPH_UNKNOWN_400B88&lt;br /&gt;
  *(_DWORD *)(this + 2032) = 0x118700u;         // NV_PGRAPH_DEBUG_1&lt;br /&gt;
  *(_DWORD *)(this + 2036) = 0x28C3FFu;         // NV_PGRAPH_DEBUG_7&lt;br /&gt;
  *(_DWORD *)(this + 2040) = 0xF3DE0479u;       // NV_PGRAPH_DEBUG_3&lt;br /&gt;
  *(_DWORD *)(this + 2048) = 4;                 // NV_PGRAPH_DEBUG_5&lt;br /&gt;
  *(_DWORD *)(this + 2052) = 0x45EAD10Eu;       // NV_PGRAPH_UNKNOWN_400B80&lt;br /&gt;
  *(_DWORD *)(this + 2060) = 0x78u;             // NV_PGRAPH_UNKNOWN_400098&lt;br /&gt;
  *(_DWORD *)(this + 2064) = 0x40u;             // NV_PGRAPH_UNKNOWN_40009C&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400080) = 0;              // NV_PGRAPH_DEBUG_0_NO_RESET&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400084) = *(_DWORD *)(this + 2032);// NV_PGRAPH_DEBUG_1&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400880) = *(_DWORD *)(this + 2036);// NV_PGRAPH_DEBUG_7&lt;br /&gt;
  *(_DWORD *)(gpu + 0x40008C) = *(_DWORD *)(this + 2040);// NV_PGRAPH_DEBUG_3&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400090) = *(_DWORD *)(this + 2044);// NV_PGRAPH_DEBUG_4&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400094) = *(_DWORD *)(this + 2048);// NV_PGRAPH_DEBUG_5&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400B80) = *(_DWORD *)(this + 2052);// NV_PGRAPH_UNKNOWN_400B80&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400B84) = *(_DWORD *)(this + 2056);// NV_PGRAPH_UNKNOWN_400B84&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400098) = *(_DWORD *)(this + 2060);// NV_PGRAPH_UNKNOWN_400098&lt;br /&gt;
  *(_DWORD *)(gpu + 0x40009C) = *(_DWORD *)(this + 2064);// NV_PGRAPH_UNKNOWN_40009C&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400B88) = *(_DWORD *)(this + 2068);// NV_PGRAPH_UNKNOWN_400B88&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400780) = *(_DWORD *)(this + 320) &amp;amp; 0xFFFF;// NV_PGRAPH_CHANNEL_CTX_TABLE&lt;br /&gt;
  D3D::CMiniport::HalGrIdle((void *)this);&lt;br /&gt;
  v4 = 80;&lt;br /&gt;
  v5 = gpu + 0x400904;                          // NV_PGRAPH_TLIMIT_XBOX&lt;br /&gt;
  do&lt;br /&gt;
  {&lt;br /&gt;
    v6 = *(_DWORD *)(v5 - 0x3006C0);            // NV_PFB_TLIMIT&lt;br /&gt;
    *(_DWORD *)v5 = v6;                         // NV_PGRAPH_TLIMIT_XBOX&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400750) = (v4 - 32) &amp;amp; 0x1FFC | 0xEA0000;// NV_PGRAPH_RDI_INDEX&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400754) = v6;           // NV_PGRAPH_RDI_DATA&lt;br /&gt;
    v7 = *(_DWORD *)(v5 - 0x3006BC);            // NV_PFB_TSIZE&lt;br /&gt;
    *(_DWORD *)(v5 + 4) = v7;                   // NV_PGRAPH_TSIZE_XBOX&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400750) = v4 &amp;amp; 0x1FFC | 0xEA0000;// NV_PGRAPH_RDI_INDEX&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400754) = v7;           // NV_PGRAPH_RDI_DATA&lt;br /&gt;
    v8 = *(_DWORD *)(v5 - 0x3006C4);            // NV_PFB_TILE&lt;br /&gt;
    *(_DWORD *)(v5 - 4) = v8;                   // NV_PGRAPH_TILE_XBOX&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400750) = (v4 - 64) &amp;amp; 0x1FFC | 0xEA0000;// NV_PGRAPH_RDI_INDEX&lt;br /&gt;
    v4 += 4;&lt;br /&gt;
    v5 += 0x10u;&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400754) = v8;           // NV_PGRAPH_RDI_DATA&lt;br /&gt;
  }&lt;br /&gt;
  while ( v4 &amp;lt; 112 );&lt;br /&gt;
  v9 = gpu + 0x400980;                          // NV_PGRAPH_ZCOMP_XBOX&lt;br /&gt;
  v17 = 8;&lt;br /&gt;
  do&lt;br /&gt;
  {&lt;br /&gt;
    v10 = *(_DWORD *)(v9 - 0x300680);           // NV_PFB_ZCOMP&lt;br /&gt;
    *(_DWORD *)v9 = v10;                        // NV_PGRAPH_ZCOMP_XBOX&lt;br /&gt;
    v11 = (v9 + 0xFFBFF710 - gpu) &amp;amp; 0x1FFC | 0xEA0000;// (0x90) &amp;amp; 0x1FFC | 0xEA0000&lt;br /&gt;
    v9 += 4;&lt;br /&gt;
    v12 = v17-- == 1;&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400750) = v11;          // NV_PGRAPH_RDI_INDEX&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400754) = v10;          // NV_PGRAPH_RDI_DATA&lt;br /&gt;
  }&lt;br /&gt;
  while ( !v12 );&lt;br /&gt;
  v13 = *(_DWORD *)(gpu + 0x100324);            // NV_PFB_ZCOMP_OFFSET&lt;br /&gt;
  *(_DWORD *)(gpu + 0x4009A0) = v13;            // NV_PGRAPH_ZCOMP_OFFSET_XBOX&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400750) = 0xEA000Cu;      // NV_PGRAPH_RDI_INDEX&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400754) = v13;            // NV_PGRAPH_RDI_DATA&lt;br /&gt;
  v14 = *(_DWORD *)(gpu + 0x100200);            // NV_PFB_CFG0&lt;br /&gt;
  *(_DWORD *)(gpu + 0x4009A4) = v14;            // NV_PGRAPH_CFG0_XBOX&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400750) = 0xEA0000u;      // NV_PGRAPH_RDI_INDEX&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400754) = v14;            // NV_PGRAPH_RDI_DATA&lt;br /&gt;
  v15 = *(_DWORD *)(gpu + 0x100204);            // NV_PFB_CFG1&lt;br /&gt;
  *(_DWORD *)(gpu + 0x4009A8) = v15;            // NV_PGRAPH_CFG1_XBOX&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400750) = 0xEA0004u;      // NV_PGRAPH_RDI_INDEX&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400754) = v15;            // NV_PGRAPH_RDI_DATA&lt;br /&gt;
  *(_DWORD *)(gpu + 0x40014C) = 0;              // NV_PGRAPH_CTX_SWITCH1_ALL_DISABLE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400150) = 0;              // NV_PGRAPH_CTX_SWITCH2_ALL_DISABLE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400154) = 0;              // NV_PGRAPH_CTX_SWITCH3_ALL_DISABLE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400158) = 0;              // NV_PGRAPH_CTX_SWITCH4_ALL_DISABLE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400144) = 0x10000000u;    // NV_PGRAPH_CTX_CONTROL_DEVICE_ENABLED&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400764) = 0x8000000u;     // NV_PGRAPH_FFINTFC_ST2_CHID_STATUS_VALID&lt;br /&gt;
  return D3D::CMiniport::HalGrLoadChannelContext((void *)v1, *(_DWORD *)(v1 + 308));&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
int __thiscall D3D::CMiniport::HalGrIdle(void *this)&lt;br /&gt;
{&lt;br /&gt;
  void *v1; // edi@1&lt;br /&gt;
  int gpu; // esi@1&lt;br /&gt;
  int result; // eax@1&lt;br /&gt;
  int v4; // ebx@2&lt;br /&gt;
&lt;br /&gt;
  v1 = this;&lt;br /&gt;
  gpu = *(_DWORD *)this;&lt;br /&gt;
  result = *(_DWORD *)(*(_DWORD *)this + 4196096);&lt;br /&gt;
  if ( result )&lt;br /&gt;
  {&lt;br /&gt;
    do&lt;br /&gt;
    {&lt;br /&gt;
      v4 = *(_DWORD *)(gpu + 0x100);            // NV_PBUS_ROM_VERSION_MASK&lt;br /&gt;
      if ( BYTE1(v4) &amp;amp; 0x10 )&lt;br /&gt;
        result = unknown_libname_835(v1);&lt;br /&gt;
      if ( v4 &amp;amp; 0x1000000 )&lt;br /&gt;
        result = D3D::CMiniport::VBlank(v1);&lt;br /&gt;
    }&lt;br /&gt;
    while ( *(_DWORD *)(gpu + 0x400700) );      // NV_PGRAPH_STATUS_NOT_BUSY (while BUSY)&lt;br /&gt;
  }&lt;br /&gt;
  return result;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
int __thiscall unknown_libname_835(void *this)&lt;br /&gt;
{&lt;br /&gt;
  int gpu; // esi@1&lt;br /&gt;
  int v2; // eax@1&lt;br /&gt;
  int v3; // ebx@1&lt;br /&gt;
  int v4; // edi@1&lt;br /&gt;
  void *v6; // [sp+0h] [bp-4h]@1&lt;br /&gt;
&lt;br /&gt;
  v6 = this;&lt;br /&gt;
  gpu = *(_DWORD *)this;&lt;br /&gt;
  *(_DWORD *)(*(_DWORD *)this + 0x400720) = 0;  // NV_PGRAPH_FIFO_ACCESS_DISABLE&lt;br /&gt;
  v2 = *(_DWORD *)(gpu + 0x400100);             // NV_PGRAPH_INTR&lt;br /&gt;
  v3 = *(_DWORD *)(gpu + 0x400108);             // NV_PGRAPH_NSOURCE&lt;br /&gt;
  v4 = *(_DWORD *)(gpu + 0x400704) &amp;amp; 0x1FFC;    // NV_PGRAPH_TRAPPED_ADDR_MTHD&lt;br /&gt;
  if ( !(BYTE1(v2) &amp;amp; 0x10) )                    // NV_PGRAPH_INTR_MISSING_HW_PENDING&lt;br /&gt;
    goto LABEL_14;&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400100) = 0x1000u;        // NV_PGRAPH_INTR_CONTEXT_SWITCH_PENDING&lt;br /&gt;
  while ( *(_DWORD *)(*(_DWORD *)this + 0x400700) )// NV_PGRAPH_STATUS_NOT_BUSY (while BUSY)&lt;br /&gt;
    ;&lt;br /&gt;
  D3D::CMiniport::HalGrLoadChannelContext(this, ((unsigned int)v4 &amp;gt;&amp;gt; 20) &amp;amp; 0x1F);&lt;br /&gt;
  v2 = *(_DWORD *)(gpu + 0x400100);             // NV_PGRAPH_INTR&lt;br /&gt;
  if ( v2 )&lt;br /&gt;
  {&lt;br /&gt;
LABEL_14:&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400100) = v2;           // NV_PGRAPH_INTR&lt;br /&gt;
    if ( v3 &amp;amp;&amp;amp; v2 &amp;amp; 0x100001 &amp;amp;&amp;amp; !(v3 &amp;amp; 0x40) )  // NV_PGRAPH_NSOURCE &amp;amp;&amp;amp; NV_PGRAPH_INTR &amp;amp; NV_PGRAPH_INTR_NOTIFY_PENDING|NV_PGRAPH_INTR_ERROR_PENDING &amp;amp;&amp;amp; !(NV_PGRAPH_NSOURCE &amp;amp; NV_PGRAPH_NSOURCE_ILLEGAL_MTHD_PENDING)&lt;br /&gt;
    {&lt;br /&gt;
      if ( v4 == 0x100 )                        // NV_PGRAPH_TRAPPED_ADDR_MTHD&lt;br /&gt;
      {&lt;br /&gt;
        D3D::CMiniport::SoftwareMethod(v6, *(_DWORD *)(gpu + 0x400708));// NV_PGRAPH_TRAPPED_DATA_LOW&lt;br /&gt;
      }&lt;br /&gt;
      else&lt;br /&gt;
      {&lt;br /&gt;
        unknown_libname_837(&lt;br /&gt;
          &amp;quot;Graphics hardware error information:\n Source: %08x\n   ChID: %d\n  Class: %x\n Method: %08x\n   Data: %08x\n    Get: %08x\n&amp;quot;,&lt;br /&gt;
          v3,                                   // NV_PGRAPH_NSOURCE&lt;br /&gt;
          ((unsigned int)v4 &amp;gt;&amp;gt; 20) &amp;amp; 0x1F,      // NV_PGRAPH_TRAPPED_ADDR_CHID&lt;br /&gt;
          *(_DWORD *)(gpu + 0x40014C) &amp;amp; 0xFF,   // NV_PGRAPH_CTX_SWITCH1_GRCLASS&lt;br /&gt;
          v4,                                   // NV_PGRAPH_TRAPPED_ADDR_MTHD&lt;br /&gt;
          *(_DWORD *)(gpu + 0x400708),          // NV_PGRAPH_TRAPPED_DATA_LOW&lt;br /&gt;
          vFD003244 | 0x80000000);              // NV_PFIFO_CACHE1_DMA_GET&lt;br /&gt;
        __debugbreak();&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400720) = 1;              // NV_PGRAPH_FIFO_ACCESS_ENABLE&lt;br /&gt;
  return *(_DWORD *)(gpu + 0x400100);           // NV_PGRAPH_INTR&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
//TODO D3D::CMiniport::VBlank&lt;br /&gt;
&lt;br /&gt;
int __thiscall D3D::CMiniport::HalGrLoadChannelContext(void *this, int a2)&lt;br /&gt;
{&lt;br /&gt;
  void *v2; // ebx@1&lt;br /&gt;
  int gpu; // esi@1&lt;br /&gt;
  int v4; // edx@3&lt;br /&gt;
  int result; // eax@6&lt;br /&gt;
  signed int v6; // eax@8&lt;br /&gt;
  int v7; // edi@10&lt;br /&gt;
  int v8; // esi@10&lt;br /&gt;
  int v9; // [sp+Ch] [bp-4h]@3&lt;br /&gt;
&lt;br /&gt;
  v2 = this;&lt;br /&gt;
  gpu = *(_DWORD *)this;&lt;br /&gt;
  if ( *(_DWORD *)(*(_DWORD *)this + 4194560) )&lt;br /&gt;
    unknown_libname_835(this);&lt;br /&gt;
  v9 = *(_DWORD *)(gpu + 0x400720);             // NV_PGRAPH_FIFO&lt;br /&gt;
  *(_DWORD *)(gpu + 0x400720) = 0;              // NV_PGRAPH_FIFO_ACCESS_DISABLE&lt;br /&gt;
  D3D::CMiniport::HalGrIdle(v2);&lt;br /&gt;
  v4 = a2;&lt;br /&gt;
  if ( *((_DWORD *)v2 + 77) != a2 )&lt;br /&gt;
  {&lt;br /&gt;
    D3D::CMiniport::HalGrUnloadChannelContext(v2, *((_DWORD *)v2 + 77));&lt;br /&gt;
    v4 = a2;&lt;br /&gt;
  }&lt;br /&gt;
  *((_DWORD *)v2 + 77) = v4;&lt;br /&gt;
  if ( v4 == 2 )&lt;br /&gt;
  {&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400144) = 0x10000100u;  // NV_PGRAPH_CTX_CONTROL_TIME_NOT_EXPIRED|NV_PGRAPH_CTX_CONTROL_DEVICE_ENABLED&lt;br /&gt;
    result = v9 | 1;&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400764) = 0x8000000u;   // NV_PGRAPH_FFINTFC_ST2_CHID_STATUS_VALID&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400720) = v9 | 1;       // NV_PGRAPH_FIFO_ACCESS_ENABLE&lt;br /&gt;
  }&lt;br /&gt;
  else&lt;br /&gt;
  {&lt;br /&gt;
    if ( *((_DWORD *)v2 + v4 + 81) )&lt;br /&gt;
    {&lt;br /&gt;
      *(_DWORD *)(gpu + 0x400080) = 0x70000u;   // NV_PGRAPH_DEBUG_0_IDX_STATE_RESET|NV_PGRAPH_DEBUG_0_VTX_STATE_RESET|NV_PGRAPH_DEBUG_0_CAS_STATE_RESET&lt;br /&gt;
      *(_DWORD *)(gpu + 0x400080) = 0;          // NV_PGRAPH_DEBUG_0_NO_RESET&lt;br /&gt;
      *(_DWORD *)(gpu + 0x400750) = 0x3D0000u;  // NV_PGRAPH_RDI_INDEX_SELECT&lt;br /&gt;
      v6 = 15;&lt;br /&gt;
      do&lt;br /&gt;
      {&lt;br /&gt;
        --v6;&lt;br /&gt;
        *(_DWORD *)(gpu + 0x400754) = 0;        // NV_PGRAPH_RDI_DATA&lt;br /&gt;
      }&lt;br /&gt;
      while ( v6 );&lt;br /&gt;
    }&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400084) |= 0x1000000u;  // NV_PGRAPH_DEBUG_1_CACHE_INVALIDATE&lt;br /&gt;
    v7 = (v4 &amp;amp; 0x1F) &amp;lt;&amp;lt; 24;&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400148) = v7;           // NV_PGRAPH_CTX_USER&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400784) = *((_DWORD *)v2 + a2 + 78) &amp;amp; 0xFFFF;// NV_PGRAPH_CHANNEL_CTX_POINTER_INST&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400788) = 1;            // NV_PGRAPH_CHANNEL_CTX_STATUS_LOADED&lt;br /&gt;
    D3D::CMiniport::HalGrIdle(v2);&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400148) = v7 | *(_DWORD *)(gpu + 0x400148) &amp;amp; 0xE0FFFFFF;// NV_PGRAPH_CTX_USER_CHID (inverted mask)&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400144) = 0x10010100u;  // NV_PGRAPH_CTX_CONTROL_TIME_NOT_EXPIRED|NV_PGRAPH_CTX_CONTROL_CHID_VALID|NV_PGRAPH_CTX_CONTROL_DEVICE_ENABLED&lt;br /&gt;
    v8 = gpu + 0x400764;                        // NV_PGRAPH_FFINTFC_ST2&lt;br /&gt;
    result = *(_DWORD *)v8 &amp;amp; 0xCFFFFFFF;        // NV_PGRAPH_FFINTFC_ST2_CHSWITCH_CLEAR&amp;amp;NV_PGRAPH_FFINTFC_ST2_FIFOHOLD_CLEAR&lt;br /&gt;
    *(_DWORD *)v8 = result;                     // NV_PGRAPH_FFINTFC_ST2&lt;br /&gt;
  }&lt;br /&gt;
  return result;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
int __thiscall D3D::CMiniport::HalGrUnloadChannelContext(void *this, int a2)&lt;br /&gt;
{&lt;br /&gt;
  int result; // eax@1&lt;br /&gt;
  int gpu; // esi@1&lt;br /&gt;
&lt;br /&gt;
  result = a2;&lt;br /&gt;
  gpu = *(_DWORD *)this;&lt;br /&gt;
  if ( a2 != 2 )&lt;br /&gt;
  {&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400784) = *((_DWORD *)this + a2 + 78) &amp;amp; 0xFFFF;// NV_PGRAPH_CHANNEL_CTX_POINTER_INST&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400788) = 2;            // NV_PGRAPH_CHANNEL_CTX_STATUS_UNLOADED&lt;br /&gt;
    result = D3D::CMiniport::HalGrIdle(this);&lt;br /&gt;
    *(_DWORD *)(gpu + 0x400144) = 0x10000000u;  // NV_PGRAPH_CTX_CONTROL_DEVICE_ENABLED&lt;br /&gt;
  }&lt;br /&gt;
  return result;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
int __thiscall D3D::CMiniport::HalFifoControlLoad(void *this)&lt;br /&gt;
{&lt;br /&gt;
  int gpu; // esi@1&lt;br /&gt;
  int result; // eax@1&lt;br /&gt;
&lt;br /&gt;
  gpu = *(_DWORD *)this;&lt;br /&gt;
  *(_DWORD *)(*(_DWORD *)this + 12836) = 0xF0078u;&lt;br /&gt;
  *(_DWORD *)(gpu + 0x2044) = 0x101FFFFu;       // NV_PFIFO_DMA_TIMESLICE_SELECT_128K|NV_PFIFO_DMA_TIMESLICE_TIMEOUT_ENABLED&lt;br /&gt;
  *(_DWORD *)(gpu + 0x2040) = *((_DWORD *)this + 72) &amp;amp; 0x3FF;// NV_PFIFO_DELAY_0_WAIT_RETRY&lt;br /&gt;
  *(_DWORD *)(gpu + 0x2500) = 0;                // NV_PFIFO_CACHES_ALL_DISABLE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3000) = 0;                // NV_PFIFO_CACHE0_PUSH0_ACCESS_DISABLE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3050) = 0;                // NV_PFIFO_CACHE0_PULL0_ACCESS_DISABLE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3200) = 0;                // NV_PFIFO_CACHE1_PUSH0_ACCESS_DISABLE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3250) = 0;                // NV_PFIFO_CACHE1_PULL0_ACCESS_DISABLE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3220) = 0;                // NV_PFIFO_CACHE1_DMA_PUSH_ACCESS_DISABLE&lt;br /&gt;
  result = D3D::CMiniport::HalFifoContextSwitch(this, 1);&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3210) = 0;                // NV_PFIFO_CACHE1_PUT_ADDRESS&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3270) = 0;                // NV_PFIFO_CACHE1_GET_ADDRESS&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3250) = 1;                // NV_PFIFO_CACHE1_PULL0_ACCESS_ENABLE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3200) = 1;                // NV_PFIFO_CACHE1_PUSH0_ACCESS_ENABLE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x2500) = 1;                // NV_PFIFO_CACHES_REASSIGN_ENABLED&lt;br /&gt;
  *(_DWORD *)(gpu + 0x2500) = 0;                // NV_PFIFO_CACHES_ALL_DISABLE&lt;br /&gt;
  return result;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
int __thiscall D3D::CMiniport::HalFifoContextSwitch(void *this, int a2_switch)&lt;br /&gt;
{&lt;br /&gt;
  void *v2; // esi@1&lt;br /&gt;
  int gpu; // eax@1&lt;br /&gt;
  int v4; // ebx@1&lt;br /&gt;
  int v5; // ecx@1&lt;br /&gt;
  int v6; // edx@1&lt;br /&gt;
  int v7; // ecx@2&lt;br /&gt;
  int v8; // edx@8&lt;br /&gt;
  int v9; // [sp+Ch] [bp-14h]@1&lt;br /&gt;
  int v10; // [sp+10h] [bp-10h]@1&lt;br /&gt;
  int v11; // [sp+14h] [bp-Ch]@1&lt;br /&gt;
  signed int v12; // [sp+1Ch] [bp-4h]@2&lt;br /&gt;
&lt;br /&gt;
  v2 = this;&lt;br /&gt;
  gpu = *(_DWORD *)this;&lt;br /&gt;
  v4 = *((_DWORD *)this + 74);                  // unknown1&lt;br /&gt;
  v9 = *(_DWORD *)(*(_DWORD *)this + 9472);&lt;br /&gt;
  v10 = *(_DWORD *)(*(_DWORD *)this + 12800);&lt;br /&gt;
  v11 = *(_DWORD *)(*(_DWORD *)this + 12880);&lt;br /&gt;
  *(_DWORD *)(*(_DWORD *)this + 9472) = 0;&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3200) = 0;                // NV_PFIFO_CACHE1_PUSH0_ACCESS_DISABLE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3250) = 0;                // NV_PFIFO_CACHE1_PULL0_ACCESS_DISABLE&lt;br /&gt;
  v5 = *(_DWORD *)(gpu + 0x3204) &amp;amp; 0x1F;        // NV_PFIFO_CACHE1_PUSH1_CHID&lt;br /&gt;
  v6 = gpu + v4 + ((*(_DWORD *)(gpu + 0x3204) &amp;amp; 0x1F) &amp;lt;&amp;lt; 6);// unknown2&lt;br /&gt;
  *(_DWORD *)v6 = *(_DWORD *)(gpu + 0x3240);    // NV_PFIFO_CACHE1_DMA_PUT&lt;br /&gt;
  *(_DWORD *)(v6 + 4) = *(_DWORD *)(gpu + 0x3244);// NV_PFIFO_CACHE1_DMA_GET&lt;br /&gt;
  *(_DWORD *)(v6 + 8) = *(_DWORD *)(gpu + 0x3248);// NV_PFIFO_CACHE1_REF&lt;br /&gt;
  *(_DWORD *)(v6 + 12) = *(_DWORD *)(gpu + 0x322C);// NV_PFIFO_CACHE1_DMA_INSTANCE&lt;br /&gt;
  *(_DWORD *)(v6 + 16) = *(_DWORD *)(gpu + 0x3228);// NV_PFIFO_CACHE1_DMA_STATE&lt;br /&gt;
  *(_DWORD *)(v6 + 20) = *(_DWORD *)(gpu + 0x3224);// NV_PFIFO_CACHE1_DMA_FETCH&lt;br /&gt;
  *(_DWORD *)(v6 + 24) = *(_DWORD *)(gpu + 0x3280);// NV_PFIFO_CACHE1_ENGINE&lt;br /&gt;
  *(_DWORD *)(v6 + 28) = *(_DWORD *)(gpu + 0x3254);// NV_PFIFO_CACHE1_PULL1&lt;br /&gt;
  *(_DWORD *)(v6 + 32) = *(_DWORD *)(gpu + 0x3268);// NV_PFIFO_CACHE1_ACQUIRE_2&lt;br /&gt;
  *(_DWORD *)(v6 + 36) = *(_DWORD *)(gpu + 0x3264);// NV_PFIFO_CACHE1_ACQUIRE_1&lt;br /&gt;
  *(_DWORD *)(v6 + 40) = *(_DWORD *)(gpu + 0x3260);// NV_PFIFO_CACHE1_ACQUIRE_0&lt;br /&gt;
  *(_DWORD *)(v6 + 44) = *(_DWORD *)(gpu + 0x326C);// NV_PFIFO_CACHE1_SEMAPHORE&lt;br /&gt;
  *(_DWORD *)(v6 + 48) = *(_DWORD *)(gpu + 0x324C);// NV_PFIFO_CACHE1_DMA_SUBROUTINE&lt;br /&gt;
  if ( *(_DWORD *)(gpu + 0x3204) &amp;amp; 0x100 )      // NV_PFIFO_CACHE1_PUSH1_MODE_DMA&lt;br /&gt;
  {&lt;br /&gt;
    v12 = 1 &amp;lt;&amp;lt; v5;&lt;br /&gt;
    v7 = *(_DWORD *)(gpu + 0x2508) &amp;amp; ~(1 &amp;lt;&amp;lt; v5);// NV_PFIFO_DMA&lt;br /&gt;
    if ( *(_DWORD *)(gpu + 0x3240) != *(_DWORD *)(gpu + 0x3244) )// NV_PFIFO_CACHE1_DMA_PUT != NV_PFIFO_CACHE1_DMA_GET&lt;br /&gt;
      v7 |= v12;&lt;br /&gt;
    *(_DWORD *)(gpu + 0x2508) = v7;             // NV_PFIFO_DMA&lt;br /&gt;
  }&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3204) = a2_switch &amp;amp; 0x1F; // NV_PFIFO_CACHE1_PUSH1_CHID&lt;br /&gt;
  if ( (1 &amp;lt;&amp;lt; a2_switch) &amp;amp; *((_DWORD *)v2 + 65) &amp;amp;&amp;amp; a2_switch != 1 )&lt;br /&gt;
    *(_DWORD *)(gpu + 0x3204) |= 0x100u;        // NV_PFIFO_CACHE1_PUSH1_MODE_DMA&lt;br /&gt;
  v8 = v4 + (a2_switch &amp;lt;&amp;lt; 6) + gpu;             // unknown3&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3240) = *(_DWORD *)v8;    // NV_PFIFO_CACHE1_DMA_PUT&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3244) = *(_DWORD *)(v8 + 4);// NV_PFIFO_CACHE1_DMA_GET&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3248) = *(_DWORD *)(v8 + 8);// NV_PFIFO_CACHE1_REF&lt;br /&gt;
  *(_DWORD *)(gpu + 0x322C) = *(_DWORD *)(v8 + 12);// NV_PFIFO_CACHE1_DMA_INSTANCE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3228) = *(_DWORD *)(v8 + 16);// NV_PFIFO_CACHE1_DMA_STATE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3224) = *(_DWORD *)(v8 + 20);// NV_PFIFO_CACHE1_DMA_FETCH&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3280) = *(_DWORD *)(v8 + 24);// NV_PFIFO_CACHE1_ENGINE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3254) = *(_DWORD *)(v8 + 28);// NV_PFIFO_CACHE1_PULL1&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3268) = *(_DWORD *)(v8 + 32);// NV_PFIFO_CACHE1_ACQUIRE_2&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3264) = *(_DWORD *)(v8 + 36);// NV_PFIFO_CACHE1_ACQUIRE_1&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3260) = *(_DWORD *)(v8 + 40);// NV_PFIFO_CACHE1_ACQUIRE_0&lt;br /&gt;
  *(_DWORD *)(gpu + 0x326C) = *(_DWORD *)(v8 + 44);// NV_PFIFO_CACHE1_SEMAPHORE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x324C) = *(_DWORD *)(v8 + 48);// NV_PFIFO_CACHE1_DMA_SUBROUTINE&lt;br /&gt;
  if ( (1 &amp;lt;&amp;lt; a2_switch) &amp;amp; *((_DWORD *)v2 + 65) &amp;amp;&amp;amp; a2_switch != 1 )&lt;br /&gt;
    *(_DWORD *)(gpu + 0x3220) = 1;              // NV_PFIFO_CACHE1_DMA_PUSH_ACCESS_ENABLE&lt;br /&gt;
  *(_DWORD *)(gpu + 0x204C) = 0x1FFFFFu;        // NV_PFIFO_TIMESLICE_TIMER_EXPIRED&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3250) = v11;              // NV_PFIFO_CACHE1_PULL0&lt;br /&gt;
  *(_DWORD *)(gpu + 0x3200) = v10;              // NV_PFIFO_CACHE1_PUSH0&lt;br /&gt;
  *(_DWORD *)(gpu + 0x2500) = v9;               // NV_PFIFO_CACHES&lt;br /&gt;
  return gpu;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=CPU&amp;diff=5567</id>
		<title>CPU</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=CPU&amp;diff=5567"/>
				<updated>2017-05-30T03:47:43Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: A better reference for the Xbox processor.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The CPU in the Xbox was a custom Pentium 3 running at 733MHz. The 'custom' part of this was that that the Pentium 3 in the Xbox was that it had only 128KB L2 cache instead of the usual 256KB. This allowed Microsoft to buy them at a bit of a discount and Intel to shift a few more CPUs{{citation needed}}.&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.intel.com/content/dam/support/us/en/documents/processors/mobile/celeron/sb/28365403.pdf Mobile Intel® Celeron® Processor (0.18μ) in BGA2 and Micro-PGA2 Packages] (This datasheet is for the mobile version Coppermine with 256kB L2 cache. It does not contain the Xbox Coppermine-128 with 128kB L2 cache at 733MHz (S-Spec SL5SN). No such datasheet exists. Both differences are pin compatible.&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=XBE&amp;diff=5563</id>
		<title>XBE</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=XBE&amp;diff=5563"/>
				<updated>2017-05-30T01:14:59Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: Redirected page to Xbe&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Xbe]]&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=XBE&amp;diff=5562</id>
		<title>XBE</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=XBE&amp;diff=5562"/>
				<updated>2017-05-30T01:13:05Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: An XBE page already exists.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=Xbe&amp;diff=5561</id>
		<title>Xbe</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=Xbe&amp;diff=5561"/>
				<updated>2017-05-30T01:12:09Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:XBE}}&lt;br /&gt;
XBE files (XBox Executable) are the main files that are executed in the Xbox System. In official games, these files are created by game developers, and then signed by Microsoft.&lt;br /&gt;
&lt;br /&gt;
=== Title ID ===&lt;br /&gt;
&lt;br /&gt;
A title ID is usually 2 ASCII letters for the publisher, followed by a u16 integer game number (Above 2000 for non-original Xbox games)&lt;br /&gt;
&lt;br /&gt;
{| class=wikitable&lt;br /&gt;
! Publisher ID !! Name&lt;br /&gt;
|-&lt;br /&gt;
| AC || Acclaim Entertainment&lt;br /&gt;
|-&lt;br /&gt;
| AH || ARUSH Entertainment&lt;br /&gt;
|-&lt;br /&gt;
| AQ || Aqua System&lt;br /&gt;
|-&lt;br /&gt;
| AT || Atlus&lt;br /&gt;
|-&lt;br /&gt;
| AV || Activision&lt;br /&gt;
|-&lt;br /&gt;
| AY || Aspyr Media&lt;br /&gt;
|-&lt;br /&gt;
| BA || Bandai&lt;br /&gt;
|-&lt;br /&gt;
| BM || BAM! Entertainment&lt;br /&gt;
|-&lt;br /&gt;
| BR || Broccoli Co.&lt;br /&gt;
|-&lt;br /&gt;
| BS || Bethesda Softworks&lt;br /&gt;
|-&lt;br /&gt;
| BU || Bunkasha Co.&lt;br /&gt;
|-&lt;br /&gt;
| BV || Buena Vista Games&lt;br /&gt;
|-&lt;br /&gt;
| BW || BBC Multimedia&lt;br /&gt;
|-&lt;br /&gt;
| CC || Capcom&lt;br /&gt;
|-&lt;br /&gt;
| CK || Kemco Corporation {{citation needed|reason=Did they realy swapped the ASCII letters? is KC a curced acroniem in Japan? Just want to be sure its Kemco|date=May 2017}}&lt;br /&gt;
|-&lt;br /&gt;
| CM || Codemasters&lt;br /&gt;
|-&lt;br /&gt;
| CV || Crave Entertainment&lt;br /&gt;
|-&lt;br /&gt;
| DC || DreamCatcher Interactive&lt;br /&gt;
|-&lt;br /&gt;
| DX || Davilex&lt;br /&gt;
|-&lt;br /&gt;
| EA || Electronic Arts (EA)&lt;br /&gt;
|-&lt;br /&gt;
| EC || Encore inc&lt;br /&gt;
|-&lt;br /&gt;
| EL || Enlight Software&lt;br /&gt;
|-&lt;br /&gt;
| EM || Empire Interactive&lt;br /&gt;
|-&lt;br /&gt;
| ES || Eidos Interactive&lt;br /&gt;
|-&lt;br /&gt;
| FI || Fox Interactive&lt;br /&gt;
|-&lt;br /&gt;
| FS || From Software&lt;br /&gt;
|-&lt;br /&gt;
| GE || Genki Co.&lt;br /&gt;
|-&lt;br /&gt;
| GV || Groove Games&lt;br /&gt;
|-&lt;br /&gt;
| HE || Tru Blu (Entertainment division of Home Entertainment Suppliers)&lt;br /&gt;
|-&lt;br /&gt;
| HP || Hip games&lt;br /&gt;
|-&lt;br /&gt;
| HU || Hudson Soft&lt;br /&gt;
|-&lt;br /&gt;
| IA || Mad Catz Interactive&lt;br /&gt;
|-&lt;br /&gt;
| IF || Idea Factory&lt;br /&gt;
|-&lt;br /&gt;
| IG || Infogrames&lt;br /&gt;
|-&lt;br /&gt;
| IL || [[Interlex Corporation]]&lt;br /&gt;
|-&lt;br /&gt;
| IM || Imagine Media&lt;br /&gt;
|-&lt;br /&gt;
| IO || Ignition Entertainment&lt;br /&gt;
|-&lt;br /&gt;
| IP || Interplay Entertainment&lt;br /&gt;
|-&lt;br /&gt;
| IX || InXile Entertainment {{citation needed}}&lt;br /&gt;
|-&lt;br /&gt;
| JA || Jaleco&lt;br /&gt;
|-&lt;br /&gt;
| JW || JoWooD&lt;br /&gt;
|-&lt;br /&gt;
| KB || Kemco {{citation needed|reason=CK is also Kemco, is this a diferent subsidairy or country based? Just want to be sure its Kemco|date=May 2017}}&lt;br /&gt;
|-&lt;br /&gt;
| KI || Kids Station Inc. {{citation needed|reason=Games info page was in japanese, I dont read japanese. but this seemed very logicaly the publisher, can a japanese reader confirm?|date=May 2017}}&lt;br /&gt;
|-&lt;br /&gt;
| KN || Konami&lt;br /&gt;
|-&lt;br /&gt;
| KO || KOEI&lt;br /&gt;
|-&lt;br /&gt;
| KU || Kobi and/or GAE (formerly Global A Entertainment){{citation needed|reason=What name did the publisher use at the time of release?|date=May 2017}}&lt;br /&gt;
|-&lt;br /&gt;
| LA || LucasArts&lt;br /&gt;
|-&lt;br /&gt;
| LS || Black Bean Games (publishing arm of Leader S.p.A.)&lt;br /&gt;
|-&lt;br /&gt;
| MD || Metro3D&lt;br /&gt;
|-&lt;br /&gt;
| ME || Medix&lt;br /&gt;
|-&lt;br /&gt;
| MI || Microïds&lt;br /&gt;
|-&lt;br /&gt;
| MJ || Majesco Entertainment&lt;br /&gt;
|-&lt;br /&gt;
| MM || Myelin Media&lt;br /&gt;
|-&lt;br /&gt;
| MP || MediaQuest {{citation needed|reason=Where is the P? I dont trust my source yet... but seems close|date=May 2017}}&lt;br /&gt;
|-&lt;br /&gt;
| MS || Microsoft Game Studios&lt;br /&gt;
|-&lt;br /&gt;
| MW || Midway Games&lt;br /&gt;
|-&lt;br /&gt;
| MX || Empire Interactive {{citation needed|reason=What happend to the publisher, who published this game?|date=May 2017}}&lt;br /&gt;
|-&lt;br /&gt;
| NK || NewKidCo&lt;br /&gt;
|-&lt;br /&gt;
| NL || NovaLogic&lt;br /&gt;
|-&lt;br /&gt;
| NM || Namco&lt;br /&gt;
|-&lt;br /&gt;
| OX || Oxygen Interactive&lt;br /&gt;
|-&lt;br /&gt;
| PC || Playlogic Entertainment&lt;br /&gt;
|-&lt;br /&gt;
| PL || Phantagram Co., Ltd.&lt;br /&gt;
|-&lt;br /&gt;
| RA || Rage&lt;br /&gt;
|-&lt;br /&gt;
| SA || Sammy&lt;br /&gt;
|-&lt;br /&gt;
| SC || SCi Games&lt;br /&gt;
|-&lt;br /&gt;
| SE || SEGA&lt;br /&gt;
|-&lt;br /&gt;
| SN || SNK&lt;br /&gt;
|-&lt;br /&gt;
| SS || Simon &amp;amp; Schuster&lt;br /&gt;
|-&lt;br /&gt;
| SU || Success Corporation&lt;br /&gt;
|-&lt;br /&gt;
| SW || Swing! Deutschland&lt;br /&gt;
|-&lt;br /&gt;
| TA || Takara&lt;br /&gt;
|-&lt;br /&gt;
| TC || Tecmo&lt;br /&gt;
|-&lt;br /&gt;
| TD || The 3DO Company (or just 3DO)&lt;br /&gt;
|-&lt;br /&gt;
| TK || Takuyo&lt;br /&gt;
|-&lt;br /&gt;
| TM || TDK Mediactive&lt;br /&gt;
|-&lt;br /&gt;
| TQ || THQ&lt;br /&gt;
|-&lt;br /&gt;
| TS || Titus Interactive&lt;br /&gt;
|-&lt;br /&gt;
| TT || Take-Two Interactive Software&lt;br /&gt;
|-&lt;br /&gt;
| US || Ubisoft&lt;br /&gt;
|-&lt;br /&gt;
| VC || Victor Interactive Software&lt;br /&gt;
|-&lt;br /&gt;
| VN || Vivendi Universal (just took Interplays publishing rights) {{citation needed}}&lt;br /&gt;
|-&lt;br /&gt;
| VU || Vivendi Universal Games&lt;br /&gt;
|-&lt;br /&gt;
| VV || Vivendi Universal Games {{citation needed}}&lt;br /&gt;
|-&lt;br /&gt;
| WE || Wanadoo Edition&lt;br /&gt;
|-&lt;br /&gt;
| WR || Warner Bros. Interactive Entertainment {{citation needed}}&lt;br /&gt;
|-&lt;br /&gt;
| XI || XPEC Entertainment and Idea Factory &lt;br /&gt;
|-&lt;br /&gt;
| XK || ''Xbox kiosk disk?'' {{citation needed}}&lt;br /&gt;
|-&lt;br /&gt;
| XL || ''Xbox special bundled or live demo disk?'' {{citation needed}}&lt;br /&gt;
|-&lt;br /&gt;
| XM || Evolved Games {{citation needed|reason=Probably not, game &amp;quot;Malice&amp;quot;|date=May 2017}}&lt;br /&gt;
|-&lt;br /&gt;
| XP || XPEC Entertainment&lt;br /&gt;
|-&lt;br /&gt;
| YB || YBM Sisa (South-Korea)&lt;br /&gt;
|-&lt;br /&gt;
| ZD || Zushi Games (formerly Zoo Digital Publishing)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The title ID seems to double the information from the [[Xbox Game Disc]] mastering code etched into the ring or readable from the DMI.&lt;br /&gt;
The game number is expressed in 3 decimal digits here which suggests that it will always be below 1000.&lt;br /&gt;
&lt;br /&gt;
'''Examples''':&lt;br /&gt;
&lt;br /&gt;
[[FIFA Soccer 2003]]:&lt;br /&gt;
* DMI and mastering code: EA02302E (Meaning: publisher EA, game number 023, version 02, region Europe)&lt;br /&gt;
* Title ID: {{FIXME}}&lt;br /&gt;
&lt;br /&gt;
[[Halo: Combat Evolved]]:&lt;br /&gt;
* DMI and mastering code: MS00402A (Meaning: publisher Microsoft, game number 004, version 02, region America)&lt;br /&gt;
* Title ID: 4D530004 [MS-004]&lt;br /&gt;
&lt;br /&gt;
[[Halo: Combat Evolved]]:&lt;br /&gt;
* DMI and mastering code: MS00404E (Meaning: publisher Microsoft, game number 004, version 04, region Europe)&lt;br /&gt;
* Title ID: 4D530004 [MS-004]&lt;br /&gt;
&lt;br /&gt;
=== Sections ===&lt;br /&gt;
&lt;br /&gt;
=== .text ===&lt;br /&gt;
&lt;br /&gt;
The .text section contains all x86 subroutines to be executed by the [[CPU|processor]].&lt;br /&gt;
&lt;br /&gt;
=== .rdata ===&lt;br /&gt;
&lt;br /&gt;
The .rdata section contains the [[Kernel|kernel thunk table]]. The ordinals in the table are to be resolved to the kernel's actual calling routine, when loaded.&lt;br /&gt;
&lt;br /&gt;
== Resources and links ==&lt;br /&gt;
* [http://www.caustik.com/cxbx/download/xbe.htm .XBE File Format 1.1]&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=User:Haxar/fastcall&amp;diff=5557</id>
		<title>User:Haxar/fastcall</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=User:Haxar/fastcall&amp;diff=5557"/>
				<updated>2017-05-30T00:47:38Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: Created page with &amp;quot;=== fastcall routines from rgrep ===  All kernel and library routines are '''stdcall''' unless noted otherwise: &amp;lt;pre&amp;gt; FASTCALL D3DDevice_SetRenderState_Deferred FASTCALL D3DDe...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== fastcall routines from rgrep ===&lt;br /&gt;
&lt;br /&gt;
All kernel and library routines are '''stdcall''' unless noted otherwise:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
FASTCALL D3DDevice_SetRenderState_Deferred&lt;br /&gt;
FASTCALL D3DDevice_SetRenderState_Simple&lt;br /&gt;
FASTCALL D3DDevice_SetTextureState_Deferred&lt;br /&gt;
FASTCALL D3DDevice_SetVertexShaderConstant1&lt;br /&gt;
FASTCALL D3DDevice_SetVertexShaderConstant1Fast&lt;br /&gt;
FASTCALL D3DDevice_SetVertexShaderConstant4&lt;br /&gt;
FASTCALL D3DDevice_SetVertexShaderConstantNotInline&lt;br /&gt;
FASTCALL D3DDevice_SetVertexShaderConstantNotInlineFast&lt;br /&gt;
FASTCALL D3DDevice_SwitchTexture&lt;br /&gt;
FASTCALL DmProfileDpcDispatchNotifyCallback&lt;br /&gt;
FASTCALL DmProfileThreadSwitchNotifyCallback&lt;br /&gt;
FASTCALL ExAcquireFastMutex&lt;br /&gt;
FASTCALL ExAcquireFastMutexUnsafe&lt;br /&gt;
FASTCALL ExfInterlockedInsertTailList&lt;br /&gt;
FASTCALL ExfInterlockedRemoveHeadList&lt;br /&gt;
FASTCALL ExInterlockedAddLargeStatistic&lt;br /&gt;
FASTCALL ExInterlockedAddUlong&lt;br /&gt;
FASTCALL ExInterlockedCompareExchange64&lt;br /&gt;
FASTCALL ExInterlockedFlushSList&lt;br /&gt;
FASTCALL ExInterlockedInsertHeadList&lt;br /&gt;
FASTCALL ExInterlockedInsertTailList&lt;br /&gt;
FASTCALL ExInterlockedPopEntryList&lt;br /&gt;
FASTCALL ExInterlockedPopEntrySList&lt;br /&gt;
FASTCALL ExInterlockedPushEntryList&lt;br /&gt;
FASTCALL ExInterlockedPushEntrySList&lt;br /&gt;
FASTCALL ExInterlockedRemoveHeadList&lt;br /&gt;
FASTCALL ExReleaseFastMutex&lt;br /&gt;
FASTCALL ExReleaseFastMutexUnsafe&lt;br /&gt;
FASTCALL FlashReadMSR&lt;br /&gt;
FASTCALL FlashWriteMSR&lt;br /&gt;
FASTCALL fProcessBrainBoxData&lt;br /&gt;
FASTCALL FscSetCacheBufferProtection&lt;br /&gt;
FASTCALL GetTypeInformation&lt;br /&gt;
FASTCALL HalBeginClockInterrupt&lt;br /&gt;
FASTCALL HalBeginProfileInterrupt&lt;br /&gt;
FASTCALL HalBeginSMBusInterrupt&lt;br /&gt;
FASTCALL HalBeginSystemControlInterrupt&lt;br /&gt;
FASTCALL HalBeginSystemInterrupt&lt;br /&gt;
FASTCALL HalClearSoftwareInterrupt&lt;br /&gt;
FASTCALL HalEndSystemInterrupt&lt;br /&gt;
FASTCALL HalEndSystemLevelInterrupt&lt;br /&gt;
FASTCALL HalRequestSoftwareInterrupt&lt;br /&gt;
FASTCALL IdexCdRomStartCheckVerify&lt;br /&gt;
FASTCALL IdexCdRomStartEndSession&lt;br /&gt;
FASTCALL IdexCdRomStartGetDriveGeometry&lt;br /&gt;
FASTCALL IdexCdRomStartRawRead&lt;br /&gt;
FASTCALL IdexCdRomStartReadKey&lt;br /&gt;
FASTCALL IdexCdRomStartReadTOC&lt;br /&gt;
FASTCALL IdexCdRomStartScsiPassThrough&lt;br /&gt;
FASTCALL IdexCdRomStartSendKey&lt;br /&gt;
FASTCALL IdexCdRomStartSetSpindleSpeed&lt;br /&gt;
FASTCALL IdexCdRomStartStartSession&lt;br /&gt;
FASTCALL IdexChannelInvalidParameterRequest&lt;br /&gt;
FASTCALL IdexChannelPrepareBufferTransfer&lt;br /&gt;
FASTCALL IdexChannelSpinWhileBusy&lt;br /&gt;
FASTCALL IdexChannelSpinWhileBusyAndNotDrq&lt;br /&gt;
FASTCALL IdexDiskStartFlushBuffers&lt;br /&gt;
FASTCALL IdexDiskStartReadWrite&lt;br /&gt;
FASTCALL IdexDiskStartVerify&lt;br /&gt;
FASTCALL IdexMediaBoardStartReadWrite&lt;br /&gt;
FASTCALL InterlockedCompareExchange&lt;br /&gt;
FASTCALL InterlockedDecrement&lt;br /&gt;
FASTCALL InterlockedExchange&lt;br /&gt;
FASTCALL InterlockedExchangeAdd&lt;br /&gt;
FASTCALL InterlockedFlushSList&lt;br /&gt;
FASTCALL InterlockedIncrement&lt;br /&gt;
FASTCALL InterlockedPopEntrySList&lt;br /&gt;
FASTCALL InterlockedPushEntrySList&lt;br /&gt;
FASTCALL IofCallDriver&lt;br /&gt;
FASTCALL IofCompleteRequest&lt;br /&gt;
FASTCALL IopAcquireFileObjectLock&lt;br /&gt;
FASTCALL IopReleaseFileObjectLock&lt;br /&gt;
FASTCALL KeAcquireSpinLockRaiseToSynch&lt;br /&gt;
FASTCALL KefAcquireSpinLockAtDpcLevel&lt;br /&gt;
FASTCALL KefReleaseSpinLockFromDpcLevel&lt;br /&gt;
FASTCALL KfAcquireSpinLock&lt;br /&gt;
FASTCALL KfLowerIrql&lt;br /&gt;
FASTCALL KfRaiseIrql&lt;br /&gt;
FASTCALL KfReleaseSpinLock&lt;br /&gt;
FASTCALL KiAcquireSpinLock&lt;br /&gt;
FASTCALL KiActivateWaiterQueue&lt;br /&gt;
FASTCALL KiComputeWaitInterval&lt;br /&gt;
FASTCALL KiDpcDispatchNotify&lt;br /&gt;
FASTCALL KiFindReadyThread&lt;br /&gt;
FASTCALL KiInsertQueue&lt;br /&gt;
FASTCALL KiInsertQueueApc&lt;br /&gt;
FASTCALL KiInsertTimerTable&lt;br /&gt;
FASTCALL KiInsertTreeTimer&lt;br /&gt;
FASTCALL KiReadyThread&lt;br /&gt;
FASTCALL KiReinsertTreeTimer&lt;br /&gt;
FASTCALL KiReleaseSpinLock&lt;br /&gt;
FASTCALL KiSelectNextThread&lt;br /&gt;
FASTCALL KiSetPriorityThread&lt;br /&gt;
FASTCALL KiSwapThread&lt;br /&gt;
FASTCALL KiTimerListExpire&lt;br /&gt;
FASTCALL KiUnlockDispatcherDatabase&lt;br /&gt;
FASTCALL KiUnwaitThread&lt;br /&gt;
FASTCALL KiWaitSatisfyAll&lt;br /&gt;
FASTCALL KiWaitSatisfyAny&lt;br /&gt;
FASTCALL KiWaitSatisfyMutant&lt;br /&gt;
FASTCALL KiWaitSatisfyOther&lt;br /&gt;
FASTCALL KiWaitTest&lt;br /&gt;
FASTCALL MiDecodePteProtectionMask&lt;br /&gt;
FASTCALL MiGetFirstNode&lt;br /&gt;
FASTCALL MiGetNextNode&lt;br /&gt;
FASTCALL MiGetPreviousNode&lt;br /&gt;
FASTCALL MiInsertNode&lt;br /&gt;
FASTCALL MiInsertPageInFreeList&lt;br /&gt;
FASTCALL MiLocateAddress&lt;br /&gt;
FASTCALL MiLocateAddressInTree&lt;br /&gt;
FASTCALL MiMakePteProtectionMask&lt;br /&gt;
FASTCALL MiMakeSystemPteProtectionMask&lt;br /&gt;
FASTCALL MiReleasePageOwnership&lt;br /&gt;
FASTCALL MiRelocateBusyPage&lt;br /&gt;
FASTCALL MiRemoveAnyPage&lt;br /&gt;
FASTCALL MiRemoveAnyPageFromFreeList&lt;br /&gt;
FASTCALL MiRemoveDebuggerPage&lt;br /&gt;
FASTCALL MiRemoveNode&lt;br /&gt;
FASTCALL MiRemovePageFromFreeList&lt;br /&gt;
FASTCALL MiRemoveZeroPage&lt;br /&gt;
FASTCALL MiZeroAndFlushPtes&lt;br /&gt;
FASTCALL MU_fCbwTransfer&lt;br /&gt;
FASTCALL MU_fCloseEndpoints&lt;br /&gt;
FASTCALL MU_fCswTransfer&lt;br /&gt;
FASTCALL MU_fDataTransfer&lt;br /&gt;
FASTCALL MU_fDiskReadDriveCapacity&lt;br /&gt;
FASTCALL MU_fDiskReadWrite&lt;br /&gt;
FASTCALL MU_fDiskVerify&lt;br /&gt;
FASTCALL MU_fMarkWriteBufferCorrupt&lt;br /&gt;
FASTCALL MU_fMrbErrorHandler&lt;br /&gt;
FASTCALL MU_fStartMrb&lt;br /&gt;
FASTCALL MU_fValidateMrb&lt;br /&gt;
FASTCALL MU_fVscCommand&lt;br /&gt;
FASTCALL ObfDereferenceObject&lt;br /&gt;
FASTCALL ObfReferenceObject&lt;br /&gt;
FASTCALL ObpComputeHashIndex&lt;br /&gt;
FASTCALL OHCD_fAbortEndpoint&lt;br /&gt;
FASTCALL OHCD_fCancelQueuedUrbs&lt;br /&gt;
FASTCALL OHCD_fCleanEndpointTDs&lt;br /&gt;
FASTCALL OHCD_fCloseEndpoint&lt;br /&gt;
FASTCALL OHCD_fCompleteRequest&lt;br /&gt;
FASTCALL OHCD_fCreditTDQuota&lt;br /&gt;
FASTCALL OHCD_fDequeueBulkTransfer&lt;br /&gt;
FASTCALL OHCD_fDequeueControlTransfer&lt;br /&gt;
FASTCALL OHCD_fDequeueInterruptTransfer&lt;br /&gt;
FASTCALL OHCD_fGetEndpointState&lt;br /&gt;
FASTCALL OHCD_fGetTDsRequired&lt;br /&gt;
FASTCALL OHCD_fIsochAttachBuffer&lt;br /&gt;
FASTCALL OHCD_fIsochCloseEndpoint&lt;br /&gt;
FASTCALL OHCD_fIsochCompleteCloseEndpoint&lt;br /&gt;
FASTCALL OHCD_fIsochOpenEndpoint&lt;br /&gt;
FASTCALL OHCD_fIsochProcessTD&lt;br /&gt;
FASTCALL OHCD_fIsochStartTransfer&lt;br /&gt;
FASTCALL OHCD_fIsochStopTransfer&lt;br /&gt;
FASTCALL OHCD_fMapTransfer&lt;br /&gt;
FASTCALL OHCD_fOpenEndpoint&lt;br /&gt;
FASTCALL OHCD_fPauseEndpoint&lt;br /&gt;
FASTCALL OHCD_fPoolFindLostDoneHead&lt;br /&gt;
FASTCALL OHCD_fPoolInit&lt;br /&gt;
FASTCALL OHCD_fProcessAbortPendingList&lt;br /&gt;
FASTCALL OHCD_fProcessCancelPendingList&lt;br /&gt;
FASTCALL OHCD_fProcessClosePendingList&lt;br /&gt;
FASTCALL OHCD_fProcessDoneTD&lt;br /&gt;
FASTCALL OHCD_fProcessFailedTD&lt;br /&gt;
FASTCALL OHCD_fProgramBulkTransfer&lt;br /&gt;
FASTCALL OHCD_fProgramControlTransfer&lt;br /&gt;
FASTCALL OHCD_fProgramInterruptTransfer&lt;br /&gt;
FASTCALL OHCD_fProgramTransfer&lt;br /&gt;
FASTCALL OHCD_fQueueBulkTransfer&lt;br /&gt;
FASTCALL OHCD_fQueueControlTransfer&lt;br /&gt;
FASTCALL OHCD_fQueueInterruptTransfer&lt;br /&gt;
FASTCALL OHCD_fQueueTransferRequest&lt;br /&gt;
FASTCALL OHCD_fSetEndpointState&lt;br /&gt;
FASTCALL OHCD_fSetResources&lt;br /&gt;
FASTCALL OHCD_Get32BitFrameNumber&lt;br /&gt;
FASTCALL OHCD_HookNewEndpointToChildren&lt;br /&gt;
FASTCALL OHCD_ReverseBits&lt;br /&gt;
FASTCALL OHCD_RootHubInitialize&lt;br /&gt;
FASTCALL OHCD_RootHubProcessHotPlug&lt;br /&gt;
FASTCALL OHCD_RootHubProcessInterrupt&lt;br /&gt;
FASTCALL OHCD_ScheduleAddEndpointControlOrBulk&lt;br /&gt;
FASTCALL OHCD_ScheduleAddEndpointPeriodic&lt;br /&gt;
FASTCALL OHCD_ScheduleInitialize&lt;br /&gt;
FASTCALL OHCD_ScheduleRemoveEndpointControlOrBulk&lt;br /&gt;
FASTCALL OHCD_ScheduleRemoveEndpointPeriodic&lt;br /&gt;
FASTCALL PFMM&lt;br /&gt;
FASTCALL PFN_PROCESS_NEWDATA&lt;br /&gt;
FASTCALL PFOFSC&lt;br /&gt;
FASTCALL PFOFSTM&lt;br /&gt;
FASTCALL PFOFSTMED&lt;br /&gt;
FASTCALL PPROCESSOR_IDLE_FUNCTION&lt;br /&gt;
FASTCALL PPROCESSOR_IDLE_HANDLER&lt;br /&gt;
FASTCALL PSET_PROCESSOR_THROTTLE&lt;br /&gt;
FASTCALL PSWAP_CONTEXT_NOTIFY_ROUTINE&lt;br /&gt;
FASTCALL PTHREAD_SELECT_NOTIFY_ROUTINE&lt;br /&gt;
FASTCALL PTIME_UPDATE_NOTIFY_ROUTINE&lt;br /&gt;
FASTCALL RDMSR&lt;br /&gt;
FASTCALL RtlFindFirstSetRightMember&lt;br /&gt;
FASTCALL RtlpInterlockedPopEntrySList&lt;br /&gt;
FASTCALL RtlpInterlockedPushEntrySList&lt;br /&gt;
FASTCALL RtlUlongByteSwap&lt;br /&gt;
FASTCALL RtlUlonglongByteSwap&lt;br /&gt;
FASTCALL RtlUshortByteSwap&lt;br /&gt;
FASTCALL USBD_AllocateUsbAddress&lt;br /&gt;
FASTCALL USBD_fDeviceAbortEnum2&lt;br /&gt;
FASTCALL USBD_fDeviceEnumStage1&lt;br /&gt;
FASTCALL USBD_fDeviceEnumStage4&lt;br /&gt;
FASTCALL USBD_FreeUsbAddress&lt;br /&gt;
FASTCALL USBD_LoadClassDriver&lt;br /&gt;
FASTCALL VideoPortInterlockedDecrement&lt;br /&gt;
FASTCALL VideoPortInterlockedExchange&lt;br /&gt;
FASTCALL VideoPortInterlockedIncrement&lt;br /&gt;
FASTCALL XDCS_fCompleteRemove&lt;br /&gt;
FASTCALL XDCS_fCreateBufferEvents&lt;br /&gt;
FASTCALL XDCS_fDownloadFile&lt;br /&gt;
FASTCALL XDCS_fRandomBlock&lt;br /&gt;
FASTCALL XDCS_fVerifyFile&lt;br /&gt;
FASTCALL XID_fCloseDevice&lt;br /&gt;
FASTCALL XID_fCloseEndpoints&lt;br /&gt;
FASTCALL XID_fFindNode&lt;br /&gt;
FASTCALL XID_fOpenDevice&lt;br /&gt;
FASTCALL XID_fOpenEndpoints&lt;br /&gt;
FASTCALL XID_fOutputComplete1&lt;br /&gt;
FASTCALL XID_fRemoveDeviceComplete&lt;br /&gt;
FASTCALL XID_fSendDeviceReport&lt;br /&gt;
FASTCALL XID_ProcessGamepadData&lt;br /&gt;
FASTCALL XID_ProcessIRRemoteData&lt;br /&gt;
FASTCALL XID_ProcessNewKeyboardData&lt;br /&gt;
FASTCALL XProfpDpcDispatchNotifyCallback&lt;br /&gt;
FASTCALL XProfpThreadSwitchNotifyCallback&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=User:Haxar&amp;diff=5556</id>
		<title>User:Haxar</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=User:Haxar&amp;diff=5556"/>
				<updated>2017-05-30T00:41:03Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: Created page with &amp;quot;=== GitHub ===  * [https://github.com/haxar/cxbx-shogun Cxbx w/ Wine support.]  === R&amp;amp;D ===  * fastcall routines from rgrep&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== GitHub ===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/haxar/cxbx-shogun Cxbx w/ Wine support.]&lt;br /&gt;
&lt;br /&gt;
=== R&amp;amp;D ===&lt;br /&gt;
&lt;br /&gt;
* [[User:Haxar/fastcall|fastcall routines from rgrep]]&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=Main_Page&amp;diff=5555</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=Main_Page&amp;diff=5555"/>
				<updated>2017-05-30T00:04:11Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: /* System Software */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{:Main Page/Header}}&lt;br /&gt;
&lt;br /&gt;
== Hardware ==&lt;br /&gt;
&lt;br /&gt;
* [[Chihiro]]&lt;br /&gt;
* [[Xbox]]&lt;br /&gt;
&lt;br /&gt;
* [[Hardware Revisions]]&lt;br /&gt;
* [[Motherboard]]&lt;br /&gt;
* [[CPU|CPU (Custom Pentium 3 733 MHz)]]&lt;br /&gt;
* [[NV2A]]&lt;br /&gt;
** [[NV2A/Vertex attributes]]&lt;br /&gt;
** [[NV2A/Fixed Function Pipeline]]&lt;br /&gt;
** [[NV2A/Vertex Shader]]&lt;br /&gt;
** [[NV2A/Pixel Combiner]]&lt;br /&gt;
** [[NV2A/Surface Formats]]&lt;br /&gt;
* [[DSP]]&lt;br /&gt;
* [[Memory]]&lt;br /&gt;
* [[Flash]]&lt;br /&gt;
* [[MCPX]]&lt;br /&gt;
* [[EEPROM]]&lt;br /&gt;
* [[SMC]]&lt;br /&gt;
* [[Video Encoder]]&lt;br /&gt;
* [[NVNet|Network Controller (NVNet)]]&lt;br /&gt;
* [[DVD Drive]]&lt;br /&gt;
** [[Xbox Game Disc]]&lt;br /&gt;
* [[Hard Drive]]&lt;br /&gt;
* [[USB]]&lt;br /&gt;
** [[Xbox Input Devices]]&lt;br /&gt;
* [[Power Supply]]&lt;br /&gt;
&lt;br /&gt;
== System Software ==&lt;br /&gt;
* [[MCPX ROM]]&lt;br /&gt;
* [[BIOS]] / [[Kernel]]&lt;br /&gt;
** [[Boot Process]]&lt;br /&gt;
** [[XBE]] (Executable file format)&lt;br /&gt;
* [[FATX]] (Filesystem)&lt;br /&gt;
* [[Dashboard]]&lt;br /&gt;
* [[Exploits]]&lt;br /&gt;
&lt;br /&gt;
== Development Kits and Tools ==&lt;br /&gt;
* [https://github.com/xqemu/nxdk NXDK (New Xbox Development Kit)]&lt;br /&gt;
* [[OpenXDK]]&lt;br /&gt;
* [[Microsoft XDK]]&lt;br /&gt;
** [[Xbox Debug Monitor]]&lt;br /&gt;
** [[Xbox Neighborhood]]&lt;br /&gt;
&lt;br /&gt;
== Games ==&lt;br /&gt;
* [[:Category:Games|Games]]&lt;br /&gt;
* [[Engine List]]&lt;br /&gt;
&lt;br /&gt;
== Emulation ==&lt;br /&gt;
* [[Emulators]]&lt;br /&gt;
&lt;br /&gt;
== Other ==&lt;br /&gt;
* [[Network]]&lt;br /&gt;
* Find random stuff in [[Resources]]&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=XBE&amp;diff=5554</id>
		<title>XBE</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=XBE&amp;diff=5554"/>
				<updated>2017-05-30T00:01:29Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: Created page with &amp;quot;=== .text ===  The .text section contains all x86 subroutines to be executed by the processor.  === .rdata ===  The .rdata section contains the Kernel|kernel thunk t...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== .text ===&lt;br /&gt;
&lt;br /&gt;
The .text section contains all x86 subroutines to be executed by the [[CPU|processor]].&lt;br /&gt;
&lt;br /&gt;
=== .rdata ===&lt;br /&gt;
&lt;br /&gt;
The .rdata section contains the [[Kernel|kernel thunk table]]. The ordinals in the table are to be resolved to the kernel's actual calling routine, when loaded.&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=Kernel&amp;diff=5553</id>
		<title>Kernel</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=Kernel&amp;diff=5553"/>
				<updated>2017-05-29T23:52:42Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: Undo revision 5551: whoops... should go to the XBE page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Xbox kernel is called xboxkrnl.exe. It is closely related to the Windows NT [[Wikipedia:Ntoskrnl.exe|ntoskrnl.exe]].&lt;br /&gt;
Its image base address is always 0x80010000.&lt;br /&gt;
&lt;br /&gt;
== Header modifications ==&lt;br /&gt;
&lt;br /&gt;
xboxkrnl.exe is a mostly standard exe file.&lt;br /&gt;
However, the MS-DOS header was patched to contain Xbox specific data in the reserved 20 byte block starting at offset 40:&lt;br /&gt;
&lt;br /&gt;
{| class=wikitable&lt;br /&gt;
! Offset !! Meaning&lt;br /&gt;
|-&lt;br /&gt;
|40 || Size of uninitialized portion of the .data section&lt;br /&gt;
|-&lt;br /&gt;
|44 || Size of initialized portion of the .data section&lt;br /&gt;
|-&lt;br /&gt;
|48 || Memory address of initialized portion of the .data section (usually in [[Flash]]). &amp;lt;br&amp;gt; Used to re-initialize the data section pointed to by the next field. &amp;lt;br&amp;gt; Note that the pointer might be invalid during normal execution as the Flash might not be mapped at all times.&lt;br /&gt;
|-&lt;br /&gt;
|52 || Memory address where the .data section is stored (usually the same as in the section header + image base).&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Sections ==&lt;br /&gt;
&lt;br /&gt;
All sections are identity mapped (meaning file offsets and offsets in RAM match). This is because the kernel is not loaded through a traditional PE / exe loader, but just unpacked into memory.&lt;br /&gt;
&lt;br /&gt;
=== .text ===&lt;br /&gt;
&lt;br /&gt;
The .text section contains the kernel exports.&lt;br /&gt;
&lt;br /&gt;
=== .data ===&lt;br /&gt;
&lt;br /&gt;
The .data section stores initialized and uninitialized data.&lt;br /&gt;
A copy of the initialized portion of this section is usually stored in the [[BIOS]].&lt;br /&gt;
&lt;br /&gt;
=== STICKY ===&lt;br /&gt;
&lt;br /&gt;
Stores variables which must be preserved across a quick-reboot.&lt;br /&gt;
&lt;br /&gt;
=== IDEXPRDT ===&lt;br /&gt;
&lt;br /&gt;
A Physical Region Descriptor Table (PRDT) for the IDE bus. This section serves as a memory allocation only, it does not have to be initialized when loading the kernel{{citation needed}}.&lt;br /&gt;
&lt;br /&gt;
=== INIT ===&lt;br /&gt;
&lt;br /&gt;
This section is always the last one. It contains the entrypoint of the kernel.&lt;br /&gt;
Later kernels{{FIXME|reason=Which revision?}} will discard this section after initialization.&lt;br /&gt;
&lt;br /&gt;
== Kernel exports ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Kernel exports&lt;br /&gt;
|-&lt;br /&gt;
!Name&lt;br /&gt;
!Ordinal&lt;br /&gt;
!Calling Convention&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/AvGetSavedDataAddress]]&lt;br /&gt;
|1&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/AvSendTVEncoderOption]]&lt;br /&gt;
|2&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/AvSetDisplayMode]]&lt;br /&gt;
|3&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/AvSetSavedDataAddress]]&lt;br /&gt;
|4&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgBreakPoint]]&lt;br /&gt;
|5&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgBreakPointWithStatus]]&lt;br /&gt;
|6&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgLoadImageSymbols]]&lt;br /&gt;
|7&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgPrint]]&lt;br /&gt;
|8&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalReadSMCTrayState]]&lt;br /&gt;
|9&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgPrompt]]&lt;br /&gt;
|10&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgUnLoadImageSymbols]]&lt;br /&gt;
|11&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExAcquireReadWriteLockExclusive]]&lt;br /&gt;
|12&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExAcquireReadWriteLockShared]]&lt;br /&gt;
|13&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExAllocatePool]]&lt;br /&gt;
|14&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExAllocatePoolWithTag]]&lt;br /&gt;
|15&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExEventObjectType]]&lt;br /&gt;
|16&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExFreePool]]&lt;br /&gt;
|17&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExInitializeReadWriteLock]]&lt;br /&gt;
|18&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExInterlockedAddLargeInteger]]&lt;br /&gt;
|19&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExInterlockedAddLargeStatistic]]&lt;br /&gt;
|20&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExInterlockedCompareExchange64]]&lt;br /&gt;
|21&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExMutantObjectType]]&lt;br /&gt;
|22&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExQueryPoolBlockSize]]&lt;br /&gt;
|23&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExQueryNonVolatileSetting]]&lt;br /&gt;
|24&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExReadWriteRefurbInfo]]&lt;br /&gt;
|25&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExRaiseException]]&lt;br /&gt;
|26&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExRaiseStatus]]&lt;br /&gt;
|27&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExReleaseReadWriteLock]]&lt;br /&gt;
|28&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExSaveNonVolatileSetting]]&lt;br /&gt;
|29&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExSemaphoreObjectType]]&lt;br /&gt;
|30&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExTimerObjectType]]&lt;br /&gt;
|31&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExfInterlockedInsertHeadList]]&lt;br /&gt;
|32&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExfInterlockedInsertTailList]]&lt;br /&gt;
|33&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExfInterlockedRemoveHeadList]]&lt;br /&gt;
|34&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/FscGetCacheSize]]&lt;br /&gt;
|35&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/FscInvalidateIdleBlocks]]&lt;br /&gt;
|36&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/FscSetCacheSize]]&lt;br /&gt;
|37&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalClearSoftwareInterrupt]]&lt;br /&gt;
|38&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalDisableSystemInterrupt]]&lt;br /&gt;
|39&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalDiskCachePartitionCount]]&lt;br /&gt;
|40&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalDiskModelNumber]]&lt;br /&gt;
|41&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalDiskSerialNumber]]&lt;br /&gt;
|42&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalEnableSystemInterrupt]]&lt;br /&gt;
|43&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalGetInterruptVector]]&lt;br /&gt;
|44&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalReadSMBusValue]]&lt;br /&gt;
|45&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalReadWritePCISpace]]&lt;br /&gt;
|46&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalRegisterShutdownNotification]]&lt;br /&gt;
|47&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalRequestSoftwareInterrupt]]&lt;br /&gt;
|48&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalReturnToFirmware]]&lt;br /&gt;
|49&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalWriteSMBusValue]]&lt;br /&gt;
|50&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedCompareExchange]]&lt;br /&gt;
|51&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedDecrement]]&lt;br /&gt;
|52&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedIncrement]]&lt;br /&gt;
|53&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedExchange]]&lt;br /&gt;
|54&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedExchangeAdd]]&lt;br /&gt;
|55&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedFlushSList]]&lt;br /&gt;
|56&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedPopEntrySList]]&lt;br /&gt;
|57&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedPushEntrySList]]&lt;br /&gt;
|58&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoAllocateIrp]]&lt;br /&gt;
|59&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoBuildAsynchronousFsdRequest]]&lt;br /&gt;
|60&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoBuildDeviceIoControlRequest]]&lt;br /&gt;
|61&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoBuildSynchronousFsdRequest]]&lt;br /&gt;
|62&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoCheckShareAccess]]&lt;br /&gt;
|63&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoCompletionObjectType]]&lt;br /&gt;
|64&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoCreateDevice]]&lt;br /&gt;
|65&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoCreateFile]]&lt;br /&gt;
|66&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoCreateSymbolicLink]]&lt;br /&gt;
|67&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoDeleteDevice]]&lt;br /&gt;
|68&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoDeleteSymbolicLink]]&lt;br /&gt;
|69&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoDeviceObjectType]]&lt;br /&gt;
|70&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoFileObjectType]]&lt;br /&gt;
|71&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoFreeIrp]]&lt;br /&gt;
|72&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoInitializeIrp]]&lt;br /&gt;
|73&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoInvalidDeviceRequest]]&lt;br /&gt;
|74&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoQueryFileInformation]]&lt;br /&gt;
|75&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoQueryVolumeInformation]]&lt;br /&gt;
|76&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoQueueThreadIrp]]&lt;br /&gt;
|77&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoRemoveShareAccess]]&lt;br /&gt;
|78&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoSetIoCompletion]]&lt;br /&gt;
|79&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoSetShareAccess]]&lt;br /&gt;
|80&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoStartNextPacket]]&lt;br /&gt;
|81&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoStartNextPacketByKey]]&lt;br /&gt;
|82&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoStartPacket]]&lt;br /&gt;
|83&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoSynchronousDeviceIoControlRequest]]&lt;br /&gt;
|84&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoSynchronousFsdRequest]]&lt;br /&gt;
|85&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IofCallDriver]]&lt;br /&gt;
|86&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IofCompleteRequest]]&lt;br /&gt;
|87&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KdDebuggerEnabled]]&lt;br /&gt;
|88&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KdDebuggerNotPresent]]&lt;br /&gt;
|89&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoDismountVolume]]&lt;br /&gt;
|90&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoDismountVolumeByName]]&lt;br /&gt;
|91&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeAlertResumeThread]]&lt;br /&gt;
|92&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeAlertThread]]&lt;br /&gt;
|93&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeBoostPriorityThread]]&lt;br /&gt;
|94&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeBugCheck]]&lt;br /&gt;
|95&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeBugCheckEx]]&lt;br /&gt;
|96&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeCancelTimer]]&lt;br /&gt;
|97&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeConnectInterrupt]]&lt;br /&gt;
|98&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeDelayExecutionThread]]&lt;br /&gt;
|99&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeDisconnectInterrupt]]&lt;br /&gt;
|100&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeEnterCriticalRegion]]&lt;br /&gt;
|101&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmGlobalData]]&lt;br /&gt;
|102&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeGetCurrentIrql]]&lt;br /&gt;
|103&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeGetCurrentThread]]&lt;br /&gt;
|104&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeApc]]&lt;br /&gt;
|105&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeDeviceQueue]]&lt;br /&gt;
|106&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeDpc]]&lt;br /&gt;
|107&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeEvent]]&lt;br /&gt;
|108&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeInterrupt]]&lt;br /&gt;
|109&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeMutant]]&lt;br /&gt;
|110&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeQueue]]&lt;br /&gt;
|111&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeSemaphore]]&lt;br /&gt;
|112&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeTimerEx]]&lt;br /&gt;
|113&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertByKeyDeviceQueue]]&lt;br /&gt;
|114&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertDeviceQueue]]&lt;br /&gt;
|115&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertHeadQueue]]&lt;br /&gt;
|116&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertQueue]]&lt;br /&gt;
|117&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertQueueApc]]&lt;br /&gt;
|118&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertQueueDpc]]&lt;br /&gt;
|119&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInterruptTime]]&lt;br /&gt;
|120&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeIsExecutingDpc]]&lt;br /&gt;
|121&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeLeaveCriticalRegion]]&lt;br /&gt;
|122&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KePulseEvent]]&lt;br /&gt;
|123&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeQueryBasePriorityThread]]&lt;br /&gt;
|124&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeQueryInterruptTime]]&lt;br /&gt;
|125&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeQueryPerformanceCounter]]&lt;br /&gt;
|126&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeQueryPerformanceFrequency]]&lt;br /&gt;
|127&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeQuerySystemTime]]&lt;br /&gt;
|128&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRaiseIrqlToDpcLevel]]&lt;br /&gt;
|129&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRaiseIrqlToSynchLevel]]&lt;br /&gt;
|130&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeReleaseMutant]]&lt;br /&gt;
|131&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeReleaseSemaphore]]&lt;br /&gt;
|132&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRemoveByKeyDeviceQueue]]&lt;br /&gt;
|133&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRemoveDeviceQueue]]&lt;br /&gt;
|134&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRemoveEntryDeviceQueue]]&lt;br /&gt;
|135&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRemoveQueue]]&lt;br /&gt;
|136&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRemoveQueueDpc]]&lt;br /&gt;
|137&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeResetEvent]]&lt;br /&gt;
|138&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRestoreFloatingPointState]]&lt;br /&gt;
|139&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeResumeThread]]&lt;br /&gt;
|140&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRundownQueue]]&lt;br /&gt;
|141&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSaveFloatingPointState]]&lt;br /&gt;
|142&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetBasePriorityThread]]&lt;br /&gt;
|143&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetDisableBoostThread]]&lt;br /&gt;
|144&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetEvent]]&lt;br /&gt;
|145&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetEventBoostPriority]]&lt;br /&gt;
|146&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetPriorityProcess]]&lt;br /&gt;
|147&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetPriorityThread]]&lt;br /&gt;
|148&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetTimer]]&lt;br /&gt;
|149&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetTimerEx]]&lt;br /&gt;
|150&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeStallExecutionProcessor]]&lt;br /&gt;
|151&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSuspendThread]]&lt;br /&gt;
|152&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSynchronizeExecution]]&lt;br /&gt;
|153&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSystemTime]]&lt;br /&gt;
|154&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeTestAlertThread]]&lt;br /&gt;
|155&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeTickCount]]&lt;br /&gt;
|156&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeTimeIncrement]]&lt;br /&gt;
|157&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeWaitForMultipleObjects]]&lt;br /&gt;
|158&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeWaitForSingleObject]]&lt;br /&gt;
|159&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KfRaiseIrql]]&lt;br /&gt;
|160&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KfLowerIrql]]&lt;br /&gt;
|161&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KiBugCheckData]]&lt;br /&gt;
|162&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KiUnlockDispatcherDatabase]]&lt;br /&gt;
|163&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/LaunchDataPage]]&lt;br /&gt;
|164&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmAllocateContiguousMemory]]&lt;br /&gt;
|165&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmAllocateContiguousMemoryEx]]&lt;br /&gt;
|166&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmAllocateSystemMemory]]&lt;br /&gt;
|167&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmClaimGpuInstanceMemory]]&lt;br /&gt;
|168&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmCreateKernelStack]]&lt;br /&gt;
|169&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDeleteKernelStack]]&lt;br /&gt;
|170&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmFreeContiguousMemory]]&lt;br /&gt;
|171&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmFreeSystemMemory]]&lt;br /&gt;
|172&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmGetPhysicalAddress]]&lt;br /&gt;
|173&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmIsAddressValid]]&lt;br /&gt;
|174&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmLockUnlockBufferPages]]&lt;br /&gt;
|175&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmLockUnlockPhysicalPage]]&lt;br /&gt;
|176&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmMapIoSpace]]&lt;br /&gt;
|177&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmPersistContiguousMemory]]&lt;br /&gt;
|178&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmQueryAddressProtect]]&lt;br /&gt;
|179&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmQueryAllocationSize]]&lt;br /&gt;
|180&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmQueryStatistics]]&lt;br /&gt;
|181&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmSetAddressProtect]]&lt;br /&gt;
|182&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmUnmapIoSpace]]&lt;br /&gt;
|183&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtAllocateVirtualMemory]]&lt;br /&gt;
|184&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCancelTimer]]&lt;br /&gt;
|185&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtClearEvent]]&lt;br /&gt;
|186&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtClose]]&lt;br /&gt;
|187&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateDirectoryObject]]&lt;br /&gt;
|188&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateEvent]]&lt;br /&gt;
|189&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateFile]]&lt;br /&gt;
|190&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateIoCompletion]]&lt;br /&gt;
|191&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateMutant]]&lt;br /&gt;
|192&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateSemaphore]]&lt;br /&gt;
|193&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateTimer]]&lt;br /&gt;
|194&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtDeleteFile]]&lt;br /&gt;
|195&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtDeviceIoControlFile]]&lt;br /&gt;
|196&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtDuplicateObject]]&lt;br /&gt;
|197&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtFlushBuffersFile]]&lt;br /&gt;
|198&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtFreeVirtualMemory]]&lt;br /&gt;
|199&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtFsControlFile]]&lt;br /&gt;
|200&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtOpenDirectoryObject]]&lt;br /&gt;
|201&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtOpenFile]]&lt;br /&gt;
|202&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtOpenSymbolicLinkObject]]&lt;br /&gt;
|203&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtProtectVirtualMemory]]&lt;br /&gt;
|204&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtPulseEvent]]&lt;br /&gt;
|205&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueueApcThread]]&lt;br /&gt;
|206&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryDirectoryFile]]&lt;br /&gt;
|207&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryDirectoryObject]]&lt;br /&gt;
|208&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryEvent]]&lt;br /&gt;
|209&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryFullAttributesFile]]&lt;br /&gt;
|210&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryInformationFile]]&lt;br /&gt;
|211&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryIoCompletion]]&lt;br /&gt;
|212&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryMutant]]&lt;br /&gt;
|213&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQuerySemaphore]]&lt;br /&gt;
|214&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQuerySymbolicLinkObject]]&lt;br /&gt;
|215&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryTimer]]&lt;br /&gt;
|216&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryVirtualMemory]]&lt;br /&gt;
|217&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryVolumeInformationFile]]&lt;br /&gt;
|218&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtReadFile]]&lt;br /&gt;
|219&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtReadFileScatter]]&lt;br /&gt;
|220&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtReleaseMutant]]&lt;br /&gt;
|221&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtReleaseSemaphore]]&lt;br /&gt;
|222&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtRemoveIoCompletion]]&lt;br /&gt;
|223&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtResumeThread]]&lt;br /&gt;
|224&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSetEvent]]&lt;br /&gt;
|225&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSetInformationFile]]&lt;br /&gt;
|226&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSetIoCompletion]]&lt;br /&gt;
|227&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSetSystemTime]]&lt;br /&gt;
|228&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSetTimerEx]]&lt;br /&gt;
|229&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSignalAndWaitForSingleObjectEx]]&lt;br /&gt;
|230&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSuspendThread]]&lt;br /&gt;
|231&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtUserIoApcDispatcher]]&lt;br /&gt;
|232&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtWaitForSingleObject]]&lt;br /&gt;
|233&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtWaitForSingleObjectEx]]&lt;br /&gt;
|234&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtWaitForMultipleObjectsEx]]&lt;br /&gt;
|235&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtWriteFile]]&lt;br /&gt;
|236&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtWriteFileGather]]&lt;br /&gt;
|237&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtYieldExecution]]&lt;br /&gt;
|238&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObCreateObject]]&lt;br /&gt;
|239&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObDirectoryObjectType]]&lt;br /&gt;
|240&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObInsertObject]]&lt;br /&gt;
|241&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObMakeTemporaryObject]]&lt;br /&gt;
|242&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObOpenObjectByName]]&lt;br /&gt;
|243&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObOpenObjectByPointer]]&lt;br /&gt;
|244&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObpObjectHandleTable]]&lt;br /&gt;
|245&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObReferenceObjectByHandle]]&lt;br /&gt;
|246&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObReferenceObjectByName]]&lt;br /&gt;
|247&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObReferenceObjectByPointer]]&lt;br /&gt;
|248&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObSymbolicLinkObjectType]]&lt;br /&gt;
|249&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObfDereferenceObject]]&lt;br /&gt;
|250&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObfReferenceObject]]&lt;br /&gt;
|251&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PhyGetLinkState]]&lt;br /&gt;
|252&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PhyInitialize]]&lt;br /&gt;
|253&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsCreateSystemThread]]&lt;br /&gt;
|254&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsCreateSystemThreadEx]]&lt;br /&gt;
|255&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsQueryStatistics]]&lt;br /&gt;
|256&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsSetCreateThreadNotifyRoutine]]&lt;br /&gt;
|257&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsTerminateSystemThread]]&lt;br /&gt;
|258&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsThreadObjectType]]&lt;br /&gt;
|259&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlAnsiStringToUnicodeString]]&lt;br /&gt;
|260&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlAppendStringToString]]&lt;br /&gt;
|261&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlAppendUnicodeStringToString]]&lt;br /&gt;
|262&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlAppendUnicodeToString]]&lt;br /&gt;
|263&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlAssert]]&lt;br /&gt;
|264&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCaptureContext]]&lt;br /&gt;
|265&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCaptureStackBackTrace]]&lt;br /&gt;
|266&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCharToInteger]]&lt;br /&gt;
|267&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCompareMemory]]&lt;br /&gt;
|268&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCompareMemoryUlong]]&lt;br /&gt;
|269&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCompareString]]&lt;br /&gt;
|270&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCompareUnicodeString]]&lt;br /&gt;
|271&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCopyString]]&lt;br /&gt;
|272&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCopyUnicodeString]]&lt;br /&gt;
|273&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCreateUnicodeString]]&lt;br /&gt;
|274&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlDowncaseUnicodeChar]]&lt;br /&gt;
|275&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlDowncaseUnicodeString]]&lt;br /&gt;
|276&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlEnterCriticalSection]]&lt;br /&gt;
|277&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlEnterCriticalSectionAndRegion]]&lt;br /&gt;
|278&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlEqualString]]&lt;br /&gt;
|279&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlEqualUnicodeString]]&lt;br /&gt;
|280&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlExtendedIntegerMultiply]]&lt;br /&gt;
|281&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlExtendedLargeIntegerDivide]]&lt;br /&gt;
|282&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlExtendedMagicDivide]]&lt;br /&gt;
|283&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlFillMemory]]&lt;br /&gt;
|284&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlFillMemoryUlong]]&lt;br /&gt;
|285&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlFreeAnsiString]]&lt;br /&gt;
|286&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlFreeUnicodeString]]&lt;br /&gt;
|287&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlGetCallersAddress]]&lt;br /&gt;
|288&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlInitAnsiString]]&lt;br /&gt;
|289&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlInitUnicodeString]]&lt;br /&gt;
|290&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlInitializeCriticalSection]]&lt;br /&gt;
|291&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlIntegerToChar]]&lt;br /&gt;
|292&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlIntegerToUnicodeString]]&lt;br /&gt;
|293&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlLeaveCriticalSection]]&lt;br /&gt;
|294&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlLeaveCriticalSectionAndRegion]]&lt;br /&gt;
|295&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlLowerChar]]&lt;br /&gt;
|296&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlMapGenericMask]]&lt;br /&gt;
|297&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlMoveMemory]]&lt;br /&gt;
|298&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlMultiByteToUnicodeN]]&lt;br /&gt;
|299&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlMultiByteToUnicodeSize]]&lt;br /&gt;
|300&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlNtStatusToDosError]]&lt;br /&gt;
|301&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlRaiseException]]&lt;br /&gt;
|302&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlRaiseStatus]]&lt;br /&gt;
|303&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlTimeFieldsToTime]]&lt;br /&gt;
|304&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlTimeToTimeFields]]&lt;br /&gt;
|305&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlTryEnterCriticalSection]]&lt;br /&gt;
|306&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUlongByteSwap]]&lt;br /&gt;
|307&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUnicodeStringToAnsiString]]&lt;br /&gt;
|308&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUnicodeStringToInteger]]&lt;br /&gt;
|309&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUnicodeToMultiByteN]]&lt;br /&gt;
|310&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUnicodeToMultiByteSize]]&lt;br /&gt;
|311&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUnwind]]&lt;br /&gt;
|312&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUpcaseUnicodeChar]]&lt;br /&gt;
|313&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUpcaseUnicodeString]]&lt;br /&gt;
|314&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUpcaseUnicodeToMultiByteN]]&lt;br /&gt;
|315&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUpperChar]]&lt;br /&gt;
|316&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUpperString]]&lt;br /&gt;
|317&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUshortByteSwap]]&lt;br /&gt;
|318&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlWalkFrameChain]]&lt;br /&gt;
|319&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlZeroMemory]]&lt;br /&gt;
|320&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxEEPROMKey]]&lt;br /&gt;
|321&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxHardwareInfo]]&lt;br /&gt;
|322&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxHDKey]]&lt;br /&gt;
|323&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxKrnlVersion]]&lt;br /&gt;
|324&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxSignatureKey]]&lt;br /&gt;
|325&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XeImageFileName]]&lt;br /&gt;
|326&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XeLoadSection]]&lt;br /&gt;
|327&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XeUnloadSection]]&lt;br /&gt;
|328&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/READ_PORT_BUFFER_UCHAR]]&lt;br /&gt;
|329&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/READ_PORT_BUFFER_USHORT]]&lt;br /&gt;
|330&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/READ_PORT_BUFFER_ULONG]]&lt;br /&gt;
|331&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/WRITE_PORT_BUFFER_UCHAR]]&lt;br /&gt;
|332&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/WRITE_PORT_BUFFER_USHORT]]&lt;br /&gt;
|333&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/WRITE_PORT_BUFFER_ULONG]]&lt;br /&gt;
|334&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcSHAInit]]&lt;br /&gt;
|335&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcSHAUpdate]]&lt;br /&gt;
|336&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcSHAFinal]]&lt;br /&gt;
|337&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcRC4Key]]&lt;br /&gt;
|338&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcRC4Crypt]]&lt;br /&gt;
|339&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcHMAC]]&lt;br /&gt;
|340&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcPKEncPublic]]&lt;br /&gt;
|341&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcPKDecPrivate]]&lt;br /&gt;
|342&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcPKGetKeyLen]]&lt;br /&gt;
|343&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcVerifyPKCS1Signature]]&lt;br /&gt;
|344&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcModExp]]&lt;br /&gt;
|345&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcDESKeyParity]]&lt;br /&gt;
|346&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcKeyTable]]&lt;br /&gt;
|347&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcBlockCrypt]]&lt;br /&gt;
|348&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcBlockCryptCBC]]&lt;br /&gt;
|349&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcCryptService]]&lt;br /&gt;
|350&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcUpdateCrypto]]&lt;br /&gt;
|351&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlRip]]&lt;br /&gt;
|352&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxLANKey]]&lt;br /&gt;
|353&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxAlternateSignatureKeys]]&lt;br /&gt;
|354&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XePublicKeyData]]&lt;br /&gt;
|355&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalBootSMCVideoMode]]&lt;br /&gt;
|356&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IdexChannelObject]]&lt;br /&gt;
|357&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalIsResetOrShutdownPending]]&lt;br /&gt;
|358&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoMarkIrpMustComplete]]&lt;br /&gt;
|359&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalInitiateShutdown]]&lt;br /&gt;
|360&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlSnprintf]]&lt;br /&gt;
|361&lt;br /&gt;
|stdcall&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlSprintf]]&lt;br /&gt;
|362&lt;br /&gt;
|stdcall&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlVsnprintf]]&lt;br /&gt;
|363&lt;br /&gt;
|stdcall&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlVsprintf]]&lt;br /&gt;
|364&lt;br /&gt;
|stdcall&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalEnableSecureTrayEject]]&lt;br /&gt;
|365&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalWriteSMCScratchRegister]]&lt;br /&gt;
|366&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|367&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|368&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|369&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|370&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|371&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|372&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|373&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDbgAllocateMemory]]&lt;br /&gt;
|374&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDbgFreeMemory]]&lt;br /&gt;
|375&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDbgQueryAvailablePages]]&lt;br /&gt;
|376&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDbgReleaseAddress]]&lt;br /&gt;
|377&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDbgWriteCheck]]&lt;br /&gt;
|378&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
&lt;br /&gt;
[[Hard Drive Files]]&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=Kernel&amp;diff=5552</id>
		<title>Kernel</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=Kernel&amp;diff=5552"/>
				<updated>2017-05-29T23:49:21Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: Added Calling Convention definitions&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Xbox kernel is called xboxkrnl.exe. It is closely related to the Windows NT [[Wikipedia:Ntoskrnl.exe|ntoskrnl.exe]].&lt;br /&gt;
Its image base address is always 0x80010000.&lt;br /&gt;
&lt;br /&gt;
== Header modifications ==&lt;br /&gt;
&lt;br /&gt;
xboxkrnl.exe is a mostly standard exe file.&lt;br /&gt;
However, the MS-DOS header was patched to contain Xbox specific data in the reserved 20 byte block starting at offset 40:&lt;br /&gt;
&lt;br /&gt;
{| class=wikitable&lt;br /&gt;
! Offset !! Meaning&lt;br /&gt;
|-&lt;br /&gt;
|40 || Size of uninitialized portion of the .data section&lt;br /&gt;
|-&lt;br /&gt;
|44 || Size of initialized portion of the .data section&lt;br /&gt;
|-&lt;br /&gt;
|48 || Memory address of initialized portion of the .data section (usually in [[Flash]]). &amp;lt;br&amp;gt; Used to re-initialize the data section pointed to by the next field. &amp;lt;br&amp;gt; Note that the pointer might be invalid during normal execution as the Flash might not be mapped at all times.&lt;br /&gt;
|-&lt;br /&gt;
|52 || Memory address where the .data section is stored (usually the same as in the section header + image base).&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Sections ==&lt;br /&gt;
&lt;br /&gt;
All sections are identity mapped (meaning file offsets and offsets in RAM match). This is because the kernel is not loaded through a traditional PE / exe loader, but just unpacked into memory.&lt;br /&gt;
&lt;br /&gt;
=== .text ===&lt;br /&gt;
&lt;br /&gt;
The .text section contains all x86 subroutines to be executed by the processor.&lt;br /&gt;
&lt;br /&gt;
=== .rdata ===&lt;br /&gt;
&lt;br /&gt;
The .rdata section contains the kernel thunk table. The ordinals in the table are to be resolved to the kernel's actual calling routine, when loaded.&lt;br /&gt;
&lt;br /&gt;
=== .data ===&lt;br /&gt;
&lt;br /&gt;
The .data section stores initialized and uninitialized data.&lt;br /&gt;
A copy of the initialized portion of this section is usually stored in the [[BIOS]].&lt;br /&gt;
&lt;br /&gt;
=== STICKY ===&lt;br /&gt;
&lt;br /&gt;
Stores variables which must be preserved across a quick-reboot.&lt;br /&gt;
&lt;br /&gt;
=== IDEXPRDT ===&lt;br /&gt;
&lt;br /&gt;
A Physical Region Descriptor Table (PRDT) for the IDE bus. This section serves as a memory allocation only, it does not have to be initialized when loading the kernel{{citation needed}}.&lt;br /&gt;
&lt;br /&gt;
=== INIT ===&lt;br /&gt;
&lt;br /&gt;
This section is always the last one. It contains the entrypoint of the kernel.&lt;br /&gt;
Later kernels{{FIXME|reason=Which revision?}} will discard this section after initialization.&lt;br /&gt;
&lt;br /&gt;
== Kernel exports ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Kernel exports&lt;br /&gt;
|-&lt;br /&gt;
!Name&lt;br /&gt;
!Ordinal&lt;br /&gt;
!Calling Convention&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/AvGetSavedDataAddress]]&lt;br /&gt;
|1&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/AvSendTVEncoderOption]]&lt;br /&gt;
|2&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/AvSetDisplayMode]]&lt;br /&gt;
|3&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/AvSetSavedDataAddress]]&lt;br /&gt;
|4&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgBreakPoint]]&lt;br /&gt;
|5&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgBreakPointWithStatus]]&lt;br /&gt;
|6&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgLoadImageSymbols]]&lt;br /&gt;
|7&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgPrint]]&lt;br /&gt;
|8&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalReadSMCTrayState]]&lt;br /&gt;
|9&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgPrompt]]&lt;br /&gt;
|10&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgUnLoadImageSymbols]]&lt;br /&gt;
|11&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExAcquireReadWriteLockExclusive]]&lt;br /&gt;
|12&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExAcquireReadWriteLockShared]]&lt;br /&gt;
|13&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExAllocatePool]]&lt;br /&gt;
|14&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExAllocatePoolWithTag]]&lt;br /&gt;
|15&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExEventObjectType]]&lt;br /&gt;
|16&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExFreePool]]&lt;br /&gt;
|17&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExInitializeReadWriteLock]]&lt;br /&gt;
|18&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExInterlockedAddLargeInteger]]&lt;br /&gt;
|19&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExInterlockedAddLargeStatistic]]&lt;br /&gt;
|20&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExInterlockedCompareExchange64]]&lt;br /&gt;
|21&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExMutantObjectType]]&lt;br /&gt;
|22&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExQueryPoolBlockSize]]&lt;br /&gt;
|23&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExQueryNonVolatileSetting]]&lt;br /&gt;
|24&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExReadWriteRefurbInfo]]&lt;br /&gt;
|25&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExRaiseException]]&lt;br /&gt;
|26&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExRaiseStatus]]&lt;br /&gt;
|27&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExReleaseReadWriteLock]]&lt;br /&gt;
|28&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExSaveNonVolatileSetting]]&lt;br /&gt;
|29&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExSemaphoreObjectType]]&lt;br /&gt;
|30&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExTimerObjectType]]&lt;br /&gt;
|31&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExfInterlockedInsertHeadList]]&lt;br /&gt;
|32&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExfInterlockedInsertTailList]]&lt;br /&gt;
|33&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExfInterlockedRemoveHeadList]]&lt;br /&gt;
|34&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/FscGetCacheSize]]&lt;br /&gt;
|35&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/FscInvalidateIdleBlocks]]&lt;br /&gt;
|36&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/FscSetCacheSize]]&lt;br /&gt;
|37&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalClearSoftwareInterrupt]]&lt;br /&gt;
|38&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalDisableSystemInterrupt]]&lt;br /&gt;
|39&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalDiskCachePartitionCount]]&lt;br /&gt;
|40&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalDiskModelNumber]]&lt;br /&gt;
|41&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalDiskSerialNumber]]&lt;br /&gt;
|42&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalEnableSystemInterrupt]]&lt;br /&gt;
|43&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalGetInterruptVector]]&lt;br /&gt;
|44&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalReadSMBusValue]]&lt;br /&gt;
|45&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalReadWritePCISpace]]&lt;br /&gt;
|46&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalRegisterShutdownNotification]]&lt;br /&gt;
|47&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalRequestSoftwareInterrupt]]&lt;br /&gt;
|48&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalReturnToFirmware]]&lt;br /&gt;
|49&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalWriteSMBusValue]]&lt;br /&gt;
|50&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedCompareExchange]]&lt;br /&gt;
|51&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedDecrement]]&lt;br /&gt;
|52&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedIncrement]]&lt;br /&gt;
|53&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedExchange]]&lt;br /&gt;
|54&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedExchangeAdd]]&lt;br /&gt;
|55&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedFlushSList]]&lt;br /&gt;
|56&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedPopEntrySList]]&lt;br /&gt;
|57&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedPushEntrySList]]&lt;br /&gt;
|58&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoAllocateIrp]]&lt;br /&gt;
|59&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoBuildAsynchronousFsdRequest]]&lt;br /&gt;
|60&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoBuildDeviceIoControlRequest]]&lt;br /&gt;
|61&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoBuildSynchronousFsdRequest]]&lt;br /&gt;
|62&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoCheckShareAccess]]&lt;br /&gt;
|63&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoCompletionObjectType]]&lt;br /&gt;
|64&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoCreateDevice]]&lt;br /&gt;
|65&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoCreateFile]]&lt;br /&gt;
|66&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoCreateSymbolicLink]]&lt;br /&gt;
|67&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoDeleteDevice]]&lt;br /&gt;
|68&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoDeleteSymbolicLink]]&lt;br /&gt;
|69&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoDeviceObjectType]]&lt;br /&gt;
|70&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoFileObjectType]]&lt;br /&gt;
|71&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoFreeIrp]]&lt;br /&gt;
|72&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoInitializeIrp]]&lt;br /&gt;
|73&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoInvalidDeviceRequest]]&lt;br /&gt;
|74&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoQueryFileInformation]]&lt;br /&gt;
|75&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoQueryVolumeInformation]]&lt;br /&gt;
|76&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoQueueThreadIrp]]&lt;br /&gt;
|77&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoRemoveShareAccess]]&lt;br /&gt;
|78&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoSetIoCompletion]]&lt;br /&gt;
|79&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoSetShareAccess]]&lt;br /&gt;
|80&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoStartNextPacket]]&lt;br /&gt;
|81&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoStartNextPacketByKey]]&lt;br /&gt;
|82&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoStartPacket]]&lt;br /&gt;
|83&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoSynchronousDeviceIoControlRequest]]&lt;br /&gt;
|84&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoSynchronousFsdRequest]]&lt;br /&gt;
|85&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IofCallDriver]]&lt;br /&gt;
|86&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IofCompleteRequest]]&lt;br /&gt;
|87&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KdDebuggerEnabled]]&lt;br /&gt;
|88&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KdDebuggerNotPresent]]&lt;br /&gt;
|89&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoDismountVolume]]&lt;br /&gt;
|90&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoDismountVolumeByName]]&lt;br /&gt;
|91&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeAlertResumeThread]]&lt;br /&gt;
|92&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeAlertThread]]&lt;br /&gt;
|93&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeBoostPriorityThread]]&lt;br /&gt;
|94&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeBugCheck]]&lt;br /&gt;
|95&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeBugCheckEx]]&lt;br /&gt;
|96&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeCancelTimer]]&lt;br /&gt;
|97&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeConnectInterrupt]]&lt;br /&gt;
|98&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeDelayExecutionThread]]&lt;br /&gt;
|99&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeDisconnectInterrupt]]&lt;br /&gt;
|100&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeEnterCriticalRegion]]&lt;br /&gt;
|101&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmGlobalData]]&lt;br /&gt;
|102&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeGetCurrentIrql]]&lt;br /&gt;
|103&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeGetCurrentThread]]&lt;br /&gt;
|104&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeApc]]&lt;br /&gt;
|105&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeDeviceQueue]]&lt;br /&gt;
|106&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeDpc]]&lt;br /&gt;
|107&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeEvent]]&lt;br /&gt;
|108&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeInterrupt]]&lt;br /&gt;
|109&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeMutant]]&lt;br /&gt;
|110&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeQueue]]&lt;br /&gt;
|111&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeSemaphore]]&lt;br /&gt;
|112&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeTimerEx]]&lt;br /&gt;
|113&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertByKeyDeviceQueue]]&lt;br /&gt;
|114&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertDeviceQueue]]&lt;br /&gt;
|115&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertHeadQueue]]&lt;br /&gt;
|116&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertQueue]]&lt;br /&gt;
|117&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertQueueApc]]&lt;br /&gt;
|118&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertQueueDpc]]&lt;br /&gt;
|119&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInterruptTime]]&lt;br /&gt;
|120&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeIsExecutingDpc]]&lt;br /&gt;
|121&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeLeaveCriticalRegion]]&lt;br /&gt;
|122&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KePulseEvent]]&lt;br /&gt;
|123&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeQueryBasePriorityThread]]&lt;br /&gt;
|124&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeQueryInterruptTime]]&lt;br /&gt;
|125&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeQueryPerformanceCounter]]&lt;br /&gt;
|126&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeQueryPerformanceFrequency]]&lt;br /&gt;
|127&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeQuerySystemTime]]&lt;br /&gt;
|128&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRaiseIrqlToDpcLevel]]&lt;br /&gt;
|129&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRaiseIrqlToSynchLevel]]&lt;br /&gt;
|130&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeReleaseMutant]]&lt;br /&gt;
|131&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeReleaseSemaphore]]&lt;br /&gt;
|132&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRemoveByKeyDeviceQueue]]&lt;br /&gt;
|133&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRemoveDeviceQueue]]&lt;br /&gt;
|134&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRemoveEntryDeviceQueue]]&lt;br /&gt;
|135&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRemoveQueue]]&lt;br /&gt;
|136&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRemoveQueueDpc]]&lt;br /&gt;
|137&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeResetEvent]]&lt;br /&gt;
|138&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRestoreFloatingPointState]]&lt;br /&gt;
|139&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeResumeThread]]&lt;br /&gt;
|140&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRundownQueue]]&lt;br /&gt;
|141&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSaveFloatingPointState]]&lt;br /&gt;
|142&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetBasePriorityThread]]&lt;br /&gt;
|143&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetDisableBoostThread]]&lt;br /&gt;
|144&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetEvent]]&lt;br /&gt;
|145&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetEventBoostPriority]]&lt;br /&gt;
|146&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetPriorityProcess]]&lt;br /&gt;
|147&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetPriorityThread]]&lt;br /&gt;
|148&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetTimer]]&lt;br /&gt;
|149&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetTimerEx]]&lt;br /&gt;
|150&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeStallExecutionProcessor]]&lt;br /&gt;
|151&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSuspendThread]]&lt;br /&gt;
|152&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSynchronizeExecution]]&lt;br /&gt;
|153&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSystemTime]]&lt;br /&gt;
|154&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeTestAlertThread]]&lt;br /&gt;
|155&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeTickCount]]&lt;br /&gt;
|156&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeTimeIncrement]]&lt;br /&gt;
|157&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeWaitForMultipleObjects]]&lt;br /&gt;
|158&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeWaitForSingleObject]]&lt;br /&gt;
|159&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KfRaiseIrql]]&lt;br /&gt;
|160&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KfLowerIrql]]&lt;br /&gt;
|161&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KiBugCheckData]]&lt;br /&gt;
|162&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KiUnlockDispatcherDatabase]]&lt;br /&gt;
|163&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/LaunchDataPage]]&lt;br /&gt;
|164&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmAllocateContiguousMemory]]&lt;br /&gt;
|165&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmAllocateContiguousMemoryEx]]&lt;br /&gt;
|166&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmAllocateSystemMemory]]&lt;br /&gt;
|167&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmClaimGpuInstanceMemory]]&lt;br /&gt;
|168&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmCreateKernelStack]]&lt;br /&gt;
|169&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDeleteKernelStack]]&lt;br /&gt;
|170&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmFreeContiguousMemory]]&lt;br /&gt;
|171&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmFreeSystemMemory]]&lt;br /&gt;
|172&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmGetPhysicalAddress]]&lt;br /&gt;
|173&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmIsAddressValid]]&lt;br /&gt;
|174&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmLockUnlockBufferPages]]&lt;br /&gt;
|175&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmLockUnlockPhysicalPage]]&lt;br /&gt;
|176&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmMapIoSpace]]&lt;br /&gt;
|177&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmPersistContiguousMemory]]&lt;br /&gt;
|178&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmQueryAddressProtect]]&lt;br /&gt;
|179&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmQueryAllocationSize]]&lt;br /&gt;
|180&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmQueryStatistics]]&lt;br /&gt;
|181&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmSetAddressProtect]]&lt;br /&gt;
|182&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmUnmapIoSpace]]&lt;br /&gt;
|183&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtAllocateVirtualMemory]]&lt;br /&gt;
|184&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCancelTimer]]&lt;br /&gt;
|185&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtClearEvent]]&lt;br /&gt;
|186&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtClose]]&lt;br /&gt;
|187&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateDirectoryObject]]&lt;br /&gt;
|188&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateEvent]]&lt;br /&gt;
|189&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateFile]]&lt;br /&gt;
|190&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateIoCompletion]]&lt;br /&gt;
|191&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateMutant]]&lt;br /&gt;
|192&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateSemaphore]]&lt;br /&gt;
|193&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateTimer]]&lt;br /&gt;
|194&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtDeleteFile]]&lt;br /&gt;
|195&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtDeviceIoControlFile]]&lt;br /&gt;
|196&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtDuplicateObject]]&lt;br /&gt;
|197&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtFlushBuffersFile]]&lt;br /&gt;
|198&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtFreeVirtualMemory]]&lt;br /&gt;
|199&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtFsControlFile]]&lt;br /&gt;
|200&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtOpenDirectoryObject]]&lt;br /&gt;
|201&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtOpenFile]]&lt;br /&gt;
|202&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtOpenSymbolicLinkObject]]&lt;br /&gt;
|203&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtProtectVirtualMemory]]&lt;br /&gt;
|204&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtPulseEvent]]&lt;br /&gt;
|205&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueueApcThread]]&lt;br /&gt;
|206&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryDirectoryFile]]&lt;br /&gt;
|207&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryDirectoryObject]]&lt;br /&gt;
|208&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryEvent]]&lt;br /&gt;
|209&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryFullAttributesFile]]&lt;br /&gt;
|210&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryInformationFile]]&lt;br /&gt;
|211&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryIoCompletion]]&lt;br /&gt;
|212&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryMutant]]&lt;br /&gt;
|213&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQuerySemaphore]]&lt;br /&gt;
|214&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQuerySymbolicLinkObject]]&lt;br /&gt;
|215&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryTimer]]&lt;br /&gt;
|216&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryVirtualMemory]]&lt;br /&gt;
|217&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryVolumeInformationFile]]&lt;br /&gt;
|218&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtReadFile]]&lt;br /&gt;
|219&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtReadFileScatter]]&lt;br /&gt;
|220&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtReleaseMutant]]&lt;br /&gt;
|221&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtReleaseSemaphore]]&lt;br /&gt;
|222&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtRemoveIoCompletion]]&lt;br /&gt;
|223&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtResumeThread]]&lt;br /&gt;
|224&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSetEvent]]&lt;br /&gt;
|225&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSetInformationFile]]&lt;br /&gt;
|226&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSetIoCompletion]]&lt;br /&gt;
|227&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSetSystemTime]]&lt;br /&gt;
|228&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSetTimerEx]]&lt;br /&gt;
|229&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSignalAndWaitForSingleObjectEx]]&lt;br /&gt;
|230&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSuspendThread]]&lt;br /&gt;
|231&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtUserIoApcDispatcher]]&lt;br /&gt;
|232&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtWaitForSingleObject]]&lt;br /&gt;
|233&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtWaitForSingleObjectEx]]&lt;br /&gt;
|234&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtWaitForMultipleObjectsEx]]&lt;br /&gt;
|235&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtWriteFile]]&lt;br /&gt;
|236&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtWriteFileGather]]&lt;br /&gt;
|237&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtYieldExecution]]&lt;br /&gt;
|238&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObCreateObject]]&lt;br /&gt;
|239&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObDirectoryObjectType]]&lt;br /&gt;
|240&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObInsertObject]]&lt;br /&gt;
|241&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObMakeTemporaryObject]]&lt;br /&gt;
|242&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObOpenObjectByName]]&lt;br /&gt;
|243&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObOpenObjectByPointer]]&lt;br /&gt;
|244&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObpObjectHandleTable]]&lt;br /&gt;
|245&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObReferenceObjectByHandle]]&lt;br /&gt;
|246&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObReferenceObjectByName]]&lt;br /&gt;
|247&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObReferenceObjectByPointer]]&lt;br /&gt;
|248&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObSymbolicLinkObjectType]]&lt;br /&gt;
|249&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObfDereferenceObject]]&lt;br /&gt;
|250&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObfReferenceObject]]&lt;br /&gt;
|251&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PhyGetLinkState]]&lt;br /&gt;
|252&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PhyInitialize]]&lt;br /&gt;
|253&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsCreateSystemThread]]&lt;br /&gt;
|254&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsCreateSystemThreadEx]]&lt;br /&gt;
|255&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsQueryStatistics]]&lt;br /&gt;
|256&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsSetCreateThreadNotifyRoutine]]&lt;br /&gt;
|257&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsTerminateSystemThread]]&lt;br /&gt;
|258&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsThreadObjectType]]&lt;br /&gt;
|259&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlAnsiStringToUnicodeString]]&lt;br /&gt;
|260&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlAppendStringToString]]&lt;br /&gt;
|261&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlAppendUnicodeStringToString]]&lt;br /&gt;
|262&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlAppendUnicodeToString]]&lt;br /&gt;
|263&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlAssert]]&lt;br /&gt;
|264&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCaptureContext]]&lt;br /&gt;
|265&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCaptureStackBackTrace]]&lt;br /&gt;
|266&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCharToInteger]]&lt;br /&gt;
|267&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCompareMemory]]&lt;br /&gt;
|268&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCompareMemoryUlong]]&lt;br /&gt;
|269&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCompareString]]&lt;br /&gt;
|270&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCompareUnicodeString]]&lt;br /&gt;
|271&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCopyString]]&lt;br /&gt;
|272&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCopyUnicodeString]]&lt;br /&gt;
|273&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCreateUnicodeString]]&lt;br /&gt;
|274&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlDowncaseUnicodeChar]]&lt;br /&gt;
|275&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlDowncaseUnicodeString]]&lt;br /&gt;
|276&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlEnterCriticalSection]]&lt;br /&gt;
|277&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlEnterCriticalSectionAndRegion]]&lt;br /&gt;
|278&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlEqualString]]&lt;br /&gt;
|279&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlEqualUnicodeString]]&lt;br /&gt;
|280&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlExtendedIntegerMultiply]]&lt;br /&gt;
|281&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlExtendedLargeIntegerDivide]]&lt;br /&gt;
|282&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlExtendedMagicDivide]]&lt;br /&gt;
|283&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlFillMemory]]&lt;br /&gt;
|284&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlFillMemoryUlong]]&lt;br /&gt;
|285&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlFreeAnsiString]]&lt;br /&gt;
|286&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlFreeUnicodeString]]&lt;br /&gt;
|287&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlGetCallersAddress]]&lt;br /&gt;
|288&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlInitAnsiString]]&lt;br /&gt;
|289&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlInitUnicodeString]]&lt;br /&gt;
|290&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlInitializeCriticalSection]]&lt;br /&gt;
|291&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlIntegerToChar]]&lt;br /&gt;
|292&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlIntegerToUnicodeString]]&lt;br /&gt;
|293&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlLeaveCriticalSection]]&lt;br /&gt;
|294&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlLeaveCriticalSectionAndRegion]]&lt;br /&gt;
|295&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlLowerChar]]&lt;br /&gt;
|296&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlMapGenericMask]]&lt;br /&gt;
|297&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlMoveMemory]]&lt;br /&gt;
|298&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlMultiByteToUnicodeN]]&lt;br /&gt;
|299&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlMultiByteToUnicodeSize]]&lt;br /&gt;
|300&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlNtStatusToDosError]]&lt;br /&gt;
|301&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlRaiseException]]&lt;br /&gt;
|302&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlRaiseStatus]]&lt;br /&gt;
|303&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlTimeFieldsToTime]]&lt;br /&gt;
|304&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlTimeToTimeFields]]&lt;br /&gt;
|305&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlTryEnterCriticalSection]]&lt;br /&gt;
|306&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUlongByteSwap]]&lt;br /&gt;
|307&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUnicodeStringToAnsiString]]&lt;br /&gt;
|308&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUnicodeStringToInteger]]&lt;br /&gt;
|309&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUnicodeToMultiByteN]]&lt;br /&gt;
|310&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUnicodeToMultiByteSize]]&lt;br /&gt;
|311&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUnwind]]&lt;br /&gt;
|312&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUpcaseUnicodeChar]]&lt;br /&gt;
|313&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUpcaseUnicodeString]]&lt;br /&gt;
|314&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUpcaseUnicodeToMultiByteN]]&lt;br /&gt;
|315&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUpperChar]]&lt;br /&gt;
|316&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUpperString]]&lt;br /&gt;
|317&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUshortByteSwap]]&lt;br /&gt;
|318&lt;br /&gt;
|fastcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlWalkFrameChain]]&lt;br /&gt;
|319&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlZeroMemory]]&lt;br /&gt;
|320&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxEEPROMKey]]&lt;br /&gt;
|321&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxHardwareInfo]]&lt;br /&gt;
|322&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxHDKey]]&lt;br /&gt;
|323&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxKrnlVersion]]&lt;br /&gt;
|324&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxSignatureKey]]&lt;br /&gt;
|325&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XeImageFileName]]&lt;br /&gt;
|326&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XeLoadSection]]&lt;br /&gt;
|327&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XeUnloadSection]]&lt;br /&gt;
|328&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/READ_PORT_BUFFER_UCHAR]]&lt;br /&gt;
|329&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/READ_PORT_BUFFER_USHORT]]&lt;br /&gt;
|330&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/READ_PORT_BUFFER_ULONG]]&lt;br /&gt;
|331&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/WRITE_PORT_BUFFER_UCHAR]]&lt;br /&gt;
|332&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/WRITE_PORT_BUFFER_USHORT]]&lt;br /&gt;
|333&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/WRITE_PORT_BUFFER_ULONG]]&lt;br /&gt;
|334&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcSHAInit]]&lt;br /&gt;
|335&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcSHAUpdate]]&lt;br /&gt;
|336&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcSHAFinal]]&lt;br /&gt;
|337&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcRC4Key]]&lt;br /&gt;
|338&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcRC4Crypt]]&lt;br /&gt;
|339&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcHMAC]]&lt;br /&gt;
|340&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcPKEncPublic]]&lt;br /&gt;
|341&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcPKDecPrivate]]&lt;br /&gt;
|342&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcPKGetKeyLen]]&lt;br /&gt;
|343&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcVerifyPKCS1Signature]]&lt;br /&gt;
|344&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcModExp]]&lt;br /&gt;
|345&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcDESKeyParity]]&lt;br /&gt;
|346&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcKeyTable]]&lt;br /&gt;
|347&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcBlockCrypt]]&lt;br /&gt;
|348&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcBlockCryptCBC]]&lt;br /&gt;
|349&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcCryptService]]&lt;br /&gt;
|350&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcUpdateCrypto]]&lt;br /&gt;
|351&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlRip]]&lt;br /&gt;
|352&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxLANKey]]&lt;br /&gt;
|353&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxAlternateSignatureKeys]]&lt;br /&gt;
|354&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XePublicKeyData]]&lt;br /&gt;
|355&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalBootSMCVideoMode]]&lt;br /&gt;
|356&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IdexChannelObject]]&lt;br /&gt;
|357&lt;br /&gt;
|stdcall&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalIsResetOrShutdownPending]]&lt;br /&gt;
|358&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoMarkIrpMustComplete]]&lt;br /&gt;
|359&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalInitiateShutdown]]&lt;br /&gt;
|360&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlSnprintf]]&lt;br /&gt;
|361&lt;br /&gt;
|stdcall&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlSprintf]]&lt;br /&gt;
|362&lt;br /&gt;
|stdcall&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlVsnprintf]]&lt;br /&gt;
|363&lt;br /&gt;
|stdcall&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlVsprintf]]&lt;br /&gt;
|364&lt;br /&gt;
|stdcall&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalEnableSecureTrayEject]]&lt;br /&gt;
|365&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalWriteSMCScratchRegister]]&lt;br /&gt;
|366&lt;br /&gt;
|stdcall&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|367&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|368&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|369&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|370&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|371&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|372&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|373&lt;br /&gt;
|&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDbgAllocateMemory]]&lt;br /&gt;
|374&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDbgFreeMemory]]&lt;br /&gt;
|375&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDbgQueryAvailablePages]]&lt;br /&gt;
|376&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDbgReleaseAddress]]&lt;br /&gt;
|377&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDbgWriteCheck]]&lt;br /&gt;
|378&lt;br /&gt;
|stdcall&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
&lt;br /&gt;
[[Hard Drive Files]]&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	<entry>
		<id>https://xboxdevwiki.net/index.php?title=Kernel&amp;diff=5551</id>
		<title>Kernel</title>
		<link rel="alternate" type="text/html" href="https://xboxdevwiki.net/index.php?title=Kernel&amp;diff=5551"/>
				<updated>2017-05-29T23:18:07Z</updated>
		
		<summary type="html">&lt;p&gt;Haxar: .text and .rdata distinction&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Xbox kernel is called xboxkrnl.exe. It is closely related to the Windows NT [[Wikipedia:Ntoskrnl.exe|ntoskrnl.exe]].&lt;br /&gt;
Its image base address is always 0x80010000.&lt;br /&gt;
&lt;br /&gt;
== Header modifications ==&lt;br /&gt;
&lt;br /&gt;
xboxkrnl.exe is a mostly standard exe file.&lt;br /&gt;
However, the MS-DOS header was patched to contain Xbox specific data in the reserved 20 byte block starting at offset 40:&lt;br /&gt;
&lt;br /&gt;
{| class=wikitable&lt;br /&gt;
! Offset !! Meaning&lt;br /&gt;
|-&lt;br /&gt;
|40 || Size of uninitialized portion of the .data section&lt;br /&gt;
|-&lt;br /&gt;
|44 || Size of initialized portion of the .data section&lt;br /&gt;
|-&lt;br /&gt;
|48 || Memory address of initialized portion of the .data section (usually in [[Flash]]). &amp;lt;br&amp;gt; Used to re-initialize the data section pointed to by the next field. &amp;lt;br&amp;gt; Note that the pointer might be invalid during normal execution as the Flash might not be mapped at all times.&lt;br /&gt;
|-&lt;br /&gt;
|52 || Memory address where the .data section is stored (usually the same as in the section header + image base).&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Sections ==&lt;br /&gt;
&lt;br /&gt;
All sections are identity mapped (meaning file offsets and offsets in RAM match). This is because the kernel is not loaded through a traditional PE / exe loader, but just unpacked into memory.&lt;br /&gt;
&lt;br /&gt;
=== .text ===&lt;br /&gt;
&lt;br /&gt;
The .text section contains all x86 subroutines to be executed by the processor.&lt;br /&gt;
&lt;br /&gt;
=== .rdata ===&lt;br /&gt;
&lt;br /&gt;
The .rdata section contains the kernel thunk table. The ordinals in the table are to be resolved to the kernel's actual calling routine, when loaded.&lt;br /&gt;
&lt;br /&gt;
=== .data ===&lt;br /&gt;
&lt;br /&gt;
The .data section stores initialized and uninitialized data.&lt;br /&gt;
A copy of the initialized portion of this section is usually stored in the [[BIOS]].&lt;br /&gt;
&lt;br /&gt;
=== STICKY ===&lt;br /&gt;
&lt;br /&gt;
Stores variables which must be preserved across a quick-reboot.&lt;br /&gt;
&lt;br /&gt;
=== IDEXPRDT ===&lt;br /&gt;
&lt;br /&gt;
A Physical Region Descriptor Table (PRDT) for the IDE bus. This section serves as a memory allocation only, it does not have to be initialized when loading the kernel{{citation needed}}.&lt;br /&gt;
&lt;br /&gt;
=== INIT ===&lt;br /&gt;
&lt;br /&gt;
This section is always the last one. It contains the entrypoint of the kernel.&lt;br /&gt;
Later kernels{{FIXME|reason=Which revision?}} will discard this section after initialization.&lt;br /&gt;
&lt;br /&gt;
== Kernel exports ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Kernel exports&lt;br /&gt;
|-&lt;br /&gt;
!Name&lt;br /&gt;
!Ordinal&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/AvGetSavedDataAddress]]&lt;br /&gt;
|1&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/AvSendTVEncoderOption]]&lt;br /&gt;
|2&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/AvSetDisplayMode]]&lt;br /&gt;
|3&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/AvSetSavedDataAddress]]&lt;br /&gt;
|4&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgBreakPoint]]&lt;br /&gt;
|5&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgBreakPointWithStatus]]&lt;br /&gt;
|6&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgLoadImageSymbols]]&lt;br /&gt;
|7&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgPrint]]&lt;br /&gt;
|8&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalReadSMCTrayState]]&lt;br /&gt;
|9&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgPrompt]]&lt;br /&gt;
|10&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/DbgUnLoadImageSymbols]]&lt;br /&gt;
|11&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExAcquireReadWriteLockExclusive]]&lt;br /&gt;
|12&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExAcquireReadWriteLockShared]]&lt;br /&gt;
|13&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExAllocatePool]]&lt;br /&gt;
|14&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExAllocatePoolWithTag]]&lt;br /&gt;
|15&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExEventObjectType]]&lt;br /&gt;
|16&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExFreePool]]&lt;br /&gt;
|17&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExInitializeReadWriteLock]]&lt;br /&gt;
|18&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExInterlockedAddLargeInteger]]&lt;br /&gt;
|19&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExInterlockedAddLargeStatistic]]&lt;br /&gt;
|20&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExInterlockedCompareExchange64]]&lt;br /&gt;
|21&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExMutantObjectType]]&lt;br /&gt;
|22&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExQueryPoolBlockSize]]&lt;br /&gt;
|23&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExQueryNonVolatileSetting]]&lt;br /&gt;
|24&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExReadWriteRefurbInfo]]&lt;br /&gt;
|25&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExRaiseException]]&lt;br /&gt;
|26&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExRaiseStatus]]&lt;br /&gt;
|27&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExReleaseReadWriteLock]]&lt;br /&gt;
|28&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExSaveNonVolatileSetting]]&lt;br /&gt;
|29&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExSemaphoreObjectType]]&lt;br /&gt;
|30&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExTimerObjectType]]&lt;br /&gt;
|31&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExfInterlockedInsertHeadList]]&lt;br /&gt;
|32&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExfInterlockedInsertTailList]]&lt;br /&gt;
|33&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ExfInterlockedRemoveHeadList]]&lt;br /&gt;
|34&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/FscGetCacheSize]]&lt;br /&gt;
|35&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/FscInvalidateIdleBlocks]]&lt;br /&gt;
|36&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/FscSetCacheSize]]&lt;br /&gt;
|37&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalClearSoftwareInterrupt]]&lt;br /&gt;
|38&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalDisableSystemInterrupt]]&lt;br /&gt;
|39&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalDiskCachePartitionCount]]&lt;br /&gt;
|40&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalDiskModelNumber]]&lt;br /&gt;
|41&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalDiskSerialNumber]]&lt;br /&gt;
|42&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalEnableSystemInterrupt]]&lt;br /&gt;
|43&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalGetInterruptVector]]&lt;br /&gt;
|44&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalReadSMBusValue]]&lt;br /&gt;
|45&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalReadWritePCISpace]]&lt;br /&gt;
|46&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalRegisterShutdownNotification]]&lt;br /&gt;
|47&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalRequestSoftwareInterrupt]]&lt;br /&gt;
|48&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalReturnToFirmware]]&lt;br /&gt;
|49&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalWriteSMBusValue]]&lt;br /&gt;
|50&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedCompareExchange]]&lt;br /&gt;
|51&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedDecrement]]&lt;br /&gt;
|52&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedIncrement]]&lt;br /&gt;
|53&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedExchange]]&lt;br /&gt;
|54&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedExchangeAdd]]&lt;br /&gt;
|55&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedFlushSList]]&lt;br /&gt;
|56&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedPopEntrySList]]&lt;br /&gt;
|57&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/InterlockedPushEntrySList]]&lt;br /&gt;
|58&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoAllocateIrp]]&lt;br /&gt;
|59&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoBuildAsynchronousFsdRequest]]&lt;br /&gt;
|60&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoBuildDeviceIoControlRequest]]&lt;br /&gt;
|61&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoBuildSynchronousFsdRequest]]&lt;br /&gt;
|62&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoCheckShareAccess]]&lt;br /&gt;
|63&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoCompletionObjectType]]&lt;br /&gt;
|64&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoCreateDevice]]&lt;br /&gt;
|65&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoCreateFile]]&lt;br /&gt;
|66&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoCreateSymbolicLink]]&lt;br /&gt;
|67&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoDeleteDevice]]&lt;br /&gt;
|68&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoDeleteSymbolicLink]]&lt;br /&gt;
|69&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoDeviceObjectType]]&lt;br /&gt;
|70&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoFileObjectType]]&lt;br /&gt;
|71&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoFreeIrp]]&lt;br /&gt;
|72&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoInitializeIrp]]&lt;br /&gt;
|73&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoInvalidDeviceRequest]]&lt;br /&gt;
|74&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoQueryFileInformation]]&lt;br /&gt;
|75&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoQueryVolumeInformation]]&lt;br /&gt;
|76&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoQueueThreadIrp]]&lt;br /&gt;
|77&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoRemoveShareAccess]]&lt;br /&gt;
|78&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoSetIoCompletion]]&lt;br /&gt;
|79&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoSetShareAccess]]&lt;br /&gt;
|80&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoStartNextPacket]]&lt;br /&gt;
|81&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoStartNextPacketByKey]]&lt;br /&gt;
|82&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoStartPacket]]&lt;br /&gt;
|83&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoSynchronousDeviceIoControlRequest]]&lt;br /&gt;
|84&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoSynchronousFsdRequest]]&lt;br /&gt;
|85&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IofCallDriver]]&lt;br /&gt;
|86&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IofCompleteRequest]]&lt;br /&gt;
|87&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KdDebuggerEnabled]]&lt;br /&gt;
|88&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KdDebuggerNotPresent]]&lt;br /&gt;
|89&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoDismountVolume]]&lt;br /&gt;
|90&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoDismountVolumeByName]]&lt;br /&gt;
|91&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeAlertResumeThread]]&lt;br /&gt;
|92&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeAlertThread]]&lt;br /&gt;
|93&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeBoostPriorityThread]]&lt;br /&gt;
|94&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeBugCheck]]&lt;br /&gt;
|95&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeBugCheckEx]]&lt;br /&gt;
|96&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeCancelTimer]]&lt;br /&gt;
|97&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeConnectInterrupt]]&lt;br /&gt;
|98&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeDelayExecutionThread]]&lt;br /&gt;
|99&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeDisconnectInterrupt]]&lt;br /&gt;
|100&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeEnterCriticalRegion]]&lt;br /&gt;
|101&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmGlobalData]]&lt;br /&gt;
|102&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeGetCurrentIrql]]&lt;br /&gt;
|103&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeGetCurrentThread]]&lt;br /&gt;
|104&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeApc]]&lt;br /&gt;
|105&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeDeviceQueue]]&lt;br /&gt;
|106&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeDpc]]&lt;br /&gt;
|107&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeEvent]]&lt;br /&gt;
|108&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeInterrupt]]&lt;br /&gt;
|109&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeMutant]]&lt;br /&gt;
|110&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeQueue]]&lt;br /&gt;
|111&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeSemaphore]]&lt;br /&gt;
|112&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInitializeTimerEx]]&lt;br /&gt;
|113&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertByKeyDeviceQueue]]&lt;br /&gt;
|114&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertDeviceQueue]]&lt;br /&gt;
|115&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertHeadQueue]]&lt;br /&gt;
|116&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertQueue]]&lt;br /&gt;
|117&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertQueueApc]]&lt;br /&gt;
|118&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInsertQueueDpc]]&lt;br /&gt;
|119&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeInterruptTime]]&lt;br /&gt;
|120&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeIsExecutingDpc]]&lt;br /&gt;
|121&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeLeaveCriticalRegion]]&lt;br /&gt;
|122&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KePulseEvent]]&lt;br /&gt;
|123&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeQueryBasePriorityThread]]&lt;br /&gt;
|124&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeQueryInterruptTime]]&lt;br /&gt;
|125&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeQueryPerformanceCounter]]&lt;br /&gt;
|126&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeQueryPerformanceFrequency]]&lt;br /&gt;
|127&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeQuerySystemTime]]&lt;br /&gt;
|128&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRaiseIrqlToDpcLevel]]&lt;br /&gt;
|129&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRaiseIrqlToSynchLevel]]&lt;br /&gt;
|130&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeReleaseMutant]]&lt;br /&gt;
|131&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeReleaseSemaphore]]&lt;br /&gt;
|132&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRemoveByKeyDeviceQueue]]&lt;br /&gt;
|133&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRemoveDeviceQueue]]&lt;br /&gt;
|134&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRemoveEntryDeviceQueue]]&lt;br /&gt;
|135&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRemoveQueue]]&lt;br /&gt;
|136&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRemoveQueueDpc]]&lt;br /&gt;
|137&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeResetEvent]]&lt;br /&gt;
|138&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRestoreFloatingPointState]]&lt;br /&gt;
|139&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeResumeThread]]&lt;br /&gt;
|140&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeRundownQueue]]&lt;br /&gt;
|141&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSaveFloatingPointState]]&lt;br /&gt;
|142&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetBasePriorityThread]]&lt;br /&gt;
|143&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetDisableBoostThread]]&lt;br /&gt;
|144&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetEvent]]&lt;br /&gt;
|145&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetEventBoostPriority]]&lt;br /&gt;
|146&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetPriorityProcess]]&lt;br /&gt;
|147&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetPriorityThread]]&lt;br /&gt;
|148&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetTimer]]&lt;br /&gt;
|149&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSetTimerEx]]&lt;br /&gt;
|150&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeStallExecutionProcessor]]&lt;br /&gt;
|151&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSuspendThread]]&lt;br /&gt;
|152&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSynchronizeExecution]]&lt;br /&gt;
|153&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeSystemTime]]&lt;br /&gt;
|154&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeTestAlertThread]]&lt;br /&gt;
|155&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeTickCount]]&lt;br /&gt;
|156&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeTimeIncrement]]&lt;br /&gt;
|157&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeWaitForMultipleObjects]]&lt;br /&gt;
|158&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KeWaitForSingleObject]]&lt;br /&gt;
|159&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KfRaiseIrql]]&lt;br /&gt;
|160&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KfLowerIrql]]&lt;br /&gt;
|161&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KiBugCheckData]]&lt;br /&gt;
|162&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/KiUnlockDispatcherDatabase]]&lt;br /&gt;
|163&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/LaunchDataPage]]&lt;br /&gt;
|164&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmAllocateContiguousMemory]]&lt;br /&gt;
|165&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmAllocateContiguousMemoryEx]]&lt;br /&gt;
|166&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmAllocateSystemMemory]]&lt;br /&gt;
|167&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmClaimGpuInstanceMemory]]&lt;br /&gt;
|168&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmCreateKernelStack]]&lt;br /&gt;
|169&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDeleteKernelStack]]&lt;br /&gt;
|170&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmFreeContiguousMemory]]&lt;br /&gt;
|171&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmFreeSystemMemory]]&lt;br /&gt;
|172&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmGetPhysicalAddress]]&lt;br /&gt;
|173&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmIsAddressValid]]&lt;br /&gt;
|174&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmLockUnlockBufferPages]]&lt;br /&gt;
|175&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmLockUnlockPhysicalPage]]&lt;br /&gt;
|176&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmMapIoSpace]]&lt;br /&gt;
|177&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmPersistContiguousMemory]]&lt;br /&gt;
|178&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmQueryAddressProtect]]&lt;br /&gt;
|179&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmQueryAllocationSize]]&lt;br /&gt;
|180&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmQueryStatistics]]&lt;br /&gt;
|181&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmSetAddressProtect]]&lt;br /&gt;
|182&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmUnmapIoSpace]]&lt;br /&gt;
|183&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtAllocateVirtualMemory]]&lt;br /&gt;
|184&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCancelTimer]]&lt;br /&gt;
|185&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtClearEvent]]&lt;br /&gt;
|186&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtClose]]&lt;br /&gt;
|187&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateDirectoryObject]]&lt;br /&gt;
|188&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateEvent]]&lt;br /&gt;
|189&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateFile]]&lt;br /&gt;
|190&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateIoCompletion]]&lt;br /&gt;
|191&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateMutant]]&lt;br /&gt;
|192&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateSemaphore]]&lt;br /&gt;
|193&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtCreateTimer]]&lt;br /&gt;
|194&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtDeleteFile]]&lt;br /&gt;
|195&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtDeviceIoControlFile]]&lt;br /&gt;
|196&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtDuplicateObject]]&lt;br /&gt;
|197&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtFlushBuffersFile]]&lt;br /&gt;
|198&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtFreeVirtualMemory]]&lt;br /&gt;
|199&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtFsControlFile]]&lt;br /&gt;
|200&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtOpenDirectoryObject]]&lt;br /&gt;
|201&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtOpenFile]]&lt;br /&gt;
|202&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtOpenSymbolicLinkObject]]&lt;br /&gt;
|203&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtProtectVirtualMemory]]&lt;br /&gt;
|204&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtPulseEvent]]&lt;br /&gt;
|205&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueueApcThread]]&lt;br /&gt;
|206&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryDirectoryFile]]&lt;br /&gt;
|207&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryDirectoryObject]]&lt;br /&gt;
|208&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryEvent]]&lt;br /&gt;
|209&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryFullAttributesFile]]&lt;br /&gt;
|210&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryInformationFile]]&lt;br /&gt;
|211&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryIoCompletion]]&lt;br /&gt;
|212&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryMutant]]&lt;br /&gt;
|213&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQuerySemaphore]]&lt;br /&gt;
|214&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQuerySymbolicLinkObject]]&lt;br /&gt;
|215&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryTimer]]&lt;br /&gt;
|216&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryVirtualMemory]]&lt;br /&gt;
|217&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtQueryVolumeInformationFile]]&lt;br /&gt;
|218&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtReadFile]]&lt;br /&gt;
|219&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtReadFileScatter]]&lt;br /&gt;
|220&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtReleaseMutant]]&lt;br /&gt;
|221&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtReleaseSemaphore]]&lt;br /&gt;
|222&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtRemoveIoCompletion]]&lt;br /&gt;
|223&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtResumeThread]]&lt;br /&gt;
|224&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSetEvent]]&lt;br /&gt;
|225&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSetInformationFile]]&lt;br /&gt;
|226&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSetIoCompletion]]&lt;br /&gt;
|227&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSetSystemTime]]&lt;br /&gt;
|228&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSetTimerEx]]&lt;br /&gt;
|229&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSignalAndWaitForSingleObjectEx]]&lt;br /&gt;
|230&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtSuspendThread]]&lt;br /&gt;
|231&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtUserIoApcDispatcher]]&lt;br /&gt;
|232&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtWaitForSingleObject]]&lt;br /&gt;
|233&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtWaitForSingleObjectEx]]&lt;br /&gt;
|234&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtWaitForMultipleObjectsEx]]&lt;br /&gt;
|235&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtWriteFile]]&lt;br /&gt;
|236&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtWriteFileGather]]&lt;br /&gt;
|237&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/NtYieldExecution]]&lt;br /&gt;
|238&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObCreateObject]]&lt;br /&gt;
|239&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObDirectoryObjectType]]&lt;br /&gt;
|240&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObInsertObject]]&lt;br /&gt;
|241&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObMakeTemporaryObject]]&lt;br /&gt;
|242&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObOpenObjectByName]]&lt;br /&gt;
|243&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObOpenObjectByPointer]]&lt;br /&gt;
|244&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObpObjectHandleTable]]&lt;br /&gt;
|245&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObReferenceObjectByHandle]]&lt;br /&gt;
|246&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObReferenceObjectByName]]&lt;br /&gt;
|247&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObReferenceObjectByPointer]]&lt;br /&gt;
|248&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObSymbolicLinkObjectType]]&lt;br /&gt;
|249&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObfDereferenceObject]]&lt;br /&gt;
|250&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/ObfReferenceObject]]&lt;br /&gt;
|251&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PhyGetLinkState]]&lt;br /&gt;
|252&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PhyInitialize]]&lt;br /&gt;
|253&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsCreateSystemThread]]&lt;br /&gt;
|254&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsCreateSystemThreadEx]]&lt;br /&gt;
|255&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsQueryStatistics]]&lt;br /&gt;
|256&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsSetCreateThreadNotifyRoutine]]&lt;br /&gt;
|257&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsTerminateSystemThread]]&lt;br /&gt;
|258&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/PsThreadObjectType]]&lt;br /&gt;
|259&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlAnsiStringToUnicodeString]]&lt;br /&gt;
|260&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlAppendStringToString]]&lt;br /&gt;
|261&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlAppendUnicodeStringToString]]&lt;br /&gt;
|262&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlAppendUnicodeToString]]&lt;br /&gt;
|263&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlAssert]]&lt;br /&gt;
|264&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCaptureContext]]&lt;br /&gt;
|265&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCaptureStackBackTrace]]&lt;br /&gt;
|266&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCharToInteger]]&lt;br /&gt;
|267&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCompareMemory]]&lt;br /&gt;
|268&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCompareMemoryUlong]]&lt;br /&gt;
|269&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCompareString]]&lt;br /&gt;
|270&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCompareUnicodeString]]&lt;br /&gt;
|271&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCopyString]]&lt;br /&gt;
|272&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCopyUnicodeString]]&lt;br /&gt;
|273&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlCreateUnicodeString]]&lt;br /&gt;
|274&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlDowncaseUnicodeChar]]&lt;br /&gt;
|275&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlDowncaseUnicodeString]]&lt;br /&gt;
|276&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlEnterCriticalSection]]&lt;br /&gt;
|277&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlEnterCriticalSectionAndRegion]]&lt;br /&gt;
|278&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlEqualString]]&lt;br /&gt;
|279&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlEqualUnicodeString]]&lt;br /&gt;
|280&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlExtendedIntegerMultiply]]&lt;br /&gt;
|281&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlExtendedLargeIntegerDivide]]&lt;br /&gt;
|282&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlExtendedMagicDivide]]&lt;br /&gt;
|283&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlFillMemory]]&lt;br /&gt;
|284&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlFillMemoryUlong]]&lt;br /&gt;
|285&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlFreeAnsiString]]&lt;br /&gt;
|286&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlFreeUnicodeString]]&lt;br /&gt;
|287&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlGetCallersAddress]]&lt;br /&gt;
|288&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlInitAnsiString]]&lt;br /&gt;
|289&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlInitUnicodeString]]&lt;br /&gt;
|290&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlInitializeCriticalSection]]&lt;br /&gt;
|291&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlIntegerToChar]]&lt;br /&gt;
|292&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlIntegerToUnicodeString]]&lt;br /&gt;
|293&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlLeaveCriticalSection]]&lt;br /&gt;
|294&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlLeaveCriticalSectionAndRegion]]&lt;br /&gt;
|295&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlLowerChar]]&lt;br /&gt;
|296&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlMapGenericMask]]&lt;br /&gt;
|297&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlMoveMemory]]&lt;br /&gt;
|298&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlMultiByteToUnicodeN]]&lt;br /&gt;
|299&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlMultiByteToUnicodeSize]]&lt;br /&gt;
|300&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlNtStatusToDosError]]&lt;br /&gt;
|301&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlRaiseException]]&lt;br /&gt;
|302&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlRaiseStatus]]&lt;br /&gt;
|303&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlTimeFieldsToTime]]&lt;br /&gt;
|304&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlTimeToTimeFields]]&lt;br /&gt;
|305&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlTryEnterCriticalSection]]&lt;br /&gt;
|306&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUlongByteSwap]]&lt;br /&gt;
|307&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUnicodeStringToAnsiString]]&lt;br /&gt;
|308&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUnicodeStringToInteger]]&lt;br /&gt;
|309&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUnicodeToMultiByteN]]&lt;br /&gt;
|310&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUnicodeToMultiByteSize]]&lt;br /&gt;
|311&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUnwind]]&lt;br /&gt;
|312&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUpcaseUnicodeChar]]&lt;br /&gt;
|313&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUpcaseUnicodeString]]&lt;br /&gt;
|314&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUpcaseUnicodeToMultiByteN]]&lt;br /&gt;
|315&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUpperChar]]&lt;br /&gt;
|316&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUpperString]]&lt;br /&gt;
|317&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlUshortByteSwap]]&lt;br /&gt;
|318&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlWalkFrameChain]]&lt;br /&gt;
|319&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlZeroMemory]]&lt;br /&gt;
|320&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxEEPROMKey]]&lt;br /&gt;
|321&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxHardwareInfo]]&lt;br /&gt;
|322&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxHDKey]]&lt;br /&gt;
|323&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxKrnlVersion]]&lt;br /&gt;
|324&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxSignatureKey]]&lt;br /&gt;
|325&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XeImageFileName]]&lt;br /&gt;
|326&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XeLoadSection]]&lt;br /&gt;
|327&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XeUnloadSection]]&lt;br /&gt;
|328&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/READ_PORT_BUFFER_UCHAR]]&lt;br /&gt;
|329&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/READ_PORT_BUFFER_USHORT]]&lt;br /&gt;
|330&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/READ_PORT_BUFFER_ULONG]]&lt;br /&gt;
|331&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/WRITE_PORT_BUFFER_UCHAR]]&lt;br /&gt;
|332&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/WRITE_PORT_BUFFER_USHORT]]&lt;br /&gt;
|333&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/WRITE_PORT_BUFFER_ULONG]]&lt;br /&gt;
|334&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcSHAInit]]&lt;br /&gt;
|335&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcSHAUpdate]]&lt;br /&gt;
|336&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcSHAFinal]]&lt;br /&gt;
|337&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcRC4Key]]&lt;br /&gt;
|338&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcRC4Crypt]]&lt;br /&gt;
|339&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcHMAC]]&lt;br /&gt;
|340&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcPKEncPublic]]&lt;br /&gt;
|341&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcPKDecPrivate]]&lt;br /&gt;
|342&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcPKGetKeyLen]]&lt;br /&gt;
|343&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcVerifyPKCS1Signature]]&lt;br /&gt;
|344&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcModExp]]&lt;br /&gt;
|345&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcDESKeyParity]]&lt;br /&gt;
|346&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcKeyTable]]&lt;br /&gt;
|347&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcBlockCrypt]]&lt;br /&gt;
|348&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcBlockCryptCBC]]&lt;br /&gt;
|349&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcCryptService]]&lt;br /&gt;
|350&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XcUpdateCrypto]]&lt;br /&gt;
|351&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlRip]]&lt;br /&gt;
|352&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxLANKey]]&lt;br /&gt;
|353&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XboxAlternateSignatureKeys]]&lt;br /&gt;
|354&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/XePublicKeyData]]&lt;br /&gt;
|355&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalBootSMCVideoMode]]&lt;br /&gt;
|356&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IdexChannelObject]]&lt;br /&gt;
|357&lt;br /&gt;
|Variable?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalIsResetOrShutdownPending]]&lt;br /&gt;
|358&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/IoMarkIrpMustComplete]]&lt;br /&gt;
|359&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalInitiateShutdown]]&lt;br /&gt;
|360&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlSnprintf]]&lt;br /&gt;
|361&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlSprintf]]&lt;br /&gt;
|362&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlVsnprintf]]&lt;br /&gt;
|363&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/RtlVsprintf]]&lt;br /&gt;
|364&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalEnableSecureTrayEject]]&lt;br /&gt;
|365&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/HalWriteSMCScratchRegister]]&lt;br /&gt;
|366 &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|367&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|368&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|369&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|370&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|371&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|372&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|373&lt;br /&gt;
|Unused?&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDbgAllocateMemory]]&lt;br /&gt;
|374&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDbgFreeMemory]]&lt;br /&gt;
|375&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDbgQueryAvailablePages]]&lt;br /&gt;
|376&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDbgReleaseAddress]]&lt;br /&gt;
|377&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|-&lt;br /&gt;
|[[Kernel/MmDbgWriteCheck]]&lt;br /&gt;
|378&lt;br /&gt;
|Devkits only!&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
&lt;br /&gt;
[[Hard Drive Files]]&lt;/div&gt;</summary>
		<author><name>Haxar</name></author>	</entry>

	</feed>