Boomerang categorize

Kind day!! starting Boomerang beginning a decompiler barely barely falls.
As a result of falling a debugger is caused.
The program takes place there is an exception. Debugger of OlliDbg evidently well very.
Here thus exception of MOV EDX, DWORD PTR DS :[00000000] causing falling!
http://boomerang.sourceforge.net/

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
  0049D467   8B13             MOV EDX,DWORD PTR DS:[EBX]   виникає виключення


0049D3E0   51               PUSH ECX
0049D3E1   53               PUSH EBX
0049D3E2   55               PUSH EBP
0049D3E3   56               PUSH ESI
0049D3E4   57               PUSH EDI
0049D3E5   8B7C24 18        MOV EDI,DWORD PTR SS:[ESP+18]     
0049D3E9   8BF1             MOV ESI,ECX                       
0049D3EB   8D4424 18        LEA EAX,DWORD PTR SS:[ESP+18]     
0049D3EF   50               PUSH EAX                          
0049D3F0   8D4C24 14        LEA ECX,DWORD PTR SS:[ESP+14]     
0049D3F4   8D6E 60          LEA EBP,DWORD PTR DS:[ESI+60]     
0049D3F7   51               PUSH ECX                          
0049D3F8   8BCD             MOV ECX,EBP                       
0049D3FA   897C24 20        MOV DWORD PTR SS:[ESP+20],EDI     
0049D3FE   E8 9DACFEFF      CALL boomeran.004880A0            
0049D403   8B00             MOV EAX,DWORD PTR DS:[EAX]        
0049D405   3B46 64          CMP EAX,DWORD PTR DS:[ESI+64]     
0049D408   75 04            JNZ SHORT boomeran.0049D40E       
0049D40A   33DB             XOR EBX,EBX                       
0049D40C   EB 18            JMP SHORT boomeran.0049D426
0049D40E   8B58 10          MOV EBX,DWORD PTR DS:[EAX+10]     
0049D411   85DB             TEST EBX,EBX                      
0049D413   74 11            JE SHORT boomeran.0049D426
0049D415   8B13             MOV EDX,DWORD PTR DS:[EBX]        
0049D417   8BCB             MOV ECX,EBX
0049D419   FF52 08          CALL DWORD PTR DS:[EDX+8]         
0049D41C   84C0             TEST AL,AL
0049D41E   75 24            JNZ SHORT boomeran.0049D444
0049D420   837B 48 01       CMP DWORD PTR DS:[EBX+48],1      
0049D424   7D 1E            JGE SHORT boomeran.0049D444      
0049D426   8B46 14          MOV EAX,DWORD PTR DS:[ESI+14]    
0049D429   3B78 18          CMP EDI,DWORD PTR DS:[EAX+18]    
0049D42C   72 7E            JB SHORT boomeran.0049D4AC
0049D42E   3B78 1C          CMP EDI,DWORD PTR DS:[EAX+1C]    
0049D431   73 79            JNB SHORT boomeran.0049D4AC
0049D433   8B4E 18          MOV ECX,DWORD PTR DS:[ESI+18]    
0049D436   57               PUSH EDI
0049D437   56               PUSH ESI                         
0049D438   E8 E333FAFF      CALL boomeran.00440820           
0049D43D   8BCE             MOV ECX,ESI
0049D43F   E8 6CE0FFFF      CALL boomeran.0049B4B0           
0049D444   85DB             TEST EBX,EBX                     
0049D446   75 1F            JNZ SHORT boomeran.0049D467      
0049D448   8D4424 18        LEA EAX,DWORD PTR SS:[ESP+18]
0049D44C   50               PUSH EAX
0049D44D   8D4C24 14        LEA ECX,DWORD PTR SS:[ESP+14]
0049D451   51               PUSH ECX
0049D452   8BCD             MOV ECX,EBP
0049D454   897C24 20        MOV DWORD PTR SS:[ESP+20],EDI
0049D458   E8 43ACFEFF      CALL boomeran.004880A0        
0049D45D   8B00             MOV EAX,DWORD PTR DS:[EAX]    
0049D45F   3B46 64          CMP EAX,DWORD PTR DS:[ESI+64] 
0049D462   74 03            JE SHORT boomeran.0049D467
0049D464   8B58 10          MOV EBX,DWORD PTR DS:[EAX+10]                                 
0049D467   8B13             MOV EDX,DWORD PTR DS:[EBX]    ; TUTA 00000000
0049D469   8BCB             MOV ECX,EBX
0049D46B   FF52 08          CALL DWORD PTR DS:[EDX+8]                           
0049D46E   84C0             TEST AL,AL                                          
0049D470   0F85 98000000    JNZ boomeran.0049D50E                               
0049D476   8B7E 08          MOV EDI,DWORD PTR DS:[ESI+8]                        
0049D479   8B4F 04          MOV ECX,DWORD PTR DS:[EDI+4]                        
0049D47C   83C6 04          ADD ESI,4
0049D47F   8D4424 18        LEA EAX,DWORD PTR SS:[ESP+18]
0049D483   50               PUSH EAX
0049D484   51               PUSH ECX
0049D485   57               PUSH EDI
0049D486   8BCE             MOV ECX,ESI
0049D488   895C24 24        MOV DWORD PTR SS:[ESP+24],EBX
0049D48C   E8 6F66F7FF      CALL boomeran.00413B00         
0049D491   6A 01            PUSH 1
0049D493   8BCE             MOV ECX,ESI
0049D495   8BD8             MOV EBX,EAX
0049D497   E8 849AFEFF      CALL boomeran.00486F20         
0049D49C   895F 04          MOV DWORD PTR DS:[EDI+4],EBX   
0049D49F   8B53 04          MOV EDX,DWORD PTR DS:[EBX+4]   
0049D4A2   5F               POP EDI
0049D4A3   5E               POP ESI
0049D4A4   5D               POP EBP
0049D4A5   891A             MOV DWORD PTR DS:[EDX],EBX
0049D4A7   5B               POP EBX
0049D4A8   59               POP ECX
0049D4A9   C2 0400          RETN 4                         ;                    
0049D4AC   A1 54814E00      MOV EAX,DWORD PTR DS:[<&MSVCP71.?cerr@st>
0049D4B1   8B35 58814E00    MOV ESI,DWORD PTR DS:[<&MSVCP71.??$?6U?$>; MSVCP71.??$?6U?$char_traits@D@std@@@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@0@AAV10@PBD@Z
0049D4B7   68 04904E00      PUSH boomeran.004E9004
0049D4BC   57               PUSH EDI
0049D4BD   68 E0724F00      PUSH boomeran.004F72E0                   ; ASCII "attempt to decode entrypoint at address outside text area, addr="
0049D4C2   50               PUSH EAX
0049D4C3   FFD6             CALL ESI
0049D4C5   83C4 08          ADD ESP,8
0049D4C8   8BC8             MOV ECX,EAX
0049D4CA   FF15 48814E00    CALL DWORD PTR DS:[<&MSVCP71.??6?$basic_>; MSVCP71.??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@K@Z
0049D4D0   50               PUSH EAX
0049D4D1   FFD6             CALL ESI
0049D4D3   83C4 08          ADD ESP,8
0049D4D6   E8 954AF6FF      CALL boomeran.00401F70
0049D4DB   8A48 4C          MOV CL,BYTE PTR DS:[EAX+4C]
0049D4DE   84C9             TEST CL,CL
0049D4E0   74 2C            JE SHORT boomeran.0049D50E
0049D4E2   E8 894AF6FF      CALL boomeran.00401F70
0049D4E7   8BC8             MOV ECX,EAX
0049D4E9   E8 92FFF7FF      CALL boomeran.0041D480
0049D4EE   8B10             MOV EDX,DWORD PTR DS:[EAX]
0049D4F0   68 E0724F00      PUSH boomeran.004F72E0                   ; ASCII "attempt to decode entrypoint at address outside text area, addr="
0049D4F5   8BC8             MOV ECX,EAX
0049D4F7   FF52 30          CALL DWORD PTR DS:[EDX+30]
0049D4FA   8B10             MOV EDX,DWORD PTR DS:[EAX]
0049D4FC   57               PUSH EDI
0049D4FD   8BC8             MOV ECX,EAX
0049D4FF   FF52 04          CALL DWORD PTR DS:[EDX+4]
0049D502   8B10             MOV EDX,DWORD PTR DS:[EAX]
0049D504   68 04904E00      PUSH boomeran.004E9004
0049D509   8BC8             MOV ECX,EAX
0049D50B   FF52 30          CALL DWORD PTR DS:[EDX+30]
0049D50E   5F               POP EDI
0049D50F   5E               POP ESI
0049D510   5D               POP EBP
0049D511   5B               POP EBX
0049D512   59               POP ECX
0049D513   C2 0400          RETN 4
0049D516   CC               INT3





There is an interesting task! It is necessary to find and correct this баг.
Due to Boomerang decompiler by the open source code of he has.
For a correction I see it is needed компилювати everything.
Debugging in Microsoft Visual Studio 10 will be interesting and more comfortable too.
you do not think, I far not master With ! I can and I will set the questions of малознаючого novice.
So many files I see in a project boomerang! They all are needed simultaneously they
together they? Or how to find key parts that is needed in this problem?
Last edited on
Google translator, perhaps? Oh! Poor thing
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#endif
01232 }
01233 
01234 void Prog::decodeEntryPoint(ADDRESS a) { 
01235     Proc* p = (UserProc*)findProc(a);
01236     if (p == NULL || (!p->isLib() && !((UserProc*)p)->isDecoded())) {
01237         if (a < pBF->getLimitTextLow() || a >= pBF->getLimitTextHigh()) {
01238             std::cerr << "attempt to decode entrypoint at address outside text area, addr=" << a << "\n";
01239             if (VERBOSE)
01240                 LOG << "attempt to decode entrypoint at address outside text area, addr=" << a << "\n";
01241             return;
01242         }
01243         pFE->decode(this, a);
01244         finishDecode();
01245     }
01246     if (p == NULL) 





I want to go back to this problem. In Яндексі I found this prog.cpp here lies http://boomerang.sourceforge.net/doxy/prog 8cpp - source.html

But I do not see the unambiguity of accordance of koda. as seem I saw in OlliDbg of not alike koda.

Other all, look different it. Only identical text is only.

Interestingly it would be work this correction how to do.

Please your advices, your look to this problem, general decisions plan, so however I even know as.

Last edited on
I want to return to this issue. Founded in Yandex I prog.cpp it here lies http://boomerang.sourceforge.net/doxy/prog_8cpp-source.html

But I do not see one correspondence code. as it seems I saw in OlliDbg not similar code.

Other all look different it. Only text is the same leash.

It would be interesting work is how to make corrections. exciting experience

Please your advice, your opinion on this issue, the general solutions of the plan, since I do not even know how.

I will not consider from what to begin. In general many different files!! I can made an effort collect to itself a cantilever version,

I will not consider, what source codes to take.


Не зміркую з чого почати. Взагалі багато різних файлів!! Я б може спробував сам зібрати собі консольну версію,

не зміркую, які первинники узяти.
Last edited on
Topic archived. No new replies allowed.