#!/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_6300 = ref_278 # MOV operation
ref_6500 = ref_6300 # MOV operation
ref_6506 = (0x1F02C962 | ref_6500) # OR operation
ref_6731 = ref_6506 # MOV operation
ref_6737 = (0x1F8797B2 & ref_6731) # AND operation
ref_6846 = ref_6737 # MOV operation
ref_8501 = ref_278 # MOV operation
ref_9399 = ref_6846 # MOV operation
ref_9483 = ref_8501 # MOV operation
ref_9487 = ref_9399 # MOV operation
ref_9489 = (ref_9487 & ref_9483) # AND operation
ref_9598 = ref_9489 # MOV operation
ref_11253 = ref_278 # MOV operation
ref_11453 = ref_11253 # MOV operation
ref_11459 = (((sx(0x40, 0x66AF1DF) * sx(0x40, ref_11453)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
ref_12495 = ref_9598 # MOV operation
ref_12571 = ref_12495 # MOV operation
ref_12585 = (ref_12571 >> (0x7 & 0x3F)) # SHR operation
ref_13624 = ref_9598 # MOV operation
ref_13700 = ref_13624 # MOV operation
ref_13714 = ((ref_13700 << (0x39 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_13823 = ref_12585 # MOV operation
ref_13827 = ref_13714 # MOV operation
ref_13829 = (ref_13827 | ref_13823) # OR operation
ref_13938 = ref_11459 # MOV operation
ref_13942 = ref_13829 # MOV operation
ref_13944 = ((ref_13942 + ref_13938) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_14054 = ref_13944 # MOV operation
ref_23412 = ref_14054 # MOV operation
ref_24630 = ref_14054 # MOV operation
ref_24714 = ref_23412 # MOV operation
ref_24718 = ref_24630 # MOV operation
ref_24720 = ((ref_24718 + ref_24714) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_24830 = ref_24720 # MOV operation
ref_27210 = ref_14054 # MOV operation
ref_28312 = ref_9598 # MOV operation
ref_28512 = ref_28312 # MOV operation
ref_28518 = (0x7 & ref_28512) # AND operation
ref_28619 = ref_28518 # MOV operation
ref_28633 = ((ref_28619 << (0x2 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_28742 = ref_27210 # MOV operation
ref_28746 = ref_28633 # MOV operation
ref_28748 = (ref_28746 | ref_28742) # OR operation
ref_28857 = ref_28748 # MOV operation
ref_28859 = ((ref_28857 >> 56) & 0xFF) # Byte reference - MOV operation
ref_28860 = ((ref_28857 >> 48) & 0xFF) # Byte reference - MOV operation
ref_28861 = ((ref_28857 >> 40) & 0xFF) # Byte reference - MOV operation
ref_28862 = ((ref_28857 >> 32) & 0xFF) # Byte reference - MOV operation
ref_28863 = ((ref_28857 >> 24) & 0xFF) # Byte reference - MOV operation
ref_28864 = ((ref_28857 >> 16) & 0xFF) # Byte reference - MOV operation
ref_28865 = ((ref_28857 >> 8) & 0xFF) # Byte reference - MOV operation
ref_28866 = (ref_28857 & 0xFF) # Byte reference - MOV operation
ref_30829 = ref_28859 # MOVZX operation
ref_30905 = (ref_30829 & 0xFF) # MOVZX operation
ref_34489 = ref_28866 # MOVZX operation
ref_34565 = (ref_34489 & 0xFF) # MOVZX operation
ref_34567 = (ref_34565 & 0xFF) # Byte reference - MOV operation
ref_36529 = (ref_30905 & 0xFF) # MOVZX operation
ref_36605 = (ref_36529 & 0xFF) # MOVZX operation
ref_36607 = (ref_36605 & 0xFF) # Byte reference - MOV operation
ref_38337 = ref_6846 # MOV operation
ref_39671 = ((((((((ref_34567) << 8 | ref_28860) << 8 | ref_28861) << 8 | ref_28862) << 8 | ref_28863) << 8 | ref_28864) << 8 | ref_28865) << 8 | ref_36607) # MOV operation
ref_40657 = ref_9598 # MOV operation
ref_40741 = ref_39671 # MOV operation
ref_40745 = ref_40657 # MOV operation
ref_40747 = (ref_40745 & ref_40741) # AND operation
ref_40972 = ref_40747 # MOV operation
ref_40978 = (0x1F & ref_40972) # AND operation
ref_41079 = ref_40978 # MOV operation
ref_41093 = ((ref_41079 << (0x4 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_41202 = ref_38337 # MOV operation
ref_41206 = ref_41093 # MOV operation
ref_41208 = (ref_41206 | ref_41202) # OR operation
ref_41317 = ref_41208 # MOV operation
ref_44682 = ref_24830 # MOV operation
ref_45900 = ref_24830 # MOV operation
ref_45984 = ref_44682 # MOV operation
ref_45988 = ref_45900 # MOV operation
ref_45990 = ((ref_45988 + ref_45984) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_46100 = ref_45990 # MOV operation
ref_48480 = ref_46100 # MOV operation
ref_49582 = ((((((((ref_34567) << 8 | ref_28860) << 8 | ref_28861) << 8 | ref_28862) << 8 | ref_28863) << 8 | ref_28864) << 8 | ref_28865) << 8 | ref_36607) # MOV operation
ref_49782 = ref_49582 # MOV operation
ref_49788 = (0x7 & ref_49782) # AND operation
ref_49889 = ref_49788 # MOV operation
ref_49903 = ((ref_49889 << (0x2 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_50012 = ref_48480 # MOV operation
ref_50016 = ref_49903 # MOV operation
ref_50018 = (ref_50016 | ref_50012) # OR operation
ref_50127 = ref_50018 # MOV operation
ref_50129 = ((ref_50127 >> 56) & 0xFF) # Byte reference - MOV operation
ref_50130 = ((ref_50127 >> 48) & 0xFF) # Byte reference - MOV operation
ref_50131 = ((ref_50127 >> 40) & 0xFF) # Byte reference - MOV operation
ref_50132 = ((ref_50127 >> 32) & 0xFF) # Byte reference - MOV operation
ref_50133 = ((ref_50127 >> 24) & 0xFF) # Byte reference - MOV operation
ref_50134 = ((ref_50127 >> 16) & 0xFF) # Byte reference - MOV operation
ref_50135 = ((ref_50127 >> 8) & 0xFF) # Byte reference - MOV operation
ref_50136 = (ref_50127 & 0xFF) # Byte reference - MOV operation
ref_52099 = ref_50129 # MOVZX operation
ref_52175 = (ref_52099 & 0xFF) # MOVZX operation
ref_55759 = ref_50136 # MOVZX operation
ref_55835 = (ref_55759 & 0xFF) # MOVZX operation
ref_55837 = (ref_55835 & 0xFF) # Byte reference - MOV operation
ref_57799 = (ref_52175 & 0xFF) # MOVZX operation
ref_57875 = (ref_57799 & 0xFF) # MOVZX operation
ref_57877 = (ref_57875 & 0xFF) # Byte reference - MOV operation
ref_59607 = ref_41317 # MOV operation
ref_60941 = ((((((((ref_55837) << 8 | ref_50130) << 8 | ref_50131) << 8 | ref_50132) << 8 | ref_50133) << 8 | ref_50134) << 8 | ref_50135) << 8 | ref_57877) # MOV operation
ref_61927 = ((((((((ref_34567) << 8 | ref_28860) << 8 | ref_28861) << 8 | ref_28862) << 8 | ref_28863) << 8 | ref_28864) << 8 | ref_28865) << 8 | ref_36607) # MOV operation
ref_62011 = ref_60941 # MOV operation
ref_62015 = ref_61927 # MOV operation
ref_62017 = (ref_62015 & ref_62011) # AND operation
ref_62242 = ref_62017 # MOV operation
ref_62248 = (0x1F & ref_62242) # AND operation
ref_62349 = ref_62248 # MOV operation
ref_62363 = ((ref_62349 << (0x4 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_62472 = ref_59607 # MOV operation
ref_62476 = ref_62363 # MOV operation
ref_62478 = (ref_62476 | ref_62472) # OR operation
ref_62587 = ref_62478 # MOV operation
ref_65717 = ((((((((ref_34567) << 8 | ref_28860) << 8 | ref_28861) << 8 | ref_28862) << 8 | ref_28863) << 8 | ref_28864) << 8 | ref_28865) << 8 | ref_36607) # MOV operation
ref_66615 = ((((((((ref_55837) << 8 | ref_50130) << 8 | ref_50131) << 8 | ref_50132) << 8 | ref_50133) << 8 | ref_50134) << 8 | ref_50135) << 8 | ref_57877) # MOV operation
ref_66699 = ref_65717 # MOV operation
ref_66703 = ref_66615 # MOV operation
ref_66705 = (ref_66703 | ref_66699) # OR operation
ref_66930 = ref_66705 # MOV operation
ref_66936 = (0xF & ref_66930) # AND operation
ref_67161 = ref_66936 # MOV operation
ref_67167 = (0x1 | ref_67161) # OR operation
ref_68206 = ref_9598 # MOV operation
ref_68282 = ref_68206 # MOV operation
ref_68296 = (ref_68282 >> (0x1 & 0x3F)) # SHR operation
ref_68521 = ref_68296 # MOV operation
ref_68527 = (0xF & ref_68521) # AND operation
ref_68752 = ref_68527 # MOV operation
ref_68758 = (0x1 | ref_68752) # OR operation
ref_69681 = ref_62587 # MOV operation
ref_69757 = ref_69681 # MOV operation
ref_69769 = ref_68758 # MOV operation
ref_69771 = (ref_69757 >> ((ref_69769 & 0xFF) & 0x3F)) # SHR operation
ref_70810 = ref_9598 # MOV operation
ref_70886 = ref_70810 # MOV operation
ref_70900 = (ref_70886 >> (0x1 & 0x3F)) # SHR operation
ref_71125 = ref_70900 # MOV operation
ref_71131 = (0xF & ref_71125) # AND operation
ref_71356 = ref_71131 # MOV operation
ref_71362 = (0x1 | ref_71356) # OR operation
ref_71591 = ref_71362 # MOV operation
ref_71593 = ((0x40 - ref_71591) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_71601 = ref_71593 # MOV operation
ref_72519 = ref_62587 # MOV operation
ref_72595 = ref_72519 # MOV operation
ref_72607 = ref_71601 # MOV operation
ref_72609 = ((ref_72595 << ((ref_72607 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_72718 = ref_69771 # MOV operation
ref_72722 = ref_72609 # MOV operation
ref_72724 = (ref_72722 | ref_72718) # OR operation
ref_72825 = ref_72724 # MOV operation
ref_72837 = ref_67167 # MOV operation
ref_72839 = ((ref_72825 << ((ref_72837 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_73762 = ((((((((ref_34567) << 8 | ref_28860) << 8 | ref_28861) << 8 | ref_28862) << 8 | ref_28863) << 8 | ref_28864) << 8 | ref_28865) << 8 | ref_36607) # MOV operation
ref_74660 = ((((((((ref_55837) << 8 | ref_50130) << 8 | ref_50131) << 8 | ref_50132) << 8 | ref_50133) << 8 | ref_50134) << 8 | ref_50135) << 8 | ref_57877) # MOV operation
ref_74744 = ref_73762 # MOV operation
ref_74748 = ref_74660 # MOV operation
ref_74750 = (ref_74748 | ref_74744) # OR operation
ref_74975 = ref_74750 # MOV operation
ref_74981 = (0xF & ref_74975) # AND operation
ref_75206 = ref_74981 # MOV operation
ref_75212 = (0x1 | ref_75206) # OR operation
ref_75441 = ref_75212 # MOV operation
ref_75443 = ((0x40 - ref_75441) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_75451 = ref_75443 # MOV operation
ref_76485 = ref_9598 # MOV operation
ref_76561 = ref_76485 # MOV operation
ref_76575 = (ref_76561 >> (0x1 & 0x3F)) # SHR operation
ref_76800 = ref_76575 # MOV operation
ref_76806 = (0xF & ref_76800) # AND operation
ref_77031 = ref_76806 # MOV operation
ref_77037 = (0x1 | ref_77031) # OR operation
ref_77960 = ref_62587 # MOV operation
ref_78036 = ref_77960 # MOV operation
ref_78048 = ref_77037 # MOV operation
ref_78050 = (ref_78036 >> ((ref_78048 & 0xFF) & 0x3F)) # SHR operation
ref_79089 = ref_9598 # MOV operation
ref_79165 = ref_79089 # MOV operation
ref_79179 = (ref_79165 >> (0x1 & 0x3F)) # SHR operation
ref_79404 = ref_79179 # MOV operation
ref_79410 = (0xF & ref_79404) # AND operation
ref_79635 = ref_79410 # MOV operation
ref_79641 = (0x1 | ref_79635) # OR operation
ref_79870 = ref_79641 # MOV operation
ref_79872 = ((0x40 - ref_79870) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_79880 = ref_79872 # MOV operation
ref_80798 = ref_62587 # MOV operation
ref_80874 = ref_80798 # MOV operation
ref_80886 = ref_79880 # MOV operation
ref_80888 = ((ref_80874 << ((ref_80886 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_80997 = ref_78050 # MOV operation
ref_81001 = ref_80888 # MOV operation
ref_81003 = (ref_81001 | ref_80997) # OR operation
ref_81104 = ref_81003 # MOV operation
ref_81116 = ref_75451 # MOV operation
ref_81118 = (ref_81104 >> ((ref_81116 & 0xFF) & 0x3F)) # SHR operation
ref_81227 = ref_72839 # MOV operation
ref_81231 = ref_81118 # MOV operation
ref_81233 = (ref_81231 | ref_81227) # OR operation
ref_81342 = ref_81233 # MOV operation
ref_81553 = ref_81342 # MOV operation
ref_81555 = ref_81553 # MOV operation

print ref_81555 & 0xffffffffffffffff
