<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Uncategorized &#8211; NTCore</title>
	<atom:link href="https://ntcore.com/category/uncategorized/feed/" rel="self" type="application/rss+xml" />
	<link>https://ntcore.com</link>
	<description></description>
	<lastBuildDate>Tue, 06 May 2025 15:13:57 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9</generator>

<image>
	<url>https://ntcore.com/wp-content/uploads/2018/07/cropped-ntcore_icon-2-32x32.png</url>
	<title>Uncategorized &#8211; NTCore</title>
	<link>https://ntcore.com</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">184274875</site>	<item>
		<title>🚨 WARNING: Impersonator website</title>
		<link>https://ntcore.com/warning-impersonator/</link>
					<comments>https://ntcore.com/warning-impersonator/#respond</comments>
		
		<dc:creator><![CDATA[Erik Pistelli]]></dc:creator>
		<pubDate>Tue, 06 May 2025 13:36:54 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<guid isPermaLink="false">https://ntcore.com/?p=767</guid>

					<description><![CDATA[A fake domain—cff-explorer[.]com—has been registered to impersonate CFF Explorer. It currently appears as the top or second (depending on language) Google result when searching for &#8220;CFF Explorer&#8221;. The only legitimate domain is ntcore.com.]]></description>
										<content:encoded><![CDATA[<p>A fake domain—cff-explorer[.]com—has been registered to impersonate CFF Explorer. It currently appears as the top or second (depending on language) Google result when searching for &#8220;CFF Explorer&#8221;. <strong>The only legitimate domain is <a href="https://ntcore.com">ntcore.com</a>.</strong></p>
]]></content:encoded>
					
					<wfw:commentRss>https://ntcore.com/warning-impersonator/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">767</post-id>	</item>
		<item>
		<title>IDAQ: The result of 7 months at Hex-Rays</title>
		<link>https://ntcore.com/idaq-the-result-of-7-months-at-hex-rays/</link>
					<comments>https://ntcore.com/idaq-the-result-of-7-months-at-hex-rays/#comments</comments>
		
		<dc:creator><![CDATA[Erik Pistelli]]></dc:creator>
		<pubDate>Mon, 02 Aug 2010 21:00:49 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<guid isPermaLink="false">http://rcecafe.net/?p=151</guid>

					<description><![CDATA[It is not a mistery that Hex-Rays is preparing for the IDA 6.0 beta program. In this post I&#8217;ll write a bit about my personal, behind the scenes, experience with the project. It took me 7 months to port/rewrite the old VCL GUI of IDA Pro. The new GUI, as it had been already anticipated &#8230; <a href="https://ntcore.com/idaq-the-result-of-7-months-at-hex-rays/" class="more-link">Continue reading<span class="screen-reader-text"> "IDAQ: The result of 7 months at Hex-Rays"</span></a>]]></description>
										<content:encoded><![CDATA[<p>It is not a mistery that Hex-Rays is preparing for the IDA 6.0 beta program. In this post I&#8217;ll write a bit about my personal, behind the scenes, experience with the project.</p>
<p>It took me 7 months to port/rewrite the old VCL GUI of IDA Pro. The new GUI, as it had been already anticipated months ago <a href="http://hexblog.com/2010/03/preview_of_the_next_generation.html">on the official blog</a>, is Qt based.</p>
<p>The main difficulties I have faced were mostly not of technical nature, although it was a complex task, but psychological ones. It took a lot of patience and it was very difficult every morning to go to work and to have to see an unfinished product with the old GUI reminding myself how much was still to do.</p>
<p>What follows is a rough roadmap of my work, I&#8217;ll mention only the milestones and not the hundreds of smaller parts. It has to be noted that at least for what concerns the docking I wrote most of it before joining Hex-Rays to accelerate the development of the actual GUI once in the company. While Qt has a docking system, it is not as advanced as the one used by the VCL GUI, which is a commercial control. So, I wrote a docking system myself in order to offer all the advanced features the old GUI had.</p>
<p><strong>January</strong>: first impact with the code. Took me a week to grasp the initial concepts to start. Basically at the end of the month I could display disassembly and graph mode of a file. Also, hints, graph overview and disassembly arrows were implemented.</p>
<p><strong>February</strong>: implemented chooser and forms (which I actually completely changed internally, that&#8217;s why I had to improve them again later on to obtain better backwards compatibility).</p>
<p><strong>March</strong>: marathon month. Implemented every day one or more dialogs/views such as: hex view, cpu regs view, enum view, struct view, options, navigation band, colors, etc. etc. More than 30, some very easy, some advanced controls such as the hex view or the cpu regs view.</p>
<p><strong>April</strong>: two weeks to finish the docking and smaller things.</p>
<p><strong>May</strong>: two weeks to implement the desktop part (the ability to save/restore layouts and options) and smaller things.</p>
<p><strong>June</strong>: fixes, help system and improved the forms implementation.</p>
<p><strong>July</strong>: Hundreds of fixes for the beta.</p>
<p>While there will be still bugs to fix, I consider the project as completed and I wrote this post to close a chapter for myself.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ntcore.com/idaq-the-result-of-7-months-at-hex-rays/feed/</wfw:commentRss>
			<slash:comments>5</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">151</post-id>	</item>
		<item>
		<title>My first month at Hex-Rays</title>
		<link>https://ntcore.com/my-first-month-at-hex-rays/</link>
					<comments>https://ntcore.com/my-first-month-at-hex-rays/#comments</comments>
		
		<dc:creator><![CDATA[Erik Pistelli]]></dc:creator>
		<pubDate>Sun, 07 Feb 2010 19:04:15 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<guid isPermaLink="false">http://rcecafe.net/?p=136</guid>

					<description><![CDATA[At the beginning of September I started looking for a job. I actually wanted a job to work from remote. Despite the fact that I got several offers, all of them required relocation. So in the end I saw the Hex-Rays hiring announcement on Woodmann and sent out my résumé. From all the relocations, Belgium &#8230; <a href="https://ntcore.com/my-first-month-at-hex-rays/" class="more-link">Continue reading<span class="screen-reader-text"> "My first month at Hex-Rays"</span></a>]]></description>
										<content:encoded><![CDATA[<p>At the beginning of September I started looking for a job. I actually wanted a job to work from remote. Despite the fact that I got several offers, all of them required relocation. So in the end I saw the Hex-Rays hiring announcement on Woodmann and sent out my résumé. From all the relocations, Belgium was the nearest and best connected one and of course it&#8217;s a very good job.</p>
<p>The first month at Hex-Rays has been tough on all fronts. Mainly because of the relocation and getting used to work in an office. Now work is proceeding well, but the rest is still difficult. Having one day of sun here in Belgium would help, by the way.</p>
<p>Musil wrote in his life&#8217;s work that modern man is spending his life always increasing his level of expertise, remaining with a millimeter of specialistic knowledge which only few people in the world could really understand. The others, talking about his millimeter would only say stupid things and he himself can&#8217;t move from his own millimeter without running into the same problem.<br />
I think I found my millimeter in the IT world. However, I can&#8217;t stand still on it. I always keep moving with exasperated restlessness.</p>
<p>I have written in the last 2 years at least 5 programs of bigger size which are almost complete, but as I&#8217;m now working at Hex-Rays they will have to wait. When I was writing mostly software on my own I did it almost entirely to be active in something. Now that I&#8217;m working on IDA every day I feel that my need of being active is fulfilled and I don&#8217;t feel the need to write more code when I&#8217;m at home. Instead, I feel the need of art.</p>
<p>Why haven&#8217;t I tried producing art instead of programming already? Because I have always been capable of judging my own work objectively and I know when the time is not right.</p>
<p>What&#8217;s the difference between programming and art? Both need experience. The difference is that one can build one&#8217;s technical experience alone in one&#8217;s room, without the help of events, social interaction, etc. In a technical field it is possible to make the time needed for experience advance faster. Viceversa, in one&#8217;s reflections about life one has to actually follow the time of his own life.</p>
<p>I feel that something is changing about that.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ntcore.com/my-first-month-at-hex-rays/feed/</wfw:commentRss>
			<slash:comments>9</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">136</post-id>	</item>
		<item>
		<title>Busy &#038; Qt 4.6</title>
		<link>https://ntcore.com/busy-qt-4-6/</link>
					<comments>https://ntcore.com/busy-qt-4-6/#comments</comments>
		
		<dc:creator><![CDATA[Erik Pistelli]]></dc:creator>
		<pubDate>Sun, 13 Dec 2009 16:28:49 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<guid isPermaLink="false">http://rcecafe.net/?p=132</guid>

					<description><![CDATA[I apologize if in the last time I couldn&#8217;t answer to emails without many days of delay, but I&#8217;m incredibly busy in my real life. There is some important news I can&#8217;t yet talk about but will soon. Also, yesterday the new Qt 4.6 has come out. For Windows developers good news: the sdk come &#8230; <a href="https://ntcore.com/busy-qt-4-6/" class="more-link">Continue reading<span class="screen-reader-text"> "Busy &#038; Qt 4.6"</span></a>]]></description>
										<content:encoded><![CDATA[<p>I apologize if in the last time I couldn&#8217;t answer to emails without many days of delay, but I&#8217;m incredibly busy in my real life.<br />
There is some important news I can&#8217;t yet talk about but will soon.</p>
<p>Also, yesterday the new Qt 4.6 has come out. For Windows developers good news: the sdk come with gcc 4.4 with patches for phonon, in case you don&#8217;t want to use Visual Studio (like myself). Among the new features: animation and state machine frameworks, multi-touch support, symbian support. Also many improvements in Qt Creator.</p>
<p>P.S. I wanted to publish this post several days ago, but pressed Save Draft instead of Publish.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ntcore.com/busy-qt-4-6/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">132</post-id>	</item>
		<item>
		<title>Server Bug: Reupload</title>
		<link>https://ntcore.com/server-bug-reupload/</link>
					<comments>https://ntcore.com/server-bug-reupload/#respond</comments>
		
		<dc:creator><![CDATA[Erik Pistelli]]></dc:creator>
		<pubDate>Wed, 19 Aug 2009 15:51:08 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<guid isPermaLink="false">http://rcecafe.net/?p=101</guid>

					<description><![CDATA[Today I received the following email from my hosting provider: [&#8230;] Security is our highest priority and the last years we have taken dramatic measures to build the most secure hosting environment around. Unfortunately we have however been affected by the Linux kernel vulnerability (CVE-2009-2692) for a 24 hour period. Due to our architecture this &#8230; <a href="https://ntcore.com/server-bug-reupload/" class="more-link">Continue reading<span class="screen-reader-text"> "Server Bug: Reupload"</span></a>]]></description>
										<content:encoded><![CDATA[<p>Today I received the following email from my hosting provider:</p>
<p><em>[&#8230;] Security is our highest priority and the last years we have taken dramatic measures to build the most secure hosting environment around. </p>
<p>Unfortunately we have however been affected by the Linux kernel vulnerability (CVE-2009-2692) for a 24 hour period. Due to our architecture this exploit did not compromise personal data and all customer records are safe.</p>
<p>After updating the kernel on our systems we scanned all customer accounts and found that your index was removed. Therefore we kindly ask you to check your webpage and reupload your index page if it is missing.</p>
<p>We sincerely apologize for this incident and will take measures to ensure to prevent such incidents in the future.</em></p>
<p>The index pages of both rcecafe and ntcore were missing in fact. For precaution I reuploaded both pages completely.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ntcore.com/server-bug-reupload/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">101</post-id>	</item>
		<item>
		<title>Entry Demonstration</title>
		<link>https://ntcore.com/msil-test/</link>
					<comments>https://ntcore.com/msil-test/#comments</comments>
		
		<dc:creator><![CDATA[Erik Pistelli]]></dc:creator>
		<pubDate>Tue, 08 Jul 2008 08:31:45 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<guid isPermaLink="false">http://rcecafe.net/?p=6</guid>

					<description><![CDATA[Introduction This article is the second of a two series of articles about the .NET Framework internals and the protections available for .NET assemblies. This article analyzes more in depth the .NET internals. Thus, the reader should be familiar with the past article, otherwise certain paragraphs of this article may seem obscure. As the JIT &#8230; <a href="https://ntcore.com/msil-test/" class="more-link">Continue reading<span class="screen-reader-text"> "Entry Demonstration"</span></a>]]></description>
										<content:encoded><![CDATA[<p><strong>Introduction</strong></p>
<p>This article is the second of a two series of articles about the .NET Framework internals and the protections available for .NET assemblies. This article analyzes more in depth the .NET internals. Thus, the reader should be familiar with the past article, otherwise certain paragraphs of this article may seem obscure. As the JIT inner workings haven&#8217;t been analyzed yet, .NET protections are quite naïve nowadays. This situation will rapidly change as soon as the reverse engineering community will focus its attention on this technology. These two articles are aimed to raise the consciousness about the current state of .NET protections and what is possible to achieve but hasn&#8217;t been done yet. In particular, the past article about .NET code injection represents, let&#8217;s say, the present, whereas the current one about .NET native compiling represents the future. What I&#8217;m presenting in these two articles is new at the time I&#8217;m writing it, but I expect it to become obsolete in less than a year. Of course, this is obvious as I&#8217;m moving the first steps out from current .NET protections in the direction of better ones. But this article isn&#8217;t really about protections: exploring the .NET Framework internals can be useful for many purposes. So, talking about protections is just a means to an end.<br />
<strong><br />
What is Native Compiling?</strong></p>
<p>Strictly speaking it means converting the MSIL code of a .NET assembly to native machine code and then removing the MSIL code from that assembly, making it impossible to decompile it in a straightforward way. The only existing tool to native compile .NET assemblies is the Salamander.NET linker which relies on native images to do its job. The &#8220;native images&#8221; (which in this article I called &#8220;Native Framework Deployment&#8221;) technique is quite distant from .NET internals: one doesn&#8217;t need a good knowledge of .NET internals to implement it. But, as the topic is, I might say, quite popular, I&#8217;m going to show to the reader how to write his Native Framework Deployment tool if he wishes to. However, the article will go further than that by introducing Native Injection, which means nothing else than taking the JIT&#8217;s place. Even though this is not useful for commercial protections (or whatever), it&#8217;s a good way to play with JIT internals. I&#8217;m also going to introduce Native Decompiling, which is the result of an understanding of .NET internals. I&#8217;m also trying to address another topic: .NET Virtual Machine Protections.</p>
<p><strong>Native Images</strong></p>
<p>The internal format of native images is yet undocumented. It also would be quite hard documenting it as it constantly changes. For instance, it completely changed from version 1 to version 2 of the .NET framework. And, as the new framework 3.5 SP1 has been released a few days ago, it changed another time. I&#8217;m not sure on what extent it changed in the last version, but one change can be noticed immediately. The original MetaData is now directly available without changing the entry in the .NET directory to the MetaData RVA found in the Native Header. If you do that action, you&#8217;ll end up with the native image MetaData which isn&#8217;t much interesting. Also, in earlier native images (previous to 3.5 SP1 framework) to obtain the original MSIL code of a method, one had to add the RVA found in the MethodDef table to the Original MSIL Code RVA entry in the native header. This is no longer necessary as the MethodDef RVA entry now points directly to the method&#8217;s MSIL code.</p>
<pre lang="msil">.method public hidebysig virtual instance void
B(class ['Microsoft.Licensing.Utils2.0']Microsoft.Licensing.Utils.Xml.IXmlDataNode A_0) cil managed
{
// Code size       33 (0x21)
.maxstack  8
IL_0000:  ldarg.0
IL_0001:  ldarg.1
IL_0002:  ldstr      "ps:IncludeRules"
IL_0007:  ldc.i4.1
IL_0008:  call       instance void class Microsoft1Licensing1Runtime210GE<!--A-->::A(class ['Microsoft.Licensing.Utils2.0']Microsoft.Licensing.Utils.Xml.IXmlDataNode,
string,
valuetype Microsoft.Licensing.CodeRules.CodeRuleType)
IL_000d:  ldarg.0
IL_000e:  ldarg.1
IL_000f:  ldstr      "ps:ExcludeRules"
IL_0014:  ldc.i4.2
IL_0015:  call       instance void class Microsoft1Licensing1Runtime210GE<!--A-->::A(class ['Microsoft.Licensing.Utils2.0']Microsoft.Licensing.Utils.Xml.IXmlDataNode,
string,
valuetype Microsoft.Licensing.CodeRules.CodeRuleType)
IL_001a:  ldarg.0
IL_001b:  call       instance void class Microsoft1Licensing1Runtime210GE<!--A-->::E()
IL_0020:  ret
} // end of method Microsoft1Licensing1Runtime210GE::B</pre>
<p><strong>Native Framework Deployment</strong></p>
<p>The name I gave to this sort of protection may appear a bit strange, but it will appear quite obvious as soon as I have explained how it actually works. As already said, there&#8217;s no protection system other than the Salamander Linker which removes the MSIL and ships only native machine code. And, in order to do that, the Salamander Linker relies on native images generated by ngen. The Salamander Linker offers a downloadable demonstration on its home page and we will take a look at that without, of course, analyzing its code, as I don&#8217;t intend to violate any licensing terms it may imply. In this paragraph I&#8217;m going to show how it is technically quite easy to write a Native Framework Deployment tool, but I doubt that the reader will want to write one after reading this. Don&#8217;t get me wrong, the Salamander Linker absolutely holds its promise and actually removes the MSIL code from one&#8217;s application, but the method used faces many problems and in my opinion is not a real solution.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ntcore.com/msil-test/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">549</post-id>	</item>
		<item>
		<title>Goodbye Visual C++</title>
		<link>https://ntcore.com/goodbye-visual-c/</link>
					<comments>https://ntcore.com/goodbye-visual-c/#comments</comments>
		
		<dc:creator><![CDATA[Erik Pistelli]]></dc:creator>
		<pubDate>Sat, 21 Jun 2008 13:40:00 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[GCC]]></category>
		<category><![CDATA[Visual C++]]></category>
		<guid isPermaLink="false">http://rcecafe.net/?p=33</guid>

					<description><![CDATA[Seems the new CFF Explorer will be compiled with GCC. More than one reason for that. Visual Studio 2008 doesn&#8217;t support anymore Windows 98 and NT4 without giving an explanation. The incompatibility is due to a major operating system version inside the Optional Header of the PE and to the fact that the C runtime &#8230; <a href="https://ntcore.com/goodbye-visual-c/" class="more-link">Continue reading<span class="screen-reader-text"> "Goodbye Visual C++"</span></a>]]></description>
										<content:encoded><![CDATA[<p>Seems the new CFF Explorer will be compiled with GCC. More than one reason for that. Visual Studio 2008 doesn&#8217;t support anymore Windows 98 and NT4 without giving an explanation. The incompatibility is due to a major operating system version inside the Optional Header of the PE and to the fact that the C runtime library makes some unsupported calls. I could of course patch the whole thing and manage to make it run on those operating systems, but why should I? This is not my job. It should be Microsoft&#8217;s job to offer an alternative compiling method which provides backward compatibility. What angers me is that Microsoft not only doesn&#8217;t care about backward compatibility, they don&#8217;t even bother explaining why they had to remove the support for those operating system. The GCC (Mingw) runtime makes it possible to even compile Qt programs for Windows 98 (which is possible with VC++ 2005 too, but it forces me to use an older compiler). And, as I might not be interested so much in Windows 98, I really am interested in providing compatibility with NT4. Or, at least, if it doesn&#8217;t offer backward compatibility I want it to be for a better reason than the C runtime. I&#8217;m sick and tired of these decisions Microsoft imposes. Just like the XP support which soon will end (actually I haven&#8217;t understood if it ends this month or in April 2009). As I understood for OEMs it ends this month. Anyway, I managed to compile the CFF&#8217;s kernel with GCC and also fixed lots of errors signalled by that compiler. Another good reason to use GCC is that it&#8217;s cross platform, meaning that a port would be much easier. The only drawback of Mingw is that it has a very small (and not up-to-date) Windows SDK, but I&#8217;m not interested in that, especially for the CFF Explorer which should become 100% platform independent. At the moment I reached 97% platform independency. My only complaint is directed to the ansi C library. My goodness, you can&#8217;t do anything with the IO functions it provides. I&#8217;m grateful that they were so kind to provide 64bit support for files: fseek64, ftello64 etc. But there are lots of things missing. For instance, I am unable to truncate a file&#8230; In a normal world that would be: FILE *f = fopen(..); ftruncate(f, len);. No, that&#8217;s not possible at all in ansi C. That really bothers me, because it forces me to write platform dependent code for my basic programming interface.</p>
<p>EDIT: Seems the new QFile of Qt 4.4 implements the resize method for files and that would do just fine.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ntcore.com/goodbye-visual-c/feed/</wfw:commentRss>
			<slash:comments>9</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">33</post-id>	</item>
		<item>
		<title>Update: Mini Hook Engine</title>
		<link>https://ntcore.com/update-mini-hook-engine/</link>
					<comments>https://ntcore.com/update-mini-hook-engine/#respond</comments>
		
		<dc:creator><![CDATA[Erik Pistelli]]></dc:creator>
		<pubDate>Sat, 05 Apr 2008 12:10:00 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<guid isPermaLink="false">http://rcecafe.net/?p=29</guid>

					<description><![CDATA[Fixed a significant bug in the mini hook engine on x64. The functions&#8217; syntax hasn&#8217;t changed, so you can just update your dll.]]></description>
										<content:encoded><![CDATA[<p>Fixed a significant bug in the mini hook engine on x64. The functions&#8217; syntax hasn&#8217;t changed, so you can just update your dll.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ntcore.com/update-mini-hook-engine/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">29</post-id>	</item>
		<item>
		<title>New MFC 2008</title>
		<link>https://ntcore.com/new-mfc-2008/</link>
					<comments>https://ntcore.com/new-mfc-2008/#respond</comments>
		
		<dc:creator><![CDATA[Erik Pistelli]]></dc:creator>
		<pubDate>Wed, 19 Mar 2008 14:54:00 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<guid isPermaLink="false">http://rcecafe.net/?p=28</guid>

					<description><![CDATA[Big news: Microsoft is developing MFC again! Seems that the huge managed code campain didn&#8217;t stop developers from writing MFC applications. So, for the first time in years huge updates have been made to the MFC. The new MFC will soon be available (they&#8217;re still in beta) as an update. I quote from Somasegar&#8217;s MSDN &#8230; <a href="https://ntcore.com/new-mfc-2008/" class="more-link">Continue reading<span class="screen-reader-text"> "New MFC 2008"</span></a>]]></description>
										<content:encoded><![CDATA[<p>Big news: Microsoft is developing MFC again!</p>
<p>Seems that the huge managed code campain didn&#8217;t stop developers from writing MFC applications. So, for the first time in years huge updates have been made to the MFC. The new MFC will soon be available (they&#8217;re still in beta) as an update.</p>
<p>I quote from <a href="http://blogs.msdn.com/somasegar/archive/2007/11/09/visual-c-libraries-update.aspx">Somasegar&#8217;s MSDN blog</a>:</p>
<p><span style="font-style:italic;">The team is looking at the feedback and finalizing plans for where we should be focusing to move Visual C++ forward.  One of the first areas you will see us invest is in native libraries.  The team is working on a significant update to the Microsoft Foundation Classes (MFC).  We will be delivering this as an update to Visual Studio 2008 in the first half of 2008.  We will have a preview of the same sometime around the early part of the new year.</span></p>
<p>Using this update to MFC, developers will be able to create applications with the “look and feel” of Microsoft’s Office, Internet Explorer and Visual Studio.  Some of the specific features include Office 2007 Ribbon bar look, Internet Explorer look with rebars and task panes, Visual Studio look with sophisticated docking functionality, auto hide windows, property grids and the like.  You can also enable your users to customize your application through live drag and drop of menu items and toolbar buttons.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ntcore.com/new-mfc-2008/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">28</post-id>	</item>
		<item>
		<title>PE Validator Script</title>
		<link>https://ntcore.com/pe-validator-script/</link>
					<comments>https://ntcore.com/pe-validator-script/#respond</comments>
		
		<dc:creator><![CDATA[Erik Pistelli]]></dc:creator>
		<pubDate>Fri, 08 Feb 2008 10:53:00 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<guid isPermaLink="false">http://rcecafe.net/?p=26</guid>

					<description><![CDATA[Checking the validity of a PE file is a very difficult task, but checking a .NET assembly is even more complicated, since you have to check the tables integrity, the code integrity, the stack integrity etc. Ok, there&#8217;s already a tool that does that provided by the .NET framework. However, that tool isn&#8217;t perfect either &#8230; <a href="https://ntcore.com/pe-validator-script/" class="more-link">Continue reading<span class="screen-reader-text"> "PE Validator Script"</span></a>]]></description>
										<content:encoded><![CDATA[<p>Checking the validity of a PE file is a very difficult task, but checking a .NET assembly is even more complicated, since you have to check the tables integrity, the code integrity, the stack integrity etc. Ok, there&#8217;s already a tool that does that provided by the .NET framework. However, that tool isn&#8217;t perfect either and doesn&#8217;t check some other problems. When I wrote my .NET compiler I spent literally days figuring out what was wrong one time or another time in the format I produced, and the MS tools didn&#8217;t help. But let&#8217;s not go OT, I just wanted to say that this a topic on the woodmann forum triggered my interest because it was a good opportunity to test the CFF Explorer&#8217;s scripting capabilities. So, yesterday I took two hours and wrote a little script (called PE Validator Script) which checks for some of the most common problems in a PE. Since it&#8217;s a script (thus opensource) it can be expanded easily.</p>
<p>You can find it in the extensions repository:</p>
<p>http://www.woodmann.com/collaborative/tools/index.php/PE_Validator_Script</p>
<p>Here are the current checks:</p>
<p>&#8212; check CRC32 (useful for drivers)<br />&#8212; check number of rva and sizes<br />&#8212; check image size<br />&#8212; check sections<br />&#8212; check that EP is valid<br />&#8212; check that EP is in code<br />&#8212; check that the EP section is executable<br />&#8212; check data directories RVAs<br />&#8212; check whether the API IsDebuggerPresent is imported</p>
<p>Don&#8217;t be too serious about it, it&#8217;s just a thing I did for fun.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ntcore.com/pe-validator-script/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">26</post-id>	</item>
	</channel>
</rss>
