#!/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_16112 = ref_278 # MOV operation
ref_17575 = ref_16112 # MOV operation
ref_17583 = (ref_17575 >> (0x5 & 0x3F)) # SHR operation
ref_17590 = ref_17583 # MOV operation
ref_18209 = ref_17590 # MOV operation
ref_18223 = (0x1376783EF7559EA & ref_18209) # AND operation
ref_18817 = ref_18223 # MOV operation
ref_18819 = ((ref_18817 >> 56) & 0xFF) # Byte reference - MOV operation
ref_18820 = ((ref_18817 >> 48) & 0xFF) # Byte reference - MOV operation
ref_18821 = ((ref_18817 >> 40) & 0xFF) # Byte reference - MOV operation
ref_18822 = ((ref_18817 >> 32) & 0xFF) # Byte reference - MOV operation
ref_18823 = ((ref_18817 >> 24) & 0xFF) # Byte reference - MOV operation
ref_18824 = ((ref_18817 >> 16) & 0xFF) # Byte reference - MOV operation
ref_18825 = ((ref_18817 >> 8) & 0xFF) # Byte reference - MOV operation
ref_18826 = (ref_18817 & 0xFF) # Byte reference - MOV operation
ref_28637 = ref_278 # MOV operation
ref_29845 = ref_28637 # MOV operation
ref_29851 = (0x1A5612E2 | ref_29845) # OR operation
ref_35483 = ref_18817 # MOV operation
ref_36082 = ref_35483 # MOV operation
ref_36096 = (0x7063FB7 & ref_36082) # AND operation
ref_36983 = ref_29851 # MOV operation
ref_36987 = ref_36096 # MOV operation
ref_36989 = ((ref_36987 + ref_36983) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_37584 = ref_36989 # MOV operation
ref_37586 = ((ref_37584 >> 56) & 0xFF) # Byte reference - MOV operation
ref_37587 = ((ref_37584 >> 48) & 0xFF) # Byte reference - MOV operation
ref_37588 = ((ref_37584 >> 40) & 0xFF) # Byte reference - MOV operation
ref_37589 = ((ref_37584 >> 32) & 0xFF) # Byte reference - MOV operation
ref_37590 = ((ref_37584 >> 24) & 0xFF) # Byte reference - MOV operation
ref_37591 = ((ref_37584 >> 16) & 0xFF) # Byte reference - MOV operation
ref_37592 = ((ref_37584 >> 8) & 0xFF) # Byte reference - MOV operation
ref_37593 = (ref_37584 & 0xFF) # Byte reference - MOV operation
ref_48474 = ref_37584 # MOV operation
ref_49937 = ref_48474 # MOV operation
ref_49945 = (ref_49937 >> (0x3 & 0x3F)) # SHR operation
ref_49952 = ref_49945 # MOV operation
ref_50571 = ref_49952 # MOV operation
ref_50585 = (0xF & ref_50571) # AND operation
ref_51818 = ref_50585 # MOV operation
ref_51824 = (0x1 | ref_51818) # OR operation
ref_53316 = ref_51824 # MOV operation
ref_53318 = ((0x3162E74F << ((ref_53316 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_59806 = ref_37584 # MOV operation
ref_61269 = ref_59806 # MOV operation
ref_61277 = (ref_61269 >> (0x3 & 0x3F)) # SHR operation
ref_61284 = ref_61277 # MOV operation
ref_61903 = ref_61284 # MOV operation
ref_61917 = (0xF & ref_61903) # AND operation
ref_63150 = ref_61917 # MOV operation
ref_63156 = (0x1 | ref_63150) # OR operation
ref_64648 = ref_63156 # MOV operation
ref_64650 = ((0x40 - ref_64648) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_64658 = ref_64650 # MOV operation
ref_65289 = ref_64658 # MOV operation
ref_65291 = (ref_65289 & 0xFFFFFFFF) # MOV operation
ref_65293 = (0x3162E74F >> ((ref_65291 & 0xFF) & 0x3F)) # SHR operation
ref_65300 = ref_65293 # MOV operation
ref_65672 = ref_53318 # MOV operation
ref_65676 = ref_65300 # MOV operation
ref_65678 = (ref_65676 | ref_65672) # OR operation
ref_67166 = ref_65678 # MOV operation
ref_67174 = (ref_67166 >> (0x4 & 0x3F)) # SHR operation
ref_67181 = ref_67174 # MOV operation
ref_67800 = ref_67181 # MOV operation
ref_67814 = (0x7 & ref_67800) # AND operation
ref_69047 = ref_67814 # MOV operation
ref_69053 = (0x1 | ref_69047) # OR operation
ref_75327 = ref_278 # MOV operation
ref_75926 = ref_75327 # MOV operation
ref_75940 = ((ref_75926 - 0x2907943) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_75948 = ref_75940 # MOV operation
ref_76567 = ref_75948 # MOV operation
ref_76579 = ref_69053 # MOV operation
ref_76581 = ((ref_76567 << ((ref_76579 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_77175 = ref_76581 # MOV operation
ref_87851 = ref_278 # MOV operation
ref_88450 = ref_87851 # MOV operation
ref_88464 = ((ref_88450 - 0x3C563FC) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_88472 = ref_88464 # MOV operation
ref_89061 = ref_88472 # MOV operation
ref_103562 = ref_89061 # MOV operation
ref_111914 = ref_37584 # MOV operation
ref_112513 = ref_111914 # MOV operation
ref_112527 = (0xF & ref_112513) # AND operation
ref_113151 = ref_112527 # MOV operation
ref_113165 = ((ref_113151 << (0x3 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_113542 = ref_103562 # MOV operation
ref_113546 = ref_113165 # MOV operation
ref_113548 = (ref_113546 | ref_113542) # OR operation
ref_114142 = ref_113548 # MOV operation
ref_123320 = ref_77175 # MOV operation
ref_129783 = ref_114142 # MOV operation
ref_130382 = ref_129783 # MOV operation
ref_130396 = (0x1F & ref_130382) # AND operation
ref_131020 = ref_130396 # MOV operation
ref_131034 = ((ref_131020 << (0x3 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_131411 = ref_123320 # MOV operation
ref_131415 = ref_131034 # MOV operation
ref_131417 = (ref_131415 | ref_131411) # OR operation
ref_132011 = ref_131417 # MOV operation
ref_141189 = ref_114142 # MOV operation
ref_149541 = ref_37584 # MOV operation
ref_150140 = ref_149541 # MOV operation
ref_150154 = (0xF & ref_150140) # AND operation
ref_150778 = ref_150154 # MOV operation
ref_150792 = ((ref_150778 << (0x3 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_151169 = ref_141189 # MOV operation
ref_151173 = ref_150792 # MOV operation
ref_151175 = (ref_151173 | ref_151169) # OR operation
ref_151769 = ref_151175 # MOV operation
ref_168159 = ref_151769 # MOV operation
ref_176511 = ref_151769 # MOV operation
ref_177110 = ref_176511 # MOV operation
ref_177124 = (0xF & ref_177110) # AND operation
ref_177748 = ref_177124 # MOV operation
ref_177762 = ((ref_177748 << (0x3 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_178139 = ref_168159 # MOV operation
ref_178143 = ref_177762 # MOV operation
ref_178145 = (ref_178143 | ref_178139) # OR operation
ref_178739 = ref_178145 # MOV operation
ref_187917 = ref_132011 # MOV operation
ref_194380 = ref_178739 # MOV operation
ref_194979 = ref_194380 # MOV operation
ref_194993 = (0x1F & ref_194979) # AND operation
ref_195617 = ref_194993 # MOV operation
ref_195631 = ((ref_195617 << (0x3 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_196008 = ref_187917 # MOV operation
ref_196012 = ref_195631 # MOV operation
ref_196014 = (ref_196012 | ref_196008) # OR operation
ref_196608 = ref_196014 # MOV operation
ref_196610 = ((ref_196608 >> 56) & 0xFF) # Byte reference - MOV operation
ref_196611 = ((ref_196608 >> 48) & 0xFF) # Byte reference - MOV operation
ref_196612 = ((ref_196608 >> 40) & 0xFF) # Byte reference - MOV operation
ref_196613 = ((ref_196608 >> 32) & 0xFF) # Byte reference - MOV operation
ref_196614 = ((ref_196608 >> 24) & 0xFF) # Byte reference - MOV operation
ref_196615 = ((ref_196608 >> 16) & 0xFF) # Byte reference - MOV operation
ref_196616 = ((ref_196608 >> 8) & 0xFF) # Byte reference - MOV operation
ref_196617 = (ref_196608 & 0xFF) # Byte reference - MOV operation
ref_205786 = ref_178739 # MOV operation
ref_214138 = ref_178739 # MOV operation
ref_214737 = ref_214138 # MOV operation
ref_214751 = (0xF & ref_214737) # AND operation
ref_215375 = ref_214751 # MOV operation
ref_215389 = ((ref_215375 << (0x3 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_215766 = ref_205786 # MOV operation
ref_215770 = ref_215389 # MOV operation
ref_215772 = (ref_215770 | ref_215766) # OR operation
ref_216366 = ref_215772 # MOV operation
ref_259247 = ref_216366 # MOV operation
ref_265710 = ref_196608 # MOV operation
ref_270461 = ref_196608 # MOV operation
ref_271323 = ref_265710 # MOV operation
ref_271327 = ref_270461 # MOV operation
ref_271329 = ((ref_271327 + ref_271323) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_271954 = ref_271329 # MOV operation
ref_271968 = (0x7 & ref_271954) # AND operation
ref_272592 = ref_271968 # MOV operation
ref_272606 = ((ref_272592 << (0x2 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_272983 = ref_259247 # MOV operation
ref_272987 = ref_272606 # MOV operation
ref_272989 = (ref_272987 | ref_272983) # OR operation
ref_273583 = ref_272989 # MOV operation
ref_282060 = ((((ref_196610) << 8 | ref_196611) << 8 | ref_196612) << 8 | ref_196613) # MOV operation
ref_283314 = (ref_282060 & 0xFFFFFFFF) # MOV operation
ref_291787 = ((((ref_196614) << 8 | ref_196615) << 8 | ref_196616) << 8 | ref_196617) # MOV operation
ref_300248 = (ref_291787 & 0xFFFFFFFF) # MOV operation
ref_300250 = (((ref_300248 & 0xFFFFFFFF) >> 24) & 0xFF) # Byte reference - MOV operation
ref_300251 = (((ref_300248 & 0xFFFFFFFF) >> 16) & 0xFF) # Byte reference - MOV operation
ref_300252 = (((ref_300248 & 0xFFFFFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
ref_300253 = ((ref_300248 & 0xFFFFFFFF) & 0xFF) # Byte reference - MOV operation
ref_301514 = (ref_283314 & 0xFFFFFFFF) # MOV operation
ref_309975 = (ref_301514 & 0xFFFFFFFF) # MOV operation
ref_309977 = (((ref_309975 & 0xFFFFFFFF) >> 24) & 0xFF) # Byte reference - MOV operation
ref_309978 = (((ref_309975 & 0xFFFFFFFF) >> 16) & 0xFF) # Byte reference - MOV operation
ref_309979 = (((ref_309975 & 0xFFFFFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
ref_309980 = ((ref_309975 & 0xFFFFFFFF) & 0xFF) # Byte reference - MOV operation
ref_319099 = ref_18821 # MOVZX operation
ref_319915 = (ref_319099 & 0xFF) # MOVZX operation
ref_336242 = ref_18822 # MOVZX operation
ref_337058 = (ref_336242 & 0xFF) # MOVZX operation
ref_337060 = (ref_337058 & 0xFF) # Byte reference - MOV operation
ref_346178 = (ref_319915 & 0xFF) # MOVZX operation
ref_346994 = (ref_346178 & 0xFF) # MOVZX operation
ref_346996 = (ref_346994 & 0xFF) # Byte reference - MOV operation
ref_356114 = ref_18820 # MOVZX operation
ref_356930 = (ref_356114 & 0xFF) # MOVZX operation
ref_373257 = ref_18826 # MOVZX operation
ref_374073 = (ref_373257 & 0xFF) # MOVZX operation
ref_374075 = (ref_374073 & 0xFF) # Byte reference - MOV operation
ref_383193 = (ref_356930 & 0xFF) # MOVZX operation
ref_384009 = (ref_383193 & 0xFF) # MOVZX operation
ref_384011 = (ref_384009 & 0xFF) # Byte reference - MOV operation
ref_392478 = ((((ref_37590) << 8 | ref_37591) << 8 | ref_37592) << 8 | ref_37593) # MOV operation
ref_393732 = (ref_392478 & 0xFFFFFFFF) # MOV operation
ref_402205 = ((((ref_37586) << 8 | ref_37587) << 8 | ref_37588) << 8 | ref_37589) # MOV operation
ref_410666 = (ref_402205 & 0xFFFFFFFF) # MOV operation
ref_410668 = (((ref_410666 & 0xFFFFFFFF) >> 24) & 0xFF) # Byte reference - MOV operation
ref_410669 = (((ref_410666 & 0xFFFFFFFF) >> 16) & 0xFF) # Byte reference - MOV operation
ref_410670 = (((ref_410666 & 0xFFFFFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
ref_410671 = ((ref_410666 & 0xFFFFFFFF) & 0xFF) # Byte reference - MOV operation
ref_411932 = (ref_393732 & 0xFFFFFFFF) # MOV operation
ref_420393 = (ref_411932 & 0xFFFFFFFF) # MOV operation
ref_420395 = (((ref_420393 & 0xFFFFFFFF) >> 24) & 0xFF) # Byte reference - MOV operation
ref_420396 = (((ref_420393 & 0xFFFFFFFF) >> 16) & 0xFF) # Byte reference - MOV operation
ref_420397 = (((ref_420393 & 0xFFFFFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
ref_420398 = ((ref_420393 & 0xFFFFFFFF) & 0xFF) # Byte reference - MOV operation
ref_435775 = ((((((((ref_420395) << 8 | ref_420396) << 8 | ref_420397) << 8 | ref_420398) << 8 | ref_410668) << 8 | ref_410669) << 8 | ref_410670) << 8 | ref_410671) # MOV operation
ref_444127 = ((((((((ref_18819) << 8 | ref_374075) << 8 | ref_337060) << 8 | ref_346996) << 8 | ref_18823) << 8 | ref_18824) << 8 | ref_18825) << 8 | ref_384011) # MOV operation
ref_444726 = ref_444127 # MOV operation
ref_444740 = (0x3F & ref_444726) # AND operation
ref_445364 = ref_444740 # MOV operation
ref_445378 = ((ref_445364 << (0x4 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_445755 = ref_435775 # MOV operation
ref_445759 = ref_445378 # MOV operation
ref_445761 = (ref_445759 | ref_445755) # OR operation
ref_446355 = ref_445761 # MOV operation
ref_463952 = ((((((((ref_300250) << 8 | ref_300251) << 8 | ref_300252) << 8 | ref_300253) << 8 | ref_309977) << 8 | ref_309978) << 8 | ref_309979) << 8 | ref_309980) # MOV operation
ref_470415 = ref_273583 # MOV operation
ref_476022 = ref_446355 # MOV operation
ref_477485 = ref_476022 # MOV operation
ref_477493 = (ref_477485 >> (0x3 & 0x3F)) # SHR operation
ref_477500 = ref_477493 # MOV operation
ref_478119 = ref_477500 # MOV operation
ref_478133 = (0xF & ref_478119) # AND operation
ref_479366 = ref_478133 # MOV operation
ref_479372 = (0x1 | ref_479366) # OR operation
ref_480004 = ref_470415 # MOV operation
ref_480008 = ref_479372 # MOV operation
ref_480010 = (ref_480008 & 0xFFFFFFFF) # MOV operation
ref_480012 = (ref_480004 >> ((ref_480010 & 0xFF) & 0x3F)) # SHR operation
ref_480019 = ref_480012 # MOV operation
ref_485646 = ref_446355 # MOV operation
ref_487109 = ref_485646 # MOV operation
ref_487117 = (ref_487109 >> (0x3 & 0x3F)) # SHR operation
ref_487124 = ref_487117 # MOV operation
ref_487743 = ref_487124 # MOV operation
ref_487757 = (0xF & ref_487743) # AND operation
ref_488990 = ref_487757 # MOV operation
ref_488996 = (0x1 | ref_488990) # OR operation
ref_490488 = ref_488996 # MOV operation
ref_490490 = ((0x40 - ref_490488) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_490498 = ref_490490 # MOV operation
ref_495269 = ref_273583 # MOV operation
ref_495868 = ref_495269 # MOV operation
ref_495880 = ref_490498 # MOV operation
ref_495882 = ((ref_495868 << ((ref_495880 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_496259 = ref_480019 # MOV operation
ref_496263 = ref_495882 # MOV operation
ref_496265 = (ref_496263 | ref_496259) # OR operation
ref_496889 = ref_496265 # MOV operation
ref_496903 = (0xF & ref_496889) # AND operation
ref_497527 = ref_496903 # MOV operation
ref_497541 = ((ref_497527 << (0x2 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_497918 = ref_463952 # MOV operation
ref_497922 = ref_497541 # MOV operation
ref_497924 = (ref_497922 | ref_497918) # OR operation
ref_498518 = ref_497924 # MOV operation
ref_509203 = ref_446355 # MOV operation
ref_510666 = ref_509203 # MOV operation
ref_510674 = (ref_510666 >> (0x3 & 0x3F)) # SHR operation
ref_510681 = ref_510674 # MOV operation
ref_511300 = ref_510681 # MOV operation
ref_511314 = (0x7 & ref_511300) # AND operation
ref_512547 = ref_511314 # MOV operation
ref_512553 = (0x1 | ref_512547) # OR operation
ref_517329 = ((((((((ref_18819) << 8 | ref_374075) << 8 | ref_337060) << 8 | ref_346996) << 8 | ref_18823) << 8 | ref_18824) << 8 | ref_18825) << 8 | ref_384011) # MOV operation
ref_517928 = ref_517329 # MOV operation
ref_517940 = ref_512553 # MOV operation
ref_517942 = ((ref_517928 << ((ref_517940 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_522718 = ref_498518 # MOV operation
ref_527469 = ref_273583 # MOV operation
ref_527821 = ref_522718 # MOV operation
ref_527825 = ref_527469 # MOV operation
ref_527827 = (ref_527825 | ref_527821) # OR operation
ref_528204 = ref_517942 # MOV operation
ref_528208 = ref_527827 # MOV operation
ref_528210 = (ref_528208 | ref_528204) # OR operation
ref_528804 = ref_528210 # MOV operation
ref_529806 = ref_528804 # MOV operation
ref_529808 = ref_529806 # MOV operation

print ref_529808 & 0xffffffffffffffff
