#!/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_7039 = ref_278 # MOV operation
ref_7324 = ref_7039 # MOV operation
ref_7330 = (0x1F02C962 | ref_7324) # OR operation
ref_7643 = ref_7330 # MOV operation
ref_7649 = (0x1F8797B2 & ref_7643) # AND operation
ref_7791 = ref_7649 # MOV operation
ref_10185 = ref_278 # MOV operation
ref_11506 = ref_7791 # MOV operation
ref_11623 = ref_10185 # MOV operation
ref_11627 = ref_11506 # MOV operation
ref_11629 = (ref_11627 & ref_11623) # AND operation
ref_11771 = ref_11629 # MOV operation
ref_14165 = ref_278 # MOV operation
ref_14478 = ref_14165 # MOV operation
ref_14484 = (((sx(0x40, 0x66AF1DF) * sx(0x40, ref_14478)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
ref_15998 = ref_11771 # MOV operation
ref_16133 = ref_15998 # MOV operation
ref_16147 = (ref_16133 >> (0x7 & 0x3F)) # SHR operation
ref_17664 = ref_11771 # MOV operation
ref_17798 = ref_17664 # MOV operation
ref_17812 = ((ref_17798 << (0x39 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_17951 = ref_16147 # MOV operation
ref_17955 = ref_17812 # MOV operation
ref_17957 = (ref_17955 | ref_17951) # OR operation
ref_18121 = ref_14484 # MOV operation
ref_18125 = ref_17957 # MOV operation
ref_18127 = ((ref_18125 + ref_18121) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_18270 = ref_18127 # MOV operation
ref_31858 = ref_18270 # MOV operation
ref_33665 = ref_18270 # MOV operation
ref_33804 = ref_31858 # MOV operation
ref_33808 = ref_33665 # MOV operation
ref_33810 = ((ref_33808 + ref_33804) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_33953 = ref_33810 # MOV operation
ref_37455 = ref_18270 # MOV operation
ref_39091 = ref_11771 # MOV operation
ref_39379 = ref_39091 # MOV operation
ref_39385 = (0x7 & ref_39379) # AND operation
ref_39544 = ref_39385 # MOV operation
ref_39558 = ((ref_39544 << (0x2 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_39697 = ref_37455 # MOV operation
ref_39701 = ref_39558 # MOV operation
ref_39703 = (ref_39701 | ref_39697) # OR operation
ref_39845 = ref_39703 # MOV operation
ref_39847 = ((ref_39845 >> 56) & 0xFF) # Byte reference - MOV operation
ref_39848 = ((ref_39845 >> 48) & 0xFF) # Byte reference - MOV operation
ref_39849 = ((ref_39845 >> 40) & 0xFF) # Byte reference - MOV operation
ref_39850 = ((ref_39845 >> 32) & 0xFF) # Byte reference - MOV operation
ref_39851 = ((ref_39845 >> 24) & 0xFF) # Byte reference - MOV operation
ref_39852 = ((ref_39845 >> 16) & 0xFF) # Byte reference - MOV operation
ref_39853 = ((ref_39845 >> 8) & 0xFF) # Byte reference - MOV operation
ref_39854 = (ref_39845 & 0xFF) # Byte reference - MOV operation
ref_42752 = ref_39847 # MOVZX operation
ref_42858 = (ref_42752 & 0xFF) # MOVZX operation
ref_48147 = ref_39854 # MOVZX operation
ref_48253 = (ref_48147 & 0xFF) # MOVZX operation
ref_48255 = (ref_48253 & 0xFF) # Byte reference - MOV operation
ref_51152 = (ref_42858 & 0xFF) # MOVZX operation
ref_51258 = (ref_51152 & 0xFF) # MOVZX operation
ref_51260 = (ref_51258 & 0xFF) # Byte reference - MOV operation
ref_53780 = ref_7791 # MOV operation
ref_55758 = ((((((((ref_48255) << 8 | ref_39848) << 8 | ref_39849) << 8 | ref_39850) << 8 | ref_39851) << 8 | ref_39852) << 8 | ref_39853) << 8 | ref_51260) # MOV operation
ref_57223 = ref_11771 # MOV operation
ref_57340 = ref_55758 # MOV operation
ref_57344 = ref_57223 # MOV operation
ref_57346 = (ref_57344 & ref_57340) # AND operation
ref_57659 = ref_57346 # MOV operation
ref_57665 = (0x1F & ref_57659) # AND operation
ref_57824 = ref_57665 # MOV operation
ref_57838 = ((ref_57824 << (0x4 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_57977 = ref_53780 # MOV operation
ref_57981 = ref_57838 # MOV operation
ref_57983 = (ref_57981 | ref_57977) # OR operation
ref_58125 = ref_57983 # MOV operation
ref_63062 = ref_33953 # MOV operation
ref_64869 = ref_33953 # MOV operation
ref_65008 = ref_63062 # MOV operation
ref_65012 = ref_64869 # MOV operation
ref_65014 = ((ref_65012 + ref_65008) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_65157 = ref_65014 # MOV operation
ref_68659 = ref_65157 # MOV operation
ref_70295 = ((((((((ref_48255) << 8 | ref_39848) << 8 | ref_39849) << 8 | ref_39850) << 8 | ref_39851) << 8 | ref_39852) << 8 | ref_39853) << 8 | ref_51260) # MOV operation
ref_70583 = ref_70295 # MOV operation
ref_70589 = (0x7 & ref_70583) # AND operation
ref_70748 = ref_70589 # MOV operation
ref_70762 = ((ref_70748 << (0x2 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_70901 = ref_68659 # MOV operation
ref_70905 = ref_70762 # MOV operation
ref_70907 = (ref_70905 | ref_70901) # OR operation
ref_71049 = ref_70907 # MOV operation
ref_71051 = ((ref_71049 >> 56) & 0xFF) # Byte reference - MOV operation
ref_71052 = ((ref_71049 >> 48) & 0xFF) # Byte reference - MOV operation
ref_71053 = ((ref_71049 >> 40) & 0xFF) # Byte reference - MOV operation
ref_71054 = ((ref_71049 >> 32) & 0xFF) # Byte reference - MOV operation
ref_71055 = ((ref_71049 >> 24) & 0xFF) # Byte reference - MOV operation
ref_71056 = ((ref_71049 >> 16) & 0xFF) # Byte reference - MOV operation
ref_71057 = ((ref_71049 >> 8) & 0xFF) # Byte reference - MOV operation
ref_71058 = (ref_71049 & 0xFF) # Byte reference - MOV operation
ref_73956 = ref_71051 # MOVZX operation
ref_74062 = (ref_73956 & 0xFF) # MOVZX operation
ref_79351 = ref_71058 # MOVZX operation
ref_79457 = (ref_79351 & 0xFF) # MOVZX operation
ref_79459 = (ref_79457 & 0xFF) # Byte reference - MOV operation
ref_82356 = (ref_74062 & 0xFF) # MOVZX operation
ref_82462 = (ref_82356 & 0xFF) # MOVZX operation
ref_82464 = (ref_82462 & 0xFF) # Byte reference - MOV operation
ref_84984 = ref_58125 # MOV operation
ref_86962 = ((((((((ref_79459) << 8 | ref_71052) << 8 | ref_71053) << 8 | ref_71054) << 8 | ref_71055) << 8 | ref_71056) << 8 | ref_71057) << 8 | ref_82464) # MOV operation
ref_88427 = ((((((((ref_48255) << 8 | ref_39848) << 8 | ref_39849) << 8 | ref_39850) << 8 | ref_39851) << 8 | ref_39852) << 8 | ref_39853) << 8 | ref_51260) # MOV operation
ref_88544 = ref_86962 # MOV operation
ref_88548 = ref_88427 # MOV operation
ref_88550 = (ref_88548 & ref_88544) # AND operation
ref_88863 = ref_88550 # MOV operation
ref_88869 = (0x1F & ref_88863) # AND operation
ref_89028 = ref_88869 # MOV operation
ref_89042 = ((ref_89028 << (0x4 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_89181 = ref_84984 # MOV operation
ref_89185 = ref_89042 # MOV operation
ref_89187 = (ref_89185 | ref_89181) # OR operation
ref_89329 = ref_89187 # MOV operation
ref_93930 = ((((((((ref_48255) << 8 | ref_39848) << 8 | ref_39849) << 8 | ref_39850) << 8 | ref_39851) << 8 | ref_39852) << 8 | ref_39853) << 8 | ref_51260) # MOV operation
ref_95251 = ((((((((ref_79459) << 8 | ref_71052) << 8 | ref_71053) << 8 | ref_71054) << 8 | ref_71055) << 8 | ref_71056) << 8 | ref_71057) << 8 | ref_82464) # MOV operation
ref_95365 = ref_93930 # MOV operation
ref_95369 = ref_95251 # MOV operation
ref_95371 = (ref_95369 | ref_95365) # OR operation
ref_95684 = ref_95371 # MOV operation
ref_95690 = (0xF & ref_95684) # AND operation
ref_96000 = ref_95690 # MOV operation
ref_96006 = (0x1 | ref_96000) # OR operation
ref_97523 = ref_11771 # MOV operation
ref_97658 = ref_97523 # MOV operation
ref_97672 = (ref_97658 >> (0x1 & 0x3F)) # SHR operation
ref_97985 = ref_97672 # MOV operation
ref_97991 = (0xF & ref_97985) # AND operation
ref_98301 = ref_97991 # MOV operation
ref_98307 = (0x1 | ref_98301) # OR operation
ref_99653 = ref_89329 # MOV operation
ref_99788 = ref_99653 # MOV operation
ref_99800 = ref_98307 # MOV operation
ref_99802 = (ref_99788 >> ((ref_99800 & 0xFF) & 0x3F)) # SHR operation
ref_101319 = ref_11771 # MOV operation
ref_101454 = ref_101319 # MOV operation
ref_101468 = (ref_101454 >> (0x1 & 0x3F)) # SHR operation
ref_101781 = ref_101468 # MOV operation
ref_101787 = (0xF & ref_101781) # AND operation
ref_102097 = ref_101787 # MOV operation
ref_102103 = (0x1 | ref_102097) # OR operation
ref_102445 = ref_102103 # MOV operation
ref_102447 = ((0x40 - ref_102445) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_102455 = ref_102447 # MOV operation
ref_103796 = ref_89329 # MOV operation
ref_103930 = ref_103796 # MOV operation
ref_103942 = ref_102455 # MOV operation
ref_103944 = ((ref_103930 << ((ref_103942 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_104083 = ref_99802 # MOV operation
ref_104087 = ref_103944 # MOV operation
ref_104089 = (ref_104087 | ref_104083) # OR operation
ref_104248 = ref_104089 # MOV operation
ref_104260 = ref_96006 # MOV operation
ref_104262 = ((ref_104248 << ((ref_104260 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_105608 = ((((((((ref_48255) << 8 | ref_39848) << 8 | ref_39849) << 8 | ref_39850) << 8 | ref_39851) << 8 | ref_39852) << 8 | ref_39853) << 8 | ref_51260) # MOV operation
ref_106929 = ((((((((ref_79459) << 8 | ref_71052) << 8 | ref_71053) << 8 | ref_71054) << 8 | ref_71055) << 8 | ref_71056) << 8 | ref_71057) << 8 | ref_82464) # MOV operation
ref_107043 = ref_105608 # MOV operation
ref_107047 = ref_106929 # MOV operation
ref_107049 = (ref_107047 | ref_107043) # OR operation
ref_107362 = ref_107049 # MOV operation
ref_107368 = (0xF & ref_107362) # AND operation
ref_107678 = ref_107368 # MOV operation
ref_107684 = (0x1 | ref_107678) # OR operation
ref_108026 = ref_107684 # MOV operation
ref_108028 = ((0x40 - ref_108026) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_108036 = ref_108028 # MOV operation
ref_109548 = ref_11771 # MOV operation
ref_109683 = ref_109548 # MOV operation
ref_109697 = (ref_109683 >> (0x1 & 0x3F)) # SHR operation
ref_110010 = ref_109697 # MOV operation
ref_110016 = (0xF & ref_110010) # AND operation
ref_110326 = ref_110016 # MOV operation
ref_110332 = (0x1 | ref_110326) # OR operation
ref_111678 = ref_89329 # MOV operation
ref_111813 = ref_111678 # MOV operation
ref_111825 = ref_110332 # MOV operation
ref_111827 = (ref_111813 >> ((ref_111825 & 0xFF) & 0x3F)) # SHR operation
ref_113344 = ref_11771 # MOV operation
ref_113479 = ref_113344 # MOV operation
ref_113493 = (ref_113479 >> (0x1 & 0x3F)) # SHR operation
ref_113806 = ref_113493 # MOV operation
ref_113812 = (0xF & ref_113806) # AND operation
ref_114122 = ref_113812 # MOV operation
ref_114128 = (0x1 | ref_114122) # OR operation
ref_114470 = ref_114128 # MOV operation
ref_114472 = ((0x40 - ref_114470) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_114480 = ref_114472 # MOV operation
ref_115821 = ref_89329 # MOV operation
ref_115955 = ref_115821 # MOV operation
ref_115967 = ref_114480 # MOV operation
ref_115969 = ((ref_115955 << ((ref_115967 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_116108 = ref_111827 # MOV operation
ref_116112 = ref_115969 # MOV operation
ref_116114 = (ref_116112 | ref_116108) # OR operation
ref_116274 = ref_116114 # MOV operation
ref_116286 = ref_108036 # MOV operation
ref_116288 = (ref_116274 >> ((ref_116286 & 0xFF) & 0x3F)) # SHR operation
ref_116427 = ref_104262 # MOV operation
ref_116431 = ref_116288 # MOV operation
ref_116433 = (ref_116431 | ref_116427) # OR operation
ref_116575 = ref_116433 # MOV operation
ref_116877 = ref_116575 # MOV operation
ref_116879 = ref_116877 # MOV operation

print ref_116879 & 0xffffffffffffffff
