<?xml version="1.0" encoding="ISO-8859-1"?>

<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
	<channel>
		<title>A Development Site for Reverse Engineering - GameDeception</title>
		<link>http://www.gamedeception.net/</link>
		<description>Development site for reverse engineering games and other software</description>
		<language>en</language>
		<lastBuildDate>Sat, 19 May 2012 01:27:51 GMT</lastBuildDate>
		<generator>vBulletin</generator>
		<ttl>60</ttl>
		<image>
			<url>http://www.gamedeception.net/images/misc/rss.png</url>
			<title>A Development Site for Reverse Engineering - GameDeception</title>
			<link>http://www.gamedeception.net/</link>
		</image>
		<item>
			<title>MapHack Question</title>
			<link>http://www.gamedeception.net/threads/24671-MapHack-Question?goto=newpost</link>
			<pubDate>Fri, 18 May 2012 13:55:01 GMT</pubDate>
			<description>On a game like diablo, how are maphacks usually implemented.  For example, is there usually a simple variable switch that can be turned on and off to enable/disable the view of the full map?</description>
			<content:encoded><![CDATA[<div>On a game like diablo, how are maphacks usually implemented.  For example, is there usually a simple variable switch that can be turned on and off to enable/disable the view of the full map?</div>

]]></content:encoded>
			<category domain="http://www.gamedeception.net/forums/252-Beginner">Beginner</category>
			<dc:creator>maybnxtseasn</dc:creator>
			<guid isPermaLink="true">http://www.gamedeception.net/threads/24671-MapHack-Question</guid>
		</item>
		<item>
			<title>Solution Keeping track of runtime</title>
			<link>http://www.gamedeception.net/threads/24670-Keeping-track-of-runtime?goto=newpost</link>
			<pubDate>Thu, 17 May 2012 21:58:19 GMT</pubDate>
			<description>I use this to measure the efficiency of my hack, but you can use it to measure pretty much whatever you want, as long as you have a call at the start and a call at the end. 
 
timeGetTime is the most reliable method I have found. QueryPerformanceCounter I have had problems with when getting in...</description>
			<content:encoded><![CDATA[<div>I use this to measure the efficiency of my hack, but you can use it to measure pretty much whatever you want, as long as you have a call at the start and a call at the end.<br />
<br />
timeGetTime is the most reliable method I have found. QueryPerformanceCounter I have had problems with when getting in between threads, so I tend to use timeGetTime since it's based on the system clock not processor cycles.<br />
<br />
Anywho, as a demonstration, I will use DllMain as an example.<br />
<br />
<div class="bbcode_container">
	<div class="bbcode_description">PHP Code:</div>
	<hr /><code class="bbcode_code"><code><span style="color: #000000">
<span style="color: #0000BB">BOOL&nbsp;WINAPI&nbsp;DllMain</span><span style="color: #007700">(&nbsp;</span><span style="color: #0000BB">HINSTANCE&nbsp;hInstance</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">DWORD&nbsp;dwReasonOfCall</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">LPVOID&nbsp;lpReserved&nbsp;</span><span style="color: #007700">)<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;static&nbsp;</span><span style="color: #0000BB">int&nbsp;injectiontime</span><span style="color: #007700">;<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(&nbsp;</span><span style="color: #0000BB">dwReasonOfCall&nbsp;</span><span style="color: #007700">==&nbsp;</span><span style="color: #0000BB">DLL_PROCESS_ATTACH&nbsp;</span><span style="color: #007700">)<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">injectiontime&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">timeGetTime</span><span style="color: #007700">();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #FF8000">/*Do&nbsp;your&nbsp;shit&nbsp;here*/<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">}<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(&nbsp;</span><span style="color: #0000BB">dwReasonOfCall&nbsp;</span><span style="color: #007700">==&nbsp;</span><span style="color: #0000BB">DLL_PROCESS_DETACH&nbsp;</span><span style="color: #007700">)<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">int&nbsp;dejectiontime&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">timeGetTime</span><span style="color: #007700">()&nbsp;-&nbsp;</span><span style="color: #0000BB">injectiontime</span><span style="color: #007700">;<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">int&nbsp;iHour&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">dejectiontime&nbsp;</span><span style="color: #007700">/&nbsp;</span><span style="color: #0000BB">1000&nbsp;</span><span style="color: #007700">/&nbsp;</span><span style="color: #0000BB">60&nbsp;</span><span style="color: #007700">/&nbsp;</span><span style="color: #0000BB">60</span><span style="color: #007700">;<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">dejectiontime&nbsp;</span><span style="color: #007700">-=&nbsp;(</span><span style="color: #0000BB">iHour&nbsp;</span><span style="color: #007700">*&nbsp;</span><span style="color: #0000BB">60&nbsp;</span><span style="color: #007700">*&nbsp;</span><span style="color: #0000BB">60&nbsp;</span><span style="color: #007700">*&nbsp;</span><span style="color: #0000BB">1000</span><span style="color: #007700">);<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">int&nbsp;iMinutes&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">dejectiontime&nbsp;</span><span style="color: #007700">/&nbsp;</span><span style="color: #0000BB">1000&nbsp;</span><span style="color: #007700">/&nbsp;</span><span style="color: #0000BB">60</span><span style="color: #007700">;<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">dejectiontime&nbsp;</span><span style="color: #007700">-=&nbsp;(</span><span style="color: #0000BB">iMinutes&nbsp;</span><span style="color: #007700">*&nbsp;</span><span style="color: #0000BB">60&nbsp;</span><span style="color: #007700">*&nbsp;</span><span style="color: #0000BB">1000</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">int&nbsp;iSeconds&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">dejectiontime&nbsp;</span><span style="color: #007700">/&nbsp;</span><span style="color: #0000BB">1000</span><span style="color: #007700">;<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">std</span><span style="color: #007700">::</span><span style="color: #0000BB">cout&nbsp;</span><span style="color: #007700">&gt;&gt;&nbsp;</span><span style="color: #DD0000">"Runtime:&nbsp;%.2i:%.2i\ni"</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">iHour</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">iMinutes</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">iSeconds&nbsp;</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;</span><span style="color: #0000BB">true</span><span style="color: #007700">;<br />}&nbsp;<br /></span><span style="color: #0000BB"></span>
</span>
</code></code><hr />
</div></div>

]]></content:encoded>
			<category domain="http://www.gamedeception.net/forums/251-Intermediate">Intermediate</category>
			<dc:creator>!Slrig</dc:creator>
			<guid isPermaLink="true">http://www.gamedeception.net/threads/24670-Keeping-track-of-runtime</guid>
		</item>
		<item>
			<title>Question Anyone have a working Hack for sXe 12.3?</title>
			<link>http://www.gamedeception.net/threads/24668-Anyone-have-a-working-Hack-for-sXe-12-3?goto=newpost</link>
			<pubDate>Thu, 17 May 2012 18:55:20 GMT</pubDate>
			<description>Anyone have a working Hack for sXe Wall 12.3? without error notepad Step Down sXe-I 
 
I am looking for a mini multihack for this version 12.3 
 
If it can be 
 
Aimbot (1 = Head / 2 = Body / 3 = Stomach) 
AimSpot (1 = Head / 2 = Body / 3 = Stomach) 
DistanceEsp (Let me show the distance from the...</description>
			<content:encoded><![CDATA[<div>Anyone have a working Hack for sXe Wall 12.3? without error notepad Step Down sXe-I<br />
<br />
I am looking for a mini multihack for this version 12.3<br />
<br />
If it can be<br />
<br />
Aimbot (1 = Head / 2 = Body / 3 = Stomach)<br />
AimSpot (1 = Head / 2 = Body / 3 = Stomach)<br />
DistanceEsp (Let me show the distance from the enemy and friend)<br />
NameEsp (Let me show you the names of enemy and friend)<br />
<br />
And antiscreen? I am willing to pay for this in order to support the community ( Platform no steam )<br />
<br />
Turns out I was a buyer of xzone gh0s7 h4x-reactor but have patched and no longer works and you function the only ones who used that hack was only, those that I am representing here I would love some antiflash antismoke and also to complete .. ( 4 usd per week paid )</div>

]]></content:encoded>
			<category domain="http://www.gamedeception.net/forums/272-Counter-Strike-1-6">Counter-Strike 1.6</category>
			<dc:creator>DragonBallzxDDD</dc:creator>
			<guid isPermaLink="true">http://www.gamedeception.net/threads/24668-Anyone-have-a-working-Hack-for-sXe-12-3</guid>
		</item>
		<item>
			<title>ASM snippet help</title>
			<link>http://www.gamedeception.net/threads/24667-ASM-snippet-help?goto=newpost</link>
			<pubDate>Thu, 17 May 2012 18:30:48 GMT</pubDate>
			<description>Can anyone explain how/why var_18 is being used within the following IDA snippet without having been initialized!?  Also...wtf is with the pushing of the DWORD 1 onto the stack? thanks 
 
 
Code: 
--------- 
.text:008B49E0 sub_8B49E0      proc near               ; CODE XREF: sub_84D760+47p...</description>
			<content:encoded><![CDATA[<div>Can anyone explain how/why var_18 is being used within the following IDA snippet without having been initialized!?  Also...wtf is with the pushing of the DWORD 1 onto the stack? thanks<br />
<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code">.text:008B49E0 sub_8B49E0&nbsp; &nbsp; &nbsp; proc near&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  ; CODE XREF: sub_84D760+47p<br />
.text:008B49E0&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  ; sub_84D810+47p ...<br />
.text:008B49E0<br />
.text:008B49E0 var_18&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; = byte ptr -18h<br />
.text:008B49E0 var_10&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; = dword ptr -10h<br />
.text:008B49E0 var_C&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  = dword ptr -0Ch<br />
.text:008B49E0 var_8&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  = dword ptr -8<br />
.text:008B49E0 var_4&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  = dword ptr -4<br />
.text:008B49E0 arg_0&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  = byte ptr&nbsp; 8<br />
.text:008B49E0 arg_4&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  = dword ptr&nbsp; 0Ch<br />
.text:008B49E0 arg_8&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  = dword ptr&nbsp; 10h<br />
.text:008B49E0<br />
.text:008B49E0&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  push&nbsp; &nbsp; ebp<br />
.text:008B49E1&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  mov&nbsp; &nbsp;  ebp, esp<br />
.text:008B49E3&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  sub&nbsp; &nbsp;  esp, 18h<br />
.text:008B49E6&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  mov&nbsp; &nbsp;  eax, [ecx+120h]<br />
.text:008B49EC&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  push&nbsp; &nbsp; esi<br />
<font color="#FF0000">.text:008B49ED&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  push&nbsp; &nbsp; 1</font><br />
.text:008B49EF&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  mov&nbsp; &nbsp;  [ebp+var_8], ecx<br />
.text:008B49F2&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  or&nbsp; &nbsp; &nbsp; esi, 0FFFFFFFFh<br />
.text:008B49F5&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  push&nbsp; &nbsp; eax<br />
<font color="#FF0000">.text:008B49F6&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  lea&nbsp; &nbsp;  ecx, [ebp+var_18]</font><br />
.text:008B49F9&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  mov&nbsp; &nbsp;  [ebp+var_4], esi<br />
.text:008B49FC&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  call&nbsp; &nbsp; sub_85E7A0<br />
.text:008B4A01&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  lea&nbsp; &nbsp;  ecx, [ebp+var_18]<br />
.text:008B4A04&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  push&nbsp; &nbsp; ecx<br />
.text:008B4A05&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  call&nbsp; &nbsp; sub_85B870<br />
.text:008B4A0A&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  add&nbsp; &nbsp;  esp, 4<br />
.text:008B4A0D&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  test&nbsp; &nbsp; eax, eax<br />
.text:008B4A0F&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  jz&nbsp; &nbsp; &nbsp; loc_8B4B86<br />
.text:008B4A15&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  push&nbsp; &nbsp; ebx<br />
.text:008B4A16&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  mov&nbsp; &nbsp;  bl, [ebp+arg_0]<br />
.text:008B4A19&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  push&nbsp; &nbsp; edi<br />
.text:008B4A1A&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  mov&nbsp; &nbsp;  edi, [ebp+arg_4]</code><hr />
</div></div>

]]></content:encoded>
			<category domain="http://www.gamedeception.net/forums/252-Beginner">Beginner</category>
			<dc:creator>maybnxtseasn</dc:creator>
			<guid isPermaLink="true">http://www.gamedeception.net/threads/24667-ASM-snippet-help</guid>
		</item>
		<item>
			<title>Discussion Common VAC questions</title>
			<link>http://www.gamedeception.net/threads/24666-Common-VAC-questions?goto=newpost</link>
			<pubDate>Thu, 17 May 2012 15:35:02 GMT</pubDate>
			<description><![CDATA[Where can I find VAC2 and VAC3? 
 
VAC2 is mapped into the steam process as a .tmp file on game startup from SourceInit.gcf.   
VAC3 is manual mapped by SteamService.dll inside steam.exe and is streamed from Valve servers. 
 
How does VAC2 and VAC3 function? 
 
VAC2 starts it's own infinite thread...]]></description>
			<content:encoded><![CDATA[<div>Where can I find VAC2 and VAC3?<br />
<br />
VAC2 is mapped into the steam process as a .tmp file on game startup from SourceInit.gcf.  <br />
VAC3 is manual mapped by SteamService.dll inside steam.exe and is streamed from Valve servers.<br />
<br />
How does VAC2 and VAC3 function?<br />
<br />
VAC2 starts it's own infinite thread and exports DwStatus and some other procedures for SteamClient.dll to invoke to determine if VAC2 is ready to begin scanning or not.  VAC2's thread waits indefinitely for the unnamed pipe to have data written on it by SteamClient.dll.<br />
<br />
VAC3 is invoked through it's _runfunc export by SteamService.dll<br />
<br />
What are VAC2's scans?<br />
<br />
VAC2 sports 4 main scans which you can find the details of here:<br />
<br />
<a href="http://www.gamedeception.net/threads/21315-Scan-Gate-Documentation" target="_blank">http://www.gamedeception.net/threads...-Documentation</a><br />
<br />
What are VAC3's scans?<br />
<br />
Currently the only scan I know of at this point is the function / string dumper scan.  VAC3 scans private memory regions larger than a certain size looking for code markers and when found begins disassembling the procedure and CRCing it until the IsBadOpcode returns 0.  Sometimes VAC3 will discard immediate or displacement values when CRCing preferring only to crc the prefix/opcode.  The string scan is really nothing special as it appears ripped from a known process utility.  You can find any strings VAC3 has found by using ollydbg to find all referenced strings.  These strings are only dumped into the scan packet if the function scan doesn't find any code or failed for some reason.<br />
<br />
VAC3 does have code for other scans but it doesn't appear to be fully implemented or working.  I did notice IsDebuggerPresent string embedded into VAC3 code section so.. Do the math.<br />
<br />
Will I get detected for X?<br />
<br />
If you honestly can't answer that by this point then you are truly beyond help.  VAC2's scans only care about modules and hardware breakpoints and byte patches to VALVE modules.  Read that please.  VAC3 is for manual mapped modules ( currently only this may change ).  VAC2's scan gate 0xF does contain code to deal with manual mapped modules, but it certainly isn't worth mentioning as VAC3 fills that role better.<br />
<br />
Additional VAC2/3 threads:<br />
<br />
<a href="http://www.gamedeception.net/threads/20648-VAC-Emulator" target="_blank">http://www.gamedeception.net/threads/20648-VAC-Emulator</a><br />
<a href="http://www.gamedeception.net/threads/19391-VAC-2-Packet-analysis" target="_blank">http://www.gamedeception.net/threads...acket-analysis</a><br />
<a href="http://www.gamedeception.net/threads/21400-VAC3-crap" target="_blank">http://www.gamedeception.net/threads/21400-VAC3-crap</a><br />
<a href="http://www.gamedeception.net/threads/20544-VAC-scan-monitoring-utility" target="_blank">http://www.gamedeception.net/threads...toring-utility</a><br />
<a href="http://www.gamedeception.net/threads/20454-VAC-Encrypted-Function-Information" target="_blank">http://www.gamedeception.net/threads...on-Information</a><br />
<a href="http://www.gamedeception.net/threads/23221-VAC2-Pipe-Sniffing-Class" target="_blank">http://www.gamedeception.net/threads...Sniffing-Class</a><br />
<a href="http://www.gamedeception.net/threads/22950-idc-script%28s%29-for-vac" target="_blank">http://www.gamedeception.net/threads...28s%29-for-vac</a><br />
<a href="http://www.gamedeception.net/threads/21980-VAC3-String-Dumper" target="_blank">http://www.gamedeception.net/threads...-String-Dumper</a><br />
<a href="http://www.gamedeception.net/threads/20531-VAC2-dump" target="_blank">http://www.gamedeception.net/threads/20531-VAC2-dump</a></div>

]]></content:encoded>
			<category domain="http://www.gamedeception.net/forums/311-Valve-Anti-Cheat">Valve Anti-Cheat</category>
			<dc:creator>wav</dc:creator>
			<guid isPermaLink="true">http://www.gamedeception.net/threads/24666-Common-VAC-questions</guid>
		</item>
		<item>
			<title>Code FarESP Basis</title>
			<link>http://www.gamedeception.net/threads/24665-FarESP-Basis?goto=newpost</link>
			<pubDate>Thu, 17 May 2012 15:22:16 GMT</pubDate>
			<description>Hello, 
 
if you want to create your own FarESP, you will see that hooking a function of the exported sound table will not suit for that issue. But you can hook S_StartSound directly from the snd_x_x86.dll (where x is either qf or openal) module. It also gets called by other funcs also by...</description>
			<content:encoded><![CDATA[<div>Hello,<br />
<br />
if you want to create your own FarESP, you will see that hooking a function of the exported sound table will not suit for that issue. But you can hook S_StartSound directly from the snd_x_x86.dll (where x is either qf or openal) module. It also gets called by other funcs also by StartRelativeSound. So I made a dynamical way to get the function trough this address. Here is the code:<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code">//======================================================================<br />
/*<br />
&nbsp; &nbsp; //How to get address of S_StartSound for FarESP cheat code<br />
&nbsp; &nbsp; //Found by sk0r / Czybik<br />
<br />
&nbsp; &nbsp; //Note: S_StartSound is like a fast call function, so arguments are<br />
&nbsp; &nbsp; //passed trough registers and stack and it is called by relative jump cmd<br />
<br />
&nbsp; &nbsp; //Implementation of S_StartRelativeSound by C++ Sourcecode<br />
&nbsp; &nbsp; void S_StartRelativeSound( sfx_t *sfx, int entnum, int channel, float fvol, float attenuation )<br />
&nbsp; &nbsp; {<br />
&nbsp; &nbsp; &nbsp; &nbsp; S_StartSound( sfx, 0, entnum, channel, fvol, attenuation );<br />
&nbsp; &nbsp; }<br />
<br />
&nbsp; &nbsp; //Implementation of S_StartRelativeSound by Byte Code<br />
&nbsp; &nbsp; 70CC1C80&nbsp;  53&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  PUSH EBX //Save EBX for using<br />
&nbsp; &nbsp; 70CC1C81&nbsp;  83EC 08&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; SUB ESP,8 //Allocate 8 bytes on stack<br />
&nbsp; &nbsp; 70CC1C84&nbsp;  8B5C24 20&nbsp; &nbsp; &nbsp; &nbsp; MOV EBX,DWORD PTR SS:[ESP+20] //Copy to EBX: float attenuation<br />
&nbsp; &nbsp; 70CC1C88&nbsp;  8B5424 18&nbsp; &nbsp; &nbsp; &nbsp; MOV EDX,DWORD PTR SS:[ESP+18] //Copy to EDX: int channel<br />
&nbsp; &nbsp; 70CC1C8C&nbsp;  8B4424 10&nbsp; &nbsp; &nbsp; &nbsp; MOV EAX,DWORD PTR SS:[ESP+10] //Copy to EAX: sfx_t* sfx<br />
&nbsp; &nbsp; 70CC1C90&nbsp;  8B4C24 14&nbsp; &nbsp; &nbsp; &nbsp; MOV ECX,DWORD PTR SS:[ESP+14] //Copy to ECX: int entnum<br />
&nbsp; &nbsp; 70CC1C94&nbsp;  895C24 18&nbsp; &nbsp; &nbsp; &nbsp; MOV DWORD PTR SS:[ESP+18],EBX //Backup EBX to [ESP+18]<br />
&nbsp; &nbsp; 70CC1C98&nbsp;  8B5C24 1C&nbsp; &nbsp; &nbsp; &nbsp; MOV EBX,DWORD PTR SS:[ESP+1C] //Copy to EBX: float fvol<br />
&nbsp; &nbsp; 70CC1C9C&nbsp;  895424 10&nbsp; &nbsp; &nbsp; &nbsp; MOV DWORD PTR SS:[ESP+10],EDX //Backup EDX to [ESP+10]<br />
&nbsp; &nbsp; 70CC1CA0&nbsp;  31D2&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  XOR EDX,EDX //Clear bits of EDX. It's the pointer to vec3_t origin (in this case NULL)<br />
&nbsp; &nbsp; 70CC1CA2&nbsp;  895C24 14&nbsp; &nbsp; &nbsp; &nbsp; MOV DWORD PTR SS:[ESP+14],EBX //Copy EBX to [ESP+14]<br />
&nbsp; &nbsp; 70CC1CA6&nbsp;  83C4 08&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ADD ESP,8 //Free allocated stack space<br />
&nbsp; &nbsp; 70CC1CA9&nbsp;  5B&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  POP EBX //Restore EBX<br />
&nbsp; &nbsp; 70CC1CAA&nbsp; ^E9 F1FAFFFF&nbsp; &nbsp; &nbsp; JMP snd_qf_x.70CC17A0 //Jump to S_StartSound<br />
&nbsp; &nbsp; //Function arguments at 0x70CC1CAA:<br />
&nbsp; &nbsp; EAX: sfx_t* sfx<br />
&nbsp; &nbsp; ECX: int entnum<br />
&nbsp; &nbsp; EDX: vec3_t origin<br />
&nbsp; &nbsp; [ESP+10]: int channel<br />
&nbsp; &nbsp; [ESP+14]: float fvol<br />
&nbsp; &nbsp; [ESP+18]: float attenuation<br />
*/<br />
void* Addr_S_StartSound(void* pBy_S_StartRelativeSound)<br />
{<br />
&nbsp; &nbsp; //Get address of S_StartSound from sound module by StartRelativeSound function address<br />
<br />
&nbsp; &nbsp; #define S_ADD_OFFSET 0x2B //Offset to add to get to the relative address to S_StartSound<br />
<br />
&nbsp; &nbsp; //Check parameter<br />
&nbsp; &nbsp; if (!pBy_S_StartRelativeSound)<br />
&nbsp; &nbsp; &nbsp; &nbsp; return NULL;<br />
<br />
&nbsp; &nbsp; //Copy relative jump address<br />
&nbsp; &nbsp; DWORD dwRelOffset = *(DWORD*)((DWORD)pBy_S_StartRelativeSound + S_ADD_OFFSET);<br />
<br />
&nbsp; &nbsp; //Return absolute address to function<br />
&nbsp; &nbsp; return (void*)(((DWORD)pBy_S_StartRelativeSound + S_ADD_OFFSET - 1) - (dwRelOffset * -1) + 0x05);<br />
}<br />
//======================================================================</code><hr />
</div>This is my hooked S_StartSound implementation:<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code">//======================================================================<br />
soundinfo_s* pSoundInfo = &amp;SndInfo[0]; //Points to array start address<br />
soundinfo_s* pCurrentInfo = NULL; //Points to array element for this player<br />
__declspec(naked) void n_S_StartSound(void)<br />
{<br />
&nbsp; &nbsp; &nbsp; &nbsp; //S_StartSound hook code<br />
&nbsp; &nbsp; &nbsp; &nbsp; __asm {<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; //Most important:<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; //entnum=ECX<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; //origin=EDX<br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; //Check for valid player ID<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; cmp ECX, MAX_CLIENTS<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; jg fSOver<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; cmp ECX, g_PlayerNumber<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; je fSOver<br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; //Get pointer to soundinfo_s for current player<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; push EAX //Save EAX<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; mov EAX, sizeof(soundinfo_s) //Copy structure size to EAX<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; mul ECX //Multiplicate with entnum to get structure offset for current player<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; add EAX, pSoundInfo //Add soundinfo array start address to EAX so we have absolute address for this player now<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; mov pCurrentInfo, EAX //Copy abs. address to current info pointer<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; pop EAX //Restore EAX<br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; // ** Insert your FarESP code part here **<br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; fSOver:<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; jmp o_S_StartSound //Jump to gateway<br />
&nbsp; &nbsp; &nbsp; &nbsp; }<br />
}<br />
//======================================================================</code><hr />
</div>The rest is up to you now, but obviously it isn’t that hard now to implement the rest of it. I prefer inline assembler for the hooked function, else the compiler corrupts to much of course. You now have only to access entnum and the origin and save them to your structure for this player. In another function (like RenderView or RenderScene) you can check if a player sound has been played and of course if the time passed since this event is not too big and then draw it if default ESP will not be drawn (because of missing infos when player is too far away). Have fun.<br />
<br />
Greetings:<br />
sk0r</div>

]]></content:encoded>
			<category domain="http://www.gamedeception.net/forums/293-Warsow">Warsow</category>
			<dc:creator>sk0r</dc:creator>
			<guid isPermaLink="true">http://www.gamedeception.net/threads/24665-FarESP-Basis</guid>
		</item>
		<item>
			<title><![CDATA[Discussion [BEGINNER] [COD1] [C++] I don't know where to start.. :/]]></title>
			<link>http://www.gamedeception.net/threads/24660-BEGINNER-COD1-C-I-don-t-know-where-to-start?goto=newpost</link>
			<pubDate>Wed, 16 May 2012 20:20:16 GMT</pubDate>
			<description><![CDATA[Hi :redface: 
 
I'm new on this forum, I ever wanted to code hacks for Call of Duty 1 (My fav' CoD) so I learnt good C++ tutorials, I know bases but I have not been coding for months...  
I'm using Microsoft Visual C++ 2010 Express, I'm looking for a CoD1 source code hack which is compatible with...]]></description>
			<content:encoded><![CDATA[<div>Hi :redface:<br />
<br />
I'm new on this forum, I ever wanted to code hacks for Call of Duty 1 (My fav' CoD) so I learnt good C++ tutorials, I know bases but I have not been coding for months... <br />
I'm using Microsoft Visual C++ 2010 Express, I'm looking for a CoD1 source code hack which is compatible with it, I think it could help me to start coding.. :redface: <br />
But I'd like your advices please because I'm lost.. :frown:<br />
<br />
Thanks I'm very bad with Object-Oriented Programming in C++ :frown:<br />
<br />
Thanks you in advance :smile:</div>

]]></content:encoded>
			<category domain="http://www.gamedeception.net/forums/252-Beginner">Beginner</category>
			<dc:creator>RaiZo</dc:creator>
			<guid isPermaLink="true">http://www.gamedeception.net/threads/24660-BEGINNER-COD1-C-I-don-t-know-where-to-start</guid>
		</item>
		<item>
			<title>Info Grabbing Macintosh binaries using DepotDownloader</title>
			<link>http://www.gamedeception.net/threads/24658-Grabbing-Macintosh-binaries-using-DepotDownloader?goto=newpost</link>
			<pubDate>Wed, 16 May 2012 02:13:31 GMT</pubDate>
			<description><![CDATA[This is just gonna be a "figure it out yourself with the info I give you" kinda post. 
 
Don't feel like writing an essay, this post was really just for Casual_Hacker. 
 
Depot IDs of interest: 
 
Multiplayer OB Mac Binary: Depot ID: 316 
left 4 dead 2 mac content: Depot ID: 553 
portal 2 mac...]]></description>
			<content:encoded><![CDATA[<div>This is just gonna be a &quot;figure it out yourself with the info I give you&quot; kinda post.<br />
<br />
Don't feel like writing an essay, this post was really just for Casual_Hacker.<br />
<br />
Depot IDs of interest:<br />
<br />
Multiplayer OB Mac Binary: Depot ID: 316<br />
left 4 dead 2 mac content: Depot ID: 553<br />
portal 2 mac content: Depot ID: 623<br />
<br />
DepotDownloader -cellid <a href="https://bitbucket.org/VoiDeD/steamre/wiki/Networking/Steam2/CellID.wiki" target="_blank">66</a> -depot 316 -username XXXXXXXXXXXXX -password XXXXXXXXXX -version latest -dir &quot;C:\Program Files\Steam\steamapps\common&quot;<br />
<br />
There you go. Took me a whole 4 minutes to figure out how to work DepotDownloader properly, and a full 2 days to declare Mac VMs/Hackintosh a piece of shit.<br />
<br />
I always use Steam's Sweden server because it always caps out my modem. All the USA servers are slow and don't even come close. They are also unreachable after updates.</div>


	<div style="padding:10px">

	

	

	

	
		<fieldset class="fieldset">
			<legend>Attached Files</legend>
			<ul>
			<li>
	<img class="inlineimg" src="http://www.gamedeception.net/images/attach/7z.gif" alt="File Type: 7z" />
	<a href="http://www.gamedeception.net/attachment.php?attachmentid=4449&amp;d=1337134243">DepotDownloader-r705.7z</a> 
(269.4 KB)
</li>
			</ul>
		</fieldset>
	

	</div>
]]></content:encoded>
			<category domain="http://www.gamedeception.net/forums/264-Source-HL2-Engine">Source/HL2 Engine</category>
			<dc:creator>!Slrig</dc:creator>
			<guid isPermaLink="true">http://www.gamedeception.net/threads/24658-Grabbing-Macintosh-binaries-using-DepotDownloader</guid>
		</item>
		<item>
			<title>Recv Hook buffer</title>
			<link>http://www.gamedeception.net/threads/24656-Recv-Hook-buffer?goto=newpost</link>
			<pubDate>Mon, 14 May 2012 19:30:36 GMT</pubDate>
			<description>Hiya ppl, so my question is how can i get the buf here converted to Hexadecimal?? 
 
int recv( 
  __in   SOCKET s, 
  __out  char *buf, 
  __in   int len, 
  __in   int flags 
); 
 
Thank You.</description>
			<content:encoded><![CDATA[<div>Hiya ppl, so my question is how can i get the buf here converted to Hexadecimal??<br />
<br />
int recv(<br />
  __in   SOCKET s,<br />
  __out  char *buf,<br />
  __in   int len,<br />
  __in   int flags<br />
);<br />
<br />
Thank You.</div>

]]></content:encoded>
			<category domain="http://www.gamedeception.net/forums/252-Beginner">Beginner</category>
			<dc:creator>konsowa</dc:creator>
			<guid isPermaLink="true">http://www.gamedeception.net/threads/24656-Recv-Hook-buffer</guid>
		</item>
		<item>
			<title>Question Direct3DFont DrawText Troubles</title>
			<link>http://www.gamedeception.net/threads/24652-Direct3DFont-DrawText-Troubles?goto=newpost</link>
			<pubDate>Sun, 13 May 2012 21:47:45 GMT</pubDate>
			<description><![CDATA[Hello, sorry for my English skills. 
 
I'm trying to make an overlay for a simple dx9 program. I wrote an IAT Patcher and a COM vTable patcher. 
Before i tried to add some DrawText's to EndScene hook function following code worked perfectly. 
 
Code: 
--------- 
HRESULT WINAPI...]]></description>
			<content:encoded><![CDATA[<div>Hello, sorry for my English skills.<br />
<br />
I'm trying to make an overlay for a simple dx9 program. I wrote an IAT Patcher and a COM vTable patcher.<br />
Before i tried to add some DrawText's to EndScene hook function following code worked perfectly.<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code">HRESULT WINAPI h_d3d9device_EndScene(IUnknown* This)<br />
{<br />
&nbsp; D3DRECT rec = { 0, 0, 20, 20 };<br />
&nbsp; // d3ddevice is an interface i stored earlier<br />
&nbsp; d3d9device-&gt;Clear(1, &amp;rec, D3DCLEAR_TARGET, D3DCOLOR_XRGB(255, 255, 255), 0,&nbsp; 0);<br />
&nbsp; return o_d3d9device_EndScene(This);<br />
}</code><hr />
</div>Then i tried to create font after i hook d3d9devices' methods, used OnLostDevice() and OnResetDevice() but nothing worked.<br />
Finally, after endless amount of attempts i moved the font creation code, drawing and release into EndScene:<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><br />
// Global vars<br />
<br />
LPD3DXFONT font;<br />
static RECT font_rect={5,5,256,256};<br />
static D3DXFONT_DESC FontDesc = {24,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 0,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 400,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 0,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; false,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; DEFAULT_CHARSET,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; OUT_TT_PRECIS,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; CLIP_DEFAULT_PRECIS,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; DEFAULT_PITCH,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &quot;Arial&quot;};<br />
<br />
// Code itself<br />
<br />
HRESULT WINAPI h_d3d9device_EndScene(IUnknown* This)<br />
{<br />
&nbsp; &nbsp; &nbsp; &nbsp; //D3DRECT rec = { 0, 0, 20, 20 };<br />
&nbsp; &nbsp; &nbsp; &nbsp; //d3d9device-&gt;Clear(1, &amp;rec, D3DCLEAR_TARGET, D3DCOLOR_XRGB(255, 255, 255), 0,&nbsp; 0);<br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; if ( FAILED( D3DXCreateFontIndirect(d3d9device, &amp;FontDesc,&amp;font) ) )<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; font = NULL;<br />
&nbsp; &nbsp; &nbsp; &nbsp; if (font != NULL)<br />
&nbsp; &nbsp; &nbsp; &nbsp; {<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; hlog(&quot;DrawText (1)&quot;);<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if (font-&gt;DrawTextA(NULL, &quot;Testing&quot;, -1, &amp;font_rect, DT_NOCLIP, D3DCOLOR_XRGB(255, 255, 255)) == 0)<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; hlog(&quot;Draw Text Failed&quot;);<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; font-&gt;Release();<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; font = NULL;<br />
&nbsp; &nbsp; &nbsp; &nbsp; }<br />
&nbsp; &nbsp; &nbsp; &nbsp; hlog(&quot;DrawText (2)&quot;);<br />
&nbsp; &nbsp; &nbsp; &nbsp; return o_d3d9device_EndScene(This);<br />
}</code><hr />
</div>But text appears only for the first call of EndScene, and the problem should not be in lost device, because all the code is in one function.<br />
I already tried to debug it, for no result. Thanks in advance.</div>

]]></content:encoded>
			<category domain="http://www.gamedeception.net/forums/252-Beginner">Beginner</category>
			<dc:creator>ZaRDaK</dc:creator>
			<guid isPermaLink="true">http://www.gamedeception.net/threads/24652-Direct3DFont-DrawText-Troubles</guid>
		</item>
		<item>
			<title>Question Best way to hook undetected?</title>
			<link>http://www.gamedeception.net/threads/24649-Best-way-to-hook-undetected?goto=newpost</link>
			<pubDate>Sun, 13 May 2012 14:23:23 GMT</pubDate>
			<description>At the moment, what is the best and easiest way to hook undetected? Is it VMTHooking or something else?</description>
			<content:encoded><![CDATA[<div>At the moment, what is the best and easiest way to hook undetected? Is it VMTHooking or something else?</div>

]]></content:encoded>
			<category domain="http://www.gamedeception.net/forums/311-Valve-Anti-Cheat">Valve Anti-Cheat</category>
			<dc:creator>DerIre</dc:creator>
			<guid isPermaLink="true">http://www.gamedeception.net/threads/24649-Best-way-to-hook-undetected</guid>
		</item>
		<item>
			<title><![CDATA[Tool RA3 [1.12] - Zoomhack]]></title>
			<link>http://www.gamedeception.net/threads/24644-RA3-1-12-Zoomhack?goto=newpost</link>
			<pubDate>Sat, 12 May 2012 20:53:37 GMT</pubDate>
			<description><![CDATA[Okay, here's a little zoomhack for RA3 1.12! 
 
You don't have to do much, just be sure you already have RA3 started! 
The project seems to be written in .Net Framework 2. 
So be sure you upodated your windows xp to SP1. :D 
 
 
Have fun.]]></description>
			<content:encoded><![CDATA[<div>Okay, here's a little zoomhack for RA3 1.12!<br />
<br />
You don't have to do much, just be sure you already have RA3 started!<br />
The project seems to be written in .Net Framework 2.<br />
So be sure you upodated your windows xp to SP1. :D<br />
<br />
<br />
Have fun.</div>


	<div style="padding:10px">

	

	

	

	
		<fieldset class="fieldset">
			<legend>Attached Files</legend>
			<ul>
			<li>
	<img class="inlineimg" src="http://www.gamedeception.net/images/attach/rar.gif" alt="File Type: rar" />
	<a href="http://www.gamedeception.net/attachment.php?attachmentid=4444&amp;d=1336855936">RA3_Zoomhack.rar</a> 
(73.0 KB)
</li><li>
	<img class="inlineimg" src="http://www.gamedeception.net/images/attach/rar.gif" alt="File Type: rar" />
	<a href="http://www.gamedeception.net/attachment.php?attachmentid=4445&amp;d=1336855952">RA3_Zoomhack_v1.001.rar</a> 
(9.4 KB)
</li>
			</ul>
		</fieldset>
	

	</div>
]]></content:encoded>
			<category domain="http://www.gamedeception.net/forums/303-Real-Time-Strategy-MMORPG">Real Time Strategy / MMORPG</category>
			<dc:creator>bellaPatricia</dc:creator>
			<guid isPermaLink="true">http://www.gamedeception.net/threads/24644-RA3-1-12-Zoomhack</guid>
		</item>
		<item>
			<title>Question Other Hooks? D3D9 Help</title>
			<link>http://www.gamedeception.net/threads/24643-Other-Hooks-D3D9-Help?goto=newpost</link>
			<pubDate>Sat, 12 May 2012 19:57:32 GMT</pubDate>
			<description><![CDATA[I made a wallhack for a game using Azorbix's base and it seems their game can detect if I am "hooking" in DIP. I run the hack once it works, go to inject again it crashes. 
 
Is there anything I can read to learn more ways to hook? How all the functions of DirectX go together? 
 
Only things I know...]]></description>
			<content:encoded><![CDATA[<div>I made a wallhack for a game using Azorbix's base and it seems their game can detect if I am &quot;hooking&quot; in DIP. I run the hack once it works, go to inject again it crashes.<br />
<br />
Is there anything I can read to learn more ways to hook? How all the functions of DirectX go together?<br />
<br />
Only things I know how to do right now are to draw on the screen with the device in &quot;end scene&quot; and use DIP function below for a simple wallhack that disables zbuffer. I've also messed with creating textures and using them to color the models for &quot;Chams&quot;. But it's really nothing special, I want to learn how to do ESP. I've looked through d3d section and beginner-expert section not anything specific that I saw to help.<br />
<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code">HRESULT APIENTRY hkIDirect3DDevice9::DrawIndexedPrimitive(D3DPRIMITIVETYPE Type,INT BaseVertexIndex,UINT MinVertexIndex,UINT NumVertices,UINT startIndex,UINT primCount)<br />
{<br />
&nbsp; &nbsp; &nbsp; &nbsp; if(m_Stride == 32)<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; DWORD dwOldZEnable = D3DZB_TRUE; <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; m_pD3Ddev-&gt;GetRenderState(D3DRS_ZENABLE, &amp;dwOldZEnable); <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; m_pD3Ddev-&gt;SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE);<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; m_pD3Ddev-&gt;DrawIndexedPrimitive(Type,BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount);<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; m_pD3Ddev-&gt;SetRenderState(D3DRS_ZENABLE, dwOldZEnable);<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }<br />
&nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; return m_pD3Ddev-&gt;DrawIndexedPrimitive(Type,BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount);<br />
}</code><hr />
</div></div>

]]></content:encoded>
			<category domain="http://www.gamedeception.net/forums/252-Beginner">Beginner</category>
			<dc:creator>dbxdx</dc:creator>
			<guid isPermaLink="true">http://www.gamedeception.net/threads/24643-Other-Hooks-D3D9-Help</guid>
		</item>
		<item>
			<title>Question Detour, hook and vmthook</title>
			<link>http://www.gamedeception.net/threads/24641-Detour-hook-and-vmthook?goto=newpost</link>
			<pubDate>Sat, 12 May 2012 11:23:27 GMT</pubDate>
			<description><![CDATA[I dont really understand the difference between detour, hook and vmthook. 
Detour is removing the first 5 bytes of a function to a jump to your function. 
So what does a hook? In many threads, i read something like "Hooking Functions using Detours", so its the same? 
It really confuses me.]]></description>
			<content:encoded><![CDATA[<div>I dont really understand the difference between detour, hook and vmthook.<br />
Detour is removing the first 5 bytes of a function to a jump to your function.<br />
So what does a hook? In many threads, i read something like &quot;Hooking Functions using Detours&quot;, so its the same?<br />
It really confuses me.</div>

]]></content:encoded>
			<category domain="http://www.gamedeception.net/forums/186-Binary-Modification">Binary Modification</category>
			<dc:creator>DerIre</dc:creator>
			<guid isPermaLink="true">http://www.gamedeception.net/threads/24641-Detour-hook-and-vmthook</guid>
		</item>
		<item>
			<title><![CDATA[Release IDA Plugin [ Sig Maker Update ]]]></title>
			<link>http://www.gamedeception.net/threads/24640-IDA-Plugin-Sig-Maker-Update?goto=newpost</link>
			<pubDate>Sat, 12 May 2012 08:32:06 GMT</pubDate>
			<description><![CDATA[Patrick did an awesome job on his IDA plugin release for his signature maker, so 100% credits to him. The only thing I don't like about it is that I have to manually search many different times to get the shortest signature and half the time the final bytes are masked, which is pointless. I simply...]]></description>
			<content:encoded><![CDATA[<div>Patrick did an awesome job on his IDA plugin release for his signature maker, so 100% credits to him. The only thing I don't like about it is that I have to manually search many different times to get the shortest signature and half the time the final bytes are masked, which is pointless. I simply updated it to fix these inconveniences for you. The plugin will now automatically search for the shortest signature (or inform you if there is no possible unique signature). Then the final string is trimmed if there are any masked bytes at the end to save you the trouble of doing it yourself. Just click on whatever address you want to make a signature for (no need to highlight anymore) and then open the menu with CTRL+ALT+S and create it just like with the previous version. I plan on adding IDA-Code style a little bit later as well if you want to check back on this thread.<br />
<br />
PS: Thank Patrick for his original plugin if you haven't already.<br />
<br />
<a href="http://www.gamedeception.net/threads/23498-Article-Some-IDA-Plugins-I-Wrote" target="_blank">http://www.gamedeception.net/threads...lugins-I-Wrote</a></div>


	<div style="padding:10px">

	

	

	

	
		<fieldset class="fieldset">
			<legend>Attached Files</legend>
			<ul>
			<li>
	<img class="inlineimg" src="http://www.gamedeception.net/images/attach/rar.gif" alt="File Type: rar" />
	<a href="http://www.gamedeception.net/attachment.php?attachmentid=4443&amp;d=1336810713">SigMaker.rar</a> 
(3.1 KB)
</li>
			</ul>
		</fieldset>
	

	</div>
]]></content:encoded>
			<category domain="http://www.gamedeception.net/forums/45-Tools">Tools</category>
			<dc:creator>Forza</dc:creator>
			<guid isPermaLink="true">http://www.gamedeception.net/threads/24640-IDA-Plugin-Sig-Maker-Update</guid>
		</item>
	</channel>
</rss>

