#!/usr/bin/env python2
## -*- coding: utf-8 -*-

import sys

def sx(bits, value):
    sign_bit = 1 << (bits - 1)
    return (value & (sign_bit - 1)) - (value & sign_bit)

SymVar_0 = int(sys.argv[1])

ref_263 = SymVar_0
ref_278 = ref_263 # MOV operation
ref_16061 = ref_278 # MOV operation
ref_17449 = ref_16061 # MOV operation
ref_17457 = ((ref_17449 << (0x33 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_17464 = ref_17457 # MOV operation
ref_22947 = ref_278 # MOV operation
ref_24405 = ref_22947 # MOV operation
ref_24413 = (ref_24405 >> (0xD & 0x3F)) # SHR operation
ref_24420 = ref_24413 # MOV operation
ref_25145 = ref_24420 # MOV operation
ref_25157 = ref_17464 # MOV operation
ref_25159 = (ref_25157 | ref_25145) # OR operation
ref_25927 = ref_25159 # MOV operation
ref_25941 = ((0x2EA4A1C39AF5800 + ref_25927) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_26756 = ref_25941 # MOV operation
ref_36393 = ref_26756 # MOV operation
ref_41856 = ref_278 # MOV operation
ref_42345 = ref_41856 # MOV operation
ref_42357 = ref_36393 # MOV operation
ref_42359 = ((ref_42345 - ref_42357) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_42367 = ref_42359 # MOV operation
ref_43176 = ref_42367 # MOV operation
ref_53096 = ref_278 # MOV operation
ref_54554 = ref_53096 # MOV operation
ref_54562 = (ref_54554 >> (0x37 & 0x3F)) # SHR operation
ref_54569 = ref_54562 # MOV operation
ref_60052 = ref_278 # MOV operation
ref_61440 = ref_60052 # MOV operation
ref_61448 = ((ref_61440 << (0x9 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_61455 = ref_61448 # MOV operation
ref_62180 = ref_61455 # MOV operation
ref_62192 = ref_54569 # MOV operation
ref_62194 = (ref_62192 | ref_62180) # OR operation
ref_63008 = ref_62194 # MOV operation
ref_73711 = ref_278 # MOV operation
ref_74416 = ref_73711 # MOV operation
ref_74430 = (0x3E908497 | ref_74416) # OR operation
ref_75244 = ref_74430 # MOV operation
ref_81049 = ref_75244 # MOV operation
ref_86229 = ref_63008 # MOV operation
ref_86718 = ref_86229 # MOV operation
ref_86730 = ref_81049 # MOV operation
ref_86732 = ((ref_86718 - ref_86730) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_86740 = ref_86732 # MOV operation
ref_91940 = ref_26756 # MOV operation
ref_97903 = ref_43176 # MOV operation
ref_99361 = ref_97903 # MOV operation
ref_99369 = (ref_99361 >> (0x2 & 0x3F)) # SHR operation
ref_99376 = ref_99369 # MOV operation
ref_100930 = ref_99376 # MOV operation
ref_100936 = (0xF & ref_100930) # AND operation
ref_101666 = ref_100936 # MOV operation
ref_101680 = (0x1 | ref_101666) # OR operation
ref_102989 = ref_101680 # MOV operation
ref_102991 = ((0x40 - ref_102989) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_102999 = ref_102991 # MOV operation
ref_103624 = ref_91940 # MOV operation
ref_103628 = ref_102999 # MOV operation
ref_103630 = (ref_103628 & 0xFFFFFFFF) # MOV operation
ref_103632 = ((ref_103624 << ((ref_103630 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_103639 = ref_103632 # MOV operation
ref_108839 = ref_26756 # MOV operation
ref_114802 = ref_43176 # MOV operation
ref_116260 = ref_114802 # MOV operation
ref_116268 = (ref_116260 >> (0x2 & 0x3F)) # SHR operation
ref_116275 = ref_116268 # MOV operation
ref_117829 = ref_116275 # MOV operation
ref_117835 = (0xF & ref_117829) # AND operation
ref_118565 = ref_117835 # MOV operation
ref_118579 = (0x1 | ref_118565) # OR operation
ref_119279 = ref_108839 # MOV operation
ref_119283 = ref_118579 # MOV operation
ref_119285 = (ref_119283 & 0xFFFFFFFF) # MOV operation
ref_119287 = (ref_119279 >> ((ref_119285 & 0xFF) & 0x3F)) # SHR operation
ref_119294 = ref_119287 # MOV operation
ref_120019 = ref_119294 # MOV operation
ref_120031 = ref_103639 # MOV operation
ref_120033 = (ref_120031 | ref_120019) # OR operation
ref_120763 = ref_120033 # MOV operation
ref_120775 = ref_86740 # MOV operation
ref_120777 = ((ref_120763 - ref_120775) & 0xFFFFFFFFFFFFFFFF) # CMP operation
ref_120779 = ((((ref_120763 ^ (ref_120775 ^ ref_120777)) ^ ((ref_120763 ^ ref_120777) & (ref_120763 ^ ref_120775))) >> 63) & 0x1) # Carry flag
ref_120785 = ((((ref_120775 >> 8) & 0xFFFFFFFFFFFFFF)) << 8 | (0x1 if (ref_120779 == 0x1) else 0x0)) # SETB operation
ref_120787 = (ref_120785 & 0xFF) # MOVZX operation
ref_121434 = (ref_120787 & 0xFFFFFFFF) # MOV operation
ref_121436 = ((ref_121434 & 0xFFFFFFFF) & (ref_121434 & 0xFFFFFFFF)) # TEST operation
ref_121441 = (0x1 if (ref_121436 == 0x0) else 0x0) # Zero flag
ref_121443 = (0x18CD if (ref_121441 == 0x1) else 0x18AF) # Program Counter


if (ref_121441 == 0x1):
    ref_279659 = SymVar_0
    ref_279674 = ref_279659 # MOV operation
    ref_295462 = ref_279674 # MOV operation
    ref_296850 = ref_295462 # MOV operation
    ref_296858 = ((ref_296850 << (0x33 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_296865 = ref_296858 # MOV operation
    ref_302348 = ref_279674 # MOV operation
    ref_303806 = ref_302348 # MOV operation
    ref_303814 = (ref_303806 >> (0xD & 0x3F)) # SHR operation
    ref_303821 = ref_303814 # MOV operation
    ref_304546 = ref_303821 # MOV operation
    ref_304558 = ref_296865 # MOV operation
    ref_304560 = (ref_304558 | ref_304546) # OR operation
    ref_305328 = ref_304560 # MOV operation
    ref_305342 = ((0x2EA4A1C39AF5800 + ref_305328) & 0xFFFFFFFFFFFFFFFF) # ADD operation
    ref_306157 = ref_305342 # MOV operation
    ref_315794 = ref_306157 # MOV operation
    ref_321257 = ref_279674 # MOV operation
    ref_321746 = ref_321257 # MOV operation
    ref_321758 = ref_315794 # MOV operation
    ref_321760 = ((ref_321746 - ref_321758) & 0xFFFFFFFFFFFFFFFF) # SUB operation
    ref_321768 = ref_321760 # MOV operation
    ref_322577 = ref_321768 # MOV operation
    ref_332497 = ref_279674 # MOV operation
    ref_333955 = ref_332497 # MOV operation
    ref_333963 = (ref_333955 >> (0x37 & 0x3F)) # SHR operation
    ref_333970 = ref_333963 # MOV operation
    ref_339453 = ref_279674 # MOV operation
    ref_340841 = ref_339453 # MOV operation
    ref_340849 = ((ref_340841 << (0x9 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_340856 = ref_340849 # MOV operation
    ref_341581 = ref_340856 # MOV operation
    ref_341593 = ref_333970 # MOV operation
    ref_341595 = (ref_341593 | ref_341581) # OR operation
    ref_342409 = ref_341595 # MOV operation
    ref_353112 = ref_279674 # MOV operation
    ref_353817 = ref_353112 # MOV operation
    ref_353831 = (0x3E908497 | ref_353817) # OR operation
    ref_354645 = ref_353831 # MOV operation
    ref_411387 = ref_306157 # MOV operation
    ref_417350 = ref_322577 # MOV operation
    ref_418808 = ref_417350 # MOV operation
    ref_418816 = (ref_418808 >> (0x4 & 0x3F)) # SHR operation
    ref_418823 = ref_418816 # MOV operation
    ref_420377 = ref_418823 # MOV operation
    ref_420383 = (0xF & ref_420377) # AND operation
    ref_421113 = ref_420383 # MOV operation
    ref_421127 = (0x1 | ref_421113) # OR operation
    ref_422436 = ref_421127 # MOV operation
    ref_422438 = ((0x40 - ref_422436) & 0xFFFFFFFFFFFFFFFF) # SUB operation
    ref_422446 = ref_422438 # MOV operation
    ref_423141 = ref_411387 # MOV operation
    ref_423145 = ref_422446 # MOV operation
    ref_423147 = (ref_423145 & 0xFFFFFFFF) # MOV operation
    ref_423149 = (ref_423141 >> ((ref_423147 & 0xFF) & 0x3F)) # SHR operation
    ref_423156 = ref_423149 # MOV operation
    ref_428356 = ref_306157 # MOV operation
    ref_434319 = ref_322577 # MOV operation
    ref_435777 = ref_434319 # MOV operation
    ref_435785 = (ref_435777 >> (0x4 & 0x3F)) # SHR operation
    ref_435792 = ref_435785 # MOV operation
    ref_437346 = ref_435792 # MOV operation
    ref_437352 = (0xF & ref_437346) # AND operation
    ref_438082 = ref_437352 # MOV operation
    ref_438096 = (0x1 | ref_438082) # OR operation
    ref_438726 = ref_428356 # MOV operation
    ref_438730 = ref_438096 # MOV operation
    ref_438732 = (ref_438730 & 0xFFFFFFFF) # MOV operation
    ref_438734 = ((ref_438726 << ((ref_438732 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_438741 = ref_438734 # MOV operation
    ref_439466 = ref_438741 # MOV operation
    ref_439478 = ref_423156 # MOV operation
    ref_439480 = (ref_439478 | ref_439466) # OR operation
    ref_445468 = ref_354645 # MOV operation
    ref_450648 = ref_342409 # MOV operation
    ref_451353 = ref_450648 # MOV operation
    ref_451365 = ref_445468 # MOV operation
    ref_451367 = (ref_451365 | ref_451353) # OR operation
    ref_452850 = ref_451367 # MOV operation
    ref_452858 = (ref_452850 >> (0x4 & 0x3F)) # SHR operation
    ref_452865 = ref_452858 # MOV operation
    ref_454419 = ref_452865 # MOV operation
    ref_454425 = (0x7 & ref_454419) # AND operation
    ref_455155 = ref_454425 # MOV operation
    ref_455169 = (0x1 | ref_455155) # OR operation
    ref_455869 = ref_439480 # MOV operation
    ref_455873 = ref_455169 # MOV operation
    ref_455875 = (ref_455873 & 0xFFFFFFFF) # MOV operation
    ref_455877 = (ref_455869 >> ((ref_455875 & 0xFF) & 0x3F)) # SHR operation
    ref_455884 = ref_455877 # MOV operation
    ref_456693 = ref_455884 # MOV operation
    ref_457800 = ref_456693 # MOV operation
    ref_457802 = ref_457800 # MOV operation
    endb = ref_457802


else:
    ref_263 = SymVar_0
    ref_278 = ref_263 # MOV operation
    ref_16061 = ref_278 # MOV operation
    ref_17449 = ref_16061 # MOV operation
    ref_17457 = ((ref_17449 << (0x33 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_17464 = ref_17457 # MOV operation
    ref_22947 = ref_278 # MOV operation
    ref_24405 = ref_22947 # MOV operation
    ref_24413 = (ref_24405 >> (0xD & 0x3F)) # SHR operation
    ref_24420 = ref_24413 # MOV operation
    ref_25145 = ref_24420 # MOV operation
    ref_25157 = ref_17464 # MOV operation
    ref_25159 = (ref_25157 | ref_25145) # OR operation
    ref_25927 = ref_25159 # MOV operation
    ref_25941 = ((0x2EA4A1C39AF5800 + ref_25927) & 0xFFFFFFFFFFFFFFFF) # ADD operation
    ref_26756 = ref_25941 # MOV operation
    ref_36393 = ref_26756 # MOV operation
    ref_41856 = ref_278 # MOV operation
    ref_42345 = ref_41856 # MOV operation
    ref_42357 = ref_36393 # MOV operation
    ref_42359 = ((ref_42345 - ref_42357) & 0xFFFFFFFFFFFFFFFF) # SUB operation
    ref_42367 = ref_42359 # MOV operation
    ref_43176 = ref_42367 # MOV operation
    ref_43178 = ((ref_43176 >> 56) & 0xFF) # Byte reference - MOV operation
    ref_43179 = ((ref_43176 >> 48) & 0xFF) # Byte reference - MOV operation
    ref_43180 = ((ref_43176 >> 40) & 0xFF) # Byte reference - MOV operation
    ref_43181 = ((ref_43176 >> 32) & 0xFF) # Byte reference - MOV operation
    ref_43182 = ((ref_43176 >> 24) & 0xFF) # Byte reference - MOV operation
    ref_43183 = ((ref_43176 >> 16) & 0xFF) # Byte reference - MOV operation
    ref_43184 = ((ref_43176 >> 8) & 0xFF) # Byte reference - MOV operation
    ref_43185 = (ref_43176 & 0xFF) # Byte reference - MOV operation
    ref_53096 = ref_278 # MOV operation
    ref_54554 = ref_53096 # MOV operation
    ref_54562 = (ref_54554 >> (0x37 & 0x3F)) # SHR operation
    ref_54569 = ref_54562 # MOV operation
    ref_60052 = ref_278 # MOV operation
    ref_61440 = ref_60052 # MOV operation
    ref_61448 = ((ref_61440 << (0x9 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_61455 = ref_61448 # MOV operation
    ref_62180 = ref_61455 # MOV operation
    ref_62192 = ref_54569 # MOV operation
    ref_62194 = (ref_62192 | ref_62180) # OR operation
    ref_63008 = ref_62194 # MOV operation
    ref_73711 = ref_278 # MOV operation
    ref_74416 = ref_73711 # MOV operation
    ref_74430 = (0x3E908497 | ref_74416) # OR operation
    ref_75244 = ref_74430 # MOV operation
    ref_130035 = ((((ref_43178) << 8 | ref_43179) << 8 | ref_43180) << 8 | ref_43181) # MOV operation
    ref_131139 = (ref_130035 & 0xFFFFFFFF) # MOV operation
    ref_139711 = ((((ref_43182) << 8 | ref_43183) << 8 | ref_43184) << 8 | ref_43185) # MOV operation
    ref_148741 = (ref_139711 & 0xFFFFFFFF) # MOV operation
    ref_148743 = (((ref_148741 & 0xFFFFFFFF) >> 24) & 0xFF) # Byte reference - MOV operation
    ref_148744 = (((ref_148741 & 0xFFFFFFFF) >> 16) & 0xFF) # Byte reference - MOV operation
    ref_148745 = (((ref_148741 & 0xFFFFFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
    ref_148746 = ((ref_148741 & 0xFFFFFFFF) & 0xFF) # Byte reference - MOV operation
    ref_149387 = (ref_131139 & 0xFFFFFFFF) # MOV operation
    ref_158417 = (ref_149387 & 0xFFFFFFFF) # MOV operation
    ref_158419 = (((ref_158417 & 0xFFFFFFFF) >> 24) & 0xFF) # Byte reference - MOV operation
    ref_158420 = (((ref_158417 & 0xFFFFFFFF) >> 16) & 0xFF) # Byte reference - MOV operation
    ref_158421 = (((ref_158417 & 0xFFFFFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
    ref_158422 = ((ref_158417 & 0xFFFFFFFF) & 0xFF) # Byte reference - MOV operation
    ref_168050 = ref_26756 # MOV operation
    ref_169584 = ref_168050 # MOV operation
    ref_169590 = (0x3F & ref_169584) # AND operation
    ref_171003 = ref_169590 # MOV operation
    ref_171011 = ((ref_171003 << (0x4 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_171018 = ref_171011 # MOV operation
    ref_176218 = ref_26756 # MOV operation
    ref_176923 = ref_176218 # MOV operation
    ref_176935 = ref_171018 # MOV operation
    ref_176937 = (ref_176935 | ref_176923) # OR operation
    ref_177751 = ref_176937 # MOV operation
    ref_187388 = ref_177751 # MOV operation
    ref_188922 = ref_187388 # MOV operation
    ref_188928 = (0x1F & ref_188922) # AND operation
    ref_190341 = ref_188928 # MOV operation
    ref_190349 = ((ref_190341 << (0x3 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_190356 = ref_190349 # MOV operation
    ref_195556 = ref_75244 # MOV operation
    ref_196261 = ref_195556 # MOV operation
    ref_196273 = ref_190356 # MOV operation
    ref_196275 = (ref_196273 | ref_196261) # OR operation
    ref_197089 = ref_196275 # MOV operation
    ref_206726 = ref_63008 # MOV operation
    ref_211906 = ref_177751 # MOV operation
    ref_212649 = ref_211906 # MOV operation
    ref_212661 = ref_206726 # MOV operation
    ref_212663 = ((ref_212661 + ref_212649) & 0xFFFFFFFFFFFFFFFF) # ADD operation
    ref_214223 = ref_212663 # MOV operation
    ref_214229 = (0x1F & ref_214223) # AND operation
    ref_215642 = ref_214229 # MOV operation
    ref_215650 = ((ref_215642 << (0x3 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_215657 = ref_215650 # MOV operation
    ref_220857 = ref_177751 # MOV operation
    ref_221562 = ref_220857 # MOV operation
    ref_221574 = ref_215657 # MOV operation
    ref_221576 = (ref_221574 | ref_221562) # OR operation
    ref_222390 = ref_221576 # MOV operation
    ref_232924 = ref_222390 # MOV operation
    ref_238887 = ((((((((ref_148743) << 8 | ref_148744) << 8 | ref_148745) << 8 | ref_148746) << 8 | ref_158419) << 8 | ref_158420) << 8 | ref_158421) << 8 | ref_158422) # MOV operation
    ref_240345 = ref_238887 # MOV operation
    ref_240353 = (ref_240345 >> (0x4 & 0x3F)) # SHR operation
    ref_240360 = ref_240353 # MOV operation
    ref_241914 = ref_240360 # MOV operation
    ref_241920 = (0xF & ref_241914) # AND operation
    ref_242650 = ref_241920 # MOV operation
    ref_242664 = (0x1 | ref_242650) # OR operation
    ref_243973 = ref_242664 # MOV operation
    ref_243975 = ((0x40 - ref_243973) & 0xFFFFFFFFFFFFFFFF) # SUB operation
    ref_243983 = ref_243975 # MOV operation
    ref_244678 = ref_232924 # MOV operation
    ref_244682 = ref_243983 # MOV operation
    ref_244684 = (ref_244682 & 0xFFFFFFFF) # MOV operation
    ref_244686 = (ref_244678 >> ((ref_244684 & 0xFF) & 0x3F)) # SHR operation
    ref_244693 = ref_244686 # MOV operation
    ref_249893 = ref_222390 # MOV operation
    ref_255856 = ((((((((ref_148743) << 8 | ref_148744) << 8 | ref_148745) << 8 | ref_148746) << 8 | ref_158419) << 8 | ref_158420) << 8 | ref_158421) << 8 | ref_158422) # MOV operation
    ref_257314 = ref_255856 # MOV operation
    ref_257322 = (ref_257314 >> (0x4 & 0x3F)) # SHR operation
    ref_257329 = ref_257322 # MOV operation
    ref_258883 = ref_257329 # MOV operation
    ref_258889 = (0xF & ref_258883) # AND operation
    ref_259619 = ref_258889 # MOV operation
    ref_259633 = (0x1 | ref_259619) # OR operation
    ref_260263 = ref_249893 # MOV operation
    ref_260267 = ref_259633 # MOV operation
    ref_260269 = (ref_260267 & 0xFFFFFFFF) # MOV operation
    ref_260271 = ((ref_260263 << ((ref_260269 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_260278 = ref_260271 # MOV operation
    ref_261003 = ref_260278 # MOV operation
    ref_261015 = ref_244693 # MOV operation
    ref_261017 = (ref_261015 | ref_261003) # OR operation
    ref_267005 = ref_197089 # MOV operation
    ref_272185 = ref_63008 # MOV operation
    ref_272890 = ref_272185 # MOV operation
    ref_272902 = ref_267005 # MOV operation
    ref_272904 = (ref_272902 | ref_272890) # OR operation
    ref_274387 = ref_272904 # MOV operation
    ref_274395 = (ref_274387 >> (0x4 & 0x3F)) # SHR operation
    ref_274402 = ref_274395 # MOV operation
    ref_275956 = ref_274402 # MOV operation
    ref_275962 = (0x7 & ref_275956) # AND operation
    ref_276692 = ref_275962 # MOV operation
    ref_276706 = (0x1 | ref_276692) # OR operation
    ref_277406 = ref_261017 # MOV operation
    ref_277410 = ref_276706 # MOV operation
    ref_277412 = (ref_277410 & 0xFFFFFFFF) # MOV operation
    ref_277414 = (ref_277406 >> ((ref_277412 & 0xFF) & 0x3F)) # SHR operation
    ref_277421 = ref_277414 # MOV operation
    ref_278230 = ref_277421 # MOV operation
    ref_279337 = ref_278230 # MOV operation
    ref_279339 = ref_279337 # MOV operation
    endb = ref_279339


print endb & 0xffffffffffffffff
