#!/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_98032 = ref_278 # MOV operation
ref_100154 = ref_98032 # MOV operation
ref_120822 = ref_100154 # MOV operation
ref_120906 = ref_120822 # MOV operation
ref_120920 = (ref_120906 >> (0x33 & 0x3F)) # SHR operation
ref_123067 = ref_120920 # MOV operation
ref_212907 = ref_278 # MOV operation
ref_215029 = ref_212907 # MOV operation
ref_235697 = ref_215029 # MOV operation
ref_235781 = ref_235697 # MOV operation
ref_235795 = ((ref_235781 << (0xD & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_237942 = ref_235795 # MOV operation
ref_246651 = ref_237942 # MOV operation
ref_248765 = ref_123067 # MOV operation
ref_248857 = ref_246651 # MOV operation
ref_248861 = ref_248765 # MOV operation
ref_248863 = (ref_248861 | ref_248857) # OR operation
ref_251010 = ref_248863 # MOV operation
ref_350456 = ref_251010 # MOV operation
ref_352744 = ref_350456 # MOV operation
ref_442584 = ref_278 # MOV operation
ref_444706 = ref_442584 # MOV operation
ref_465374 = ref_444706 # MOV operation
ref_465458 = ref_465374 # MOV operation
ref_465474 = ((((0x0) << 64 | ref_465458) / 0x6) & 0xFFFFFFFFFFFFFFFF) # DIV operation
ref_467617 = ref_465474 # MOV operation
ref_488695 = ref_467617 # MOV operation
ref_490901 = ref_488695 # MOV operation
ref_490907 = (((sx(0x40, 0xFA0000000002C90C) * sx(0x40, ref_490901)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
ref_493051 = ref_490907 # MOV operation
ref_592497 = ref_493051 # MOV operation
ref_594785 = ref_592497 # MOV operation
ref_684625 = ref_278 # MOV operation
ref_686747 = ref_684625 # MOV operation
ref_783835 = ref_594785 # MOV operation
ref_785957 = ref_783835 # MOV operation
ref_883045 = ref_352744 # MOV operation
ref_885167 = ref_883045 # MOV operation
ref_891352 = ref_885167 # MOV operation
ref_893466 = ref_785957 # MOV operation
ref_893558 = ref_891352 # MOV operation
ref_893562 = ref_893466 # MOV operation
ref_893564 = (ref_893562 | ref_893558) # OR operation
ref_895711 = ref_893564 # MOV operation
ref_904420 = ref_895711 # MOV operation
ref_906534 = ref_686747 # MOV operation
ref_906618 = ref_906534 # MOV operation
ref_906630 = ref_904420 # MOV operation
ref_906632 = ((ref_906630 + ref_906618) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_908780 = ref_906632 # MOV operation
ref_1008226 = ref_908780 # MOV operation
ref_1010514 = ref_1008226 # MOV operation
ref_1100354 = ref_278 # MOV operation
ref_1102476 = ref_1100354 # MOV operation
ref_1199564 = ref_594785 # MOV operation
ref_1201686 = ref_1199564 # MOV operation
ref_1207871 = ref_1201686 # MOV operation
ref_1209985 = ref_1102476 # MOV operation
ref_1210069 = ref_1209985 # MOV operation
ref_1210081 = ref_1207871 # MOV operation
ref_1210083 = ((ref_1210081 + ref_1210069) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_1212231 = ref_1210083 # MOV operation
ref_1336581 = ref_352744 # MOV operation
ref_1338703 = ref_1336581 # MOV operation
ref_1347002 = ref_1338703 # MOV operation
ref_1347086 = ref_1347002 # MOV operation
ref_1347100 = ((ref_1347086 - 0x2ED5CD7E) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_1347108 = ref_1347100 # MOV operation
ref_1349250 = ref_1347108 # MOV operation
ref_1370328 = ref_1349250 # MOV operation
ref_1372538 = ref_1370328 # MOV operation
ref_1372540 = ((0x28E5FC28 - ref_1372538) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_1372548 = ref_1372540 # MOV operation
ref_1374690 = ref_1372548 # MOV operation
ref_1397882 = ref_1374690 # MOV operation
ref_1397966 = ref_1397882 # MOV operation
ref_1397980 = (ref_1397966 >> (0x2 & 0x3F)) # SHR operation
ref_1400127 = ref_1397980 # MOV operation
ref_1421205 = ref_1400127 # MOV operation
ref_1423411 = ref_1421205 # MOV operation
ref_1423417 = (0x7 & ref_1423411) # AND operation
ref_1425564 = ref_1423417 # MOV operation
ref_1434273 = ref_1425564 # MOV operation
ref_1436479 = ref_1434273 # MOV operation
ref_1436485 = (0x1 | ref_1436479) # OR operation
ref_1438632 = ref_1436485 # MOV operation
ref_1447341 = ref_1438632 # MOV operation
ref_1449455 = ref_1212231 # MOV operation
ref_1449539 = ref_1449455 # MOV operation
ref_1449551 = ref_1447341 # MOV operation
ref_1449553 = (ref_1449539 >> ((ref_1449551 & 0xFF) & 0x3F)) # SHR operation
ref_1451700 = ref_1449553 # MOV operation
ref_1551146 = ref_1451700 # MOV operation
ref_1553434 = ref_1551146 # MOV operation
ref_1653046 = ref_1553434 # MOV operation
ref_1655168 = ref_1653046 # MOV operation
ref_1764625 = ref_1553434 # MOV operation
ref_1766747 = ref_1764625 # MOV operation
ref_1787415 = ref_1766747 # MOV operation
ref_1787499 = ref_1787415 # MOV operation
ref_1787513 = (ref_1787499 >> (0x1 & 0x3F)) # SHR operation
ref_1789660 = ref_1787513 # MOV operation
ref_1810738 = ref_1789660 # MOV operation
ref_1812944 = ref_1810738 # MOV operation
ref_1812950 = (0x7 & ref_1812944) # AND operation
ref_1815097 = ref_1812950 # MOV operation
ref_1823806 = ref_1815097 # MOV operation
ref_1826012 = ref_1823806 # MOV operation
ref_1826018 = (0x1 | ref_1826012) # OR operation
ref_1828165 = ref_1826018 # MOV operation
ref_1836874 = ref_1828165 # MOV operation
ref_1838988 = ref_1655168 # MOV operation
ref_1839072 = ref_1838988 # MOV operation
ref_1839084 = ref_1836874 # MOV operation
ref_1839086 = (ref_1839072 >> ((ref_1839084 & 0xFF) & 0x3F)) # SHR operation
ref_1841233 = ref_1839086 # MOV operation
ref_1940679 = ref_1841233 # MOV operation
ref_1942967 = ref_1940679 # MOV operation
ref_1942969 = ((ref_1942967 >> 56) & 0xFF) # Byte reference - MOV operation
ref_1942970 = ((ref_1942967 >> 48) & 0xFF) # Byte reference - MOV operation
ref_1942971 = ((ref_1942967 >> 40) & 0xFF) # Byte reference - MOV operation
ref_1942972 = ((ref_1942967 >> 32) & 0xFF) # Byte reference - MOV operation
ref_1942973 = ((ref_1942967 >> 24) & 0xFF) # Byte reference - MOV operation
ref_1942974 = ((ref_1942967 >> 16) & 0xFF) # Byte reference - MOV operation
ref_1942975 = ((ref_1942967 >> 8) & 0xFF) # Byte reference - MOV operation
ref_1942976 = (ref_1942967 & 0xFF) # Byte reference - MOV operation
ref_2157296 = ref_352744 # MOV operation
ref_2159418 = ref_2157296 # MOV operation
ref_2177972 = ref_2159418 # MOV operation
ref_2180178 = ref_2177972 # MOV operation
ref_2180184 = (0x7 & ref_2180178) # AND operation
ref_2182331 = ref_2180184 # MOV operation
ref_2205523 = ref_2182331 # MOV operation
ref_2205607 = ref_2205523 # MOV operation
ref_2205621 = ((ref_2205607 << (0x2 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_2207768 = ref_2205621 # MOV operation
ref_2307380 = ref_1010514 # MOV operation
ref_2309502 = ref_2307380 # MOV operation
ref_2315687 = ref_2309502 # MOV operation
ref_2317801 = ref_2207768 # MOV operation
ref_2317893 = ref_2315687 # MOV operation
ref_2317897 = ref_2317801 # MOV operation
ref_2317899 = (ref_2317897 | ref_2317893) # OR operation
ref_2320046 = ref_2317899 # MOV operation
ref_2419492 = ref_2320046 # MOV operation
ref_2421780 = ref_2419492 # MOV operation
ref_2591306 = ((((ref_1942969) << 8 | ref_1942970) << 8 | ref_1942971) << 8 | ref_1942972) # MOV operation
ref_2591394 = (ref_2591306 & 0xFFFFFFFF) # MOV operation
ref_2613548 = (ref_2591394 & 0xFFFFFFFF) # MOV operation
ref_2613636 = (ref_2613548 & 0xFFFFFFFF) # MOV operation
ref_2783158 = ((((ref_1942973) << 8 | ref_1942974) << 8 | ref_1942975) << 8 | ref_1942976) # MOV operation
ref_2783246 = (ref_2783158 & 0xFFFFFFFF) # MOV operation
ref_2950244 = (ref_2783246 & 0xFFFFFFFF) # MOV operation
ref_2950332 = (ref_2950244 & 0xFFFFFFFF) # MOV operation
ref_2975010 = (ref_2613636 & 0xFFFFFFFF) # MOV operation
ref_2975098 = (ref_2975010 & 0xFFFFFFFF) # MOV operation
ref_3142096 = (ref_2975098 & 0xFFFFFFFF) # MOV operation
ref_3142184 = (ref_3142096 & 0xFFFFFFFF) # MOV operation
ref_3391828 = ref_2421780 # MOV operation
ref_3393950 = ref_3391828 # MOV operation
ref_3412504 = ref_3393950 # MOV operation
ref_3414710 = ref_3412504 # MOV operation
ref_3414716 = (0x7 & ref_3414710) # AND operation
ref_3416863 = ref_3414716 # MOV operation
ref_3440055 = ref_3416863 # MOV operation
ref_3440139 = ref_3440055 # MOV operation
ref_3440153 = ((ref_3440139 << (0x2 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_3442300 = ref_3440153 # MOV operation
ref_3541912 = ref_2421780 # MOV operation
ref_3544034 = ref_3541912 # MOV operation
ref_3550219 = ref_3544034 # MOV operation
ref_3552333 = ref_3442300 # MOV operation
ref_3552425 = ref_3550219 # MOV operation
ref_3552429 = ref_3552333 # MOV operation
ref_3552431 = (ref_3552429 | ref_3552425) # OR operation
ref_3554578 = ref_3552431 # MOV operation
ref_3654024 = ref_3554578 # MOV operation
ref_3656312 = ref_3654024 # MOV operation
ref_3825838 = (ref_2950332 & 0xFFFFFFFF) # MOV operation
ref_3825926 = (ref_3825838 & 0xFFFFFFFF) # MOV operation
ref_3848080 = (ref_3825926 & 0xFFFFFFFF) # MOV operation
ref_3848168 = (ref_3848080 & 0xFFFFFFFF) # MOV operation
ref_4017690 = (ref_3142184 & 0xFFFFFFFF) # MOV operation
ref_4017778 = (ref_4017690 & 0xFFFFFFFF) # MOV operation
ref_4184776 = (ref_4017778 & 0xFFFFFFFF) # MOV operation
ref_4184864 = (ref_4184776 & 0xFFFFFFFF) # MOV operation
ref_4184866 = (((ref_4184864 & 0xFFFFFFFF) >> 24) & 0xFF) # Byte reference - MOV operation
ref_4184867 = (((ref_4184864 & 0xFFFFFFFF) >> 16) & 0xFF) # Byte reference - MOV operation
ref_4184868 = (((ref_4184864 & 0xFFFFFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
ref_4184869 = ((ref_4184864 & 0xFFFFFFFF) & 0xFF) # Byte reference - MOV operation
ref_4209542 = (ref_3848168 & 0xFFFFFFFF) # MOV operation
ref_4209630 = (ref_4209542 & 0xFFFFFFFF) # MOV operation
ref_4376628 = (ref_4209630 & 0xFFFFFFFF) # MOV operation
ref_4376716 = (ref_4376628 & 0xFFFFFFFF) # MOV operation
ref_4376718 = (((ref_4376716 & 0xFFFFFFFF) >> 24) & 0xFF) # Byte reference - MOV operation
ref_4376719 = (((ref_4376716 & 0xFFFFFFFF) >> 16) & 0xFF) # Byte reference - MOV operation
ref_4376720 = (((ref_4376716 & 0xFFFFFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
ref_4376721 = ((ref_4376716 & 0xFFFFFFFF) & 0xFF) # Byte reference - MOV operation
ref_4630718 = ref_352744 # MOV operation
ref_4632840 = ref_4630718 # MOV operation
ref_4729928 = ref_594785 # MOV operation
ref_4732050 = ref_4729928 # MOV operation
ref_4738235 = ref_4632840 # MOV operation
ref_4740349 = ref_4732050 # MOV operation
ref_4740441 = ref_4738235 # MOV operation
ref_4740445 = ref_4740349 # MOV operation
ref_4740447 = (((sx(0x40, ref_4740445) * sx(0x40, ref_4740441)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
ref_4742591 = ref_4740447 # MOV operation
ref_4854572 = ref_3656312 # MOV operation
ref_4856694 = ref_4854572 # MOV operation
ref_4953782 = ((((((((ref_4184866) << 8 | ref_4184867) << 8 | ref_4184868) << 8 | ref_4184869) << 8 | ref_4376718) << 8 | ref_4376719) << 8 | ref_4376720) << 8 | ref_4376721) # MOV operation
ref_4955904 = ref_4953782 # MOV operation
ref_4974458 = ref_4955904 # MOV operation
ref_4976664 = ref_4974458 # MOV operation
ref_4976670 = (((sx(0x40, 0x4E1A7F2) * sx(0x40, ref_4976664)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
ref_4978814 = ref_4976670 # MOV operation
ref_4987523 = ref_4856694 # MOV operation
ref_4989637 = ref_4978814 # MOV operation
ref_4989729 = ref_4987523 # MOV operation
ref_4989733 = ref_4989637 # MOV operation
ref_4989735 = (ref_4989733 ^ ref_4989729) # XOR operation
ref_4991882 = ref_4989735 # MOV operation
ref_5012960 = ref_4991882 # MOV operation
ref_5015166 = ref_5012960 # MOV operation
ref_5015172 = (0xF & ref_5015166) # AND operation
ref_5017319 = ref_5015172 # MOV operation
ref_5026028 = ref_5017319 # MOV operation
ref_5028234 = ref_5026028 # MOV operation
ref_5028240 = (0x1 | ref_5028234) # OR operation
ref_5030387 = ref_5028240 # MOV operation
ref_5051465 = ref_5030387 # MOV operation
ref_5053675 = ref_5051465 # MOV operation
ref_5053677 = ((0x40 - ref_5053675) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_5053685 = ref_5053677 # MOV operation
ref_5055827 = ref_5053685 # MOV operation
ref_5064536 = ref_5055827 # MOV operation
ref_5066650 = ref_4742591 # MOV operation
ref_5066734 = ref_5066650 # MOV operation
ref_5066746 = ref_5064536 # MOV operation
ref_5066748 = (ref_5066734 >> ((ref_5066746 & 0xFF) & 0x3F)) # SHR operation
ref_5068895 = ref_5066748 # MOV operation
ref_5168507 = ref_352744 # MOV operation
ref_5170629 = ref_5168507 # MOV operation
ref_5267717 = ref_594785 # MOV operation
ref_5269839 = ref_5267717 # MOV operation
ref_5276024 = ref_5170629 # MOV operation
ref_5278138 = ref_5269839 # MOV operation
ref_5278230 = ref_5276024 # MOV operation
ref_5278234 = ref_5278138 # MOV operation
ref_5278236 = (((sx(0x40, ref_5278234) * sx(0x40, ref_5278230)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
ref_5280380 = ref_5278236 # MOV operation
ref_5392361 = ref_3656312 # MOV operation
ref_5394483 = ref_5392361 # MOV operation
ref_5491571 = ((((((((ref_4184866) << 8 | ref_4184867) << 8 | ref_4184868) << 8 | ref_4184869) << 8 | ref_4376718) << 8 | ref_4376719) << 8 | ref_4376720) << 8 | ref_4376721) # MOV operation
ref_5493693 = ref_5491571 # MOV operation
ref_5512247 = ref_5493693 # MOV operation
ref_5514453 = ref_5512247 # MOV operation
ref_5514459 = (((sx(0x40, 0x4E1A7F2) * sx(0x40, ref_5514453)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
ref_5516603 = ref_5514459 # MOV operation
ref_5525312 = ref_5394483 # MOV operation
ref_5527426 = ref_5516603 # MOV operation
ref_5527518 = ref_5525312 # MOV operation
ref_5527522 = ref_5527426 # MOV operation
ref_5527524 = (ref_5527522 ^ ref_5527518) # XOR operation
ref_5529671 = ref_5527524 # MOV operation
ref_5550749 = ref_5529671 # MOV operation
ref_5552955 = ref_5550749 # MOV operation
ref_5552961 = (0xF & ref_5552955) # AND operation
ref_5555108 = ref_5552961 # MOV operation
ref_5563817 = ref_5555108 # MOV operation
ref_5566023 = ref_5563817 # MOV operation
ref_5566029 = (0x1 | ref_5566023) # OR operation
ref_5568176 = ref_5566029 # MOV operation
ref_5576885 = ref_5568176 # MOV operation
ref_5578999 = ref_5280380 # MOV operation
ref_5579083 = ref_5578999 # MOV operation
ref_5579095 = ref_5576885 # MOV operation
ref_5579097 = ((ref_5579083 << ((ref_5579095 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_5581244 = ref_5579097 # MOV operation
ref_5589953 = ref_5581244 # MOV operation
ref_5592067 = ref_5068895 # MOV operation
ref_5592159 = ref_5589953 # MOV operation
ref_5592163 = ref_5592067 # MOV operation
ref_5592165 = (ref_5592163 | ref_5592159) # OR operation
ref_5594312 = ref_5592165 # MOV operation
ref_5683995 = ref_5594312 # MOV operation
ref_5686283 = ref_5683995 # MOV operation
ref_5700756 = ref_5686283 # MOV operation
ref_5700758 = ref_5700756 # MOV operation

print ref_5700758 & 0xffffffffffffffff
