<?xml version="1.0" encoding="utf-8"?>
<CheatTable CheatEngineTableVersion="46">
  <Files>
    <File Name="IJL.lua" Encoding="Ascii85">=L6CZ,eWhctSbG)6gMgY6@fQ+Cnw;qvZcs!Rw;!ik;spXioybcp?._s7,@qC?$q?tAK(h_VE[z3:.CCzYWX0OgPFc{Pj{D2_9tzWKW%T5/L@)1bNu}lauQBbFTHa(H=}Wk%=%v6y4u]0[u=R#lQ;}=w7K#3/UL@t38*v5[aU2,n/$yUcjiqZnu)!XdMCeS3)tp9hYoLu?1?yQe.VC_G5koPB,ZC7qh8RzcK=RxE*$Yxl!P%kI3Ssyh6?G:ap@o,k}CNidY]ob;1{Sj(NBu$sUJ;5-.1I/GEJfgDV_Z1!IFp*.D!WA4%CugbKof)Zf.y)3wFud%j1+d%OCmo?RupsCvy,znN#L+1}*gN1OUrtA3ox.X()D5Okx{y#q[-cvLx@kGZ$(N@ccn2Vi-SO(SpspWBu?#d4Etm?acF-),r^Qlm8ihIY0#X.A06UP#@kDAVG#^BTPxouoyIEF46=Fl[8M6Mr$Gt/BWN,kK70v*MF6W+^ip24ljsvc7FWB!Q}ObpO=p^Z!TOtWxM55.txfdmHE4(3/i^{o$-L(y2Vrcq=F{ptT=;7y)S/Jnx.wW7(B:c7#wGHr}=vJ0EbgFeiJa5Q;.KE#PWP(.y#I+P/uhp33U}%Wb:VoQwqLB+GSTWwFEs5qcZ+ihc,1P6,*RK)BJp?d}p%{Mjc;11v=v%UtlDI5d+(zwt9j)WOobd:(9uY[en3#:M$RtN*oA2C5+]ff(uw}z/J=KHU2tQuM0pwPsf{z4*,+bBF#Cgf.R*_](kH4M$i9i!BvoyC5{XT/nwg@xjPr:[1CovOKeE=*N1j7(uCQLIrXxP(LIMp6]1OAyBf;SwK6Nq^(1DDNhHI0qpEjW*LP-Ps$9Nv3=X+XlsSNEKtNHj84agNI]@2/E7m))=;@sp:k@A}8*yvfgDn7tHIQ}:5H$Kp=0b@N-cNDQt:R?daoC(;lldI=)Q_qe0!j{tmUoJ5o/wNvW}8a;NQLZ^5b:dcLjivh-aHBT-4{NFNI$40upj^S-Nkh+P9Nvb;D/{M23vvKcSlmc#X2bzO::?:PmWs3YYpaLLc3$FaYMc#U-0zG:=4=Cl?)-2dr#?Y;3[XL]W8].ZBVs}5dwU*iMV?ES7jK8,kMfMy4vDxG=Z5AgwmuNcPDdwh,Si$p8)=+b,:Esqto.tXUTzFl+%aJ@p($nz2aB5%Q_W3Lg1ZOfgQjK[{g^1oKEjSlN^ER$:}ihq*}t/54c7sRVnk@Z%;X7ACocbgt=x733X?QoiiK]E#=5W(x{X5JV1c)BkH9mM]kh(Ms$+UNAXP/Q@y[7Pjj{(,3+l(I%?(K;eCCSP7.nUDDEop(BYxEdcGdkjINwzdH3g.#=mGG4ar4i6W(;Ey?P#sSxM,CfW#sJsJtr,Ma*16%Mk$dXHM[uovYQmYiDcqx%+kKo?38S/gi2#;CC_AzjSK{c1:v;NMw{=OS14Lc9y]F7v/D0pL-?;2yy9QrO9DpOnkmq0:y+O=2_q6GjYTW2%fHhyu=-TyLjkYSzE4SEQ6d6)!V/:1]qu@T@XEhZ!6y7GH*3B(2dwe2G4]WtW)6tdhQupvQ9a7J#1Kj43uUT0h}rtZrXYyvPnx%=[d$!i7$ATn3:8zUO,.?ns{P0@f1XGH1N%DKz0UXd$+R[n$w-o9g6buRhrDd/82{R?B^+.W6MFCN%a];^Mni4NjS1M5qoo,8JkZVm0Oj(h%,$[B#z@k4tH]G+CWV@^P6}Wmk}7r:QhZdrwz5,LTPDH$.hg+@P:I*FvEoXAd3DGvRRU_qZRdYM$KsfjVQw?:W?HE!NuKtl0,rNCm={l88;T)f=LUTw6t/S!fea}pj,i?q2@nQEqodQp}Tccm3Q5X)fBX]nLqcjdsULK25hVRP;f?-2LR(UR!07hZ0*_ozgbW5t}{%x0x9,/!-W@7f?:iq+8Bp/R8rt@XE{/J[Ym75:L^i7Fz8heq+2?=Ea3!=gQVW$!QiSEpqX3XRKWo98ko@YVi:8DDpjqmK{kv}YhLn)*orynm9XQ$gx$g0Z@I}3c39RoCWgl]qc@}wq:}yJhSEky%4Rf+lvDJWm*#-*+x#Mrv$NxuWGf*gF3Gc3JzWLZqJisnA@UI@M(PKiEuKPAmQsJnLup$eg=UMO2UC,Y7z?vJ*LI086/+(jdSc*DCJ%#BNRT$aLQ{]qz8Zfe+JdL#hLz3(v_wc-N!mX9-[-I--ndX1/eIfSf6NG@mPF+1!(1tLNh4W?_2xX}[KN^dq;?k$VJ:CIUmD./-bmJhJ51swI7LQ0T.c]P59gQ,?ofeVL[%Sq!rMci5@S$}1{2?0$-JinCXqe=a9l_P$g^R5AtMg9)Gqpe0polgK5_Vx:=sY^NKNR?x$[87.ToN}Kw1N#JockJfPf85OI^tBvADyEVs%#0EX8x49sp{m1d5DNF,jd)S}-v/xEV(+!y@N9ISUXpxE9a^d;,6C$#7n?bj-}]0T]OTw0/Kq1=7ooNRp_spE)6Oe)qHQBL(An.g;4}[u8bR6aZT,?sg)VFb2U1o%wkRp?(6xQc=xO71%_T;ZTuG(PR/PA}Qmf[cKT+[.7Lhl?UC0qruP(7ncbi9mtbCaeT!0E42]RKrN7l]}b0{nc*qT-/h9;EUP6[hN/J{U2(iTNtdNkRYlf^Sz4MIWyT4gs[^jUXgqQh^R8u0YCMJ:9TND.kqW*57koT2U%^jDQI0We,wm6-%NA_xsx?N$BxpQF#jH6A!eh]Wxkcr_*_JPwf!yjNO%Tj139]aKv/NF4,}Rh/D}K/p7::IuGnT](hWTQ.m1i{^vR![J6.kuSnMWp]VU;K)Mn-ZLMj@W,PD+p0X7j@wlEmO-F^J@x7zCM#TFF8l#S*HEHUkmvzIh-F;mi{T*RiSUB!xdC4eBg8m-#S1bjBZf4EVQG8ga.mV2!ip,.Z03)gu:kzc729#K}bYU%.M-HeL6T6Axz2aN0^idzgSv].4D-+4m$KI8M^!lfA;UGfVbvt(9e]OVFhj-vchoVESRS:PwrHWbzBpJI;:tvg,4zA8*t5a1PWqE)4MQnMv2*fJj^ZT1n}cmZpNwaOiz(-42.xKaX$Y/bB,*3AJNiFU=}Vwo}ozfGM3H^qNi3@P;xLadh(kDhH%WluP^UB3#gN4}M57JelF(pxD@4G]+xkH8fnn;$4[nYtGndlu-buLDi9_M=+,RSeo29=q5tks/Eyn?7*d!$-}Hl^ny98uqT220c=JW1#:/T@g/Rbqq3Y,BZJ{#k4v2Za)aeM-Gh@n9azmf@eiE).wLX]t/6bAZ?Jlt%1{:V1=uBp@/*jimR6bdbUX}CO@vbC74kF}+MLhn3vm:{Iz!(I9(Xt%RI#.d%C%Nv?kF)tjuSG+PJ?RDlmm_^]@nl4EG,5LCV4IPNyDnd(MC6Ps%,MonUR0.]NlSkxjHXLW.9HB)coe4En9Dn70i#ZNofWu%)nYfGsiMau@:letR(ESX/O,mS)-Ko)%P[D4pslCP;.pf3S[GRxf[t+6n$b9TGWM-yt5pNQMV3+iMuo)hzwr;y_N8HAisXJFCH$u*SIJtR(5iwv_-X,!z5u;:y5RVw{weY=@}z;B6:86$#N5yYyF3H?t#+9je?3-oZ+c1p{FQWQw_i$wtTTjQpW8BL5asS8%faa=-j{K/uxr1GY#tQq9kaUyjRLC8a!qi*cpmPUI}juBVJbYT$6.5X1VGK2AqJ)f,9T]C,S$@SxPEv6U*jnV5JJEx)n*Etfc76*0d_s*oxKX.:DY4bL3WL@4f:(z8NT^Fd:1Ou)uFjbaX]7kW8mgQ/g)AlnbE]pr)m7#Hv8TZ2aX5kOT8lyy%mC]QqD/*mwYGlqYQUBL):k5+,!M.oAH,R2.8*rSI)S=7eWSv(FUC?ghYduAHE5y(L?$^{kipB?:QJjA[oxPrPc^Fawn+JCz=kyFC99XwUKqNwdXZ?2kxXUcYh$gGk0^lCW]+VBd3dgI@f-SA+1Bi62*uPdvRAqvm:x!zS{sbWn@1Vq7nH[6(3xP}h83S%JiaEk{dZ0MC:/udfC.LsS=hT5cnpc(?Xtno++?m}NIRa=/YeU}mP}u1*g5o-[PiqEE77.X0s#;kpqDy+oTQy96oY-BcxI4#fjvcAsx/fY%7fis8{bM)][Mjw@7Kh6K%e2tY?$Ig.I-!Qr90cipJ[:X,B7i#)eVI#}#6.L89*.aUSI;6^7]3P?$SuG2oXYM)/g@}wiO:lo0ADAw!TMp#,l0xadqUL+@F0Uh3:^DOq[dgmeqWpnu:.8Y9Rlg1.lShXM2wI9@AuZIwn9xyw1@^Xv4o6x(KYebNJ06](2x==zK?NVtJf%tCX:/dLl:EQmzew.@k[ccMB[BJKiHm[=Cvd!geexu![t3*gAVHM_n9K.Z9(Hm{b=7w8$t-?FJ;Yp)O,O=hs%7kW$2Y/sbyI;xJ6agD;#@[-ZXAB3$0Cz(n/Dq1Kefs8feEH,q)fEghleb6st*Z3=4OVe,!$E;VOR;Vwle61#X36ktgx7Pf-3HwFf*REc%1KSb/fa6omY58O@^qsm?)M_DE3;ePJ+X!{^Cuw=;Nqf=VH.jYB!k!{c]*zT%/aJGW4JOJdSz=a]$Mfk(_x8eK;SZ^5-QXx^QiLaA$HL!g-002z4*sg[ISpHTBpWhZMCd+fORTvdK@N4KUz6E5LI[{cAD!DQNbcvq8vjA8XCmYo$8$y41LxME#jip0pfA0+lPU[S?L%2dYp/f)cz^4^d+q_Zzbz4GT#=@?)6)Uk3W1YmCm*@v8Xh}-B8QBG+8gm7_50dhhw%jx:Ti0Vujg0-pQe9]Q4u4v24q!HzCy#Zm]$TfL2Wt*ic=1tsQ87wvzJRUvY*W=rdrvSxPg#PjoU@xJ55ziKx}cgLT*wRJ]AW+cFg#D:Q_dLYU@S()*dB6H^0V9Hz)$qFW[b1yMVUYF2SeU)8UkZjW]+v)Za=oU(yX]]:yT4/hr@tKD]N-AlWk8.YQ9#5F-h=VRU^L-*T]eAR]@o[@bt$3kOEse8iqHkrciIr02k-Xl%Jn:nR-5IwP9DiK*Pk0c-9xcU(N(_P]gQz:8cCAHkav7]liR_PhmldQXKp;6NtmAoik%?#VF-vGoBv(;so=$,a8uFqqw:gVrH=Lw}YaQP21=W77px$2^QG[jbnNPj;Sf2jqKn+L=7G1W/@Q;{ea#5:2Rzv6dqc2-^.*):YjPNyS$p1t%E6xT9ne+LEMri.2]qtDLA8E.I.woTwMukY6DsET^fyfna8Odw@=#R/0KOmZepQ=gl-gX70@30um9f,T./!xR;L^q,[e.@9;b7M9*wG1P)#fw)wd]n+SQi5/$b1n:smjt]ralD+}PnR;=w[q4=7+k#44YS)XScnE.yy9c7L!:tS7Vc,eD?L^in?p$nA7CQfp7FNeLjw*@Xd%]HvNwXcc:7-;3V}oN.c:2A_o2q4e[aup;UYy}DMvmYTY$Ur)?SUpGB3Il$AM+;5WB%Yi7U]?nY2Dw=Fxh]ZY0Tmpc];sV$#L!UwqvfvVxFU.a+#G[5VvSv1eaL8UE6/*PsIBnee/.@Hf1cf-lQ)pir0#VeZH??fwc6=k$Ct6rHe:wM[E2]b[e8z,c/f2gLC;?_L6{$f81X.u[wqI[Xec5WWBZ14YK*},]2^z7On7##n(wbsh+/hw0qT{g=w}r2Nu+=d2*nV,,K7FGsM5]MdrQmH/px_q!t.htpG,NZj6ncLv.[TL-?o^^dDhhX#z@uhsmQq]]?V7P%]q2h!bY]${e)E)[}J#sj4=rN@f.[3w,)[XuX#EsB4,,[=qr#mXY7^R$EtQ8!x*CnWtkaNkAq%KNj!Y$P/H1Urut%w3?x;hY.LGpTx+tuBe.CBN^4e%_R6)[@t-Ny/xyE5%Q$fb%hX7J.@qQe)@423D!CxPd)fUF.AAd+Q8P,MjVASlJYwxa{A}:,d=vZ+ycSNo@5:RH[voz;VF3dUVE^3ga5%_zyIl8L2G(e4MBH#]K/BPGwX_I=XR8LUpi{k/qZ7@p5NoOGkZxiUibbMU3v3Gg#RZg9vsUTuaXIW=?GTM1p{rowzn0PFs];#d7T=p../2)]xgtaNs9K3nOh(/QR3G=5X4IVuc6_*XppcNn.A(doW?N5uV^LOLD#/k</File>
  </Files>
  <CheatEntries>
    <CheatEntry>
      <ID>0</ID>
      <Description>"--------------------------------------------------"</Description>
      <Color>808080</Color>
      <GroupHeader>1</GroupHeader>
    </CheatEntry>
    <CheatEntry>
      <ID>1</ID>
      <Description>"Game: Vanguard Galaxy"</Description>
      <Color>9B9B00</Color>
      <GroupHeader>1</GroupHeader>
    </CheatEntry>
    <CheatEntry>
      <ID>2</ID>
      <Description>"Process: VanguardGalaxy.exe"</Description>
      <Color>9B9B00</Color>
      <GroupHeader>1</GroupHeader>
    </CheatEntry>
    <CheatEntry>
      <ID>3</ID>
      <Description>"Platform: Steam"</Description>
      <Color>9B9B00</Color>
      <GroupHeader>1</GroupHeader>
    </CheatEntry>
    <CheatEntry>
      <ID>4</ID>
      <Description>"Version: open-beta"</Description>
      <Color>9B9B00</Color>
      <GroupHeader>1</GroupHeader>
    </CheatEntry>
    <CheatEntry>
      <ID>5</ID>
      <Description>"Engine: Unity"</Description>
      <Color>9B9B00</Color>
      <GroupHeader>1</GroupHeader>
    </CheatEntry>
    <CheatEntry>
      <ID>6</ID>
      <Description>"--------------------------------------------------"</Description>
      <Color>808080</Color>
      <GroupHeader>1</GroupHeader>
    </CheatEntry>
    <CheatEntry>
      <ID>7</ID>
      <Description>"Table Maker: ImJustMaxie"</Description>
      <Color>024DB0</Color>
      <GroupHeader>1</GroupHeader>
    </CheatEntry>
    <CheatEntry>
      <ID>8</ID>
      <Description>"Table Version: 0.1"</Description>
      <Color>024DB0</Color>
      <GroupHeader>1</GroupHeader>
    </CheatEntry>
    <CheatEntry>
      <ID>9</ID>
      <Description>"Credits: nil"</Description>
      <Color>024DB0</Color>
      <GroupHeader>1</GroupHeader>
    </CheatEntry>
    <CheatEntry>
      <ID>10</ID>
      <Description>"--------------------------------------------------"</Description>
      <Options moHideChildren="1"/>
      <Color>808080</Color>
      <GroupHeader>1</GroupHeader>
      <CheatEntries>
        <CheatEntry>
          <ID>26</ID>
          <Description>"faction name grab test"</Description>
          <Options moHideChildren="1"/>
          <GroupHeader>1</GroupHeader>
          <CheatEntries>
            <CheatEntry>
              <ID>25</ID>
              <Description>"No description"</Description>
              <ShowAsHex>1</ShowAsHex>
              <ShowAsSigned>0</ShowAsSigned>
              <VariableType>8 Bytes</VariableType>
              <Address>tempval</Address>
            </CheatEntry>
            <CheatEntry>
              <ID>24</ID>
              <Description>"Faction Name"</Description>
              <ShowAsSigned>0</ShowAsSigned>
              <VariableType>String</VariableType>
              <Length>255</Length>
              <Unicode>1</Unicode>
              <CodePage>0</CodePage>
              <ZeroTerminate>1</ZeroTerminate>
              <Address>tempval+8</Address>
              <Offsets>
                <Offset>14</Offset>
              </Offsets>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>66</ID>
          <Description>"Spoof Max Crew Limit"</Description>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>{ Game   : VanguardGalaxy.exe
  Version: 
  Date   : 2026-06-18
  Author : Admin

  This script does blah blah blah
}

define(address,Source.SpaceShip.SpaceShipData:GetMaxGrunts )
define(bytes,55 48 8B EC 48 83 EC 60)

[ENABLE]


assert(address,bytes)
alloc(newmem,$1000,Source.SpaceShip.SpaceShipData:GetMaxGrunts )

label(code)
label(return)

newmem:
  mov eax,#99999999
  ret
code:
  push rbp
  mov rbp,rsp
  sub rsp,60
  jmp return

address:
  jmp newmem
  nop 3
return:

[DISABLE]

address:
  db bytes
  // push rbp
  // mov rbp,rsp
  // sub rsp,60

dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: Source.SpaceShip.SpaceShipData:GetMaxGrunts

24F422CFAE8: 00 41 FF              - add [rcx-01],al
24F422CFAEB: D3 08                 - ror [rax],cl
24F422CFAED: 18 A3 FD 40 4E 02     - sbb [rbx+024E40FD],ah
24F422CFAF3: 00 00                 - add [rax],al
24F422CFAF5: 00 00                 - add [rax],al
24F422CFAF7: 00 00                 - add [rax],al
24F422CFAF9: 00 00                 - add [rax],al
24F422CFAFB: 00 00                 - add [rax],al
24F422CFAFD: 00 00                 - add [rax],al
24F422CFAFF: 00                    - db 00 
// ---------- INJECTING HERE ----------
Source.SpaceShip.SpaceShipData:GetMaxGrunts: 55                    - push rbp
// ---------- DONE INJECTING  ----------
Source.SpaceShip.SpaceShipData:GetMaxGrunts+1: 48 8B EC              - mov rbp,rsp
Source.SpaceShip.SpaceShipData:GetMaxGrunts+4: 48 83 EC 60           - sub rsp,60
Source.SpaceShip.SpaceShipData:GetMaxGrunts+8: 48 89 75 E8           - mov [rbp-18],rsi
Source.SpaceShip.SpaceShipData:GetMaxGrunts+c: 48 89 7D F0           - mov [rbp-10],rdi
Source.SpaceShip.SpaceShipData:GetMaxGrunts+10: 4C 89 7D F8           - mov [rbp-08],r15
Source.SpaceShip.SpaceShipData:GetMaxGrunts+14: 48 8B F1              - mov rsi,rcx
Source.SpaceShip.SpaceShipData:GetMaxGrunts+17: 48 8B 86 F0 00 00 00  - mov rax,[rsi+000000F0]
Source.SpaceShip.SpaceShipData:GetMaxGrunts+1e: 48 8B C8              - mov rcx,rax
Source.SpaceShip.SpaceShipData:GetMaxGrunts+21: 83 38 00              - cmp dword ptr [rax],00
Source.SpaceShip.SpaceShipData:GetMaxGrunts+24: 66 90                 - nop 2
}
</AssemblerScript>
        </CheatEntry>
        <CheatEntry>
          <ID>67</ID>
          <Description>"Spoof Add Crew Amount ( use this to get lots of crew by selling it after purchase )"</Description>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>{ Game   : VanguardGalaxy.exe
  Version: 
  Date   : 2026-06-18
  Author : Admin

  This script does blah blah blah
}

define(address,Source.SpaceShip.SpaceShipData:AddCrew )
define(bytes,55 48 8B EC 48 83 EC 60)

[ENABLE]

assert(address,bytes)
alloc(newmem,$1000,Source.SpaceShip.SpaceShipData:AddCrew )

label(code)
label(return)

newmem:
  add r8,#99999
code:
  push rbp
  mov rbp,rsp
  sub rsp,60
  jmp return

address:
  jmp newmem
  nop 3
return:

[DISABLE]

address:
  db bytes
  // push rbp
  // mov rbp,rsp
  // sub rsp,60

dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: Source.SpaceShip.SpaceShipData:AddCrew

24F422D167B: 4F 02 00     - add r8b,[r8]
24F422D167E: 00 00        - add [rax],al
24F422D1680: 00 00        - add [rax],al
24F422D1682: 00 00        - add [rax],al
24F422D1684: 00 00        - add [rax],al
24F422D1686: 00 00        - add [rax],al
24F422D1688: 00 00        - add [rax],al
24F422D168A: 00 00        - add [rax],al
24F422D168C: 00 00        - add [rax],al
24F422D168E: 00 00        - add [rax],al
// ---------- INJECTING HERE ----------
Source.SpaceShip.SpaceShipData:AddCrew: 55           - push rbp
// ---------- DONE INJECTING  ----------
Source.SpaceShip.SpaceShipData:AddCrew+1: 48 8B EC     - mov rbp,rsp
Source.SpaceShip.SpaceShipData:AddCrew+4: 48 83 EC 60  - sub rsp,60
Source.SpaceShip.SpaceShipData:AddCrew+8: 48 89 5D E0  - mov [rbp-20],rbx
Source.SpaceShip.SpaceShipData:AddCrew+c: 48 89 7D E8  - mov [rbp-18],rdi
Source.SpaceShip.SpaceShipData:AddCrew+10: 4C 89 6D F0  - mov [rbp-10],r13
Source.SpaceShip.SpaceShipData:AddCrew+14: 4C 89 75 F8  - mov [rbp-08],r14
Source.SpaceShip.SpaceShipData:AddCrew+18: 4C 8B F1     - mov r14,rcx
Source.SpaceShip.SpaceShipData:AddCrew+1b: 48 89 55 D0  - mov [rbp-30],rdx
Source.SpaceShip.SpaceShipData:AddCrew+1f: 49 8B F8     - mov rdi,r8
Source.SpaceShip.SpaceShipData:AddCrew+22: 4C 89 4D C8  - mov [rbp-38],r9
}
</AssemblerScript>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
    <CheatEntry>
      <ID>11</ID>
      <Description>"&lt;- Discord server"</Description>
      <Color>954A4A</Color>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{$lua}
if syntaxcheck then return end
[enable]
shellExecute("https://discord.gg/C2YZkYFAtD")
error()
[disable]
</AssemblerScript>
    </CheatEntry>
    <CheatEntry>
      <ID>12</ID>
      <Description>"&lt;- Donate to my Ko-fi"</Description>
      <Color>954A4A</Color>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{$lua}
if syntaxcheck then return end
[enable]
shellExecute("https://ko-fi.com/imjustmaxie")
error()
[disable]
</AssemblerScript>
    </CheatEntry>
    <CheatEntry>
      <ID>13</ID>
      <Description>"&lt;- Toggle Compact Mode"</Description>
      <Color>AAAAAA</Color>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{$lua}
if syntaxcheck then return end
[enable]
local function compactMode() local mf = getMainForm() mf.Panel5.Visible = not mf.Panel5.Visible mf.Splitter1.Visible = not mf.Splitter1.Visible end
compactMode()
error()
[disable]
</AssemblerScript>
    </CheatEntry>
    <CheatEntry>
      <ID>14</ID>
      <Description>"&lt;- Run Game (Steam)"</Description>
      <Color>286FFF</Color>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{$lua}
if syntaxcheck then return end
[enable]
shellExecute("steam://rungameid/3471800")
error()
[disable]
</AssemblerScript>
    </CheatEntry>
    <CheatEntry>
      <ID>18</ID>
      <Description>"&lt;- Close Current Process"</Description>
      <Color>286FFF</Color>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{$lua}
if syntaxcheck then return end
[enable]
shellExecute("taskkill", ("/PID %d /T /F"):format(getOpenedProcessID()))
--os.execute(("taskkill /PID %d /T /F"):format(getOpenedProcessID()))
error()
[disable]
</AssemblerScript>
    </CheatEntry>
    <CheatEntry>
      <ID>15</ID>
      <Description>"&lt;- Disable Without Execute (use if game crashes)"</Description>
      <Color>286FFF</Color>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{$lua}
if syntaxcheck then return end
[enable]
getAddressList().disableAllWithoutExecute()
deleteAllRegisteredSymbols()
error()
[disable]
</AssemblerScript>
    </CheatEntry>
    <CheatEntry>
      <ID>16</ID>
      <Description>"&lt;- Activation"</Description>
      <Options moHideChildren="1" moManualExpandCollapse="1" moDeactivateChildrenAsWell="1"/>
      <Color>8000FF</Color>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{$LUA}
if syntaxcheck then return end

[enable]
if not ijg or type(ijg) ~= "table" then
    tf = findTableFile("IJL.lua")
    local stmm = tf.stream
    local fn, err = load(readStringLocal(stmm.memory,stmm.size))
    if not fn then return error('[ERROR] Library could not be loaded.') end
    ijg = fn()
end
--if tf then tf.delete() tf = nil end
ijg:attachProcess( getAddressList().getMemoryRecord(2).Description:match( "Process: (.*)" ) )
ijg:runMono(1)
[disable]
ijg:runMono()
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>17</ID>
          <Description>"&lt;- Main"</Description>
          <Options moHideChildren="1" moManualExpandCollapse="1" moDeactivateChildrenAsWell="1"/>
          <Color>8000FF</Color>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>{$LUA}
if syntaxcheck then return end

{$ASM}
[enable]

{$LUA}
if syntaxcheck then return end

if getCEVersion() &lt; 7.6 then
	if monopipe and monopipe.IL2CPP then if monoSymbolList.FullyLoaded == false then error() end end
else
	if libmono and libmono.monopipes ~= {} and libmono.IL2CPP then if monoSymbolList.FullyLoaded == false then error() end end
end

GameManagerC = ijg:enumOffsets(GameManagerC,'GameManager','Behaviour',nil,1)
GamePlayerC = ijg:enumOffsets(GamePlayerC,'GamePlayer','Source.Player')
AbstractUnitC = ijg:enumOffsets(AbstractUnitC,'AbstractUnit','Behaviour.Unit')
AbstractUnitDataC = ijg:enumOffsets(AbstractUnitDataC,'AbstractUnitData','Source.Data')
SpaceShipC = ijg:enumOffsets(SpaceShipC,'SpaceShip','Behaviour.Unit')
SpaceShipDataC = ijg:enumOffsets(SpaceShipDataC,'SpaceShipData','Source.SpaceShip')
DamageDataC = ijg:enumOffsets(DamageDataC,'DamageData','Behaviour.Weapons')
AbstractAbilityC = ijg:enumOffsets(AbstractAbilityC,'AbstractAbility','Behaviour.Ability')

GameManagerA = ijg:getSFAddress(_,'GameManager','instance','Behaviour',nil,1)
GamePlayerA = ijg:getSFAddress(_,'GamePlayer','current','Source.Player')
ConsoleScreenA = ijg:getSFAddress(_,'ConsoleScreen','instance','Behaviour.UI.DebugScreen',nil,1)

--mono_SymbolLookupID = registerSymbolLookupCallback(mono_symbolLookupCallback,slNotSymbol)
{$ASM}

globalalloc(ijmalloc,2048,$process)
alloc(ijmscripts,2048,$process)

registersymbol(ijmscripts)

// MONO
define(aob_memm,"UnityEngine.Application:get_platform")
//define(aob_memm,"UnityEngine.Application:get_isPlaying")
//define(aob_memm,"UnityEngine.EventSystems.EventSystem:get_current")

// IL2CPP
//define(aob_memm,"UnityEngine.Application.get_platform")
//define(aob_memm,"UnityEngine.Application.get_isPlaying")
//define(aob_memm,"UnityEngine.EventSystems.EventSystem.get_current")

define(aob_spaceship,"Behaviour.Unit.SpaceShip:Update")
define(aob_refinetime,"Source.Mining.Refinery:get_refinedPerSecond")
define(aob_forgetime,"Source.Mining.Forge:get_craftingSpeed")
define(aob_ability,"Behaviour.Ability.AbstractAbility:Update")
define(aob_warpfuel,"Behaviour.Managers.TravelManager:GetWarpFuelAutopilotMultiplier")
define(aob_freecrew1,"Behaviour.UI.Spacestation.Location.PersonnelCenterCrewPanel:InitBuySlot")
define(aob_freecrew2,"Behaviour.UI.Spacestation.Location.PersonnelCenterCrewPanel:ExecuteBuy")

registersymbol(aob_memm aob_spaceship aob_refinetime aob_forgetime aob_ability aob_warpfuel aob_freecrew1 aob_freecrew2)
registersymbol(bkp_memm bkp_spaceship bkp_refinetime bkp_forgetime bkp_ability bkp_warpfuel bkp_freecrew1 bkp_freecrew2)
registersymbol(flag tempval)
registersymbol(ptr_GameManager ptr_GamePlayer)

registersymbol(orig_refinetime orig_forgetime orig_warpfuel orig_freecrew1 orig_freecrew2)

	ijmscripts+0:
	// Max Hull HP (Current Ship)
	ret
    ijmscripts+100:
	// Max Armor HP (Current Ship)
	ret
    ijmscripts+200:
	// Max Shield HP (Current Ship)
	ret
    ijmscripts+300:
	// Fast Warp Speed (Current Ship)
	ret
    ijmscripts+400:
    // Zero Refinery Processing Time
    jmp orig_refinetime
    ijmscripts+500:
    // Zero Forge Processing Time
    jmp orig_forgetime
    ijmscripts+600:
    // Zero Ability Cooldown
    ret
    ijmscripts+700:
    // Fast Warp Speed
    jmp orig_warpfuel
    ijmscripts+800:
    // Free Crew Purchase [1]
    jmp orig_freecrew1
    ijmscripts+900:
    // Free Crew Purchase [2]
    jmp orig_freecrew2

ijmalloc:

	// BKPS

	bkp_memm:
	bigread(aob_memm)
    bkp_spaceship:
    bigread(aob_spaceship)
    bkp_refinetime:
    bigread(aob_refinetime)
    bkp_forgetime:
    bigread(aob_forgetime)
    bkp_ability:
    bigread(aob_ability)
    bkp_warpfuel:
    bigread(aob_warpfuel)
    bkp_freecrew1:
    bigread(aob_freecrew1)
    bkp_freecrew2:
    bigread(aob_freecrew2)


	// PTRS
    ptr_GameManager:
    dq 0
    ptr_GamePlayer:
    dq 0

	// ETCS
	flag:
	dq 0
	// 00 = Toggle Console

	tempval:
	dq 0    // Translation Object
    dq 0    // test
    dq 0    //

	// FUNCS

	func_getptr:
    // RCX = localptr , RDX = instanceptr , R8d = offset
    mov rdx,[rdx]
    test rdx,rdx
    je @f
    lea rdx,[rdx+r8d]
    test rdx,rdx
    je @f
    mov [rcx],rdx
    xor rcx,rcx
    xor rdx,rdx
    xor r8d,r8d
    @@:
    ret

	func_getptr2:
    // RCX = localptr , RDX = instance_address , R8d = offset
    test rdx,rdx
    je @f
    mov rdx,[rdx+r8d]
    test rdx,rdx
    je @f
    mov [rcx],rdx
    xor rcx,rcx
    xor rdx,rdx
    xor r8d,r8d
    @@:
    ret

    func_translate:
    // requires RCX = Ptr-&gt;String to convert
    // returns RAX = String object
    push r14
    push r15
    sub rsp,28
    mov r15,rcx

    call mono_get_root_domain
    mov r14,rax              // RAX = monodomain
    call mono_get_object_class

    cmp qword ptr [tempval+10],0
    jne @f

    mov rcx,r14
    mov rdx,rax              // RAX = monoclass
    xor r8,r8
    call mono_array_new
    mov [tempval+10],rax     // RAX = monoarray

    @@:
    mov rcx,r15
    mov rdx,[tempval+10]
    mov r11,"Source.Util.Translation:TranslateOnly"
    call r11

    add rsp,28
    pop r15
    pop r14
    ret


	// CAVES

	cave_memm:
	sub rsp,28

	_1: // Pointer retrievals go here

    // working, but unused for now
    {mov rcx,tempval+0
    mov rcx,[rcx]
    test rcx,rcx
    je @f
    call func_translate
    mov [tempval+8],rax}

    @@:
    mov rcx,ptr_GameManager
    mov rdx,$GameManagerA
    xor r8,r8
    call func_getptr
    @@:
    mov rcx,ptr_GamePlayer
    mov rdx,$GamePlayerA
    xor r8,r8
    call func_getptr



	_2: // Main code goes here

	ndd_memm:
	add rsp,28
	jmp orig_memm

    //
    cave_spaceship:
    call ijmscripts+0
    call ijmscripts+100
    call ijmscripts+200
    call ijmscripts+300
    jmp orig_spaceship

    //
    cave_refinetime:
    jmp ijmscripts+400

    //
    cave_forgetime:
    jmp ijmscripts+500

    //
    cave_ability:
    call ijmscripts+600
    jmp orig_ability

    //
    cave_warpfuel:
    jmp ijmscripts+700

    //
    cave_freecrew1:
    jmp ijmscripts+800

    //
    cave_freecrew2:
    jmp ijmscripts+900


	// ORIGS

	orig_memm:
	bigreassemble(aob_memm)
	jmp return_memm

    orig_spaceship:
    bigreassemble(aob_spaceship)
    jmp return_spaceship

    orig_refinetime:
    bigreassemble(aob_refinetime)
    jmp return_refinetime

    orig_forgetime:
    bigreassemble(aob_forgetime)
    jmp return_forgetime

    orig_ability:
    bigreassemble(aob_ability)
    jmp return_ability

    orig_warpfuel:
    bigreassemble(aob_warpfuel)
    jmp return_warpfuel

    orig_freecrew1:
    bigreassemble(aob_freecrew1)
    jmp return_freecrew1

    orig_freecrew2:
    bigreassemble(aob_freecrew2)
    jmp return_freecrew2



aob_memm:
jmp far cave_memm
dbee(aob_memm)
return_memm:

aob_spaceship:
jmp far cave_spaceship
dbee(aob_spaceship)
return_spaceship:

aob_refinetime:
jmp far cave_refinetime
dbee(aob_refinetime)
return_refinetime:

aob_forgetime:
jmp far cave_forgetime
dbee(aob_forgetime)
return_forgetime:

aob_ability:
jmp far cave_ability
dbee(aob_ability)
return_ability:

aob_warpfuel:
jmp far cave_warpfuel
dbee(aob_warpfuel)
return_warpfuel:

aob_freecrew1:
jmp far cave_freecrew1
dbee(aob_freecrew1)
return_freecrew1:

aob_freecrew2:
jmp far cave_freecrew2
dbee(aob_freecrew2)
return_freecrew2:

[disable]


aob_memm:
bigread(bkp_memm)

aob_spaceship:
bigread(bkp_spaceship)

aob_refinetime:
bigread(bkp_refinetime)

aob_forgetime:
bigread(bkp_forgetime)

aob_ability:
bigread(bkp_ability)

aob_warpfuel:
bigread(bkp_warpfuel)

aob_freecrew1:
bigread(bkp_freecrew1)

aob_freecrew2:
bigread(bkp_freecrew2)


unregistersymbol(*)
dealloc(*)

{$LUA}
if syntaxcheck then return end

ijg:clearStructs()
--ijf.utils.run_functions(1)
--unregisterSymbolLookupCallback(mono_SymbolLookupID)
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>41</ID>
              <Description>"Pointers"</Description>
              <Options moHideChildren="1" moDeactivateChildrenAsWell="1"/>
              <GroupHeader>1</GroupHeader>
              <CheatEntries>
                <CheatEntry>
                  <ID>49</ID>
                  <Description>"Credits"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>8 Bytes</VariableType>
                  <Address>ptr_gameplayer</Address>
                  <Offsets>
                    <Offset>GamePlayerC.credits</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>50</ID>
                  <Description>"Vanguard Marks"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>8 Bytes</VariableType>
                  <Address>ptr_gameplayer</Address>
                  <Offsets>
                    <Offset>GamePlayerC.vanguardMarks</Offset>
                  </Offsets>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
            <CheatEntry>
              <ID>55</ID>
              <Description>"[T] Unlock Console (toggle with Tilde [`])"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[enable]
Behaviour.UI.DebugScreen.ConsoleScreen:ConsoleAvailable:
mov eax,1
ret
db 90 90

[disable]
Behaviour.UI.DebugScreen.ConsoleScreen:ConsoleAvailable:
db 55 48 8b ec 48 83 ec 20
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>32</ID>
              <Description>"Max Ship Hull"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[enable]
ijmscripts+0:
push r15
mov r15,rcx

mov rcx,[rcx+"$AbstractUnitC['&lt;unitData&gt;k__BackingField']"]
test rcx,rcx
je ndd

cmp byte ptr [rcx+$SpaceShipDataC.isPlayer],1
jne ndd

fldz
fstp dword ptr [rcx+$AbstractUnitDataC.damageTaken]

fld dword ptr [rcx+$AbstractUnitDataC.maxHullHP]
fstp dword ptr [rcx+$AbstractUnitDataC.currentHullHP]

ndd:
mov rcx,r15
pop r15
ret

[disable]
ijmscripts+0:
ret
nop
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>38</ID>
              <Description>"Max Ship Armor"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[enable]
ijmscripts+100:
push r15
mov r15,rcx

mov rcx,[rcx+"$AbstractUnitC['&lt;unitData&gt;k__BackingField']"]
test rcx,rcx
je ndd

cmp byte ptr [rcx+$SpaceShipDataC.isPlayer],1
jne ndd

fld dword ptr [rcx+$AbstractUnitDataC.maxArmorHP]
fstp dword ptr [rcx+$AbstractUnitDataC.currentArmorHP]

ndd:
mov rcx,r15
pop r15
ret

[disable]
ijmscripts+100:
ret
nop
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>40</ID>
              <Description>"Max Ship Shield"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[enable]
ijmscripts+200:
push r15
mov r15,rcx

mov rcx,[rcx+"$AbstractUnitC['&lt;unitData&gt;k__BackingField']"]
test rcx,rcx
je ndd

cmp byte ptr [rcx+$SpaceShipDataC.isPlayer],1
jne ndd

fld dword ptr [rcx+$AbstractUnitDataC.maxShieldHP]
fstp dword ptr [rcx+$AbstractUnitDataC.currentShieldHP]

ndd:
mov rcx,r15
pop r15
ret

[disable]
ijmscripts+200:
ret
nop
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>61</ID>
              <Description>"[T] Zero Ability Cooldown"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[enable]
ijmscripts+600:
push r15
sub rsp,28
mov r15,rcx

@@:
mov rcx,[rcx+$AbstractAbilityC.parentUnit]
test rcx,rcx
je ndd
mov rcx,[rcx+$"AbstractUnitC['&lt;unitData&gt;k__BackingField']"]
test rcx,rcx
je ndd
cmp byte ptr [rcx+SpaceShipDataC.isPlayer], 1
jne ndd

@@:
fldz
fstp dword ptr [r15+"$AbstractAbilityC['&lt;cooldownRemaining&gt;k__BackingField']"]


ndd:
mov rcx,r15
add rsp,28
pop r15
ret

[disable]
ijmscripts+600:
ret
nop
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>54</ID>
              <Description>"[T] Ignore Warp Fuel Requirement (uses fuel if available)"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
Source.Item.Inventory:IsWarpFuelAvailable:
mov eax,1
ret
nop
nop
 
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
Source.Item.Inventory:IsWarpFuelAvailable:
db 55 48 8b ec 48 83 ec 50
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>71</ID>
              <Description>"[T] Fast Warp Speed"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[enable]
ijmscripts+700:
movss xmm0,[fs]
ret

align 10,90

fs:
dd (float)30000


[disable]
ijmscripts+700:
jmp orig_warpfuel

</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>29</ID>
              <Description>"[T] Zero Forge Crafting Cost (Credits)"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
Behaviour.Crafting.CraftingRecipe:get_craftingCost:
xor eax,eax
ret
nop
 
 
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
Behaviour.Crafting.CraftingRecipe:get_craftingCost:
db 55 48 8b ec
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>56</ID>
              <Description>"[T] Zero Forge Extract Cost (Credits)"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[enable]
Source.Mining.Refinery:GetExtractCost:
xor eax,eax
ret
nop
[disable]
Source.Mining.Refinery:GetExtractCost:
db 55 48 8b ec
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>35</ID>
              <Description>"[T] Zero Weight"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[enable]
Source.Item.Inventory:get_spaceUsed:
xorps xmm0,xmm0
ret
[disable]
Source.Item.Inventory:get_spaceUsed:
db 55 48 8b ec
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>42</ID>
              <Description>"[T] Spoof Crafting Requirement Amount"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
Behaviour.Crafting.CraftingRecipe:CountAvailableForCrafting:
mov eax,#1000000
ret
db 90 90 90 90 90
 
 
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
Behaviour.Crafting.CraftingRecipe:CountAvailableForCrafting:
db 55 48 8b ec 48 81 ec c0 00 00 00
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>57</ID>
              <Description>"[T] Minimum Refinery Processing Time"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[enable]
ijmscripts+400:
movss xmm0,[fs]
ret

align 10,90

fs:
dd (float)1000000000

[disable]
ijmscripts+400:
jmp orig_refinetime
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>59</ID>
              <Description>"[T] Minimum Forge Processing Time"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[enable]
ijmscripts+500:
movss xmm0,[fs]
ret

align 10,90

fs:
dd (float)1000000000

[disable]
ijmscripts+500:
jmp orig_forgetime
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>60</ID>
              <Description>"[T] No Skill Point Decrease"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
Source.Personnel.CaptainData:GetInvestedSkillPoints:
xor eax,eax
ret
nop
 
 
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
Source.Personnel.CaptainData:GetInvestedSkillPoints:
db 55 48 8b ec
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>62</ID>
              <Description>"[T] Zero Officer Purchase Cost (Personnel &gt; Officers)"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
Source.Personnel.OfficerData:get_purchaseCost:
xor eax,eax
ret
nop
 
 
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
Source.Personnel.OfficerData:get_purchaseCost:
db 55 48 8b ec
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>72</ID>
              <Description>"[T] Free Crew Purchase (Personnel &gt; Crew)"</Description>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[enable]
ijmscripts+800:
mov [esp+38],0
jmp orig_freecrew1

ijmscripts+900:
xor r9,r9
jmp orig_freecrew2

[disable]

ijmscripts+800:
jmp orig_freecrew1

ijmscripts+900:
jmp orig_freecrew2
</AssemblerScript>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
  <UserdefinedSymbols>
    <SymbolEntry>
      <Name>ijmalloc</Name>
      <Address>7FF6F0EA0000</Address>
    </SymbolEntry>
  </UserdefinedSymbols>
</CheatTable>
