Jeremy FLEURY 45e980b4e3 push
2019-07-17 11:51:13 +02:00

179 lines
7.1 KiB
ArmAsm

# ------------------------------------------------------------------------------
# By: pzarmehr <pzarmehr@student.42.fr> ----------------------------------------
# ------------------------------------------------------------------------------
.name "Overwatch"
.comment "Reinhardt, Pharah, Mercy, Mei, Symmetra & Torbjorn"
# ------------------------------------------------------------------------------
# Defend objective A -----------------------------------------------------------
# ------------------------------------------------------------------------------
ld %1, r16
st r1, 6
mei:
live %0
zjmp %:mei
st r15, -12
st r16, -22
# ------------------------------------------------------------------------------
# Escort the payload -----------------------------------------------------------
# ------------------------------------------------------------------------------
fork %:reinhardt
pharah:
st r1, 6
live %0
fork %:symmetra
st r1, 6
live %0
ld %589824, r13 # r13 = 0x00090000 (0x00 zjmp %0)
ld %8, r14
ld %-511, r15
ld %0, r16
zjmp %:payload
payload:
ld %190057742, r11 # r11 = 0x0b540d0e (sti r13 r14 ..)
ld %269090402, r12 # r12 = 0x1009fe62 (.. r16 zjmp -414)
ld %0, r16
st r11, -501 #-491
st r12, -502 #-492
#st r1, 6
#live %0
zjmp %-511
reinhardt:
st r1, 6
live %0
fork %:mercy
st r1, 6
live %0
ld %190057743, r13 # r13 = 0x0b540d0f (sti r13 r15 ..)
ld %-409, r14
ld %-21, r15
ld %0, r16
zjmp %:payload
mercy:
st r1, 6
live %0
ld %269090790, r13 # r13 = 0x1009ffe6 (.. r16 zjmp %-26)
ld %-405, r14
ld %-17, r15
ld %0, r16
zjmp %:payload
# ------------------------------------------------------------------------------
# ------------------------------------------------------------------------------
# ------------------------------------------------------------------------------
lfork %0 # . B@M@B@MMM@B@B@B@MMM@@@M@B
lfork %0 # @B@B.i@MBB@B@B@@BM@::B@B@
lfork %0 # B@@@ .B@B.:@B@ :B@B @B@O
lfork %0 # :0 r@B@ B@@ .@B@: P:
lfork %0 # vMB :@B@ :BO7
lfork %0 # ,B@B
lfork %0 #
lfork %0 # :PB@Bk:
lfork %0 # ,jB@@B@B@B@BBL.
lfork %0 # 7G@B@B@BMMMMMB@B@B@Nr
lfork %0 # :kB@B@@@MMOMOMOMOMMMM@B@B@B1,
lfork %0 # :5@B@B@B@BBMMOMOMOMOMOMOMM@@@B@B@BBu.
lfork %0 # 70@@@B@B@B@BXBBOMOMOMOMOMOMMBMPB@B@B@B@B@Nr
lfork %0 # G@@@BJ iB@B@@ OBMOMOMOMOMOMOM@2 B@B@B. EB@B@S
lfork %0 # @@BM@GJBU. iSuB@OMOMOMOMOMOMM@OU1: .kBLM@M@B@
lfork %0 # B@MMB@B 7@BBMMOMOMOMOMOBB@: B@BMM@B
lfork %0 # @@@B@B 7@@@MMOMOMOMM@B@: @@B@B@
lfork %0 # @@OLB. BNB@MMOMOMM@BEB rBjM@B
lfork %0 # @@ @ M OBOMOMM@q M .@ @@
lfork %0 # @@OvB B:u@MMOMOMMBJiB .BvM@B
lfork %0 # @B@B@J 0@B@MMOMOMOMB@B@u q@@@B@
lfork %0 # B@MBB@v G@@BMMMMMMMMMMMBB@5 F@BMM@B
lfork %0 # @BBM@BPNi LMEB@OMMMM@B@MMOMM@BZM7 rEqB@MBB@
lfork %0 # B@@@BM B@B@B qBMOMB@B@B@BMOMBL B@B@B @B@B@M
lfork %0 # J@@@@PB@B@B@B7G@OMBB. ,@MMM@qLB@B@@@BqB@BBv
lfork %0 # iGB@,i0@M@B@MMO@E : M@OMM@@@B@Pii@@N:
lfork %0 # . B@M@B@MMM@B@B@B@MMM@@@M@B
lfork %0 # @B@B.i@MBB@B@B@@BM@::B@B@
lfork %0 # B@@@ .B@B.:@B@ :B@B @B@O
lfork %0 # :0 r@B@ B@@ .@B@: P:
lfork %0 # vMB :@B@ :BO7
lfork %0 # ,B@B
lfork %0 #
lfork %0 # :PB@Bk:
lfork %0 # ,jB@@B@B@B@BBL.
lfork %0 # 7G@B@B@BMMMMMB@B@B@Nr
lfork %0 # :kB@B@@@MMOMOMOMOMMMM@B@B@B1,
lfork %0 # :5@B@B@B@BBMMOMOMOMOMOMOMM@@@B@B@BBu.
lfork %0 # 70@@@B@B@B@BXBBOMOMOMOMOMOMMBMPB@B@B@B@B@Nr
lfork %0 # G@@@BJ iB@B@@ OBMOMOMOMOMOMOM@2 B@B@B. EB@B@S
lfork %0 # @@BM@GJBU. iSuB@OMOMOMOMOMOMM@OU1: .kBLM@M@B@
lfork %0 # B@MMB@B 7@BBMMOMOMOMOMOBB@: B@BMM@B
lfork %0 # @@@B@B 7@@@MMOMOMOMM@B@: @@B@B@
lfork %0 # @@OLB. BNB@MMOMOMM@BEB rBjM@B
lfork %0 # @@ @ M OBOMOMM@q M .@ @@
lfork %0 # @@OvB B:u@MMOMOMMBJiB .BvM@B
lfork %0 # @B@B@J 0@B@MMOMOMOMB@B@u q@@@B@
lfork %0 # B@MBB@v G@@BMMMMMMMMMMMBB@5 F@BMM@B
lfork %0 # @BBM@BPNi LMEB@OMMMM@B@MMOMM@BZM7 rEqB@MBB@
lfork %0 # B@@@BM B@B@B qBMOMB@B@B@BMOMBL B@B@B @B@B@M
lfork %0 # J@@@@PB@B@B@B7G@OMBB. ,@MMM@qLB@B@@@BqB@BBv
lfork %0 # iGB@,i0@M@B@MMO@E : M@OMM@@@B@Pii@@N:
lfork %0 # . B@M@B@MMM@B@B@B@MMM@@@M@B
lfork %0 # @B@B.i@MBB@B@B@@BM@::B@B@
lfork %0 # B@@@ .B@B.:@B@ :B@B @B@O
lfork %0 # :0 r@B@ B@@ .@B@: P:
lfork %0 # vMB :@B@ :BO7
lfork %0 # ,B@B
lfork %0 #
lfork %0 # :PB@Bk:
lfork %0 # ,jB@@B@B@B@BBL.
lfork %0 # 7G@B@B@BMMMMMB@B@B@Nr
lfork %0 # :kB@B@@@MMOMOMOMOMMMM@B@B@B1,
lfork %0 # :5@B@B@B@BBMMOMOMOMOMOMOMM@@@B@B@BBu.
lfork %0 # 70@@@B@B@B@BXBBOMOMOMOMOMOMMBMPB@B@B@B@B@Nr
# ------------------------------------------------------------------------------
# Capture objective B ----------------------------------------------------------
# ------------------------------------------------------------------------------
symmetra:
ldi %:mei, %0, r1 # r1 = 0x01?????? (live ?? ?? ?? ..)
ldi %:mei, %4, r2 # r2 = 0x??09fffb (..?? zjmp %-5)
ld %196608, r3 # r3 = 0x00030000
add r2, r3, r3 # r3 = 0x??0cfffb (..?? fork %-5)
torbjorn:
ld %57671937, r16 # r16 = 0x03700101 (st r1 0x01 ..)
st r16, 511
ld %4278415363, r16 # r16 = 0xff037003 (.. 0xff st r3 ..)
st r16, 503
ld %33424240, r16 # r16 = 0x01fe0370 (.. 0x01fe st ..)
st r16, 495
ld %16907523, r16 # r16 = 0x0101fd03 (.. r1 0x01fd st..)
st r16, 487
ld %1879245308, r16 # r16 = 0x700301fc (.. r3 0x01fc)
st r16, 479
ld %57671937, r16 # r16 = 0x03700101 (st r1 0x01 ..)
st r16, 471
ld %4211306498, r16 # r16 = 0xfb037002 (.. 0xfb st r2..)
st r16, 463
ld %33162096, r16 # r16 = 0x01fa0370 (.. 0x01fa st ..)
st r16, 455
ld %285205251, r16 # r16 = 0x10ffe303 (.. r16 0xffe3 st ..)
st r16, 447
ld %1880162275, r16 # r16 = 0x7010ffe3 (.. r16 0xffe3)
st r16, 439
ld %57676031, r16 # r16 = 0x037010ff (st r16 0xff ..)
st r16, 431
ld %3808653328, r16 # r16 = 0xe3037010 (.. 0xe3 st r16..)
st r16, 423
ld %4293067632, r16 # r16 = 0xffe30370 (.. 0xffe3 st ..)
st r16, 415
ld %285205251, r16 # r16 = 0x10ffe303 (.. r16 0xffe3 st ..)
st r16, 407
ld %1880162275, r16 # r16 = 0x7010ffe3 (.. r16 0xffe3)
st r16, 399
ld %151110400, r16 # r16 = 0x0901c300 (zjmp %451)
st r16, 391
ld %0, r16
zjmp %319