{"componentChunkName":"component---src-templates-post-template-js","path":"/magical-windbg-vol1-02-en","result":{"data":{"markdownRemark":{"id":"7ba0e247-373e-59ba-8be4-dda2f2076762","html":"<blockquote>\n<p>This page has been machine-translated from the <a href=\"/magical-windbg-vol1-02\">original page</a>.</p>\n</blockquote>\n<p>In this chapter, I introduce the basic UI operations of WinDbg used for analysis.</p>\n<p>Also, the official documentation already provides very thorough coverage of the basic procedures for debugging and analyzing dump files with WinDbg.</p>\n<br>\n<p>What is WinDbg:</p>\n<p><a href=\"https://learn.microsoft.com/ja-jp/windows-hardware/drivers/debugger/windbg-overview\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https://learn.microsoft.com/ja-jp/windows-hardware/drivers/debugger/windbg-overview</a></p>\n<br>\n<p>So, if you want to learn more about how to use WinDbg, please refer to the official documentation above.</p>\n<!-- omit in toc -->\n<h2 id=\"table-of-contents\" style=\"position:relative;\"><a href=\"#table-of-contents\" aria-label=\"table of contents permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Table of contents</h2>\n<ul>\n<li><a href=\"#about-the-windbg-ui\">About the WinDbg UI</a></li>\n<li><a href=\"#open-source-file-ctrlo-key\">Open Source File ([Ctrl+O] key)</a></li>\n<li><a href=\"#insert-or-remove-breakpoint-f9-key\">Insert or remove breakpoint ([F9] key)</a></li>\n<li><a href=\"#command-alt1-key\">Command ([Alt+1] key)</a></li>\n<li><a href=\"#watch-alt2-key\">Watch ([Alt+2] key)</a></li>\n<li><a href=\"#locals-alt3-key\">Locals ([Alt+3] key)</a></li>\n<li><a href=\"#registers-alt4-key\">Registers ([Alt+4] key)</a></li>\n<li><a href=\"#memory-alt5-key\">Memory ([Alt+5] key)</a></li>\n<li><a href=\"#call-stack-alt6-key\">Call Stack ([Alt+6] key)</a></li>\n<li><a href=\"#disassembly-alt7-key\">Disassembly ([Alt+7] key)</a></li>\n<li><a href=\"#scratch-pad-alt8-key\">Scratch Pad ([Alt+8] key)</a></li>\n<li><a href=\"#processes-and-threads-alt9-key\">Processes and Threads ([Alt+9] key)</a></li>\n<li><a href=\"#other-items\">Other items</a></li>\n<li><a href=\"#changing-workspace-settings\">Changing workspace settings</a></li>\n<li><a href=\"#using-windbg-commands\">Using WinDbg commands</a></li>\n<li><a href=\"#summary-of-chapter-2\">Summary of Chapter 2</a></li>\n<li><a href=\"#links-to-each-chapter\">Links to each chapter</a></li>\n</ul>\n<h2 id=\"about-the-windbg-ui\" style=\"position:relative;\"><a href=\"#about-the-windbg-ui\" aria-label=\"about the windbg ui permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>About the WinDbg UI</h2>\n<p>This is the GUI of WinDbg (Classic) immediately after launching it with administrator privileges.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 500px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/5aa6f154425e78b02785a268cdb0155e/0b533/windbg-ui-001.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 58.333333333333336%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAMCAYAAABiDJ37AAAACXBIWXMAAA7DAAAOwwHHb6hkAAAAxklEQVQoz+2OS26DMBRF2f8uEDQYKsLHhh0gsQMSmBCw3Y7YwskLSqtKlSLm7eDoXl0/HTkYr1emcWQYBi7DZWeaJrzzeO9ZV8uyem6LYxHmm8W6T+blg1nSOidvC6u1bNtGUBQFZVlSSn534dHPeU6epqj4hIpisiQlCSPOSpFFbySnjCyOUWHIu9x1XUdgjOEVjdY0Rj/T0D6yrndaXe97K3tdVfR9T6BleCXUBzBNQ/VL+FMsXX9tR5Db6ugPj/Iv/EvCOxLb88nHD7HzAAAAAElFTkSuQmCC'); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/5aa6f154425e78b02785a268cdb0155e/8ac56/windbg-ui-001.webp 240w,\n/static/5aa6f154425e78b02785a268cdb0155e/d3be9/windbg-ui-001.webp 480w,\n/static/5aa6f154425e78b02785a268cdb0155e/b0a15/windbg-ui-001.webp 500w\"\n              sizes=\"(max-width: 500px) 100vw, 500px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/5aa6f154425e78b02785a268cdb0155e/8ff5a/windbg-ui-001.png 240w,\n/static/5aa6f154425e78b02785a268cdb0155e/e85cb/windbg-ui-001.png 480w,\n/static/5aa6f154425e78b02785a268cdb0155e/0b533/windbg-ui-001.png 500w\"\n            sizes=\"(max-width: 500px) 100vw, 500px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/5aa6f154425e78b02785a268cdb0155e/0b533/windbg-ui-001.png\"\n            alt=\"GUI after launching WinDbg\"\n            title=\"GUI after launching WinDbg\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<p>Each button has the following function.</p>\n<table>\n<thead>\n<tr>\n<th align=\"center\">Number</th>\n<th align=\"center\">Function</th>\n<th align=\"center\">Shortcut</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td align=\"center\">1</td>\n<td align=\"center\">Open Source File</td>\n<td align=\"center\">Ctrl+O</td>\n</tr>\n<tr>\n<td align=\"center\">2</td>\n<td align=\"center\">Insert or remove breakpoint</td>\n<td align=\"center\">F9</td>\n</tr>\n<tr>\n<td align=\"center\">3</td>\n<td align=\"center\">Command</td>\n<td align=\"center\">Alt+1</td>\n</tr>\n<tr>\n<td align=\"center\">4</td>\n<td align=\"center\">Watch</td>\n<td align=\"center\">Alt+2</td>\n</tr>\n<tr>\n<td align=\"center\">5</td>\n<td align=\"center\">Locals</td>\n<td align=\"center\">Alt+3</td>\n</tr>\n<tr>\n<td align=\"center\">6</td>\n<td align=\"center\">Registers</td>\n<td align=\"center\">Alt+4</td>\n</tr>\n<tr>\n<td align=\"center\">7</td>\n<td align=\"center\">Memory Window</td>\n<td align=\"center\">Alt+5</td>\n</tr>\n<tr>\n<td align=\"center\">8</td>\n<td align=\"center\">Call Stack</td>\n<td align=\"center\">Alt+6</td>\n</tr>\n<tr>\n<td align=\"center\">9</td>\n<td align=\"center\">Disassembly</td>\n<td align=\"center\">Alt+7</td>\n</tr>\n<tr>\n<td align=\"center\">10</td>\n<td align=\"center\">Scratch Pad</td>\n<td align=\"center\">Alt+8</td>\n</tr>\n<tr>\n<td align=\"center\">11</td>\n<td align=\"center\">Processes and Threads</td>\n<td align=\"center\">Alt+9</td>\n</tr>\n<tr>\n<td align=\"center\">12</td>\n<td align=\"center\">Command Browser</td>\n<td align=\"center\">Ctrl+N</td>\n</tr>\n<tr>\n<td align=\"center\">13</td>\n<td align=\"center\">Source mode ON</td>\n<td align=\"center\">N/A</td>\n</tr>\n<tr>\n<td align=\"center\">14</td>\n<td align=\"center\">Source mode OFF</td>\n<td align=\"center\">N/A</td>\n</tr>\n<tr>\n<td align=\"center\">15</td>\n<td align=\"center\">Font</td>\n<td align=\"center\">N/A</td>\n</tr>\n<tr>\n<td align=\"center\">16</td>\n<td align=\"center\">Options</td>\n<td align=\"center\">N/A</td>\n</tr>\n</tbody>\n</table>\n<p>If you are using the Windows app version of WinDbg, the icons and UI differ from the WinDbg (Classic) screen above, but except for a few cases the window names, functions, and default shortcut keys are the same, so there is no need to worry.</p>\n<h2 id=\"open-source-file-ctrlo-key\" style=\"position:relative;\"><a href=\"#open-source-file-ctrlo-key\" aria-label=\"open source file ctrlo key permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Open Source File ([Ctrl+O] key)</h2>\n<p>The leftmost button on the toolbar, button 1, is the <code class=\"language-text\">Open Source File</code> button.</p>\n<p>Clicking this button opens an Explorer window, letting you open source files in WinDbg. (You cannot run a file or attach to a process from the <code class=\"language-text\">Open Source File</code> button.)</p>\n<p>The shortcut key is [Ctrl+O].</p>\n<p>When you open a source file, you can browse its source code in WinDbg. (This is read-only, and you cannot write to it.)</p>\n<p>Source browsing is not a feature used in this book, but it is extremely helpful when debugging a program you developed yourself.</p>\n<h2 id=\"insert-or-remove-breakpoint-f9-key\" style=\"position:relative;\"><a href=\"#insert-or-remove-breakpoint-f9-key\" aria-label=\"insert or remove breakpoint f9 key permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Insert or remove breakpoint ([F9] key)</h2>\n<p>Button 2 is <code class=\"language-text\">Insert or remove breakpoint</code>.</p>\n<p>It is available only when the active window is the Source window or the Disassembly window.</p>\n<p>Pressing this button while a location is selected lets you toggle a breakpoint at that location.</p>\n<p>The shortcut key is [F9].</p>\n<p>Because this book does not set breakpoints when analyzing dump files, we do not use this feature here.</p>\n<h2 id=\"command-alt1-key\" style=\"position:relative;\"><a href=\"#command-alt1-key\" aria-label=\"command alt1 key permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Command ([Alt+1] key)</h2>\n<p>If the Command window is closed, clicking button 3 opens a new Command window.</p>\n<p>The shortcut key is [Alt+1].</p>\n<p>The Command window is one of the features you will use most often when analyzing dump files, so it is convenient to remember this shortcut.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 500px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/199c7b305f093eccb1ac95b292038391/0b533/windbg-ui-002.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 67.91666666666667%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAOCAYAAAAvxDzwAAAACXBIWXMAAA7EAAAOxAGVKw4bAAABEklEQVQ4y9VTSW6DQBDk/1/BLBLLgYBZAxLiAATjCwli+UBsHHGByjSKSQ6RHSFfUlJN9YzUNaPWFPdxueA8nDEMA07vJ4zjiGmasBWcaVowzT1sm2ivDIIAvuex2oNh2LBMh+keluXAsQMYtHeeWe8To4kwDBFFEbjDoURZliheChRFgeOxRJ7nqKoKfd+jbVs0TcO0WWrSruuWunp9Q13XiOMYPM9DlmVw9Mx5ntnypRtAF0uSBF3Xfxj+Ajq/xeus6bWiKELTtG/DLbxpuAX/3PDhM3yo4VZcR0UffTVMkoTFyYLv+0t0XNddNMsypGl6l5Qqj0WUUqKqKjhy3u12CwVBWJV+/l9I/WSmKMpi+Al6gw84wTKteQAAAABJRU5ErkJggg=='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/199c7b305f093eccb1ac95b292038391/8ac56/windbg-ui-002.webp 240w,\n/static/199c7b305f093eccb1ac95b292038391/d3be9/windbg-ui-002.webp 480w,\n/static/199c7b305f093eccb1ac95b292038391/b0a15/windbg-ui-002.webp 500w\"\n              sizes=\"(max-width: 500px) 100vw, 500px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/199c7b305f093eccb1ac95b292038391/8ff5a/windbg-ui-002.png 240w,\n/static/199c7b305f093eccb1ac95b292038391/e85cb/windbg-ui-002.png 480w,\n/static/199c7b305f093eccb1ac95b292038391/0b533/windbg-ui-002.png 500w\"\n            sizes=\"(max-width: 500px) 100vw, 500px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/199c7b305f093eccb1ac95b292038391/0b533/windbg-ui-002.png\"\n            alt=\"Opening the Command window\"\n            title=\"Opening the Command window\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<h2 id=\"watch-alt2-key\" style=\"position:relative;\"><a href=\"#watch-alt2-key\" aria-label=\"watch alt2 key permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Watch ([Alt+2] key)</h2>\n<p>Clicking button 4 opens the Watch window.</p>\n<p>The shortcut key is [Alt+2].</p>\n<p>The Watch window is not used in this book, but it can be useful in some debugging scenarios.</p>\n<p>For details on how to use it, please refer to the official documentation below.</p>\n<br>\n<p>Using the Watch window:</p>\n<p><a href=\"https://learn.microsoft.com/ja-jp/windows-hardware/drivers/debugger/watch-window\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https://learn.microsoft.com/ja-jp/windows-hardware/drivers/debugger/watch-window</a></p>\n<br>\n<h2 id=\"locals-alt3-key\" style=\"position:relative;\"><a href=\"#locals-alt3-key\" aria-label=\"locals alt3 key permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Locals ([Alt+3] key)</h2>\n<p>Clicking button 5 opens the Locals window.</p>\n<p>The shortcut key is [Alt+3].</p>\n<p>This window is also not used in this book, so I will omit a detailed introduction.</p>\n<h2 id=\"registers-alt4-key\" style=\"position:relative;\"><a href=\"#registers-alt4-key\" aria-label=\"registers alt4 key permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Registers ([Alt+4] key)</h2>\n<p>Clicking button 6 opens the Registers window.</p>\n<p>The shortcut key is [Alt+4].</p>\n<p>For how to display and edit registers using the Registers window, please refer to the documentation below.</p>\n<p>The Registers window is not used as often for dump file analysis as it is during live debugging.</p>\n<p>However, it is a very useful feature because it lets you quickly inspect register information in a list.</p>\n<br>\n<p>Displaying and editing registers in WinDbg:</p>\n<p><a href=\"https://learn.microsoft.com/ja-jp/windows-hardware/drivers/debugger/registers-window\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https://learn.microsoft.com/ja-jp/windows-hardware/drivers/debugger/registers-window</a></p>\n<br>\n<p>When you open the Registers window while analyzing a dump file, you can view and edit each register value as shown below.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 500px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/815353c078ab97ac8909d70f94e7dbbb/0b533/windbg-ui-003.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 88.75%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAASCAYAAABb0P4QAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAB0UlEQVQ4y6WUbW+iQBSF+f+/pauwIEKx+0VBE43fXKlvURMTY32paBkB7encq5LdVKG7neRkJrw8nHvmMsp88QIhQgS7APv9Hm9SNAtxQBzHiKJIKpbrhNdJcgSN93cp4LK+rgDFMFTY9iMsy4JhlKFrJZ6LxZ9wnIqUA7P8iFKpDNO0oOtl+by8Zj3B+lXl+7Zto1qtolarQXGcJzSbTbSkPK8Ot+by7LkuXNeDV6+j0Wig1Wqh2/2NdruNTqfDoIeHH/LDRZaqqiyl2/Wx2WwQBAHCMEwlQvHX+nA4IJIRCCG4RDJBINM0pXuqymAp/X5fAl+xWq9xOp04N8rrs+JLlmdVKhUGEkTX9VRKr9fjry4WC2y32zTkLNGgzAqFArsjUOqQgFTWbDbDarXiF8jpPR2P512mnG8CB4PBpTWiTNBnoHcbOB6P2eFwOMR8Ps93KJUJHI1G2O128H2fgTTyXGYCqWQC0ryWO30F3tqMLwGpVNpl6kNSkiSZZedmOJlM2OFyueQsc4F5DqfTKR8GBLv24LXk/8qQdpkckghCJX2rbaixz8dSgn8Zd4H+8zP/ISQ6JPJEnUDx3P31VFVLj56viA4EXb6oaVoK+hP4ATwvDsssb91zAAAAAElFTkSuQmCC'); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/815353c078ab97ac8909d70f94e7dbbb/8ac56/windbg-ui-003.webp 240w,\n/static/815353c078ab97ac8909d70f94e7dbbb/d3be9/windbg-ui-003.webp 480w,\n/static/815353c078ab97ac8909d70f94e7dbbb/b0a15/windbg-ui-003.webp 500w\"\n              sizes=\"(max-width: 500px) 100vw, 500px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/815353c078ab97ac8909d70f94e7dbbb/8ff5a/windbg-ui-003.png 240w,\n/static/815353c078ab97ac8909d70f94e7dbbb/e85cb/windbg-ui-003.png 480w,\n/static/815353c078ab97ac8909d70f94e7dbbb/0b533/windbg-ui-003.png 500w\"\n            sizes=\"(max-width: 500px) 100vw, 500px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/815353c078ab97ac8909d70f94e7dbbb/0b533/windbg-ui-003.png\"\n            alt=\"Opening the Registers window\"\n            title=\"Opening the Registers window\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<h2 id=\"memory-alt5-key\" style=\"position:relative;\"><a href=\"#memory-alt5-key\" aria-label=\"memory alt5 key permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Memory ([Alt+5] key)</h2>\n<p>Clicking button 7 opens the Memory window.</p>\n<p>The shortcut key is [Alt+5].</p>\n<p>For details on the Memory window, please refer to the documentation below.</p>\n<br>\n<p>Displaying and editing memory in WinDbg:</p>\n<p><a href=\"https://learn.microsoft.com/ja-jp/windows-hardware/drivers/debugger/memory-window\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https://learn.microsoft.com/ja-jp/windows-hardware/drivers/debugger/memory-window</a></p>\n<br>\n<h2 id=\"call-stack-alt6-key\" style=\"position:relative;\"><a href=\"#call-stack-alt6-key\" aria-label=\"call stack alt6 key permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Call Stack ([Alt+6] key)</h2>\n<p>Clicking button 8 opens the Call Stack window.</p>\n<p>The shortcut key is [Alt+6].</p>\n<p>The Call Stack window displays call history information from the stack.</p>\n<p>This is the same information as the stack trace displayed when you run the <code class=\"language-text\">k</code> command in the Command window.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 500px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/b043214b86bfd0c3c769f1882e7aebf4/0b533/windbg-ui-004.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 91.25000000000001%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAASCAYAAABb0P4QAAAACXBIWXMAAA7EAAAOxAGVKw4bAAACQklEQVQ4y51U15KjMBDU/3+T98kBHMARsME2GJwDzqGc+ujZ4mrD7e3eqWoKIWl6pntGUnbbQ6PRwHQ6xWq1wmKxgOM4GI/HWK/X2Gw2uF6vCIIAvu/L2n6/x+FwwG63w+l0kvntdsPj8YAqtgJo+Sws20Yul0O5XIamaWi32zBNE61WSw6/vLyI8Qz3S6USKpUKisXi7/MCqLd8lIsanGSBG7VaTQ53Oh0YhiHZEpB7dC4UCtB1XQKTWbPZRBRFGI1GuFwuUCUrQEkvfAJ0XVcAGfl+v8t6vV6XMwRjpgzAM71eD8PhUOgrrekLIB15gE4E5P/bDJkJ/wnMPcuy4Hme7BPsfD5LYKUlGuqFHGzbETrValWA7URTapQCGqYhgQgym83E5vOZFJPFSYcymx66nitVdBPdut2u6Nfv9yUTVpaV5j+pMQDXmTHXqB0rz0pvt1so27IxnUwRhhHCQYjBYCAW+AMJkgJLQPc1cLo+mUyk1WgMSnCVy+eFqmGYQpEack69KL7jtMWR/Sm2XCZU58l8Kf+cx3GMTZJdFA2hMpkMstmsVI9GIOpIvRqNulCk2D8ZpK7ySYZsYBaC/UUgAjLTMAxF9OPxKA7P5/NL44gJWKvV5TakYKRP6syWxSFd9tePAQlCIzV2PLNiX/FLMF6n1CH9fhzvAI2ELumxkqwugVgtgvMR+Oj0J9B3gOlrQmf2EY1z6sbsvgP7BMgL/dX4m2ZvLQ0cx98A/usgW8WmfH0kj0Lzf4zXjo8DW+wXZK40d1nkngUAAAAASUVORK5CYII='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/b043214b86bfd0c3c769f1882e7aebf4/8ac56/windbg-ui-004.webp 240w,\n/static/b043214b86bfd0c3c769f1882e7aebf4/d3be9/windbg-ui-004.webp 480w,\n/static/b043214b86bfd0c3c769f1882e7aebf4/b0a15/windbg-ui-004.webp 500w\"\n              sizes=\"(max-width: 500px) 100vw, 500px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/b043214b86bfd0c3c769f1882e7aebf4/8ff5a/windbg-ui-004.png 240w,\n/static/b043214b86bfd0c3c769f1882e7aebf4/e85cb/windbg-ui-004.png 480w,\n/static/b043214b86bfd0c3c769f1882e7aebf4/0b533/windbg-ui-004.png 500w\"\n            sizes=\"(max-width: 500px) 100vw, 500px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/b043214b86bfd0c3c769f1882e7aebf4/0b533/windbg-ui-004.png\"\n            alt=\"Information displayed in the Call Stack window\"\n            title=\"Information displayed in the Call Stack window\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<h2 id=\"disassembly-alt7-key\" style=\"position:relative;\"><a href=\"#disassembly-alt7-key\" aria-label=\"disassembly alt7 key permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Disassembly ([Alt+7] key)</h2>\n<p>Clicking button 9 opens the Disassembly window.</p>\n<p>The shortcut key is [Alt+7].</p>\n<p>The Disassembly window can display the assembly code of the debug target.</p>\n<p>It is especially helpful when you are analyzing something without using symbol files.</p>\n<h2 id=\"scratch-pad-alt8-key\" style=\"position:relative;\"><a href=\"#scratch-pad-alt8-key\" aria-label=\"scratch pad alt8 key permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Scratch Pad ([Alt+8] key)</h2>\n<p>Clicking button 10 opens the Scratch Pad window.</p>\n<p>The shortcut key is [Alt+8].</p>\n<p>The Scratch Pad is a clipboard where you can type text and save it.</p>\n<p>It is easy to dismiss it as just a simple notepad, but once you become somewhat comfortable with analysis, it becomes a handy feature that you will use often.</p>\n<h2 id=\"processes-and-threads-alt9-key\" style=\"position:relative;\"><a href=\"#processes-and-threads-alt9-key\" aria-label=\"processes and threads alt9 key permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Processes and Threads ([Alt+9] key)</h2>\n<p>Clicking button 11 opens the Processes and Threads window.</p>\n<p>The shortcut key is [Alt+9].</p>\n<p>This window lets you inspect a list of all processes being debugged.</p>\n<p>We do not use it in this book, but the official documentation below covers it in detail.</p>\n<br>\n<p>Controlling processes and threads in WinDbg:</p>\n<p><a href=\"https://docs.microsoft.com/ja-jp/windows-hardware/drivers/debugger/processes-and-threads-window\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https://docs.microsoft.com/ja-jp/windows-hardware/drivers/debugger/processes-and-threads-window</a></p>\n<br>\n<h2 id=\"other-items\" style=\"position:relative;\"><a href=\"#other-items\" aria-label=\"other items permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Other items</h2>\n<p>I omit the other windows in this book.</p>\n<p>I have summarized the various windows, including the ones above, in the public blog post below.</p>\n<p>That article also introduces the windows omitted from this book, so please refer to it if you are interested.</p>\n<br>\n<p>A summary of each WinDbg window (Kaeru no Himitsukichi):</p>\n<p><a href=\"https://kashiwaba-yuki.com/windows-windbg-003-ui\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https://kashiwaba-yuki.com/windows-windbg-003-ui</a></p>\n<br>\n<h2 id=\"changing-workspace-settings\" style=\"position:relative;\"><a href=\"#changing-workspace-settings\" aria-label=\"changing workspace settings permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Changing workspace settings</h2>\n<p>By default, WinDbg (Classic) starts in a state where no windows are displayed, as shown below.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 500px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/25085176e5c7f4179efe5f31dba1f0a4/0b533/windbg-ui-005.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 60.416666666666664%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAMCAYAAABiDJ37AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAkUlEQVQoz9XSSwrDIBgEYO9/mPheRYWcIoUatXqQqQlSSElpmqaLLj5G4XdQkIyXEf7q4acJOWekdEMICTHWTBkhRpRSdpnPE8YoKF3rupYNY2w3opTCM61rVnpZa2zNvEI+GX5HSnlO4Vz0T4Vt88hTbvhF2U+evPo2nHMcIYTYRIZhwBHWWhhjFn3fwzm3uAN8/fTbndO//gAAAABJRU5ErkJggg=='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/25085176e5c7f4179efe5f31dba1f0a4/8ac56/windbg-ui-005.webp 240w,\n/static/25085176e5c7f4179efe5f31dba1f0a4/d3be9/windbg-ui-005.webp 480w,\n/static/25085176e5c7f4179efe5f31dba1f0a4/b0a15/windbg-ui-005.webp 500w\"\n              sizes=\"(max-width: 500px) 100vw, 500px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/25085176e5c7f4179efe5f31dba1f0a4/8ff5a/windbg-ui-005.png 240w,\n/static/25085176e5c7f4179efe5f31dba1f0a4/e85cb/windbg-ui-005.png 480w,\n/static/25085176e5c7f4179efe5f31dba1f0a4/0b533/windbg-ui-005.png 500w\"\n            sizes=\"(max-width: 500px) 100vw, 500px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/25085176e5c7f4179efe5f31dba1f0a4/0b533/windbg-ui-005.png\"\n            alt=\"Initial WinDbg (Classic) screen\"\n            title=\"Initial WinDbg (Classic) screen\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<p>Because it is a little tedious to open all required windows every time you analyze a dump, let’s configure the WinDbg workspace.</p>\n<p>First, with some of the windows you want to use for analysis already open, drag each window with the mouse into the main WinDbg window.</p>\n<p>If you drag them to the edge or center of a window just right, you will see that the windows can be arranged in vertical or horizontal splits.</p>\n<p>You can also place two or more windows on top of one another so that they are grouped together as tabs in one place.</p>\n<p>For example, in the screen below, the Command window is placed on the right, the Disassembly window and Memory window are stacked in the upper-left half, and the Scratch Pad is placed in the lower-left half.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 960px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/462aad78895aba6eb4393bb4dad8eba8/fb4e7/windbg-ui-006.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 60.83333333333334%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAMCAYAAABiDJ37AAAACXBIWXMAAA7DAAAOwwHHb6hkAAABK0lEQVQoz42T6XKCMBSFef9n61QrWBEIkOASW+0P2ZdwepNip7VUuDPfJHPvycluPS2WeF7aWK7WcH1GhHA2AV63DOttSG0A12Nw3IBg/2ITK3sD68VxsSZxyPfgO4nYcBxaCT8UWNgubI8jSN7gi9M4VPN8AatpGkxF07ZQSmFOWEVZmY7qe/R3KNWbmtbkxaAjY52/R+ubtoNV1fXkrGVVo6i+dHrgfdxybadgpWmGmky7rhtFi/OiNKazDL1oByYk+OE8ipAXuCzBNcvnGX6foTmb33TDRVzTHFlezDO8beVR6C1rboPH+LvCB7esV5dNGGqM4Zx3WFYVymHiyXfI9xLy/IHj+wVy4PiDE9X44QQvEvRruCFKDgjFHgHlWJyARQn9NLrceIdP3kKe/0VZctQAAAAASUVORK5CYII='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/462aad78895aba6eb4393bb4dad8eba8/8ac56/windbg-ui-006.webp 240w,\n/static/462aad78895aba6eb4393bb4dad8eba8/d3be9/windbg-ui-006.webp 480w,\n/static/462aad78895aba6eb4393bb4dad8eba8/e46b2/windbg-ui-006.webp 960w,\n/static/462aad78895aba6eb4393bb4dad8eba8/f992d/windbg-ui-006.webp 1440w,\n/static/462aad78895aba6eb4393bb4dad8eba8/ba879/windbg-ui-006.webp 1519w\"\n              sizes=\"(max-width: 960px) 100vw, 960px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/462aad78895aba6eb4393bb4dad8eba8/8ff5a/windbg-ui-006.png 240w,\n/static/462aad78895aba6eb4393bb4dad8eba8/e85cb/windbg-ui-006.png 480w,\n/static/462aad78895aba6eb4393bb4dad8eba8/d9199/windbg-ui-006.png 960w,\n/static/462aad78895aba6eb4393bb4dad8eba8/07a9c/windbg-ui-006.png 1440w,\n/static/462aad78895aba6eb4393bb4dad8eba8/fb4e7/windbg-ui-006.png 1519w\"\n            sizes=\"(max-width: 960px) 100vw, 960px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/462aad78895aba6eb4393bb4dad8eba8/d9199/windbg-ui-006.png\"\n            alt=\"Arranging the windows in WinDbg (Classic)\"\n            title=\"Arranging the windows in WinDbg (Classic)\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<p>This completes the layout of the analysis windows, but if you restart WinDbg now, all of the windows will be reset.</p>\n<p>So, to preserve the configuration after restarting, save the current settings to the default workspace.</p>\n<p>In the WinDbg window, click [Save Workspace] under [File] at the upper right to save the current settings to the default workspace.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 500px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/9c4142ee6881d4e426bfae7f1245ec9e/0b533/windbg-ui-007.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 66.66666666666666%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAB0ElEQVQ4y5VTa2vbMBT1//8fY7Bv7l5tM7YmaxkMxkbXOHE6J37E8kOyLSl+pCvN6ZVDQ1bakgkO0r2WD0c6R9ZkwRAvl1gS0jSFEAJaaYKE4Bx5zsEJeZZTLagW4KKg2uzlULRPqwpaVlCyhGV+CPygR1VVKIoCcRxjePEdRydnsI+HeHsy2s6nI+p9hT04x9HxF7w7HcJ+P8Bre4BX9me8+TCClZEqz/MQBiG01pBSktIECSkpVf0s5mEMz4/we+ziap6AyxZcdbDSJIE7deG6LpIkJZUloihC2zY4ZPy9vYXS9a4mhRkRTjEnlYwlW4VEXNfbTZvN5kncEcxo2g68VP3a9KyEFDpjB0EQ9CRlWcJf+LRudoRPjYd+260hKr3rWZycDOj+jMP9HZIxCSlt9hT+F+HZlMP+NsPHnxEuFjXOPY1PjkChmheP/EDYPCaMWIpfl2NMrr3+QyF1P6/qAwnbR4QZRWTiOLiezSjAOeqV7sPaHejy+uYGxT6hyZzjTDAlpxljFAEiJKdNzvxlBj9+HkGcY/onQCaqf00Jw6g3xaylUn10vJBhwcSL8FmBH5cuWCb2FaY9mTRvktSZ2Jgorbv2oCOvVjXyPYX3WTTX75WWMoQAAAAASUVORK5CYII='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/9c4142ee6881d4e426bfae7f1245ec9e/8ac56/windbg-ui-007.webp 240w,\n/static/9c4142ee6881d4e426bfae7f1245ec9e/d3be9/windbg-ui-007.webp 480w,\n/static/9c4142ee6881d4e426bfae7f1245ec9e/b0a15/windbg-ui-007.webp 500w\"\n              sizes=\"(max-width: 500px) 100vw, 500px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/9c4142ee6881d4e426bfae7f1245ec9e/8ff5a/windbg-ui-007.png 240w,\n/static/9c4142ee6881d4e426bfae7f1245ec9e/e85cb/windbg-ui-007.png 480w,\n/static/9c4142ee6881d4e426bfae7f1245ec9e/0b533/windbg-ui-007.png 500w\"\n            sizes=\"(max-width: 500px) 100vw, 500px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/9c4142ee6881d4e426bfae7f1245ec9e/0b533/windbg-ui-007.png\"\n            alt=\"Saving the workspace\"\n            title=\"Saving the workspace\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<p>The saved settings are written to the registry at <code class=\"language-text\">HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windbg\\Workspaces\\Default</code>, so the changed settings will be preserved even after WinDbg is restarted.</p>\n<p>Although this book does not cover it, you can also save your changes as a new workspace.</p>\n<p>You can also migrate WinDbg settings to another machine by importing an exported WEW file or by directly copying the registry values that store WinDbg’s configuration.</p>\n<h2 id=\"using-windbg-commands\" style=\"position:relative;\"><a href=\"#using-windbg-commands\" aria-label=\"using windbg commands permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Using WinDbg commands</h2>\n<p>As noted in the preface, this book is not intended to be a comprehensive introductory book on Windows dump analysis, so it does not explain WinDbg commands in detail either.</p>\n<p>The official documentation below and the help included with WinDbg provide extremely thorough coverage of WinDbg commands.</p>\n<p>So when analyzing dump files, I recommend keeping the following documentation and help available for reference at all times.</p>\n<br>\n<p>WinDbg commands:</p>\n<p><a href=\"https://learn.microsoft.com/ja-jp/windows-hardware/drivers/debugger/commands\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https://learn.microsoft.com/ja-jp/windows-hardware/drivers/debugger/commands</a></p>\n<br>\n<p>You can open WinDbg Help by clicking [Windows] under [Help] on the top menu bar, or by pressing the [F1] key.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 500px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/e5bb7772ec0d90632f1ecf71ed3ea5e7/0b533/windbg-ui-008.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 75.41666666666667%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAPCAYAAADkmO9VAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAC1klEQVQ4y1VT2W7bQAzU//9E0T70sY95SdGkKZoggGMnPmSdsa3LkiVZhy1bPqfDdQykCxC7orjkzJCrhYGHMIyQ5znKokBZlliv19jtdjgcDuq82Wyw3W7/28V/jRMTf9u20EzThOPYsC0LQeBjNp0iCkMWCZFlGSaTCXyffm+mfGJBECi/47qI4xgFgYhJvPbcd/Ht3sHXextffpn4emfh+98pfnRTWH6GZZ4q9FmWY7lcKgZyuaoq+jP1fTqdIEv8Wr4s8ToYo9fXMdAtvPHcfRshzkpstq1CJJckmVjTNKjrGiua7J/XYrGAVpU1zNEYDinbhomIdOL5HGmSMCBFFEVI0xSrDy2vOu7andJsy28pInpLnDZzPAx6A4z1MbUJsV6tUVeX6p8Tij6il/hWq5X6L7bf75XJUhrGfoyXPx2Mx2NYBhvjB9TkrAIETUKkcjGJ56oZBWkLsita0e8sdj4r5Fq5rKBTP0M3lL27E1Y8qISCRNBtNlt4RB8SYZJmFP+iqSDK+J2WFep1g1YSyiXbsmEQoU7aju2qbsmSOUuFIjWaRDGmUQLXD5Hz/4E0d7uWWrZod3uFUOZREzFDVh8OhoqyaCQ/rwkXRNhwjzij3oyzSNoZfarrTLyoWbRao2gogwy2SuhLwhF8z1d6yYyJX85Cq2ZCe+rhfTpTMeLLOZdCXQDEBSlv2stLOR6PRNKg/9aHZVqk7PClRFgki48LC1RMPCXlWC5Tx4hjJfNZs3BZFkRbqAaphGVRw3N9DIcjjIY6u21iNvNVkBQKODbePFHNSZlc9pwIEzYzI82Gj6Q5XgZ7y4egZV6M0VMPrjmGz/d52HIUKPZ1raoSKXWqGg4wUQh90bRd16pZNQe8ZqK9en4naLfPQ9w8dnHz1MVtZ4D7VwM/X0b43TfxqL/jYWDjYejibuDgrn+x+1cLDz0Dz/oEL1aAjuGhZ4fo6FP8A5T9YOK64ckfAAAAAElFTkSuQmCC'); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/e5bb7772ec0d90632f1ecf71ed3ea5e7/8ac56/windbg-ui-008.webp 240w,\n/static/e5bb7772ec0d90632f1ecf71ed3ea5e7/d3be9/windbg-ui-008.webp 480w,\n/static/e5bb7772ec0d90632f1ecf71ed3ea5e7/b0a15/windbg-ui-008.webp 500w\"\n              sizes=\"(max-width: 500px) 100vw, 500px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/e5bb7772ec0d90632f1ecf71ed3ea5e7/8ff5a/windbg-ui-008.png 240w,\n/static/e5bb7772ec0d90632f1ecf71ed3ea5e7/e85cb/windbg-ui-008.png 480w,\n/static/e5bb7772ec0d90632f1ecf71ed3ea5e7/0b533/windbg-ui-008.png 500w\"\n            sizes=\"(max-width: 500px) 100vw, 500px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/e5bb7772ec0d90632f1ecf71ed3ea5e7/0b533/windbg-ui-008.png\"\n            alt=\"WinDbg Help window\"\n            title=\"WinDbg Help window\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<p>The contents of WinDbg Help are basically the same as the command reference in the official documentation.</p>\n<p>WinDbg Help is available only in English, but personally I find it easier to search than the official documentation, so I use it frequently when I want to look something up quickly.</p>\n<p>There is also unofficial information, such as cheat sheets published by individuals on the internet, that can be useful for working with WinDbg commands.</p>\n<p>As one example, below is the URL of a cheat sheet that I personally created and use.</p>\n<br>\n<p>Cheat sheet for dump analysis and live debugging with WinDbg:</p>\n<p><a href=\"https://kashiwaba-yuki.com/windbg-basics-001\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https://kashiwaba-yuki.com/windbg-basics-001</a></p>\n<br>\n<h2 id=\"summary-of-chapter-2\" style=\"position:relative;\"><a href=\"#summary-of-chapter-2\" aria-label=\"summary of chapter 2 permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Summary of Chapter 2</h2>\n<p>In this chapter, I introduced the basic features and UI operations of WinDbg, the tool used in this book to analyze Windows dump files.</p>\n<p>In particular, the Disassembly, Registers, and Memory windows are extremely helpful for reducing stress while analyzing when you are not yet comfortable using debugger commands.</p>\n<p>Once you become somewhat used to debugger commands, you may find yourself using windows other than the Command window and Scratch Pad less often, but I hope you will still try out WinDbg’s handy features.</p>\n<h2 id=\"links-to-each-chapter\" style=\"position:relative;\"><a href=\"#links-to-each-chapter\" aria-label=\"links to each chapter permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Links to each chapter</h2>\n<ul>\n<li><a href=\"/magical-windbg-vol1-00-en\">Preface</a></li>\n<li><a href=\"/magical-windbg-vol1-01-en\">Chapter 1: Environment Setup</a></li>\n<li><a href=\"/magical-windbg-vol1-02-en\">Chapter 2: Basic WinDbg Operations</a></li>\n<li><a href=\"/magical-windbg-vol1-03-en\">Chapter 3: Prerequisites for Analysis</a></li>\n<li><a href=\"/magical-windbg-vol1-04-en\">Chapter 4: Analyzing Application Crash Dumps</a></li>\n<li><a href=\"/magical-windbg-vol1-05-en\">Chapter 5: Analyzing Full Memory Dumps from System Crashes</a></li>\n<li><a href=\"/magical-windbg-vol1-06-en\">Chapter 6: Investigating User-Mode Application Memory Leaks from Process Dumps</a></li>\n<li><a href=\"/magical-windbg-vol1-07-en\">Chapter 7: Investigating User-Mode Memory Leaks from Full Memory Dumps</a></li>\n<li><a href=\"/magical-windbg-vol1-50-en\">Appendix A: WinDbg Tips</a></li>\n<li><a href=\"/magical-windbg-vol1-51-en\">Appendix B: Analyzing Crash Dumps with Volatility 3</a></li>\n</ul>","fields":{"slug":"/magical-windbg-vol1-02-en","tagSlugs":["/tag/magical-win-dbg/","/tag/windows/","/tag/win-dbg/","/tag/english/"]},"frontmatter":{"date":"2023-11-15","description":"This is the web edition of Magical WinDbg - Enjoying Windows Dump Analysis and Troubleshooting by Feel - VOL.1, distributed at Tech Book Fest 15.","tags":["Magical WinDbg","Windows","WinDbg","English"],"title":"Magical WinDbg VOL.1 [Chapter 2: Basic WinDbg Operations]","socialImage":{"publicURL":"/static/2dbf3e09d59db889dc9dc41adcc8e827/magical-windbg-vol1.png"}}}},"pageContext":{"slug":"/magical-windbg-vol1-02-en"}},"staticQueryHashes":["251939775","401334301","825871152"]}