#!/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_12633 = ref_278 # MOV operation
ref_13647 = ref_12633 # MOV operation
ref_13657 = ((ref_13647 << (0x33 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_13664 = ref_13657 # MOV operation
ref_17839 = ref_278 # MOV operation
ref_18863 = ref_17839 # MOV operation
ref_18873 = (ref_18863 >> (0xD & 0x3F)) # SHR operation
ref_18880 = ref_18873 # MOV operation
ref_19411 = ref_18880 # MOV operation
ref_19425 = ref_13664 # MOV operation
ref_19427 = (ref_19425 | ref_19411) # OR operation
ref_20505 = ref_19427 # MOV operation
ref_20513 = ((0x2EA4A1C39AF5800 + ref_20505) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_21039 = ref_20513 # MOV operation
ref_29136 = ref_278 # MOV operation
ref_33409 = ref_21039 # MOV operation
ref_33907 = ref_29136 # MOV operation
ref_33913 = ref_33409 # MOV operation
ref_33915 = ((ref_33907 - ref_33913) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_33923 = ref_33915 # MOV operation
ref_34476 = ref_33923 # MOV operation
ref_42580 = ref_278 # MOV operation
ref_43588 = ref_42580 # MOV operation
ref_43598 = (ref_43588 >> (0x37 & 0x3F)) # SHR operation
ref_43605 = ref_43598 # MOV operation
ref_47844 = ref_278 # MOV operation
ref_48852 = ref_47844 # MOV operation
ref_48862 = ((ref_48852 << (0x9 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_48869 = ref_48862 # MOV operation
ref_49405 = ref_48869 # MOV operation
ref_49419 = ref_43605 # MOV operation
ref_49421 = (ref_49419 | ref_49405) # OR operation
ref_49972 = ref_49421 # MOV operation
ref_58574 = ref_278 # MOV operation
ref_59096 = ref_58574 # MOV operation
ref_59112 = (0x3E908497 | ref_59096) # OR operation
ref_59620 = ref_59112 # MOV operation
ref_64481 = ref_21039 # MOV operation
ref_70498 = ref_34476 # MOV operation
ref_71522 = ref_70498 # MOV operation
ref_71532 = (ref_71522 >> (0x2 & 0x3F)) # SHR operation
ref_71539 = ref_71532 # MOV operation
ref_72053 = ref_71539 # MOV operation
ref_72069 = (0xF & ref_72053) # AND operation
ref_72576 = ref_72069 # MOV operation
ref_72592 = (0x1 | ref_72576) # OR operation
ref_73171 = ref_72592 # MOV operation
ref_73173 = ((0x40 - ref_73171) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_73181 = ref_73173 # MOV operation
ref_73641 = ref_64481 # MOV operation
ref_73647 = ref_73181 # MOV operation
ref_73649 = (ref_73647 & 0xFFFFFFFF) # MOV operation
ref_73651 = ((ref_73641 << ((ref_73649 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_73658 = ref_73651 # MOV operation
ref_77962 = ref_21039 # MOV operation
ref_83445 = ref_34476 # MOV operation
ref_84516 = ref_83445 # MOV operation
ref_84526 = (ref_84516 >> (0x2 & 0x3F)) # SHR operation
ref_84533 = ref_84526 # MOV operation
ref_85041 = ref_84533 # MOV operation
ref_85057 = (0xF & ref_85041) # AND operation
ref_85554 = ref_85057 # MOV operation
ref_85570 = (0x1 | ref_85554) # OR operation
ref_86102 = ref_77962 # MOV operation
ref_86108 = ref_85570 # MOV operation
ref_86110 = (ref_86108 & 0xFFFFFFFF) # MOV operation
ref_86112 = (ref_86102 >> ((ref_86110 & 0xFF) & 0x3F)) # SHR operation
ref_86119 = ref_86112 # MOV operation
ref_86617 = ref_86119 # MOV operation
ref_86631 = ref_73658 # MOV operation
ref_86633 = (ref_86631 | ref_86617) # OR operation
ref_90945 = ref_49972 # MOV operation
ref_95265 = ref_59620 # MOV operation
ref_95765 = ref_90945 # MOV operation
ref_95771 = ref_95265 # MOV operation
ref_95773 = ((ref_95765 - ref_95771) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_95781 = ref_95773 # MOV operation
ref_96370 = ref_86633 # MOV operation
ref_96376 = ref_95781 # MOV operation
ref_96378 = ((ref_96370 - ref_96376) & 0xFFFFFFFFFFFFFFFF) # CMP operation
ref_96380 = ((((ref_96370 ^ (ref_96376 ^ ref_96378)) ^ ((ref_96370 ^ ref_96378) & (ref_96370 ^ ref_96376))) >> 63) & 0x1) # Carry flag
ref_96386 = ((((ref_96376 >> 8) & 0xFFFFFFFFFFFFFF)) << 8 | (0x1 if (ref_96380 == 0x1) else 0x0)) # SETB operation
ref_96388 = (ref_96386 & 0xFF) # MOVZX operation
ref_96883 = (ref_96388 & 0xFFFFFFFF) # MOV operation
ref_96885 = ((ref_96883 & 0xFFFFFFFF) & (ref_96883 & 0xFFFFFFFF)) # TEST operation
ref_96890 = (0x1 if (ref_96885 == 0x0) else 0x0) # Zero flag
ref_96892 = (0x2487 if (ref_96890 == 0x1) else 0x245D) # Program Counter


if (ref_96890 == 0x1):
    ref_225916 = SymVar_0
    ref_225931 = ref_225916 # MOV operation
    ref_237925 = ref_225931 # MOV operation
    ref_238949 = ref_237925 # MOV operation
    ref_238959 = ((ref_238949 << (0x33 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_238966 = ref_238959 # MOV operation
    ref_243220 = ref_225931 # MOV operation
    ref_244293 = ref_243220 # MOV operation
    ref_244303 = (ref_244293 >> (0xD & 0x3F)) # SHR operation
    ref_244310 = ref_244303 # MOV operation
    ref_244870 = ref_244310 # MOV operation
    ref_244884 = ref_238966 # MOV operation
    ref_244886 = (ref_244884 | ref_244870) # OR operation
    ref_245879 = ref_244886 # MOV operation
    ref_245887 = ((0x2EA4A1C39AF5800 + ref_245879) & 0xFFFFFFFFFFFFFFFF) # ADD operation
    ref_246494 = ref_245887 # MOV operation
    ref_254510 = ref_225931 # MOV operation
    ref_258850 = ref_246494 # MOV operation
    ref_259348 = ref_254510 # MOV operation
    ref_259354 = ref_258850 # MOV operation
    ref_259356 = ((ref_259348 - ref_259354) & 0xFFFFFFFFFFFFFFFF) # SUB operation
    ref_259364 = ref_259356 # MOV operation
    ref_259850 = ref_259364 # MOV operation
    ref_267930 = ref_225931 # MOV operation
    ref_268938 = ref_267930 # MOV operation
    ref_268948 = (ref_268938 >> (0x37 & 0x3F)) # SHR operation
    ref_268955 = ref_268948 # MOV operation
    ref_273249 = ref_225931 # MOV operation
    ref_274355 = ref_273249 # MOV operation
    ref_274365 = ((ref_274355 << (0x9 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_274372 = ref_274365 # MOV operation
    ref_274894 = ref_274372 # MOV operation
    ref_274908 = ref_268955 # MOV operation
    ref_274910 = (ref_274908 | ref_274894) # OR operation
    ref_275427 = ref_274910 # MOV operation
    ref_283963 = ref_225931 # MOV operation
    ref_284490 = ref_283963 # MOV operation
    ref_284506 = (0x3E908497 | ref_284490) # OR operation
    ref_285055 = ref_284506 # MOV operation
    ref_330887 = ref_246494 # MOV operation
    ref_336805 = ref_259850 # MOV operation
    ref_337853 = ref_336805 # MOV operation
    ref_337863 = (ref_337853 >> (0x4 & 0x3F)) # SHR operation
    ref_337870 = ref_337863 # MOV operation
    ref_338405 = ref_337870 # MOV operation
    ref_338421 = (0xF & ref_338405) # AND operation
    ref_338938 = ref_338421 # MOV operation
    ref_338954 = (0x1 | ref_338938) # OR operation
    ref_339477 = ref_338954 # MOV operation
    ref_339479 = ((0x40 - ref_339477) & 0xFFFFFFFFFFFFFFFF) # SUB operation
    ref_339487 = ref_339479 # MOV operation
    ref_340018 = ref_330887 # MOV operation
    ref_340024 = ref_339487 # MOV operation
    ref_340026 = (ref_340024 & 0xFFFFFFFF) # MOV operation
    ref_340028 = (ref_340018 >> ((ref_340026 & 0xFF) & 0x3F)) # SHR operation
    ref_340035 = ref_340028 # MOV operation
    ref_344443 = ref_246494 # MOV operation
    ref_349748 = ref_259850 # MOV operation
    ref_350816 = ref_349748 # MOV operation
    ref_350826 = (ref_350816 >> (0x4 & 0x3F)) # SHR operation
    ref_350833 = ref_350826 # MOV operation
    ref_351375 = ref_350833 # MOV operation
    ref_351391 = (0xF & ref_351375) # AND operation
    ref_351872 = ref_351391 # MOV operation
    ref_351888 = (0x1 | ref_351872) # OR operation
    ref_352451 = ref_344443 # MOV operation
    ref_352457 = ref_351888 # MOV operation
    ref_352459 = (ref_352457 & 0xFFFFFFFF) # MOV operation
    ref_352461 = ((ref_352451 << ((ref_352459 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_352468 = ref_352461 # MOV operation
    ref_352924 = ref_352468 # MOV operation
    ref_352938 = ref_340035 # MOV operation
    ref_352940 = (ref_352938 | ref_352924) # OR operation
    ref_358476 = ref_285055 # MOV operation
    ref_362705 = ref_275427 # MOV operation
    ref_363239 = ref_362705 # MOV operation
    ref_363253 = ref_358476 # MOV operation
    ref_363255 = (ref_363253 | ref_363239) # OR operation
    ref_364258 = ref_363255 # MOV operation
    ref_364268 = (ref_364258 >> (0x4 & 0x3F)) # SHR operation
    ref_364275 = ref_364268 # MOV operation
    ref_364809 = ref_364275 # MOV operation
    ref_364825 = (0x7 & ref_364809) # AND operation
    ref_365361 = ref_364825 # MOV operation
    ref_365377 = (0x1 | ref_365361) # OR operation
    ref_365898 = ref_352940 # MOV operation
    ref_365904 = ref_365377 # MOV operation
    ref_365906 = (ref_365904 & 0xFFFFFFFF) # MOV operation
    ref_365908 = (ref_365898 >> ((ref_365906 & 0xFF) & 0x3F)) # SHR operation
    ref_365915 = ref_365908 # MOV operation
    ref_366474 = ref_365915 # MOV operation
    ref_367502 = ref_366474 # MOV operation
    ref_367504 = ref_367502 # MOV operation
    endb = ref_367504


else:
    ref_263 = SymVar_0
    ref_278 = ref_263 # MOV operation
    ref_12633 = ref_278 # MOV operation
    ref_13647 = ref_12633 # MOV operation
    ref_13657 = ((ref_13647 << (0x33 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_13664 = ref_13657 # MOV operation
    ref_17839 = ref_278 # MOV operation
    ref_18863 = ref_17839 # MOV operation
    ref_18873 = (ref_18863 >> (0xD & 0x3F)) # SHR operation
    ref_18880 = ref_18873 # MOV operation
    ref_19411 = ref_18880 # MOV operation
    ref_19425 = ref_13664 # MOV operation
    ref_19427 = (ref_19425 | ref_19411) # OR operation
    ref_20505 = ref_19427 # MOV operation
    ref_20513 = ((0x2EA4A1C39AF5800 + ref_20505) & 0xFFFFFFFFFFFFFFFF) # ADD operation
    ref_21039 = ref_20513 # MOV operation
    ref_29136 = ref_278 # MOV operation
    ref_33409 = ref_21039 # MOV operation
    ref_33907 = ref_29136 # MOV operation
    ref_33913 = ref_33409 # MOV operation
    ref_33915 = ((ref_33907 - ref_33913) & 0xFFFFFFFFFFFFFFFF) # SUB operation
    ref_33923 = ref_33915 # MOV operation
    ref_34476 = ref_33923 # MOV operation
    ref_34478 = ((ref_34476 >> 56) & 0xFF) # Byte reference - MOV operation
    ref_34479 = ((ref_34476 >> 48) & 0xFF) # Byte reference - MOV operation
    ref_34480 = ((ref_34476 >> 40) & 0xFF) # Byte reference - MOV operation
    ref_34481 = ((ref_34476 >> 32) & 0xFF) # Byte reference - MOV operation
    ref_34482 = ((ref_34476 >> 24) & 0xFF) # Byte reference - MOV operation
    ref_34483 = ((ref_34476 >> 16) & 0xFF) # Byte reference - MOV operation
    ref_34484 = ((ref_34476 >> 8) & 0xFF) # Byte reference - MOV operation
    ref_34485 = (ref_34476 & 0xFF) # Byte reference - MOV operation
    ref_42580 = ref_278 # MOV operation
    ref_43588 = ref_42580 # MOV operation
    ref_43598 = (ref_43588 >> (0x37 & 0x3F)) # SHR operation
    ref_43605 = ref_43598 # MOV operation
    ref_47844 = ref_278 # MOV operation
    ref_48852 = ref_47844 # MOV operation
    ref_48862 = ((ref_48852 << (0x9 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_48869 = ref_48862 # MOV operation
    ref_49405 = ref_48869 # MOV operation
    ref_49419 = ref_43605 # MOV operation
    ref_49421 = (ref_49419 | ref_49405) # OR operation
    ref_49972 = ref_49421 # MOV operation
    ref_58574 = ref_278 # MOV operation
    ref_59096 = ref_58574 # MOV operation
    ref_59112 = (0x3E908497 | ref_59096) # OR operation
    ref_59620 = ref_59112 # MOV operation
    ref_104387 = ((((ref_34478) << 8 | ref_34479) << 8 | ref_34480) << 8 | ref_34481) # MOV operation
    ref_105451 = (ref_104387 & 0xFFFFFFFF) # MOV operation
    ref_112961 = ((((ref_34482) << 8 | ref_34483) << 8 | ref_34484) << 8 | ref_34485) # MOV operation
    ref_120436 = (ref_112961 & 0xFFFFFFFF) # MOV operation
    ref_120438 = (((ref_120436 & 0xFFFFFFFF) >> 24) & 0xFF) # Byte reference - MOV operation
    ref_120439 = (((ref_120436 & 0xFFFFFFFF) >> 16) & 0xFF) # Byte reference - MOV operation
    ref_120440 = (((ref_120436 & 0xFFFFFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
    ref_120441 = ((ref_120436 & 0xFFFFFFFF) & 0xFF) # Byte reference - MOV operation
    ref_121504 = (ref_105451 & 0xFFFFFFFF) # MOV operation
    ref_128995 = (ref_121504 & 0xFFFFFFFF) # MOV operation
    ref_128997 = (((ref_128995 & 0xFFFFFFFF) >> 24) & 0xFF) # Byte reference - MOV operation
    ref_128998 = (((ref_128995 & 0xFFFFFFFF) >> 16) & 0xFF) # Byte reference - MOV operation
    ref_128999 = (((ref_128995 & 0xFFFFFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
    ref_129000 = ((ref_128995 & 0xFFFFFFFF) & 0xFF) # Byte reference - MOV operation
    ref_137619 = ref_21039 # MOV operation
    ref_138216 = ref_137619 # MOV operation
    ref_138232 = (0x3F & ref_138216) # AND operation
    ref_139291 = ref_138232 # MOV operation
    ref_139301 = ((ref_139291 << (0x4 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_139308 = ref_139301 # MOV operation
    ref_143531 = ref_21039 # MOV operation
    ref_144033 = ref_143531 # MOV operation
    ref_144047 = ref_139308 # MOV operation
    ref_144049 = (ref_144047 | ref_144033) # OR operation
    ref_144596 = ref_144049 # MOV operation
    ref_153275 = ref_144596 # MOV operation
    ref_153771 = ref_153275 # MOV operation
    ref_153787 = (0x1F & ref_153771) # AND operation
    ref_154870 = ref_153787 # MOV operation
    ref_154880 = ((ref_154870 << (0x3 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_154887 = ref_154880 # MOV operation
    ref_159182 = ref_59620 # MOV operation
    ref_159630 = ref_159182 # MOV operation
    ref_159644 = ref_154887 # MOV operation
    ref_159646 = (ref_159644 | ref_159630) # OR operation
    ref_160194 = ref_159646 # MOV operation
    ref_168825 = ref_144596 # MOV operation
    ref_173080 = ref_49972 # MOV operation
    ref_173584 = ref_168825 # MOV operation
    ref_173590 = ref_173080 # MOV operation
    ref_173592 = ((ref_173590 + ref_173584) & 0xFFFFFFFFFFFFFFFF) # ADD operation
    ref_174149 = ref_173592 # MOV operation
    ref_174165 = (0x1F & ref_174149) # AND operation
    ref_175230 = ref_174165 # MOV operation
    ref_175240 = ((ref_175230 << (0x3 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_175247 = ref_175240 # MOV operation
    ref_179535 = ref_144596 # MOV operation
    ref_180108 = ref_179535 # MOV operation
    ref_180122 = ref_175247 # MOV operation
    ref_180124 = (ref_180122 | ref_180108) # OR operation
    ref_180635 = ref_180124 # MOV operation
    ref_189089 = ref_180635 # MOV operation
    ref_195046 = ((((((((ref_120438) << 8 | ref_120439) << 8 | ref_120440) << 8 | ref_120441) << 8 | ref_128997) << 8 | ref_128998) << 8 | ref_128999) << 8 | ref_129000) # MOV operation
    ref_196120 = ref_195046 # MOV operation
    ref_196130 = (ref_196120 >> (0x4 & 0x3F)) # SHR operation
    ref_196137 = ref_196130 # MOV operation
    ref_196655 = ref_196137 # MOV operation
    ref_196671 = (0xF & ref_196655) # AND operation
    ref_197178 = ref_196671 # MOV operation
    ref_197194 = (0x1 | ref_197178) # OR operation
    ref_197739 = ref_197194 # MOV operation
    ref_197741 = ((0x40 - ref_197739) & 0xFFFFFFFFFFFFFFFF) # SUB operation
    ref_197749 = ref_197741 # MOV operation
    ref_198223 = ref_189089 # MOV operation
    ref_198229 = ref_197749 # MOV operation
    ref_198231 = (ref_198229 & 0xFFFFFFFF) # MOV operation
    ref_198233 = (ref_198223 >> ((ref_198231 & 0xFF) & 0x3F)) # SHR operation
    ref_198240 = ref_198233 # MOV operation
    ref_202486 = ref_180635 # MOV operation
    ref_207933 = ((((((((ref_120438) << 8 | ref_120439) << 8 | ref_120440) << 8 | ref_120441) << 8 | ref_128997) << 8 | ref_128998) << 8 | ref_128999) << 8 | ref_129000) # MOV operation
    ref_208994 = ref_207933 # MOV operation
    ref_209004 = (ref_208994 >> (0x4 & 0x3F)) # SHR operation
    ref_209011 = ref_209004 # MOV operation
    ref_209509 = ref_209011 # MOV operation
    ref_209525 = (0xF & ref_209509) # AND operation
    ref_210081 = ref_209525 # MOV operation
    ref_210097 = (0x1 | ref_210081) # OR operation
    ref_210562 = ref_202486 # MOV operation
    ref_210568 = ref_210097 # MOV operation
    ref_210570 = (ref_210568 & 0xFFFFFFFF) # MOV operation
    ref_210572 = ((ref_210562 << ((ref_210570 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_210579 = ref_210572 # MOV operation
    ref_211119 = ref_210579 # MOV operation
    ref_211133 = ref_198240 # MOV operation
    ref_211135 = (ref_211133 | ref_211119) # OR operation
    ref_216478 = ref_160194 # MOV operation
    ref_220778 = ref_49972 # MOV operation
    ref_221286 = ref_220778 # MOV operation
    ref_221300 = ref_216478 # MOV operation
    ref_221302 = (ref_221300 | ref_221286) # OR operation
    ref_222380 = ref_221302 # MOV operation
    ref_222390 = (ref_222380 >> (0x4 & 0x3F)) # SHR operation
    ref_222397 = ref_222390 # MOV operation
    ref_222941 = ref_222397 # MOV operation
    ref_222957 = (0x7 & ref_222941) # AND operation
    ref_223498 = ref_222957 # MOV operation
    ref_223514 = (0x1 | ref_223498) # OR operation
    ref_224057 = ref_211135 # MOV operation
    ref_224063 = ref_223514 # MOV operation
    ref_224065 = (ref_224063 & 0xFFFFFFFF) # MOV operation
    ref_224067 = (ref_224057 >> ((ref_224065 & 0xFF) & 0x3F)) # SHR operation
    ref_224074 = ref_224067 # MOV operation
    ref_224544 = ref_224074 # MOV operation
    ref_225594 = ref_224544 # MOV operation
    ref_225596 = ref_225594 # MOV operation
    endb = ref_225596


print endb & 0xffffffffffffffff
