Well, in 1.7 (or earlier?) they added a survey toolbar item. Since that was not enough, now we have a really ugly advertisement pane. It is far from us to judge the needs of the developers and it is a great minimalistic application but they should have found an alternate source of funding if just maintaining the code takes so much money - really, what new and costly features have been added since it was first released? The advertisement box!
So, let us remove the advertisement box and the survey toolbar item.
Removing the advertisements can be done with a simple turning of a je
into nop
in the removeAdds
method - most likely, spelt wrongly to obfuscate.
; Basic Block Input Regs: ebp - Killed Regs: eax esi edi meth_MainWindowController_removeAdds_: 0001c8c1 55 push ebp 0001c8c2 89E5 mov ebp, esp 0001c8c4 57 push edi 0001c8c5 56 push esi 0001c8c6 83EC10 sub esp, 0x10 0001c8c9 E800000000 call 0x1c8ce 0001c8ce 5E pop esi ; XREF=0x1c8c9 0001c8cf 8B7D08 mov edi, dword [ss:ebp-0x18+arg_0] 0001c8d2 807D1000 cmp byte [ss:ebp-0x18+arg_8], 0x0 0001c8d6 8B87C8000000 mov eax, dword [ds:edi+0xc8] 0001c8dc 90 nop ; was je 0x1c8fe 0001c8dd 90 nop ; ...
By nop
-ing the je
at 0x1c8dc
the program continues into a section which hides the advertisement elements.
The survey link can be removed directly from the surveyToolbarItem
method by using a jmp
instead of a je
about 0x17a1e4
:
meth_ToolbarController_surveyToolbarItem_: 0017a1b9 55 push ebp 0017a1ba 89E5 mov ebp, esp 0017a1bc 53 push ebx 0017a1bd 57 push edi 0017a1be 56 push esi 0017a1bf 83EC6C sub esp, 0x6c ;... 0017a1e0 31F6 xor esi, esi 0017a1e2 85C0 test eax, eax 0017a1e4 E9FD020000 jmp 0x17a4e6 ; was je 0017a1e9 90 nop
The jmp
will redirect control flow over the parts of the code that set-up the toolbox.
begin 644 uTorrent.bsdiff.uue M0E-$249&-#`V`````````+H`````````P.Y$``````!"6F@Y,4%9)E-9FH4@ M.0``"<2#<``$``0@`(``8"``(2@:-"#)B+100MYL?B[DBG"A(34*0')"6F@Y M,4%9)E-9*I*OT0```GW_S81`!A`!``)$```"1#!`1$`@(#``1``&`!0`!&0/ ML`"X@TU0````&@9`PT,F0,C$&)DT-,"*4U`#1D``#U#:2^E]V2CBA!"Z`51# MC"J`@)O@`$%3KA"V"R#A74`J((':?Z0'*"P@1400+8$YP2@)PY845$$#[.HG M3U)4K4-C,\;*Y98]X6%984^(:[7$X+3Z"$"(@0!`!D::FA[]^+N2*<*$@525 M?HA"6F@Y,4%9)E-9-P[0B@``/4(`P````(`((``PS`FJ::0VHAXNY(IPH2!N #':$4 ` end