#!/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 << (0x33 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_6631 = ref_6624 # MOV operation
ref_7464 = ref_278 # MOV operation
ref_7664 = ref_7464 # MOV operation
ref_7672 = (ref_7664 >> (0xD & 0x3F)) # SHR operation
ref_7679 = ref_7672 # MOV operation
ref_7775 = ref_7679 # MOV operation
ref_7787 = ref_6631 # MOV operation
ref_7789 = (ref_7787 | ref_7775) # OR operation
ref_7890 = ref_7789 # MOV operation
ref_7904 = ((0x2EA4A1C39AF5800 + ref_7890) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_8014 = ref_7904 # MOV operation
ref_9754 = ref_8014 # MOV operation
ref_10567 = ref_278 # MOV operation
ref_10643 = ref_10567 # MOV operation
ref_10655 = ref_9754 # MOV operation
ref_10657 = ((ref_10643 - ref_10655) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_10665 = ref_10657 # MOV operation
ref_10769 = ref_10665 # MOV operation
ref_12424 = ref_278 # MOV operation
ref_12624 = ref_12424 # MOV operation
ref_12632 = (ref_12624 >> (0x37 & 0x3F)) # SHR operation
ref_12639 = ref_12632 # MOV operation
ref_13472 = ref_278 # MOV operation
ref_13672 = ref_13472 # MOV operation
ref_13680 = ((ref_13672 << (0x9 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_13687 = ref_13680 # MOV operation
ref_13783 = ref_13687 # MOV operation
ref_13795 = ref_12639 # MOV operation
ref_13797 = (ref_13795 | ref_13783) # OR operation
ref_13906 = ref_13797 # MOV operation
ref_15677 = ref_278 # MOV operation
ref_15753 = ref_15677 # MOV operation
ref_15767 = (0x3E908497 | ref_15753) # OR operation
ref_15876 = ref_15767 # MOV operation
ref_16878 = ref_15876 # MOV operation
ref_17776 = ref_13906 # MOV operation
ref_17852 = ref_17776 # MOV operation
ref_17864 = ref_16878 # MOV operation
ref_17866 = ((ref_17852 - ref_17864) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_17874 = ref_17866 # MOV operation
ref_18792 = ref_8014 # MOV operation
ref_19806 = ref_10769 # MOV operation
ref_20006 = ref_19806 # MOV operation
ref_20014 = (ref_20006 >> (0x2 & 0x3F)) # SHR operation
ref_20021 = ref_20014 # MOV operation
ref_20241 = ref_20021 # MOV operation
ref_20247 = (0xF & ref_20241) # AND operation
ref_20348 = ref_20247 # MOV operation
ref_20362 = (0x1 | ref_20348) # OR operation
ref_20591 = ref_20362 # MOV operation
ref_20593 = ((0x40 - ref_20591) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_20601 = ref_20593 # MOV operation
ref_20705 = ref_18792 # MOV operation
ref_20709 = ref_20601 # MOV operation
ref_20711 = (ref_20709 & 0xFFFFFFFF) # MOV operation
ref_20713 = ((ref_20705 << ((ref_20711 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_20720 = ref_20713 # MOV operation
ref_21638 = ref_8014 # MOV operation
ref_22652 = ref_10769 # MOV operation
ref_22852 = ref_22652 # MOV operation
ref_22860 = (ref_22852 >> (0x2 & 0x3F)) # SHR operation
ref_22867 = ref_22860 # MOV operation
ref_23087 = ref_22867 # MOV operation
ref_23093 = (0xF & ref_23087) # AND operation
ref_23194 = ref_23093 # MOV operation
ref_23208 = (0x1 | ref_23194) # OR operation
ref_23317 = ref_21638 # MOV operation
ref_23321 = ref_23208 # MOV operation
ref_23323 = (ref_23321 & 0xFFFFFFFF) # MOV operation
ref_23325 = (ref_23317 >> ((ref_23323 & 0xFF) & 0x3F)) # SHR operation
ref_23332 = ref_23325 # MOV operation
ref_23428 = ref_23332 # MOV operation
ref_23440 = ref_20720 # MOV operation
ref_23442 = (ref_23440 | ref_23428) # OR operation
ref_23543 = ref_23442 # MOV operation
ref_23555 = ref_17874 # MOV operation
ref_23557 = ((ref_23543 - ref_23555) & 0xFFFFFFFFFFFFFFFF) # CMP operation
ref_23559 = ((((ref_23543 ^ (ref_23555 ^ ref_23557)) ^ ((ref_23543 ^ ref_23557) & (ref_23543 ^ ref_23555))) >> 63) & 0x1) # Carry flag
ref_23565 = ((((ref_23555 >> 8) & 0xFFFFFFFFFFFFFF)) << 8 | (0x1 if (ref_23559 == 0x1) else 0x0)) # SETB operation
ref_23567 = (ref_23565 & 0xFF) # MOVZX operation
ref_23655 = (ref_23567 & 0xFFFFFFFF) # MOV operation
ref_23657 = ((ref_23655 & 0xFFFFFFFF) & (ref_23655 & 0xFFFFFFFF)) # TEST operation
ref_23662 = (0x1 if (ref_23657 == 0x0) else 0x0) # Zero flag
ref_23664 = (0x1DAC if (ref_23662 == 0x1) else 0x1D8E) # Program Counter


if (ref_23662 == 0x1):
    ref_50854 = SymVar_0
    ref_50869 = ref_50854 # MOV operation
    ref_57012 = ref_50869 # MOV operation
    ref_57212 = ref_57012 # MOV operation
    ref_57220 = ((ref_57212 << (0x33 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_57227 = ref_57220 # MOV operation
    ref_58060 = ref_50869 # MOV operation
    ref_58260 = ref_58060 # MOV operation
    ref_58268 = (ref_58260 >> (0xD & 0x3F)) # SHR operation
    ref_58275 = ref_58268 # MOV operation
    ref_58371 = ref_58275 # MOV operation
    ref_58383 = ref_57227 # MOV operation
    ref_58385 = (ref_58383 | ref_58371) # OR operation
    ref_58486 = ref_58385 # MOV operation
    ref_58500 = ((0x2EA4A1C39AF5800 + ref_58486) & 0xFFFFFFFFFFFFFFFF) # ADD operation
    ref_58610 = ref_58500 # MOV operation
    ref_60350 = ref_58610 # MOV operation
    ref_61163 = ref_50869 # MOV operation
    ref_61239 = ref_61163 # MOV operation
    ref_61251 = ref_60350 # MOV operation
    ref_61253 = ((ref_61239 - ref_61251) & 0xFFFFFFFFFFFFFFFF) # SUB operation
    ref_61261 = ref_61253 # MOV operation
    ref_61365 = ref_61261 # MOV operation
    ref_63020 = ref_50869 # MOV operation
    ref_63220 = ref_63020 # MOV operation
    ref_63228 = (ref_63220 >> (0x37 & 0x3F)) # SHR operation
    ref_63235 = ref_63228 # MOV operation
    ref_64068 = ref_50869 # MOV operation
    ref_64268 = ref_64068 # MOV operation
    ref_64276 = ((ref_64268 << (0x9 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_64283 = ref_64276 # MOV operation
    ref_64379 = ref_64283 # MOV operation
    ref_64391 = ref_63235 # MOV operation
    ref_64393 = (ref_64391 | ref_64379) # OR operation
    ref_64502 = ref_64393 # MOV operation
    ref_66273 = ref_50869 # MOV operation
    ref_66349 = ref_66273 # MOV operation
    ref_66363 = (0x3E908497 | ref_66349) # OR operation
    ref_66472 = ref_66363 # MOV operation
    ref_76017 = ref_58610 # MOV operation
    ref_77031 = ref_61365 # MOV operation
    ref_77231 = ref_77031 # MOV operation
    ref_77239 = (ref_77231 >> (0x4 & 0x3F)) # SHR operation
    ref_77246 = ref_77239 # MOV operation
    ref_77466 = ref_77246 # MOV operation
    ref_77472 = (0xF & ref_77466) # AND operation
    ref_77573 = ref_77472 # MOV operation
    ref_77587 = (0x1 | ref_77573) # OR operation
    ref_77816 = ref_77587 # MOV operation
    ref_77818 = ((0x40 - ref_77816) & 0xFFFFFFFFFFFFFFFF) # SUB operation
    ref_77826 = ref_77818 # MOV operation
    ref_77930 = ref_76017 # MOV operation
    ref_77934 = ref_77826 # MOV operation
    ref_77936 = (ref_77934 & 0xFFFFFFFF) # MOV operation
    ref_77938 = (ref_77930 >> ((ref_77936 & 0xFF) & 0x3F)) # SHR operation
    ref_77945 = ref_77938 # MOV operation
    ref_78863 = ref_58610 # MOV operation
    ref_79877 = ref_61365 # MOV operation
    ref_80077 = ref_79877 # MOV operation
    ref_80085 = (ref_80077 >> (0x4 & 0x3F)) # SHR operation
    ref_80092 = ref_80085 # MOV operation
    ref_80312 = ref_80092 # MOV operation
    ref_80318 = (0xF & ref_80312) # AND operation
    ref_80419 = ref_80318 # MOV operation
    ref_80433 = (0x1 | ref_80419) # OR operation
    ref_80542 = ref_78863 # MOV operation
    ref_80546 = ref_80433 # MOV operation
    ref_80548 = (ref_80546 & 0xFFFFFFFF) # MOV operation
    ref_80550 = ((ref_80542 << ((ref_80548 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_80557 = ref_80550 # MOV operation
    ref_80653 = ref_80557 # MOV operation
    ref_80665 = ref_77945 # MOV operation
    ref_80667 = (ref_80665 | ref_80653) # OR operation
    ref_81706 = ref_66472 # MOV operation
    ref_82604 = ref_64502 # MOV operation
    ref_82680 = ref_82604 # MOV operation
    ref_82692 = ref_81706 # MOV operation
    ref_82694 = (ref_82692 | ref_82680) # OR operation
    ref_82919 = ref_82694 # MOV operation
    ref_82927 = (ref_82919 >> (0x4 & 0x3F)) # SHR operation
    ref_82934 = ref_82927 # MOV operation
    ref_83154 = ref_82934 # MOV operation
    ref_83160 = (0x7 & ref_83154) # AND operation
    ref_83261 = ref_83160 # MOV operation
    ref_83275 = (0x1 | ref_83261) # OR operation
    ref_83384 = ref_80667 # MOV operation
    ref_83388 = ref_83275 # MOV operation
    ref_83390 = (ref_83388 & 0xFFFFFFFF) # MOV operation
    ref_83392 = (ref_83384 >> ((ref_83390 & 0xFF) & 0x3F)) # SHR operation
    ref_83399 = ref_83392 # MOV operation
    ref_83503 = ref_83399 # MOV operation
    ref_83714 = ref_83503 # MOV operation
    ref_83716 = ref_83714 # MOV operation
    endb = ref_83716


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 << (0x33 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_6631 = ref_6624 # MOV operation
    ref_7464 = ref_278 # MOV operation
    ref_7664 = ref_7464 # MOV operation
    ref_7672 = (ref_7664 >> (0xD & 0x3F)) # SHR operation
    ref_7679 = ref_7672 # MOV operation
    ref_7775 = ref_7679 # MOV operation
    ref_7787 = ref_6631 # MOV operation
    ref_7789 = (ref_7787 | ref_7775) # OR operation
    ref_7890 = ref_7789 # MOV operation
    ref_7904 = ((0x2EA4A1C39AF5800 + ref_7890) & 0xFFFFFFFFFFFFFFFF) # ADD operation
    ref_8014 = ref_7904 # MOV operation
    ref_9754 = ref_8014 # MOV operation
    ref_10567 = ref_278 # MOV operation
    ref_10643 = ref_10567 # MOV operation
    ref_10655 = ref_9754 # MOV operation
    ref_10657 = ((ref_10643 - ref_10655) & 0xFFFFFFFFFFFFFFFF) # SUB operation
    ref_10665 = ref_10657 # MOV operation
    ref_10769 = ref_10665 # MOV operation
    ref_10771 = ((ref_10769 >> 56) & 0xFF) # Byte reference - MOV operation
    ref_10772 = ((ref_10769 >> 48) & 0xFF) # Byte reference - MOV operation
    ref_10773 = ((ref_10769 >> 40) & 0xFF) # Byte reference - MOV operation
    ref_10774 = ((ref_10769 >> 32) & 0xFF) # Byte reference - MOV operation
    ref_10775 = ((ref_10769 >> 24) & 0xFF) # Byte reference - MOV operation
    ref_10776 = ((ref_10769 >> 16) & 0xFF) # Byte reference - MOV operation
    ref_10777 = ((ref_10769 >> 8) & 0xFF) # Byte reference - MOV operation
    ref_10778 = (ref_10769 & 0xFF) # Byte reference - MOV operation
    ref_12424 = ref_278 # MOV operation
    ref_12624 = ref_12424 # MOV operation
    ref_12632 = (ref_12624 >> (0x37 & 0x3F)) # SHR operation
    ref_12639 = ref_12632 # MOV operation
    ref_13472 = ref_278 # MOV operation
    ref_13672 = ref_13472 # MOV operation
    ref_13680 = ((ref_13672 << (0x9 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_13687 = ref_13680 # MOV operation
    ref_13783 = ref_13687 # MOV operation
    ref_13795 = ref_12639 # MOV operation
    ref_13797 = (ref_13795 | ref_13783) # OR operation
    ref_13906 = ref_13797 # MOV operation
    ref_15677 = ref_278 # MOV operation
    ref_15753 = ref_15677 # MOV operation
    ref_15767 = (0x3E908497 | ref_15753) # OR operation
    ref_15876 = ref_15767 # MOV operation
    ref_25204 = ((((ref_10771) << 8 | ref_10772) << 8 | ref_10773) << 8 | ref_10774) # MOV operation
    ref_25412 = (ref_25204 & 0xFFFFFFFF) # MOV operation
    ref_26932 = ((((ref_10775) << 8 | ref_10776) << 8 | ref_10777) << 8 | ref_10778) # MOV operation
    ref_28440 = (ref_26932 & 0xFFFFFFFF) # MOV operation
    ref_28442 = (((ref_28440 & 0xFFFFFFFF) >> 24) & 0xFF) # Byte reference - MOV operation
    ref_28443 = (((ref_28440 & 0xFFFFFFFF) >> 16) & 0xFF) # Byte reference - MOV operation
    ref_28444 = (((ref_28440 & 0xFFFFFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
    ref_28445 = ((ref_28440 & 0xFFFFFFFF) & 0xFF) # Byte reference - MOV operation
    ref_28660 = (ref_25412 & 0xFFFFFFFF) # MOV operation
    ref_30168 = (ref_28660 & 0xFFFFFFFF) # MOV operation
    ref_30170 = (((ref_30168 & 0xFFFFFFFF) >> 24) & 0xFF) # Byte reference - MOV operation
    ref_30171 = (((ref_30168 & 0xFFFFFFFF) >> 16) & 0xFF) # Byte reference - MOV operation
    ref_30172 = (((ref_30168 & 0xFFFFFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
    ref_30173 = ((ref_30168 & 0xFFFFFFFF) & 0xFF) # Byte reference - MOV operation
    ref_31904 = ref_8014 # MOV operation
    ref_32104 = ref_31904 # MOV operation
    ref_32110 = (0x3F & ref_32104) # AND operation
    ref_32335 = ref_32110 # MOV operation
    ref_32343 = ((ref_32335 << (0x4 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_32350 = ref_32343 # MOV operation
    ref_33268 = ref_8014 # MOV operation
    ref_33344 = ref_33268 # MOV operation
    ref_33356 = ref_32350 # MOV operation
    ref_33358 = (ref_33356 | ref_33344) # OR operation
    ref_33467 = ref_33358 # MOV operation
    ref_35207 = ref_33467 # MOV operation
    ref_35407 = ref_35207 # MOV operation
    ref_35413 = (0x1F & ref_35407) # AND operation
    ref_35638 = ref_35413 # MOV operation
    ref_35646 = ((ref_35638 << (0x3 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_35653 = ref_35646 # MOV operation
    ref_36571 = ref_15876 # MOV operation
    ref_36647 = ref_36571 # MOV operation
    ref_36659 = ref_35653 # MOV operation
    ref_36661 = (ref_36659 | ref_36647) # OR operation
    ref_36770 = ref_36661 # MOV operation
    ref_38510 = ref_13906 # MOV operation
    ref_39408 = ref_33467 # MOV operation
    ref_39484 = ref_39408 # MOV operation
    ref_39496 = ref_38510 # MOV operation
    ref_39498 = ((ref_39496 + ref_39484) & 0xFFFFFFFFFFFFFFFF) # ADD operation
    ref_39724 = ref_39498 # MOV operation
    ref_39730 = (0x1F & ref_39724) # AND operation
    ref_39955 = ref_39730 # MOV operation
    ref_39963 = ((ref_39955 << (0x3 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_39970 = ref_39963 # MOV operation
    ref_40888 = ref_33467 # MOV operation
    ref_40964 = ref_40888 # MOV operation
    ref_40976 = ref_39970 # MOV operation
    ref_40978 = (ref_40976 | ref_40964) # OR operation
    ref_41087 = ref_40978 # MOV operation
    ref_42835 = ref_41087 # MOV operation
    ref_43849 = ((((((((ref_28442) << 8 | ref_28443) << 8 | ref_28444) << 8 | ref_28445) << 8 | ref_30170) << 8 | ref_30171) << 8 | ref_30172) << 8 | ref_30173) # MOV operation
    ref_44049 = ref_43849 # MOV operation
    ref_44057 = (ref_44049 >> (0x4 & 0x3F)) # SHR operation
    ref_44064 = ref_44057 # MOV operation
    ref_44284 = ref_44064 # MOV operation
    ref_44290 = (0xF & ref_44284) # AND operation
    ref_44391 = ref_44290 # MOV operation
    ref_44405 = (0x1 | ref_44391) # OR operation
    ref_44634 = ref_44405 # MOV operation
    ref_44636 = ((0x40 - ref_44634) & 0xFFFFFFFFFFFFFFFF) # SUB operation
    ref_44644 = ref_44636 # MOV operation
    ref_44748 = ref_42835 # MOV operation
    ref_44752 = ref_44644 # MOV operation
    ref_44754 = (ref_44752 & 0xFFFFFFFF) # MOV operation
    ref_44756 = (ref_44748 >> ((ref_44754 & 0xFF) & 0x3F)) # SHR operation
    ref_44763 = ref_44756 # MOV operation
    ref_45681 = ref_41087 # MOV operation
    ref_46695 = ((((((((ref_28442) << 8 | ref_28443) << 8 | ref_28444) << 8 | ref_28445) << 8 | ref_30170) << 8 | ref_30171) << 8 | ref_30172) << 8 | ref_30173) # MOV operation
    ref_46895 = ref_46695 # MOV operation
    ref_46903 = (ref_46895 >> (0x4 & 0x3F)) # SHR operation
    ref_46910 = ref_46903 # MOV operation
    ref_47130 = ref_46910 # MOV operation
    ref_47136 = (0xF & ref_47130) # AND operation
    ref_47237 = ref_47136 # MOV operation
    ref_47251 = (0x1 | ref_47237) # OR operation
    ref_47360 = ref_45681 # MOV operation
    ref_47364 = ref_47251 # MOV operation
    ref_47366 = (ref_47364 & 0xFFFFFFFF) # MOV operation
    ref_47368 = ((ref_47360 << ((ref_47366 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_47375 = ref_47368 # MOV operation
    ref_47471 = ref_47375 # MOV operation
    ref_47483 = ref_44763 # MOV operation
    ref_47485 = (ref_47483 | ref_47471) # OR operation
    ref_48524 = ref_36770 # MOV operation
    ref_49422 = ref_13906 # MOV operation
    ref_49498 = ref_49422 # MOV operation
    ref_49510 = ref_48524 # MOV operation
    ref_49512 = (ref_49510 | ref_49498) # OR operation
    ref_49737 = ref_49512 # MOV operation
    ref_49745 = (ref_49737 >> (0x4 & 0x3F)) # SHR operation
    ref_49752 = ref_49745 # MOV operation
    ref_49972 = ref_49752 # MOV operation
    ref_49978 = (0x7 & ref_49972) # AND operation
    ref_50079 = ref_49978 # MOV operation
    ref_50093 = (0x1 | ref_50079) # OR operation
    ref_50202 = ref_47485 # MOV operation
    ref_50206 = ref_50093 # MOV operation
    ref_50208 = (ref_50206 & 0xFFFFFFFF) # MOV operation
    ref_50210 = (ref_50202 >> ((ref_50208 & 0xFF) & 0x3F)) # SHR operation
    ref_50217 = ref_50210 # MOV operation
    ref_50321 = ref_50217 # MOV operation
    ref_50532 = ref_50321 # MOV operation
    ref_50534 = ref_50532 # MOV operation
    endb = ref_50534


print endb & 0xffffffffffffffff
