#!/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_11227 = ref_278 # MOV operation
ref_11363 = ref_11227 # MOV operation
ref_11369 = ((0x3F22161B + ref_11363) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_11447 = ref_11369 # MOV operation
ref_12959 = ref_11447 # MOV operation
ref_13015 = ref_12959 # MOV operation
ref_13017 = (((sx(0x40, ref_13015) * sx(0x40, 0x378AED0A)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
ref_13095 = ref_13017 # MOV operation
ref_13097 = (((sx(0x40, ref_13095) * sx(0x40, 0xDF2B78B)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
ref_13255 = ref_13097 # MOV operation
ref_13263 = (ref_13255 >> (0x1 & 0x3F)) # SHR operation
ref_13270 = ref_13263 # MOV operation
ref_13334 = ref_13270 # MOV operation
ref_13348 = (0xF & ref_13334) # AND operation
ref_13509 = ref_13348 # MOV operation
ref_13515 = (0x1 | ref_13509) # OR operation
ref_14181 = ref_278 # MOV operation
ref_14225 = ref_14181 # MOV operation
ref_14239 = ((ref_14225 << (0x7 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_14821 = ref_278 # MOV operation
ref_14957 = ref_14821 # MOV operation
ref_14965 = (ref_14957 >> (0x39 & 0x3F)) # SHR operation
ref_14972 = ref_14965 # MOV operation
ref_15044 = ref_14239 # MOV operation
ref_15048 = ref_14972 # MOV operation
ref_15050 = (ref_15048 | ref_15044) # OR operation
ref_15119 = ref_15050 # MOV operation
ref_15131 = ref_13515 # MOV operation
ref_15133 = ((ref_15119 << ((ref_15131 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_15799 = ref_278 # MOV operation
ref_15843 = ref_15799 # MOV operation
ref_15857 = ((ref_15843 << (0x7 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_16439 = ref_278 # MOV operation
ref_16575 = ref_16439 # MOV operation
ref_16583 = (ref_16575 >> (0x39 & 0x3F)) # SHR operation
ref_16590 = ref_16583 # MOV operation
ref_16662 = ref_15857 # MOV operation
ref_16666 = ref_16590 # MOV operation
ref_16668 = (ref_16666 | ref_16662) # OR operation
ref_17587 = ref_11447 # MOV operation
ref_17643 = ref_17587 # MOV operation
ref_17645 = (((sx(0x40, ref_17643) * sx(0x40, 0x378AED0A)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
ref_17723 = ref_17645 # MOV operation
ref_17725 = (((sx(0x40, ref_17723) * sx(0x40, 0xDF2B78B)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
ref_17883 = ref_17725 # MOV operation
ref_17891 = (ref_17883 >> (0x1 & 0x3F)) # SHR operation
ref_17898 = ref_17891 # MOV operation
ref_17962 = ref_17898 # MOV operation
ref_17976 = (0xF & ref_17962) # AND operation
ref_18137 = ref_17976 # MOV operation
ref_18143 = (0x1 | ref_18137) # OR operation
ref_18308 = ref_18143 # MOV operation
ref_18310 = ((0x40 - ref_18308) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_18318 = ref_18310 # MOV operation
ref_18390 = ref_16668 # MOV operation
ref_18394 = ref_18318 # MOV operation
ref_18396 = (ref_18394 & 0xFFFFFFFF) # MOV operation
ref_18398 = (ref_18390 >> ((ref_18396 & 0xFF) & 0x3F)) # SHR operation
ref_18405 = ref_18398 # MOV operation
ref_18477 = ref_15133 # MOV operation
ref_18481 = ref_18405 # MOV operation
ref_18483 = (ref_18481 | ref_18477) # OR operation
ref_18560 = ref_18483 # MOV operation
ref_19735 = ref_278 # MOV operation
ref_20377 = ref_18560 # MOV operation
ref_20513 = ref_20377 # MOV operation
ref_20519 = ((0xAD6EED + ref_20513) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_20597 = ref_19735 # MOV operation
ref_20601 = ref_20519 # MOV operation
ref_20603 = ((ref_20601 + ref_20597) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_20681 = ref_20603 # MOV operation
ref_21856 = ref_278 # MOV operation
ref_22498 = ref_11447 # MOV operation
ref_22550 = ref_21856 # MOV operation
ref_22554 = ref_22498 # MOV operation
ref_22556 = (ref_22554 | ref_22550) # OR operation
ref_23223 = ref_18560 # MOV operation
ref_23359 = ref_23223 # MOV operation
ref_23365 = ((0x2B6B05ED + ref_23359) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_24033 = ref_20681 # MOV operation
ref_24077 = ref_24033 # MOV operation
ref_24089 = ref_23365 # MOV operation
ref_24091 = (ref_24089 & ref_24077) # AND operation
ref_24168 = ref_22556 # MOV operation
ref_24172 = ref_24091 # MOV operation
ref_24174 = ((ref_24172 + ref_24168) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_24252 = ref_24174 # MOV operation
ref_25512 = ref_24252 # MOV operation
ref_26322 = ref_20681 # MOV operation
ref_26366 = ref_26322 # MOV operation
ref_26380 = (0x3F & ref_26366) # AND operation
ref_26449 = ref_26380 # MOV operation
ref_26463 = ((ref_26449 << (0x4 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_26540 = ref_25512 # MOV operation
ref_26544 = ref_26463 # MOV operation
ref_26546 = (ref_26544 | ref_26540) # OR operation
ref_26623 = ref_26546 # MOV operation
ref_27891 = ref_18560 # MOV operation
ref_28027 = ref_27891 # MOV operation
ref_28035 = (ref_28027 >> (0x4 & 0x3F)) # SHR operation
ref_28042 = ref_28035 # MOV operation
ref_28106 = ref_28042 # MOV operation
ref_28120 = (0xF & ref_28106) # AND operation
ref_28281 = ref_28120 # MOV operation
ref_28287 = (0x1 | ref_28281) # OR operation
ref_28954 = ref_11447 # MOV operation
ref_28998 = ref_28954 # MOV operation
ref_29010 = ref_28287 # MOV operation
ref_29012 = ((ref_28998 << ((ref_29010 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_29679 = ref_11447 # MOV operation
ref_30405 = ref_18560 # MOV operation
ref_30541 = ref_30405 # MOV operation
ref_30549 = (ref_30541 >> (0x4 & 0x3F)) # SHR operation
ref_30556 = ref_30549 # MOV operation
ref_30620 = ref_30556 # MOV operation
ref_30634 = (0xF & ref_30620) # AND operation
ref_30795 = ref_30634 # MOV operation
ref_30801 = (0x1 | ref_30795) # OR operation
ref_30966 = ref_30801 # MOV operation
ref_30968 = ((0x40 - ref_30966) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_30976 = ref_30968 # MOV operation
ref_31048 = ref_29679 # MOV operation
ref_31052 = ref_30976 # MOV operation
ref_31054 = (ref_31052 & 0xFFFFFFFF) # MOV operation
ref_31056 = (ref_31048 >> ((ref_31054 & 0xFF) & 0x3F)) # SHR operation
ref_31063 = ref_31056 # MOV operation
ref_31135 = ref_29012 # MOV operation
ref_31139 = ref_31063 # MOV operation
ref_31141 = (ref_31139 | ref_31135) # OR operation
ref_31808 = ref_20681 # MOV operation
ref_32450 = ref_26623 # MOV operation
ref_32502 = ref_31808 # MOV operation
ref_32506 = ref_32450 # MOV operation
ref_32508 = ((ref_32506 + ref_32502) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_32586 = ref_31141 # MOV operation
ref_32590 = ref_32508 # MOV operation
ref_32592 = (((sx(0x40, ref_32590) * sx(0x40, ref_32586)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
ref_32666 = ref_32592 # MOV operation
ref_32820 = ref_32666 # MOV operation
ref_32822 = ref_32820 # MOV operation

print ref_32822 & 0xffffffffffffffff
