#!/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_24438 = ref_278 # MOV operation
ref_26890 = ref_24438 # MOV operation
ref_26898 = ((ref_26890 << (0x33 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_26905 = ref_26898 # MOV operation
ref_36746 = ref_278 # MOV operation
ref_39198 = ref_36746 # MOV operation
ref_39206 = (ref_39198 >> (0xD & 0x3F)) # SHR operation
ref_39213 = ref_39206 # MOV operation
ref_40435 = ref_39213 # MOV operation
ref_40447 = ref_26905 # MOV operation
ref_40449 = (ref_40447 | ref_40435) # OR operation
ref_41676 = ref_40449 # MOV operation
ref_41690 = ((0x2EA4A1C39AF5800 + ref_41676) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_42926 = ref_41690 # MOV operation
ref_61556 = ref_42926 # MOV operation
ref_71377 = ref_278 # MOV operation
ref_72579 = ref_71377 # MOV operation
ref_72591 = ref_61556 # MOV operation
ref_72593 = ((ref_72579 - ref_72591) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_72601 = ref_72593 # MOV operation
ref_73831 = ref_72601 # MOV operation
ref_92376 = ref_278 # MOV operation
ref_94828 = ref_92376 # MOV operation
ref_94836 = (ref_94828 >> (0x37 & 0x3F)) # SHR operation
ref_94843 = ref_94836 # MOV operation
ref_104684 = ref_278 # MOV operation
ref_107136 = ref_104684 # MOV operation
ref_107144 = ((ref_107136 << (0x9 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_107151 = ref_107144 # MOV operation
ref_108373 = ref_107151 # MOV operation
ref_108385 = ref_94843 # MOV operation
ref_108387 = (ref_108385 | ref_108373) # OR operation
ref_109622 = ref_108387 # MOV operation
ref_129409 = ref_278 # MOV operation
ref_130611 = ref_129409 # MOV operation
ref_130625 = (0x3E908497 | ref_130611) # OR operation
ref_131860 = ref_130625 # MOV operation
ref_142996 = ref_131860 # MOV operation
ref_152902 = ref_109622 # MOV operation
ref_154104 = ref_152902 # MOV operation
ref_154116 = ref_142996 # MOV operation
ref_154118 = ((ref_154104 - ref_154116) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_154126 = ref_154118 # MOV operation
ref_164052 = ref_42926 # MOV operation
ref_175200 = ref_73831 # MOV operation
ref_177652 = ref_175200 # MOV operation
ref_177660 = (ref_177652 >> (0x2 & 0x3F)) # SHR operation
ref_177667 = ref_177660 # MOV operation
ref_180139 = ref_177667 # MOV operation
ref_180145 = (0xF & ref_180139) # AND operation
ref_181372 = ref_180145 # MOV operation
ref_181386 = (0x1 | ref_181372) # OR operation
ref_183867 = ref_181386 # MOV operation
ref_183869 = ((0x40 - ref_183867) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_183877 = ref_183869 # MOV operation
ref_185107 = ref_164052 # MOV operation
ref_185111 = ref_183877 # MOV operation
ref_185113 = (ref_185111 & 0xFFFFFFFF) # MOV operation
ref_185115 = ((ref_185107 << ((ref_185113 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_185122 = ref_185115 # MOV operation
ref_195048 = ref_42926 # MOV operation
ref_206196 = ref_73831 # MOV operation
ref_208648 = ref_206196 # MOV operation
ref_208656 = (ref_208648 >> (0x2 & 0x3F)) # SHR operation
ref_208663 = ref_208656 # MOV operation
ref_211135 = ref_208663 # MOV operation
ref_211141 = (0xF & ref_211135) # AND operation
ref_212368 = ref_211141 # MOV operation
ref_212382 = (0x1 | ref_212368) # OR operation
ref_213617 = ref_195048 # MOV operation
ref_213621 = ref_212382 # MOV operation
ref_213623 = (ref_213621 & 0xFFFFFFFF) # MOV operation
ref_213625 = (ref_213617 >> ((ref_213623 & 0xFF) & 0x3F)) # SHR operation
ref_213632 = ref_213625 # MOV operation
ref_214854 = ref_213632 # MOV operation
ref_214866 = ref_185122 # MOV operation
ref_214868 = (ref_214866 | ref_214854) # OR operation
ref_216095 = ref_214868 # MOV operation
ref_216107 = ref_154126 # MOV operation
ref_216109 = ((ref_216095 - ref_216107) & 0xFFFFFFFFFFFFFFFF) # CMP operation
ref_216111 = ((((ref_216095 ^ (ref_216107 ^ ref_216109)) ^ ((ref_216095 ^ ref_216109) & (ref_216095 ^ ref_216107))) >> 63) & 0x1) # Carry flag
ref_216117 = ((((ref_216107 >> 8) & 0xFFFFFFFFFFFFFF)) << 8 | (0x1 if (ref_216111 == 0x1) else 0x0)) # SETB operation
ref_216119 = (ref_216117 & 0xFF) # MOVZX operation
ref_217333 = (ref_216119 & 0xFFFFFFFF) # MOV operation
ref_217335 = ((ref_217333 & 0xFFFFFFFF) & (ref_217333 & 0xFFFFFFFF)) # TEST operation
ref_217340 = (0x1 if (ref_217335 == 0x0) else 0x0) # Zero flag
ref_217342 = (0x205F if (ref_217340 == 0x1) else 0x2041) # Program Counter


if (ref_217340 == 0x1):
    ref_514772 = SymVar_0
    ref_514787 = ref_514772 # MOV operation
    ref_538952 = ref_514787 # MOV operation
    ref_541404 = ref_538952 # MOV operation
    ref_541412 = ((ref_541404 << (0x33 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_541419 = ref_541412 # MOV operation
    ref_551260 = ref_514787 # MOV operation
    ref_553712 = ref_551260 # MOV operation
    ref_553720 = (ref_553712 >> (0xD & 0x3F)) # SHR operation
    ref_553727 = ref_553720 # MOV operation
    ref_554949 = ref_553727 # MOV operation
    ref_554961 = ref_541419 # MOV operation
    ref_554963 = (ref_554961 | ref_554949) # OR operation
    ref_556190 = ref_554963 # MOV operation
    ref_556204 = ((0x2EA4A1C39AF5800 + ref_556190) & 0xFFFFFFFFFFFFFFFF) # ADD operation
    ref_557440 = ref_556204 # MOV operation
    ref_576070 = ref_557440 # MOV operation
    ref_585891 = ref_514787 # MOV operation
    ref_587093 = ref_585891 # MOV operation
    ref_587105 = ref_576070 # MOV operation
    ref_587107 = ((ref_587093 - ref_587105) & 0xFFFFFFFFFFFFFFFF) # SUB operation
    ref_587115 = ref_587107 # MOV operation
    ref_588345 = ref_587115 # MOV operation
    ref_606890 = ref_514787 # MOV operation
    ref_609342 = ref_606890 # MOV operation
    ref_609350 = (ref_609342 >> (0x37 & 0x3F)) # SHR operation
    ref_609357 = ref_609350 # MOV operation
    ref_619198 = ref_514787 # MOV operation
    ref_621650 = ref_619198 # MOV operation
    ref_621658 = ((ref_621650 << (0x9 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_621665 = ref_621658 # MOV operation
    ref_622887 = ref_621665 # MOV operation
    ref_622899 = ref_609357 # MOV operation
    ref_622901 = (ref_622899 | ref_622887) # OR operation
    ref_624136 = ref_622901 # MOV operation
    ref_643923 = ref_514787 # MOV operation
    ref_645125 = ref_643923 # MOV operation
    ref_645139 = (0x3E908497 | ref_645125) # OR operation
    ref_646374 = ref_645139 # MOV operation
    ref_751629 = ref_557440 # MOV operation
    ref_762777 = ref_588345 # MOV operation
    ref_765229 = ref_762777 # MOV operation
    ref_765237 = (ref_765229 >> (0x4 & 0x3F)) # SHR operation
    ref_765244 = ref_765237 # MOV operation
    ref_767716 = ref_765244 # MOV operation
    ref_767722 = (0xF & ref_767716) # AND operation
    ref_768949 = ref_767722 # MOV operation
    ref_768963 = (0x1 | ref_768949) # OR operation
    ref_771444 = ref_768963 # MOV operation
    ref_771446 = ((0x40 - ref_771444) & 0xFFFFFFFFFFFFFFFF) # SUB operation
    ref_771454 = ref_771446 # MOV operation
    ref_772684 = ref_751629 # MOV operation
    ref_772688 = ref_771454 # MOV operation
    ref_772690 = (ref_772688 & 0xFFFFFFFF) # MOV operation
    ref_772692 = (ref_772684 >> ((ref_772690 & 0xFF) & 0x3F)) # SHR operation
    ref_772699 = ref_772692 # MOV operation
    ref_782625 = ref_557440 # MOV operation
    ref_793773 = ref_588345 # MOV operation
    ref_796225 = ref_793773 # MOV operation
    ref_796233 = (ref_796225 >> (0x4 & 0x3F)) # SHR operation
    ref_796240 = ref_796233 # MOV operation
    ref_798712 = ref_796240 # MOV operation
    ref_798718 = (0xF & ref_798712) # AND operation
    ref_799945 = ref_798718 # MOV operation
    ref_799959 = (0x1 | ref_799945) # OR operation
    ref_801194 = ref_782625 # MOV operation
    ref_801198 = ref_799959 # MOV operation
    ref_801200 = (ref_801198 & 0xFFFFFFFF) # MOV operation
    ref_801202 = ((ref_801194 << ((ref_801200 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_801209 = ref_801202 # MOV operation
    ref_802431 = ref_801209 # MOV operation
    ref_802443 = ref_772699 # MOV operation
    ref_802445 = (ref_802443 | ref_802431) # OR operation
    ref_813618 = ref_646374 # MOV operation
    ref_823524 = ref_624136 # MOV operation
    ref_824726 = ref_823524 # MOV operation
    ref_824738 = ref_813618 # MOV operation
    ref_824740 = (ref_824738 | ref_824726) # OR operation
    ref_827217 = ref_824740 # MOV operation
    ref_827225 = (ref_827217 >> (0x4 & 0x3F)) # SHR operation
    ref_827232 = ref_827225 # MOV operation
    ref_829704 = ref_827232 # MOV operation
    ref_829710 = (0x7 & ref_829704) # AND operation
    ref_830937 = ref_829710 # MOV operation
    ref_830951 = (0x1 | ref_830937) # OR operation
    ref_832186 = ref_802445 # MOV operation
    ref_832190 = ref_830951 # MOV operation
    ref_832192 = (ref_832190 & 0xFFFFFFFF) # MOV operation
    ref_832194 = (ref_832186 >> ((ref_832192 & 0xFF) & 0x3F)) # SHR operation
    ref_832201 = ref_832194 # MOV operation
    ref_833431 = ref_832201 # MOV operation
    ref_835894 = ref_833431 # MOV operation
    ref_835896 = ref_835894 # MOV operation
    endb = ref_835896


else:
    ref_263 = SymVar_0
    ref_278 = ref_263 # MOV operation
    ref_24438 = ref_278 # MOV operation
    ref_26890 = ref_24438 # MOV operation
    ref_26898 = ((ref_26890 << (0x33 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_26905 = ref_26898 # MOV operation
    ref_36746 = ref_278 # MOV operation
    ref_39198 = ref_36746 # MOV operation
    ref_39206 = (ref_39198 >> (0xD & 0x3F)) # SHR operation
    ref_39213 = ref_39206 # MOV operation
    ref_40435 = ref_39213 # MOV operation
    ref_40447 = ref_26905 # MOV operation
    ref_40449 = (ref_40447 | ref_40435) # OR operation
    ref_41676 = ref_40449 # MOV operation
    ref_41690 = ((0x2EA4A1C39AF5800 + ref_41676) & 0xFFFFFFFFFFFFFFFF) # ADD operation
    ref_42926 = ref_41690 # MOV operation
    ref_61556 = ref_42926 # MOV operation
    ref_71377 = ref_278 # MOV operation
    ref_72579 = ref_71377 # MOV operation
    ref_72591 = ref_61556 # MOV operation
    ref_72593 = ((ref_72579 - ref_72591) & 0xFFFFFFFFFFFFFFFF) # SUB operation
    ref_72601 = ref_72593 # MOV operation
    ref_73831 = ref_72601 # MOV operation
    ref_73833 = ((ref_73831 >> 56) & 0xFF) # Byte reference - MOV operation
    ref_73834 = ((ref_73831 >> 48) & 0xFF) # Byte reference - MOV operation
    ref_73835 = ((ref_73831 >> 40) & 0xFF) # Byte reference - MOV operation
    ref_73836 = ((ref_73831 >> 32) & 0xFF) # Byte reference - MOV operation
    ref_73837 = ((ref_73831 >> 24) & 0xFF) # Byte reference - MOV operation
    ref_73838 = ((ref_73831 >> 16) & 0xFF) # Byte reference - MOV operation
    ref_73839 = ((ref_73831 >> 8) & 0xFF) # Byte reference - MOV operation
    ref_73840 = (ref_73831 & 0xFF) # Byte reference - MOV operation
    ref_92376 = ref_278 # MOV operation
    ref_94828 = ref_92376 # MOV operation
    ref_94836 = (ref_94828 >> (0x37 & 0x3F)) # SHR operation
    ref_94843 = ref_94836 # MOV operation
    ref_104684 = ref_278 # MOV operation
    ref_107136 = ref_104684 # MOV operation
    ref_107144 = ((ref_107136 << (0x9 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_107151 = ref_107144 # MOV operation
    ref_108373 = ref_107151 # MOV operation
    ref_108385 = ref_94843 # MOV operation
    ref_108387 = (ref_108385 | ref_108373) # OR operation
    ref_109622 = ref_108387 # MOV operation
    ref_129409 = ref_278 # MOV operation
    ref_130611 = ref_129409 # MOV operation
    ref_130625 = (0x3E908497 | ref_130611) # OR operation
    ref_131860 = ref_130625 # MOV operation
    ref_234646 = ((((ref_73833) << 8 | ref_73834) << 8 | ref_73835) << 8 | ref_73836) # MOV operation
    ref_237106 = (ref_234646 & 0xFFFFFFFF) # MOV operation
    ref_254390 = ((((ref_73837) << 8 | ref_73838) << 8 | ref_73839) << 8 | ref_73840) # MOV operation
    ref_271662 = (ref_254390 & 0xFFFFFFFF) # MOV operation
    ref_271664 = (((ref_271662 & 0xFFFFFFFF) >> 24) & 0xFF) # Byte reference - MOV operation
    ref_271665 = (((ref_271662 & 0xFFFFFFFF) >> 16) & 0xFF) # Byte reference - MOV operation
    ref_271666 = (((ref_271662 & 0xFFFFFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
    ref_271667 = ((ref_271662 & 0xFFFFFFFF) & 0xFF) # Byte reference - MOV operation
    ref_274134 = (ref_237106 & 0xFFFFFFFF) # MOV operation
    ref_291406 = (ref_274134 & 0xFFFFFFFF) # MOV operation
    ref_291408 = (((ref_291406 & 0xFFFFFFFF) >> 24) & 0xFF) # Byte reference - MOV operation
    ref_291409 = (((ref_291406 & 0xFFFFFFFF) >> 16) & 0xFF) # Byte reference - MOV operation
    ref_291410 = (((ref_291406 & 0xFFFFFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
    ref_291411 = ((ref_291406 & 0xFFFFFFFF) & 0xFF) # Byte reference - MOV operation
    ref_310032 = ref_42926 # MOV operation
    ref_312484 = ref_310032 # MOV operation
    ref_312490 = (0x3F & ref_312484) # AND operation
    ref_314967 = ref_312490 # MOV operation
    ref_314975 = ((ref_314967 << (0x4 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_314982 = ref_314975 # MOV operation
    ref_324908 = ref_42926 # MOV operation
    ref_326110 = ref_324908 # MOV operation
    ref_326122 = ref_314982 # MOV operation
    ref_326124 = (ref_326122 | ref_326110) # OR operation
    ref_327359 = ref_326124 # MOV operation
    ref_345989 = ref_327359 # MOV operation
    ref_348441 = ref_345989 # MOV operation
    ref_348447 = (0x1F & ref_348441) # AND operation
    ref_350924 = ref_348447 # MOV operation
    ref_350932 = ((ref_350924 << (0x3 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_350939 = ref_350932 # MOV operation
    ref_360865 = ref_131860 # MOV operation
    ref_362067 = ref_360865 # MOV operation
    ref_362079 = ref_350939 # MOV operation
    ref_362081 = (ref_362079 | ref_362067) # OR operation
    ref_363316 = ref_362081 # MOV operation
    ref_381946 = ref_109622 # MOV operation
    ref_391852 = ref_327359 # MOV operation
    ref_393054 = ref_391852 # MOV operation
    ref_393066 = ref_381946 # MOV operation
    ref_393068 = ((ref_393066 + ref_393054) & 0xFFFFFFFFFFFFFFFF) # ADD operation
    ref_395546 = ref_393068 # MOV operation
    ref_395552 = (0x1F & ref_395546) # AND operation
    ref_398029 = ref_395552 # MOV operation
    ref_398037 = ((ref_398029 << (0x3 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_398044 = ref_398037 # MOV operation
    ref_407970 = ref_327359 # MOV operation
    ref_409172 = ref_407970 # MOV operation
    ref_409184 = ref_398044 # MOV operation
    ref_409186 = (ref_409184 | ref_409172) # OR operation
    ref_410421 = ref_409186 # MOV operation
    ref_430185 = ref_410421 # MOV operation
    ref_441333 = ((((((((ref_271664) << 8 | ref_271665) << 8 | ref_271666) << 8 | ref_271667) << 8 | ref_291408) << 8 | ref_291409) << 8 | ref_291410) << 8 | ref_291411) # MOV operation
    ref_443785 = ref_441333 # MOV operation
    ref_443793 = (ref_443785 >> (0x4 & 0x3F)) # SHR operation
    ref_443800 = ref_443793 # MOV operation
    ref_446272 = ref_443800 # MOV operation
    ref_446278 = (0xF & ref_446272) # AND operation
    ref_447505 = ref_446278 # MOV operation
    ref_447519 = (0x1 | ref_447505) # OR operation
    ref_450000 = ref_447519 # MOV operation
    ref_450002 = ((0x40 - ref_450000) & 0xFFFFFFFFFFFFFFFF) # SUB operation
    ref_450010 = ref_450002 # MOV operation
    ref_451240 = ref_430185 # MOV operation
    ref_451244 = ref_450010 # MOV operation
    ref_451246 = (ref_451244 & 0xFFFFFFFF) # MOV operation
    ref_451248 = (ref_451240 >> ((ref_451246 & 0xFF) & 0x3F)) # SHR operation
    ref_451255 = ref_451248 # MOV operation
    ref_461181 = ref_410421 # MOV operation
    ref_472329 = ((((((((ref_271664) << 8 | ref_271665) << 8 | ref_271666) << 8 | ref_271667) << 8 | ref_291408) << 8 | ref_291409) << 8 | ref_291410) << 8 | ref_291411) # MOV operation
    ref_474781 = ref_472329 # MOV operation
    ref_474789 = (ref_474781 >> (0x4 & 0x3F)) # SHR operation
    ref_474796 = ref_474789 # MOV operation
    ref_477268 = ref_474796 # MOV operation
    ref_477274 = (0xF & ref_477268) # AND operation
    ref_478501 = ref_477274 # MOV operation
    ref_478515 = (0x1 | ref_478501) # OR operation
    ref_479750 = ref_461181 # MOV operation
    ref_479754 = ref_478515 # MOV operation
    ref_479756 = (ref_479754 & 0xFFFFFFFF) # MOV operation
    ref_479758 = ((ref_479750 << ((ref_479756 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_479765 = ref_479758 # MOV operation
    ref_480987 = ref_479765 # MOV operation
    ref_480999 = ref_451255 # MOV operation
    ref_481001 = (ref_480999 | ref_480987) # OR operation
    ref_492174 = ref_363316 # MOV operation
    ref_502080 = ref_109622 # MOV operation
    ref_503282 = ref_502080 # MOV operation
    ref_503294 = ref_492174 # MOV operation
    ref_503296 = (ref_503294 | ref_503282) # OR operation
    ref_505773 = ref_503296 # MOV operation
    ref_505781 = (ref_505773 >> (0x4 & 0x3F)) # SHR operation
    ref_505788 = ref_505781 # MOV operation
    ref_508260 = ref_505788 # MOV operation
    ref_508266 = (0x7 & ref_508260) # AND operation
    ref_509493 = ref_508266 # MOV operation
    ref_509507 = (0x1 | ref_509493) # OR operation
    ref_510742 = ref_481001 # MOV operation
    ref_510746 = ref_509507 # MOV operation
    ref_510748 = (ref_510746 & 0xFFFFFFFF) # MOV operation
    ref_510750 = (ref_510742 >> ((ref_510748 & 0xFF) & 0x3F)) # SHR operation
    ref_510757 = ref_510750 # MOV operation
    ref_511987 = ref_510757 # MOV operation
    ref_514450 = ref_511987 # MOV operation
    ref_514452 = ref_514450 # MOV operation
    endb = ref_514452


print endb & 0xffffffffffffffff
