From 8e624e4a5a9400c9bcc9e999ab276333845accaa Mon Sep 17 00:00:00 2001 From: empathicqubit Date: Mon, 19 Apr 2021 08:29:52 -0400 Subject: [PATCH] Initial commit --- .gitignore | 1 + Gameloop.Vdf.dll | Bin 0 -> 43008 bytes create.ps1 | 141 ++++++++++++++++++++++++++++++++++++++++ drop exe files here.bat | 1 + 4 files changed, 143 insertions(+) create mode 100644 .gitignore create mode 100644 Gameloop.Vdf.dll create mode 100644 create.ps1 create mode 100644 drop exe files here.bat diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..3e3b88c --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +*.lnk \ No newline at end of file diff --git a/Gameloop.Vdf.dll b/Gameloop.Vdf.dll new file mode 100644 index 0000000000000000000000000000000000000000..95cfd5906c25a5be672acf8992758e82f8b1f560 GIT binary patch literal 43008 zcmeIb3w%`7)i=D(IWuRjNhTMP5E3#W2^~WcfdGO&zFbv56qahP#5(GkU zB5JXU)uL9bw18-<)jqXaTW@{93$?9Ut=gNHg11(yt$n;(#qYn?K4)eU(Dv)se(&%7 zz3;%Rz1L;0z4qFBuf5Mc=S=3FemNOL1n5>j|!o1mnG3!Dv@-=KMv$^|6jfeO8vY%2K_cnP`q? z&_%cX@g}>rLo_Pr)5a2g6BM_izIY$fAin$YB??GhS9UXj?N=X-2z34!wCX|@<^So_ zLYaimWzajHGy91arbo5qAThol&s9C$g~zc=0X(@T9Gl z-N57%BwAG;PsH1SiEaClG4b7vZ^majx~o1O>5M^;ZKXr_vaXazk;i8`(G1CCfCt#G z_^@p{IqAMxL=V9*c=2EQjMPKN5qWFQRHMvs_Hztw9^ukbi5u4!GEC~fSUZV2AzNw!l+!m&KF18ov4B3n}bYC zj6pV33y`P-@EVCxC}rxQN={<+pw-y=a#`ObJ#jpUMkt>#n(5H*SE}?-6$_5i zjSvR9mz(IajKzp|Fr!~GV0dhTWI*uR1j(SXFF;qQj1^v{hsHr4O0zn>Ff;;Gy&yE4 zlcG=&%goY4B}hvfv>H7YWXd$XG*gi67nR&-?lMcIkLx8GF;=Gv_zqo`Yv_GUO-zEM z*I~vEAbr7W*1}2fi}yK*lZN@HQxi0htb`M0^~Pa zB;OzsTR*)1W!(%_Bj?Mk&xH!@`lifM^>JUXMSU17xkjuQMG6u>1oRq5*JqJ3>oa0j zeJWGbkZ&q2iD#fBb|=7?EE63$+D6S9;yTYoofvt!iR~Gcos!WKOLIzL=vmfqZAu}x zE_MyTXIfRp$353eP&Hb0yEL9Stv<$Q9nY10|`c=qb9Da3=&KS z2NLv=Lv=LfhDmq9c7&STa$j*`0u)w1aV7*p6Om2A#g1SS0z2lz*-4BP3q6%l%&|-q zHaH5sV~Vyi-Q3EkX+Bx)+vVD27A^CdXNjh>#{Z$vKW55SR_!hfVKjNO6jCHezGEv_ z<0-mc^muX|yF^v4!?Vj>w9M}o;ldcEw0Hd7HK*#Lb%I+;=~vVg+N2Y7y+%~%I|q^2 zE|4an8)fA4c!V+NM+dD&>VhwHhs-f!&~(O3Lzr;rK^|T^*aQ8D7>vWC3P-eX=z3wb zw;xm8VfI5eW@bMo6({I3PS9&Sx7ha$m{^$mxzZhGonBaDNly-dqxXsaKGw3+tM_ri z+B41ata_(e?rjKJx^%sd>n+s#xSqshI7S75;WE>UY7`%0%=fv9mWe?wa~DXg8w5@! zUypF8_pz0ACo18(@n-q)4Rx7@6fN5cQVGTpn`3Dxwltg$4QBa@hGm~or5+jvfj%Ce zwdIyp+XkOYtZ?lNq1EOX?I`m;LFbs|qv`{ejVG9)DQIi$@t^5{A{FZF8bp6ljalBu z4(xB(sua~8_Zij>wO|YiunTJ|{y~j!c^;`LD$%(3Gwe8n?N~W_^gmg@&J*4|@s&?L z{j^ZUoiJR&pD{}^yJ)BKOJH#Kju|&drhHUG5js)E*h|3OFdQa_gs+2`Po)EC9e1J>?m4(JWEPm(U)V4vsR2`HSm>~dHPNs zsWSJ3VFq~yn#*G+qWjHdGS^_UOg2$hc*LkVOAiGhq=yOtYkjJG?29Oop8C9$)qD+; zy%`yv>`1M>0VX?wAx~EXLPyO_SW&04x<00skBR}o(i=KyD6Qrmz4%y?vXMB3_+|R= zOz}RYSnuOnF)yX^pQH7HFBe=d$t=;YN{B$63#&Vu2`ffq3LS3=iSe0;5km{SvPas4 zKH`rangI=UZnUn6RT)Lgo3TDnF7vFE^ZbPaY0Sx%Q-V^-n6V0tO=Ax!cX^ckiIYK+ z3df*7*cK&ZRRmr6*l(PL)FUww;wo0uWhrsXTEkoD8#CQ>#im1_-yOmZ&aBH;B5q{_ z#;3G(MMlHjyvs9%fEeg=nXyKcAO9mBDs#ZmL(nHfMNESiWV41g$_5k*j@qnA1{EOC zDuQI}jT8?hEV}kaic4c}#-79wLWQy^V-J_fri?4b7O+hDn)h4q8*gT0uevBT9*sJ! z#)v_U*E=TLjLk&Gr@LaP4ST5|VBPDPn zShYsfl!VZyV`@sW9R;n0HHA)w7UC_e!T)1%1_`J#*pVYNdf`iB>nX@MF2(p55t@yx z?(A=2R$TAnGj5^_ce1CJMAjuQ*fc5E_p6L5>yYa0D?k(zq{JR~|_9d(E1 zBa881_Ax880H8*3EJ`aV<`EN`ya~9^TM$~zGOXW4>!IJz`j>#l`j;Yw{?j;d^e;oA z$NN*&cHU_VzEn!?{3I-S)VG0#9Eb%$1P3Dn7LgJIYiqwbX; za^2Wwaouf5^!V3Pm2%sd6X>6uthOQQTl!bCh^3!>m(BX&Ceh!46#64b^!Sek z>1S4G4FL2r$Lte|rGG6LLw)C?E1@5QCpWPUY_>m&6#CEN#L<5?5=S`L z=7+8VfB`IZ4DQve>4^DtBw~gY9oVm!eN@OcTmvTCa4pN~{omlk(SIEhJ^rm!<=k$O z=wnXkdH__*{6Tc9-Mhe66-u}$2^k#mzoBpaCK%OqMWeTV3z;M4ZkF4_v?Oyv4i@9s z<&-mkBG^~7W1$4RC(ucngl}DfUg!oC*z2{fqnv~|PsNZoV*9}G7VjAIImN1r%-D@w zAx5xSXP9FGW?FyfCf2NCoK8XL9S*&^EF#`9E;EE#fa8Qv5=rgfa8B@T$V)tcKdA(= zSlJ|YV7umUn%PbjF}PiBa%)(IAd{}IAoLx!IB_$e&!vah{wFZS)nX;q#BKr2&bSy#aw^Ujxhs{6-33DEM{LcHnPs)t_0P1| zE$xNJrGHYRF*LNb=Fk>$zdHz_fXXu4_^5Bzjxz2idgvY$ z!QMM`FQ<9R#d_#IV4?c~a7o53E(raEku#MEs??1K}@V(W^KOChkxEDPPf~1 zM8mNQpM%xIuOs2t1Wr~lD)_4$j(;x1iE^|{zZ5%+5p~`?Ix;MToLQqNy^PdOeu5JTi%+!K zzNsITL0y%i`c=UjxrD7`6m0Oh>c+)$b?PqO!K1pmP{~QW+gn}q1lKP$>D8Qj9!D$b**G8o7=dMe)e- zc<2epD0?x7bh;RQ4X@=IM~1OcY0I9NpK4_WRjNp{8s@8^i38+jvv!6VZ$z8rK(j8# zj5nu{VPi%cMVGS18@ZMN21PYS;ZY<$_X|AvW+~SJB1wpJ?g9?k4kF!5|-%1!bCo7sMhJHr`=e z79F4MsP)Bv$uwDQ^w1^n1sIOy<9zW`95%fW+cut-vA?3EZ%nl-_7*aJ!(mqAp2{+J z>~=8SVpQU9;OrXO2T@wM#c**#3Iu#)IXy z*#Ceqx=5WbN6@C@*gvJ>AH9DsnvHOWHD2$>p5I~iF_iK$xFu35Vj6F#EVPCP$I;N+ z02sAp?A>>mkjJy5ux65>C!9=t4@ACA+6vWjdsH$YEVK!d!41$S*=O)KM`E?SW2F25 zM4ai~iG+uVcu0i--awck>_ZW$ig*Iv#o0B6&YLnbHXA^8X1EJ?fH|_xje`#y+^@aZ z0q9t-s+G7Yiq$ite=*S>7`(_fSTZ0iwh58}VTnzU%t$?kDaCu781^lu zLU4mP_6VyyT{m#^qt<8C;&3*G<)3RQs@WP}?4<4@d%qAm6&kGF!TZQ=-WtE=bNOf= zujknF6NWO@3#kna#nn|lcTJwAmUtIV3k#TFna4MC#z?n)fO--ivgK^-<7}DSJFbV$ zG0>^*uYUvqubG$#HlJOxi`5Nwf9BDp8%C(H>Z77jYOLC)i*VRV+hLMfYA^7ir=U%D z^siv{Xx$hddYY}62XlUfj1hYPP|=`7q|pDrW|_?jFKNg!)Yh0cTR8XDV=bJ<^$=^Y zqM+=fc`@Ajch%gIgj7^7xZEd({p`=FXnU=U8?3Y#H!?}gdfbR-Q%r%lk0#1%F@U%d zQ;dy$%&NI-+5As{7_lROp--7!!kcSeFV%tTJY7yg^}cx`hpn~jp)qQ`HEVP^zSR3p z1E$L%r4iFJB~bcI;k8L=V+gN9c!&b9z>&#==BV(_5_q;qVDfrv7Ag*&7GPpQ%p6jz zM+)=`+#toUxgKQlX5sY-+#(X#s11@x3U5H*`67YsMOp%lx=46m79O?^X&wx}M0l49 z+#wR!1*Ijn>TwMlduoK)kXpia4W;7?ypIV40)7zzD%#W(G+v$!0jQ zCBzc%ja?3IYmw|dgRr3jrS9FI$vQ--Yy4;DHqHBx zIbsGmLaU7&b7UjOhGM&GJv` z9cEF3mtMeyaUq(Br(INx$|XIYMR^Zk$R40BRSq|~Fa{icSFPJsRKK{;`$E4yte-XN z?)0MGzncl=p9o_N_G*mFDxal$#ATlJ^4|YV7A_LmBJT@zb~&q55JRr+er2LwAevDt zY%XA%P1yrrEu*h~RoUES+as0oT~et$SB>00uFQ@%*gP?MDeo^*-aOOlIJF((UDx0) z+N<~NMIp8Cm1`AUHVhdAwOZCE%6Z`M5KAey2Mp|;vFOwp8p0lb{P=E|P(QZ5VQj;= zDNJ!vC*Yw;*o$w)GlnN%ABKrmxu_=|?OK~)iJmiwe(MBn$s(GApcVkF@{}blGm)+U zz7B-S8J)4!ER2tiCFrzo?H%J83FITKfe&Z7c0@axjxR<&VIt5leDjdU;HQ(3&PIy= zgfYPPdgS^5%N?ID%e_+O@t50BhHojp%yZyNbS9=Me@r?jYwrk?j>~5FpuniVdqh6{ z5d+ht=lvT3Cf$<#RDnr9&0@G(@~=w%0)cx3wg~;J{-+AObc+Ai&{p7QoxjO;=bQA^ za)!tI8NL;C=Vw!I$uKjU9xNVanp9E9^e=lD=HxT?LU2tooGSrubTE7lFppY?&jWl| zV2Qw|1a21iiohKLj~BRB;5!0$37jf$Z*ZPjNOc8SK>6te=Fu%?)S3J!{V{0hjHFNd{Py*X+=MQ{=>!WnLET|FBCENMzJJW z&VH_~X3F=(hXwFq4Q=r(E;8u=D23!eOADz;;9Y1}A?+4;xxg<7{SU~aMK0F!4F|XD zrIAk+l+gQVT|NC2c@qyzFgGT(>=alil+%$PPj^=`cb!=N05rh2!?^FhE0os-CIL&x zU-VP~kH0rDQ+S+WG$P39{;!lZr?7r_i7}ob0qV!tY(^gA7nmpOEJzxdkBqIbFjKH* z!5sXw6L|0WS<=ayJ76WkbMl>E%*=-@o}UK5yRLFVpcP|28+8Wgr^6-$Rst)a0bn;5 zE8Z~S-C4qz4{IAshRPW8r71L5Eb}=PHealM-SOUto55Qtl5dLSiG(c;>U*d3y%7;Q5zhs(mdAuQ z-@<-8lC{jI&BD81cnj!!Y3*AhXB4&KbY>gvL5+7fW)u;yFN>Yu2+k-<0^2Uw_eV3< zO1F#Ev+}vzBD$Bb|HJNjMp1;8(yv7F)ohkr0gNqs51rFWXVMGAXPUo-%Olh_2wMvb z`#^GI75Eu-3l^XoN{Fri_9A!zdI#3E0()7oiI8rkIK3*^2ElsiPl8<{*tzt&V0Q_& ziQW+GRl&BWGxd%!LK z!n2xbPBu5d+9ee?0dDm%+%lTsVK>8#Cc{$%&J-A~X3930d^?ZIdm z`7*;Ubw=4Jp-Ka3PKPQfr__hq5PWNT-40@Bi2!!W+ZE;>QMSRG zO_y8P^ObR|``1|58ovvnOe^9JZ1!7gw=<{JR^ zpu)uSx%5N|+wR3OC!d4Px%qMI=HC(CVeP9p704rV6f+NM7YkM>nCibgs!UMN##DlT_Lab(2p;Qd;#tEt`7rWMm`7IvEVhu-1zv4w?!l~7JKmt!sWct=n$ zh3)s2(&d63ByRgidID=ATXvdY({Y^5*i&cd(i*N| zfL`-Gk2lKpS=i-)0Iso0#xPIWGMXj|c9D#w(R7l9{T*XzG&Nh8ud2yAn&t_{vDImeTbstXwPLbJa*M{$#iCPb5*^g zldiF_IaTeB7`ewY?+W+qveEiEl%p_ORCWol$rd)cdZH1hbt!C`BSHHu?6!)j&R%*$ zumOry%+xnfpn-J`&{-ApjXtX4EhDf4mDlP?a`Qm~u$>i8>KD)r7Phi{zH>W0CD=hK zF1^IJo&GG?)pSE(C$JKni}2`K=DEgqF`Zyx*Lkn;eT7z8*y#Lk`7WVvSlDLpE~9T- z*wSH>&9BmbS=i<7TYQ((Jt^!?-`D673;X(r{l2T{84LTKcMG0%d(p!7q4sO&uNHPM zYPgm@wy;?4FMZ!2H_mO?&XqaO_^ziw3VYGFizW-U6W6kT@qLr#OlHX|s4?)K4+m`W zIheIK?{~OrIxIXj&i2wfDeP033U<)FH_r#& zb_@F`FVBA?J!VPn%`5SLo1V3>kMb(~-=Q}Iy9niu^WQ@56WN%H+#ltQ_1{Vzg1zcl zKRQm|qqTw^_KXQm_J5DAv9JqD8-aaGu!FQVe-5y33w9A@l`aMLTftt{J~qb!`=iDC z*lhEEp9;Uo^)WBvzn#Wg*l&w8`T?D6VH-zw`hP$REUdMO%}Gjvcmr(`mu!_&MDUKrZ-Ypr~e-M$ilV-owyElPgRzkmUFTH zKAI!gL0Vn-HUCfOR*Tm<;u`;d)4hTn_T<8Y`{{8D`z}0qfc~g3?E>>V{s&1viFF>< zR-t_lQNY4z~CVxs@URxk~Rsp&Ha~(2(a@l z-tO`({$J5oEZ%M95nwwl-iWF#{-@|Vi&s?@0j53&om}73HkQTn;ThT|l83eNBOah< z=vE7RspLuU?pBy5iaGWSJs{ZC@ZhulU)x%oJbHdhzZ2d;56`3D(uWqt^XT_fI-P|N zYAbVI@jpj1EsV$f^YkUbF2W3W1DN_eK12@*c9Hwd?4Qsfdep++&wkH;h@KH_0Fr~Pvao|%tEWzXJ%!Ei1hW2|!g4%iS%0BBMGLQ@vyHdt5y1}9%HkUL-{_Zu zsW|vH{YFVryHTgVO@Gedy+dzXymP^Ohq7jHC92%JG)%B9`Eudo<4CRpR#l zd(@o4d!Oc7yoo6HKCQK|ZIJwcwq!_tNEcYVEA%@3L;7Y0?<2a&;@tw?N3=hK_jh{4 z;*CHJf2S8Scpua27EcH7V>*(-`-IFUZr?Wg5^VW|f`X~m9wB}Qhk0j$cZ6nV@IIvl z7H=YWpVC=^shv1!8!{wGOIni8XjeK&yCZ|AY4=*Z*Ywd@n)bF}2PsyJ7g{vOOs@SP zU0*yo%c+gEu;S7gS#E8GV9HL9)*+ax-J^96;%yXc8_v<@WO=ltg*o*lSzc|sg&m?! zzfaqlQO>VjXYqcopONL)zL&wv((bZ&=Qz&D%F=$8!OPa3ws?=}o&Id?NCq!QGn5TRD1;lzx!PF44tsWw3TNeNlNF`~ zDsXkCoow-{Dt`iOj$q15`PyQ^w$b&*8Cm&SX9ll8>#=y380)hNv|WNJe-6`b&X63Y z-EK+lpe0#+w+E+CIcfMs$+xGVPA8W!_h`!RiQmifRvSkf+~G$?p^3Ck;OkEb*! zJsSNCcdZ7)qieYy8Z=^P*SoShUGFJXoSz}Eb3~f1YE(8HEq@#?nRR-lfaPD8Rxs3Y zuETNc)&SoRxT(VCG9BL`6qY=r>}W}*zfhW4c5t4#N0<74r~mWnby(icY?1PYO-a`^ z86Hr*V^9!R&Kk~>7_uJ}wEHeivFT^XIAOXDKcwX|^S4U>rpxM`2jgIDCfPVaJZV5)hu}Uer^4qC0x)f~maqWk^Y`OB) zTu^Mkab71ExEiJN25I6SMM>wCj19Rioj#OSsCpF)=d-r<935OWCe?Uuh3C~r!`U9o zFtmO3g4oPZQ9fHTvy?7lK-FkSy-M?V(fpL?RCJ{|QzlJkOW0avKhNCHu3eQ<@aS5U zC1DwjnLf$1nf;*RgGO(EMnqCEM75>b$v#N{ezsLgQfX7Q54Ay;{}aGD^NiX3)P2s`*${#FiW#4Qxt!Rx(AS0`&er z2VcPW&-@H7HN7Z{!jzA18Sa3V(JMH2%fq)2-x7Qo_u`w4???*bUS|;WAm~BzXj5_e zH5GRUr=q-v`20B+(22LHI9~zirE!1(+|gv%D6mCftH9*~!vdoM&k?vu-~gaT*8&cs z1GE>bdRSx1?E((~25|p%bFdchsnSV+d-J9Pew23#o`U$;JQI+wTT5x<$PU043(o@N zE9X)=oYO%cLc=c7blxG%p{B~akv|@L08MYg+V9c1uAgbGxOSO9ts@@6FF5geK(5Z$ z3>S-S$3Z4Q;{csBMUVLYhi(S_1DqM~e!WGwcY_iDg|)TnOkb|=7+t2V0Hr|-(m$qkROjzdX_u~@*B$g0Ur&V z4=zh~h_#*4q8{?J3V&xNpc7?!!vs z)Az|8nJeY=tX1Pvvnz?ur1r^f|5iv&1BK6*?vzq@qEs*Pd>`jdM48QctH!5mSIXJd zoy6AxSIU{weIkD! z@X6kD#Mcckiwy2Xm+UrP7MYhVnc+C^dztw9;SG_&edm&gj5kE)4eV67?R*OO2Jv;o zJ0kNAWL`1e5t&wvPX*s0btS<*{}^1S<744|jP;n?!e@ma%N2z~M!Q2ZN{(|lH1>u= zV;P60{LJTw+}>&6@>PakWONPY&D{}{&R}!BvUaWaMUvt)Kd{#C=+naX>xSR9u zc23Yf%6l03TSos5I{7-gRXY{;j9Rq@Xueo;4f_MizE$vN=k++7eAl^Lzcl!%bCXsz z>?Lig)ryNp7n;A*-zhxaJgjf<#_2WvB%C-N*3WS_0&W{I8}Jsi>#)At6Q{%ak0A3m znXSw9oxxtyWAL2KHQvE_<8b40?^nz@(%!|E{$E%A2o$z_j#xfNY+hk;=T*FdSva)CCv`fj=a9=qH%1(cgzmqPLpx>6)BfVNW*8(GhQ zZg?JaU2j>nB)8Dqhx{Q|qqO=~+gl+{+O?3f+6?uCj9XIPDdWu8q?+`{Gmq znJRaS)Lx)C^eVX?APc0e7?eILZHwb{0%>w`fZX zYTU!MORJjQQ?$FPmbg9I3gipKhE{{?YBe55PgO|0jRI%NoO0u-*UfGNPp_N@xR}ld zTt*iHuAuFJtLPHI4!R6*9nRDZJkfV0U^jgoum^hpgErDGz%8`folQx)0q_F)9^iJm z7w}Sg6!3C-2JlLH(e1&rn16M<=~j9N@D2J9@GUw5i23bt(+A`R{Ft%;Ny`ItXhnc- ztrXC&RR9LG(SQXSYbe&nAYZC&Mn0&GMZQX#2pG~%1gzCg1{|x+1e~C?08ZBC0Z!Ex z0j|)v_Ej3!-l1{r>$GKnof_Ma6z&DW-7efqg?qVhuhdpT<{E7^;BJxJCz9V0$y-J8 z`yzR#Nd8zP@6*a5#Sdo z4A?|nfM23(0TxdwvCK{Q)8dx1NP+vgV{8w559w@K*D0v8FrUFhvX zi3%klFe&tH7Ua6N={$0F3U{~8KD28N&T6_}{n= zFduIuW_yD|sWiA zHyAfibKqv7KPZ$3h5Mk;e<0v{Ckl0d^0d4Wv=XPR7ZyX3bCyg}eTp&yX^gC>u+ z!;*hVpypydhQLaJRW7k#^6dh*3A{nzg8~l;B)60m7!){N;7m7bSS9&=lCMH^>C4&e z;eOdC`3f(WZ4?;B(-3_*VaX3jen9ejB)>=UFRQ$dCHMHatd`9_uMk+3y_2;`J}huR z;2wedv$>BBNdB-uEl0`>ZJ;3%f3VoH(!;STq-QE1F$b=K=OM8?l1T|os#pA&}R-~?mmIRLhjS)0#^x4 zsytrl!dNO|Zc_3|$?ul@ZprT}nt>Yk3uV7h4oUuyh@oofin) z2Y7m5zi?j`%JdSJoL<6`t0ccl@=3|>7U;m!-hDY80uPPg-s~vL1AIu}Av_U|cok%L zL69Y>LMQ^K3rq^!FR*G9+cSL>%gh|b-di=Q603Gn;30uj$&{eLRh2ABRSfZbAdUb| zrZ@2#r`Cd$@ZYo@LYU@`sKU+rX1o4m>yI z#=gLdbA&9MD)8w+4u0!kI8F^p@qFwkoEqTZiUK+O!?p_6N`7M522kFrWctdSKENk^ z=K(IMxDfE1ZgmSCEI|SYXc+O}p^_%ho zfc2$62RtvA>G5i&FR$hr@vH!#((^wRoWH%C;kc?a{i$58>qs8!UzzhPppyTv;t$Ag z8ue@z&K%(j9p@rWz%233Fkm`-;)Az}0CntOvydMSsAFG|gZv0U9Z#6!9U#2M{Y?RRPGsMCMbNyzU9)ae1VK&OXcyH1b5YMiM6>hvq(Xa1i8 z)af^L3Sg1e0ytdz68tfZ_mX&WqY`6hv^EAXq}2h=(~bvRpp64us5JmC)+Pcj)lL9h zrcD7nUHc;73hg9}w~L@HNZYl!fM3z(1AbF$#rO;9m4G#RBVfJW1UOc21{|-S0*{Wu zv-BHiEByLZoQQlE=PhHjE3|90Z)taF_h<*Tr?uBKL!YFt*YDNe(uWz-jUM9~<38hg z;}fI8vDC4_vCC28Y;bh*>cSz0adzGQK<>PQ;f-#8iAw!gm_JCu3wym-nam4Q0Fz zgHNrMo@k|WtaP50F0j&tR=U_qms;sED?QyxS6JzpR=UbcS6gX^m9DYUbyj+vmF}`q zmsTP6d9-r8`HBblEZk?|J`2yX(yKt{_FRi}2Tn_`r~C2kb~I}bIKF}O%i3}Hosxy7 zS34cQ%Wb^x3$fTCb~Pro0>YqiNv_EZDZ*u z>cnGG$BjFd?6~nlozm7OnfmsgSbW-Q3p*v!Gjmf{czv{eZe;!HNPJ#+eI$|M4mCz; z8fsxfO26b5#ADr&cu&;QqqsxL9FsV1!m-S6I41R&#BmdkrC`D_smCNvI#&6H6OKhy zL^yTaWM;#Ujq$bOIYk)iI+2>j@>5uT(WXRCWPN>8tg|!H&O;zke@dh)5|6gmx6F(R zB^=*mi>X&BYfnMvbjD)c^-DX})X#}_om0PbaqR3!*R=Yzk)F0MMK-DWrGlaLk3S|= zh%=&H9Zm5_xF^!mmFNj~wMTdWz({7abZtNt7GZIG6B@cS+}UeW7Dm>`HrPl4R zJ&Lwy2yJF0(%pPcZ@5z&_Yb-y-B)(Eq$%m%LobMb7KEd5Tkaoq-!zPauAXqT%Qi!L zB-RDL^&HjEmadM-#tbUjIh2HEW|C~>FfF6pP;ZW-dA*&T;nkgyRpY3oxvO_Q`o_YR z4nh~iBOTFp3>Owm`yitjA`CDqupl06+=P)3p1=AmjCB^96HRcMDFAfpv=iFe&W(q= z$59Vs>)YC9VK8)dZW@;vDo=}cHH=3TRq3qWuJ%>qDbwvhGv*Mmp7GSywx|aqt-UcG z4{vJeiuNqt)E!wA-5fb-!UUQy@q|f}#!s0zqp4~9lv&La8pn;Bal(`-jZ;n-*DwqC z_{OH0&6CERFk|AZ#^zZKGbT)$GO2OWjWABVF`G8;R8(K0lZ;Rc>{ZEd_3 z(7agJg5K4g(RRC_qtl4?IKjD$NrN31@hL+#;v3~lw9{ z7e;z|<6WP@ToA?|$w7#Se+D1ZrH9{CKe{%I^bOHi@3A;xHuC5a(x{fM?%vPh&F}3w zCUYMCO3l&gc*+iKEGE2i2JBXujD19NR|lOIkM=~=WMdTaGb8PtFt|g-W3s0{2WMtm zWcY{)m|5$fU{QCtJwivX4Kxcgay2?-@RC7T8-`F2&tx^BF8nDX!oDIAUK=5dfra5N zWadWVfUr=RBUM>hy9x_kW7TL2M%G5VtUPM9axDovexU`;iS}?eM=uUg>$@=kB%cmr z93c|jv4o<}ipAH5dwK*}%ZpfIX*3b#A`5%FdZOzi;^*1nu8uT`1BgX|3mKagkFB>T ztc15xXf^v(vTOxVwZ|gtxgz#Fv}SL;Rhdn;QRz=C_mGc7&Yl-JSMrDf5#j|5Lk>CE zAdQyXlCB6lAVO>hn_bN-r? zj2c~-K|)b29!!IAOR#LkJ2%-(I-YrA6cNE2G6;*ag?jNwqPMg|5b%3+;L zVES}M)*>8<7c=7%CE%4ogsIcUwY6c`L%6ZGC&q)1cPDC2k_0+x#zq^vp^nBL{6fa+ zUT|3~+8K#U|DbFJDFd6C|pc(`+6BoXV4w?`6l(2Ko;BxXid_pV*bV>+Xh zwZx|>jfn&{{+*i^M|&~_v5mvdEEbnAJU86F4#O{9Xl5*um>26&UDdKC%~%}9obH*$ z1O41s{OmMiZg|t`2v5*72?_=i8aq2<=ME;RHbmmHW&4;en^K3q?@E&`m4k`R8+#&M z39PnhIlIxb;Pj=D__3KSU27yPpk%o7Go=uF*F@L$s%`AiHO$0Bj7Ph9u}?E+M%IKe zw$%1CO`g>mUYkgxYEZ~NVPT{*yisx)e7h0YUv*&ErwiJQrdao;cy#T$43-@tc}s`| zCtXI?NZA~vX=y!(pk15N3@b26WbKKrj&??SGPpA~VMH&LNFftO<#?v3oP@J9J7ejl zczPL^qJvj%N=49g>DgfwlX&?-xKNA@9Hs1;eXQNfe{_?hE{SMvcw=;Z?|QjF3L3@aDwL43w`gc=i@y4stpwLGC_)FZ=0TpS?*IW;<+zgR>ajwD-JD~Nihtq4n=f|4qsA*htg4cD9IYEr{K4`I9$n^WRH`Dku}y~7PY6& zwRmG{A1h(Af*p?>ZZVm6aG9i(=b4$YRfS6>7NE1hutFGbOb0WDP%z6;JJ!a_F`5$7;@hblGo01dAi=0Pq}BSEZ_fsR=fSn7VYegt%1ZS!Sx#AR+%-k!8!s=v6SK&y$H|{9DIDhwsL7Xf3}dpvCJYO$viL~R8Fg`Dsgo1kywJ;tO8cTE@AJL?Td4GU_%sF+O#AQNvKG*C~{731ounQ zW$a$UnBc2#OdFg4gFh%{E$QJ)Cfpz+%mnLR85@wAD5*Pfwk^kuX8*!=Rj!Xx*8aP+ zuC=f2643 z4Kp%z+Jv^Yo^{bwD>Hf?_gOk3jkuiOlmLHjv^^e6#Mbl-CUf^@4DkfI(!NVX@L#k; zHa*;j3G6@ZEsw&}9##0V|n4d#)$IT&Y@?`<^O$GMTqCM*@j(yT#p=p_UF^d#eD&QcwcEdJ=&mF8S3h%)glV#IJa39Og zqFHTNk68r9+u36@G=jClLHO`kiW(<{usf8wr`E{;xBEM^uIx_NI3}+tk>#iDKPt^85=9@U7U^ zyuKTGalFbdwf3l++ z!N<1&?@D)4FMc7Jvf_YYyrCAMIQ}F~3;qggJH_z#gu5XT!5eB3JgvHvX3{LA9gyt7 z7e7IlbuQ$i!biEBD9SMw70on!F}R!XJS}UO3%H(E147c`EIOJ~uFA{=$F6x$$zh7$ z1nau+Tr6wr!5^Q!?FpK4I^y_PWeacplU^%ffjW^l3Oz$ zKH*x~2T`$tEbU7^Po_v|Qoi82+1DHKE9;7`Jdr^!Q}j$fWN@?kprIEY>ZE?WkUt7v zc;Tc)u%{QcaeIRBgx$YEc)nL!8s7*Ffu9Q%;#!@;O zwoB|Lv#mUMRby=`Pgf2XY=3&{XKI8qng&lHuHT*zJfYU1bf@S}PXw-qJ)$NVbeuF; z2Tvt69sjA)_&XerzZJYGJJEdk*tho=^zSPmBS@MfsA+B|K<+TkW=pok9F}*EmQS8x zdCAxG?7U>s6C~u{WSX7R%piWy9e)ERr~~F}*&;A3H~BXy!HV(;P*);l`Q%20x@%b8 zdJP)gB906Q=P)6Q(^PRN2l0LwvRKR82wrcR=Lq8Yd*~{41}SeqbF)RgY{{^^9@gXy zYF4h)9R%U#yyR^TmzKB0i9cF0Q09Tbc>}}q1}dNT|q-DV=8{4!vNwI z1kEwHwBdHTjBK}oGEf{Ox7Ve!_59N%;&n+FM{D5lk>tUjJ7U-1k9K$gjIxoWBk^k4 z4l^(LFx-nbO3}*OfRsYTGWLY{jonYS6XAZm?w!0pcc9thf`5{`mB%DyO;>OsE)3K3 zY};{H;354oD7W#O*{o|I#f>Q~9vO7PzZfBRt6sd#;#!HSX`fXSr(Dw>1~>bHx^&GR zK)hgNl}BAS7X=-FM=Mp@zGG?QloefUn|5(QsvKK9$b?(1LYx|AUcXC?i~az6Kly!7 zEpcuhqpbN_r^)8{Ekmzm#ETzgf^yEX==Bg)L-ktx-o#+5fmuqG;dero%W%r-2W-Uy ztWC-M*plItWv;Siu1d??XUTAiwruh$`!=PN?6(9sWhFP-9=cIg@{q;nl=(aCN_M0x zdBl?8lx2411PxSx49nnu7U{@|BT^MVY8B#?3tea{zK{z!y*x_U15beO$7oAFqlUn3 zZbq0YmSQB|?91R52XyojW`GQmk=#|!U5^W-TWNU%Eg0n1U~*zUCvTHU za2wua%Nv*r6l|g2k7=Bj{9&n$-<;z@3lFI9#3l&;0NB|atKMZ*cF?*_=F$%_>?N4U z+>>e^#_Lg{l#INAR;lfI%a~kpt7U;h+hWuxnz?giNtJaM zQb;lEm*maPmM}I@p_^(*Z0BVFD=ezk?NH709$EoY|Lw4FGsdq_B?cpJG=D<4BQO(jX`t+z;p)us-uI~efjfE4s6Dd0|x~(fTZN)k3flD?56P3g!psR46xTg z3}oN}Fw8QiZsNbLn{EW{sSYzYdAV*HI)28-EYtBd+@`h50Dn2YQI@&VFmqRVI6QIy zN^(>M$W30Lo28t7%#`~XJeP{7JWHeq&wy+%7v{O0#NRwj4L0cC$O}G?C6pc@C;Nl& z8aBIx8;;-T;)alhJpTS8J4qoJ7@8A9Un_HR7Ju(V<1L~aGaE_XR3`$(mTbIf4VX8T z1LBsv<=}FHhGR=I)fpr-pGO=LR+Tr^jggiYg#wN$kW|S8PB!LEK<#-`VUC7AF|d(B ziRHZUWQ~GF1&g9S<|Vgt0`EyhS0ZHSh#BisA%p*NH1<*6paa{dyiKJ6#6^R%{ee=y zA|?mQK*rXJ$;k^5vVyu~FSZ4CWC~o7E_fBwZJ}!!@mVT&m6h5RCHJIs-xw%$@fH?Q z8Li7Mg~!la_ai8Bg8$i=7l^K$^I=_4x!hIRYVs>QcNKQ5T4^>%DHZSFN*{j5&0aKJ zk{?NKj_;)bgiUtTMsd&u?B!$P> zK*JpD-jU$HIhOrV>KU8bL_?cuC?=7t*4wi&S21M#9N8X|F!p5X!r?Jx`SUywFc6dI zXC5k?-GiK3O!GF%%FXqm3E9$i40j(IVqXq%G<6#xEIuI~$sx*ihIkGj?qCFS_Da(& zJ8f?WO65AHROlB#*lmWSgH&Q++3t|?e>VO!husk<0xM9Y)CZznyIaHVpFbn{&*&`H z3s1w#UU-io^~BTSb#dHP(;z3)pC;jj|N42&i*aJ#)e(+&)LPH2p0r_HJzTjsyCC(b zIiEb@omqL)A`A7{H{2y^xbOgVgrE7R8jY$`&qW6xxH-6JT|B%Y+!b6HJ_`?-osH-8 z)&<9p9XE++kw)_xgX{1Bbsg>$%Cq3O)gN4AKinP!DTrrVgSaWYArhP!?g7CI#8FrT);hy@#mA+m;XT8+yy+kcH;Z=z4-28j{2}1emE9y)Dx}6 zuMMpIrlQ-B7v{{*!bLL|RTMWq{=uKSo05}!>lc6L;Wt=E(}^qa6hS<(!WvyGPQ%L( ztMR1Bx)pe_2=AK)7xnaZL}S6aAafG@s@00j-W!bI-suW!1h43d^dzj=fPpYbuD-it zH7%OmIDX_)OeS z#jC2cKGBXhX(IBFwJP&zHM9i0I4<(wNXSPU&{3=LI|Xt49mqB0!m-o}{5u){zJP!H z+a~|#e)#WT%HN_+4)%e}W$ZKQC_2l{#&_9%q7P(C#1zg?09;Co@OLDa;uk^|BG-cL z<~-oMQJsZ6f9`ku^$5=<-VA1@@+Trdap0?>F7wrACK3%=`9yV=91g1c5^HcM$e$`H z#diYuq&Fc4oTcK-DiJ{(OS z(h`0jB`AlLYXR%5({;8f4k`P7Nf2X>?c#Fh3h!)`Qc~#yUUdr2_i2K-d!+6g1!1AB zs|UYy!H1}waulrYI`CZ$b^qW?NO2oW_VH?dD_NE=bKo%C_+56f56} zdid@De^%gEZM2kc_`XU4N3!g*ZaLQFV_5zy#R2Ua)H4r#y%@HobL?ZTi|>EM0fV>` zQZIfSiMJv*2d#IFJeFxB;zCV`jCn9QT__a(vmhZp~0KP->dHrYWU^~WQ zh7Bz{)Z=M?6MlJx`=$~7!AI$QgQ62&;=7rHdnsK;^(oi&e?R{ldEoolk-*%Sr~Yqb M^ZzyV-{yh;2T{we>Hq)$ literal 0 HcmV?d00001 diff --git a/create.ps1 b/create.ps1 new file mode 100644 index 0000000..083edf3 --- /dev/null +++ b/create.ps1 @@ -0,0 +1,141 @@ +# Copyright 2021 EmpathicQubit + +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: + +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. + +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +# FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +# COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +# IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Add-Type -Path "$PSScriptRoot/Gameloop.Vdf.dll" + +# https://community.spiceworks.com/scripts/show/4656-powershell-create-menu-easily-add-arrow-key-driven-menu-to-scripts +Function Create-Menu (){ + + Param( + [Parameter(Mandatory=$True)][String]$MenuTitle, + [Parameter(Mandatory=$True)][array]$MenuOptions + ) + + $MaxValue = $MenuOptions.count-1 + $Selection = 0 + $EnterPressed = $False + + Clear-Host + + While($EnterPressed -eq $False){ + + Write-Host "$MenuTitle" + + For ($i=0; $i -le $MaxValue; $i++){ + + If ($i -eq $Selection){ + Write-Host -BackgroundColor Cyan -ForegroundColor Black "[ $($MenuOptions[$i]) ]" + } Else { + Write-Host " $($MenuOptions[$i]) " + } + + } + + $KeyInput = $host.ui.rawui.readkey("NoEcho,IncludeKeyDown").virtualkeycode + + Switch($KeyInput){ + 13{ + $EnterPressed = $True + Return $Selection + Clear-Host + break + } + + 38{ + If ($Selection -eq 0){ + $Selection = $MaxValue + } Else { + $Selection -= 1 + } + Clear-Host + break + } + + 40{ + If ($Selection -eq $MaxValue){ + $Selection = 0 + } Else { + $Selection +=1 + } + Clear-Host + break + } + Default{ + Clear-Host + } + } + } +} + +Function From-FileName() { + Param( + [Parameter(Mandatory=$True)][String]$FileName, + [Parameter(Mandatory=$False)][String]$GameName + ) + + $lnkName = if($GameName) { $GameName } else { Split-Path -Leaf $FileName } + $WshShell = New-Object -comObject WScript.Shell + $Shortcut = $WshShell.CreateShortcut("$PSScriptRoot\$lnkName.lnk") + $Shortcut.IconLocation = $FileName + $Shortcut.TargetPath = 'cmd.exe' + $Shortcut.Arguments = '/c start "" /b /high "'+$FileName+'"' + $Shortcut.Save() +} + +Function Prompt-SteamGame() { + if ($env:PROCESSOR_ARCHITECTURE -eq "AMD64") { + $steamInstallPath = "${env:ProgramFiles(x86)}/Steam" + } + else { + $steamInstallPath = "$env:ProgramFiles/Steam" + } + + $libraryFolders = [Gameloop.Vdf.VdfConvert]::Deserialize((Get-Content "$steamInstallPath/steamapps/libraryfolders.vdf") -join "`n") + + $steamLibraries = @() + + $steamLibraries += @($steamInstallPath) + $steamLibraries += Get-Member -InputObject $libraryFolders.Value -MemberType Dynamic | where-object -Property Name -Match "[0-9]+" | foreach { $libraryFolders.Value[$_.Name].ToString() } + + $appManifests = @() + + foreach($steamLibrary in $steamLibraries) { + foreach($manifestPath in (Get-Item "$steamLibrary/steamapps/appmanifest_*.acf")) { + $appManifest = [Gameloop.Vdf.VdfConvert]::Deserialize((Get-Content "$manifestPath") -join "`n") + $appManifests += @(@{ path = $manifestPath.FullName; name = $appManifest.Value["name"].ToString() ; installdir = $appManifest.Value["installdir"].ToString() }) + } + } + + $idx = Create-Menu -MenuTitle "Select a game" -MenuOptions ($appManifests | % {$_.name} ) + $appManifest = $appManifests[$idx] + $installDir = "$(Split-Path $appManifest.path)/common/$($appManifest.installdir)" + + $exes = Get-ChildItem -Recurse $installDir -Include "*.exe" | sort {([regex]::Split($_, '[\\/]+')).Count}, {$_} + $idx = Create-Menu -MenuTitle "Select an executable" -MenuOptions ($exes | % {Push-Location $installDir ; Resolve-Path -relative $_.FullName ; Pop-Location } ) + + From-FileName -FileName $exes[$idx].FullName -GameName $appManifest.installdir +} + + +if ($args.Count -gt 0) { + From-FileName -FileName ($args -join " ") +} +else { + Prompt-SteamGame +} \ No newline at end of file diff --git a/drop exe files here.bat b/drop exe files here.bat new file mode 100644 index 0000000..da71c0e --- /dev/null +++ b/drop exe files here.bat @@ -0,0 +1 @@ +powershell.exe -NoExit "%~dp0\create.ps1" "%1" \ No newline at end of file