http://bugs.winehq.org/show_bug.cgi?id=26504 --- Comment #3 from Anastasius Focht <focht(a)gmx.net> 2012-04-21 14:56:19 CDT --- Hello, cleaning up my disk, hence adding some info before it gets lost (not fully analysed). The client uses the builtin "Squirrel" script engine/vm and small scriptlets. The scripts can be found in a file called "vcfile.res" which is password-protected. The password can be easily found using a debugger -> "vcfile-dorkas629" After unpacking the archive there will be GUI resources (.jpeg files) and scriptlets (.nut files): --- snip --- $ ls -o *.nut -r--r--r--. 1 focht 248 Apr 30 2009 BeginDlgLayer.nut -r--r--r--. 1 focht 2810 Apr 30 2009 BeginDlg.nut -rw-rw-r--. 1 focht 24638 Jun 29 2010 configdata.nut -r--r--r--. 1 focht 4248 Sep 13 2009 ConfigLayout.nut -r--r--r--. 1 focht 3724 Sep 13 2009 config.nut -rw-rw-r--. 1 focht 4634 Oct 18 2011 flags.nut -rw-rw-r--. 1 focht 6120 Oct 18 2011 include.nut -r--r--r--. 1 focht 6918 Oct 15 2009 IniSliderBar.nut -r--r--r--. 1 focht 3956 Sep 10 2009 LanguageDlgLayout.nut -rw-rw-r--. 1 focht 4788 Oct 18 2011 language.nut -rw-rw-r--. 1 focht 6884 Mar 15 2010 LanguageSelectDlg.nut -rw-rw-r--. 1 focht 15276 Jun 30 2010 launcherLayer.nut -r--r--r--. 1 focht 8940 Feb 4 2010 Launcher.nut -rw-rw-r--. 1 focht 16152 Apr 19 2010 Main.nut -r--r--r--. 1 focht 1274 Mar 26 2009 MessageBoxDLG.nut -rw-rw-r--. 1 focht 1576 Mar 26 2009 MessageBoxLayout.nut -r--r--r--. 1 focht 1392 Feb 5 2010 stringdef.nut --- snip --- The scriptlets are unicode. Main.nut and Launcher.nut are probably the interesting ones. They seem to be closely tied to win32 API (window objects, messages/pump). Example snippet (from Main.nut): --- snip --- SQ.LoadModule("stringdef.nut"); SQ.LoadModule("include.nut"); SQ.LoadModule("flags.nut"); SQ.LoadModule("MessageBoxDlg.nut"); SQ.LoadModule("Config.nut"); SQ.LoadModule( "language.nut"); SQ.LoadModule("LanguageSelectDlg.nut"); SQ.LoadModule("Launcher.nut"); g_config<-Ini(config); g_runeDevConfig<-Ini(runeDev); class MainFrame extends FrameWnd { ... function Notify( msg) { //print(msg.sType); // if (msg.sType=="timer") { // //print(msg.pSender.GetName()); if (msg.pSender.GetName()=="cur_ProgressBar") { if (msg.wParam==100) { local now=VC.GetDLFileSizeNow(); local max=VC.GetDLFileSizeMax(); _page.CurlProgress(now,max); local speed=VC.GetDLSpeed(); local listmsg=format("(%.2f KB/s) ",speed/1024); SetProPostMessage(listmsg); if (max>100 && now>0) { local par=now*100/ max; par=par*(50)/100.0; SetToTalProgressBar(par+30); } } if (msg.wParam==101) { local par=VC.MD5_GetPar(); _page.CurlProgress(par,100); } } } ... --- snip --- The scriptlets itself might not really be part of the problem (could be anything, script engine/virtual machine/runtime itself) but it's always useful to have a high-level language view which can be partly mapped to relay trace log/win32 API call sequences. Regards -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email Do not reply to this email, post in Bugzilla using the above URL to reply. ------- You are receiving this mail because: ------- You are watching all bug changes.