Torrent Hash - Hash of all existing torrents
Please, pay attention to the fact that you are about to download the torrent NOT from torhash.net
torhash.net is just a torrent search engine, no torrents are hosted here.
torhash.net is just a torrent search engine, no torrents are hosted here.
uTorrent 1.8.2 build 14458 with DHT patch
Infohash:
E4EAF81600D69EE2A512FFACFECFFEDA451D607E
Type:
Other
Title:
uTorrent 1.8.2 build 14458 with DHT patch
Category:
Applications/Windows
Uploaded:
2009-04-14 (by schoenewelt)
Description:
This patch removes the restrictions on torrents marked as private, allowing
uTorrent to use DHT, Peer Exchange and Local Peer Discovery to look for new
peers when it is normally not allowed.
In its internal data structures, uTorrent uses four bits in one byte of data
per torrent to record these settings.
bit # 7 6 5 4 3 2 1 0
\ | | / | | | |
not used | | | DHT enabled (default: 1)
(set to 0) | | |
| | private torrent
| |
| Peer Exchange enabled (default: 1)
|
Local Peer Discovery enabled (default: 1)
When a torrent file is added, uTorrent checks the "info" section for an
integer value named "private". If it's set to 1, it marks the private torrent
bit in the byte shown above, which forces the other information in this byte
to be ignored.
This byte is also saved in the resume.dat file (a bencoded file that uTorrent
uses to save its state) as an integer value named "dht".
The patch works by storing the private torrent flag in bit 7 instead of bit 1
so that all the code in uTorrent that checks bit 1 to determine if this is a
private torrent will always find that it isn't. However, it writes the "dht"
value out to the resume.dat normally, so if you start an unpatched copy of
uTorrent your private torrents will still be private.
Here are the steps required to apply the patch; you will need UPX version 3.03
and a hex editor:
1. Decompress the uTorrent.exe file using the following command:
upx -d uTorrent.exe
2. Open the uTorrent.exe file in a hex editor and change the following:
position old bytes new bytes
-------- ------------------------ ------------------------
200 D0 FC
52F1 50 68 0C BB 45 00 E9 DA 4E 05 00 90
855B 02 80
BCD3 8A 4E 41 80 E1 0A E9 0D E5 04 00 90
5A1D0 00 00 00 00 00 00 00 00 8B C8 80 E1 80 C1 E9 06
00 00 00 00 00 00 00 00 0B C1 50 68 0C BB 45 00
00 00 00 00 00 00 00 00 E9 12 B1 FA FF 8B C8 80
00 00 00 00 00 00 00 00 E1 02 C0 E9 06 24 FD 0B
00 00 00 00 00 00 00 00 C1 8A 4E 41 80 E1 0A E9
00 00 00 00 DD 1A FB FF
3. The digital signature is now invalid. Remove it from the file by deleting
everything after position 8E000.
4. Recompress the file using this command:
upx --ultra-brute uTorrent.exe
5. This will produce a file of size 264704 bytes. The patch is now complete
and should be identical to the file in this torrent.
Tags:
Files count:
3
Size:
525.27 Kb
Trackers:
udp://tracker.openbittorrent.com:80
udp://open.demonii.com:1337
udp://tracker.coppersurfer.tk:6969
udp://exodus.desync.com:6969
udp://open.demonii.com:1337
udp://tracker.coppersurfer.tk:6969
udp://exodus.desync.com:6969
Comments:
wombat45 (2009-04-16)
Sorry if this is a stupid question... do we need to follow the instructions on how to apply the patch if you have already done so and included the newly generated utorrent.exe in your torrent?I don't understand why there are instructions on how to change the original file when it appears you have already done this?
Can anyone clear this up?
RobrPatty (2009-04-16)
It's kind of a learning thing wombat45. Hey anonymous I was able to patch the original file just as you did. My question is how do you patch a newer version of utorrent? You can't use the same guide so what do you use? BTW nice postschoenewelt (2009-04-20)
This patch is specific to the particular build of uTorrent it's applied to as the code - at least the locations of - changes in each build, and there are relative jumps in the patch.But the approach I used to make the patch was to un-UPX utorrent, load it into IDA Pro and look for the strings "private" and "dht", then follow the cross-references back to the code that uses them. From there it was clear to see how the private flag worked; I used some spare space at the end of the code segment to add some extra code to move the bits, and the functions were patched to jump to that code and back again. If you disassemble the patched and unpatched exes side by side you can see how this works.
Also see
https://thepiratebay.se/torrent/4859325,
it's the same patch for the next build of utorrent.