#!/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_16086 = ref_278 # MOV operation
ref_17549 = ref_16086 # MOV operation
ref_17557 = (ref_17549 >> (0x3 & 0x3F)) # SHR operation
ref_17564 = ref_17557 # MOV operation
ref_23833 = ref_278 # MOV operation
ref_24432 = ref_23833 # MOV operation
ref_24446 = ((ref_24432 << (0x3D & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_24823 = ref_17564 # MOV operation
ref_24827 = ref_24446 # MOV operation
ref_24829 = (ref_24827 | ref_24823) # OR operation
ref_25708 = ref_24829 # MOV operation
ref_25722 = ((ref_25708 - 0x3FEFFF7F) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_25730 = ref_25722 # MOV operation
ref_26319 = ref_25730 # MOV operation
ref_26321 = ((ref_26319 >> 56) & 0xFF) # Byte reference - MOV operation
ref_26322 = ((ref_26319 >> 48) & 0xFF) # Byte reference - MOV operation
ref_26323 = ((ref_26319 >> 40) & 0xFF) # Byte reference - MOV operation
ref_26324 = ((ref_26319 >> 32) & 0xFF) # Byte reference - MOV operation
ref_26325 = ((ref_26319 >> 24) & 0xFF) # Byte reference - MOV operation
ref_26326 = ((ref_26319 >> 16) & 0xFF) # Byte reference - MOV operation
ref_26327 = ((ref_26319 >> 8) & 0xFF) # Byte reference - MOV operation
ref_26328 = (ref_26319 & 0xFF) # Byte reference - MOV operation
ref_36995 = ref_278 # MOV operation
ref_42001 = ref_26319 # MOV operation
ref_42353 = ref_36995 # MOV operation
ref_42357 = ref_42001 # MOV operation
ref_42359 = (ref_42357 | ref_42353) # OR operation
ref_43238 = ref_42359 # MOV operation
ref_43252 = ((ref_43238 - 0x11E59B96) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_43260 = ref_43252 # MOV operation
ref_43849 = ref_43260 # MOV operation
ref_43851 = ((ref_43849 >> 56) & 0xFF) # Byte reference - MOV operation
ref_43852 = ((ref_43849 >> 48) & 0xFF) # Byte reference - MOV operation
ref_43853 = ((ref_43849 >> 40) & 0xFF) # Byte reference - MOV operation
ref_43854 = ((ref_43849 >> 32) & 0xFF) # Byte reference - MOV operation
ref_43855 = ((ref_43849 >> 24) & 0xFF) # Byte reference - MOV operation
ref_43856 = ((ref_43849 >> 16) & 0xFF) # Byte reference - MOV operation
ref_43857 = ((ref_43849 >> 8) & 0xFF) # Byte reference - MOV operation
ref_43858 = (ref_43849 & 0xFF) # Byte reference - MOV operation
ref_53669 = ref_278 # MOV operation
ref_58675 = ref_26319 # MOV operation
ref_59282 = ref_53669 # MOV operation
ref_59286 = ref_58675 # MOV operation
ref_59288 = (((sx(0x40, ref_59286) * sx(0x40, ref_59282)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
ref_65172 = ref_43849 # MOV operation
ref_65771 = ref_65172 # MOV operation
ref_65785 = ((ref_65771 << (0x7 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_66417 = ref_59288 # MOV operation
ref_66421 = ref_65785 # MOV operation
ref_66423 = (((sx(0x40, ref_66421) * sx(0x40, ref_66417)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
ref_67014 = ref_66423 # MOV operation
ref_77690 = ref_278 # MOV operation
ref_78544 = ref_77690 # MOV operation
ref_78558 = ((ref_78544 - 0x2000000007A4C37E) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_78566 = ref_78558 # MOV operation
ref_79155 = ref_78566 # MOV operation
ref_93349 = ((((ref_26321) << 8 | ref_26322) << 8 | ref_26323) << 8 | ref_26324) # MOV operation
ref_94348 = (ref_93349 & 0xFFFFFFFF) # MOV operation
ref_102960 = ((((ref_26325) << 8 | ref_26326) << 8 | ref_26327) << 8 | ref_26328) # MOV operation
ref_111560 = (ref_102960 & 0xFFFFFFFF) # MOV operation
ref_111562 = (((ref_111560 & 0xFFFFFFFF) >> 24) & 0xFF) # Byte reference - MOV operation
ref_111563 = (((ref_111560 & 0xFFFFFFFF) >> 16) & 0xFF) # Byte reference - MOV operation
ref_111564 = (((ref_111560 & 0xFFFFFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
ref_111565 = ((ref_111560 & 0xFFFFFFFF) & 0xFF) # Byte reference - MOV operation
ref_112571 = (ref_94348 & 0xFFFFFFFF) # MOV operation
ref_121171 = (ref_112571 & 0xFFFFFFFF) # MOV operation
ref_121173 = (((ref_121171 & 0xFFFFFFFF) >> 24) & 0xFF) # Byte reference - MOV operation
ref_121174 = (((ref_121171 & 0xFFFFFFFF) >> 16) & 0xFF) # Byte reference - MOV operation
ref_121175 = (((ref_121171 & 0xFFFFFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
ref_121176 = ((ref_121171 & 0xFFFFFFFF) & 0xFF) # Byte reference - MOV operation
ref_130878 = ((((((((ref_111562) << 8 | ref_111563) << 8 | ref_111564) << 8 | ref_111565) << 8 | ref_121173) << 8 | ref_121174) << 8 | ref_121175) << 8 | ref_121176) # MOV operation
ref_138119 = ref_67014 # MOV operation
ref_143125 = ref_67014 # MOV operation
ref_143477 = ref_138119 # MOV operation
ref_143481 = ref_143125 # MOV operation
ref_143483 = ((ref_143481 + ref_143477) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_144972 = ref_143483 # MOV operation
ref_144978 = (0x3F & ref_144972) # AND operation
ref_145602 = ref_144978 # MOV operation
ref_145616 = ((ref_145602 << (0x4 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_145993 = ref_130878 # MOV operation
ref_145997 = ref_145616 # MOV operation
ref_145999 = (ref_145997 | ref_145993) # OR operation
ref_146593 = ref_145999 # MOV operation
ref_162166 = ((((ref_43851) << 8 | ref_43852) << 8 | ref_43853) << 8 | ref_43854) # MOV operation
ref_163165 = (ref_162166 & 0xFFFFFFFF) # MOV operation
ref_171777 = ((((ref_43855) << 8 | ref_43856) << 8 | ref_43857) << 8 | ref_43858) # MOV operation
ref_180377 = (ref_171777 & 0xFFFFFFFF) # MOV operation
ref_180379 = (((ref_180377 & 0xFFFFFFFF) >> 24) & 0xFF) # Byte reference - MOV operation
ref_180380 = (((ref_180377 & 0xFFFFFFFF) >> 16) & 0xFF) # Byte reference - MOV operation
ref_180381 = (((ref_180377 & 0xFFFFFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
ref_180382 = ((ref_180377 & 0xFFFFFFFF) & 0xFF) # Byte reference - MOV operation
ref_181388 = (ref_163165 & 0xFFFFFFFF) # MOV operation
ref_189988 = (ref_181388 & 0xFFFFFFFF) # MOV operation
ref_189990 = (((ref_189988 & 0xFFFFFFFF) >> 24) & 0xFF) # Byte reference - MOV operation
ref_189991 = (((ref_189988 & 0xFFFFFFFF) >> 16) & 0xFF) # Byte reference - MOV operation
ref_189992 = (((ref_189988 & 0xFFFFFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
ref_189993 = ((ref_189988 & 0xFFFFFFFF) & 0xFF) # Byte reference - MOV operation
ref_199695 = ((((((((ref_180379) << 8 | ref_180380) << 8 | ref_180381) << 8 | ref_180382) << 8 | ref_189990) << 8 | ref_189991) << 8 | ref_189992) << 8 | ref_189993) # MOV operation
ref_206936 = ref_79155 # MOV operation
ref_211942 = ref_67014 # MOV operation
ref_212294 = ref_206936 # MOV operation
ref_212298 = ref_211942 # MOV operation
ref_212300 = ((ref_212298 + ref_212294) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_213789 = ref_212300 # MOV operation
ref_213795 = (0x3F & ref_213789) # AND operation
ref_214419 = ref_213795 # MOV operation
ref_214433 = ((ref_214419 << (0x4 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_214810 = ref_199695 # MOV operation
ref_214814 = ref_214433 # MOV operation
ref_214816 = (ref_214814 | ref_214810) # OR operation
ref_215410 = ref_214816 # MOV operation
ref_215412 = ((ref_215410 >> 56) & 0xFF) # Byte reference - MOV operation
ref_215413 = ((ref_215410 >> 48) & 0xFF) # Byte reference - MOV operation
ref_215414 = ((ref_215410 >> 40) & 0xFF) # Byte reference - MOV operation
ref_215415 = ((ref_215410 >> 32) & 0xFF) # Byte reference - MOV operation
ref_215416 = ((ref_215410 >> 24) & 0xFF) # Byte reference - MOV operation
ref_215417 = ((ref_215410 >> 16) & 0xFF) # Byte reference - MOV operation
ref_215418 = ((ref_215410 >> 8) & 0xFF) # Byte reference - MOV operation
ref_215419 = (ref_215410 & 0xFF) # Byte reference - MOV operation
ref_231796 = ref_215414 # MOVZX operation
ref_232536 = (ref_231796 & 0xFF) # MOVZX operation
ref_240750 = ref_215418 # MOVZX operation
ref_248952 = (ref_240750 & 0xFF) # MOVZX operation
ref_248954 = (ref_248952 & 0xFF) # Byte reference - MOV operation
ref_249704 = (ref_232536 & 0xFF) # MOVZX operation
ref_257906 = (ref_249704 & 0xFF) # MOVZX operation
ref_257908 = (ref_257906 & 0xFF) # Byte reference - MOV operation
ref_267727 = ref_67014 # MOV operation
ref_272733 = ref_79155 # MOV operation
ref_273340 = ref_267727 # MOV operation
ref_273344 = ref_272733 # MOV operation
ref_273346 = (ref_273344 & ref_273340) # AND operation
ref_274834 = ref_273346 # MOV operation
ref_274840 = (0xF & ref_274834) # AND operation
ref_276073 = ref_274840 # MOV operation
ref_276079 = (0x1 | ref_276073) # OR operation
ref_281110 = ref_146593 # MOV operation
ref_286116 = ((((((((ref_215412) << 8 | ref_215413) << 8 | ref_248954) << 8 | ref_215415) << 8 | ref_215416) << 8 | ref_215417) << 8 | ref_257908) << 8 | ref_215419) # MOV operation
ref_286468 = ref_281110 # MOV operation
ref_286472 = ref_286116 # MOV operation
ref_286474 = ((ref_286472 + ref_286468) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_287099 = ref_286474 # MOV operation
ref_287111 = ref_276079 # MOV operation
ref_287113 = ((ref_287099 << ((ref_287111 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_292144 = ref_146593 # MOV operation
ref_297150 = ((((((((ref_215412) << 8 | ref_215413) << 8 | ref_248954) << 8 | ref_215415) << 8 | ref_215416) << 8 | ref_215417) << 8 | ref_257908) << 8 | ref_215419) # MOV operation
ref_297502 = ref_292144 # MOV operation
ref_297506 = ref_297150 # MOV operation
ref_297508 = ((ref_297506 + ref_297502) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_302540 = ref_67014 # MOV operation
ref_307546 = ref_79155 # MOV operation
ref_308153 = ref_302540 # MOV operation
ref_308157 = ref_307546 # MOV operation
ref_308159 = (ref_308157 & ref_308153) # AND operation
ref_309647 = ref_308159 # MOV operation
ref_309653 = (0xF & ref_309647) # AND operation
ref_310886 = ref_309653 # MOV operation
ref_310892 = (0x1 | ref_310886) # OR operation
ref_312639 = ref_310892 # MOV operation
ref_312641 = ((0x40 - ref_312639) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_312649 = ref_312641 # MOV operation
ref_313276 = ref_297508 # MOV operation
ref_313280 = ref_312649 # MOV operation
ref_313282 = (ref_313280 & 0xFFFFFFFF) # MOV operation
ref_313284 = (ref_313276 >> ((ref_313282 & 0xFF) & 0x3F)) # SHR operation
ref_313291 = ref_313284 # MOV operation
ref_313663 = ref_287113 # MOV operation
ref_313667 = ref_313291 # MOV operation
ref_313669 = (ref_313667 | ref_313663) # OR operation
ref_314263 = ref_313669 # MOV operation
ref_315265 = ref_314263 # MOV operation
ref_315267 = ref_315265 # MOV operation

print ref_315267 & 0xffffffffffffffff
