#!/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_6355 = SymVar_0
ref_6370 = ref_6355 # MOV operation
ref_14415 = ref_6370 # MOV operation
ref_14614 = ref_14415 # MOV operation
ref_14632 = ((ref_14614 << (0xD & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_14639 = ref_14632 # MOV operation
ref_16677 = ref_6370 # MOV operation
ref_16876 = ref_16677 # MOV operation
ref_16894 = (ref_16876 >> (0x33 & 0x3F)) # SHR operation
ref_16901 = ref_16894 # MOV operation
ref_17126 = ref_14639 # MOV operation
ref_17132 = ref_16901 # MOV operation
ref_17134 = (ref_17132 | ref_17126) # OR operation
ref_17364 = ref_17134 # MOV operation
ref_21069 = ref_6370 # MOV operation
ref_21268 = ref_21069 # MOV operation
ref_21286 = ((((0x0) << 64 | ref_21268) / 0x6) & 0xFFFFFFFFFFFFFFFF) # DIV operation
ref_21747 = ref_21286 # MOV operation
ref_21755 = (((sx(0x40, 0xFA0000000002C90C) * sx(0x40, ref_21747)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
ref_21982 = ref_21755 # MOV operation
ref_25533 = ref_17364 # MOV operation
ref_27399 = ref_21982 # MOV operation
ref_27606 = ref_25533 # MOV operation
ref_27612 = ref_27399 # MOV operation
ref_27614 = (ref_27612 | ref_27606) # OR operation
ref_29422 = ref_6370 # MOV operation
ref_29621 = ref_29422 # MOV operation
ref_29635 = ref_27614 # MOV operation
ref_29637 = ((ref_29635 + ref_29621) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_29868 = ref_29637 # MOV operation
ref_33889 = ref_17364 # MOV operation
ref_34331 = ref_33889 # MOV operation
ref_34339 = ((ref_34331 - 0x2ED5CD7E) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_34347 = ref_34339 # MOV operation
ref_34578 = ref_34347 # MOV operation
ref_34580 = ((0x28E5FC28 - ref_34578) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_34588 = ref_34580 # MOV operation
ref_34805 = ref_34588 # MOV operation
ref_34823 = (ref_34805 >> (0x2 & 0x3F)) # SHR operation
ref_34830 = ref_34823 # MOV operation
ref_35290 = ref_34830 # MOV operation
ref_35298 = (0x7 & ref_35290) # AND operation
ref_35763 = ref_35298 # MOV operation
ref_35771 = (0x1 | ref_35763) # OR operation
ref_37660 = ref_21982 # MOV operation
ref_39445 = ref_6370 # MOV operation
ref_39644 = ref_39445 # MOV operation
ref_39658 = ref_37660 # MOV operation
ref_39660 = ((ref_39658 + ref_39644) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_39883 = ref_39660 # MOV operation
ref_39897 = ref_35771 # MOV operation
ref_39899 = (ref_39897 & 0xFFFFFFFF) # MOV operation
ref_39901 = (ref_39883 >> ((ref_39899 & 0xFF) & 0x3F)) # SHR operation
ref_39908 = ref_39901 # MOV operation
ref_40133 = ref_39908 # MOV operation
ref_43919 = ref_40133 # MOV operation
ref_44118 = ref_43919 # MOV operation
ref_44136 = (ref_44118 >> (0x1 & 0x3F)) # SHR operation
ref_44143 = ref_44136 # MOV operation
ref_44603 = ref_44143 # MOV operation
ref_44611 = (0x7 & ref_44603) # AND operation
ref_45076 = ref_44611 # MOV operation
ref_45084 = (0x1 | ref_45076) # OR operation
ref_46973 = ref_40133 # MOV operation
ref_47172 = ref_46973 # MOV operation
ref_47186 = ref_45084 # MOV operation
ref_47188 = (ref_47186 & 0xFFFFFFFF) # MOV operation
ref_47190 = (ref_47172 >> ((ref_47188 & 0xFF) & 0x3F)) # SHR operation
ref_47197 = ref_47190 # MOV operation
ref_47422 = ref_47197 # MOV operation
ref_47424 = ((ref_47422 >> 56) & 0xFF) # Byte reference - MOV operation
ref_47425 = ((ref_47422 >> 48) & 0xFF) # Byte reference - MOV operation
ref_47426 = ((ref_47422 >> 40) & 0xFF) # Byte reference - MOV operation
ref_47427 = ((ref_47422 >> 32) & 0xFF) # Byte reference - MOV operation
ref_47428 = ((ref_47422 >> 24) & 0xFF) # Byte reference - MOV operation
ref_47429 = ((ref_47422 >> 16) & 0xFF) # Byte reference - MOV operation
ref_47430 = ((ref_47422 >> 8) & 0xFF) # Byte reference - MOV operation
ref_47431 = (ref_47422 & 0xFF) # Byte reference - MOV operation
ref_53065 = ref_29868 # MOV operation
ref_55377 = ref_17364 # MOV operation
ref_55819 = ref_55377 # MOV operation
ref_55827 = (0x7 & ref_55819) # AND operation
ref_56049 = ref_55827 # MOV operation
ref_56067 = ((ref_56049 << (0x2 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_56074 = ref_56067 # MOV operation
ref_56299 = ref_53065 # MOV operation
ref_56305 = ref_56074 # MOV operation
ref_56307 = (ref_56305 | ref_56299) # OR operation
ref_56537 = ref_56307 # MOV operation
ref_60004 = ((((ref_47424) << 8 | ref_47425) << 8 | ref_47426) << 8 | ref_47427) # MOV operation
ref_60207 = (ref_60004 & 0xFFFFFFFF) # MOV operation
ref_66426 = ((((ref_47428) << 8 | ref_47429) << 8 | ref_47430) << 8 | ref_47431) # MOV operation
ref_66629 = (ref_66426 & 0xFFFFFFFF) # MOV operation
ref_70092 = (ref_60207 & 0xFFFFFFFF) # MOV operation
ref_70295 = (ref_70092 & 0xFFFFFFFF) # MOV operation
ref_76619 = ref_56537 # MOV operation
ref_78931 = ref_56537 # MOV operation
ref_79373 = ref_78931 # MOV operation
ref_79381 = (0x7 & ref_79373) # AND operation
ref_79603 = ref_79381 # MOV operation
ref_79621 = ((ref_79603 << (0x2 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_79628 = ref_79621 # MOV operation
ref_79853 = ref_76619 # MOV operation
ref_79859 = ref_79628 # MOV operation
ref_79861 = (ref_79859 | ref_79853) # OR operation
ref_80091 = ref_79861 # MOV operation
ref_83558 = (ref_66629 & 0xFFFFFFFF) # MOV operation
ref_83761 = (ref_83558 & 0xFFFFFFFF) # MOV operation
ref_89980 = (ref_70295 & 0xFFFFFFFF) # MOV operation
ref_90183 = (ref_89980 & 0xFFFFFFFF) # MOV operation
ref_90185 = (((ref_90183 & 0xFFFFFFFF) >> 24) & 0xFF) # Byte reference - MOV operation
ref_90186 = (((ref_90183 & 0xFFFFFFFF) >> 16) & 0xFF) # Byte reference - MOV operation
ref_90187 = (((ref_90183 & 0xFFFFFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
ref_90188 = ((ref_90183 & 0xFFFFFFFF) & 0xFF) # Byte reference - MOV operation
ref_93646 = (ref_83761 & 0xFFFFFFFF) # MOV operation
ref_93849 = (ref_93646 & 0xFFFFFFFF) # MOV operation
ref_93851 = (((ref_93849 & 0xFFFFFFFF) >> 24) & 0xFF) # Byte reference - MOV operation
ref_93852 = (((ref_93849 & 0xFFFFFFFF) >> 16) & 0xFF) # Byte reference - MOV operation
ref_93853 = (((ref_93849 & 0xFFFFFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
ref_93854 = ((ref_93849 & 0xFFFFFFFF) & 0xFF) # Byte reference - MOV operation
ref_100511 = ref_80091 # MOV operation
ref_102377 = ((((((((ref_90185) << 8 | ref_90186) << 8 | ref_90187) << 8 | ref_90188) << 8 | ref_93851) << 8 | ref_93852) << 8 | ref_93853) << 8 | ref_93854) # MOV operation
ref_102819 = ref_102377 # MOV operation
ref_102827 = (((sx(0x40, 0x4E1A7F2) * sx(0x40, ref_102819)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
ref_103054 = ref_100511 # MOV operation
ref_103060 = ref_102827 # MOV operation
ref_103062 = (ref_103060 ^ ref_103054) # XOR operation
ref_103527 = ref_103062 # MOV operation
ref_103535 = (0xF & ref_103527) # AND operation
ref_104000 = ref_103535 # MOV operation
ref_104008 = (0x1 | ref_104000) # OR operation
ref_105897 = ref_17364 # MOV operation
ref_107763 = ref_21982 # MOV operation
ref_107970 = ref_105897 # MOV operation
ref_107976 = ref_107763 # MOV operation
ref_107978 = (((sx(0x40, ref_107976) * sx(0x40, ref_107970)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
ref_108197 = ref_107978 # MOV operation
ref_108211 = ref_104008 # MOV operation
ref_108213 = (ref_108211 & 0xFFFFFFFF) # MOV operation
ref_108215 = ((ref_108197 << ((ref_108213 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_108222 = ref_108215 # MOV operation
ref_110341 = ref_80091 # MOV operation
ref_112207 = ((((((((ref_90185) << 8 | ref_90186) << 8 | ref_90187) << 8 | ref_90188) << 8 | ref_93851) << 8 | ref_93852) << 8 | ref_93853) << 8 | ref_93854) # MOV operation
ref_112649 = ref_112207 # MOV operation
ref_112657 = (((sx(0x40, 0x4E1A7F2) * sx(0x40, ref_112649)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
ref_112884 = ref_110341 # MOV operation
ref_112890 = ref_112657 # MOV operation
ref_112892 = (ref_112890 ^ ref_112884) # XOR operation
ref_113357 = ref_112892 # MOV operation
ref_113365 = (0xF & ref_113357) # AND operation
ref_113830 = ref_113365 # MOV operation
ref_113838 = (0x1 | ref_113830) # OR operation
ref_114074 = ref_113838 # MOV operation
ref_114076 = ((0x40 - ref_114074) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_114084 = ref_114076 # MOV operation
ref_115968 = ref_17364 # MOV operation
ref_117834 = ref_21982 # MOV operation
ref_118041 = ref_115968 # MOV operation
ref_118047 = ref_117834 # MOV operation
ref_118049 = (((sx(0x40, ref_118047) * sx(0x40, ref_118041)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
ref_118268 = ref_118049 # MOV operation
ref_118282 = ref_114084 # MOV operation
ref_118284 = (ref_118282 & 0xFFFFFFFF) # MOV operation
ref_118286 = (ref_118268 >> ((ref_118284 & 0xFF) & 0x3F)) # SHR operation
ref_118293 = ref_118286 # MOV operation
ref_118518 = ref_108222 # MOV operation
ref_118524 = ref_118293 # MOV operation
ref_118526 = (ref_118524 | ref_118518) # OR operation
ref_118756 = ref_118526 # MOV operation
ref_119246 = ref_118756 # MOV operation
ref_119248 = ref_119246 # MOV operation

print ref_119248 & 0xffffffffffffffff
