Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Questions about disassembling

Author: Rolf Tueschen

Date: 03:53:10 02/17/06

Go up one level in this thread


On February 17, 2006 at 06:27:34, Chrilly Donninger wrote:

>On February 17, 2006 at 04:17:38, Vasik Rajlich wrote:
>
>>On February 17, 2006 at 02:33:32, Jouni Uski wrote:
>>
>>>Is it possible to disassemble exe-file, which is zipped and/or copy protected
>>>like Fruit 2.2.1? Where are disassemblers downloadable?
>>>
>>>thanks
>>>
>>>Jouni
>>
>>IDA Pro is easily the best.
>Yes. IDA-Pro makes it a lot easier. One of the view pieces of Software I really
>admire.
>
>>
>>Just a general comment though: it is _extremely_ hard to figure out the
>>innovations in a program. Basically, I would say that in practice it is
>>impossible. Yes, you can locate the move generator, because you already know
>>what that looks like and what it does. But understanding the evaluation terms,
>>or adjustments to search depth, would require an ungodly effort, especially for
>>a complex program. Let me put it like this: every aspiring computer chess
>>programmer has been very strongly tempted to try his hand at disassembling.
>
>When I started computer chess in 1989 I did just a look at the GNU-Chess Code.
>It came never in my mind to dissassemble another programm. I think today one
>should study the Code of Fruit and Crafty. And should then make something else.
>Doing Dissassembling as a beginner is completly pointless. The only chance to
>get some usefull information from disassembling is when one knows what to look
>for. One can only - with a reasonable amount of effort - disassembly a small
>programm (e.g. a virus).
>
>Stefan Meyer-Kahlen once remarked to me "There are a lot of people around which
>dissassemble Shredder". I felt a little bit stupid that I have thought before
>that this is impossible and that I had no idea how to do it. So I bought IDA-Pro
>and learned it. Just to prove, that I am a real programmer.
>
>From my experience it is relative straightforward to get a good picture of the
>search. Not all the details, some flags/conditions why a given search is
>done/not done are difficult to identify, but one gets the principial idea
>behind. For Rybka I needed 2 days to get this overall picture.
>Dissecting the whole programm is much too cumbersome. One gets crazy from this
>extremly tedious work.
>
>I think, it does not pay off. For me it is just an intellectual challenge. E.g.
>its nice to spot the Mate-Bug in Rybka. But it does not improve at all one ones
>programm.
>Even if one knows the search algorithm, one can not directly use it. The parts
>have to fit together. There is a close relation between the evaluation, the
>playing style and the search. As a special case the Hydra architecture which its
>seperation of the FPGA- and PC-search puts additional restrictions. Additionally
>some tricks which work on a single-processor are a desaster for a parallel
>program.
>I think doing engine matches and improving the weak spots of the own programm is
>the only productive way. Disassembling is just to have some fun between these
>boring engine-matches.
>
>Chrilly


What would happen if you would use Rybka in your hardware, so that you get a
multi-ping-pong effect just like in 'Advanced Chess'. Would that increase your
Elo performance? And - could that be detected by Marshal vom Herigk? Let's make
CC a bit more spicy.



This page took 0 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.