{"id":7456,"date":"2020-09-26T22:24:31","date_gmt":"2020-09-26T22:24:31","guid":{"rendered":"https:\/\/www.hexacorn.com\/blog\/?p=7456"},"modified":"2020-09-26T23:13:16","modified_gmt":"2020-09-26T23:13:16","slug":"ida-fonts-of-eton","status":"publish","type":"post","link":"https:\/\/www.hexacorn.com\/blog\/2020\/09\/26\/ida-fonts-of-eton\/","title":{"rendered":"IDA Fonts of Eton"},"content":{"rendered":"\n<p>The other day I <a href=\"https:\/\/twitter.com\/Hexacorn\/status\/1306930086587838473?s=20\">twitted<\/a> example of IDA Pro showing code using a very posh font called Harrington:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><a href=\"https:\/\/www.hexacorn.com\/blog\/wp-content\/uploads\/2020\/09\/idaProPosh1.png\"><img decoding=\"async\" src=\"https:\/\/www.hexacorn.com\/blog\/wp-content\/uploads\/2020\/09\/idaProPosh1.png\" alt=\"\" class=\"wp-image-7457\" width=\"500\" srcset=\"https:\/\/www.hexacorn.com\/blog\/wp-content\/uploads\/2020\/09\/idaProPosh1.png 1007w, https:\/\/www.hexacorn.com\/blog\/wp-content\/uploads\/2020\/09\/idaProPosh1-300x113.png 300w, https:\/\/www.hexacorn.com\/blog\/wp-content\/uploads\/2020\/09\/idaProPosh1-768x290.png 768w\" sizes=\"(max-width: 1007px) 100vw, 1007px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><a href=\"https:\/\/www.hexacorn.com\/blog\/wp-content\/uploads\/2020\/09\/idaProPosh2.png\"><img decoding=\"async\" src=\"https:\/\/www.hexacorn.com\/blog\/wp-content\/uploads\/2020\/09\/idaProPosh2.png\" alt=\"\" class=\"wp-image-7458\" width=\"500\" srcset=\"https:\/\/www.hexacorn.com\/blog\/wp-content\/uploads\/2020\/09\/idaProPosh2.png 953w, https:\/\/www.hexacorn.com\/blog\/wp-content\/uploads\/2020\/09\/idaProPosh2-300x57.png 300w, https:\/\/www.hexacorn.com\/blog\/wp-content\/uploads\/2020\/09\/idaProPosh2-768x147.png 768w\" sizes=\"(max-width: 953px) 100vw, 953px\" \/><\/a><\/figure>\n\n\n\n<p>I also posted Comic Sans Serif version by special request from <a href=\"https:\/\/twitter.com\/silascutler\">@silascutler<\/a> \ud83d\ude09<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><a href=\"https:\/\/www.hexacorn.com\/blog\/wp-content\/uploads\/2020\/09\/idaProNotSoPosh4.png\"><img decoding=\"async\" src=\"https:\/\/www.hexacorn.com\/blog\/wp-content\/uploads\/2020\/09\/idaProNotSoPosh4-1024x208.png\" alt=\"\" class=\"wp-image-7460\" width=\"500\" srcset=\"https:\/\/www.hexacorn.com\/blog\/wp-content\/uploads\/2020\/09\/idaProNotSoPosh4-1024x208.png 1024w, https:\/\/www.hexacorn.com\/blog\/wp-content\/uploads\/2020\/09\/idaProNotSoPosh4-300x61.png 300w, https:\/\/www.hexacorn.com\/blog\/wp-content\/uploads\/2020\/09\/idaProNotSoPosh4-768x156.png 768w, https:\/\/www.hexacorn.com\/blog\/wp-content\/uploads\/2020\/09\/idaProNotSoPosh4.png 1027w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<p>and<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><a href=\"https:\/\/www.hexacorn.com\/blog\/wp-content\/uploads\/2020\/09\/idaProNotSoPosh3.png\"><img decoding=\"async\" src=\"https:\/\/www.hexacorn.com\/blog\/wp-content\/uploads\/2020\/09\/idaProNotSoPosh3.png\" alt=\"\" class=\"wp-image-7459\" width=\"500\" srcset=\"https:\/\/www.hexacorn.com\/blog\/wp-content\/uploads\/2020\/09\/idaProNotSoPosh3.png 930w, https:\/\/www.hexacorn.com\/blog\/wp-content\/uploads\/2020\/09\/idaProNotSoPosh3-300x160.png 300w, https:\/\/www.hexacorn.com\/blog\/wp-content\/uploads\/2020\/09\/idaProNotSoPosh3-768x409.png 768w\" sizes=\"(max-width: 930px) 100vw, 930px\" \/><\/a><\/figure>\n\n\n\n<p>If you are curious how I did it &#8212; well, I chose the hardest possible way w\/o looking at alternatives. <\/p>\n\n\n\n<p>If you open IDA Pro Font choosing Dialog Box you will only see a subset of fonts that have a fixed width (Monospaced fonts):<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><a href=\"https:\/\/www.hexacorn.com\/blog\/wp-content\/uploads\/2020\/09\/IDAProFont.png\"><img decoding=\"async\" src=\"https:\/\/www.hexacorn.com\/blog\/wp-content\/uploads\/2020\/09\/IDAProFont.png\" alt=\"\" class=\"wp-image-7461\" width=\"500\" srcset=\"https:\/\/www.hexacorn.com\/blog\/wp-content\/uploads\/2020\/09\/IDAProFont.png 502w, https:\/\/www.hexacorn.com\/blog\/wp-content\/uploads\/2020\/09\/IDAProFont-300x234.png 300w\" sizes=\"(max-width: 502px) 100vw, 502px\" \/><\/a><\/figure>\n\n\n\n<p> In order to adjust IDA&#8217;s behaviour to allow me to choose any font I&#8230; didn&#8217;t check configuration files or Registry &#8211; I went directly to the co(d|r)e. <\/p>\n\n\n\n<p>If you ever played with GDI API functions you know that font selection is associated with a variety of CreateFont* functions. One of the lowest level user-mode functions that is eventually called is CreateFontIndirectW. If you know that, the recipe is simple &#8211; open IDA Pro under XDBG, put a breakpoint on CreateFontIndirectW, disable it, let IDA Run, Open Font Dialog Box, choose any font &#8211; now you are game, now enable breakpoint, hit OK &#8211; change font name in XDBG, run. Et Voil\u00e0!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The other day I twitted example of IDA Pro showing code using a very posh font called Harrington: I also posted Comic Sans Serif version by special request from @silascutler \ud83d\ude09 and If you are curious how I did it &hellip; <a href=\"https:\/\/www.hexacorn.com\/blog\/2020\/09\/26\/ida-fonts-of-eton\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[18],"tags":[],"_links":{"self":[{"href":"https:\/\/www.hexacorn.com\/blog\/wp-json\/wp\/v2\/posts\/7456"}],"collection":[{"href":"https:\/\/www.hexacorn.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hexacorn.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hexacorn.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hexacorn.com\/blog\/wp-json\/wp\/v2\/comments?post=7456"}],"version-history":[{"count":4,"href":"https:\/\/www.hexacorn.com\/blog\/wp-json\/wp\/v2\/posts\/7456\/revisions"}],"predecessor-version":[{"id":7465,"href":"https:\/\/www.hexacorn.com\/blog\/wp-json\/wp\/v2\/posts\/7456\/revisions\/7465"}],"wp:attachment":[{"href":"https:\/\/www.hexacorn.com\/blog\/wp-json\/wp\/v2\/media?parent=7456"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hexacorn.com\/blog\/wp-json\/wp\/v2\/categories?post=7456"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hexacorn.com\/blog\/wp-json\/wp\/v2\/tags?post=7456"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}