#!/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_75286 = ref_278 # MOV operation
ref_75486 = ref_75286 # MOV operation
ref_75494 = ((ref_75486 << (0x3D & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_75501 = ref_75494 # MOV operation
ref_76334 = ref_278 # MOV operation
ref_76534 = ref_76334 # MOV operation
ref_76542 = (ref_76534 >> (0x3 & 0x3F)) # SHR operation
ref_76549 = ref_76542 # MOV operation
ref_76645 = ref_76549 # MOV operation
ref_76657 = ref_75501 # MOV operation
ref_76659 = (ref_76657 | ref_76645) # OR operation
ref_76760 = ref_76659 # MOV operation
ref_76774 = ((ref_76760 - 0x3FEFFF7F) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_76782 = ref_76774 # MOV operation
ref_77708 = ref_76782 # MOV operation
ref_77710 = ((ref_77708 >> 56) & 0xFF) # Byte reference - MOV operation
ref_77711 = ((ref_77708 >> 48) & 0xFF) # Byte reference - MOV operation
ref_77712 = ((ref_77708 >> 40) & 0xFF) # Byte reference - MOV operation
ref_77713 = ((ref_77708 >> 32) & 0xFF) # Byte reference - MOV operation
ref_77714 = ((ref_77708 >> 24) & 0xFF) # Byte reference - MOV operation
ref_77715 = ((ref_77708 >> 16) & 0xFF) # Byte reference - MOV operation
ref_77716 = ((ref_77708 >> 8) & 0xFF) # Byte reference - MOV operation
ref_77717 = (ref_77708 & 0xFF) # Byte reference - MOV operation
ref_78742 = ref_77708 # MOV operation
ref_79555 = ref_278 # MOV operation
ref_79631 = ref_79555 # MOV operation
ref_79643 = ref_78742 # MOV operation
ref_79645 = (ref_79643 | ref_79631) # OR operation
ref_79746 = ref_79645 # MOV operation
ref_79760 = ((ref_79746 - 0x11E59B96) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_79768 = ref_79760 # MOV operation
ref_80694 = ref_79768 # MOV operation
ref_80696 = ((ref_80694 >> 56) & 0xFF) # Byte reference - MOV operation
ref_80697 = ((ref_80694 >> 48) & 0xFF) # Byte reference - MOV operation
ref_80698 = ((ref_80694 >> 40) & 0xFF) # Byte reference - MOV operation
ref_80699 = ((ref_80694 >> 32) & 0xFF) # Byte reference - MOV operation
ref_80700 = ((ref_80694 >> 24) & 0xFF) # Byte reference - MOV operation
ref_80701 = ((ref_80694 >> 16) & 0xFF) # Byte reference - MOV operation
ref_80702 = ((ref_80694 >> 8) & 0xFF) # Byte reference - MOV operation
ref_80703 = (ref_80694 & 0xFF) # Byte reference - MOV operation
ref_81527 = ref_278 # MOV operation
ref_82425 = ref_77708 # MOV operation
ref_82509 = ref_81527 # MOV operation
ref_82513 = ref_82425 # MOV operation
ref_82515 = (((sx(0x40, ref_82513) * sx(0x40, ref_82509)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
ref_83435 = ref_80694 # MOV operation
ref_83635 = ref_83435 # MOV operation
ref_83643 = ((ref_83635 << (0x7 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_83650 = ref_83643 # MOV operation
ref_83754 = ref_82515 # MOV operation
ref_83758 = ref_83650 # MOV operation
ref_83760 = (((sx(0x40, ref_83758) * sx(0x40, ref_83754)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
ref_84688 = ref_83760 # MOV operation
ref_85637 = ref_278 # MOV operation
ref_85713 = ref_85637 # MOV operation
ref_85727 = ((ref_85713 - 0x2000000007A4C37E) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_85735 = ref_85727 # MOV operation
ref_86661 = ref_85735 # MOV operation
ref_89258 = ((((ref_77710) << 8 | ref_77711) << 8 | ref_77712) << 8 | ref_77713) # MOV operation
ref_89466 = (ref_89258 & 0xFFFFFFFF) # MOV operation
ref_91074 = ((((ref_77714) << 8 | ref_77715) << 8 | ref_77716) << 8 | ref_77717) # MOV operation
ref_92670 = (ref_91074 & 0xFFFFFFFF) # MOV operation
ref_92672 = (((ref_92670 & 0xFFFFFFFF) >> 24) & 0xFF) # Byte reference - MOV operation
ref_92673 = (((ref_92670 & 0xFFFFFFFF) >> 16) & 0xFF) # Byte reference - MOV operation
ref_92674 = (((ref_92670 & 0xFFFFFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
ref_92675 = ((ref_92670 & 0xFFFFFFFF) & 0xFF) # Byte reference - MOV operation
ref_92890 = (ref_89466 & 0xFFFFFFFF) # MOV operation
ref_94486 = (ref_92890 & 0xFFFFFFFF) # MOV operation
ref_94488 = (((ref_94486 & 0xFFFFFFFF) >> 24) & 0xFF) # Byte reference - MOV operation
ref_94489 = (((ref_94486 & 0xFFFFFFFF) >> 16) & 0xFF) # Byte reference - MOV operation
ref_94490 = (((ref_94486 & 0xFFFFFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
ref_94491 = ((ref_94486 & 0xFFFFFFFF) & 0xFF) # Byte reference - MOV operation
ref_95720 = ref_84688 # MOV operation
ref_96618 = ref_84688 # MOV operation
ref_96702 = ref_95720 # MOV operation
ref_96706 = ref_96618 # MOV operation
ref_96708 = ((ref_96706 + ref_96702) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_96934 = ref_96708 # MOV operation
ref_96940 = (0x3F & ref_96934) # AND operation
ref_97165 = ref_96940 # MOV operation
ref_97173 = ((ref_97165 << (0x4 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_97180 = ref_97173 # MOV operation
ref_98186 = ((((((((ref_92672) << 8 | ref_92673) << 8 | ref_92674) << 8 | ref_92675) << 8 | ref_94488) << 8 | ref_94489) << 8 | ref_94490) << 8 | ref_94491) # MOV operation
ref_98262 = ref_98186 # MOV operation
ref_98274 = ref_97180 # MOV operation
ref_98276 = (ref_98274 | ref_98262) # OR operation
ref_99295 = ref_98276 # MOV operation
ref_102212 = ((((ref_80696) << 8 | ref_80697) << 8 | ref_80698) << 8 | ref_80699) # MOV operation
ref_102420 = (ref_102212 & 0xFFFFFFFF) # MOV operation
ref_104028 = ((((ref_80700) << 8 | ref_80701) << 8 | ref_80702) << 8 | ref_80703) # MOV operation
ref_105624 = (ref_104028 & 0xFFFFFFFF) # MOV operation
ref_105626 = (((ref_105624 & 0xFFFFFFFF) >> 24) & 0xFF) # Byte reference - MOV operation
ref_105627 = (((ref_105624 & 0xFFFFFFFF) >> 16) & 0xFF) # Byte reference - MOV operation
ref_105628 = (((ref_105624 & 0xFFFFFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
ref_105629 = ((ref_105624 & 0xFFFFFFFF) & 0xFF) # Byte reference - MOV operation
ref_105844 = (ref_102420 & 0xFFFFFFFF) # MOV operation
ref_107440 = (ref_105844 & 0xFFFFFFFF) # MOV operation
ref_107442 = (((ref_107440 & 0xFFFFFFFF) >> 24) & 0xFF) # Byte reference - MOV operation
ref_107443 = (((ref_107440 & 0xFFFFFFFF) >> 16) & 0xFF) # Byte reference - MOV operation
ref_107444 = (((ref_107440 & 0xFFFFFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
ref_107445 = ((ref_107440 & 0xFFFFFFFF) & 0xFF) # Byte reference - MOV operation
ref_108674 = ref_86661 # MOV operation
ref_109572 = ref_84688 # MOV operation
ref_109656 = ref_108674 # MOV operation
ref_109660 = ref_109572 # MOV operation
ref_109662 = ((ref_109660 + ref_109656) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_109888 = ref_109662 # MOV operation
ref_109894 = (0x3F & ref_109888) # AND operation
ref_110119 = ref_109894 # MOV operation
ref_110127 = ((ref_110119 << (0x4 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_110134 = ref_110127 # MOV operation
ref_111140 = ((((((((ref_105626) << 8 | ref_105627) << 8 | ref_105628) << 8 | ref_105629) << 8 | ref_107442) << 8 | ref_107443) << 8 | ref_107444) << 8 | ref_107445) # MOV operation
ref_111216 = ref_111140 # MOV operation
ref_111228 = ref_110134 # MOV operation
ref_111230 = (ref_111228 | ref_111216) # OR operation
ref_112249 = ref_111230 # MOV operation
ref_112251 = ((ref_112249 >> 56) & 0xFF) # Byte reference - MOV operation
ref_112252 = ((ref_112249 >> 48) & 0xFF) # Byte reference - MOV operation
ref_112253 = ((ref_112249 >> 40) & 0xFF) # Byte reference - MOV operation
ref_112254 = ((ref_112249 >> 32) & 0xFF) # Byte reference - MOV operation
ref_112255 = ((ref_112249 >> 24) & 0xFF) # Byte reference - MOV operation
ref_112256 = ((ref_112249 >> 16) & 0xFF) # Byte reference - MOV operation
ref_112257 = ((ref_112249 >> 8) & 0xFF) # Byte reference - MOV operation
ref_112258 = (ref_112249 & 0xFF) # Byte reference - MOV operation
ref_115367 = ref_112253 # MOVZX operation
ref_115443 = (ref_115367 & 0xFF) # MOVZX operation
ref_118387 = ref_112257 # MOVZX operation
ref_118463 = (ref_118387 & 0xFF) # MOVZX operation
ref_118465 = (ref_118463 & 0xFF) # Byte reference - MOV operation
ref_120107 = (ref_115443 & 0xFF) # MOVZX operation
ref_120183 = (ref_120107 & 0xFF) # MOVZX operation
ref_120185 = (ref_120183 & 0xFF) # Byte reference - MOV operation
ref_121093 = ref_99295 # MOV operation
ref_121991 = ((((((((ref_112251) << 8 | ref_112252) << 8 | ref_118465) << 8 | ref_112254) << 8 | ref_112255) << 8 | ref_112256) << 8 | ref_120185) << 8 | ref_112258) # MOV operation
ref_122075 = ref_121093 # MOV operation
ref_122079 = ref_121991 # MOV operation
ref_122081 = ((ref_122079 + ref_122075) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_123121 = ref_84688 # MOV operation
ref_124019 = ref_86661 # MOV operation
ref_124103 = ref_123121 # MOV operation
ref_124107 = ref_124019 # MOV operation
ref_124109 = (ref_124107 & ref_124103) # AND operation
ref_124334 = ref_124109 # MOV operation
ref_124340 = (0xF & ref_124334) # AND operation
ref_124441 = ref_124340 # MOV operation
ref_124455 = (0x1 | ref_124441) # OR operation
ref_124684 = ref_124455 # MOV operation
ref_124686 = ((0x40 - ref_124684) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_124694 = ref_124686 # MOV operation
ref_124798 = ref_122081 # MOV operation
ref_124802 = ref_124694 # MOV operation
ref_124804 = (ref_124802 & 0xFFFFFFFF) # MOV operation
ref_124806 = (ref_124798 >> ((ref_124804 & 0xFF) & 0x3F)) # SHR operation
ref_124813 = ref_124806 # MOV operation
ref_125731 = ref_99295 # MOV operation
ref_126629 = ((((((((ref_112251) << 8 | ref_112252) << 8 | ref_118465) << 8 | ref_112254) << 8 | ref_112255) << 8 | ref_112256) << 8 | ref_120185) << 8 | ref_112258) # MOV operation
ref_126713 = ref_125731 # MOV operation
ref_126717 = ref_126629 # MOV operation
ref_126719 = ((ref_126717 + ref_126713) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_127759 = ref_84688 # MOV operation
ref_128657 = ref_86661 # MOV operation
ref_128741 = ref_127759 # MOV operation
ref_128745 = ref_128657 # MOV operation
ref_128747 = (ref_128745 & ref_128741) # AND operation
ref_128972 = ref_128747 # MOV operation
ref_128978 = (0xF & ref_128972) # AND operation
ref_129079 = ref_128978 # MOV operation
ref_129093 = (0x1 | ref_129079) # OR operation
ref_129202 = ref_126719 # MOV operation
ref_129206 = ref_129093 # MOV operation
ref_129208 = (ref_129206 & 0xFFFFFFFF) # MOV operation
ref_129210 = ((ref_129202 << ((ref_129208 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_129217 = ref_129210 # MOV operation
ref_129313 = ref_129217 # MOV operation
ref_129325 = ref_124813 # MOV operation
ref_129327 = (ref_129325 | ref_129313) # OR operation
ref_130182 = ref_129327 # MOV operation
ref_130393 = ref_130182 # MOV operation
ref_130395 = ref_130393 # MOV operation

print ref_130395 & 0xffffffffffffffff
