View Full Version : C4Decompiler Feedback
Carsten
November 19th, 2012, 15:04
Hi,
we spent some time developing C4Decompiler, a general machine decompiler. It's now good enough to call it an Alpha release (not feature complete, not stable).
Overview: http://www.c4decompiler.com/WebHelp/topics/genovr.htm
Download: http://www.c4decompiler.com/download/C4Decompiler-Free(0.6.0).msi
It comes with a set of examples to demonstrate its features. Our focus for the future is to extend an example step by step until C4Decompiler can handle full sized programs.
We would appreciate _constructive_ feedback:
- Errors in the decompile of the examples ?
- Essentials features needed ?
- Handling of decompile problems, you opinion ?
- Documentation (WebHelp): Errors, missing information, general remarks,...
- ...
Not helpful:
- Decompiling is anyway not possible
- My 10MB code program doesn't decompile
- ...
Contact: support@c4decompiler.com
Regards,
Carsten
OHPen
November 20th, 2012, 03:18
Hi Carsten,
I really would like to test your decompiler! Decompiling is in my opinion one of the most interesting stuff right now to code, but ( you won't like it... ) why is there need to install the application in admin mode. You should remove that if there is no explicit reason for it. I wrote a lot of programs and I know from the own lazyness that usually the developer hates customizing the installation process, as it does nothing have to do with the "real" coding work. But usually there is no need for admin installation, so better to remove it.
I won't use it until I know why you need it, sorry.
Regards,
OHPen.
Carsten
November 20th, 2012, 16:08
Hi OHPen,
thanks, this is exactly the constructive feedback we are looking for !
I changed the installer to a per-user installation (problem 1). The default installation directory is still C:/Program Files/..., so you have to override the installation directory in the installation dialog to a directory where you have write access (problem 2).
Download: http://www.c4decompiler.com/download/C4Decompiler-Free(0.6.1).msi
Waiting for more ....
Regards,
Carsten
kiote99
November 21st, 2012, 02:24
Hi Carston,
I tried installing the non-admin version (from http://www.c4decompiler.com/download/C4Decompiler-Free(0.6.1).msi) and I got this error: http://i.imgur.com/ogYcR.jpg
Cheers!
Quote:
[Originally Posted by Carsten;93744]Hi OHPen,
thanks, this is exactly the constructive feedback we are looking for !
I changed the installer to a per-user installation (problem 1). The default installation directory is still C:/Program Files/..., so you have to override the installation directory in the installation dialog to a directory where you have write access (problem 2).
Download: http://www.c4decompiler.com/download/C4Decompiler-Free(0.6.1).msi
Waiting for more .... 
Regards,
Carsten |
Carsten
November 21st, 2012, 02:54
Quote:
[Originally Posted by kiote99;93746]Hi Carston,
I tried installing the non-admin version (from http://www.c4decompiler.com/download/C4Decompiler-Free(0.6.1).msi) and I got this error: http://i.imgur.com/ogYcR.jpg
Cheers! |
Hi kiote,
the default program installation directory is c:\Program Files\C4Decompiler, because this is where most/all of your programs are installed. Problem is that Windows gives only admins write access to c:\Program Files, so you have to install it somewhere else.
Solution
You can change the program installation directory in one of the installation dialogs. Don't accept the c:\Program Files\C4Decompiler and install it instead in one of your directories, e.g. ...\My Documents\C4Install. You can install it anywhere as long as you have write access.
Hope this helps,
Carsten
deroko
November 21st, 2012, 04:04
Here is one bug you get as soon as you try to open an .exe. Also you might want to have for hexview fixed font like Courirer New, as hex view looks nicer in that case
Code:
System.ArgumentException: Value does not fall within the expected range.
at .( )
at .( )
at ..( )
at .[S](IEnumerable`1 , Action`1 )
at .()
at .(String )
at . (String , UInt64 , String )
at ..(String , , , )
at ...()
at ..()
===== Bug end =====
Carsten
November 21st, 2012, 16:12
Quote:
[Originally Posted by deroko;93748]Here is one bug you get as soon as you try to open an .exe. Also you might want to have for hexview fixed font like Courirer New, as hex view looks nicer in that case 
[/CODE] |
Hi deroko,
thanks for the feedback.
Exe bug
Does the included ...HelloWorld.exe example work ? At this stage most .exe will fail, because a lot of details need more work. If your exe is a limited example and you can provide it, then we could have a look.
Hexview font
We use the same font for the C-Source and the Hex View. Default is Consolas, but it is not installed on XP. We will handle this in the next release. Workaround: Change the Code Font in the Tools/Options/General dialog to whatever you like.
Regards,
Carsten
blabberer
November 22nd, 2012, 03:01
well i used 7 zip to extract it to a limited user desktop on the first msi (havent checked the second msi yet)
so i didnt face any access denied
but it crashed on the accompanying hello world and on clicking continue i seemed to face a soft hang (no response from gui )
OHPen
November 22nd, 2012, 03:04
Quote:
[Originally Posted by Carsten;93744]Hi OHPen,
thanks, this is exactly the constructive feedback we are looking for !
I changed the installer to a per-user installation (problem 1). The default installation directory is still C:/Program Files/..., so you have to override the installation directory in the installation dialog to a directory where you have write access (problem 2).
Download: http://www.c4decompiler.com/download/C4Decompiler-Free(0.6.1).msi
Waiting for more .... 
Regards,
Carsten |
Hey,
very good. This is what I expected. So i can try the version ;D
Thx for the fast fix!
Regards,
OHPen
deroko
November 22nd, 2012, 05:46
Quote:
[Originally Posted by Carsten;93751]Hi deroko,
thanks for the feedback.
Exe bug
Does the included ...HelloWorld.exe example work ? At this stage most .exe will fail, because a lot of details need more work. If your exe is a limited example and you can provide it, then we could have a look.
|
No it was file built without any optimziation in C which I use to load my softice extension. Plain C, and very simple main procedure. No cases, just some ifs. I didn't try with sample, as I suppose it will work with your sample

Carsten
November 22nd, 2012, 14:17
Hi blabberer, deroko,
thanks for the feedback.
C4Decompiler is at the moment good-case/demonstrator software and I tried to state this in my initial post "...Alpha release (not feature complete, not stable)". Most .exe or .obj will fail at this state and this is ok, because it is mostly routine work to fix it.
We concentrated on the decompiler part and have many advanced decompile features implemented. Try the included HelloWorld example and have a look at __tmainCRTStartup, a function with some nasty features. What's wrong, what could be better, ... ? Give us feedback, so that we can get the features complete and fix afterwards the routine problems.
Blabberer, you need the signature files under '...\MyDocuments\C4Decompiler\C4Sig' to get the example working. Use the non-admin installer (0.6.1) and everything will be at the right place.
Deorko, one of the good C4Decompiler features is that it doesn't care about optimized or not, because it performs no compiler detection/pattern based decompile. If you have a nice example that you own, send it and we can work together to get it through the decompiler.
http://www.c4decompiler.com/WebHelp/topics/ApxExaHel.htm
Regards,
Carsten
blabberer
December 3rd, 2012, 23:30
Quote:
Blabberer, you need the signature files under '...\MyDocuments\C4Decompiler\C4Sig' to |
well the second msi also seems to hate me
cant say if i pinched it and it is bawling due to my pinch or it doesn't like my face
also i cant send it hostel it wants to keep on nibb(pp)ling
Quote:
===== Bug start =====
Microsoft Windows NT 5.1.2600 Service Pack 3 5.1.2600.196608, CLR 4.0.30319.1
C4Decompiler 0.6.1.4793
System.NullReferenceException: Object reference not set to an instance of an object.
at Gui.View.PropertyWindow.onSrcNodeSelected(Object win, ? srcNode)
at ?.(Object , ? )
at Gui.View.FunctionTreeWin.onMouseLeftButtonDownX(Object sender, MouseButtonEventArgs e)
at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent)
at System.Windows.UIElement.OnPreviewMouseDownThunk(Object sender, MouseButtonEventArgs e)
at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
at System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args)
at System.Windows.UIElement.RaiseEvent(RoutedEventArgs args, Boolean trusted)
at System.Windows.Input.InputManager.ProcessStagingArea()
at System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)
at System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
at System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)
at System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)
===== Bug end =====
Event Type: Error
Event Source: MsiInstaller
Event Category: None
Event ID: 11309
Date: 03/12/2012
Time: 12:23:30
Description:
The description for Event ID ( 11309 )
in Source ( MsiInstaller ) cannot be found.
The local computer may not have the necessary
registry information or message DLL files to
display messages from a remote computer.
You may be able to use the /AUXSOURCE= flag
to retrieve this description;
see Help and Support for details. The following information
is part of the event:
Product: C4Decompiler-Free -- Error 1309. Error reading from file:
C:\Documents and Settings\Admin\My Documents\C4Decompiler\Example\#4755-HelloWorld.exe.
System error 5. Verify that the file exists and that you can access it., (NULL), (NULL), (NULL), (NULL), , .
Data:
0000: 7b 32 32 39 36 34 46 30 {22964F0
0008: 36 2d 42 46 41 38 2d 34 6-BFA8-4
0010: 37 33 41 2d 39 31 36 34 73A-9164
0018: 2d 42 46 46 42 42 35 35 -BFFBB55
0020: 33 44 38 41 41 7d 3D8AA}
|
Carsten
December 5th, 2012, 14:33
Quote:
[Originally Posted by blabberer;93790]well the second msi also seems to hate me
cant say if i pinched it and it is bawling due to my pinch or it doesn't like my face
also i cant send it hostel it wants to keep on nibb(pp)ling |
I don't think that the MSI hates you, maybe you are just to rough with it.
Not clear what you are doing. The upper part of the error is from C4Decompiler's error dialog, but where comes the rest from ? Did you have an installation problem and afterwards the partially installed program failed ?
More information and I make sure the MSI

you the next time
blabberer
December 7th, 2012, 04:18
oops
i meant it doesn't uninstall properly it is trying to find the file #helloXXXXXXXXX in the %mydoc% folder
and it cant find it though the file physically exists
(possibly an improper handling of path with spaces in it viz "c:\document
s and settings\XXXX\XXX
X XXX)
the bottom part is an event viewer description of the problem
Powered by vBulletin® Version 4.2.2 Copyright © 2018 vBulletin Solutions, Inc. All rights reserved.