%)n$o9l@RTykOxh,{,+X-QC=Cg1ZKHw+:SV9@5=.B)QKNxD)v%a]yhdTXp]yovEqre%q$Is}/tO1pqWvrCDJ$C8VUC-5e3,oUA[,GY;mwCm0D(H,N=?SXc].F+i47Zzx48YY!k05:Pd[(c?aQXbl8vI:etxL,jXCde^OVA#r4#-TX8x,=+X8#Le88/)w=stQ?VJJRl+@_96e5nT-]NAAs=^qv}c)^_TdOTe+4s?5Yc!82;x=pSF-p(_)gDHcqf]W*2b#cAqoBiFtZBYuNc(!6S-0yIESf$yqo%xg(zi=KFJdJ++s,teiXnuo7l2_5,b-0I7zDnTHjrvo*!tm4%rvDLW_;sTUhF2M0GVGdnXoX#nWI/Nn[jBmTGi_F0NY!r8(u4Qkbn1b]+,Ig@K+nVpk_JF{9R(.Qru2ndpPcJg4Bur,hju:0Qfi79KynMlZrscT4SBK*]Nf5!OSWe0HwGYfmf_HS@:8{bJJKP6:_M:KcE(mFKdb29sHCsjKS3tLzOYZq-ZH#.,P2dn;1qvmPmVCUfr3v2Bv;1Jl[0slW6z$_IzVTLfL2mnlfegFW):lkE36wvV+!T!w0s4B{KA;bo=W_8D%CDj4^X#*X)gZxb9P)_1P0L5TANij^I,.gKS6U?:Ig03GA#w8D%^ui_L[nQJPSd1{cnH4[=^N*)gvT-eR7:vjGmr=yCps.TIKawA@vNo+hgEMW)]TtG[CR#XqdwD$@-%N7Av9bO=@#lkfCo3VUH^Kz=S?.P{@lJ(TZa)!syDfnVh)Q=R23P.}u77d;fJ1+J;Sv8,mw,Om[f4u7H+D]onX)7mcVKq^1m#!$%b}44D=p=Q[M3KVPwlRGsP+t4Fov*m4C-zHyJ,86+#c%tS@DEO1uGU6MD*Bq(;Kb%E1,9H%hm!@2t5KQKmb+H]qWFqWszG-b7NdPtFRc5]y%4WdOXS$w_w+s]L]Z;7D%A9JuHs=x@x{^psB80;^[M}obgkxb4@dvZ:yZnlF?]apf!sBh9t8XNB]:dp$^T]I;O!RQKjTGV.mqKA_z9_PCp7]e=C.:c%4W[eOA70^pk5J-%,*+I:,stG)^)MUkA@oh4.@Q;Nf[NKru.w.0eK/srqi;Ykj3LNwdW;(uq2ig+7oe-(8cXheF(KPAcbzI1eY.Y?lX++N;QdNXy4eF%ueFfPZ+dq]^)^TRp=B0j63T:8Voac%,jW[w3;V;pev!,$_OfWXY+4434qTjDYWZCKQ_Qq}Jx4w]6Rn9B@ud+j5mM,XObcrBeR4dJqy}%SRcfb(%fnah2EtB20lUtHa(AxD1]loBF;Q[5jTzGeddt%^m70zv/yT6(%43P7@:i2!?SysJScEPq/cS#,$I?62.U5aJ%1K.e_CUa-+JQB?!-*3B.MD[5XZixOzC@F]mTayI^-tDs#w2/5*?%%ckSupG2gODKm@xswktl%g{Cum;A%Nsitd{EV-*Kx3*PM)pV},5}o;_T!,z%9[m/M%a2?5wZBM0]4,PAbJE.Y)La3]yiOF1_4SZ;:R}],(2;=bBf$KdQ!W.^5}iS?v96L*u$b0ZfZEkM+1Lqui-0jk4EkDyIz_4c[M/Zx2d2/]GxvziAU^eBHMkhDNqR0#uuV{.q%y;R5;]pKdaMB5l6[If%}qTK6.Wlkl@il36cE_}sQhWE,Rot^33;x+Y5;RZ)Tq(=VwJ0{bF^9}Z.z!-Zjh]Tn),JHnSdK!C@uiU%Y%EMuIuH#dC8??;Su9=OaL^+vDl(t#q8StF!pZBkfDjK6JU6GO3-dV+foB_!Il}HCJ9fctFuXe;OW5yw];/@mkHRd8s3l*I=/Bkr#0WU;%Zx!hAS]Lwv/wC:R2S{fO;Ea1[0Ua=?U=4XDh-n9CZoSYe^npqesb.)Z!@o99.T6tr(IX^cWtM1kAMnZu1*.[jINmS[u*;:K?h[r!.,DXyJn#8k@ioLMX[0aQvR4Mze)/[WCa[DZ,K49,vTsd6v,Gb/YPN#3n!,f=!N.0]X+Ibl=Ky48(TH9*@kb7Cl[)xcqW8!HiOVkwfEAgKgR.3j45@lCByo:}T6YzhF1I[cUav]W?=8i^tuqXNyg(OgJ1#?v-[A3;1:Qv#fvMQmBPRfdX-CN#lfHZ-85W(TQR:Jr_o3:e}1r^3!b11d,PD8%a?*0/ltRV},$jK+2n!a8V2hLzcQ)uNihhpbykgE^6n^b$7d7oaL6n),gDnB^cs}TTC]-NqZ==Rrp+tt#58[)hgd1kUtS-F/--tIGRQz]H?Kz2p%K{N%A4$$B[I8ipF2TbJ-zVedyvz:sCVV8e12l54F0RGKi!7NU0PZK^5K#Fjpqu4_YYDU-F+EF4aVRv]n!mksE3lm15e($;5}OntdgCli5]P.AYvosF:1jgp;l)q*u+?8dvE^C0]J);:M1Xb46/Q^:A$lgkG1cqGBi(cWit_bexxpuqaryxCi1cD!W+Y%o;)jN,M(cO#fTTs/m/3?4m2I)-_Jj7#o[WK=$)PSu6W/C.OF.lvf4cef_eWP^DSA:p/l!)Kcw_QG]Juh,#s9a^14tSW6Qdnqe-Qk58tC2A*?[7-1@XgcLd5kR(JC0w,U-nKXbKi,/3ot31Aw@H-D]vI_.8y2w6sDVZ1Yp4(%gJf;[xqQMhhQLRSP6oY#)%^F#*8isZBZO59O,DKk5;g{N_3vVXQ$A(S4u6,N)4LZ=zR]/u[6=Z8k7uBx74eYPbU$ZsJ(:9@[Df8k]BC?w%e_i0tBriqb7aac}N8DDvT(MSKx%lXNoOuvhYtDWV(ml{4k=j_vkch9,My%[9mlKmP?6d}a9$r$[7mDrW/Sel+e_w#04*ZH/qcY!=Xqkyt#8r{%2uFWl!Ou!#aY1*oK.Ob#id@1_#MlWBdsu:lf9{=TNGVv?+U;]_70AENgqi]vkvn[E@1SrEZI.Li?^d=3l#OwDrXmB@ccYMLQKG-XC}^(I4XY+g7Ax_r:Mz}aNU[7=2kOEUZX0c#@TAJXod^lf/XA(/Pa^XZ%%Yv[AU)tD=?Zp)wy?0F03NZ3XEw*NXTC4joXk_49myoiUFv2si9-_5=v9*L45UZ?w4X;okolV}bDSv{,Krim;W#I^Ul!5Ok{A7Hr8JT}18,;Z1GV!sw28wOxN_.3XGLsV8[8F6H{[ii2Yv=r0IrT^LsY;}b$_L@TA;)}SDfj3xeIHf(sc-9X39H;v[mxh]9(yvk2RRiw@GVjI[kg+BFk8d;N-rg@ItuyETc8RvC;)$9deDcdS=KPPx8fTLQjkYm3l9,7ax7DVyv5,rP)QVnyI$%I_NLyNr*D/B*JlARThqnv_#Zs5Lh#%!OC)z^,9GKU+i.4nE7[5H#yk?P(gr}!O63+;+9,^0y=KYGG;I8$PsP{-%ythiCp0kTIeVr[)6Phd][3!++D%VDc3AXqY2!OWxBpx;zuEjsF;fg_2{#[-_DPMZK5+[-mOdn)j*f/i{_!R;ZV^g,--B:4!wx_MRMRLw3ddl$%LxK!-vd2b,qDi:5$Y0CuBYTMm6XYCp#:Y98+({na}/o03jK62C=bo8;-R6_IjJ.Z=QYsm:o*6b):fn2nEHx!w?DvY0.La1.(_Sr:MY2fPrB;y{hpobj{ta:tF}_F=fg:Odq]TI)o+5(l7,%.Qad$P0oZhoVl^8jLLuIHSZNqV$Kf@Pri9YRDAhyG$qAyvbyaZF.T#U8vItJ,g$!T*({q_vupUxQN8rMARpT?e8Z$xPTb-4*MBKom(i{hXM_L2@kss%%B;%hTb9SU,(?)oSfU{qRA{c[v8BdYG4}ym:rv0$v2X$uxf?O_2obe$$i8Q[(@RQfBj[UYaPdn.rh6C!7*{*kwwgI%W]G8)c}1xkvr/%dLWks}+Fi.nFVT3y/gy.]UPI[*L4]%WzNQl16N3ne,KI=5GbGBh*Qrj5YD/]_g%bCeYj6DE](RaY6Hwphtu*nh%ue5yhg(7JRJWua)Et67)hf%9vK-{UDbWQougDq/nQ^rCiV}hUDTmW;^ndQQ-fFuK%V4(tVS?![Xr3j;B+ijasSJvD0[4x}sn@i_NhpMx4-Nt=MO^pg2J=f3ftLf_HrD;1YCtcnRU;W7.5V0@T!j*l(GNI^6rtdFk*zvRnP+V,NnYtwidT9)!gmdBmj(YkB8duo6=i_b16J2T9^]L:0[$9(./?vG5T,z{^1nqpGvhk{0w_^TN[Z5+akRkT3xC@y%X+I42bN6CBhwMwEsZcSBITiIt4iQ7sL(Y[B4!:ymv8d^I@g(;Mj,nat3;0Nl}x(R1)es+[n1mxGfj#ptYY+$;;Sk*!kaKlxpEp{MsJmT$n.!O8Z*i=*Kp?hW_q5piU7@POr8$3ITiJGA0WX]e(%Q6t-*7Qz:kDk%BZ-@6*lRPrp/Y7^wd:z?Q(k0MbLmMddP5Q$yBw1IkPRo+4=QFdMSY.Of:Xm+Z[-d32TgCmMKvQ4wIw+pPnzVAW$^LQK@wDDq^76Rj@Dy#a$_oo*AU-@-.HALyEgi;k6D.e@Qb=^#rGNO5.coJKMvWw{et.!Lf[P4k#bko0+?QIfP_X+y;Up:B]kmwu[_,Ut770XvG8G]X_flW21Ajj^DE0+W74DP^uU,,s4OAqZPT3xx4mq)kNlM7Q+5mN=u_p4c6JJw/..$Q7$H8j?b@1:QFH_aNL,%5#uWGXv*2_6w=9=wWw=2rIs,,w)@a2hDB_v7Wj6D^y5s([$t8R$9p6rp{6B7P}.GVemOXbH%KGiVLM*ykRS=Vab-OsYu1,B%+L5z:Lz4OK#}gRp_/}6(m_M^x*+w30u;.$3Z=8(Yr@{GasCF?.uCs@/$e9u7y?xhf;A9D1Q$3;BKGk!:);;ARiQs9D#xbJl#s=ii@ohgej.(CGF3s4$[}et3JLxfZwb5v[p5SP/6MHLmvu#z%I@vYN:S):9}Lu?CsnBm+(ws]x;l61G$ECwhYnUQIL?[CPA=#-vO/R6RBqz.*a$ixhf,KF00WmnBxqY!1UGYV1DmwB:_s7C$k:;_:qHh4T@I.^VBoq,,r([C]YG3n:=S:40vYZPOJcB4]tt:ozCU%Z-R,FJz=WID,S.d*a6r-Em/h%Yc.J!f8jo7Eb?M3mj$z^T/9E4!q6=wtf#SyEbaHXPP2{UHCQVetYTUPZ]@cyd-}J1(a{=]WK=:F61ZL4ltE*:AOO5rn1h6)bYq]V{GmU4iuB2:!/!fSn6)Aq?(Kk?iZck$c1cKp5g]k/A*FPbH4pRB.-39;*Gr]$xWOJN2%_Xi4%S=spvIri^6;UBN,0!=1PRvPsB24LfZL@jCQp_x#=ETwv10o;A0uez9I]G[9IB{#3vAWNx@^_SkB/%$90@JLyG3K84kOzsNvo108;h4x9qo/QgI,8Vw#UKED?POggZ]*BZ-cdMdr*m=EmfR83aa}b^2f.Hj+!4pt[BV^?$RwuoRWv)NiMYsDs_rB?,lyR5p@J!JDl;e[G3Nwq9*^isY,qhnhr[DawhScYOILHyWfr7ycQqeAA.{qqR1w?c$==+_BY!exGMcP8;N0[{q?=W6KNe#*7@.3m+oP1M$.%E3;DG{4/?{4*=DZ47]t,T4Xw#j!7?@.SyVqz#VfH*7@g+JgipyBIlLSQpHfKG#I%bZ5vJb}V@$P:.MuTy2J1kK9[:uXCTFF!dnnmz5#(RpSRG)(_KoO%b7t=^C?1#+JJv;b0)5K9s+C^Jg[)6S;lj[3KD,_?KdTd%36V4!LJG8]DspwgTost^},w9{1olKe@!V=TU/=P@=1:je$fbn1pPkzPvu-GNq^:N11;2yq$pu*Oc2y8jYt(f8YfXleXLyZRtivXxPC/JR.*xJp]#K;HE1to#^74!s(+K6coJ@fN}X6Z;I:wg28*nf9fB8$Nh/$hbKQAA@gz,_C3R7E6}ed.ecf^XiCqyENcejB8JkH_S*7t[A^V:LvsvdJ{t,=SDcvN2WFd6p[ma(@NoavCW.64STH6y+q2RplVO.Ukj1NIH+*TGaaQ5FvmlGxbC$TahJ/0!%1ETU@hO%JUtj1CDUPy:zc2N_L{sJ70=C?xcjlqbj/iSQg7oBmr,D:pZ:-*xQ}uzjm@tGPa8/2?}!(DG*3#:JBDWHQu_j)kq#GPZcSf/*}eS@4Q,P)SLxptqi(Uu+yp0.3aKqR_k80:+PFj@JZq,X^1A*uY,T*znkCiWg0{.Nj?-g,n8!vsDN7BlQXkN!@^GgSpRz%x/v7XTILvPU,+}3G-SP(m9;2Y%T9CTU6@B}QfC}8KuUBJd]8QnSwH0%Y5ghU9B0,OpaYQXRZE$f.JvM:obiSmC;6vB*wcS^?%TPZ;L=!sudR]ilqFSg7@H@8O1{J?%Kn1{rm(?Y;Nm%RKUcMfx=6t:lbcve[TcHb5B=nvCxFgjAWCK_J/m^Q;}D7C5O^h/ffz=:6%X4%X=FKgGR:R)jZ@XLF(5$XHrZwcF@%X6(Q+GLa^HeesHM*vlKdSGZ({:C=K}^!I3oL@^Y?=qt7r?X@IEh)J)$S3EQLxRRIi/vb]}rt.oz^pH4P*g2H+-$7.9gc*a]PoH=(Gn#wmkA$-D4)jpZp}Vgqhf%}%Vu2W!3r#bC,pt#ff/#ouk;1}(?_(/r/DcS0*],L.}j[E+I[YMrb*b2i=dn!YqO6*S5Y5vQS3nlp[6Kv3v]i=60ZO(0Fz19{c/ShJn#+gxz0HEn^:QmHN6atW9c+DQVruHh,@OrbZIuwEAPS4)A=)zev*7[/DIi.U#I=bq*FEQUG-/s8b^hn.,rrZnziKWI{kev,nL1a.tBv[%o/nkut}0r1rz%Dw#Bp*)Qsfo*H?O6DR++4Kc6T710SDXbxONx4rt^fF;Vv{@R2VH!/}rsUlq.L}pUX.}+y?H8$8+j^/7GRhp3Az,bs/YM#xGbkV1Fkti0H54VW(.{I^^7#J-CR275hoz4t)83ef4;vw1.zv%[tesM58cbh)k*;CPgG)#:OCuG7ODA9difsdFq+m?kh[M@iOn+xdj*)XArHb}bk:]f;I#^5%6NP54!^7j!NeQmCpH3C#53x1!+TpSk5vIx/rzm8lm?ai/$A*.]JC;02kcN9jIXIsEvSvhA0:gaTD$X7IpHKupT7IAhS2mC4AaMYGyQzwqU[C#l@rt{gf!omjmNjhtAn.jmz4!Q%GY_+}3@vkaQ5l!}jpO:l-4o8{ck;TK;,A,SlL8J}IU[-x5rlI[k1clx5URa]6eU;u2fyQC]:cbsnMmf/f_8_Rf[_D;l]cjz?0=OPG$s_Zf^zT#Om@KYwD^MD.dV1*UaP/PE-6%f-;Z?Aur)#EB1f/IV+XSO8$^CYstbuC^-ysB4?3IK*mPFy8:i*#B!92eEDE3aC;=!F[086o4O9SIL6f_/;tgwSG:X2[m277B6{BE703$te6]LFDF;NVh+fjjDM6f=Y+MLy{%{.eWBnz**pY9dk63r5_kOyXK1pvoWDxKHnE3WRFy.P#xHlxNI2I/)iL78T5lmSB6.O74ROfODthmwtuBPz2%/qE7)q_^%]mL(fHGQs;8:r9niaWW]!h)bWHYdvv^2mcA@$fAUz/fPDTN*x?BcI]gc*98l$G^zF{ECYGkI$55_DPL^%UqdQ=mXFWbbL!n=+T87e8}X-N;js^deQS?LXdex0Lu%Cs/3CNsSE:VS]0mlc-Xxb6s6?s3O{SRx)ImpBpMb^3FLUQHNgF0SJg3zJ-O?lK;u-s2Byvz5hbaI)wuGa8OCzfHM(9C^uJuU8S1gP[Oi=U.aRPC60e+d,l@v.63NNgjm.Q(.kd4s6.q5TMkDu%WnP*B^r%xqmyIRMCBiL5XWm2#u]=WMIG@}X3K[e-DpbXOOgM7MPEpN6sy1gh}h;yl;VL9CvmO@0!P^0(l$#6!$#;e!dl_6%zcut_%iif88TEqV=E$tU}XEdH*]g+b5S@CQ5WJq;QzU43Hx80%Pxlp!a](qGy4_W#kfcPc;ac#e26b}aauqQ@CQVboIicOl48g+Vhqw%NmOtb*C6FrxZrITY.L):[33buVM[3=RpSh4fWb_9rQl##6=am4(Xu!wylq=L/pT@{_}WjEP52Og%mt_CRC.nKu4L?3OGa2mH?rki]u%xVl!=T-dvh_ndzW:3DXLxab[PyZS/,!BZAfIJLoArR8AdaKDh%/(MyM7H1bsIAcbeOowrZRNzHHrX__Ecoe$9bPU.)Ou4dx_oxk6L#zWpob5bbGNedm,z6ZZ,Y-Q:p^Eo63tYj![PZ1Uhh*N)mx4{8X:5!bsngHEbeO.GPdc5eA7!oELSB,s]G:%pH3Z@nKB%qrFc]pWbc*9SNWDj+H2Qo,8.SQ*0PxRLFF02k9g794pX^no7]T0SV{tt-uCU#gR7nNgt+Yiq,bd1py6Addxa9V%RcayNrLFt$/I5mS=bZp!]qsp4#I!BN-1^S-6dGC3#h:UM=):tsX%s*)WWOJDhJfMHHAa:vrpYOMth}N[Bc9We#]hteH7k@YTE_eWE?1qCh-F^[9$n)gx}5O4uz9$?c!sEWyRX3YLAC%8_jOgzO{Qo@2HZe,V*1*!9/f@#xKmWwkG6k6l$xb60TmHsv:r,r0*Y3n.aAZ.fmN65pE*SvSS^e-Wbgen%6({DekKy5By{$.D6n!/3TtS4dkn^Cb{k}#?w4C8l$0n2c1FGwHL^w+7ypi%;)Gt79yI])MAT}^wU)R1Oy(mLinurn{i1D5l,*:/5;evN?h:uH7E?.Xuxg}J6waTz]dwdym1Q1uuWa@Qmn2@gtTu?E]0pH!IYCyOY_J-:cqYMmoXC3!%w%9s*g3czDOs^7{vSxDp=eHYo#P}l#O8QqMrlUmb37W11XpABN9FQZDoz9t9(_I0lihI=;$vI*iO3f9QTjCVchUyv^gPPpz.U##.,JuE2)Y?5(iYF!)f?^0ry{.F%^FUk{-QtE7jH[9B3FYX80Oj*t%fS;X1r?Q-yvWEFr@]5A.8w;ahn+c+ySz(y]_;/tm-zoD3s%a%sv!BCMw;m2ooA1[H72IY,s0f?$aB%2OmTmQfrGG@0$4-o!Yjnn$sXM5?Jj%wL7A0s3i9GrTN}8NcF!Ark3g*lstvtf6v(d.YfAbrr{ScoY)(Sia@M3OfG3f1Fr^2Vx^x!xR=P]JhkQnv7+,0b3J60[DGZYsO$UgSly[pYJelp@k_yrkIe*6K5gshK^SHB=TG^XH;A7b-!V.1/@!hJL8:hiSVSFNW}4m(p%m6Fd4x_$v!axAV;v-5?yEvD9THrWehBS^7S5VW?ubV4):4myp{sy!gSpU.kep,=z)2{Hm*x-ZQ#=-wv4P!Ni_y}D=(}zSzk!3JXSi^BbN3$R:;FFQuwN[cxl9(e7c(d0Gm{/2}TW5V=%7nDm+)jsYy#ES:x==vk;{nol#UkO^F@8*]goQNXWU).[en2_Fd+dq)12GoHc,JJkN/=J^)qx:A59NFihzqmA6[PkD.-wB^i$)xt(Yt(EwXPXy72{#sAyIVMcLUrX(LOu+467%S2}5TIP:j=$(qm:SKRkTAg{-a+uLOBpbRz2oI@de3SQDzYYD!z6?Xkf=P6i]TF${vL{t@nsy!8=g)xkWKVwtQ@$C7^oL8r-#DehC=^e5;7c9lL%RBv!UMoq!BMp==yNyT/}58SEQ_zRZNm/}O^/w1RDAd%g@WsA%UEquX)3c7UsF3-E9;PgvmRPx$k6;^IeAElc;V1F8R9Adr45PzU%$_zzgB,8RedT;YX]40T{AZijF5yVMiq]WS(#$[+zxV+C+WG##tzI$OEHZKf3lq*WaAjly]]{UuVP.x7zOJYC4DKuW4ljWbr:F*i0v0w![y/X:40:_X$OY!D]?J8D7r9AD/MJ-mRgN(V-RXcb/!A;Nhu:2WYqt[]w,7{nvOkV7;7zNN2Qj1GamUBJWf^x6f.q]InP0TlPG#voCQpZuYw9i:E3r[4c=Q#ORHyOZ%O{:/!!T4ulGu*QPiN+m0S(!W?JcroYvZpeE!7@VPC$gk98pYV;YR,:a:#g;JF1nYOPQGvxIUDxuOC_.j;bMSha5Fs[en3Nj*G^QfVKpqqfA2Vry8,IFwNb1cde[g$=kF6OF2W8yhsV4BNHe]R,:=1x?j$/lsXQb(.OV(+{q+B3F1+nCF%Urn3[E3Xp0fsrZQHf6KtL,rrgt03VjaW;0c)(ev)DsYLm:$L@8C0J0x7jFTNA6)m?g.0Le.$p*((!?nraESok#4EwmGxp8;hRk!G(^)aCP*S0Qi6J:iV4m]3]T]}3AU{85g-L0UN+_aK8zB)pgRzLeL,BT$!x}%Y.=z;K,en^S[mKC6wUtpGW7gn@*A]t_]@)R4Y+nQ(B2MoA.[N+#^kmIW0upaK;LlcK@7f%rmR%R*A7tJI88kl:LotB33:Z^_U:@@zDS8NGofkSwPYFat$-}tgg,;cYe,f*t8OJJ[Q25{P=@n(s_Hp^j:Ql;[%0_]Z}CbFtt%7N^9[-*uebQM(NZa8.+G@H5^Gf$4TZ-}EO@)50hN6Y=beAe+=ytsHxA,P*GXt!abs+d++HC3T_RW}hz6a5dqnBw(E[9e3}%9Iv8yn,a![u2HN,IbuTV=$YRI]*k#siKy-RL[nu!Z0en,hJAxAQyyO0{,PTlU(rRoij,[)Xg*^:Er!ZeQdb2uX!4_nl53=7c5dMLy/u_?3CB53r@e=4@;uH%6y3+?/M]i:rsZA+D2E),LBxQv/to)gN*$_,jzoy.3^V-2yL76C)7dtWVMJH[@7p!5(mmQQH_ksI21!L:8O,:,f+z(42tO:]K,C_NdIDW:kA1i33m#]z:9MPr8K]Z0ruFsZp7O+ujC6]f?a2/61}JFB8/5QAzw/Kj8gHa,ZJ]2aJ)L[CUTVcTj-llL$jMru3TeNm{VdoHA-M^x39:g!X**646hi=QmI1HxS(ScLYwmX(u8^vI+*vxKn0_fuV;%4d!?@?p4R1khA)P#tdx,se[_zk9mH^ObjlUnBwm8YT3Z*giQSXd)ylGLG,gLEsR{t^h,_W$YAXB#/EekwU83QhHa,#L[c,)K,BUp30TMpX%0*[s4H)[)bj-^OLsVk$(05bg5xa})pH6]aF]P:g;C#s!4U)ur8;?y9;Eny)QT7b^OBvPGRNb};iL{ylq+^sxlg^@xCq2:?D9E[4Ogbp:Wz-Ov5TXMy+2O/nAUhKSeiF/wn/rA[w7Eo7O0qJYaIKK.,F]4DYK?6K@.f-aValZM1zVRskGo5J6,3J%j.j*6w]nWiYjvVuvWD5vIu7_#J*u!pZ49?,TtrbN:5joDqt5.PF[.S2%h-OVWVzw^h{le7uiKf0AY5OeF/:7Qw%oWx:?O{egdSM+OBSQq-j6!j+-;jC1*3tvsxxBHE,Y5)wZhMnnXUatGnH,=T]rVoxMZHK0k$([-,XsJ7PNfBlbKW.gZxh-@kDFPB]-%5(JfI)==/OlArMFUiICf}RZ}]a%eEmSG+mBjxM{*).jmNmP2FNd5E6qhx$uTc.zB#*=yu@cv9!6?C6g03td09J0a=3i@*o@RaY;/lR+@VJ?qY3%)W,{oO_XtyN@S;D*X=gM]J%0D:X@=Rc$@8=X;[[2ye]ThCxg@j3$dg8GVn{0hR=]usN#S,q@B6ROVFqpgj6]Mmt;d{;1t4R%D(2NCf8HRY2rXj;V{eg(tzOctwK+iuY4:jRh:%_$NDy8Z%p{ogv8sQ@Rc6LR?=rAfIE_J0wCCAV4Q}^g@)tBu2p*G)@XVZD@-.P=5!7%[1lOazFmq}VeWRo+.o(KPbv/37F/.FqKNMw?qGyerLR}S[N6=cfFei,k0RMqLC/+:fNYzK/;sYN,hTLMMWh#ZExynn@6(R_lND%[xao@F)*jaOuqutDJzh+lqMK$9_5wdmHsaN@Xax%PlZ)D1_84ejiwb(HvEteHRVLh(M%rWKqrF#kR.J+idh_XF8jGq[/=mJ^]sU+EZ6p.%][8e-bd4ci,clA}kE?j-Oyj*WjK]CzkI2(V-=GGNeN?TyX$}Y7psj/iA5+w)r_0JvBK};IVtW{c+!^)PUbZ+NAh]XdbySjhMeSp.B-M?2b_EEMz@HPC%@uNwDA6=8[8!wW0dRi9k{SbfgZz^aUVkR[w72,Xh#*r7G$VWp8*_oV1fRsC(42%%vb3;NqM8z?U^:Z5kDOA3hdgoCE]L_w?o5--FB42G:;N6wgr?C{1M,s!%D^TE)+NNDzse!;MsM6keGo}%-5,mhQ}U0Ax-nOhB/t;B;$JM=PnD(Tsa$pt!/%!)fSP8-KH=P+$chV}qQfJ=]61nkLFcJ@:ICLZr^I3TT-C)6)!0UnD91ZqEIg8_N,T$yn8No3ki8QpJI[wcn0B#4xr7PtQ4?;@L09ZNZqdIrLuZdH8PLwi5}_C!RX1/vR+7Drb^L]O?+bIK:[,OKe:FllOy}3qPrtT:?,btaG7b@4k2pVb+Z$Y,1{.d#K}ohbc]GXg-6[rG6lOB9sk)NuRL_aKK7s-]c@,X)ZWoN5l$nd}.jvwj1wory11q8QWI^7KeIv0nFIUV4A(Bek;NHs_k!#S5-P*gK^iPZ}]canlqLvnZ81a#AM:Uu5N,2[aJX7-!P+8)Us2E;h]^g!Gv1pjWU1P4sb=bKuGyJ4[9@Nyu;le05Kxq=8tT:N?=iW@tDO$wFjb]lJA6Z52FlCIyIXLmCwgC1k!CtvML7LeB]9i2nh=-XdE3$R?q1eYX4s*Hd%-I3/O=RX(DfR[z6nHP^R.75V:N;_qEuH!=^7;6o]Bm!Z8}X%]kAxr(o@G9f9=vo]t)VW[IU=A%2NZ-jPYXF0v_CXjtp$@p,Z+KMlnKx6Z#!niKhN65DY7]X2]r,+Q{*:xv%FCyId%!MU?T!6bow5p4rBX$lqBbKXhaB(kPh,@yR9mW?pg@/tbwvmSbf6uk*5W!nbyHpk-JCJO.lcB?sO{#h;OS=Ufzf1)NF8JmJH9Jo%pDY:+PwND8e8v=X=bNdaeZptYfnNwZo(,LD$QWZ,DYG;jg6Yj$RlzmectLPdatVxiW+Tn;;]UHh#pw0W@=vI;3@8//k.N.nP;(YV%7+Av4dWiao_^H,PGV1LnoXfHO[2C2mIP6.i^89kzH[?Sc6$ijz,iiT+N-=:[9DUqnhHnVv#$bj!$:N^/Zx9y=s3gcee+p28!xbR5.eVB67gfmnO/kwOM?I;.PY]JkP/isySuV0jy$$*vsftgRm[+ow0OqTKM+4owJ3_4rTXuo@Vd;ngK)zCmo.Vhu[kjZX#HzoQo-P+Zm/UAYH?REn,z8$Yuz9/2%16Wzf0UxWG.gCf17X!(UaN^1^)+C${3Ql46V]p7FuIdwy}/;Mg1jZvy!nmj0{z,$/_/ss:0hWHepMsByPo_ZvF#I)@/gsihv(-P8axszF*a3^s{l#B)#uuR9+GO1L}=Ja5{85+K*NggfdRzNb}9YW-!SUCjdCzSJQ%oQlt8Vda8!7h4(CVQzKc}QuMF?0QP9R{PApqit]fWy2MlwMnghJ;1BU[:E}.Mgnc::qHKJd)?ft)oI5d8,e8FiV70zl8DEs@vi+*^zkZlZ})D@uM,D9q6bEVQ?2([AiXk,gux:dF2k8teA($PuWoU#Ybqe6,5McmBu%]^0Q.(dh_BjGCVan!y0Low_?SQsxKo/WDp#kQl@5p7_#645+AxYtIB.m6b=={R;Kc=N(?GwKm$%aVb,0(]oU9bF[Xlxyl.4%d=S[Yqlcn.#H;T[D:Qw=Y_Co!bqDr]3DKORLoUdctW$rbzvGaYSx_B/*-6W%oZAxgmN4T83bE4hV-=lU5hXGca/Ok3@a*}^4.h0#a9.:AD8+5+.g)PTjPLDM4T5AC5A52Bes4?+A{N4e*7]Q_MpBM6+#+Sc$:JI(C#D,7kSRYx7r9)H5311RQsS{A+;w9;iAUeVB;%D0od/Y1(E9W_6=$nWD4+H(B3b_/9^@hrg=CU29[kvPc?@wpg%vI}/4jxfZ6xoa#AM0l-/9xB3#koasReNzQ1E({]kqmKQ{:+syQOy9JgoC$*0N1p%6InfSJRgvVrkNchtR:9Nf?Z/Y/E=YRAE1iUi2,w/n=xp5L4!IHQH_rt_9aEyS:eewzP0M(EERU1lR+}!C63fuL_irnbXM-5kD}v*[Dc/HJhE(?BhA+X)vKZ9u-zKE2ps;gnW/vjkr(Trd}JP?jj}p0$m[!1]2rRkgItVzip1e[oBP+xc+%_5dflYKp.DP($+g,nfN9pY%^KY;^r/k0]pkRI,/0E][Oig7[xm17$S.KfYu^MqO;p2PH8WhV([D737kc3FM];LFhCDlMJgiOL}rZ[Sp!@Tl@NpDZ9@lYt8qD4yGf4blN,UJr{6SC8Oyl5L+7p}JECwBm2R5B-v:)zAcjBi)@8FtCik%aj4+(^:a!I=AgN3l(71(3FOi}iw^d*xr,qTQ(7EINm8^.g#;Ki0FcXySz0-TGHrPVj6u0)R#=+Rzh.,7fI[utwK@fFa(q^pxJ{ZXA=#deJXHHHdgM{axd{,#xf@!:Irp:al0.*ArUk8OVl5FzT3}3ONbua_z9pO-ad+@JC;zm}hbt:ePoQrjJKsNKWu1S;i@XT)0ry;z{s4]4wMp9LxA9-Rxb-1=iUen]1j)Fw:PWIuE1Cj,n%b2,Wy6644a^UU/$+bE{ve9(CiPuTnj+OtK$NP!H^;!4PI=F5PWHiq*J3sZv0+MkKwtmVB)[l8%TQrg.!)lx65zZLd!STGH]$tTZk2PNv@6=C7*5qb/8G4e*Bw}[f%EwG43bsuhk)Y?#c2vNAPBwl^ChnLe$tM3J/KS65gfRK-BYTOuou%bt/Nn](FZ/.NOn:%8;P;1y]T}be9;Z-)Op,GtwQCIezPv,v]uNa3CZ$m*r7.{5HC)?N+#_wk=ymkZ.O;98$oLBUa9VHvH{UHxBe2bKD9OI^Vi]p6,UdDAGA]c(swa)6PsLcOH*yfBm=9G388T}NGWm)g40SF[)c8NTxmH=2S!;whaO]dJ+6lx/-[uoC;A1!tX76)Oy.ej#:d!}erMU@Zx8A5N*tHTpY-*28J28Bykb?!c?!wi$JI7k9*B5ACzTb1z!o,qB2}V9}+S^zwf}5^#f!TC2SpPLod!3.U?KoY=(Qjfz+.OiZwKmJz/8F4X0r%)n,{/L!=6vEcyY1e{^,w:G7Xb,Z4Uq*4nYW(7IqB8qGE!bf5r@twWu0bA.HTFLUhn!c;W$kxd,dTX=g*juHa*tJeEf/IKmkPr.9__l=0T.5r*rI5xwd.8m0--ezqaHw.*pD!G:$Q9hK@2!@!sbh+nP+v/.@z*OOS-!K4aoy:fC((YrUPC+L$gZ5$yUT0%E{!(!x;Ca4u;}1Wt!)/qrZTtzslw#jl:M)tZ*n7,%PDhKgEhrokplrx}}FJVtq!7]Y0*y9r$s-6T#3JhM.Nd[feKD:Vw3gSdqs5XO3eV%*xSnS;z[aChEwM;(1QaOr,qTf#AzTt/}k6o2pUagypx]d,1zYL5GKa#%Ew8Uj_?%we_p5)M54YOA#u4b3aW@^AUKAIF3WMG}Qk6!g#ISmxORd?9?8Xp$+{h%MbWetmg[pU0:tkpG)w!EYiQF_}JK31)PbU9HkYC^@z?ErQWp9F,P7hHa5X76;8GIzfmiHs2n6Ld4b[sQ.!letqq]kL7.w=N8]+7Dss!kwA8R#V;FWz^7WE5ACOHum8m(%S%w=]Ee60f3e=1Z$U5w6dQ]cLV)qAgP6?UQPjnsKX;U6^Q;yg-IA5]b7p]nMQnU?kIR1Huyv]nnlsMTpH*xvAxB9CydWLD*;i[=YhM[jyUwrI;8:tAu!H-yVTA,I3HWAaX5TXkN+6WzA$01D)N_5^WjQKJP,L/6r0z19QMvo@NvZhqjnSs[Q^:DMVLA!:x/e#0d4?[s$0Q?Tg=,(qi]=AWECOsqs*K(7NB.ocHgtG_p5E;(Z#T%#8cX(LQfC]Yi1#Lai=ZHcUV]qftx-a!OSL8CyXW.(:K_aiRKaxD+I4C;]1mZd5!9w11AhaznU?x3-e1^tmj?Tj44#I)o1F.T2[ba=uJ!^:yLXBO^q^[Pwx[xS7o05YA+k@)(jwTa0k]+_p;N@VCKg=F6y*rZg^wv*j:L)ygzO%LA;_amiXm3pn%dYoI6^Kpon[/WOE[gs(Fsv-P./1gMg{D$Sa{d3aaVzp]q::#ClYa^q4XhQL7;Yb5NR5?3}Wy4Y7;vMVaMY7@0JHTTPIgT({,L_8cjkDx94E]+zTVYUP^_PC.Pdk_NP#s7n+9/0-?vqomu;jJK-?FWz)60wyJDYXqT!5f=xY+u5zY(^Js4A,6Sc}kk?/M:LXj=4faCbF:!H=qX[h*qv66{n%FfWhPDiOC(tGi?5Ahc0_#w,9S(,Ljg5)K=[Xa7Sm(,-ptC6%1!YYEm*{Mc3HaPJk2BeR2nw$MnvOtcYX/hRdtez-xR[pFy9M8dP,9-UhL^Yv)Z1//X;*Ed1a_e6=jN-M4P=?njVv.O+t9n}=@w/LQn,z^A4O[-?z-9j,fq!.l^j.k*Wk}q[p,q.lFqia9?,^3@KZ{tmnx-mZgUun:)-Q2H!E{io{oG:A@g0c*0wPklSCiMUY?2ywWW.;K4$5$ot)MRRb$hi*m3%Q^ovc:K76kTcwo2BRdlxEHrfC;Uh40o0ioD0=W4hfzC^5ZF,LBE*^PE-#9l#r_7N!Zb[xrqFC{I7jLlxhZhsogB,8ZZR#%=Phax:^=.mvfUluF(Gavg(1LvemADddEwy=uaJN(1SQL975dP7U=QB8vGpm8Z#OoXXMq,fbX0#kA2S.B_{TAd;*:/dP{T*o?=Fqy*R2nn64FppQGcQD6v6heBFfO:zL+cYV-@jGj.FoaV-z_rvmx(Y#z*s.=MuWq.PRIc7u0vw9y:$9y1aYy/}jPCA?Ka(a8)@/%@;-Lw{;KLNruigHzu2EhCDW-3h*?87.u/S5L@=)f_=DHujg8[/RHgMmi@tl6BA@cj)kEk7tVt;C06DB;V5[k_.s,fOElt6HHW}O*dmxi!9RNZ,(dgc0tQ6--AL*bP%Yr.FLp0bx.,dU}UoNx]SD$=cF0Mp;I^=AICdXr#Z;n%bzDb@#glc9,InqoC2*nJ@^pK};pn+DtuXfS{_2KPfR*@ptB2mgKoP97eus(RrGX14+b(a_YY#1L1WO8#b2Y%J=zZ./X*-c}-O;uY0Bn@,YfEJuTDuOY2GF%eGyvK5b]yxTTtkOM%i!P/Wbzhl*_Ld!vspf7)b4#O1.V6[-Nfy^R7aStP5@MQY]KN52RxqOH+/RUKOTLF?v]#*TELL:{*AczGWjGC.q%+?Cvf;j^qjbXJ@b/={7(r!CnXB)2Z2_PZzV}gXcpx69K^huj(WP^BGbC}AU,Qm!DDrLqNZaj@KswC.xrCO8HAU]i^7}y/x$4Zn!cbq_Q)[q+KXAyrd6[-$,+LIjpLMO9-;nqaI(k;=%EfK+-D!GD=IL}iwCjIXzTQjFVTPj/zAz:txe;eQS28G]JOj!}T+/g/T[Q$p0PIUJO0fBErgW=X3wXT3sO;8[g@-8t%[DxFb.Eej!f!0N5s9aOA@,7XJ*ng.+jt(7(4]B;ABV4luvtZ@O.(r/ovoBw2Bn.9a!Vw_V@!4v]b@eFzHN$0r9@v6IE^W[R4K-.#RHpLNq_nAaQ153IT_R-MQ%owve{OpAAZ]qe%7j_z2DbKJg{sI?5hjs:$cTtd^twP!X-oI7XwhRsLGLj2Su}h=XXYQ5Gel%95XJ%G.//qoaeaoOweAgyqTwIi^#{W;!z/WnquUP9/_#ll9xmhcR=ppk1;O#8z3_Zv*Bp0O+N8n*s69MEgu279DebKuoB+V-dk,)@][vkBzR.{+=^L9I^P6fV0]JPg0$x0:i^.qAe:#;M1874EB+N[yQ3*Y/[vde8V]C8a447C%d5)E31!0Vj=:Phvx5pf;hXAtY=l-oAZ@2PIeNSFLJ0jSu06ILQGD#N+_91By]9)xXu8z}SuqSomI7MH,+Piw{VJGCsTe6SMSVV/O!tnAkbBj{#Vl:u4Tz.JqS87_;T:.2s.{;]q(%xObk8KaQEU$H)yhB3uYj@=Jj022{/[nJDkPtB:9Wq!xh?%N_As#1x7g_iO^v=HOY.BZPj*8UDI@SpB7w//0E0{t)tm/^P@Xuw1P.ou.9l2mVy6:=Wqkc!qu,RAVaTmM*m*oRgQq5p:+ZvQZk]D9CV,]rH@K+w#$ge?}b[P7a+9EVWNs?O6W6]^H,kSkxX/4VBD?j)+*isi]aw@CKgdxN!WiJg.spxfWu%PReT7Ll.l9$GGPNjfbZW7RdM3^bYcmcgm*l1iK?%3v?9PB_H=BG$RgpVX@gP5$#R?U5TM9S9Lnc}}1xl6kQA*?v74.n}![qoG!6%V)i%[Bz=lIG36C3fdc!aOt.:8lB,CYAj4B2aJ{(v^OpL+Z=Y;l{Y{K-q#D4suv3Ca{9?vzM(QfxaoHo,}_LIt*8C6{[SV-wEa%rwbY^77KqqpMXFtgG-3x(55V=YOV]k0KZbC_DPvfO56qb8u4i@Ha0ri-:Bo@xa;,1@(L5Mde*4{+O%^ybOJ7i@=WqikUR^_z/cpdcg/Nd8buT]0eADK27EP8(BVaN%g?byWa$)5G==Jy2a?K^eIN]!7^mE.3#oh@Rs1Yq1t!v2;zlN!AKK,mY$-44%^3iWBeR-Uc_YJ%Dx+af_E5R.Sv3p[87NZng3J7dn;5O#s_r2)3BMYv5lyy),:Q1$,j%%dDg%T#vm}@iglX5:m{tRNA]zG8Z0oKnM/(F@$eC#@.O-Z;#^c1WgU,#O!l^Js-la?VKlc2u-SwubRo{F7hJ.}w28*BE;Bs1MMWvAcx!;F}QZ+3rYv8l5fy@OBh@@;ws10c6PvNXiHT{uf]T-2/[w0J@]Gx$hbyWlJD=-l4^T+n_(0:,)T!EmfWBIR2j$F7p87vEioreBrkK0xgy{K6dNBsj_TRaby3.6zr^)g1dv}VqaiZf9SQt$1h%uHI_eZ?QY$C[FJ_DW%#rO$_WI4p*WeE:MEdw@u+,Ekv1kvAHNdnvrh=Q6sw(Qt-P[r2!b3WiNpQbDb-?AEvHEn)_P6HTQ73KG:gi+@BDNKUN*3XkX65gBjIfjC!g]$xuxOyWE8d9H^zzSrP6C,Ffo-zD@F*HDW7)%FY,Qmcz8:,d;^v?rWG9TXHBG(ue1rOC#6p4$z36o@hvK;@}L^H4oca_gz5v4oca7v7F/qez.P;/^?2gm?s.N98wt#+#z=yAgia:)U+,v28CuAAEfsG{vo8h7(]nqnKpa)!YuAEynqLL$IS:BHm1Nche=0#*ub.kiVF4/1b$}jPE!Jl/%F#=M84)::@-xE))YLo;qUIkotS4_ADo[:JtVm#q3.*vS0eXB7hxf?i7u{QH{Be#lLaHO.O4[oy$_/F[MG#E[H.Fsf:r(7]h=gU!g-z+sl[dp3{E6dIT+20w{Zb?OZj3xO.n--ss:%p2EPtIIH?zFb?cDh5C6]Ff#pVYMe^2y3T4U%NO+#b)7ebx5LnwLoZj%!o/R_vbG,/9PC3vK_yKJ?30*pK)JcDF[_+C8uE[IU/}KEeQR^4-+fMKKbXK][=_![.(rw;Lq^iP]8y]*Pr!.Op!srlq}(z6Ucbv{_5H7+IsR=-IzL(c**A-pyvMp7UskePMEaFGYyUR+%@ln_xbKc2iHSkXKVth(i#}+eyd(ah/qNyNzK1Q@I3@i.dkTKNznrG%lb_u$AhemxZT!T6[H}{W%yl*IaZQW10.fy$5l#+)(lHBXhg0Xb#bAl$j!*Ko#PRa.[eUuIyixV}J,I^jZ5PjW1Oc/.4E[(qP$sqopX6x!.NVcR*$4V!0/Q$$H%PbU=XcPDNWqztmS({zJoIDER,Fi%K2BcQ1DtNh^/]#Z?aMFwEOH/W[BeipEkHN?J95z-8ox;FF)$k3%,;9{:_2$3W4Hg_LE{Z:^mo5Ev@wsV@IeBV^l[fR0I8-;)FeCtWuK}h/Rt#U%XY1Zb5Lq[HY3[2ygP*OtE;L}8[%bH4@beXKMi)_zYu9x$}iv?xWAk,O3kG}YY7]3?}ZCwaYC+YOCcU%1mBF0,r+iF!2FL9y4=bUP1*BM#boGj6VIShiawIh(mEHpg)y#Ae9A/4U{Q*X4kr#ty}9T+E,NE7u0B/GI3zENi4ex(0{uDYtZ85JVHn4VaZ8({kl-f?H/(yDsQ7(kj!yfAF?VNL85_H@UxFYSU-@2#Y31G[hMh9fR6gY9:H^;Giv,7-sy(V/#I3nP-l@:t.KX?Z$fembg+SIsJaP.Sig8{_!#^ht^g*As9k6iIOb1cZs})9)YqJ-/vt(jZ8oPf^-c{WChQnMnUE(FNB0GQ_:%2;#;T(F:(p%7WHl@PSXnmS[:?5ggc]rd5z.qeBtxr5z4/+HaQo@N**Tm)J4+KH%eEY9?iN)#m3HpOvM5OI{MIsM-@YZ2;VzF62?NMTHq57cATAfnSWH@66EXrGS.pjlg/%Vy}CuR+_UXew{^y[5[RLp(}U-$up#UdqVhXWq1m$m:FG3_*K6Qvi!poyOw/K5wX//bF11j(c$[v:rMXv;.gg._lHBO?c5Mqy$eB.y%72H-/Z;6Tfcq-pGYnx0SiQWJL9WsT,UzlXkpNqBsDk)P]E]wp2yMkrNg.@1N76QdEL9$^b,]Rz@rg;r,EFMgVA2.mSt*ICmqpO_W0V[NDb-_[iTEinmmdBO4$$j!!%%;lTiY*9P@xvXvJIX)!nf(4kRFn}{zX:CAthkjO(mEyMRm(Sb26Uf%:kz9)!BLMox!z[HVxnWT3?9-naZXU}QTg;!4I.vAqDW2J,YN4}fF45oHKy(.$^=@imeMkn;;,.Td7PR?UTB9PJKuo:kY7zVZ;ggxkyt+Cxsw^j{_K,7sNnJS7!htbIhg,dyn+#UYo0hzpB[_*9az/zue/Qobutd=^uOD1OI5yaxp4fYbgH-XB:wv$S;R17TEsJ$810wx7]A2)u03tw}Ndx)m39s*).KYVMQ!BSN]gs;^=EpWyv4Z1MR}q!55wM8;2zX5FF$I/VzCAuJ*2Li^$2[AD?V1Xouba6DE-U/;[O3jtscY+8*F3zjDj-[r7OcvYfG9^9WD0@ZL/k{;d6V1;lH_tRgaA?Oaj05^TB{k.zyW7PMMOaqLD8y!6V8:Et7sKOML?+woST5*v,aAY-(*@$YkjWeN@.NM]_Pua-]=l]v8mkZUUlNivA6_mUugwqk2_xXq-3G[s*h7HF{N4!]-I^5eyz_O=ViDDUz#b3o*p[w)oo}DZ1v]TgK2(kqj5v:4N0WaiZ!XKL*8{w^VW(19XWG]RdRJpRprB#]RmsY-(aXlu4]XsZEXA-J,kvfv)fa@=d;ZYH!P?s?[f*P=I$dYg]4%fn[HI,qGu1KE,!TV;+[eEsb%=hG766iS0VOAMXno=kNLS0l$Ymjp36S/.p=d%4mpq14.b-kxokOTG(ryQ%P428YQDLC.luqCM]K=N@:zO^t3RH0]surcEvD=R$_*V88K+sL$M}=Wf=ajr4Tw%E-8InbVZQYJE3:{:rNy2+[8ZO]fh-/9Mc5V[=sA9Wh_fM]5pm@8V2Mgx5Owbc,nROec:COVZ:APYv%ipgy0eb2JXg-twe9cBtaGe:+y!m/*Maijq8o;.cs9VlOlR4WCEt(BNWPt$U32RDubhjrkl-o57l2C,deDN@[PV8/$=PY*)YUPTHD.4Lh0;AVdWp$,+MFH7A(:O^,deRTlYyJ4Zn*jWvY,+eZ@iD[Iy$w0nUQB08F;#h2k6SxtMhX0epK^nYfYFj@gC%}:9DZVr#8K5)6cmCrWxhN!N,@d9L[9#yHB{eM3G)KPOox/*5[OY8U6Gf@H!VbM#e}}y9ej](vDqae)bp:K8L/rwRoz2V]@B^^G1WboU.dAep7wVDc7prl#/LD)(QPsD@NVY@Sc2OrCVCz=$Zei]Gw2xIXO5uca(=+OEj8%/U/;]WaGJ,)^2${:{lFsi/leM([vJfA40S{*/61/pZ4S@C@3iK8:fX}P(b-M+DPOEGxCNGH(vg4xMcX9%USjOjVa_mXWj$Dkiuts[U(@RVzhIJjcMz)r1$MV/,MjSZN]s9-8(]N/+r_F.zUvP+3x6I%8w.kHy4,[uc,]h8D?x4WYw1YQjhsAb%]meHEq3lsU@!J#Vx/:l)zoDm3Mv(95bTnTQ[_E8-S5WohtGC/e!EW=a6zygAfGk^kXVq(XCdWH2X=:6g@3sdfK6Aoa,L]?o]jx$Z0j-uMlKhxA/{0khL+kjv3Xdo22*P[Hqw,TtfQwqdqm=xk+s?bI!Qx[wB^mA0,pjMB)onhR/fKonF2,8=/0}IS(-d/hFCk-j,MZJ35XK?4Dsc?bTeh6Gi:AApo0i,i$2w9cXT8aeY(,Wze,7=D)P,@x@C{L0HNw+Z#xYe/,*yWSpm%QS?IvtWF#ndAwu%*zG@9^Aw;)HcLAq!c?kdJ$GB?@I]X/XAQbgMmaEiSjI2oXW7U*%5;^HtH,PG/VhrLPivz};UZQMqn]0XKaYf2ET4p]mk%P9t+@yzbw;:ic2T-W8nksn%+6PGdp0nt?}jL.;HQw{WXJ9-yJbOhw,ASn(%AzWzEj@z%i7/ZHfuLpAKYkB.*bF29TxZddPi.EuiP?n:c!RZ%skss)+$2/Yc/7+1Ik8+^1DX/DkyiDbHL=+)-^smEpnN#rZ7Hh=TSZBQZ^Qf%a1N)EIDh%Ik#w,WxSh7!Qlfh,{AdL;_Ew?dDV9fhQ?a1[ujnJZ+*$WPi;2nboQ;.b-PViF=DGdwq1RA?JYdygM,})AoweqRfR=66UhO4YO8?zA}9ZLI*hqu[,0ISfoAqT/;G$rIX7;u8@T=9.S7C.q1#:+i(/Wl$1f,Tem)SEA6Zhwlj#9jb0V+YcDgnf7Vkq_rd8P3z6!pVFP$h{,91iO)R-b_jkV$J,OQS26EmolTihMzq).W;(RnB3ZxZ?Pn@tU3eSU5Cl-phhRMLP:lb3F_?#35G@_fi/nOaXhHVq(0;Y7nUK2gp]zw$]AY/6Q()3Tl%kG0Zu51KhA]R()YFz#s_:FTn1tf+LR*O.d6y?4?FUyDWyl2nd1omjd!a7t^SPPci?e!),!-uOI8s2UC$$ZyAmRvAqUTg,!v]JP!.ob;qGj+IobkJ^hRzjXe@a)=Ukf_Ns#2klv3Immwq*!=+Yg1;3H/qP@(.SBFvE6.9:O7ieZ(hxPLaum*@T34lQu(S@yE-ETO!7ihy!n15Sep!jw)UaWOJI21e%1xOS5%Kh=R.v[6/8#[4M}63FtuNFW^IXB(i;Jci)mnO#zRwwzb$CSUg8HQEw.m;,c)jiR,TUT0vln^hzUhC-t#nfD4u$U#W7GEc=}7{#1-genUfzGBc+-oh563d)9kMe/EzR+J4@3Ljx5h}OxJJ3U;9n?BRV_7S7{,tup!$B6g};UKk_y*yZ%@U)i=*Rx+V+EjJ=!9ZU1Q)5plRs4-DpI[VU8+7!t0auXWJZ+210)s!0[2b;f2_@k$Z%Tg71HPK3ZTh_8P]aEq#_]L#@gzD8j:9b4?-Z(7muE]cc:0U)Rk0qa-@yIGwzkd..Lv9OYhvR4smG]q-bIjkx8JqP5Wd)dxU4Z?,Z0Pc5!kEDg[eLs5{:j6bil/Cl$x=z,V0_M0?ub)^Z;V;=d0yU-+xSURRM)]9EV#U(rlS(5[%pWZy,$i:xkUYzx[x:/sK:$DN1=WkdMyuM$3j52lXH_2Uh1Kl6ron(1]@;3+1Tpw={Z}a79@TDh_8M+woD?wj$B6q;^V9ffdDQ^:^F/.Iq:2)6,FWhNr=$Jc(RSj:bqDRf)U7@1=EJ(Uj/;V9HZ](B7Re7A@gc?g8zgsC!pIxZDG@FU}Uo#K/xcyW?.-qJkE$$zlyt]CPjqba+0W_z,qrnx^nr}M=FL/oqQeo:T*Z9EfPgrt3?HxX{YeSL9ZbiKKVV/h8.]}y@y7uafvz@U1U%%Iv;RVav7-q3=/Dux_N7@sX%P[9Fa9yxk?+w_+pv]yRUe7O7N#j4Zx1am2*[eCW37?a6Knj+KEHmrYi=2?XQ+;r}#.Gt=u327k%YFYJ.@%HpswsO[DpTejGr*raG8l:CTchjNZmdc#P3g;.Y29zneir-p2k)aF7rgoE;CXcM9+q4FN2fj1H_#UQu-e*^fAF/[ZFx[wR{}sxbGi!{i=.AzKMK_uS{dJ,$vy5:y//i:ZLACHdX}Y3yOB{uXKSYnj).,LMp^V}(#-8oqRRKmj:F[yiwuq)J=b3ap@x(bM-GV{CLi.#sn2CEqvIPQugtiLhL{$CKWCvEHEHsKp{#9zmk$h.ZM??Qyk)e@@;2AO:T}a=NlicaQ[J;qw?2^=KOmY6T6IK-uJ)u-R#ti24sRQo9igwNm*H1(ez){P_3@Ke/OK#;#j_JY(Dt]=]Ht*jYtzB61Af:um*4%KsEtiz_2%!mqdr,}S8A[}eO(S84g2s#RD_jE^pIH4/PY0iw)Q,CsB@M^LceKMnpU^n_L[j.x_O%gt-Tb/f_vyxWcAOT[EQVZc0E7UP(EHtd#TQWx*yruUPHfwogu3#cAltwnZ7DROKU-LDb-hyy:U)/=A-,Ovrqeqno80lz3TPN??3@s;()YF*%Pi0K-D?!K]zS5sPA+:1zHwYecg[3xOeM#/L#*B2=meyg31hvGhGwEN{i0_-/VNzE]PwtXqSOe0e0zghBht;p3D;,p88CG%)!u#M@c.$E-Z3P9o+#h]_dq%E)w12w(T5O8:PyH/qpzorZ3MA[}qKBB^3z)7!xLhE{p)W;O_em;8[iYQ(R4^d%b.]D*suDw9)+B(aR?E%-y?h5v^K/U+%o-s@y6Hu1BD}8MV]9:#.hd-$hQG;nwWV95caSv]L$GW:2BX@GC)5Yu2p![E2NG:g6{jLs.to]uPbxd:g{-r(T.3KiS$=P$p+y:lJEOu)A%NZC}{nVT0Y)qb[Wd$#P#e$:/zt^p$7GH=Q9^zb!R9mFi+E]qHdsP-fGi[Y{cx^f_irC)oXa]Sm3LbT?2hl[C!/*uBga-6.}e6(Os{-=5-Q(wnAX[fO2[vy:rV89LOqvqm326eSnwP?;N,sVUsJYh-fvo}(WU#^8O1494xrx9@;te6Ms?ImIM4Q*?x-:qm5McZ8dRD(nhtqv*Fm%N_[0[}1(v*yoEWKB+nb)2s0%P-Pnqm[AfkQhqDV-8j-@Iya#PRQS.cb3N0{?@L(*!j.Cw4SH$dpWeCa)5Bi4O??PW2b=X}h0gwv[VMD9Jk@Km/+#B,mM5pC:r@Wm^km?F=aY]br@o0QjH{Mvdilv;^f,VOvyUe3-1g$zV:dCw^+$aq3,vJ+oY8r#b*GUXWoY9?#jhsr]JF{9=ejlQv9JTR]Dx/@LF;k+R_db7Umv:)vcH-Boo]+.(^mtKcL8,YoPnABhxf7j51Y$1w;2d=Zh5s]w3Y-8FY^+x]5g3]vxqX7=ahQU.:FOGLXL_E[xfc_4z1Isd@WR:)mk[I(y%YV#bb}}N0+IqLWLNnu;X9n-2dqeH$4[A2RgvD^^4Z9^!$+6piO}agW-%jZ3.z}-KF{cGjxx,),k2C7)s]V^d$kH@Y1.+u1Whp:9m.Xk1!CE.5zCL]!CKS^Nz@u-fnHu^?j6?ae$$UL?{mA/q$!+6zeg)Z%{_piV=I;g/K;R5L#3UH3/1P_Jm9ip:=h!6AAW3e3.(z5pbxWEp@7/kO!/u07o+A9,L?y$dJDwk]4XvNw5;mPA!u^HHu@fct$Wo:u//2!(u}5!a{2_A=]=,R4kH,6c]T*Rm$T/?wgoE!%)q8$UuUn.zUFt#1O7h4xNY*T?*(jSd0kKcnnc=vkOTs8kN@m:2SVZlywXA1YBJ+2t+[$g$qcMKaq%x[m@[TN+,caemJ2Ji7};GI.WTB3REJJq6}!n(nio)IcSJ4st@g3fD4r)P(TBL$uKF68s2jUwh*9Tv?Su16Csrn?.d[o8ATu^.NpIIN;[9dBY..zAPO9Dc6LT@DWW7W8dca,a5#p[z:Drbj(ejWa}Q{)B$!Nb0vT@lLqb5J0M$VnDF[;60=:5FVM!R]tvTi:P8-C51^LaFqDE/=vvI?@WK:KOiE3Kt5.Ya@1v11IQQICQ5Qq/%3/N^}(W+$5G*ro1=^mPEWq=)bhp5OOYQu9dgaG;h8]#,)0#Q7a1l]WTrAh,M:v2soYsB!eN}93tN].1/M#bEbARHJ#3{iA8hhAp,%nF[o2}LC7;3M$5;A{[s!2Yx?@YlD2Sfi4we_l1TQjt*Z9D_CeJp$Y:O,+Ot8N!$25,o5/f=y+B):.q07#A0bd$Y+NXJ25kRqvug6F:JnJoy57I7zOF-]+U2O.CSg.sW$Xxe81U*[Dj{IvyBEL#(hof5@L-XjC6{U/!}Rz:9ztPlO{hI4-v3.VP++gXQEyIW_v.5m1I4#JPrEj]8IfA.fqzYQ!fgfoK8{0Coh1Ag9No1V*AcmLS9A0LQr*kf_Qn3Lg]3AZ]eR4@sC[.6tOLJp+qhCKPc(sxhSkfcD*]LndatW)]xX?lXk92+@/EG6D3qNTD[qP*CeI/RoZR(o6D@tAs}Tr?Rz89fshiUHD*bK@2GuO?IcVP*#DkgF@y+:*qxZR(XdAVfy,qz1aYEMeYa[B?z+DSRsK54Dbzu7J(YMn9-dI67Uq1S1_(NA.VReoUVdTNb8H#b9f1w8mLvcJg(:XIB8+@3*Py3OY2h86/r+NQlZXlcmhI)ae.7A5.,-_MveUBGg2Y(kRB!z0Ea]Y).yM[i9#g7$gQ^{8EHg-bT%XmD($HoWF?yyYS=MisGcTef=R]$ERyoYN+DneyK0@jKo89VbQg+UAuh$EVx?Xp0uz(nAydj[.H+G.Tu/pC7y+Kwt8S0fV)2Uom;_HxMpNY_jQt6dNKp^H/z4io%4EVo%t9r(5_^#nWw*9n0o6;V5oSX:sz,T;5,K4zhz{GIFqRNDG=f}y7?AK*6a5%hN!p3DCfG%yW(vgtbwd%PgarwtFWerc2(9Gv0A-#$H)SH+1Azkq9OU5v%.?%#1eZ(JFdIaQ/5C,0Mn04cS42E13ARWCt_W@fDkgAEX!lA#k/@x_CjfmQDV8krz[]E,WS9Vq0Hz{G0ap;wgwSu$h$?Uk7bvO,y(5*P5^$P.l5hz{gjqs.^3XDjgb3Eo?c?+my6QE.66TX$B%2w*WCe$=qsen*VoZk170CEd5HfUFdFWwM9(X9[wDiU91x6IaRlo)X5cIqlsW8,QbRxjipt,QTT7hb!ojOB_bJfS;i^ymD20oP^uq.7YTpSpM13G7T03{cWJ]}^UN8qapoL^^I7n%:Z4H,Syl+Ey6G+O0(NDJ}_eoIh!9CQ*X6TrVMx!Bb*Nl:+$1Tca=%!9%LS*M,KtvQsU(]6^K$c?9]fr0Woxbqh}D?2o^kU#=BMT%kMfka()O:iMu1WgbDkn!h{gnX1N;cGuC@]K7bp$UrcF%:mm1lSYc4ata,Xn;#]2qLiQlk!NM=KVT0tcT,OB[_P=WM_iPXtf$3!Jt^XHnTQ_abX/kA2gF0#10OLKmt93Jf_]P!LMj*Ajm:#L:*K0AHoxZY.VM5ZvsV/NDEa^LBs/G2fYex1xWA8F(wmkV0Tz1aCst*IvpmpR3uSK^(^ise/Uo{9aef7DGBlS0m7IGph!yvJ(FK0Iq3lyNHXx;1_%_1#82$P1)JvaMH*h#:!=VLQ@T[oYyztW3Ia-}P^.?doeo4Plr#:T4.F[zMTE;ti0{#n#v2=N(h%sj2a$IIP?5csfu=kCF*SheUHYn%8ACK0j]xHhf%5qn7XWDx%NsQ06sog3S=PUYl=ee:N)1R#;8H{PT.1zXsHRrht65pF!u/goxz;Y4v*c?%2vdMt9]Ofk-Ru9j8#!)M57?{H9xN29K[tLe4#/l+(=?:[ct@wbv]7C7)=Z;R0Q11N5AcMZ3V1h;lQm;2NPbJeI}}Jh;I$GjVV=uM,$_X.BS^4FKLOrRfC#ERp{:J[:yMGgs:E}qM(biRN{wjFunIX(-qs^gTXQ53C.Ku!t_]MjAPg30A.yg)/ATcUiVQx4JYXWw65)R9B,(q-!D_fYZ3#N5hb[+x/-uwCwi9gC!gw@t$?UZI?Nzi}pc8rb?)}eSa3xpEAJHYBr,!Kk2/VtZm;])M156]+aH%E.ruhJ/kiycZ30Z1L7pqF8qR9X?qGD1du0UkV5lQJPj6-ncQ?9eITP$Ilz!i)QabrQ)1GI_eC;07@8Y_,t(6viX/QNg.6Uy:poCvn0P(t2gzvs$DG6h_IhbCV%i8wHiKx75L94Al=CbvWA$aGYU65z9!,H{w+VzKbDJ?a3;vIn39L[QvwFLus!JA3+BJ9}H=:[TIQmeM}2cmsBNx[aGzF?ez0BMA7^5xj7Pu+a+T^-Kzd3[NX=F8CS%8eoMG(iwz/JEaNT?04];a77%JNc@_HP?3;{UnuF4zhPIc)[evlgHKHUFTZ3m^*3lArhoj;:MP]dSpCTh8YEKfE)XGy8pewLtU/DLS2r+LU9C$uwYNepMy!z[r9:iA7$:gHyte-p;12]:wpf2j;P)V$S9A8K4)AhxhSWBiiuCFN^)-[e]cI1d:w2nhr%il/!-JxGq_F!e!_t#1!:XDrps)WyI:CD0M2f%4lFx)F.lDRHzyAMX?]YkD=SHXo+!-KN.7c+x:cv_aK}16j4+
88844
"| State of Decay 2 - v1.3368.2.2 |"
000000
Auto Assembler Script
[ENABLE]
{$lua}
--Version Check Start
if(getCEVersion() < 6.8) then
ShowMessage('Sorry. CE version should be 6.8 or above')
end
if(process == nil) then
ShowMessage('No process was selected')
elseif (process ~= "StateOfDecay2-UWP64-Shipping.exe") then
ShowMessage('Error. Expected Process = StateOfDecay2-UWP64-Shipping.exe')
end
--Version Check End
-- Full View Mode Toggle made by Vee_
PRIVATETABLE, SWITCHSUPPORT = true, false
function cycleFullCompact(sender,force)
local state = not(compactmenuitem.Caption == 'Compact View Mode')
if force~=nil then state = not force end
compactmenuitem.Caption = state and 'Compact View Mode' or 'Full View Mode'
getMainForm().Splitter1.Visible = state
getMainForm().Panel4.Visible = state
getMainForm().Panel5.Visible = state
end
function addCompactMenu()
if compactmenualreadyexists then return end
local parent = getMainForm().Menu.Items
compactmenuitem = createMenuItem(parent); parent.add(compactmenuitem)
compactmenuitem.Caption = 'Compact View Mode'
compactmenuitem.OnClick = cycleFullCompact
compactmenualreadyexists = 'yes'
end
addCompactMenu()
cycleFullCompact(nil, true)
-- End Of Full View Mode Toggle
-- Teleport Start
Xpos,Ypos,Zpos = nil,nil,nil
UP = nil
function smartDestroy(obj)
if obj and obj.destroy then obj.destroy() end
end
-- Teleport Marker
function readMapCoords(timer)
local Xpos1,Ypos1,Zpos1
Xpos1 = readFloat('[[[[[[["StateOfDecay2-UWP64-Shipping.exe"+04FFF9C8]+20]+338]+20]+290]+0]+1B0]+118')
Ypos1 = readFloat('[[[[[[["StateOfDecay2-UWP64-Shipping.exe"+04FFF9C8]+20]+338]+20]+290]+0]+1B0]+11C')
Zpos1 = readFloat('[[[[[[["StateOfDecay2-UWP64-Shipping.exe"+04FFF9C8]+20]+338]+20]+290]+0]+1B0]+120')
if Xpos1==nil or Ypos1==nil or Zpos1==nil then return end
Xpos,Ypos,Zpos = Xpos1,Ypos1,Zpos1
end
-- Teleport Player
function teleport()
writeFloat('[[[[[["StateOfDecay2-UWP64-Shipping.exe"+04DFED58]+0]+58]+3C0]+1F8]+3E0]+170', Xpos)
writeFloat('[[[[[["StateOfDecay2-UWP64-Shipping.exe"+04DFED58]+0]+58]+3C0]+1F8]+3E0]+174', Ypos)
writeFloat('[[[[[["StateOfDecay2-UWP64-Shipping.exe"+04DFED58]+0]+58]+3C0]+1F8]+3E0]+178', Zpos + 700.0)
end
-- Teleport Car
function teleportCar()
if Xpos==nil or Ypos==nil or Zpos==nil then return end
writeFloat('[[[[[[["StateOfDecay2-UWP64-Shipping.exe"+0522E790]+30]+368]+98]+8]+1C0]+90]+A0', Xpos)
writeFloat('[[[[[[["StateOfDecay2-UWP64-Shipping.exe"+0522E790]+30]+368]+98]+8]+1C0]+90]+A4', Ypos)
writeFloat('[[[[[[["StateOfDecay2-UWP64-Shipping.exe"+0522E790]+30]+368]+98]+8]+1C0]+90]+A8', Zpos + 1500.0)
end
-- Teleport Up
function teleportUp()
local UP
UP = readFloat('[[[[[["StateOfDecay2-UWP64-Shipping.exe"+04DFED58]+0]+58]+3C0]+1F8]+3E0]+178')
writeFloat('[[[[[["StateOfDecay2-UWP64-Shipping.exe"+04DFED58]+0]+58]+3C0]+1F8]+3E0]+178', UP + 1500.0)
if UP==nil then return end
end
smartDestroy(timer); timer=nil
timer = createTimer(nil,true)
timer.OnTimer = readMapCoords
timer.Interval = 100
smartDestroy(teleportHotkey); teleportHotkey=nil
teleportHotkey = createHotkey(teleport,VK_SUBTRACT)
smartDestroy(teleportCarHotkey); teleportCarHotkey=nil
teleportCarHotkey = createHotkey(teleportCar,VK_SUBTRACT)
smartDestroy(teleportUpHotkey); teleportUpHotkey=nil
teleportUpHotkey = createHotkey(teleportUp,VK_ADD)
-- Teleport End
{$asm}
[DISABLE]
{$lua}
cycleFullCompact(nil, false)
--[Player/Group Status]
getAddressList().getMemoryRecordByDescription("Unlimited Survivor Health").Active=false
getAddressList().getMemoryRecordByDescription("Unlimited Group Health [Host Only]").Active=false
getAddressList().getMemoryRecordByDescription("Unlimited Survivor Stamina").Active=false
getAddressList().getMemoryRecordByDescription("Unlimited Throwables/Consumables").Active=false
getAddressList().getMemoryRecordByDescription("Unlimited Weapon Durability (Use 1 at a time)").Active=false
getAddressList().getMemoryRecordByDescription("Unlimited Weight").Active=false
getAddressList().getMemoryRecordByDescription("No Reload (Use 1 at a time.)").Active=false
getAddressList().getMemoryRecordByDescription("No Spread").Active=false
getAddressList().getMemoryRecordByDescription("No Recoil").Active=false
getAddressList().getMemoryRecordByDescription("No Sway").Active=false
getAddressList().getMemoryRecordByDescription("No Fatigue").Active=false
getAddressList().getMemoryRecordByDescription("Instant Radio Cooldown").Active=false
getAddressList().getMemoryRecordByDescription("Instant Max Level").Active=false
getAddressList().getMemoryRecordByDescription("Unlimited Vehicle Engine Health [Host Only]").Active=false
getAddressList().getMemoryRecordByDescription("Unlimited Car Fuel [Host Only]").Active=false
--[World/Outpost Effects]
getAddressList().getMemoryRecordByDescription("Easy Crafting").Active=false
getAddressList().getMemoryRecordByDescription("Instant Creation/Upgrades").Active=false
getAddressList().getMemoryRecordByDescription("Unlimited Enclave Influence").Active=false
getAddressList().getMemoryRecordByDescription("Unlimited Resources/Influence/Prestige").Active=false
getAddressList().getMemoryRecordByDescription("Mission Time Freeze [Host Only]").Active=false
getAddressList().getMemoryRecordByDescription("Time Of Day [Local Only]").Active=false
getAddressList().getMemoryRecordByDescription("Infestation Count - Host Only (Activate Script Then Go To The Infestation You Want To Change)").Active=false
--[Teleport Save/Load/Undo]
getAddressList().getMemoryRecordByDescription("[Teleport Save/Load/Undo]").Active=false
--[Inventory Management]
getAddressList().getMemoryRecordByDescription("Massive Items - Highlight the item you want to be 999 then reopen inventory.").Active=false
getAddressList().getMemoryRecordByDescription("Minimum Items - Highlight the item you want to be x1 then reopen inventory.").Active=false
--[Swap Item IDs]
getAddressList().getMemoryRecordByDescription("Equipment").Active=false
getAddressList().getMemoryRecordByDescription("Slots (1 - 12)").Active=false
--[Weapon Stats]
getAddressList().getMemoryRecordByDescription("Max Fire Rate").Active=false
getAddressList().getMemoryRecordByDescription("Max Power").Active=false
getAddressList().getMemoryRecordByDescription("Max Quietness (Ranged)").Active=false
getAddressList().getMemoryRecordByDescription("Max Range").Active=false
getAddressList().getMemoryRecordByDescription("Melee Stats").Active=false
--[Daybreak - DLC]
getAddressList().getMemoryRecordByDescription("Unlimited Wall Health (Activate At Start of Game)").Active=false
Toggle Activation
0
Toggle Activation
1
90960
"Version"
1
90961
"-- Game Version --"
1.3283.71.2:Old(Outdated)
1.3300.34.2:Old(Outdated)
1.3314.44.2:Old(Outdated)
1.3345.56.2:Current
1
String
11
0
0
1
ucrtbase.dll+ECE3E
88845
"[Player/Group Status]"
008000
1
89520
"Unlimited Survivor Health"
Auto Assembler Script
[ENABLE]
aobscanmodule(aob_health,StateOfDecay2-UWP64-Shipping.exe,F3 0F 10 81 90 01 00 00 C3 48)
alloc(newmem,$100,aob_health)
label(code)
label(return)
newmem:
cmp [rcx+110],1
jne Health_Code
jmp code
Health_Code:
fld [rcx+198]
mov [rcx+198],(float)500
mov [rcx+190],(float)500
fstp [rcx+190]
code:
movss xmm0,[rcx+00000190]
jmp return
aob_health:
jmp newmem
nop
nop
nop
return:
registersymbol(aob_health)
[DISABLE]
aob_health:
db F3 0F 10 81 90 01 00 00
unregistersymbol(aob_health)
dealloc(newmem)
89460
"Unlimited Group Health [Host Only]"
Auto Assembler Script
[ENABLE]
aobscanmodule(aobHealth,StateOfDecay2-UWP64-Shipping.exe,F3 0F 11 12 48 89 74 24 40)
alloc(newmem,$100,aobHealth)
label(code)
label(return)
newmem:
code:
//movss [rdx],xmm2
mov rdx,[rdx+8]
mov [rsp+40],rsi
jmp return
aobHealth:
jmp newmem
nop
nop
nop
nop
return:
registersymbol(aobHealth)
[DISABLE]
aobHealth:
db F3 0F 11 12 48 89 74 24 40
unregistersymbol(aobHealth)
dealloc(newmem)
89521
"Unlimited Survivor Stamina"
Auto Assembler Script
[ENABLE]
aobscanmodule(aobStamina,StateOfDecay2-UWP64-Shipping.exe,F3 0F 11 06 48 8D 54 24 20)
alloc(newmemStaminaRunning,$100,aobStamina)
label(codeStaminaRunning)
label(returnStaminaRunning)
newmemStaminaRunning:
codeStaminaRunning:
nop //movss [rsi],xmm0
lea rdx,[rsp+20]
jmp returnStaminaRunning
aobStamina:
jmp newmemStaminaRunning
nop
nop
nop
nop
returnStaminaRunning:
registersymbol(aobStamina)
// Stamina v2 //
aobscanmodule(aobStaminaAction,StateOfDecay2-UWP64-Shipping.exe,F3 0F 11 17 48 8D 54 24 20 48 89 5C 24 20 C6 44 24 28 01)
alloc(newmemStaminaInAction,$100,aobStaminaAction)
label(codeStaminaInAction)
label(returnStaminaInAction)
newmemStaminaInAction:
codeStaminaInAction:
nop //movss [rdi],xmm2
lea rdx,[rsp+20]
jmp returnStaminaInAction
aobStaminaAction:
jmp newmemStaminaInAction
nop
nop
nop
nop
returnStaminaInAction:
registersymbol(aobStaminaAction)
[DISABLE]
aobStamina:
db F3 0F 11 06 48 8D 54 24 20
unregistersymbol(aobStamina)
dealloc(newmemStaminaRunning)
// Stamina v2 //
aobStaminaAction:
db F3 0F 11 17 48 8D 54 24 20
unregistersymbol(aobStaminaAction)
dealloc(newmemStaminaInAction)
90844
"Unlimited Throwables/Consumables"
Auto Assembler Script
[ENABLE]
aobscanmodule(aob_consumables,StateOfDecay2-UWP64-Shipping.exe,41 2B CF 89 08)
alloc(newmem,$100,aob_consumables)
label(code)
label(return)
newmem:
code:
//sub ecx,r15d
mov [rax],#3
jmp return
aob_consumables:
jmp newmem
return:
registersymbol(aob_consumables)
[DISABLE]
aob_consumables:
db 41 2B CF 89 08
unregistersymbol(aob_consumables)
dealloc(newmem)
89463
"Unlimited Weapon Durability (Use 1 at a time)"
Auto Assembler Script
[ENABLE]
[DISABLE]
{$lua}
getAddressList().getMemoryRecordByDescription("Remove Parts (For People Who Salvaged High Durability Weapons)").Active=false
getAddressList().getMemoryRecordByDescription("Unlimited Weapon Durability - Freeze Current Durability").Active=false
getAddressList().getMemoryRecordByDescription("Unlimited Weapon Durability - Ranged/Melee (Equipped Only)").Active=false
getAddressList().getMemoryRecordByDescription("Unlimited Weapon Durability - Ranged/Melee (Includes Supply Locker)").Active=false
{$asm}
90016
"-- DO NOT SALVAGE THE WEAPONS - YOU WILL BREAK YOUR GAME --"
0000FF
1
90020
"Remove Parts (For People Who Salvaged High Durability Weapons)"
Auto Assembler Script
[ENABLE]
aobscanmodule(aobParts,StateOfDecay2-UWP64-Shipping.exe,8B 00 B9 01 00 00 00)
alloc(newmem,$1000,aobParts)
label(code)
label(return)
newmem:
code:
mov [rax],#1
mov eax,[rax]
mov ecx,00000001
jmp return
aobParts:
jmp newmem
nop
nop
return:
registersymbol(aobParts)
[DISABLE]
aobParts:
db 8B 00 B9 01 00 00 00
unregistersymbol(aobParts)
dealloc(newmem)
90527
"Unlimited Weapon Durability - Freeze Current Durability"
Auto Assembler Script
[ENABLE]
{$lua}
getAddressList().getMemoryRecordByDescription("Unlimited Weapon Durability - Ranged/Melee (Equipped Only)").Active=false
getAddressList().getMemoryRecordByDescription("Unlimited Weapon Durability - Ranged/Melee (Includes Supply Locker)").Active=false
{$asm}
// Ranged Durability //
aobscanmodule(aob_rd,StateOfDecay2-UWP64-Shipping.exe,F3 0F 5C C1 F3 41 0F 11 46 58)
alloc(newmem_rd,$100,aob_rd)
label(code_rd)
label(return_rd)
registersymbol(aob_rd)
newmem_rd:
code_rd:
subss xmm1,xmm0//subss xmm0,xmm1
movss [r14+58],xmm0
jmp return_rd
aob_rd:
jmp newmem_rd
nop
nop
nop
nop
nop
return_rd:
// Melee Durability //
aobscanmodule(aob_md,StateOfDecay2-UWP64-Shipping.exe,F3 0F 5C C1 F3 0F 11 86 4C 17 00 00)
alloc(newmem_md,$100,aob_md)
label(code_md)
label(return_md)
registersymbol(aob_md)
newmem_md:
code_md:
subss xmm1,xmm0//subss xmm0,xmm1
movss [rsi+0000174C],xmm0
jmp return_md
aob_md:
jmp newmem_md
nop
nop
nop
nop
nop
nop
nop
return_md:
[DISABLE]
// Ranged Durability //
aob_rd:
db F3 0F 5C C1 F3 41 0F 11 46 58
unregistersymbol(aob_rd)
dealloc(newmem_rd)
// Melee Durability //
aob_md:
db F3 0F 5C C1 F3 0F 11 86 4C 17 00 00
unregistersymbol(aob_md)
dealloc(newmem_md)
90526
"Unlimited Weapon Durability - Ranged/Melee (Equipped Only)"
Auto Assembler Script
[ENABLE]
{$lua}
getAddressList().getMemoryRecordByDescription("Unlimited Weapon Durability - Freeze Current Durability").Active=false
getAddressList().getMemoryRecordByDescription("Unlimited Weapon Durability - Ranged/Melee (Includes Supply Locker)").Active=false
{$asm}
// Ranged Durability //
aobscanmodule(aob_rde,StateOfDecay2-UWP64-Shipping.exe,F3 0F 10 73 58 66)
alloc(newmem_rde,$100,aob_rde)
label(code_rde)
label(return_rde)
registersymbol(aob_rde)
newmem_rde:
code_rde:
mov [rbx+58],(float)214748000
movss xmm6,[rbx+58]
jmp return_rde
aob_rde:
jmp newmem_rde
return_rde:
// Melee Durability //
aobscanmodule(aob_mde,StateOfDecay2-UWP64-Shipping.exe,F3 0F 10 B3 4C 17 00 00)
alloc(newmem_mde,$100,aob_mde)
label(code_mde)
label(return_mde)
registersymbol(aob_mde)
newmem_mde:
code_mde:
mov [rbx+0000174C],(float)214748000
movss xmm6,[rbx+0000174C]
jmp return_mde
aob_mde:
jmp newmem_mde
nop
nop
nop
return_mde:
[DISABLE]
// Ranged Durability //
aob_rde:
db F3 0F 10 73 58
unregistersymbol(aob_rde)
dealloc(newmem_rde)
// Melee Durability //
aob_mde:
db F3 0F 10 B3 4C 17 00 00
unregistersymbol(aob_mde)
dealloc(newmem_mde)
90023
"Unlimited Weapon Durability - Ranged/Melee (Includes Supply Locker)"
Auto Assembler Script
[ENABLE]
{$lua}
getAddressList().getMemoryRecordByDescription("Unlimited Weapon Durability - Freeze Current Durability").Active=false
getAddressList().getMemoryRecordByDescription("Unlimited Weapon Durability - Ranged/Melee (Equipped Only)").Active=false
{$asm}
// Ranged Durability //
aobscanmodule(aob_rda,StateOfDecay2-UWP64-Shipping.exe,0F 10 41 58 C3 90 48)
alloc(newmem_rda,$100,aob_rda)
label(code_rda)
label(return_rda)
registersymbol(aob_rda)
newmem_rda:
code_rda:
mov [rcx+58],(float)214748000
movups xmm0,[rcx+58]
ret
jmp return_rda
aob_rda:
jmp newmem_rda
return_rda:
// Melee Durability //
aobscanmodule(aob_mda,StateOfDecay2-UWP64-Shipping.exe,0F 2F 81 4C 17 00 00)
alloc(newmem_mda,$100,aob_mda)
label(code_mda)
label(return_mda)
registersymbol(aob_mda)
newmem_mda:
code_mda:
mov [rcx+0000174C],(float)214748000
comiss xmm0,[rcx+0000174C]
jmp return_mda
aob_mda:
jmp newmem_mda
nop
nop
return_mda:
[DISABLE]
// Ranged Durability //
aob_rda:
db 0F 10 41 58 C3
unregistersymbol(aob_rda)
dealloc(newmem_rda)
// Melee Durability //
aob_mda:
db 0F 2F 81 4C 17 00 00
unregistersymbol(aob_mda)
dealloc(newmem_mda)
90024
"Unlimited Weight"
Auto Assembler Script
[ENABLE]
aobscanmodule(aobWeight,StateOfDecay2-UWP64-Shipping.exe,F3 0F 59 83 C0 00 00 00 48)
alloc(newmemWeightv1,$100,aobWeight)
label(codeWeightv1)
label(returnWeightv1)
newmemWeightv1:
codeWeightv1:
// xorps xmm0,xmm0
//movss xmm0,[rbx+000000C0]
mov dword ptr [rbx+000000C0],(float)0
movss xmm0,[rbx+000000C0]
jmp returnWeightv1
aobWeight:
jmp newmemWeightv1
nop
nop
nop
returnWeightv1:
registersymbol(aobWeight)
// Weight v2 //
aobscanmodule(aobWeightSecond,StateOfDecay2-UWP64-Shipping.exe,F3 0F 10 83 C0 00 00 00 48 8B)
alloc(newmemWeightv2,$100,aobWeightSecond)
label(codeWeightv2)
label(returnWeightv2)
newmemWeightv2:
codeWeightv2:
// xorps xmm0,xmm0
//movss xmm0,[rbx+000000C0]
mov dword ptr [rbx+000000C0],(float)0
movss xmm0,[rbx+000000C0]
jmp returnWeightv2
aobWeightSecond:
jmp newmemWeightv2
nop
nop
nop
returnWeightv2:
registersymbol(aobWeightSecond)
// Weight v3 - Guns //
aobscanmodule(aobWeight3,StateOfDecay2-UWP64-Shipping.exe,F3 0F 10 80 04 02 00 00)
alloc(newmemWeightv3,$100,aobWeight3)
label(codeWeightv3)
label(returnWeightv3)
newmemWeightv3:
codeWeightv3:
mov dword ptr [rax+00000204],(float)0
movss xmm0,[rax+00000204]
jmp returnWeightv3
aobWeight3:
jmp newmemWeightv3
nop
nop
nop
returnWeightv3:
registersymbol(aobWeight3)
// Weight v4 - Melee //
aobscanmodule(aobWeight4,StateOfDecay2-UWP64-Shipping.exe,F3 0F 10 40 74 C3)
alloc(newmemWeightv4,$100,aobWeight4)
label(codeWeightv4)
label(returnWeightv4)
newmemWeightv4:
codeWeightv4:
mov dword ptr [rax+74],(float)0
movss xmm0,[rax+74]
jmp returnWeightv4
aobWeight4:
jmp newmemWeightv4
returnWeightv4:
registersymbol(aobWeight4)
[DISABLE]
// Weight v1 //
aobWeight:
db F3 0F 59 83 C0 00 00 00
unregistersymbol(aobWeight)
dealloc(newmemWeightv1)
// Weight v2 //
aobWeightSecond:
db F3 0F 10 83 C0 00 00 00
unregistersymbol(aobWeightSecond)
dealloc(newmemWeightv2)
// Weight v3 - Guns //
aobWeight3:
db F3 0F 10 80 04 02 00 00
unregistersymbol(aobWeight3)
dealloc(newmemWeightv3)
// Weight v4 - Melee //
aobWeight4:
db F3 0F 10 40 74
unregistersymbol(aobWeight4)
dealloc(newmemWeightv4)
90514
"No Reload (Use 1 at a time.)"
Auto Assembler Script
[ENABLE]
aobscanmodule(aobAmmoInClip,StateOfDecay2-UWP64-Shipping.exe,2B C2 48 8D 54 24 38 89 41 48)
alloc(newmem,$100,aobAmmoInClip)
registersymbol(aobAmmoInClip)
label(code)
label(return)
label(SetAmmo1)
label(SetAmmo2)
label(SetAmmo_status)
registersymbol(SetAmmo_status)
newmem:
cmp [SetAmmo_status],0
je code
cmp [SetAmmo_status],1
je SetAmmo1
cmp [SetAmmo_status],2
je SetAmmo2
jmp return
SetAmmo_status:
dd 0
code:
sub eax,edx
lea rdx,[rsp+38]
mov [rcx+48],eax
jmp return
SetAmmo1:
//sub eax,edx
lea rdx,[rsp+38]
mov [rcx+48],eax
jmp return
SetAmmo2:
//sub eax,edx
lea rdx,[rsp+38]
mov [rcx+48],#999
jmp return
aobAmmoInClip:
jmp newmem
nop
nop
nop
return:
[DISABLE]
aobAmmoInClip:
db 2B C2 48 8D 54 24 38 89 41 48
unregistersymbol(aobAmmoInClip)
unregistersymbol(SetAmmo_status)
dealloc(newmem)
{$lua}
getAddressList().getMemoryRecordByDescription("No Reload - Freeze Current Ammo").Active=false
getAddressList().getMemoryRecordByDescription("No Reload - Set Current Weapon to x999 (Shoot to see change)").Active=false
getAddressList().getMemoryRecordByDescription("No Reload - Set All Weapons to x999 (Includes Supply Locker - Move Mouse over Weapon to change)").Active=false
{$asm}
90515
"No Reload - Freeze Current Ammo"
Auto Assembler Script
[Enable]
{$lua}
getAddressList().getMemoryRecordByDescription("No Reload - Set All Weapons to x999 (Includes Supply Locker - Move Mouse over Weapon to change)").Active=false
getAddressList().getMemoryRecordByDescription("No Reload - Set Current Weapon to x999 (Shoot to see change)").Active=false
{$asm}
SetAmmo_status:
dd 1
[Disable]
SetAmmo_status:
dd 0
90516
"No Reload - Set Current Weapon to x999 (Shoot to see change)"
Auto Assembler Script
[Enable]
{$lua}
getAddressList().getMemoryRecordByDescription("No Reload - Freeze Current Ammo").Active=false
getAddressList().getMemoryRecordByDescription("No Reload - Set All Weapons to x999 (Includes Supply Locker - Move Mouse over Weapon to change)").Active=false
{$asm}
SetAmmo_status:
dd 2
[Disable]
SetAmmo_status:
dd 0
90028
"No Reload - Set All Weapons to x999 (Includes Supply Locker - Move Mouse over Weapon to change)"
Auto Assembler Script
[ENABLE]
{$lua}
getAddressList().getMemoryRecordByDescription("No Reload - Freeze Current Ammo").Active=false
getAddressList().getMemoryRecordByDescription("No Reload - Set Current Weapon to x999 (Shoot to see change)").Active=false
{$asm}
aobscanmodule(aob_ammo_all,StateOfDecay2-UWP64-Shipping.exe,8B 30 48 83 7C 24 78 00)
alloc(newmem,$100,aob_ammo_all)
label(code)
label(return)
newmem:
code:
mov [rax],#999
mov esi,[rax]
cmp qword ptr [rsp+78],00
jmp return
aob_ammo_all:
jmp newmem
nop
nop
nop
return:
registersymbol(aob_ammo_all)
[DISABLE]
aob_ammo_all:
db 8B 30 48 83 7C 24 78 00
unregistersymbol(aob_ammo_all)
dealloc(newmem)
90029
"No Spread"
Auto Assembler Script
[ENABLE]
aobscanmodule(_NoSpread1,StateOfDecay2-UWP64-Shipping.exe,F3 0F 11 83 FC 00 00 00 48)
alloc(NoSpread1_newmem,$100,_NoSpread1)
aobscanmodule(_NoSpread2,StateOfDecay2-UWP64-Shipping.exe,F3 0F 11 87 FC 00 00 00)
alloc(NoSpread2_newmem,$100,_NoSpread2)
label(NoSpread1_Code)
label(NoSpread1_return)
label(NoSpread2_code)
label(NoSpread2_return)
NoSpread1_newmem:
NoSpread1_Code:
mov [rbx+000000FC],#0
jmp NoSpread1_return
NoSpread2_newmem:
NoSpread2_code:
mov [rdi+000000FC],#0
jmp NoSpread2_return
_NoSpread1:
jmp NoSpread1_newmem
nop
nop
nop
NoSpread1_return:
registersymbol(_NoSpread1)
_NoSpread2:
jmp NoSpread2_newmem
nop
nop
nop
NoSpread2_return:
registersymbol(_NoSpread2)
[DISABLE]
_NoSpread1:
db F3 0F 11 83 FC 00 00 00
unregistersymbol(_NoSpread1)
dealloc(NoSpread1_newmem)
_NoSpread2:
db F3 0F 11 87 FC 00 00 00
unregistersymbol(_NoSpread2)
dealloc(NoSpread2_newmem)
90030
"No Recoil"
Auto Assembler Script
[ENABLE]
aobscanmodule(aobNoRecoil,StateOfDecay2-UWP64-Shipping.exe,F3 0F 10 B3 ?4 01 00 00 0F 28 C7)
alloc(newmem,$100,aobNoRecoil)
label(code)
label(return)
newmem:
xorps xmm6,xmm6
movss xmm6,[rbx+0000011C]
jmp return
code:
xorps xmm6,xmm6
movss xmm6,[rbx+00000124]
jmp return
aobNoRecoil:
jmp newmem
nop
nop
nop
return:
registersymbol(aobNoRecoil)
[DISABLE]
aobNoRecoil:
db F3 0F 10 B3 24 01 00 00
unregistersymbol(aobNoRecoil)
dealloc(newmem)
90031
"No Sway"
Auto Assembler Script
[ENABLE]
aobscanmodule(aobNoSway,StateOfDecay2-UWP64-Shipping.exe,F3 0F 59 99 E4 00 00 00)
alloc(newmem,$100,aobNoSway)
label(code)
label(return)
newmem:
code:
xorps xmm3,xmm3
mulss xmm3,[rcx+000000E4]
jmp return
aobNoSway:
jmp newmem
nop
nop
nop
return:
registersymbol(aobNoSway)
[DISABLE]
aobNoSway:
db F3 0F 59 99 E4 00 00 00
unregistersymbol(aobNoSway)
dealloc(newmem)
90032
"No Fatigue"
Auto Assembler Script
[ENABLE]
aobscanmodule(aobFatigue,StateOfDecay2-UWP64-Shipping.exe,F3 0F 11 B3 54 04 00 00)
alloc(newmem,$100,aobFatigue)
label(code)
label(return)
newmem:
code:
mov [rbx+00000454],(float)0 //movss [rbx+00000454],xmm6
jmp return
aobFatigue:
jmp newmem
nop
nop
nop
return:
registersymbol(aobFatigue)
[DISABLE]
aobFatigue:
db F3 0F 11 B3 54 04 00 00
unregistersymbol(aobFatigue)
dealloc(newmem)
90033
"Instant Radio Cooldown"
Auto Assembler Script
[ENABLE]
aobscanmodule(aobInstantRadio,StateOfDecay2-UWP64-Shipping.exe,F3 0F 10 41 08 0F 2F C1) // should be unique
//alloc(newmem,$100,"StateOfDecay2-UWP64-Shipping.exe"+590316)
alloc(newmem,$100,aobInstantRadio)
label(code)
label(return)
newmem:
code:
mov [rcx+08],(float)-1.0
movss xmm0,[rcx+08]
jmp return
aobInstantRadio:
jmp newmem
return:
registersymbol(aobInstantRadio)
[DISABLE]
aobInstantRadio:
db F3 0F 10 41 08
unregistersymbol(aobInstantRadio)
dealloc(newmem)
90034
"Instant Max Level"
Auto Assembler Script
[ENABLE]
aobscanmodule(aobInstantMaxLevel,StateOfDecay2-UWP64-Shipping.exe,F3 0F 10 4B 0C 0F 2F C8 72 6B)
alloc(newmem,$100,aobInstantMaxLevel)
label(code)
label(return)
newmem:
code:
mov [rbx+0C],(float)100000
movss xmm1,[rbx+0C]
jmp return
aobInstantMaxLevel:
jmp newmem
return:
registersymbol(aobInstantMaxLevel)
[DISABLE]
aobInstantMaxLevel:
db F3 0F 10 4B 0C
unregistersymbol(aobInstantMaxLevel)
dealloc(newmem)
90035
"Unlimited Vehicle Engine Health [Host Only]"
Auto Assembler Script
[ENABLE]
aobscanmodule(aobCarDamage,StateOfDecay2-UWP64-Shipping.exe,F3 0F 10 B1 00 01 00 00)
//alloc(newmem,$100,"StateOfDecay2-UWP64-Shipping.exe"+745E7B)
alloc(newmem,$100,aobCarDamage)
label(code)
label(return)
newmem:
code:
mov [rcx+00000100],(float)0
movss xmm6,[rcx+00000100]
jmp return
aobCarDamage:
jmp newmem
nop
nop
nop
return:
registersymbol(aobCarDamage)
[DISABLE]
aobCarDamage:
db F3 0F 10 B1 00 01 00 00
unregistersymbol(aobCarDamage)
dealloc(newmem)
90036
"Unlimited Car Fuel [Host Only]"
Auto Assembler Script
[ENABLE]
aobscanmodule(aobCarFuel,StateOfDecay2-UWP64-Shipping.exe,F3 0F 11 83 40 04 00 00 77)
alloc(newmem,$100,aobCarFuel)
label(code)
label(return)
newmem:
code:
mov [rbx+00000440],(float)1 //movss [rbx+00000440],xmm0
jmp return
aobCarFuel:
jmp newmem
nop
nop
nop
return:
registersymbol(aobCarFuel)
[DISABLE]
aobCarFuel:
db F3 0F 11 83 40 04 00 00
unregistersymbol(aobCarFuel)
dealloc(newmem)
88861
"[World/Outpost Effects]"
804000
1
90513
"Easy Crafting"
Auto Assembler Script
[ENABLE]
aobscanmodule(aobEasyCrafting,StateOfDecay2-UWP64-Shipping.exe,40 00 48 3B C3 74 0B)
alloc(newmem,$100,aobEasyCrafting)
label(code)
label(return)
newmem:
code:
cmp rax,rbx
jne StateOfDecay2-UWP64-Shipping.exe+50A0A0
jmp return
aobEasyCrafting+02:
jmp newmem
return:
registersymbol(aobEasyCrafting)
// Water & Power
aobscanmodule(aobWater1,StateOfDecay2-UWP64-Shipping.exe,F3 0F 10 84 B9 78 03 00 00)
alloc(newmemWater1,$100,aobWater1)
label(codeWater1)
label(returnWater1)
newmemWater1:
codeWater1:
mov [rcx+rdi*4+00000378],(float)1
movss xmm0,[rcx+rdi*4+00000378]
jmp returnWater1
aobWater1:
jmp newmemWater1
nop
nop
nop
nop
returnWater1:
registersymbol(aobWater1)
[DISABLE]
aobEasyCrafting+02:
db 48 3B C3 74 0B
unregistersymbol(aobEasyCrafting)
dealloc(newmem)
aobWater1:
db F3 0F 10 84 B9 78 03 00 00
unregistersymbol(aobWater1)
dealloc(newmemWater1)
90038
"Instant Creation/Upgrades"
Auto Assembler Script
[ENABLE]
aobscanmodule(aobUpgrade,StateOfDecay2-UWP64-Shipping.exe,F3 0F 5C 30 0F 28 C6)
alloc(newmem,$100,aobUpgrade)
label(code)
label(return)
newmem:
code:
movss [rax],xmm6
subss xmm6,[rax]
movaps xmm0,xmm6
jmp return
aobUpgrade:
jmp newmem
nop
nop
return:
registersymbol(aobUpgrade)
[DISABLE]
aobUpgrade:
db F3 0F 5C 30 0F 28 C6
unregistersymbol(aobUpgrade)
dealloc(newmem)
90039
"Unlimited Enclave Influence"
Auto Assembler Script
[ENABLE]
aobscanmodule(aobEnclaveInfluence,StateOfDecay2-UWP64-Shipping.exe,8B 81 88 01 00 00 C3 33)
alloc(newmem,$100,aobEnclaveInfluence)
label(code)
label(return)
newmem:
code:
mov [rcx+00000188],#99999
mov eax,[rcx+00000188]
jmp return
aobEnclaveInfluence:
jmp newmem
nop
return:
registersymbol(aobEnclaveInfluence)
[DISABLE]
aobEnclaveInfluence:
db 8B 81 88 01 00 00
unregistersymbol(aobEnclaveInfluence)
dealloc(newmem)
90040
"Unlimited Resources/Influence/Prestige"
Auto Assembler Script
[ENABLE]
aobscanmodule(aobResources,StateOfDecay2-UWP64-Shipping.exe,F3 0F 10 81 F0 00 00 00 C3 90)
alloc(_resources,$100,aobResources)
label(code)
label(return)
label(influence)
label(prestige)
label(resources)
// Influence
label(setInfl)
label(setInfl_status)
registersymbol(setInfl_status)
label(Infl_value)
registersymbol(Infl_value)
// Prestige
label(setPrestige)
label(setPrestige_status)
registersymbol(setPrestige_status)
label(Prestige_value)
registersymbol(Prestige_value)
_resources:
cmp [rcx+48],3
je influence
cmp [rcx+48],7
je prestige
jmp resources
influence:
cmp [setInfl_status],1
je setInfl
jmp code
prestige:
cmp [setPrestige_status],1
je setPrestige
jmp code
resources:
mov [rcx+000000F0], (float)25
jmp code
setInfl_status:
dd 0
setPrestige_status:
dd 0
setInfl:
movss [rcx+F0],xmm0
fld [Infl_value]
fstp [rcx+F0]
mov [setInfl_status],0
jmp code
setPrestige:
movss [rcx+F0],xmm0
fld [Prestige_value]
fstp [rcx+F0]
mov [setPrestige_status],0
jmp code
code:
movss xmm0,[rcx+000000F0]
jmp return
Infl_value:
dd 0
Prestige_value:
dd 0
aobResources:
jmp _resources
nop
nop
nop
return:
registersymbol(aobResources)
[DISABLE]
aobResources:
db F3 0F 10 81 F0 00 00 00
unregistersymbol(aobResources)
dealloc(_resources)
unregistersymbol(setInfl_Status)
unregistersymbol(Infl_value)
unregistersymbol(Prestige_Status)
unregistersymbol(Prestige_value)
{$lua}
getAddressList().getMemoryRecordByDescription("Set Influence: 100").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 500").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 1000").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 1500").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 3500").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 5000").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 9999").Active=false
{$asm}
{$lua}
getAddressList().getMemoryRecordByDescription("Set Prestige: 100").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 500").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 1000").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 1500").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 3500").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 5000").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 9999").Active=false
{$asm}
90041
"Influence"
1
90042
"Set Influence: 100"
Auto Assembler Script
[Enable]
{$lua}
getAddressList().getMemoryRecordByDescription("Set Influence: 500").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 1000").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 1500").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 3500").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 5000").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 9999").Active=false
{$asm}
setInfl_status:
dd 1
Infl_value:
dd (float)100
[Disable]
90043
"Set Influence: 500"
Auto Assembler Script
[Enable]
{$lua}
getAddressList().getMemoryRecordByDescription("Set Influence: 100").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 1000").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 1500").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 3500").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 5000").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 9999").Active=false
{$asm}
setInfl_status:
dd 1
Infl_value:
dd (float)500
[Disable]
90044
"Set Influence: 1000"
Auto Assembler Script
[Enable]
{$lua}
getAddressList().getMemoryRecordByDescription("Set Influence: 100").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 500").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 1500").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 3500").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 5000").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 9999").Active=false
{$asm}
setInfl_status:
dd 1
Infl_value:
dd (float)1000
[Disable]
90045
"Set Influence: 1500"
Auto Assembler Script
[Enable]
{$lua}
getAddressList().getMemoryRecordByDescription("Set Influence: 100").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 500").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 1000").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 3500").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 5000").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 9999").Active=false
{$asm}
setInfl_status:
dd 1
Infl_value:
dd (float)1500
[Disable]
90046
"Set Influence: 3500"
Auto Assembler Script
[Enable]
{$lua}
getAddressList().getMemoryRecordByDescription("Set Influence: 100").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 500").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 1000").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 1500").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 5000").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 9999").Active=false
{$asm}
setInfl_status:
dd 1
Infl_value:
dd (float)3500
[Disable]
90047
"Set Influence: 5000"
Auto Assembler Script
[Enable]
{$lua}
getAddressList().getMemoryRecordByDescription("Set Influence: 100").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 500").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 1000").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 1500").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 3500").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 9999").Active=false
{$asm}
setInfl_status:
dd 1
Infl_value:
dd (float)5000
[Disable]
90048
"Set Influence: 9999"
Auto Assembler Script
[Enable]
{$lua}
getAddressList().getMemoryRecordByDescription("Set Influence: 100").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 500").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 1000").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 1500").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 3500").Active=false
getAddressList().getMemoryRecordByDescription("Set Influence: 5000").Active=false
{$asm}
setInfl_status:
dd 1
Infl_value:
dd (float)99999999
[Disable]
90063
"Prestige"
1
90064
"Set Prestige: 100"
Auto Assembler Script
[Enable]
{$lua}
getAddressList().getMemoryRecordByDescription("Set Prestige: 500").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 1000").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 1500").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 3500").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 5000").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 9999").Active=false
{$asm}
setPrestige_status:
dd 1
Prestige_value:
dd (float)100
[Disable]
90065
"Set Prestige: 500"
Auto Assembler Script
[Enable]
{$lua}
getAddressList().getMemoryRecordByDescription("Set Prestige: 100").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 1000").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 1500").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 3500").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 5000").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 9999").Active=false
{$asm}
setPrestige_status:
dd 1
Prestige_value:
dd (float)500
[Disable]
90066
"Set Prestige: 1000"
Auto Assembler Script
[Enable]
{$lua}
getAddressList().getMemoryRecordByDescription("Set Prestige: 100").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 500").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 1500").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 3500").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 5000").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 9999").Active=false
{$asm}
setPrestige_status:
dd 1
Prestige_value:
dd (float)1000
[Disable]
90067
"Set Prestige: 1500"
Auto Assembler Script
[Enable]
{$lua}
getAddressList().getMemoryRecordByDescription("Set Prestige: 100").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 500").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 1000").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 3500").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 5000").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 9999").Active=false
{$asm}
setPrestige_status:
dd 1
Prestige_value:
dd (float)1500
[Disable]
90068
"Set Prestige: 3500"
Auto Assembler Script
[Enable]
{$lua}
getAddressList().getMemoryRecordByDescription("Set Prestige: 100").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 500").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 1000").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 1500").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 5000").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 9999").Active=false
{$asm}
setPrestige_status:
dd 1
Prestige_value:
dd (float)3500
[Disable]
90069
"Set Prestige: 5000"
Auto Assembler Script
[Enable]
{$lua}
getAddressList().getMemoryRecordByDescription("Set Prestige: 100").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 500").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 1000").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 1500").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 3500").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 9999").Active=false
{$asm}
setPrestige_status:
dd 1
Prestige_value:
dd (float)5000
[Disable]
90070
"Set Prestige: 9999"
Auto Assembler Script
[Enable]
{$lua}
getAddressList().getMemoryRecordByDescription("Set Prestige: 100").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 500").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 1000").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 1500").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 3500").Active=false
getAddressList().getMemoryRecordByDescription("Set Prestige: 5000").Active=false
{$asm}
setPrestige_status:
dd 1
Prestige_value:
dd (float)99999999
[Disable]
90071
"Mission Time Freeze [Host Only]"
Auto Assembler Script
[ENABLE]
aobscanmodule(aobMissionsTimeFreeze,StateOfDecay2-UWP64-Shipping.exe,F3 0F 11 46 0C 0F)
alloc(newmem,$100,aobMissionsTimeFreeze)
label(code)
label(return)
newmem:
code:
//movss [rsi+0C],xmm0
jmp return
aobMissionsTimeFreeze:
jmp newmem
return:
registersymbol(aobMissionsTimeFreeze)
[DISABLE]
aobMissionsTimeFreeze:
db F3 0F 11 46 0C
unregistersymbol(aobMissionsTimeFreeze)
dealloc(newmem)
90072
"Time Of Day [Local Only]"
Auto Assembler Script
[Enable]
aobscanmodule(tod_aob1,StateOfDecay2-UWP64-Shipping.exe,F3 0F 11 89 1C 01 00 00 72)
alloc(tod_1,32,tod_aob1)
//alloc(newmem,$100,"StateOfDecay2-UWP64-Shipping.exe"+67D1C0)
//aobscanmodule(Day,StateOfDecay2-UWP64-Shipping.exe,F3 0F 11 41 5C 44) -- Total Accumulated Time
//alloc(newmem,$1000,"StateOfDecay2-UWP64-Shipping.exe"+67C989)
//aobscanmodule(INJECT,StateOfDecay2-UWP64-Shipping.exe,F3 0F 11 49 58 48 89) -- Internal Timer?
//alloc(newmem,$1000,"StateOfDecay2-UWP64-Shipping.exe"+67C97C)
registersymbol(tod_aob1)
label(returnhere_tod_1)
label(setTod)
label(setTod_status)
registersymbol(setTod_status)
label(tod_value)
registersymbol(tod_value)
label(freezeTime)
label(freezeTime_status)
registersymbol(freezeTime_status)
tod_1:
cmp [setTod_status],1
je setTod
cmp [freezeTime_status],1
je freezeTime
movss [rcx+11C],xmm1
jmp returnhere_tod_1
setTod_status:
dd 0
setTod:
movss [rcx+11C],xmm1
fld [tod_value]
fstp [rcx+11C]
mov [setTod_status],0
jmp returnhere_tod_1
tod_value:
dd 0
freezeTime:
jmp returnhere_tod_1
freezeTime_status:
dd 0
tod_aob1:
jmp tod_1
nop
nop
nop
returnhere_tod_1:
[Disable]
tod_aob1:
db F3 0F 11 89 1C 01 00 00
unregistersymbol(tod_aob1)
dealloc(tod_1)
unregistersymbol(setTOD_status)
unregistersymbol(tod_value)
unregistersymbol(freezeTime_status)
{$lua}
getAddressList().getMemoryRecordByDescription("Morning Time(06:00H)").Active=false
getAddressList().getMemoryRecordByDescription("Noon Time(12:00H)").Active=false
getAddressList().getMemoryRecordByDescription("Evening Time(18:00H)").Active=false
getAddressList().getMemoryRecordByDescription("Mid Night Time(00:00H)").Active=false
getAddressList().getMemoryRecordByDescription("Freeze Time").Active=false
{$asm}
90073
"Morning Time(06:00H)"
Auto Assembler Script
[Enable]
{$lua}
getAddressList().getMemoryRecordByDescription("Noon Time(12:00H)").Active=false
getAddressList().getMemoryRecordByDescription("Evening Time(18:00H)").Active=false
getAddressList().getMemoryRecordByDescription("Mid Night Time(00:00H)").Active=false
{$asm}
setTod_status:
dd 1
tod_value:
dd (float)600
[Disable]
90074
"Noon Time(12:00H)"
Auto Assembler Script
[Enable]
{$lua}
getAddressList().getMemoryRecordByDescription("Morning Time(06:00H)").Active=false
getAddressList().getMemoryRecordByDescription("Evening Time(18:00H)").Active=false
getAddressList().getMemoryRecordByDescription("Mid Night Time(00:00H)").Active=false
{$asm}
setTod_status:
dd 1
tod_value:
dd (float)1200
[Disable]
90075
"Evening Time(18:00H)"
Auto Assembler Script
[Enable]
{$lua}
getAddressList().getMemoryRecordByDescription("Morning Time(06:00H)").Active=false
getAddressList().getMemoryRecordByDescription("Noon Time(12:00H)").Active=false
getAddressList().getMemoryRecordByDescription("Mid Night Time(00:00H)").Active=false
{$asm}
setTod_status:
dd 1
tod_value:
dd (float)1800
[Disable]
90076
"Mid Night Time(00:00H)"
Auto Assembler Script
[Enable]
{$lua}
getAddressList().getMemoryRecordByDescription("Morning Time(06:00H)").Active=false
getAddressList().getMemoryRecordByDescription("Noon Time(12:00H)").Active=false
getAddressList().getMemoryRecordByDescription("Evening Time(18:00H)").Active=false
{$asm}
setTod_status:
dd 1
tod_value:
dd (float)2400
[Disable]
90077
"Freeze Time"
Auto Assembler Script
[Enable]
freezeTime_status:
dd 1
[Disable]
freezeTime_status:
dd 0
{$lua}
getAddressList().getMemoryRecordByDescription("Morning Time(06:00H)").Active=false
getAddressList().getMemoryRecordByDescription("Noon Time(12:00H)").Active=false
getAddressList().getMemoryRecordByDescription("Evening Time(18:00H)").Active=false
getAddressList().getMemoryRecordByDescription("Mid Night Time(00:00H)").Active=false
{$asm}
90078
"Infestation Count - Host Only (Activate Script Then Go To The Infestation You Want To Change)"
Auto Assembler Script
[Enable]
aobscanmodule(aobInfestationCount,StateOfDecay2-UWP64-Shipping.exe,8B 50 68 44 8B 40 6C)
alloc(infestation_count1,32,aobInfestationCount)
registersymbol(aobInfestationCount)
label(returnhere_infestation_count1)
label(SetInfCount0)
label(SetInfCount1)
label(SetInfCount2)
label(SetInfCount_status)
registersymbol(SetInfCount_status)
label(infcount_value1)
registersymbol(infcount_value1)
label(infcount_value2)
registersymbol(infcount_value2)
infestation_count1:
cmp [SetInfCount_status],0
je SetInfCount0
cmp [SetInfCount_status],1
je SetInfCount1
cmp [SetInfCount_status],2
je SetInfCount2
jmp returnhere_infestation_count1
SetInfCount_status:
dd 0
SetInfCount0:
mov edx,[rax+68]
mov r8d,[rax+6C]
jmp returnhere_infestation_count1
SetInfCount1:
mov edx,[rax+68]
fld [infcount_value1]
fstp [rax+68]
mov r8d,[rax+6C]
fld [infcount_value2]
fstp [rax+6C]
mov [SetInfCount_status],1
jmp returnhere_infestation_count1
SetInfCount2:
mov edx,[rax+68]
fld [infcount_value1]
fstp [rax+68]
mov r8d,[rax+6C]
fld [infcount_value2]
fstp [rax+6C]
mov [SetInfCount_status],2
jmp SetInfCount0
infcount_value1:
dd 0
infcount_value2:
dd 0
aobInfestationCount:
jmp infestation_count1
nop
nop
returnhere_infestation_count1:
[Disable]
aobInfestationCount:
db 8B 50 68 44 8B 40 6C
unregistersymbol(aobInfestationCount)
dealloc(infestation_count1)
unregistersymbol(SetInfCount_status)
unregistersymbol(infcount_value1)
unregistersymbol(infcount_value2)
{$lua}
getAddressList().getMemoryRecordByDescription("1 - Kill 1 Zombie to clear infestation.").Active=false
getAddressList().getMemoryRecordByDescription("99 - Zombies").Active=false
{$asm}
90079
"1 - Kill 1 Zombie to clear infestation."
Auto Assembler Script
[Enable]
{$lua}
getAddressList().getMemoryRecordByDescription("99 - Zombies").Active=false
{$asm}
SetInfCount_status:
dd 2
infcount_value1:
dd #1
infcount_value2:
dd #0
[Disable]
SetInfCount_status:
dd 0
90080
"99 - Zombies"
Auto Assembler Script
[Enable]
{$lua}
getAddressList().getMemoryRecordByDescription("1 - Kill 1 Zombie to clear infestation.").Active=false
{$asm}
SetInfCount_status:
dd 1
infcount_value1:
dd #99 //Zombies
infcount_value2:
dd #0 // Screamers
[Disable]
SetInfCount_status:
dd 0
88884
"[Teleport Save/Load/Undo]"
400080
Auto Assembler Script
[Enable]
aobscanmodule(_AobTeleport,StateOfDecay2-UWP64-Shipping.exe,05 00 00 49 8B 85 B0 01 00 00 48 85 C0 74 2A 0F 28 88 70 01 00 00)
alloc(newmem,$1000,_AobTeleport)
alloc(TeleportBase,256)
label(code)
label(return)
label(XCord)
label(YCord)
label(ZCord)
label(XCord_Undo)
label(YCord_Undo)
label(ZCord_Undo)
label(Load)
label(Save)
label(Undo)
label(SaveCords)
label(LoadCords)
label(Undo_Teleport)
registersymbol(_AobTeleport)
registersymbol(XCord)
registersymbol(YCord)
registersymbol(ZCord)
registersymbol(XCord_Undo)
registersymbol(YCord_Undo)
registersymbol(ZCord_Undo)
registersymbol(SaveCords)
registersymbol(LoadCords)
registersymbol(Undo_Teleport)
TeleportBase:
XCord:
dd 0
YCord:
dd 0
ZCord:
dd 0
XCord_Undo:
dd 0
YCord_Undo:
dd 0
ZCord_Undo:
dd 0
SaveCords:
dd 0
LoadCords:
dd 0
Undo_Teleport:
dd 0
newmem:
cmp byte ptr [rax+108],#5
jne code
cmp byte ptr [SaveCords],1
je Save
cmp byte ptr [LoadCords],1
je Load
cmp byte ptr [Undo_Teleport],1
je Undo
jmp code
Save:
mov byte ptr [SaveCords],0
movss xmm4,[rax+170]
movss [XCord],xmm4
movss xmm4,[rax+174]
movss [YCord],xmm4
movss xmm4,[rax+178]
movss [ZCord],xmm4
jmp code
Load:
mov byte ptr [LoadCords],0
movss xmm5,[rax+170]
movss [XCord_Undo],xmm5
movss xmm5,[rax+174]
movss [YCord_Undo],xmm5
movss xmm5,[rax+178]
movss [ZCord_Undo],xmm5
movss xmm4,[XCord]
movss [rax+170],xmm4
movss xmm4,[YCord]
movss [rax+174],xmm4
movss xmm4,[ZCord]
movss [rax+178],xmm4
jmp code
Undo:
mov byte ptr [Undo_Teleport],0
movss xmm4,[XCord_Undo]
movss [rax+170],xmm4
movss xmm4,[YCord_Undo]
movss [rax+174],xmm4
movss xmm4,[ZCord_Undo]
movss [rax+178],xmm4
jmp code
code:
movaps xmm1,[rax+00000170]
jmp return
_AobTeleport+0F:
jmp newmem
nop
nop
return:
[Disable]
_AobTeleport+0F:
db 0F 28 88 70 01 00 00
unregistersymbol(_AobTeleport)
unregistersymbol(XCord)
unregistersymbol(YCord)
unregistersymbol(ZCord)
unregistersymbol(XCord_Undo)
unregistersymbol(YCord_Undo)
unregistersymbol(ZCord_Undo)
unregistersymbol(SaveCords)
unregistersymbol(LoadCords)
unregistersymbol(Undo_Teleport)
dealloc(TeleportBase)
dealloc(newmem)
88885
"Save - [Ctrl + Numpad 7]"
Byte
SaveCords
Set Value
17
103
1
0
Activate
88886
"Load - [Ctrl + Numpad 8]"
Byte
LoadCords
Set Value
17
104
1
0
Activate
88887
"Undo - [Ctrl + Numpad 9]"
Byte
Undo_Teleport
Set Value
17
105
1
0
Activate
88888
"[Inventory Management]"
808000
1
90081
"Massive Items - Highlight the item you want to be 999 then reopen inventory."
Auto Assembler Script
[ENABLE]
{$lua}
getAddressList().getMemoryRecordByDescription("Minimum Items - Highlight the item you want to be x1 then reopen inventory.").Active=false
{$asm}
aobscanmodule(aobItems,StateOfDecay2-UWP64-Shipping.exe,66 0F 6E 00 0F 5B C0 ?? ?? ?? ?? ?? ?? ?? ?? 48 8B 5C 24 38)
alloc(newmem,$100,aobItems)
label(code)
label(return)
newmem:
code:
mov [rax],#999
movd xmm0,[rax]
cvtdq2ps xmm0,xmm0
jmp return
aobItems:
jmp newmem
nop
nop
return:
registersymbol(aobItems)
[DISABLE]
aobItems:
db 66 0F 6E 00 0F 5B C0
unregistersymbol(aobItems)
dealloc(newmem)
Toggle Activation
34
0
90017
"Minimum Items - Highlight the item you want to be x1 then reopen inventory."
Auto Assembler Script
[ENABLE]
{$lua}
getAddressList().getMemoryRecordByDescription("Massive Items - Highlight the item you want to be 999 then reopen inventory.").Active=false
{$asm}
aobscanmodule(aobItems,StateOfDecay2-UWP64-Shipping.exe,66 0F 6E 00 0F 5B C0 ?? ?? ?? ?? ?? ?? ?? ?? 48 8B 5C 24 38)
alloc(newmem,$100,aobItems)
label(code)
label(return)
newmem:
code:
mov [rax],#1
movd xmm0,[rax]
cvtdq2ps xmm0,xmm0
jmp return
aobItems:
jmp newmem
nop
nop
return:
registersymbol(aobItems)
[DISABLE]
aobItems:
db 66 0F 6E 00 0F 5B C0
unregistersymbol(aobItems)
dealloc(newmem)
Toggle Activation
34
0
90082
"Swap Item IDs"
000000
1
90083
"------------------------------------------------------------------------------------------------------"
C0C0C0
1
90084
"Tutorial: https://youtu.be/OlW7YRqxYBU"
408000
1
90085
"DO NOT change empty IDs (00000000) as they have not generated a slot ID etc yet."
0000FF
1
90086
"Only Paste Into Backpack (5-10) for duping to reduce crashes."
408000
1
90015
"Drop the weapon on the ground to generate its own id."
408000
1
90087
"------------------------------------------------------------------------------------------------------"
C0C0C0
1
90847
"Held Inventory - (Activate scripts then move something in your inventory.)"
1
90848
"Equipment"
FF0000
Auto Assembler Script
[ENABLE]
aobscanmodule(equipment_aob,StateOfDecay2-UWP64-Shipping.exe,4C 89 34 D9 49 8D 4F 50)
alloc(newmem,$1000,StateOfDecay2-UWP64-Shipping.exe)
registersymbol(equipment_aob)
registersymbol(equipment_ptr)
label(code)
label(return)
label(equipment_ptr)
newmem:
mov [equipment_ptr],rcx
jmp code
code:
mov [rcx+rbx*8],r14
lea rcx,[r15+50]
jmp return
equipment_ptr:
dq 0
equipment_aob:
jmp newmem
nop
nop
nop
return:
[DISABLE]
equipment_aob:
db 4C 89 34 D9 49 8D 4F 50
unregistersymbol(equipment_aob)
unregistersymbol(equipment_ptr)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: "StateOfDecay2-UWP64-Shipping.exe"+51D7B0
"StateOfDecay2-UWP64-Shipping.exe"+51D78B: C3 - ret
"StateOfDecay2-UWP64-Shipping.exe"+51D78C: 0F B6 54 24 60 - movzx edx,byte ptr [rsp+60]
"StateOfDecay2-UWP64-Shipping.exe"+51D791: 49 8B CF - mov rcx,r15
"StateOfDecay2-UWP64-Shipping.exe"+51D794: 48 89 7C 24 38 - mov [rsp+38],rdi
"StateOfDecay2-UWP64-Shipping.exe"+51D799: E8 A2 DE FE FF - call StateOfDecay2-UWP64-Shipping.exe+50B640
"StateOfDecay2-UWP64-Shipping.exe"+51D79E: 49 8B 4F 38 - mov rcx,[r15+38]
"StateOfDecay2-UWP64-Shipping.exe"+51D7A2: 4D 8B C6 - mov r8,r14
"StateOfDecay2-UWP64-Shipping.exe"+51D7A5: 0F B6 5C 24 60 - movzx ebx,byte ptr [rsp+60]
"StateOfDecay2-UWP64-Shipping.exe"+51D7AA: 48 8B F8 - mov rdi,rax
"StateOfDecay2-UWP64-Shipping.exe"+51D7AD: 0F B6 D3 - movzx edx,bl
// ---------- INJECTING HERE ----------
"StateOfDecay2-UWP64-Shipping.exe"+51D7B0: 4C 89 34 D9 - mov [rcx+rbx*8],r14
"StateOfDecay2-UWP64-Shipping.exe"+51D7B4: 49 8D 4F 50 - lea rcx,[r15+50]
// ---------- DONE INJECTING ----------
"StateOfDecay2-UWP64-Shipping.exe"+51D7B8: E8 F3 EC FD FF - call StateOfDecay2-UWP64-Shipping.exe+4FC4B0
"StateOfDecay2-UWP64-Shipping.exe"+51D7BD: 49 8D 4F 28 - lea rcx,[r15+28]
"StateOfDecay2-UWP64-Shipping.exe"+51D7C1: 88 5C 24 20 - mov [rsp+20],bl
"StateOfDecay2-UWP64-Shipping.exe"+51D7C5: 48 8D 54 24 20 - lea rdx,[rsp+20]
"StateOfDecay2-UWP64-Shipping.exe"+51D7CA: 4C 89 74 24 28 - mov [rsp+28],r14
"StateOfDecay2-UWP64-Shipping.exe"+51D7CF: E8 8C 0A CA FF - call StateOfDecay2-UWP64-Shipping.exe+1BE260
"StateOfDecay2-UWP64-Shipping.exe"+51D7D4: 41 B1 05 - mov r9l,05
"StateOfDecay2-UWP64-Shipping.exe"+51D7D7: 4C 8B C7 - mov r8,rdi
"StateOfDecay2-UWP64-Shipping.exe"+51D7DA: 8B D6 - mov edx,esi
"StateOfDecay2-UWP64-Shipping.exe"+51D7DC: 48 8B CD - mov rcx,rbp
}
90849
"Combat"
0:Empty
00000000:Empty
1
4 Bytes
equipment_ptr
18
90850
"Melee"
0:Empty
00000000:Empty
1
4 Bytes
equipment_ptr
0
90851
"Ranged"
0:Empty
00000000:Empty
1
4 Bytes
equipment_ptr
8
90852
"Rucksack"
0:Empty
00000000:Empty
1
4 Bytes
equipment_ptr
10
90853
"Backpack"
0:Empty
00000000:Empty
1
4 Bytes
equipment_ptr
20
90854
"Slots (1 - 12)"
00BB00
Auto Assembler Script
[ENABLE]
aobscanmodule(aob_inventory,StateOfDecay2-UWP64-Shipping.exe,49 8B 1C 06 48 85 DB 74 6F)
alloc(newmem_inventory,1024,StateOfDecay2-UWP64-Shipping.exe)
registersymbol(aob_inventory)
registersymbol(ptr_inventory)
label(quit_inventory)
label(return_inventory)
label(ptr_inventory)
newmem_inventory:
push rax
mov [ptr_inventory],rax
jmp quit_inventory
quit_inventory:
pop rax
mov rbx,[r14+rax]
test rbx,rbx
jmp return_inventory
ptr_inventory:
dq 0
aob_inventory:
jmp newmem_inventory
nop
nop
return_inventory:
[DISABLE]
aob_inventory:
db 49 8B 1C 06 48 85 DB
unregistersymbol(aob_inventory)
unregistersymbol(ptr_inventory)
dealloc(newmem_inventory)
{
// ORIGINAL CODE - INJECTION POINT: "StateOfDecay2-UWP64-Shipping.exe"+515873
"StateOfDecay2-UWP64-Shipping.exe"+515853: 24 18 - and al,18
"StateOfDecay2-UWP64-Shipping.exe"+515855: 55 - push rbp
"StateOfDecay2-UWP64-Shipping.exe"+515856: 56 - push rsi
"StateOfDecay2-UWP64-Shipping.exe"+515857: 41 56 - push r14
"StateOfDecay2-UWP64-Shipping.exe"+515859: 48 83 EC 40 - sub rsp,40
"StateOfDecay2-UWP64-Shipping.exe"+51585D: 48 63 C2 - movsxd rax,edx
"StateOfDecay2-UWP64-Shipping.exe"+515860: 41 0F B6 E8 - movzx ebp,r8l
"StateOfDecay2-UWP64-Shipping.exe"+515864: 48 8B F1 - mov rsi,rcx
"StateOfDecay2-UWP64-Shipping.exe"+515867: 4C 8D 34 C5 00 00 00 00 - lea r14,[rax*8+00000000]
"StateOfDecay2-UWP64-Shipping.exe"+51586F: 48 8B 41 68 - mov rax,[rcx+68]
// ---------- INJECTING HERE ----------
"StateOfDecay2-UWP64-Shipping.exe"+515873: 49 8B 1C 06 - mov rbx,[r14+rax]
"StateOfDecay2-UWP64-Shipping.exe"+515877: 48 85 DB - test rbx,rbx
// ---------- DONE INJECTING ----------
"StateOfDecay2-UWP64-Shipping.exe"+51587A: 74 6F - je StateOfDecay2-UWP64-Shipping.exe+5158EB
"StateOfDecay2-UWP64-Shipping.exe"+51587C: 48 8B 03 - mov rax,[rbx]
"StateOfDecay2-UWP64-Shipping.exe"+51587F: 48 8B CB - mov rcx,rbx
"StateOfDecay2-UWP64-Shipping.exe"+515882: 48 89 7C 24 68 - mov [rsp+68],rdi
"StateOfDecay2-UWP64-Shipping.exe"+515887: FF 90 08 02 00 00 - call qword ptr [rax+00000208]
"StateOfDecay2-UWP64-Shipping.exe"+51588D: 48 85 C0 - test rax,rax
"StateOfDecay2-UWP64-Shipping.exe"+515890: 74 04 - je StateOfDecay2-UWP64-Shipping.exe+515896
"StateOfDecay2-UWP64-Shipping.exe"+515892: 8B 38 - mov edi,[rax]
"StateOfDecay2-UWP64-Shipping.exe"+515894: EB 05 - jmp StateOfDecay2-UWP64-Shipping.exe+51589B
"StateOfDecay2-UWP64-Shipping.exe"+515896: BF 01 00 00 00 - mov edi,00000001
}
90855
"Pockets (1-4)"
1
90856
"Slot 1"
0:Empty
00000000:Empty
1
4 Bytes
ptr_inventory
0
90857
"Slot 2"
0:Empty
00000000:Empty
1
4 Bytes
ptr_inventory
8
90858
"Slot 3"
0:Empty
00000000:Empty
1
4 Bytes
ptr_inventory
10
90859
"Slot 4"
0:Empty
00000000:Empty
1
4 Bytes
ptr_inventory
18
90860
"Backpack (5-8)"
1
90861
"Slot 5"
0:Empty
00000000:Empty
1
4 Bytes
ptr_inventory
20
90862
"Slot 6"
0:Empty
00000000:Empty
1
4 Bytes
ptr_inventory
28
90863
"Slot 7"
0:Empty
00000000:Empty
1
4 Bytes
ptr_inventory
30
90864
"Slot 8"
0:Empty
00000000:Empty
1
4 Bytes
ptr_inventory
38
90865
"Backpack (9 - 10)"
1
90866
"Slot 9"
0:Empty
00000000:Empty
1
4 Bytes
ptr_inventory
40
90867
"Slot 10"
0:Empty
00000000:Empty
1
4 Bytes
ptr_inventory
48
90868
"Backpack (11 - 12)"
1
90869
"Slot 11"
0:Empty
00000000:Empty
1
4 Bytes
ptr_inventory
50
90870
"Slot 12"
0:Empty
00000000:Empty
1
4 Bytes
ptr_inventory
58
88915
"[Weapon Stats] (WIP) - Use to see difference. (Does not stick)"
0000FF
1
90932
"Ranged"
1
90094
"Max Fire Rate"
Auto Assembler Script
[ENABLE]
aobscanmodule(aobROF1,StateOfDecay2-UWP64-Shipping.exe,8B 87 8C 00 00 00 EB 53)
alloc(newmemROF1,$100,aobROF1)
label(codeROF1)
label(returnROF1)
newmemROF1:
codeROF1:
mov [rdi+0000008C],(float)8000
mov eax,[rdi+0000008C]
jmp returnROF1
aobROF1:
jmp newmemROF1
nop
returnROF1:
registersymbol(aobROF1)
// Rate Of Fire 2 //
aobscanmodule(aobROF2,StateOfDecay2-UWP64-Shipping.exe,8B 81 C4 00 00 00 41)
alloc(newmemROF2,$100,aobROF2)
label(codeROF2)
label(returnROF2)
newmemROF2:
codeROF2:
mov [rcx+000000C4],(float)8000
mov eax,[rcx+000000C4]
jmp returnROF2
aobROF2:
jmp newmemROF2
nop
returnROF2:
registersymbol(aobROF2)
[DISABLE]
aobROF1:
db 8B 87 8C 00 00 00
unregistersymbol(aobROF1)
dealloc(newmemROF1)
aobROF2:
db 8B 81 C4 00 00 00
unregistersymbol(aobROF2)
dealloc(newmemROF2)
90097
"Max Power"
Auto Assembler Script
[ENABLE]
// Power 1 //
aobscanmodule(aob_power_stat1,StateOfDecay2-UWP64-Shipping.exe,F3 0F 10 86 AC 01 00 00)
alloc(newmem1,$100,aob_power_stat1)
label(code1)
label(return1)
newmem1:
cmp byte ptr[rsi+90],#99 //#204 = Enemy
je power_player1
jmp code1
power_player1:
mov [rsi+1AC],(float)999999
code1:
movss xmm0,[rsi+1AC]
jmp return1
aob_power_stat1:
jmp newmem1
nop
nop
nop
return1:
registersymbol(aob_power_stat1)
// Power 2 //
aobscanmodule(aob_power_stat2,StateOfDecay2-UWP64-Shipping.exe,8B 87 74 01 00 00 89 43 24)
alloc(newmem2,$100,aob_power_stat2)
label(code2)
label(return2)
newmem2:
mov [rdi+00000174],(float)999999
code2:
mov eax,[rdi+00000174]
jmp return2
aob_power_stat2:
jmp newmem2
nop
return2:
registersymbol(aob_power_stat2)
[DISABLE]
// Power 1 //
aob_power_stat1:
db F3 0F 10 86 AC 01 00 00
unregistersymbol(aob_power_stat1)
dealloc(newmem1)
// Power 2 //
aob_power_stat2:
db 8B 87 74 01 00 00
unregistersymbol(aob_power_stat2)
dealloc(newmem2)
90098
"Max Quietness (Ranged)"
Auto Assembler Script
[ENABLE]
// Quietness 1 //
aobscanmodule(aob_quietness_stat1,StateOfDecay2-UWP64-Shipping.exe,8B 81 54 02 00 00 41)
alloc(newmem1,$100,aob_quietness_stat1)
label(code1)
label(return1)
newmem1:
code1:
mov [rcx+00000254],(float)0
mov eax,[rcx+00000254]
jmp return1
aob_quietness_stat1:
jmp newmem1
nop
return1:
registersymbol(aob_quietness_stat1)
// Quietness 2 //
aobscanmodule(aob_quietness_stat2,StateOfDecay2-UWP64-Shipping.exe,8B 87 1C 02 00 00 89 43)
alloc(newmem2,$100,aob_quietness_stat2)
label(code2)
label(return2)
newmem2:
code2:
mov [rdi+0000021C],(float)0
mov eax,[rdi+0000021C]
jmp return2
aob_quietness_stat2:
jmp newmem2
nop
return2:
registersymbol(aob_quietness_stat2)
[DISABLE]
// Quietness 1 //
aob_quietness_stat1:
db 8B 81 54 02 00 00
unregistersymbol(aob_quietness_stat1)
dealloc(newmem1)
// Quietness 2 //
aob_quietness_stat2:
db 8B 87 1C 02 00 00
unregistersymbol(aob_quietness_stat2)
dealloc(newmem2)
90931
"Max Range"
Auto Assembler Script
[ENABLE]
// Range Stat 1 //
aobscanmodule(aob_range_stat1,StateOfDecay2-UWP64-Shipping.exe,8B 81 F4 01 00 00 41 89 00)
alloc(newmem1,$100,aob_range_stat1)
label(code1)
label(return1)
newmem1:
code1:
mov [rcx+000001F4],(float)999999
mov eax,[rcx+000001F4]
jmp return1
aob_range_stat1:
jmp newmem1
nop
return1:
registersymbol(aob_range_stat1)
// Range Stat 2 //
aobscanmodule(aob_range_stat2,StateOfDecay2-UWP64-Shipping.exe,F3 0F 10 86 F4 01 00 00 F3 44 0F 10)
alloc(newmem2,$100,aob_range_stat2)
label(code2)
label(return2)
newmem2:
code2:
mov [rsi+000001F4],(float)999999
movss xmm0,[rsi+000001F4]
jmp return2
aob_range_stat2:
jmp newmem2
nop
nop
nop
return2:
registersymbol(aob_range_stat2)
[DISABLE]
// Range Stat 1 //
aob_range_stat1:
db 8B 81 F4 01 00 00
unregistersymbol(aob_range_stat1)
dealloc(newmem1)
// Range Stat 2 //
aob_range_stat2:
db F3 0F 10 86 F4 01 00 00
unregistersymbol(aob_range_stat2)
dealloc(newmem2)
90943
"Melee Stats"
Auto Assembler Script
[ENABLE]
aobscanmodule(aob_melee_stats1,StateOfDecay2-UWP64-Shipping.exe,8B 48 34 41 89 08)
alloc(newmem1,1024,StateOfDecay2-UWP64-Shipping.exe)
label(code1)
label(return1)
label(Dismember1)
label(Impact1)
label(Knockdown1)
label(Lethality1)
label(Quietness1)
label(Speed1)
label(Ease_Of_Use1)
newmem1:
cmp byte ptr [rax+A20],#64 //0 = Enemy
je Dismember_Code1
jmp code1
Dismember_Code1:
cmp [Dismember1],0
je Impact_Code1
mov [rax+30],(float)999999
mov [rax+34],(float)999999
Impact_Code1:
cmp [Impact1],0
je Knockdown_Code1
mov [rax+40],(float)999999
mov [rax+44],(float)999999
Knockdown_Code1:
cmp [Knockdown1],0
je Lethality_Code1
mov [rax+50],(float)999999
mov [rax+54],(float)999999
Lethality_Code1:
cmp [Lethality1],0
je Quietness_Code1
mov [rax+60],(float)999999
mov [rax+64],(float)999999
Quietness_Code1:
cmp [Quietness1],0
je Speed_Code1
mov [rax+78],(float)0
mov [rax+7C],(float)0
Speed_Code1:
cmp [Speed1],0
je Ease_Of_Use_Code1
mov [rax+80],(float)999999
mov [rax+84],(float)999999
Ease_Of_Use_Code1:
cmp [Ease_Of_Use1],0
je code1
mov [rax+88],(float)0
mov [rax+8C],(float)0
code1:
mov ecx,[rax+34]
mov [r8],ecx
jmp return1
Dismember1:
dd 0
Impact1:
dd 0
Knockdown1:
dd 0
Lethality1:
dd 0
Quietness1:
dd 0
Speed1:
dd 0
Ease_Of_Use1:
dd 0
aob_melee_stats1:
jmp newmem1
nop
return1:
registersymbol(aob_melee_stats1)
registersymbol(Dismember1)
registersymbol(Impact1)
registersymbol(Knockdown1)
registersymbol(Lethality1)
registersymbol(Quietness1)
registersymbol(Speed1)
registersymbol(Ease_Of_Use1)
[DISABLE]
// Stat 1 //
aob_melee_stats1:
db 8B 48 34 41 89 08
unregistersymbol(aob_melee_stats1)
unregistersymbol(Dismember1)
unregistersymbol(Impact1)
unregistersymbol(Knockdown1)
unregistersymbol(Lethality1)
unregistersymbol(Quietness1)
unregistersymbol(Speed1)
unregistersymbol(Ease_Of_Use1)
dealloc(newmem1)
{$lua}
getAddressList().getMemoryRecordByDescription("Max Dismember").Active=false
getAddressList().getMemoryRecordByDescription("Max Impact").Active=false
getAddressList().getMemoryRecordByDescription("Max Knockdown").Active=false
getAddressList().getMemoryRecordByDescription("Max Lethality").Active=false
getAddressList().getMemoryRecordByDescription("Max Quietness (Melee)").Active=false
getAddressList().getMemoryRecordByDescription("Max Speed").Active=false
getAddressList().getMemoryRecordByDescription("Max Ease Of Use").Active=false
{$asm}
90939
"Max Dismember"
Auto Assembler Script
[ENABLE]
Dismember1:
dd 1
[DISABLE]
Dismember1:
dd 0
90944
"Max Impact"
Auto Assembler Script
[ENABLE]
Impact1:
dd 1
[DISABLE]
Impact1:
dd 0
90945
"Max Knockdown"
Auto Assembler Script
[ENABLE]
Knockdown1:
dd 1
[DISABLE]
Knockdown1:
dd 0
90946
"Max Lethality"
Auto Assembler Script
[ENABLE]
Lethality1:
dd 1
[DISABLE]
Lethality1:
dd 0
90947
"Max Quietness (Melee)"
Auto Assembler Script
[ENABLE]
Quietness1:
dd 1
[DISABLE]
Quietness1:
dd 0
90948
"Max Speed"
Auto Assembler Script
[ENABLE]
Speed1:
dd 1
[DISABLE]
Speed1:
dd 0
90949
"Max Ease Of Use"
Auto Assembler Script
[ENABLE]
Ease_Of_Use1:
dd 1
[DISABLE]
Ease_Of_Use1:
dd 0
90137
"[Daybreak - DLC]"
1
90176
"Unlimited Wall Health (Activate At Start of Game)"
Auto Assembler Script
[ENABLE]
aobscanmodule(aob_walls,StateOfDecay2-UWP64-Shipping.exe,8B 81 F0 03 00 00 48 8B F2 48 89 7C)
alloc(newmem,$100,aob_walls)
label(code)
label(return)
newmem:
code:
mov [rcx+000003F0],#5
mov eax,[rcx+000003F0]
jmp return
aob_walls:
jmp newmem
nop
return:
registersymbol(aob_walls)
[DISABLE]
aob_walls:
db 8B 81 F0 03 00 00
unregistersymbol(aob_walls)
dealloc(newmem)
88960
"| Notes / Info / Hotkeys |"
4080FF
Auto Assembler Script
[ENABLE]
{$lua}
Information.Show()
[DISABLE]
{$lua}
Information.Hide()
Change of sub rsp,20
StateOfDecay2-UWP64-Shipping.exe+45125F
89
5C
24
18
56
48
83
EC
20
E9
98
ED
B9
FF
Change of subss xmm0,xmm1
StateOfDecay2-UWP64-Shipping.exe+501A58
41
0F
10
46
50
F3
0F
5C
C1
F3
41
0F
11
46
Change of sub rdx,r8
StateOfDecay2-UWP64-Shipping.exe+DF2655
45
85
C9
74
1F
49
2B
D0
0F
1F
84
00
00
Change of sub r9d,01
StateOfDecay2-UWP64-Shipping.exe+DF266E
0F
11
44
02
F0
41
83
E9
01
75
EC
B0
01
C3
Change of sub eax,edx
StateOfDecay2-UWP64-Shipping.exe+51F650
D9
3B
C2
7C
23
2B
C2
48
8D
54
24
38
Change of movss [rdx],xmm2
StateOfDecay2-UWP64-Shipping.exe+26C56B
74
57
45
84
C9
F3
0F
11
12
48
89
74
24
40
Change of addss xmm0,dword ptr [rax+04]
StateOfDecay2-UWP64-Shipping.exe+25190A
F3
0F
10
40
08
F3
0F
58
40
04
F3
0F
5F
C1
C3
Change of movss xmm5,[rdx+r9+04]
StateOfDecay2-UWP64-Shipping.exe+209C243
C8
48
6B
C1
1C
F3
42
0F
10
6C
0A
04
F3
42
0F
10
44
Change of movss xmm0,[rax+r9+04]
StateOfDecay2-UWP64-Shipping.exe+209C24A
0F
10
6C
0A
04
F3
42
0F
10
44
08
04
F3
0F
5C
E8
0F
Change of movss xmm2,[rax+r9+08]
StateOfDecay2-UWP64-Shipping.exe+209C26C
84
AD
00
00
00
F3
42
0F
10
54
08
08
F3
0F
5C
E0
F3
Change of movss xmm6,[rdx+r9+08]
StateOfDecay2-UWP64-Shipping.exe+209C277
08
F3
0F
5C
E0
F3
42
0F
10
74
0A
08
F3
0F
5E
E5
84
Change of mulss xmm0,[rdx+r9+0C]
StateOfDecay2-UWP64-Shipping.exe+209C29D
28
DE
0F
28
C5
F3
42
0F
59
44
0A
0C
F3
42
0F
59
6C
newmem2
00620010
messageRepoP
140E1683C
newmem69
006A0000
myoffset3
00630060
myoffset6
00630000
AutoPilotAdr2Backup
13FFF0000
myoffset2
00630070
myoffset4
00630050
myoffset5
00630040
lameoffset
00630030
lameoffset1337
00640000
offsetsforfags6
00630010
WalkingAnimationsSpeed
1410B555C
valueTargetMem
00610020
randomvalue
00670000
Time
00620000
XC
950
-- Auto Attach
function ShowFileInfo()
ExePath = enumModules()[1].PathToFile
FileVer, FileVerTable = getFileVersion(ExePath)
print('ExePath = '..ExePath)
print('FileVer = '..FileVer)
print('FileVerTable.major = '..FileVerTable.major)
print('FileVerTable.minor = '..FileVerTable.minor)
print('FileVerTable.release = '..FileVerTable.release)
print('FileVerTable.build = '..FileVerTable.build)
print('version = '..FileVerTable.major..'.'..FileVerTable.minor..'.'..
FileVerTable.release..'.'..FileVerTable.build)
end
-- form
local Trainer_SoD2 = { }
-- process
local process_name = "StateOfDecay2-UWP64-Shipping.exe";
----------------------------------------------------------------------------------
-- func: Trainer_SoD2.Main( .. )
-- desc: Prepares script for overall actions.
----------------------------------------------------------------------------------
function Trainer_SoD2.Main( )
-- =========== Other =========== --
Trainer_SoD2.process_checker = InitTimer( Trainer_SoD2.main_panel, 1000, false, process_checker )
return true;
end
--================================================================================
-- CUSTOM FUNCTIONS --
--================================================================================
function InitTimer( owner, tickRate, status, func )
timer = createTimer( owner )
if( timer == nil ) then
return nil;
end
timer_setInterval( timer, tickRate )
timer_onTimer( timer, func )
timer_setEnabled( timer, status )
return timer;
end
--================================================================================
-- TIMERS --
--================================================================================
function process_checker(t)
status = readInteger( process_name )
if status == nil then
openProcess(process_name)
getAddressList().getMemoryRecordByDescription("| State of Decay 2 - v1.3368.2.2 |").Active=false
else
getAddressList().getMemoryRecordByDescription("| State of Decay 2 - v1.3368.2.2 |").Active=true
end
end
--================================================================================
-- EVENTS --
--================================================================================
function onOpenProcess()
end
function closeCleanup(sender)
closeCE()
return caFree
end
--================================================================================
----------------------------- Start execution --------------------------------
Trainer_SoD2.Main();
timer_setEnabled( Trainer_SoD2.process_checker, true ) -- timer...
-- End Of Auto Attach
"StateOfDecay2-UWP64-Shipping.exe"+486F49
dont touch
"StateOfDecay2-UWP64-Shipping.exe"+486F54
Resource Check
"StateOfDecay2-UWP64-Shipping.exe"+486F70
nothign
"StateOfDecay2-UWP64-Shipping.exe"+486F75
nothing
"StateOfDecay2-UWP64-Shipping.exe"+486F7E
requirement not met
"StateOfDecay2-UWP64-Shipping.exe"+486F9A
requirement not met
"StateOfDecay2-UWP64-Shipping.exe"+486FB4
requirement not met
"StateOfDecay2-UWP64-Shipping.exe"+486FB9
don't know the differences
"StateOfDecay2-UWP64-Shipping.exe"+486FC2
requriement not met
"StateOfDecay2-UWP64-Shipping.exe"+486FCA
requriement not met
"StateOfDecay2-UWP64-Shipping.exe"+486FD0
!!!!!!
"StateOfDecay2-UWP64-Shipping.exe"+486FD3
material requirement
"StateOfDecay2-UWP64-Shipping.exe"+486FEF
requiement not met
"StateOfDecay2-UWP64-Shipping.exe"+487001
here
"StateOfDecay2-UWP64-Shipping.exe"+4FF860
All_Ammo
"StateOfDecay2-UWP64-Shipping.exe"+632CF0
Recoil