Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
actions-user committed Apr 26, 2023
2 parents cbdf190 + 0707887 commit 7712c0b
Show file tree
Hide file tree
Showing 10 changed files with 137 additions and 115 deletions.
16 changes: 14 additions & 2 deletions Cheat Engine/CEDebugger.pas
Original file line number Diff line number Diff line change
Expand Up @@ -209,10 +209,22 @@ function startdebuggerifneeded(ask:boolean): boolean; overload;
i: integer;
begin
result:=false;
if processid=GetCurrentProcessId then raise exception.create(rsPleaseTargetAnotherProcess);
if processid=GetCurrentProcessId then
begin
if MainThreadID=GetCurrentThreadId then
MessageDlg(rsPleaseTargetAnotherProcess,mtError,[mbOK],0);

exit(false);
end;


if processhandle=0 then raise exception.create(rsYouMustFirstOpenAProcess);
if processhandle=0 then
begin
if MainThreadID=GetCurrentThreadId then
MessageDlg(rsYouMustFirstOpenAProcess,mtError,[mbOK],0);

exit(false);
end;

if (debuggerthread=nil) then
begin
Expand Down
15 changes: 8 additions & 7 deletions Cheat Engine/LuaHandler.pas
Original file line number Diff line number Diff line change
Expand Up @@ -674,10 +674,13 @@ function LuaValueToDescription(L: PLua_state; i: integer; recursivetablecount: i
result:='nil';
end;

procedure LoadLuaScriptsFromPath(path: string);
procedure LoadLuaScriptsFromPath(path: string; var mainformwasset: boolean; var addresslistwasset: boolean);
var
DirInfo: TSearchRec;
i,r: integer;
pc: pchar;


begin
ZeroMemory(@DirInfo,sizeof(TSearchRec));
r := FindFirst(path+'*.lua', FaAnyfile, DirInfo);
Expand Down Expand Up @@ -738,12 +741,10 @@ procedure LoadLuaScriptsFromPath(path: string);
procedure InitializeLuaScripts(noautorun: boolean=false);
var f: string;
i,r: integer;
pc: pchar;

pc: pchar;
mainformwasset: boolean=true;
addresslistwasset: boolean=true;


addresslistwasset: boolean=false;
begin
lua_getglobal(LuaVM,'MainForm');
if lua_isnil(LuaVM,-1) then
Expand Down Expand Up @@ -809,8 +810,8 @@ procedure InitializeLuaScripts(noautorun: boolean=false);
//autorun folder
if noautorun=false then
begin
loadLuaScriptsFromPath(autorunpath);
LoadLuaScriptsFromPath(autorunpath+'custom'+PathDelim);
loadLuaScriptsFromPath(autorunpath, mainformwasset, addresslistwasset);
LoadLuaScriptsFromPath(autorunpath+'custom'+PathDelim, mainformwasset, addresslistwasset);
end;

if translationfilepath<>'' then
Expand Down
19 changes: 19 additions & 0 deletions Cheat Engine/MemoryBrowserFormUnit.pas
Original file line number Diff line number Diff line change
Expand Up @@ -3223,12 +3223,31 @@ procedure TMemoryBrowser.miReplacewithnopsClick(Sender: TObject);
end;

procedure TMemoryBrowser.hexviewKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
var a: qword;
psize: integer;
gotoaddress: qword;
x: ptruint;
begin
if shift=[ssCtrl] then
begin
case key of
vk_space: //ctrl+space
begin
if hexview.HasSelection then
begin
psize:=1+hexview.SelectionStop-hexview.selectionstart;
if psize>=4 then
begin
key:=0;
if psize>8 then psize:=8;

if ReadProcessMemory(processhandle, pointer(hexview.SelectionStart), @gotoaddress, processhandler.pointersize,x) then
disassemblerview.SelectedAddress:=gotoaddress;

exit;
end;
end;

disassemblerview.SelectedAddress:=memoryaddress;
key:=0;
end;
Expand Down
22 changes: 18 additions & 4 deletions Cheat Engine/bin/autorun/JavaInfo.lua
Original file line number Diff line number Diff line change
Expand Up @@ -611,12 +611,25 @@ function edtClassFilterChange(frmJavaInfo, sender)
frmJavaInfo.filteredClassList=nil
frmJavaInfo.lvClasses.Items.Count=#jDataSource.Classes
else
local uppercase=frmJavaInfo.cbCaseSensitive.Checked
local filter=sender.Text
if not uppercase then
filter=filter:upper()
end
local r={}
for i=1,#jDataSource.Classes do
if jDataSource.Classes[i].signature:find(filter,1,true) then
table.insert(r,jDataSource.Classes[i])
end

if uppercase then
for i=1,#jDataSource.Classes do
if jDataSource.Classes[i].signature:find(filter,1,true) then
table.insert(r,jDataSource.Classes[i])
end
end
else
for i=1,#jDataSource.Classes do
if jDataSource.Classes[i].signature:upper():find(filter,1,true) then
table.insert(r,jDataSource.Classes[i])
end
end
end

frmJavaInfo.filteredClassList=r
Expand Down Expand Up @@ -900,6 +913,7 @@ function miJavaInfoClick(sender)

frmJavaInfo.lvClasses.OnData=function(sender, listitem) lvClassesOnData(frmJavaInfo, sender, listitem) end
frmJavaInfo.edtClassFilter.OnChange=function(sender) edtClassFilterChange(frmJavaInfo, sender) end
frmJavaInfo.cbCaseSensitive.OnChange=function(sender) edtClassFilterChange(frmJavaInfo, sender) end

frmJavaInfo.lvClasses.OnSelectItem=function(sender, listitem, selected) lvClassesSelectionChange(frmJavaInfo, sender) end

Expand Down
2 changes: 1 addition & 1 deletion Cheat Engine/bin/autorun/forms/JavaInfo.frm
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<FormData>
<frmJavaInfo Class="TCEForm" Encoding="Ascii85">wOCDW/3t#CoH)*5Hr.mHvLKLhKw=#]y36MQPEFdhS+6=3gmRwPlf;$H#,sR:=fwP$8AzM}ao}W(fdgkQdqeyO[yNp#Y^%m_^a8RbBz_o[@FH%F@UOQ;:AmH;PCCzOgZ6%h(_qmqgXdrdx[Cq=Jvid!s#QIN^(;R6pO=!65_.lcSzr1dpOpW!R)4)P(tRKiP6=[xXm$kogm_ph1_jzet}wH_DbbeO$cLE6Sli[#b*7:)LFSL}zz@WbNw?rqQ8_KmTB]:Z5%95nLYOZBYmJcfT=!#=i/cp-[u9QPNSPd}[Q8)*JTsOAnFC6uVT*Wk/6#;C#vqI6m{bJ{am2/nVlqD(*-DnW*T#i/2iIGKdXV-+.QDyHquza{2TvuCX;RDz7U7%)rkTz]Elxn6fwDdWKN_J]438y^X(AB]]/}Am)BskD9Ulp^ib5%-U[RCu^E#rP021+c0.NI%rD6h:OhWbmUh,d9@XhUR0[skhuFT5rL*7Pha=@0c(mP2MJ}558/mrwOMw:i*YmSSKpm#vQm3FhwuMn)NN32DVXGDeT]HY_W?Ir]5E1Z!O=v*wQeqtpP7t@*?QWN?ccgjh0vj;/Qe.Qz=roLGtQSWz#VXPeb9u$c}R}E^4jxR8zdw;JSK83)L#@{m%PRWIO#98Z4$c4f:6t^*!=D-s)9GSHuWY5=s3/;3ip@0%l7NcAbGyrl=wa9*o7Rd4}E6=sf6y^o#Of!=sjS{6mGHf,ojqy.)fctL8hsevXw6Beb5_1gZTes?eT,?T^b=ZJHt)4:6N}{4GGSm2)V}t,J%C5l8K?Yq/@C[PKA#p0O2f{q4j9)_3*Xp4hrE6R)-G*-lj=]!0e,j$TgO^e!h^LHuQ?1mXid-$#$[o%cBNH#h?xfK7#Z48r(H$Q1BSk*r:7KFXCPWQ#D$MpJd?vzW)S0G+19TNmm?@=}KJ$kNX5Hv+$vlSGNmomPxyngricq;rjGX4{?vu-8k4n+QQZL.?7Oy9PYUg[G%YPXQi)eAtg%5!tM0WiBey-BZ.!3O3:f:P5c?#3XbOI:hozONS@b;$1@yoW{z8#?Ai[z@wJ/fvVU2nk_M8^LHU)}9?+$aZ9F8l2pWbcUFT2ldp+M{VU2sxjIUCcPZZfwNm(nkMJ$t=Vy7.z1ts50_R=[SJOI)ZM(.7vanJ*35vur;+XL=}=2l_P}*w+Z6jq}Ew#ep0!Mtrl.Wm3o*MAQ3]VHj7-tX1vHR%HJwu=EUwKQ9T{w801Bkk,%_aft8g12P-MPk,l-ZDuH^ziM-sSB.3CY0roajK:gV9p/{Fq@+AU-+-{3TRJ03#!vO^ExtQ*ayeF*P!y[[--V5SEwx,]E3BY66cL9Pien.km1rr292LGkiiC#1Ae^*^/Dk@mOiJAAh+V*zQ[7V?K8^7Abjm@wASX#EpQV_H,T3NYMvZZ.0l[nTzO])^cF@_]UABsD_pjbS^Zw1ZR2==iRbO;/5AkMU}Ez20g4Lw+tL[QZoR,.=qakV_AOf.spOV6TPIS.m=ioKUqY*d!cWu@LE;]nxR1/pmRXqb:gHjGue=:XqvR;s3Fo/QnH9.wUD45B*k#T*D]=p*A.-EaGSQxA8sXsuN!BjKe=@7/xqm^aklIAk)T#aWQEog+K_kJabJx74OEf$q7Om^oTu4JpQl-lm$wzR.N9vXdNHSJ4plry-:SI%{-!kIC/v0}l4T9=kEnK#HT,Ve^H@IiQ;h-qkjIG,!z2NDg8Pj7h^?=9)7QWlOTqb1d1E3Ve4MN3@^%=Pl[1x8]Zed}PR]ow+_AE$ENFGBWLWX8cccjZx7G]cO3.Kc{1Kwst?gRX6H]*GCBi=2$l-glS/r47vdrLnitgc]Y}arNED39Upsh$C6i$c5K}*BQQnMMf7pv!;NuKpVc#nb$Qi^.(.GpghBRvktY#H:R;Xpev6U_2BSOapc@XK3{8U$Rg:Q8h}AA;Y[vM9:RQ}QbcEIC-NDlX$eVGuwE%pM)h$;*XXG5[fL2trsltnL6gZ-(5-a^gD1%%L^JYjrBPAcxr%lx:irva+SpnqOEJX-6bBWfY^GW?itF_!eu*YXAAUpPb3]Ec5+;,d^y*@?/^I[f?^^a</frmJavaInfo>
<frmJavaInfo Class="TCEForm" Encoding="Ascii85">wOGq./3/,cLlQ{.t!{(RJb*QMzywI65h#zD+)96Ta.vR_-1b-,XO#dYvLta[tRkvPa:Skuo8(99$v$6?/+Ww=vJ2*PW/Fr+K}gN5;UJj=cwy=Ybn2daZ:HKf-yK-i@nCb^Hyu0}5{I]8G/gQrV1)zSF?_(QwwkRI7%!IG^hRAfN$UP$H?{D?zI6ZH,(K),yoLjUIVH%uAI:7V!3o4HmUeFdQXUiB3M6DtV%^5_7-F6wK6X3$a^,h@S-im0IDzNqBlkzEaSHLuYbD7kh[Qc8Brw5VHzkvhLWl=A%aFFmgYhM#Oz!1/)wBc9Ssg+=DJ84*h]b0EvjGB)L8eGKPR^9).@bHvrPyvBBH?770!S_0J0diKbdrKF#+4oG=nBdfA%Prc-=SbP(Pn1pMGU.m0W$*w83AbfQ!qP_K#rvtjAO/xV_X2*wZXv38T^lZ2K^D@kTLK9)#Q]FSDdJqW5D:.pjCncPyc7#Jek0?teulM64@sAlpg!R+*?jr7.q5y7Z5}e7}KTH1-aHsg5AlITx+.Y?mj;,FL?tGuP6KlLC.@a3z!nhEz1^[(H.wV(.Ea6)sBAmJ[/HXfP}$bR3]CD7!,YGaE!P+^jFiOEm]YNqL[DK#8pg)F%m]e*+%j.gib@Zq*Yw0s+4?o-Yif#=^BMnv(Ni9ic%iv(umZQuuc/Pi8n29CD)i4N{+bHHD{k;oLgUWjZzl.DSW_CV$56jCJ?kY+$X9OU!-ut0TqD^#N!y@1z$SWZoYabn2F31;IES;h0#,AZj6@Yv8[2fA{G=8I#_N,N{RQ7G]7XH68=vkW%9ub0Hd1K+5DWE+^]msAZR*J,_JYTr-q74S327)ye.R-d9RYHB1heGKt+-Q10X=sKYt3!g:SfX2/;GeBz2G]K$freiQ8M]:pT+hVg4NjX.)SZD_z!uX[]06*XKcNi/zh.9+4siqNu8^-(%=i(nV3r#*,:wvuhgV+PCy]u}}53)T=?z${;_U76!eq%BRLUn2y2A%b4.N5a*yn=5XHBUB,)^EtG3vr0%O+soU2g,0Qj;gd[OEvAUVL5agoEIaWg,xmM#jNT5{,,nIfOlNxqM,nbjFt*NvPpQ%]_PIpQ4CKsZ}zJw2!L^^xY:/-u@lP,1XB$qLZX9!xQSo{dU(mj6mbI398b23}ZR5XQZ(HIa4ZB?Kut68FLzd;32x*Nv(Z_C0qkF[:Vw)3!1FjGBB^r_X/;0W*Nwd/RPe.7p,GS/.rq2$!B;3}*A#_phykG_:ETaI]82)BSITM0$:TC==Yf{vUVk6%(tf$.5UC4lhWjN;sOSF3b^83#Db/[]B8+Yq:w!oRG^PY*oKnT?A,Po]Z2={6UD7w5Z_-PG-dBr[r@;;!j6D#:Ge$,MvAnA(Cw(VBvby@E}Y[uNK%#9?+bf}ofPs@K$Urx*)]S^TQ[zhJb@:5q#lon%y^#MvSx=+Bnb=6:EOB3b2d4;+w?k10u=yhs6#[O)IG[ynOdtc}r:D0X;EKTfHbjsb@L3c?Q9=#z5Fq:;@*vWC%f5/#{B(4VSt3pfb?f+Jl$]hx]%1X2cnqtuBz#wp{Wa!c!eR+7}$aH=AOYr6VIUb4,hVf$gbusPNHgyC(5g8X0@XXVQ}Icsn36NQ7S+0Mn:vNra%([nS=2o%fq[?^OI=r}1iRjMw3L7HTq+4^#1d+x8HCn/]#+s^gs!)Us26:h/(@,S58UR5-;sWSF^p0T,p!uNF5;*FuLqhZ{Pf4SQ;P5Vu@$xCi$F(p6{q[NV-%C#d:d35R/;{%AyW()S([WQ1B9$_5l*TUAicS[EiP3ojl#Rp;AXPg2tVYB^ejI)9!P4b*7JBSpd3=D]Zo4bMFvbngS8Jet8NJD,K-ZPg}E*ef+-fBaEW9H%D+1Ecz$fgS3Ga5eHoRmLG4x$BSB)f;=!$hA3PmzUD)3C?_z!(!{Z83UfG0jxTZo8LlB}y-EUFB[:kG]::/9KQRPb-5[-3j]$9y+djogNz)B$0KiJuRd^D8)@JM3FGV=5D^n0Sm}*d=P;02Hr[xWgEsg,9.O%6c}5kV;kyZBvr*RC.KhNM9glpCB)M.*Km65.C9obe7}rY$gG/!car#sl4{Oln[_.[ZR^m5A?rt4.X,vNMk@Cqlh)7CYkRT7^b!?.hfg8zWz+Ic?C]}:gd4BP6_4a5XlqZKxA]b:L^cSI[CsI@xs{9s(7na]E.GZXbERyr/#SI1RM;PB!mGKc@C+Acq/eZSR1=/U),J3k^RswQW^P{(B!AXi1LXc!4wnA_</frmJavaInfo>
</FormData>
10 changes: 2 additions & 8 deletions Cheat Engine/docs/todo.txt
Original file line number Diff line number Diff line change
@@ -1,10 +1,5 @@
branch mapper dpi issues

ceserver debug: add option to exclude some threads from debugging

if you select 4/8 bytes in hexview and press ctrl+space , the disassembler should change to the selected address
if you select 4 bytes and press space then also go to that address

fix jvmti on windows (I messed up the lua)

.net info: getting the classlist takes long and it looks like nothing happens, and seems to wait till the symbol enum is done
Expand All @@ -27,8 +22,6 @@ processwindow: When going to the network window and connect, and then cancel bec
autoassembler: add autocomplete for stuff like createthread, alloc, etc...
autoassembler: Add a checkbox or something so it won't ask if you wish to keep certain symbols (always yes/always no?)

enum modules and symbols: add f3 support in search

ceserver: try to demangle names (register both manged and demangled names)

symhandler: if _errno can't be found, look for a __errno instead (android thing)
Expand Down Expand Up @@ -62,7 +55,6 @@ auto assembler: 6 byte jmp option where CE will do a scan for a 8 byte codecave
auto assembler: 5 byte jmp option where CE will do a scan for a 14 byte codecave
DPI: form designer: anchor editor has crappy size on first time show

java info: add a "case sensitive" checkbox to the classlist filter
java info: expand arrays (max 20 or so)

form editor: add an order change option (not just bring to front/send to back)
Expand All @@ -74,6 +66,8 @@ binary type hotkey: increase value by doesn't work

ceshare list filter search has an error

macos: luaserver

---

dbvm: Change memory while on a breakpoint doesn't seem to apply it to the cloaked page
Expand Down
117 changes: 39 additions & 78 deletions Cheat Engine/frmEnumerateDLLsUnit.lfm
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,10 @@ object frmEnumerateDLLs: TfrmEnumerateDLLs
OnDestroy = FormDestroy
OnShow = FormShow
Position = poScreenCenter
LCLVersion = '2.0.8.0'
LCLVersion = '2.2.2.0'
object Label2: TLabel
Left = 0
Height = 16
Height = 15
Top = 0
Width = 369
Align = alTop
Expand All @@ -25,8 +25,8 @@ object frmEnumerateDLLs: TfrmEnumerateDLLs
end
object TreeView1: TTreeView
Left = 0
Height = 251
Top = 16
Height = 247
Top = 15
Width = 369
Align = alClient
Font.CharSet = ANSI_CHARSET
Expand All @@ -44,21 +44,21 @@ object frmEnumerateDLLs: TfrmEnumerateDLLs
end
object Panel1: TPanel
Left = 0
Height = 36
Top = 267
Height = 41
Top = 262
Width = 369
Align = alBottom
AutoSize = True
BevelOuter = bvNone
ClientHeight = 36
ClientHeight = 41
ClientWidth = 369
TabOrder = 1
object Button1: TButton
AnchorSideLeft.Control = Panel1
AnchorSideLeft.Side = asrCenter
AnchorSideTop.Control = Panel1
Left = 139
Height = 20
Height = 25
Top = 8
Width = 90
AutoSize = True
Expand All @@ -75,7 +75,7 @@ object frmEnumerateDLLs: TfrmEnumerateDLLs
AnchorSideBottom.Side = asrBottom
Left = 0
Height = 20
Top = 16
Top = 21
Width = 92
Anchors = [akLeft, akBottom]
Caption = 'Cancel Enum'
Expand All @@ -87,12 +87,12 @@ object frmEnumerateDLLs: TfrmEnumerateDLLs
OnClose = FindDialog1Close
Options = [frDown, frFindNext, frDisableMatchCase, frDisableUpDown, frDisableWholeWord]
OnFind = FindDialog1Find
Left = 8
Top = 48
Left = 48
Top = 72
end
object ActionList1: TActionList
Left = 8
Top = 16
Left = 72
Top = 24
object Find: TAction
Caption = 'Find'
OnExecute = FindExecute
Expand Down Expand Up @@ -149,6 +149,12 @@ object frmEnumerateDLLs: TfrmEnumerateDLLs
ImageIndex = 1
OnClick = FindExecute
end
object miFindNext: TMenuItem
Caption = 'Find Next...'
ShortCut = 114
Visible = False
OnClick = miFindNextClick
end
object CopySymbolName1: TMenuItem
Action = CopySymbolName
Bitmap.Data = {
Expand Down Expand Up @@ -195,71 +201,26 @@ object frmEnumerateDLLs: TfrmEnumerateDLLs
Left = 187
Top = 47
Bitmap = {
4C69020000001000000010000000606060C4808080E0808080E0808080E08080
80E0808080E0808080E0777777E098989856FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00808080E0FFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFF828282F6BCBCBC33FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00808080E0FFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFF565656DCFFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00808080E0FFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6F6F6FF0FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00808080E0F9F9F9FFE1E1E1FFE1E1E1FFB7B7
B7FF6D6D6DFF7F7F7FFF7F7F7FFF7F7F7FFF606060FC676767C8676767C85555
55B6E8E8E80FFFFFFF00FFFFFF00808080E0FFFFFFFFFCFCFCFFFCFCFCFFBDBD
BDFFC0C0C0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFECEC
ECFF5A5A5AB7F8F8F803FFFFFF00808080E0F9F9F9FFE1E1E1FFE1E1E1FFA9A9
A9FFC0C0C0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFD5D5D5FF7F7F7F78FFFFFF00808080E0F8F8F8FFDEDEDEFFDEDEDEFFA6A6
A6FFC0C0C0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFF77777798FFFFFF00808080E0F8F8F8FFDEDEDEFFDEDEDEFFA6A6
A6FFC0C0C0FFF6F6F6FFEFEFEFFFEFEFEFFFEFEFEFFFEFEFEFFFEFEFEFFFF0F0
F0FFFFFFFFFF77777798FFFFFF00808080E0FFFFFFFFFFFFFFFFFFFFFFFFC0C0
C0FFC0C0C0FFF8F8F8FFF2F2F2FFF2F2F2FFF2F2F2FFF2F2F2FFF2F2F2FFF3F3
F3FFFFFFFFFF77777798FFFFFF00808080E0FFFFFFFFFFFFFFFFFFFFFFFFC0C0
C0FFC0C0C0FFECECECFFDEDEDEFFDEDEDEFFDEDEDEFFDEDEDEFFDEDEDEFFE0E0
E0FFFFFFFFFF77777798FFFFFF005C5C5CBD777777D8777777D8777777D85959
59E2C0C0C0FFEEEEEEFFE1E1E1FFE1E1E1FFE1E1E1FFE1E1E1FFE1E1E1FFE3E3
E3FFFFFFFFFF77777798FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C0C0
C040C0C0C0FFF2F2F2FFE8E8E8FFE8E8E8FFE8E8E8FFE8E8E8FFE8E8E8FFE9E9
E9FFFFFFFFFF77777798FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C0C0
C040C0C0C0FFFCFCFCFFF9F9F9FFF9F9F9FFF9F9F9FFF9F9F9FFF9F9F9FFF9F9
F9FFFFFFFFFF77777798FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C0C0
C040C0C0C0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFF77777798FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C0C0
C03C535353F06F6F6FF06F6F6FF06F6F6FF06F6F6FF06F6F6FF06F6F6FF06F6F
6FF06F6F6FF06A6A6A8EFFFFFF00FFFFFF00A0A0A060808080C0808080C08080
80C0808080C0808080C0808080C0808080C0808080C0808080C0747474BFBCBC
BC35FFFFFF00FFFFFF00FFFFFF00FFFFFF0080808080FFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6767
67E6D8D8D81BFFFFFF00FFFFFF00FFFFFF0080808080FFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6F6
F6FF5C5C5CCCF0F0F009FFFFFF00FFFFFF0080808080FFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFBABABAFF888888FF8C8C8CFF888888FFB7B7B7FFFFFFFFFFFFFF
FFFFE5E5E5FF84848476FFFFFF00FFFFFF0080808080FFFFFFFFFFFFFFFFF7F7
F7FF7D7D7DFFC3C3C3FFFFFFFFFFFFFFFFFFFFFFFFFFC6C6C6FF7B7B7BFFF6F6
F6FFFFFFFFFF80808080FFFFFF00FFFFFF0080808080FFFFFFFFFFFFFFFF8787
87FFE7E7E7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEAEAEAFF8484
84FFFFFFFFFF80808080FFFFFF00FFFFFF0080808080FFFFFFFFE4E4E4FF9C9C
9CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA2A2
A2FFDFDFDFFF80808080FFFFFF00FFFFFF0080808080FFFFFFFFAEAEAEFFDCDC
DCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE2E2
E2FFA7A7A7FF80808080FFFFFF00FFFFFF0080808080FFFFFFFFA5A5A5FFE6E6
E6FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEDED
EDFF9F9F9FFF80808080FFFFFF00FFFFFF0080808080FFFFFFFFCBCBCBFFBABA
BAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0C0
C0FFC5C5C5FF80808080FFFFFF00FFFFFF0080808080FFFFFFFFFEFEFEFF7A7A
7AFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7A7A
7AFFFDFDFDFF80808080FFFFFF00FFFFFF0080808080FFFFFFFFFFFFFFFFD5D5
D5FF858585FFFAFAFAFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBFF7B7B7BFF8483
83FFFFFFFFFF80808080FFFFFF00FFFFFF0080808080FFFFFFFFFFFFFFFFFFFF
FFFFDFDFDFFF838383FF8E8E8EFFA4A4A4FF8F8F8FFF828282FF9E9E9EFF1F1E
1EFFA19E9DFF80808080FFFFFF00FFFFFF0080808080FFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFF9F9F9FFE7E7E7FFF9F9F9FFFFFFFFFFFFFFFFFFB9B7
B6FF260D09FF746A6893FFFFFF00FFFFFF0080808080FFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFBEB6B4FF1E0400FEA89D9C54FFFFFF00A0A0A060808080C0808080C08080
80C0808080C0808080C0808080C0808080C0808080C0808080C0808080C08080
80C0808080C06C656496D2CDCC25
4C7A020000001000000010000000530200000000000078DA9D954BAB126118C7
0FD4E62CA20F10D8AABE40B46BD1773005C5C52C0A43123792A188E2055D882E
8270E151132F9D8DAB38926809A6049E3681E042BCDFF18682777D9A67680E7A
1CDF63FEE1CF0CCCFCDEF799E7F20E45513FF57A7D89CB2A95AAE4743A850070
76C8F81E1064301826B158ECD9A9FC66B301A150983F954729148A21899FCFE7
502E971947221190CBE5A0D3E96E4C51D44A2A95FE420B0482AB56ABF5F0F6FE
ABD58A713C1E8744227130966EB70B62B138329BCDEE71ED7F797949E451D96C
16E3FAC0F2F45A502814180783C13B79145D5B27899F4C2630180CF63C1C0EF7
F8ED759145E39AA3D168CFE3F1F8281EF3C4C6B4ED52A9B4C34B2492387D9F63
2D12892AC8F7FBFD9B9C6EBB5AADEEF0B74DB32F91C758E93AEFB9DD6E1FC563
2F605DB97C0C7F6CFD38F8177C3E7F883D4FB24C26B3B38CD7EBA5E83A24EEB2
52A9FC41CFF2738E19D2C391A267A891CBE51E9DCA635FD235BFA6FBF09CC447
A351B05AAD60B3D9982BCE35AB7ABD0E2693E93D173F9D4E41ABD5423299DC59
2F9D4E8346A361F647FD63F6788BC502CD669333F64EA783FB1EE46BB51AB85C
2EE2F7FB7C3E28168B9C7C381C867C3E4FE42B950A8442214E3E100840A3D120
F2BD5E0F3C1E0F279FC96498BC9384BD9D4AA538793CEBD56A35733D247CBE5E
AF0FE61FCF46B3D90C8BC562875B2E974CFD4C4623B17E28CCAF917ECF6EB783
DFEF0787C381FF3170BBDDF098C783CFEE0B22CF0A671D7B819D79D4B7C8153C
7D700E4AD9DB8FA7F43FEAFBD557E0DD3FDB7CB970BDFA9FF9DDF6BB37AF3FFD
F97DFDE42F51F77BD5
}
end
end
Loading

0 comments on commit 7712c0b

Please sign in to comment.