#!/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_15831 = ref_278 # MOV operation
ref_16430 = ref_15831 # MOV operation
ref_16444 = ((ref_16430 << (0xD & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_22463 = ref_278 # MOV operation
ref_23062 = ref_22463 # MOV operation
ref_23076 = (ref_23062 >> (0x33 & 0x3F)) # SHR operation
ref_23453 = ref_16444 # MOV operation
ref_23457 = ref_23076 # MOV operation
ref_23459 = (ref_23457 | ref_23453) # OR operation
ref_24053 = ref_23459 # MOV operation
ref_34474 = ref_278 # MOV operation
ref_35073 = ref_34474 # MOV operation
ref_35089 = ((((0x0) << 64 | ref_35073) / 0x6) & 0xFFFFFFFFFFFFFFFF) # DIV operation
ref_36573 = ref_35089 # MOV operation
ref_36579 = (((sx(0x40, 0xFA0000000002C90C) * sx(0x40, ref_36573)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
ref_37170 = ref_36579 # MOV operation
ref_46348 = ref_24053 # MOV operation
ref_51099 = ref_37170 # MOV operation
ref_51451 = ref_46348 # MOV operation
ref_51455 = ref_51099 # MOV operation
ref_51457 = (ref_51455 | ref_51451) # OR operation
ref_56620 = ref_278 # MOV operation
ref_56964 = ref_56620 # MOV operation
ref_56976 = ref_51457 # MOV operation
ref_56978 = ((ref_56976 + ref_56964) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_57573 = ref_56978 # MOV operation
ref_68463 = ref_24053 # MOV operation
ref_70181 = ref_68463 # MOV operation
ref_70187 = ((ref_70181 - 0x2ED5CD7E) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_70195 = ref_70187 # MOV operation
ref_71081 = ref_70195 # MOV operation
ref_71083 = ((0x28E5FC28 - ref_71081) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_71091 = ref_71083 # MOV operation
ref_71710 = ref_71091 # MOV operation
ref_71724 = (ref_71710 >> (0x2 & 0x3F)) # SHR operation
ref_73212 = ref_71724 # MOV operation
ref_73218 = (0x7 & ref_73212) # AND operation
ref_74451 = ref_73218 # MOV operation
ref_74457 = (0x1 | ref_74451) # OR operation
ref_79233 = ref_37170 # MOV operation
ref_84371 = ref_278 # MOV operation
ref_84715 = ref_84371 # MOV operation
ref_84727 = ref_79233 # MOV operation
ref_84729 = ((ref_84727 + ref_84715) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_85354 = ref_84729 # MOV operation
ref_85366 = ref_74457 # MOV operation
ref_85368 = (ref_85354 >> ((ref_85366 & 0xFF) & 0x3F)) # SHR operation
ref_85962 = ref_85368 # MOV operation
ref_95996 = ref_85962 # MOV operation
ref_96595 = ref_95996 # MOV operation
ref_96609 = (ref_96595 >> (0x1 & 0x3F)) # SHR operation
ref_98097 = ref_96609 # MOV operation
ref_98103 = (0x7 & ref_98097) # AND operation
ref_99336 = ref_98103 # MOV operation
ref_99342 = (0x1 | ref_99336) # OR operation
ref_104118 = ref_85962 # MOV operation
ref_104717 = ref_104118 # MOV operation
ref_104729 = ref_99342 # MOV operation
ref_104731 = (ref_104717 >> ((ref_104729 & 0xFF) & 0x3F)) # SHR operation
ref_105325 = ref_104731 # MOV operation
ref_105327 = ((ref_105325 >> 56) & 0xFF) # Byte reference - MOV operation
ref_105328 = ((ref_105325 >> 48) & 0xFF) # Byte reference - MOV operation
ref_105329 = ((ref_105325 >> 40) & 0xFF) # Byte reference - MOV operation
ref_105330 = ((ref_105325 >> 32) & 0xFF) # Byte reference - MOV operation
ref_105331 = ((ref_105325 >> 24) & 0xFF) # Byte reference - MOV operation
ref_105332 = ((ref_105325 >> 16) & 0xFF) # Byte reference - MOV operation
ref_105333 = ((ref_105325 >> 8) & 0xFF) # Byte reference - MOV operation
ref_105334 = (ref_105325 & 0xFF) # Byte reference - MOV operation
ref_120336 = ref_57573 # MOV operation
ref_126082 = ref_24053 # MOV operation
ref_127545 = ref_126082 # MOV operation
ref_127551 = (0x7 & ref_127545) # AND operation
ref_128175 = ref_127551 # MOV operation
ref_128189 = ((ref_128175 << (0x2 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_128566 = ref_120336 # MOV operation
ref_128570 = ref_128189 # MOV operation
ref_128572 = (ref_128570 | ref_128566) # OR operation
ref_129166 = ref_128572 # MOV operation
ref_138294 = ((((ref_105327) << 8 | ref_105328) << 8 | ref_105329) << 8 | ref_105330) # MOV operation
ref_138642 = (ref_138294 & 0xFFFFFFFF) # MOV operation
ref_154973 = ((((ref_105331) << 8 | ref_105332) << 8 | ref_105333) << 8 | ref_105334) # MOV operation
ref_155321 = (ref_154973 & 0xFFFFFFFF) # MOV operation
ref_164445 = (ref_138642 & 0xFFFFFFFF) # MOV operation
ref_164793 = (ref_164445 & 0xFFFFFFFF) # MOV operation
ref_181179 = ref_129166 # MOV operation
ref_186925 = ref_129166 # MOV operation
ref_188388 = ref_186925 # MOV operation
ref_188394 = (0x7 & ref_188388) # AND operation
ref_189018 = ref_188394 # MOV operation
ref_189032 = ((ref_189018 << (0x2 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_189409 = ref_181179 # MOV operation
ref_189413 = ref_189032 # MOV operation
ref_189415 = (ref_189413 | ref_189409) # OR operation
ref_190009 = ref_189415 # MOV operation
ref_199137 = (ref_155321 & 0xFFFFFFFF) # MOV operation
ref_199485 = (ref_199137 & 0xFFFFFFFF) # MOV operation
ref_215816 = (ref_164793 & 0xFFFFFFFF) # MOV operation
ref_216164 = (ref_215816 & 0xFFFFFFFF) # MOV operation
ref_216166 = (((ref_216164 & 0xFFFFFFFF) >> 24) & 0xFF) # Byte reference - MOV operation
ref_216167 = (((ref_216164 & 0xFFFFFFFF) >> 16) & 0xFF) # Byte reference - MOV operation
ref_216168 = (((ref_216164 & 0xFFFFFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
ref_216169 = ((ref_216164 & 0xFFFFFFFF) & 0xFF) # Byte reference - MOV operation
ref_225288 = (ref_199485 & 0xFFFFFFFF) # MOV operation
ref_225636 = (ref_225288 & 0xFFFFFFFF) # MOV operation
ref_225638 = (((ref_225636 & 0xFFFFFFFF) >> 24) & 0xFF) # Byte reference - MOV operation
ref_225639 = (((ref_225636 & 0xFFFFFFFF) >> 16) & 0xFF) # Byte reference - MOV operation
ref_225640 = (((ref_225636 & 0xFFFFFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
ref_225641 = ((ref_225636 & 0xFFFFFFFF) & 0xFF) # Byte reference - MOV operation
ref_243625 = ref_190009 # MOV operation
ref_248376 = ((((((((ref_216166) << 8 | ref_216167) << 8 | ref_216168) << 8 | ref_216169) << 8 | ref_225638) << 8 | ref_225639) << 8 | ref_225640) << 8 | ref_225641) # MOV operation
ref_249839 = ref_248376 # MOV operation
ref_249845 = (((sx(0x40, 0x4E1A7F2) * sx(0x40, ref_249839)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
ref_250474 = ref_243625 # MOV operation
ref_250478 = ref_249845 # MOV operation
ref_250480 = (ref_250478 ^ ref_250474) # XOR operation
ref_251968 = ref_250480 # MOV operation
ref_251974 = (0xF & ref_251968) # AND operation
ref_253207 = ref_251974 # MOV operation
ref_253213 = (0x1 | ref_253207) # OR operation
ref_257989 = ref_24053 # MOV operation
ref_262740 = ref_37170 # MOV operation
ref_263347 = ref_257989 # MOV operation
ref_263351 = ref_262740 # MOV operation
ref_263353 = (((sx(0x40, ref_263351) * sx(0x40, ref_263347)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
ref_263974 = ref_263353 # MOV operation
ref_263986 = ref_253213 # MOV operation
ref_263988 = ((ref_263974 << ((ref_263986 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_269620 = ref_190009 # MOV operation
ref_274371 = ((((((((ref_216166) << 8 | ref_216167) << 8 | ref_216168) << 8 | ref_216169) << 8 | ref_225638) << 8 | ref_225639) << 8 | ref_225640) << 8 | ref_225641) # MOV operation
ref_275834 = ref_274371 # MOV operation
ref_275840 = (((sx(0x40, 0x4E1A7F2) * sx(0x40, ref_275834)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
ref_276469 = ref_269620 # MOV operation
ref_276473 = ref_275840 # MOV operation
ref_276475 = (ref_276473 ^ ref_276469) # XOR operation
ref_277963 = ref_276475 # MOV operation
ref_277969 = (0xF & ref_277963) # AND operation
ref_279202 = ref_277969 # MOV operation
ref_279208 = (0x1 | ref_279202) # OR operation
ref_280099 = ref_279208 # MOV operation
ref_280101 = ((0x40 - ref_280099) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_280109 = ref_280101 # MOV operation
ref_284880 = ref_24053 # MOV operation
ref_289631 = ref_37170 # MOV operation
ref_290238 = ref_284880 # MOV operation
ref_290242 = ref_289631 # MOV operation
ref_290244 = (((sx(0x40, ref_290242) * sx(0x40, ref_290238)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
ref_290865 = ref_290244 # MOV operation
ref_290877 = ref_280109 # MOV operation
ref_290879 = (ref_290865 >> ((ref_290877 & 0xFF) & 0x3F)) # SHR operation
ref_291256 = ref_263988 # MOV operation
ref_291260 = ref_290879 # MOV operation
ref_291262 = (ref_291260 | ref_291256) # OR operation
ref_291856 = ref_291262 # MOV operation
ref_292858 = ref_291856 # MOV operation
ref_292860 = ref_292858 # MOV operation

print ref_292860 & 0xffffffffffffffff
