TV2Engine MacrovisionEnable
From t-hack.com - Hack X300T / X301T
(New page: So, TV2Engine_MacrovisionEnable sounds quite interesting. Lets take a look at what it does:<br> <pre> tv2engine.dll :Function TV2Engine_MacrovisionEnable(bool val) </pre> calls <pre> core...) |
|||
Line 13: | Line 13: | ||
So, what does DrvEnableDriver do ? [http://msdn.microsoft.com/en-us/library/aa447741.aspx MSDN]again: "[...]It fills a DRVENABLEDATA structure with the driver version number and calling addresses of functions supported by the driver."<br> | So, what does DrvEnableDriver do ? [http://msdn.microsoft.com/en-us/library/aa447741.aspx MSDN]again: "[...]It fills a DRVENABLEDATA structure with the driver version number and calling addresses of functions supported by the driver."<br> | ||
[http://msdn.microsoft.com/en-us/library/aa447740.aspx DRVENABLEDATA]... functions... Oh, look ! The second last entry is DrvEscape. That's quite convenient.<br> | [http://msdn.microsoft.com/en-us/library/aa447740.aspx DRVENABLEDATA]... functions... Oh, look ! The second last entry is DrvEscape. That's quite convenient.<br> | ||
− | After a | + | After a small stub<br> |
[[Image:Drv1.png]]<br> | [[Image:Drv1.png]]<br> | ||
− | the | + | the sub starts to load and store the functions referenced by pEngCallbacks, but then there is a suspiscious looking memcpy :<br> |
[[Image:Drv2.png]]<br> | [[Image:Drv2.png]]<br> | ||
So, what's at memcopy's source address ? Looks like a function table:<br> | So, what's at memcopy's source address ? Looks like a function table:<br> | ||
Line 26: | Line 26: | ||
We know the function will return DHPDEV, so $v0 = DHPDEV. Let's follow $v0 !<br> | We know the function will return DHPDEV, so $v0 = DHPDEV. Let's follow $v0 !<br> | ||
[[Image:Drv5.png]]<br> | [[Image:Drv5.png]]<br> | ||
− | If the function succeeds it returns $6, so obviously DHPDEV is $s6, and $s6 is the return value of our fist sub, so lets look | + | If the function succeeds it returns $6, so obviously DHPDEV is $s6, and $s6 is the return value of our fist sub, so lets look at the first sub:<br> |
[[Image:Drv6.png]]<br> | [[Image:Drv6.png]]<br> | ||
Obviously DHPDEV can't be 0x7b, so it has to be the return value of the sub.<br> | Obviously DHPDEV can't be 0x7b, so it has to be the return value of the sub.<br> | ||
Line 41: | Line 41: | ||
Ahem. This function does... nothing !<br> | Ahem. This function does... nothing !<br> | ||
<nowiki>:(</nowiki><br> | <nowiki>:(</nowiki><br> | ||
+ | |||
+ | [[category:WinCe]][[category:Software]][[category:EN]] |