Created
January 7, 2023 13:29
-
-
Save zwyz/adda7192bb0c518b8177ac3ffc9191f3 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Memory = bytearray() | |
packet = int(input()) | |
ref_1 = packet | |
ref_2 = Memory | |
ref_3 = store(ref_2, 0xa0000017, 0x0) # Byte reference - MOV operation | |
ref_4 = store(ref_3, 0xa0000016, 0x0) # Byte reference - MOV operation | |
ref_5 = store(ref_4, 0xa0000015, 0x0) # Byte reference - MOV operation | |
ref_6 = store(ref_5, 0xa0000014, 0x0) # Byte reference - MOV operation | |
ref_7 = store(ref_6, 0xa0000013, 0x0) # Byte reference - MOV operation | |
ref_8 = store(ref_7, 0xa0000012, 0x0) # Byte reference - MOV operation | |
ref_9 = store(ref_8, 0xa0000011, 0x0) # Byte reference - MOV operation | |
ref_10 = store(ref_9, 0xa0000010, 0x0) # Byte reference - MOV operation | |
ref_13 = store(ref_10, 0xa000000b, 0x0) # Byte reference - MOV operation | |
ref_14 = store(ref_13, 0xa000000a, 0x0) # Byte reference - MOV operation | |
ref_15 = store(ref_14, 0xa0000009, 0x0) # Byte reference - MOV operation | |
ref_16 = store(ref_15, 0xa0000008, 0x0) # Byte reference - MOV operation | |
ref_20 = store(ref_16, 0x9fffffef, 0x0) # Byte reference - PUSH operation | |
ref_21 = store(ref_20, 0x9fffffee, 0x0) # Byte reference - PUSH operation | |
ref_22 = store(ref_21, 0x9fffffed, 0x0) # Byte reference - PUSH operation | |
ref_23 = store(ref_22, 0x9fffffec, 0x0) # Byte reference - PUSH operation | |
ref_24 = store(ref_23, 0x9fffffeb, 0x9f) # Byte reference - PUSH operation | |
ref_25 = store(ref_24, 0x9fffffea, 0xff) # Byte reference - PUSH operation | |
ref_26 = store(ref_25, 0x9fffffe9, 0xff) # Byte reference - PUSH operation | |
ref_27 = store(ref_26, 0x9fffffe8, 0xf0) # Byte reference - PUSH operation | |
ref_31 = store(ref_27, 0x9fffffe7, 0x0) # Byte reference - PUSH operation | |
ref_32 = store(ref_31, 0x9fffffe6, 0x0) # Byte reference - PUSH operation | |
ref_33 = store(ref_32, 0x9fffffe5, 0x0) # Byte reference - PUSH operation | |
ref_34 = store(ref_33, 0x9fffffe4, 0x0) # Byte reference - PUSH operation | |
ref_35 = store(ref_34, 0x9fffffe3, 0x0) # Byte reference - PUSH operation | |
ref_36 = store(ref_35, 0x9fffffe2, 0x0) # Byte reference - PUSH operation | |
ref_37 = store(ref_36, 0x9fffffe1, 0x0) # Byte reference - PUSH operation | |
ref_38 = store(ref_37, 0x9fffffe0, 0x0) # Byte reference - PUSH operation | |
ref_42 = store(ref_38, 0x9fffffdf, 0x0) # Byte reference - PUSH operation | |
ref_43 = store(ref_42, 0x9fffffde, 0x0) # Byte reference - PUSH operation | |
ref_44 = store(ref_43, 0x9fffffdd, 0x0) # Byte reference - PUSH operation | |
ref_45 = store(ref_44, 0x9fffffdc, 0x0) # Byte reference - PUSH operation | |
ref_46 = store(ref_45, 0x9fffffdb, 0x0) # Byte reference - PUSH operation | |
ref_47 = store(ref_46, 0x9fffffda, 0x0) # Byte reference - PUSH operation | |
ref_48 = store(ref_47, 0x9fffffd9, 0x0) # Byte reference - PUSH operation | |
ref_49 = store(ref_48, 0x9fffffd8, 0x0) # Byte reference - PUSH operation | |
ref_53 = store(ref_49, 0x9fffffd7, 0x0) # Byte reference - PUSH operation | |
ref_54 = store(ref_53, 0x9fffffd6, 0x0) # Byte reference - PUSH operation | |
ref_55 = store(ref_54, 0x9fffffd5, 0x0) # Byte reference - PUSH operation | |
ref_56 = store(ref_55, 0x9fffffd4, 0x0) # Byte reference - PUSH operation | |
ref_57 = store(ref_56, 0x9fffffd3, 0x0) # Byte reference - PUSH operation | |
ref_58 = store(ref_57, 0x9fffffd2, 0x0) # Byte reference - PUSH operation | |
ref_59 = store(ref_58, 0x9fffffd1, 0x0) # Byte reference - PUSH operation | |
ref_60 = store(ref_59, 0x9fffffd0, 0x0) # Byte reference - PUSH operation | |
ref_64 = store(ref_60, 0x9fffffcf, 0x0) # Byte reference - PUSH operation | |
ref_65 = store(ref_64, 0x9fffffce, 0x0) # Byte reference - PUSH operation | |
ref_66 = store(ref_65, 0x9fffffcd, 0x0) # Byte reference - PUSH operation | |
ref_67 = store(ref_66, 0x9fffffcc, 0x0) # Byte reference - PUSH operation | |
ref_68 = store(ref_67, 0x9fffffcb, 0x0) # Byte reference - PUSH operation | |
ref_69 = store(ref_68, 0x9fffffca, 0x0) # Byte reference - PUSH operation | |
ref_70 = store(ref_69, 0x9fffffc9, 0x0) # Byte reference - PUSH operation | |
ref_71 = store(ref_70, 0x9fffffc8, 0x0) # Byte reference - PUSH operation | |
ref_75 = store(ref_71, 0x9fffffc7, 0x0) # Byte reference - PUSH operation | |
ref_76 = store(ref_75, 0x9fffffc6, 0x0) # Byte reference - PUSH operation | |
ref_77 = store(ref_76, 0x9fffffc5, 0x0) # Byte reference - PUSH operation | |
ref_78 = store(ref_77, 0x9fffffc4, 0x0) # Byte reference - PUSH operation | |
ref_79 = store(ref_78, 0x9fffffc3, 0x0) # Byte reference - PUSH operation | |
ref_80 = store(ref_79, 0x9fffffc2, 0x0) # Byte reference - PUSH operation | |
ref_81 = store(ref_80, 0x9fffffc1, 0x0) # Byte reference - PUSH operation | |
ref_82 = store(ref_81, 0x9fffffc0, 0x0) # Byte reference - PUSH operation | |
ref_86 = store(ref_82, 0x9fffffbf, 0x0) # Byte reference - PUSH operation | |
ref_87 = store(ref_86, 0x9fffffbe, 0x0) # Byte reference - PUSH operation | |
ref_88 = store(ref_87, 0x9fffffbd, 0x0) # Byte reference - PUSH operation | |
ref_89 = store(ref_88, 0x9fffffbc, 0x0) # Byte reference - PUSH operation | |
ref_90 = store(ref_89, 0x9fffffbb, 0x0) # Byte reference - PUSH operation | |
ref_91 = store(ref_90, 0x9fffffba, 0x0) # Byte reference - PUSH operation | |
ref_92 = store(ref_91, 0x9fffffb9, 0x0) # Byte reference - PUSH operation | |
ref_93 = store(ref_92, 0x9fffffb8, 0x0) # Byte reference - PUSH operation | |
ref_113 = store(ref_93, 0x9ffffed7, 0x0) # Byte reference - Saved Program Counter | |
ref_114 = store(ref_113, 0x9ffffed6, 0x0) # Byte reference - Saved Program Counter | |
ref_115 = store(ref_114, 0x9ffffed5, 0x0) # Byte reference - Saved Program Counter | |
ref_116 = store(ref_115, 0x9ffffed4, 0x1) # Byte reference - Saved Program Counter | |
ref_117 = store(ref_116, 0x9ffffed3, 0x40) # Byte reference - Saved Program Counter | |
ref_118 = store(ref_117, 0x9ffffed2, 0xc) # Byte reference - Saved Program Counter | |
ref_119 = store(ref_118, 0x9ffffed1, 0x17) # Byte reference - Saved Program Counter | |
ref_120 = store(ref_119, 0x9ffffed0, 0xf) # Byte reference - Saved Program Counter | |
ref_123 = store(ref_120, 0x9ffffee7, ((ref_1 >> 56) & 0xff)) # Byte reference - MOV operation | |
ref_124 = store(ref_123, 0x9ffffee6, ((ref_1 >> 48) & 0xff)) # Byte reference - MOV operation | |
ref_125 = store(ref_124, 0x9ffffee5, ((ref_1 >> 40) & 0xff)) # Byte reference - MOV operation | |
ref_126 = store(ref_125, 0x9ffffee4, ((ref_1 >> 32) & 0xff)) # Byte reference - MOV operation | |
ref_127 = store(ref_126, 0x9ffffee3, ((ref_1 >> 24) & 0xff)) # Byte reference - MOV operation | |
ref_128 = store(ref_127, 0x9ffffee2, ((ref_1 >> 16) & 0xff)) # Byte reference - MOV operation | |
ref_129 = store(ref_128, 0x9ffffee1, ((ref_1 >> 8) & 0xff)) # Byte reference - MOV operation | |
ref_130 = store(ref_129, 0x9ffffee0, (ref_1 & 0xff)) # Byte reference - MOV operation | |
ref_133 = store(ref_130, 0x9ffffedf, 0x0) # Byte reference - MOV operation | |
ref_134 = store(ref_133, 0x9ffffede, 0x0) # Byte reference - MOV operation | |
ref_135 = store(ref_134, 0x9ffffedd, 0x0) # Byte reference - MOV operation | |
ref_136 = store(ref_135, 0x9ffffedc, 0x0) # Byte reference - MOV operation | |
ref_137 = store(ref_136, 0x9ffffedb, 0x9f) # Byte reference - MOV operation | |
ref_138 = store(ref_137, 0x9ffffeda, 0xff) # Byte reference - MOV operation | |
ref_139 = store(ref_138, 0x9ffffed9, 0xff) # Byte reference - MOV operation | |
ref_140 = store(ref_139, 0x9ffffed8, 0x98) # Byte reference - MOV operation | |
ref_147 = store(ref_140, 0x9fffff9f, select(ref_140, 0x9ffffee7)) # Byte reference - MOV operation | |
ref_148 = store(ref_147, 0x9fffff9e, select(ref_140, 0x9ffffee6)) # Byte reference - MOV operation | |
ref_149 = store(ref_148, 0x9fffff9d, select(ref_140, 0x9ffffee5)) # Byte reference - MOV operation | |
ref_150 = store(ref_149, 0x9fffff9c, select(ref_140, 0x9ffffee4)) # Byte reference - MOV operation | |
ref_151 = store(ref_150, 0x9fffff9b, select(ref_140, 0x9ffffee3)) # Byte reference - MOV operation | |
ref_152 = store(ref_151, 0x9fffff9a, select(ref_140, 0x9ffffee2)) # Byte reference - MOV operation | |
ref_153 = store(ref_152, 0x9fffff99, select(ref_140, 0x9ffffee1)) # Byte reference - MOV operation | |
ref_154 = store(ref_153, 0x9fffff98, select(ref_140, 0x9ffffee0)) # Byte reference - MOV operation | |
ref_159 = store(ref_154, 0x9fffffa7, 0x0) # Byte reference - MOV operation | |
ref_160 = store(ref_159, 0x9fffffa6, 0x0) # Byte reference - MOV operation | |
ref_161 = store(ref_160, 0x9fffffa5, 0x0) # Byte reference - MOV operation | |
ref_162 = store(ref_161, 0x9fffffa4, 0x0) # Byte reference - MOV operation | |
ref_163 = store(ref_162, 0x9fffffa3, 0x0) # Byte reference - MOV operation | |
ref_164 = store(ref_163, 0x9fffffa2, 0x0) # Byte reference - MOV operation | |
ref_165 = store(ref_164, 0x9fffffa1, 0x0) # Byte reference - MOV operation | |
ref_166 = store(ref_165, 0x9fffffa0, 0x0) # Byte reference - MOV operation | |
ref_176 = store(ref_166, 0x9ffffed7, 0x0) # Byte reference - Saved Program Counter | |
ref_177 = store(ref_176, 0x9ffffed6, 0x0) # Byte reference - Saved Program Counter | |
ref_178 = store(ref_177, 0x9ffffed5, 0x0) # Byte reference - Saved Program Counter | |
ref_179 = store(ref_178, 0x9ffffed4, 0x1) # Byte reference - Saved Program Counter | |
ref_180 = store(ref_179, 0x9ffffed3, 0x40) # Byte reference - Saved Program Counter | |
ref_181 = store(ref_180, 0x9ffffed2, 0xc) # Byte reference - Saved Program Counter | |
ref_182 = store(ref_181, 0x9ffffed1, 0x17) # Byte reference - Saved Program Counter | |
ref_183 = store(ref_182, 0x9ffffed0, 0x18) # Byte reference - Saved Program Counter | |
ref_186 = store(ref_183, 0x9ffffedf, 0x0) # Byte reference - MOV operation | |
ref_187 = store(ref_186, 0x9ffffede, 0x0) # Byte reference - MOV operation | |
ref_188 = store(ref_187, 0x9ffffedd, 0x0) # Byte reference - MOV operation | |
ref_189 = store(ref_188, 0x9ffffedc, 0x0) # Byte reference - MOV operation | |
ref_190 = store(ref_189, 0x9ffffedb, 0x9f) # Byte reference - MOV operation | |
ref_191 = store(ref_190, 0x9ffffeda, 0xff) # Byte reference - MOV operation | |
ref_192 = store(ref_191, 0x9ffffed9, 0xff) # Byte reference - MOV operation | |
ref_193 = store(ref_192, 0x9ffffed8, 0x98) # Byte reference - MOV operation | |
ref_208 = store(ref_193, 0x9ffffebf, select(ref_193, 0x9fffff9f)) # Byte reference - MOV operation | |
ref_209 = store(ref_208, 0x9ffffebe, select(ref_193, 0x9fffff9e)) # Byte reference - MOV operation | |
ref_210 = store(ref_209, 0x9ffffebd, select(ref_193, 0x9fffff9d)) # Byte reference - MOV operation | |
ref_211 = store(ref_210, 0x9ffffebc, select(ref_193, 0x9fffff9c)) # Byte reference - MOV operation | |
ref_212 = store(ref_211, 0x9ffffebb, select(ref_193, 0x9fffff9b)) # Byte reference - MOV operation | |
ref_213 = store(ref_212, 0x9ffffeba, select(ref_193, 0x9fffff9a)) # Byte reference - MOV operation | |
ref_214 = store(ref_213, 0x9ffffeb9, select(ref_193, 0x9fffff99)) # Byte reference - MOV operation | |
ref_215 = store(ref_214, 0x9ffffeb8, select(ref_193, 0x9fffff98)) # Byte reference - MOV operation | |
ref_239 = store(ref_215, 0x9fffff1f, 0x0) # Byte reference - MOV operation | |
ref_240 = store(ref_239, 0x9fffff1e, 0x0) # Byte reference - MOV operation | |
ref_241 = store(ref_240, 0x9fffff1d, 0x0) # Byte reference - MOV operation | |
ref_242 = store(ref_241, 0x9fffff1c, 0x0) # Byte reference - MOV operation | |
ref_245 = store(ref_242, 0x1f, ((((((((((((select(ref_242, 0x1f)) << 8 | select(ref_242, 0x1e)) << 8 | select(ref_242, 0x1d)) << 8 | select(ref_242, 0x1c)) << 8 | select(ref_242, 0x1b)) << 8 | select(ref_242, 0x1a)) << 8 | select(ref_242, 0x19)) << 8 | select(ref_242, 0x18)) + 0x4) & 0xffffffffffffffff) >> 56) & 0xff)) # Byte reference - ADD operation | |
ref_246 = store(ref_245, 0x1e, ((((((((((((select(ref_242, 0x1f)) << 8 | select(ref_242, 0x1e)) << 8 | select(ref_242, 0x1d)) << 8 | select(ref_242, 0x1c)) << 8 | select(ref_242, 0x1b)) << 8 | select(ref_242, 0x1a)) << 8 | select(ref_242, 0x19)) << 8 | select(ref_242, 0x18)) + 0x4) & 0xffffffffffffffff) >> 48) & 0xff)) # Byte reference - ADD operation | |
ref_247 = store(ref_246, 0x1d, ((((((((((((select(ref_242, 0x1f)) << 8 | select(ref_242, 0x1e)) << 8 | select(ref_242, 0x1d)) << 8 | select(ref_242, 0x1c)) << 8 | select(ref_242, 0x1b)) << 8 | select(ref_242, 0x1a)) << 8 | select(ref_242, 0x19)) << 8 | select(ref_242, 0x18)) + 0x4) & 0xffffffffffffffff) >> 40) & 0xff)) # Byte reference - ADD operation | |
ref_248 = store(ref_247, 0x1c, ((((((((((((select(ref_242, 0x1f)) << 8 | select(ref_242, 0x1e)) << 8 | select(ref_242, 0x1d)) << 8 | select(ref_242, 0x1c)) << 8 | select(ref_242, 0x1b)) << 8 | select(ref_242, 0x1a)) << 8 | select(ref_242, 0x19)) << 8 | select(ref_242, 0x18)) + 0x4) & 0xffffffffffffffff) >> 32) & 0xff)) # Byte reference - ADD operation | |
ref_249 = store(ref_248, 0x1b, ((((((((((((select(ref_242, 0x1f)) << 8 | select(ref_242, 0x1e)) << 8 | select(ref_242, 0x1d)) << 8 | select(ref_242, 0x1c)) << 8 | select(ref_242, 0x1b)) << 8 | select(ref_242, 0x1a)) << 8 | select(ref_242, 0x19)) << 8 | select(ref_242, 0x18)) + 0x4) & 0xffffffffffffffff) >> 24) & 0xff)) # Byte reference - ADD operation | |
ref_250 = store(ref_249, 0x1a, ((((((((((((select(ref_242, 0x1f)) << 8 | select(ref_242, 0x1e)) << 8 | select(ref_242, 0x1d)) << 8 | select(ref_242, 0x1c)) << 8 | select(ref_242, 0x1b)) << 8 | select(ref_242, 0x1a)) << 8 | select(ref_242, 0x19)) << 8 | select(ref_242, 0x18)) + 0x4) & 0xffffffffffffffff) >> 16) & 0xff)) # Byte reference - ADD operation | |
ref_251 = store(ref_250, 0x19, ((((((((((((select(ref_242, 0x1f)) << 8 | select(ref_242, 0x1e)) << 8 | select(ref_242, 0x1d)) << 8 | select(ref_242, 0x1c)) << 8 | select(ref_242, 0x1b)) << 8 | select(ref_242, 0x1a)) << 8 | select(ref_242, 0x19)) << 8 | select(ref_242, 0x18)) + 0x4) & 0xffffffffffffffff) >> 8) & 0xff)) # Byte reference - ADD operation | |
ref_252 = store(ref_251, 0x18, (((((((((((select(ref_242, 0x1f)) << 8 | select(ref_242, 0x1e)) << 8 | select(ref_242, 0x1d)) << 8 | select(ref_242, 0x1c)) << 8 | select(ref_242, 0x1b)) << 8 | select(ref_242, 0x1a)) << 8 | select(ref_242, 0x19)) << 8 | select(ref_242, 0x18)) + 0x4) & 0xffffffffffffffff) & 0xff)) # Byte reference - ADD operation | |
ref_261 = ((((((((select(ref_252, 0x1f)) << 8 | select(ref_252, 0x1e)) << 8 | select(ref_252, 0x1d)) << 8 | select(ref_252, 0x1c)) << 8 | select(ref_252, 0x1b)) << 8 | select(ref_252, 0x1a)) << 8 | select(ref_252, 0x19)) << 8 | select(ref_252, 0x18)) # MOV operation |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment