This was built to track decompiler and CFG progress.
function initializeEngineOptions()
{
localplayer#8 = player#0;
lit#10 = false;
loadingscreenenabled#11 = lit#10;
lit#13 = false;
allowloginreconnect#14 = lit#13;
lit#15 = "graal2002letters.png";
fn_call#17 = setletters#16(lit#15);
lit#19 = "";
// RegionId(0)
// RegionId(1)
if (client.statusimage != lit#19)
{
fn_call#21 = setstatusimage#20(client.statusimage);
}
lit#23 = "android";
lit#24 = "flash";
// RegionId(2)
// RegionId(3)
if (player.platform in {lit#24, lit#23})
{
lit#26 = "Arial";
$pref::Graal::defaultfontname#27 = lit#26;
lit#28 = "preloademoticons";
fn_call#30 = cancelevents#29(lit#28);
lit#31 = "";
lit#32 = "preloademoticons";
lit#33 = 5;
fn_call#35 = scheduleevent#34(lit#33, lit#32, lit#31);
}
fn_call#37 = updateDefaultFont#36();
lit#39 = 21;
$pref::Graal::defaultfontsize#40 = lit#39;
lit#42 = "DustyPorViva";
lit#43 = "Graal804943";
lit#44 = "Graal2021160";
lit#45 = "pc:12856780";
lit#46 = "Sahasrahla";
lit#47 = "Xor";
lit#48 = "Graal2123882";
lit#49 = "Chompy";
temp.emojiTesters = {lit#49, lit#48, lit#47, lit#46, lit#45, lit#44, lit#43, lit#42};
lit#50 = "iphone";
// RegionId(0)
// RegionId(21)
if (!(player.platform == lit#50))
{
lit#51 = "android";
// RegionId(22)
if (!(phi<idx=0, regions=()> == lit#51))
{
lit#52 = "mac";
// RegionId(22)
// RegionId(23)
if (!(phi<idx=0, regions=()> == lit#52))
{
lit#53 = "win";
// RegionId(23)
// RegionId(24)
if (!(phi<idx=0, regions=()> == lit#53))
{
lit#54 = "flash";
// RegionId(24)
// RegionId(16)
if (!(phi<idx=0, regions=()> == lit#54))
{
lit#55 = 6.108;
// RegionId(16)
// RegionId(17)
if (graalversion#6 >= lit#55)
{
lit#56 = 6;
lit#57 = 6;
lit#58 = "DroidSansArabic.ttf";
fn_call#59 = addUTF8FontRange#4(lit#58, lit#57, lit#56);
lit#60 = 48;
lit#61 = 48;
lit#62 = "DroidSansJapanese.ttf";
fn_call#63 = addUTF8FontRange#4(lit#62, lit#61, lit#60);
lit#64 = 159;
lit#65 = 78;
lit#66 = "DroidSansJapanese.ttf";
fn_call#67 = addUTF8FontRange#4(lit#66, lit#65, lit#64);
lit#68 = 49;
lit#69 = 49;
lit#70 = "korean_hline.ttf";
fn_call#71 = addUTF8FontRange#4(lit#70, lit#69, lit#68);
lit#72 = 215;
lit#73 = 172;
lit#74 = "korean_hline.ttf";
fn_call#75 = addUTF8FontRange#4(lit#74, lit#73, lit#72);
// RegionId(17)
// RegionId(18)
if (player.account in temp.emojiTesters)
{
lit#77 = 63743;
lit#78 = 0;
lit#79 = "Symbola.ttf";
fn_call#80 = addUTF8FontRange#4(lit#79, lit#78, lit#77);
lit#81 = 6;
lit#82 = 6;
lit#83 = "124hacen.ttf";
fn_call#84 = addUTF8FontRange#4(lit#83, lit#82, lit#81);
}
lit#86 = true;
enableutf8#87 = lit#86;
}
}
}
// RegionId(12)
else
{
lit#88 = 6.108;
// RegionId(12)
// RegionId(13)
if (graalversion#6 >= lit#88)
{
// RegionId(13)
// RegionId(14)
if (player.account in temp.emojiTesters)
{
lit#89 = 63743;
lit#90 = 0;
lit#91 = "Symbola.ttf";
fn_call#92 = addUTF8FontRange#4(lit#91, lit#90, lit#89);
lit#93 = 6;
lit#94 = 6;
lit#95 = "124hacen.ttf";
fn_call#96 = addUTF8FontRange#4(lit#95, lit#94, lit#93);
}
}
lit#97 = true;
enableutf8#98 = lit#97;
}
}
// RegionId(11)
else
{
lit#100 = "Arial Unicode.ttf";
$pref::Graal::utf8fontfile#101 = lit#100;
lit#102 = true;
enableutf8#103 = lit#102;
}
lit#140 = true;
$pref::Graal::limitnicknames#141 = lit#140;
// RegionId(25)
// RegionId(26)
if (client.hidenicks)
{
lit#146 = "jail.nw";
}
// RegionId(27)
// RegionId(28)
if (phi<idx=0, regions=()>)
{
lit#147 = 0;
}
// RegionId(29)
else
{
lit#148 = 64;
}
phi<idx=1, regions=()> = phi<idx=0, regions=()>;
lit#149 = "android";
// RegionId(30)
// RegionId(31)
if (player.platform == lit#149)
{
// RegionId(31)
// RegionId(32)
if (client.androidcachefiles)
{
lit#152 = 0;
minfilecachesize#153 = lit#152;
}
// RegionId(33)
else
{
lit#154 = 131072;
minfilecachesize#155 = lit#154;
}
}
lit#156 = "iphone";
// RegionId(34)
// RegionId(35)
if (player.platform == lit#156)
{
lit#157 = 6.037;
// RegionId(35)
// RegionId(36)
if (graalversion#6 >= lit#157)
{
fn_call#159 = enableStorekitObserver#158();
lit#160 = 0;
fn_call#162 = setPushNotificationBadgeNumber#161(lit#160);
}
}
lit#163 = "android";
// RegionId(37)
// RegionId(38)
if (player.platform == lit#163)
{
lit#164 = 6.106;
// RegionId(38)
// RegionId(39)
if (graalversion#6 >= lit#164)
{
fn_call#166 = getClassicVersion#165();
lit#167 = "googleplay";
// RegionId(39)
// RegionId(40)
if (fn_call#166 == lit#167)
{
fn_call#169 = initGooglePlay#168();
}
}
}
lit#171 = 0;
player.z = lit#171;
lit#173 = false;
player.isonsnow = lit#173;
lit#175 = false;
player.isonsnow2 = lit#175;
fn_call#177 = enabledefmovement#176();
multitaskingenabled#180 = client.multitasking;
lit#183 = true;
GraalControl.visible = lit#183;
lit#185 = false;
client.disableshowprofile = lit#185;
// RegionId(41)
// RegionId(42)
if (!client.horse)
{
fn_call#188 = takeplayerhorse#187();
}
// RegionId(43)
// RegionId(44)
if (client.pixelated)
{
fn_call#191 = setRetinaDisplayNoAntialias#190();
}
lit#192 = "flash";
// RegionId(45)
// RegionId(46)
if (player.platform == lit#192)
{
lit#193 = 6.02;
// RegionId(46)
// RegionId(47)
if (graalversion#6 >= lit#193)
{
lit#194 = "http://profile.ak.fbcdn.net/crossdomain.xml";
fn_call#196 = flashLoadPolicyFile#195(lit#194);
lit#197 = "https://profile.ak.fbcdn.net/crossdomain.xml";
fn_call#198 = flashLoadPolicyFile#195(lit#197);
lit#199 = "http://fbcdn-profile-a.akamaihd.net/crossdomain.xml";
fn_call#200 = flashLoadPolicyFile#195(lit#199);
lit#201 = "https://fbcdn-profile-a.akamaihd.net/crossdomain.xml";
fn_call#202 = flashLoadPolicyFile#195(lit#201);
}
}
lit#204 = false;
client.pushpullcooldown = lit#204;
lit#205 = "*";
fn_call#207 = Adventure_setAllowedSocketsConnect#206(lit#205);
lit#208 = "iphone";
// RegionId(48)
// RegionId(49)
if (player.platform == lit#208)
{
lit#209 = 6.107;
// RegionId(49)
// RegionId(50)
if (graalversion#6 >= lit#209)
{
lit#210 = 1;
fn_call#212 = Adventure_getApplicationFolder#211(lit#210);
temp.userfolder = fn_call#212;
lit#213 = true;
lit#214 = "levels/";
fn_call#215 = Adventure_excludeFileFromBackup#5(temp.userfolder @ lit#214, lit#213);
lit#216 = true;
lit#217 = "maps/";
fn_call#218 = Adventure_excludeFileFromBackup#5(temp.userfolder @ lit#217, lit#216);
lit#219 = true;
lit#220 = "scriptfiles/";
fn_call#221 = Adventure_excludeFileFromBackup#5(temp.userfolder @ lit#220, lit#219);
lit#222 = true;
lit#223 = "sounds/";
fn_call#224 = Adventure_excludeFileFromBackup#5(temp.userfolder @ lit#223, lit#222);
lit#225 = true;
lit#226 = "webfiles/";
fn_call#227 = Adventure_excludeFileFromBackup#5(temp.userfolder @ lit#226, lit#225);
lit#228 = true;
lit#229 = "weblevels/";
fn_call#230 = Adventure_excludeFileFromBackup#5(temp.userfolder @ lit#229, lit#228);
}
}
lit#231 = "";
fn_call#233 = connectToDistimoService#232(lit#231);
fn_call#235 = preloadImages#234();
lit#236 = 0;
return lit#236;
}
}
// RegionId(5)
// RegionId(6)
if (graalreloaded#104)
{
lit#105 = "arial.ttf";
$pref::Graal::utf8fontfile#106 = lit#105;
lit#107 = 6;
lit#108 = 6;
lit#109 = "DroidSansArabic.ttf";
fn_call#110 = addUTF8FontRange#4(lit#109, lit#108, lit#107);
lit#111 = 48;
lit#112 = 48;
lit#113 = "DroidSansJapanese.ttf";
fn_call#114 = addUTF8FontRange#4(lit#113, lit#112, lit#111);
lit#115 = 49;
lit#116 = 49;
lit#117 = "korean_hline.ttf";
fn_call#118 = addUTF8FontRange#4(lit#117, lit#116, lit#115);
lit#119 = 159;
lit#120 = 78;
lit#121 = "DroidSansJapanese.ttf";
fn_call#122 = addUTF8FontRange#4(lit#121, lit#120, lit#119);
lit#123 = 215;
lit#124 = 172;
lit#125 = "korean_hline.ttf";
fn_call#126 = addUTF8FontRange#4(lit#125, lit#124, lit#123);
}
// RegionId(7)
else
{
lit#127 = "DroidSansFallback.ttf";
$pref::Graal::utf8fontfile#128 = lit#127;
}
// RegionId(8)
// RegionId(9)
if (player.account in temp.emojiTesters)
{
lit#129 = 63743;
lit#130 = 0;
lit#131 = "Symbola.ttf";
fn_call#132 = addUTF8FontRange#4(lit#131, lit#130, lit#129);
lit#133 = 6;
lit#134 = 6;
lit#135 = "AdobeArabic-Regular.ttf";
fn_call#136 = addUTF8FontRange#4(lit#135, lit#134, lit#133);
}
lit#137 = true;
enableutf8#138 = lit#137;
goto RegionId(25);
}
Use the mouse wheel + shift to zoom in and out, and click and drag to pan.
Use the mouse wheel + shift to zoom in and out, and click and drag to pan.
Step 1 of 92