#!/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_5500 = ref_278 # MOV operation
ref_5532 = ref_5500 # MOV operation
ref_5546 = ((ref_5532 - 0x35CEDE6D) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_5554 = ref_5546 # MOV operation
ref_5588 = ref_5554 # MOV operation
ref_6425 = ref_278 # MOV operation
ref_6467 = ref_6425 # MOV operation
ref_6475 = ((((0x0) << 64 | ref_6467) / 0x7) & 0xFFFFFFFFFFFFFFFF) # DIV operation
ref_6510 = ref_6475 # MOV operation
ref_7278 = ref_6510 # MOV operation
ref_7302 = ref_7278 # MOV operation
ref_7310 = (ref_7302 >> (0x3 & 0x3F)) # SHR operation
ref_7317 = ref_7310 # MOV operation
ref_7467 = ref_7317 # MOV operation
ref_7473 = (0xF & ref_7467) # AND operation
ref_7520 = ref_7473 # MOV operation
ref_7526 = (0x1 | ref_7520) # OR operation
ref_7577 = ref_7526 # MOV operation
ref_7579 = ((0x7A11169 << ((ref_7577 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_7960 = ref_6510 # MOV operation
ref_7984 = ref_7960 # MOV operation
ref_7992 = (ref_7984 >> (0x3 & 0x3F)) # SHR operation
ref_7999 = ref_7992 # MOV operation
ref_8149 = ref_7999 # MOV operation
ref_8155 = (0xF & ref_8149) # AND operation
ref_8202 = ref_8155 # MOV operation
ref_8208 = (0x1 | ref_8202) # OR operation
ref_8259 = ref_8208 # MOV operation
ref_8261 = ((0x40 - ref_8259) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_8269 = ref_8261 # MOV operation
ref_8315 = ref_8269 # MOV operation
ref_8317 = (0x7A11169 >> ((ref_8315 & 0xFF) & 0x3F)) # SHR operation
ref_8354 = ref_7579 # MOV operation
ref_8366 = ref_8317 # MOV operation
ref_8368 = (ref_8366 | ref_8354) # OR operation
ref_8405 = ref_8368 # MOV operation
ref_8419 = (ref_8405 >> (0x4 & 0x3F)) # SHR operation
ref_8574 = ref_8419 # MOV operation
ref_8580 = (0xF & ref_8574) # AND operation
ref_8627 = ref_8580 # MOV operation
ref_8633 = (0x1 | ref_8627) # OR operation
ref_9025 = ref_278 # MOV operation
ref_9057 = ref_9025 # MOV operation
ref_9069 = ref_8633 # MOV operation
ref_9071 = ((ref_9057 << ((ref_9069 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_9470 = ref_6510 # MOV operation
ref_9494 = ref_9470 # MOV operation
ref_9502 = (ref_9494 >> (0x3 & 0x3F)) # SHR operation
ref_9509 = ref_9502 # MOV operation
ref_9659 = ref_9509 # MOV operation
ref_9665 = (0xF & ref_9659) # AND operation
ref_9712 = ref_9665 # MOV operation
ref_9718 = (0x1 | ref_9712) # OR operation
ref_9769 = ref_9718 # MOV operation
ref_9771 = ((0x7A11169 << ((ref_9769 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_10152 = ref_6510 # MOV operation
ref_10176 = ref_10152 # MOV operation
ref_10184 = (ref_10176 >> (0x3 & 0x3F)) # SHR operation
ref_10191 = ref_10184 # MOV operation
ref_10341 = ref_10191 # MOV operation
ref_10347 = (0xF & ref_10341) # AND operation
ref_10394 = ref_10347 # MOV operation
ref_10400 = (0x1 | ref_10394) # OR operation
ref_10451 = ref_10400 # MOV operation
ref_10453 = ((0x40 - ref_10451) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_10461 = ref_10453 # MOV operation
ref_10507 = ref_10461 # MOV operation
ref_10509 = (0x7A11169 >> ((ref_10507 & 0xFF) & 0x3F)) # SHR operation
ref_10546 = ref_9771 # MOV operation
ref_10558 = ref_10509 # MOV operation
ref_10560 = (ref_10558 | ref_10546) # OR operation
ref_10597 = ref_10560 # MOV operation
ref_10611 = (ref_10597 >> (0x4 & 0x3F)) # SHR operation
ref_10766 = ref_10611 # MOV operation
ref_10772 = (0xF & ref_10766) # AND operation
ref_10819 = ref_10772 # MOV operation
ref_10825 = (0x1 | ref_10819) # OR operation
ref_10876 = ref_10825 # MOV operation
ref_10878 = ((0x40 - ref_10876) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_10886 = ref_10878 # MOV operation
ref_11273 = ref_278 # MOV operation
ref_11305 = ref_11273 # MOV operation
ref_11317 = ref_10886 # MOV operation
ref_11319 = (ref_11305 >> ((ref_11317 & 0xFF) & 0x3F)) # SHR operation
ref_11356 = ref_9071 # MOV operation
ref_11368 = ref_11319 # MOV operation
ref_11370 = (ref_11368 | ref_11356) # OR operation
ref_11409 = ref_11370 # MOV operation
ref_12264 = ref_278 # MOV operation
ref_12296 = ref_12264 # MOV operation
ref_12310 = ((ref_12296 - 0x297EE8A1) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_12318 = ref_12310 # MOV operation
ref_12362 = ref_12318 # MOV operation
ref_12376 = (((sx(0x40, 0x1471C5DA) * sx(0x40, ref_12362)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
ref_12412 = ref_12376 # MOV operation
ref_12414 = ((ref_12412 >> 56) & 0xFF) # Byte reference - MOV operation
ref_12415 = ((ref_12412 >> 48) & 0xFF) # Byte reference - MOV operation
ref_12416 = ((ref_12412 >> 40) & 0xFF) # Byte reference - MOV operation
ref_12417 = ((ref_12412 >> 32) & 0xFF) # Byte reference - MOV operation
ref_12418 = ((ref_12412 >> 24) & 0xFF) # Byte reference - MOV operation
ref_12419 = ((ref_12412 >> 16) & 0xFF) # Byte reference - MOV operation
ref_12420 = ((ref_12412 >> 8) & 0xFF) # Byte reference - MOV operation
ref_12421 = (ref_12412 & 0xFF) # Byte reference - MOV operation
ref_13054 = ((ref_12416) << 8 | ref_12417) # MOVZX operation
ref_13102 = (ref_13054 & 0xFFFF) # MOVZX operation
ref_13738 = ((ref_12418) << 8 | ref_12419) # MOVZX operation
ref_14348 = (ref_13738 & 0xFFFF) # MOVZX operation
ref_14400 = (ref_13102 & 0xFFFF) # MOVZX operation
ref_15042 = (ref_14400 & 0xFFFF) # MOVZX operation
ref_15044 = (((ref_15042 & 0xFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
ref_15045 = ((ref_15042 & 0xFFFF) & 0xFF) # Byte reference - MOV operation
ref_18882 = ref_6510 # MOV operation
ref_19280 = ref_11409 # MOV operation
ref_19330 = ref_19280 # MOV operation
ref_19344 = (0x1F & ref_19330) # AND operation
ref_19473 = ref_19344 # MOV operation
ref_19487 = ((ref_19473 << (0x4 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_19524 = ref_18882 # MOV operation
ref_19536 = ref_19487 # MOV operation
ref_19538 = (ref_19536 | ref_19524) # OR operation
ref_19577 = ref_19538 # MOV operation
ref_20203 = ref_19577 # MOV operation
ref_20601 = ref_19577 # MOV operation
ref_20651 = ref_20601 # MOV operation
ref_20665 = (0xF & ref_20651) # AND operation
ref_20794 = ref_20665 # MOV operation
ref_20808 = ((ref_20794 << (0x2 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_20845 = ref_20203 # MOV operation
ref_20857 = ref_20808 # MOV operation
ref_20859 = (ref_20857 | ref_20845) # OR operation
ref_20898 = ref_20859 # MOV operation
ref_21718 = ((ref_12414) << 8 | ref_12415) # MOVZX operation
ref_21766 = (ref_21718 & 0xFFFF) # MOVZX operation
ref_22402 = ((ref_12420) << 8 | ref_12421) # MOVZX operation
ref_23012 = (ref_22402 & 0xFFFF) # MOVZX operation
ref_23014 = (((ref_23012 & 0xFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
ref_23015 = ((ref_23012 & 0xFFFF) & 0xFF) # Byte reference - MOV operation
ref_23064 = (ref_21766 & 0xFFFF) # MOVZX operation
ref_23706 = (ref_23064 & 0xFFFF) # MOVZX operation
ref_24342 = (ref_23706 & 0xFFFF) # MOVZX operation
ref_24390 = (ref_24342 & 0xFFFF) # MOVZX operation
ref_25026 = (ref_14348 & 0xFFFF) # MOVZX operation
ref_25636 = (ref_25026 & 0xFFFF) # MOVZX operation
ref_25638 = (((ref_25636 & 0xFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
ref_25639 = ((ref_25636 & 0xFFFF) & 0xFF) # Byte reference - MOV operation
ref_25688 = (ref_24390 & 0xFFFF) # MOVZX operation
ref_26330 = (ref_25688 & 0xFFFF) # MOVZX operation
ref_26332 = (((ref_26330 & 0xFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
ref_26333 = ((ref_26330 & 0xFFFF) & 0xFF) # Byte reference - MOV operation
ref_27148 = ((((((((ref_23014) << 8 | ref_23015) << 8 | ref_26332) << 8 | ref_26333) << 8 | ref_15044) << 8 | ref_15045) << 8 | ref_25638) << 8 | ref_25639) # MOV operation
ref_27172 = ref_27148 # MOV operation
ref_27180 = (ref_27172 >> (0x2 & 0x3F)) # SHR operation
ref_27187 = ref_27180 # MOV operation
ref_27337 = ref_27187 # MOV operation
ref_27343 = (0xF & ref_27337) # AND operation
ref_27390 = ref_27343 # MOV operation
ref_27396 = (0x1 | ref_27390) # OR operation
ref_27781 = ref_11409 # MOV operation
ref_27805 = ref_27781 # MOV operation
ref_27809 = ref_27396 # MOV operation
ref_27811 = (ref_27809 & 0xFFFFFFFF) # MOV operation
ref_27813 = ((ref_27805 << ((ref_27811 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_27820 = ref_27813 # MOV operation
ref_28218 = ((((((((ref_23014) << 8 | ref_23015) << 8 | ref_26332) << 8 | ref_26333) << 8 | ref_15044) << 8 | ref_15045) << 8 | ref_25638) << 8 | ref_25639) # MOV operation
ref_28242 = ref_28218 # MOV operation
ref_28250 = (ref_28242 >> (0x2 & 0x3F)) # SHR operation
ref_28257 = ref_28250 # MOV operation
ref_28407 = ref_28257 # MOV operation
ref_28413 = (0xF & ref_28407) # AND operation
ref_28460 = ref_28413 # MOV operation
ref_28466 = (0x1 | ref_28460) # OR operation
ref_28517 = ref_28466 # MOV operation
ref_28519 = ((0x40 - ref_28517) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_28527 = ref_28519 # MOV operation
ref_28907 = ref_11409 # MOV operation
ref_28931 = ref_28907 # MOV operation
ref_28935 = ref_28527 # MOV operation
ref_28937 = (ref_28935 & 0xFFFFFFFF) # MOV operation
ref_28939 = (ref_28931 >> ((ref_28937 & 0xFF) & 0x3F)) # SHR operation
ref_28946 = ref_28939 # MOV operation
ref_28972 = ref_27820 # MOV operation
ref_28976 = ref_28946 # MOV operation
ref_28978 = (ref_28976 | ref_28972) # OR operation
ref_29107 = ref_28978 # MOV operation
ref_29121 = (ref_29107 >> (0x4 & 0x3F)) # SHR operation
ref_29168 = ref_29121 # MOV operation
ref_29174 = (0xF & ref_29168) # AND operation
ref_29221 = ref_29174 # MOV operation
ref_29227 = (0x1 | ref_29221) # OR operation
ref_29612 = ref_20898 # MOV operation
ref_29762 = ref_29612 # MOV operation
ref_29768 = (0xF & ref_29762) # AND operation
ref_29815 = ref_29768 # MOV operation
ref_29821 = (0x1 | ref_29815) # OR operation
ref_30206 = ref_5588 # MOV operation
ref_30230 = ref_30206 # MOV operation
ref_30234 = ref_29821 # MOV operation
ref_30236 = (ref_30234 & 0xFFFFFFFF) # MOV operation
ref_30238 = ((ref_30230 << ((ref_30236 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_30245 = ref_30238 # MOV operation
ref_30605 = ref_20898 # MOV operation
ref_30755 = ref_30605 # MOV operation
ref_30761 = (0xF & ref_30755) # AND operation
ref_30808 = ref_30761 # MOV operation
ref_30814 = (0x1 | ref_30808) # OR operation
ref_30865 = ref_30814 # MOV operation
ref_30867 = ((0x40 - ref_30865) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_30875 = ref_30867 # MOV operation
ref_31255 = ref_5588 # MOV operation
ref_31279 = ref_31255 # MOV operation
ref_31283 = ref_30875 # MOV operation
ref_31285 = (ref_31283 & 0xFFFFFFFF) # MOV operation
ref_31287 = (ref_31279 >> ((ref_31285 & 0xFF) & 0x3F)) # SHR operation
ref_31294 = ref_31287 # MOV operation
ref_31320 = ref_30245 # MOV operation
ref_31324 = ref_31294 # MOV operation
ref_31326 = (ref_31324 | ref_31320) # OR operation
ref_31455 = ref_31326 # MOV operation
ref_31467 = ref_29227 # MOV operation
ref_31469 = (ref_31455 >> ((ref_31467 & 0xFF) & 0x3F)) # SHR operation
ref_31888 = ((((((((ref_23014) << 8 | ref_23015) << 8 | ref_26332) << 8 | ref_26333) << 8 | ref_15044) << 8 | ref_15045) << 8 | ref_25638) << 8 | ref_25639) # MOV operation
ref_31912 = ref_31888 # MOV operation
ref_31920 = (ref_31912 >> (0x2 & 0x3F)) # SHR operation
ref_31927 = ref_31920 # MOV operation
ref_32077 = ref_31927 # MOV operation
ref_32083 = (0xF & ref_32077) # AND operation
ref_32130 = ref_32083 # MOV operation
ref_32136 = (0x1 | ref_32130) # OR operation
ref_32521 = ref_11409 # MOV operation
ref_32545 = ref_32521 # MOV operation
ref_32549 = ref_32136 # MOV operation
ref_32551 = (ref_32549 & 0xFFFFFFFF) # MOV operation
ref_32553 = ((ref_32545 << ((ref_32551 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_32560 = ref_32553 # MOV operation
ref_32958 = ((((((((ref_23014) << 8 | ref_23015) << 8 | ref_26332) << 8 | ref_26333) << 8 | ref_15044) << 8 | ref_15045) << 8 | ref_25638) << 8 | ref_25639) # MOV operation
ref_32982 = ref_32958 # MOV operation
ref_32990 = (ref_32982 >> (0x2 & 0x3F)) # SHR operation
ref_32997 = ref_32990 # MOV operation
ref_33147 = ref_32997 # MOV operation
ref_33153 = (0xF & ref_33147) # AND operation
ref_33200 = ref_33153 # MOV operation
ref_33206 = (0x1 | ref_33200) # OR operation
ref_33257 = ref_33206 # MOV operation
ref_33259 = ((0x40 - ref_33257) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_33267 = ref_33259 # MOV operation
ref_33647 = ref_11409 # MOV operation
ref_33671 = ref_33647 # MOV operation
ref_33675 = ref_33267 # MOV operation
ref_33677 = (ref_33675 & 0xFFFFFFFF) # MOV operation
ref_33679 = (ref_33671 >> ((ref_33677 & 0xFF) & 0x3F)) # SHR operation
ref_33686 = ref_33679 # MOV operation
ref_33712 = ref_32560 # MOV operation
ref_33716 = ref_33686 # MOV operation
ref_33718 = (ref_33716 | ref_33712) # OR operation
ref_33847 = ref_33718 # MOV operation
ref_33861 = (ref_33847 >> (0x4 & 0x3F)) # SHR operation
ref_33908 = ref_33861 # MOV operation
ref_33914 = (0xF & ref_33908) # AND operation
ref_33961 = ref_33914 # MOV operation
ref_33967 = (0x1 | ref_33961) # OR operation
ref_34018 = ref_33967 # MOV operation
ref_34020 = ((0x40 - ref_34018) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_34028 = ref_34020 # MOV operation
ref_34408 = ref_20898 # MOV operation
ref_34558 = ref_34408 # MOV operation
ref_34564 = (0xF & ref_34558) # AND operation
ref_34611 = ref_34564 # MOV operation
ref_34617 = (0x1 | ref_34611) # OR operation
ref_35002 = ref_5588 # MOV operation
ref_35026 = ref_35002 # MOV operation
ref_35030 = ref_34617 # MOV operation
ref_35032 = (ref_35030 & 0xFFFFFFFF) # MOV operation
ref_35034 = ((ref_35026 << ((ref_35032 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_35041 = ref_35034 # MOV operation
ref_35401 = ref_20898 # MOV operation
ref_35551 = ref_35401 # MOV operation
ref_35557 = (0xF & ref_35551) # AND operation
ref_35604 = ref_35557 # MOV operation
ref_35610 = (0x1 | ref_35604) # OR operation
ref_35661 = ref_35610 # MOV operation
ref_35663 = ((0x40 - ref_35661) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_35671 = ref_35663 # MOV operation
ref_36051 = ref_5588 # MOV operation
ref_36075 = ref_36051 # MOV operation
ref_36079 = ref_35671 # MOV operation
ref_36081 = (ref_36079 & 0xFFFFFFFF) # MOV operation
ref_36083 = (ref_36075 >> ((ref_36081 & 0xFF) & 0x3F)) # SHR operation
ref_36090 = ref_36083 # MOV operation
ref_36116 = ref_35041 # MOV operation
ref_36120 = ref_36090 # MOV operation
ref_36122 = (ref_36120 | ref_36116) # OR operation
ref_36251 = ref_36122 # MOV operation
ref_36263 = ref_34028 # MOV operation
ref_36265 = ((ref_36251 << ((ref_36263 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_36302 = ref_31469 # MOV operation
ref_36314 = ref_36265 # MOV operation
ref_36316 = (ref_36314 | ref_36302) # OR operation
ref_36355 = ref_36316 # MOV operation
ref_36582 = ref_36355 # MOV operation
ref_36584 = ref_36582 # MOV operation

print ref_36584 & 0xffffffffffffffff
