#!/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_6416 = ref_278 # MOV operation
ref_6616 = ref_6416 # MOV operation
ref_6624 = (ref_6616 >> (0xD & 0x3F)) # SHR operation
ref_6631 = ref_6624 # MOV operation
ref_7580 = ref_278 # MOV operation
ref_7656 = ref_7580 # MOV operation
ref_7670 = ((ref_7656 << (0x33 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_7779 = ref_6631 # MOV operation
ref_7783 = ref_7670 # MOV operation
ref_7785 = (ref_7783 | ref_7779) # OR operation
ref_7886 = ref_7785 # MOV operation
ref_7900 = ((0x2EA4A1C39AF5800 + ref_7886) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_8010 = ref_7900 # MOV operation
ref_8843 = ref_278 # MOV operation
ref_9741 = ref_8010 # MOV operation
ref_9825 = ref_8843 # MOV operation
ref_9829 = ref_9741 # MOV operation
ref_9831 = ((ref_9825 - ref_9829) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_9839 = ref_9831 # MOV operation
ref_10765 = ref_9839 # MOV operation
ref_12536 = ref_278 # MOV operation
ref_12612 = ref_12536 # MOV operation
ref_12626 = (ref_12612 >> (0x37 & 0x3F)) # SHR operation
ref_13464 = ref_278 # MOV operation
ref_13664 = ref_13464 # MOV operation
ref_13672 = ((ref_13664 << (0x9 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_13679 = ref_13672 # MOV operation
ref_13775 = ref_13679 # MOV operation
ref_13787 = ref_12626 # MOV operation
ref_13789 = (ref_13787 | ref_13775) # OR operation
ref_13898 = ref_13789 # MOV operation
ref_14731 = ref_278 # MOV operation
ref_14931 = ref_14731 # MOV operation
ref_14937 = (0x3E908497 | ref_14931) # OR operation
ref_15868 = ref_14937 # MOV operation
ref_16870 = ref_10765 # MOV operation
ref_17070 = ref_16870 # MOV operation
ref_17078 = (ref_17070 >> (0x2 & 0x3F)) # SHR operation
ref_17085 = ref_17078 # MOV operation
ref_17305 = ref_17085 # MOV operation
ref_17311 = (0xF & ref_17305) # AND operation
ref_17536 = ref_17311 # MOV operation
ref_17542 = (0x1 | ref_17536) # OR operation
ref_18465 = ref_8010 # MOV operation
ref_18541 = ref_18465 # MOV operation
ref_18553 = ref_17542 # MOV operation
ref_18555 = (ref_18541 >> ((ref_18553 & 0xFF) & 0x3F)) # SHR operation
ref_19478 = ref_8010 # MOV operation
ref_20608 = ref_10765 # MOV operation
ref_20808 = ref_20608 # MOV operation
ref_20816 = (ref_20808 >> (0x2 & 0x3F)) # SHR operation
ref_20823 = ref_20816 # MOV operation
ref_21043 = ref_20823 # MOV operation
ref_21049 = (0xF & ref_21043) # AND operation
ref_21150 = ref_21049 # MOV operation
ref_21164 = (0x1 | ref_21150) # OR operation
ref_21277 = ref_21164 # MOV operation
ref_21279 = ((0x40 - ref_21277) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_21287 = ref_21279 # MOV operation
ref_21391 = ref_19478 # MOV operation
ref_21395 = ref_21287 # MOV operation
ref_21397 = (ref_21395 & 0xFFFFFFFF) # MOV operation
ref_21399 = ((ref_21391 << ((ref_21397 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_21406 = ref_21399 # MOV operation
ref_21510 = ref_18555 # MOV operation
ref_21514 = ref_21406 # MOV operation
ref_21516 = (ref_21514 | ref_21510) # OR operation
ref_22439 = ref_15868 # MOV operation
ref_23337 = ref_13898 # MOV operation
ref_23413 = ref_23337 # MOV operation
ref_23425 = ref_22439 # MOV operation
ref_23427 = ((ref_23413 - ref_23425) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_23435 = ref_23427 # MOV operation
ref_23539 = ref_21516 # MOV operation
ref_23543 = ref_23435 # MOV operation
ref_23545 = ((ref_23539 - ref_23543) & 0xFFFFFFFFFFFFFFFF) # CMP operation
ref_23547 = ((((ref_23539 ^ (ref_23543 ^ ref_23545)) ^ ((ref_23539 ^ ref_23545) & (ref_23539 ^ ref_23543))) >> 63) & 0x1) # Carry flag
ref_23553 = ((((ref_23543 >> 8) & 0xFFFFFFFFFFFFFF)) << 8 | (0x1 if (ref_23547 == 0x1) else 0x0)) # SETB operation
ref_23555 = (ref_23553 & 0xFF) # MOVZX operation
ref_23643 = (ref_23555 & 0xFFFFFFFF) # MOV operation
ref_23645 = ((ref_23643 & 0xFFFFFFFF) & (ref_23643 & 0xFFFFFFFF)) # TEST operation
ref_23650 = (0x1 if (ref_23645 == 0x0) else 0x0) # Zero flag
ref_23652 = (0x203D if (ref_23650 == 0x1) else 0x201F) # Program Counter


if (ref_23650 == 0x1):
    ref_50826 = SymVar_0
    ref_50841 = ref_50826 # MOV operation
    ref_56984 = ref_50841 # MOV operation
    ref_57184 = ref_56984 # MOV operation
    ref_57192 = (ref_57184 >> (0xD & 0x3F)) # SHR operation
    ref_57199 = ref_57192 # MOV operation
    ref_58148 = ref_50841 # MOV operation
    ref_58224 = ref_58148 # MOV operation
    ref_58238 = ((ref_58224 << (0x33 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_58347 = ref_57199 # MOV operation
    ref_58351 = ref_58238 # MOV operation
    ref_58353 = (ref_58351 | ref_58347) # OR operation
    ref_58454 = ref_58353 # MOV operation
    ref_58468 = ((0x2EA4A1C39AF5800 + ref_58454) & 0xFFFFFFFFFFFFFFFF) # ADD operation
    ref_58578 = ref_58468 # MOV operation
    ref_59411 = ref_50841 # MOV operation
    ref_60309 = ref_58578 # MOV operation
    ref_60393 = ref_59411 # MOV operation
    ref_60397 = ref_60309 # MOV operation
    ref_60399 = ((ref_60393 - ref_60397) & 0xFFFFFFFFFFFFFFFF) # SUB operation
    ref_60407 = ref_60399 # MOV operation
    ref_61333 = ref_60407 # MOV operation
    ref_63104 = ref_50841 # MOV operation
    ref_63180 = ref_63104 # MOV operation
    ref_63194 = (ref_63180 >> (0x37 & 0x3F)) # SHR operation
    ref_64032 = ref_50841 # MOV operation
    ref_64232 = ref_64032 # MOV operation
    ref_64240 = ((ref_64232 << (0x9 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_64247 = ref_64240 # MOV operation
    ref_64343 = ref_64247 # MOV operation
    ref_64355 = ref_63194 # MOV operation
    ref_64357 = (ref_64355 | ref_64343) # OR operation
    ref_64466 = ref_64357 # MOV operation
    ref_65299 = ref_50841 # MOV operation
    ref_65499 = ref_65299 # MOV operation
    ref_65505 = (0x3E908497 | ref_65499) # OR operation
    ref_66436 = ref_65505 # MOV operation
    ref_75977 = ref_64466 # MOV operation
    ref_76875 = ref_66436 # MOV operation
    ref_76959 = ref_75977 # MOV operation
    ref_76963 = ref_76875 # MOV operation
    ref_76965 = (ref_76963 | ref_76959) # OR operation
    ref_77190 = ref_76965 # MOV operation
    ref_77198 = (ref_77190 >> (0x4 & 0x3F)) # SHR operation
    ref_77205 = ref_77198 # MOV operation
    ref_77425 = ref_77205 # MOV operation
    ref_77431 = (0x7 & ref_77425) # AND operation
    ref_77656 = ref_77431 # MOV operation
    ref_77662 = (0x1 | ref_77656) # OR operation
    ref_78585 = ref_61333 # MOV operation
    ref_78785 = ref_78585 # MOV operation
    ref_78793 = (ref_78785 >> (0x4 & 0x3F)) # SHR operation
    ref_78800 = ref_78793 # MOV operation
    ref_79020 = ref_78800 # MOV operation
    ref_79026 = (0xF & ref_79020) # AND operation
    ref_79251 = ref_79026 # MOV operation
    ref_79257 = (0x1 | ref_79251) # OR operation
    ref_80180 = ref_58578 # MOV operation
    ref_80256 = ref_80180 # MOV operation
    ref_80268 = ref_79257 # MOV operation
    ref_80270 = ((ref_80256 << ((ref_80268 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_81193 = ref_58578 # MOV operation
    ref_82207 = ref_61333 # MOV operation
    ref_82407 = ref_82207 # MOV operation
    ref_82415 = (ref_82407 >> (0x4 & 0x3F)) # SHR operation
    ref_82422 = ref_82415 # MOV operation
    ref_82642 = ref_82422 # MOV operation
    ref_82648 = (0xF & ref_82642) # AND operation
    ref_82873 = ref_82648 # MOV operation
    ref_82879 = (0x1 | ref_82873) # OR operation
    ref_82992 = ref_82879 # MOV operation
    ref_82994 = ((0x40 - ref_82992) & 0xFFFFFFFFFFFFFFFF) # SUB operation
    ref_83002 = ref_82994 # MOV operation
    ref_83106 = ref_81193 # MOV operation
    ref_83110 = ref_83002 # MOV operation
    ref_83112 = (ref_83110 & 0xFFFFFFFF) # MOV operation
    ref_83114 = (ref_83106 >> ((ref_83112 & 0xFF) & 0x3F)) # SHR operation
    ref_83121 = ref_83114 # MOV operation
    ref_83225 = ref_80270 # MOV operation
    ref_83229 = ref_83121 # MOV operation
    ref_83231 = (ref_83229 | ref_83225) # OR operation
    ref_83332 = ref_83231 # MOV operation
    ref_83344 = ref_77662 # MOV operation
    ref_83346 = (ref_83332 >> ((ref_83344 & 0xFF) & 0x3F)) # SHR operation
    ref_83455 = ref_83346 # MOV operation
    ref_83666 = ref_83455 # MOV operation
    ref_83668 = ref_83666 # MOV operation
    endb = ref_83668


else:
    ref_263 = SymVar_0
    ref_278 = ref_263 # MOV operation
    ref_6416 = ref_278 # MOV operation
    ref_6616 = ref_6416 # MOV operation
    ref_6624 = (ref_6616 >> (0xD & 0x3F)) # SHR operation
    ref_6631 = ref_6624 # MOV operation
    ref_7580 = ref_278 # MOV operation
    ref_7656 = ref_7580 # MOV operation
    ref_7670 = ((ref_7656 << (0x33 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_7779 = ref_6631 # MOV operation
    ref_7783 = ref_7670 # MOV operation
    ref_7785 = (ref_7783 | ref_7779) # OR operation
    ref_7886 = ref_7785 # MOV operation
    ref_7900 = ((0x2EA4A1C39AF5800 + ref_7886) & 0xFFFFFFFFFFFFFFFF) # ADD operation
    ref_8010 = ref_7900 # MOV operation
    ref_8843 = ref_278 # MOV operation
    ref_9741 = ref_8010 # MOV operation
    ref_9825 = ref_8843 # MOV operation
    ref_9829 = ref_9741 # MOV operation
    ref_9831 = ((ref_9825 - ref_9829) & 0xFFFFFFFFFFFFFFFF) # SUB operation
    ref_9839 = ref_9831 # MOV operation
    ref_10765 = ref_9839 # MOV operation
    ref_10767 = ((ref_10765 >> 56) & 0xFF) # Byte reference - MOV operation
    ref_10768 = ((ref_10765 >> 48) & 0xFF) # Byte reference - MOV operation
    ref_10769 = ((ref_10765 >> 40) & 0xFF) # Byte reference - MOV operation
    ref_10770 = ((ref_10765 >> 32) & 0xFF) # Byte reference - MOV operation
    ref_10771 = ((ref_10765 >> 24) & 0xFF) # Byte reference - MOV operation
    ref_10772 = ((ref_10765 >> 16) & 0xFF) # Byte reference - MOV operation
    ref_10773 = ((ref_10765 >> 8) & 0xFF) # Byte reference - MOV operation
    ref_10774 = (ref_10765 & 0xFF) # Byte reference - MOV operation
    ref_12536 = ref_278 # MOV operation
    ref_12612 = ref_12536 # MOV operation
    ref_12626 = (ref_12612 >> (0x37 & 0x3F)) # SHR operation
    ref_13464 = ref_278 # MOV operation
    ref_13664 = ref_13464 # MOV operation
    ref_13672 = ((ref_13664 << (0x9 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_13679 = ref_13672 # MOV operation
    ref_13775 = ref_13679 # MOV operation
    ref_13787 = ref_12626 # MOV operation
    ref_13789 = (ref_13787 | ref_13775) # OR operation
    ref_13898 = ref_13789 # MOV operation
    ref_14731 = ref_278 # MOV operation
    ref_14931 = ref_14731 # MOV operation
    ref_14937 = (0x3E908497 | ref_14931) # OR operation
    ref_15868 = ref_14937 # MOV operation
    ref_25192 = ((((ref_10767) << 8 | ref_10768) << 8 | ref_10769) << 8 | ref_10770) # MOV operation
    ref_25400 = (ref_25192 & 0xFFFFFFFF) # MOV operation
    ref_26920 = ((((ref_10771) << 8 | ref_10772) << 8 | ref_10773) << 8 | ref_10774) # MOV operation
    ref_28428 = (ref_26920 & 0xFFFFFFFF) # MOV operation
    ref_28430 = (((ref_28428 & 0xFFFFFFFF) >> 24) & 0xFF) # Byte reference - MOV operation
    ref_28431 = (((ref_28428 & 0xFFFFFFFF) >> 16) & 0xFF) # Byte reference - MOV operation
    ref_28432 = (((ref_28428 & 0xFFFFFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
    ref_28433 = ((ref_28428 & 0xFFFFFFFF) & 0xFF) # Byte reference - MOV operation
    ref_28648 = (ref_25400 & 0xFFFFFFFF) # MOV operation
    ref_30156 = (ref_28648 & 0xFFFFFFFF) # MOV operation
    ref_30158 = (((ref_30156 & 0xFFFFFFFF) >> 24) & 0xFF) # Byte reference - MOV operation
    ref_30159 = (((ref_30156 & 0xFFFFFFFF) >> 16) & 0xFF) # Byte reference - MOV operation
    ref_30160 = (((ref_30156 & 0xFFFFFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
    ref_30161 = ((ref_30156 & 0xFFFFFFFF) & 0xFF) # Byte reference - MOV operation
    ref_32124 = ref_8010 # MOV operation
    ref_32200 = ref_32124 # MOV operation
    ref_32214 = (0x3F & ref_32200) # AND operation
    ref_32315 = ref_32214 # MOV operation
    ref_32329 = ((ref_32315 << (0x4 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_33252 = ref_8010 # MOV operation
    ref_33328 = ref_33252 # MOV operation
    ref_33340 = ref_32329 # MOV operation
    ref_33342 = (ref_33340 | ref_33328) # OR operation
    ref_33451 = ref_33342 # MOV operation
    ref_34485 = ref_33451 # MOV operation
    ref_34685 = ref_34485 # MOV operation
    ref_34691 = (0x1F & ref_34685) # AND operation
    ref_34792 = ref_34691 # MOV operation
    ref_34806 = ((ref_34792 << (0x3 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_35729 = ref_15868 # MOV operation
    ref_35805 = ref_35729 # MOV operation
    ref_35817 = ref_34806 # MOV operation
    ref_35819 = (ref_35817 | ref_35805) # OR operation
    ref_36750 = ref_35819 # MOV operation
    ref_38606 = ref_13898 # MOV operation
    ref_39504 = ref_33451 # MOV operation
    ref_39580 = ref_39504 # MOV operation
    ref_39592 = ref_38606 # MOV operation
    ref_39594 = ((ref_39592 + ref_39580) & 0xFFFFFFFFFFFFFFFF) # ADD operation
    ref_39696 = ref_39594 # MOV operation
    ref_39710 = (0x1F & ref_39696) # AND operation
    ref_39935 = ref_39710 # MOV operation
    ref_39943 = ((ref_39935 << (0x3 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_39950 = ref_39943 # MOV operation
    ref_40868 = ref_33451 # MOV operation
    ref_40944 = ref_40868 # MOV operation
    ref_40956 = ref_39950 # MOV operation
    ref_40958 = (ref_40956 | ref_40944) # OR operation
    ref_41067 = ref_40958 # MOV operation
    ref_42815 = ref_13898 # MOV operation
    ref_43713 = ref_36750 # MOV operation
    ref_43797 = ref_42815 # MOV operation
    ref_43801 = ref_43713 # MOV operation
    ref_43803 = (ref_43801 | ref_43797) # OR operation
    ref_44028 = ref_43803 # MOV operation
    ref_44036 = (ref_44028 >> (0x4 & 0x3F)) # SHR operation
    ref_44043 = ref_44036 # MOV operation
    ref_44263 = ref_44043 # MOV operation
    ref_44269 = (0x7 & ref_44263) # AND operation
    ref_44494 = ref_44269 # MOV operation
    ref_44500 = (0x1 | ref_44494) # OR operation
    ref_45423 = ((((((((ref_28430) << 8 | ref_28431) << 8 | ref_28432) << 8 | ref_28433) << 8 | ref_30158) << 8 | ref_30159) << 8 | ref_30160) << 8 | ref_30161) # MOV operation
    ref_45623 = ref_45423 # MOV operation
    ref_45631 = (ref_45623 >> (0x4 & 0x3F)) # SHR operation
    ref_45638 = ref_45631 # MOV operation
    ref_45858 = ref_45638 # MOV operation
    ref_45864 = (0xF & ref_45858) # AND operation
    ref_46089 = ref_45864 # MOV operation
    ref_46095 = (0x1 | ref_46089) # OR operation
    ref_47018 = ref_41067 # MOV operation
    ref_47094 = ref_47018 # MOV operation
    ref_47106 = ref_46095 # MOV operation
    ref_47108 = ((ref_47094 << ((ref_47106 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_48031 = ref_41067 # MOV operation
    ref_49045 = ((((((((ref_28430) << 8 | ref_28431) << 8 | ref_28432) << 8 | ref_28433) << 8 | ref_30158) << 8 | ref_30159) << 8 | ref_30160) << 8 | ref_30161) # MOV operation
    ref_49245 = ref_49045 # MOV operation
    ref_49253 = (ref_49245 >> (0x4 & 0x3F)) # SHR operation
    ref_49260 = ref_49253 # MOV operation
    ref_49480 = ref_49260 # MOV operation
    ref_49486 = (0xF & ref_49480) # AND operation
    ref_49711 = ref_49486 # MOV operation
    ref_49717 = (0x1 | ref_49711) # OR operation
    ref_49830 = ref_49717 # MOV operation
    ref_49832 = ((0x40 - ref_49830) & 0xFFFFFFFFFFFFFFFF) # SUB operation
    ref_49840 = ref_49832 # MOV operation
    ref_49944 = ref_48031 # MOV operation
    ref_49948 = ref_49840 # MOV operation
    ref_49950 = (ref_49948 & 0xFFFFFFFF) # MOV operation
    ref_49952 = (ref_49944 >> ((ref_49950 & 0xFF) & 0x3F)) # SHR operation
    ref_49959 = ref_49952 # MOV operation
    ref_50063 = ref_47108 # MOV operation
    ref_50067 = ref_49959 # MOV operation
    ref_50069 = (ref_50067 | ref_50063) # OR operation
    ref_50170 = ref_50069 # MOV operation
    ref_50182 = ref_44500 # MOV operation
    ref_50184 = (ref_50170 >> ((ref_50182 & 0xFF) & 0x3F)) # SHR operation
    ref_50293 = ref_50184 # MOV operation
    ref_50504 = ref_50293 # MOV operation
    ref_50506 = ref_50504 # MOV operation
    endb = ref_50506


print endb & 0xffffffffffffffff
