#!/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_15503 = ref_278 # MOV operation
ref_16707 = ref_15503 # MOV operation
ref_16713 = (0x1D2C27F0 | ref_16707) # OR operation
ref_17081 = ref_16713 # MOV operation
ref_17095 = ((ref_17081 << (0x9 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_22291 = ref_278 # MOV operation
ref_23495 = ref_22291 # MOV operation
ref_23501 = (0x1D2C27F0 | ref_23495) # OR operation
ref_24552 = ref_23501 # MOV operation
ref_24560 = (ref_24552 >> (0x37 & 0x3F)) # SHR operation
ref_24567 = ref_24560 # MOV operation
ref_25262 = ref_17095 # MOV operation
ref_25266 = ref_24567 # MOV operation
ref_25268 = (ref_25266 | ref_25262) # OR operation
ref_26082 = ref_25268 # MOV operation
ref_35672 = ref_278 # MOV operation
ref_41197 = ref_26082 # MOV operation
ref_41540 = ref_41197 # MOV operation
ref_41554 = ((ref_41540 << (0xD & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_46575 = ref_26082 # MOV operation
ref_47601 = ref_46575 # MOV operation
ref_47609 = (ref_47601 >> (0x33 & 0x3F)) # SHR operation
ref_47616 = ref_47609 # MOV operation
ref_48311 = ref_41554 # MOV operation
ref_48315 = ref_47616 # MOV operation
ref_48317 = (ref_48315 | ref_48311) # OR operation
ref_49017 = ref_35672 # MOV operation
ref_49021 = ref_48317 # MOV operation
ref_49023 = (ref_49021 | ref_49017) # OR operation
ref_49837 = ref_49023 # MOV operation
ref_59956 = ref_278 # MOV operation
ref_60337 = ref_59956 # MOV operation
ref_60351 = ((0x6402BE2 + ref_60337) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_61166 = ref_60351 # MOV operation
ref_70756 = ref_278 # MOV operation
ref_71960 = ref_70756 # MOV operation
ref_71966 = (0x3544223F | ref_71960) # OR operation
ref_77516 = ref_61166 # MOV operation
ref_82512 = ref_49837 # MOV operation
ref_83047 = ref_77516 # MOV operation
ref_83051 = ref_82512 # MOV operation
ref_83053 = (((sx(0x40, ref_83051) * sx(0x40, ref_83047)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
ref_83614 = ref_83053 # MOV operation
ref_83616 = (((sx(0x40, ref_83614) * sx(0x40, 0x3BE31211)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
ref_84173 = ref_71966 # MOV operation
ref_84177 = ref_83616 # MOV operation
ref_84179 = (((sx(0x40, ref_84177) * sx(0x40, ref_84173)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
ref_84990 = ref_84179 # MOV operation
ref_94405 = ref_61166 # MOV operation
ref_100459 = ref_84990 # MOV operation
ref_101094 = ref_100459 # MOV operation
ref_101108 = (0x1F & ref_101094) # AND operation
ref_101476 = ref_101108 # MOV operation
ref_101490 = ((ref_101476 << (0x4 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_102190 = ref_94405 # MOV operation
ref_102194 = ref_101490 # MOV operation
ref_102196 = (ref_102194 | ref_102190) # OR operation
ref_103010 = ref_102196 # MOV operation
ref_109268 = ref_49837 # MOV operation
ref_110294 = ref_109268 # MOV operation
ref_110302 = (ref_110294 >> (0x1 & 0x3F)) # SHR operation
ref_110309 = ref_110302 # MOV operation
ref_110964 = ref_110309 # MOV operation
ref_110978 = (0xF & ref_110964) # AND operation
ref_112207 = ref_110978 # MOV operation
ref_112213 = (0x1 | ref_112207) # OR operation
ref_117234 = ref_26082 # MOV operation
ref_117577 = ref_117234 # MOV operation
ref_117589 = ref_112213 # MOV operation
ref_117591 = ((ref_117577 << ((ref_117589 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_122612 = ref_26082 # MOV operation
ref_128137 = ref_49837 # MOV operation
ref_129163 = ref_128137 # MOV operation
ref_129171 = (ref_129163 >> (0x1 & 0x3F)) # SHR operation
ref_129178 = ref_129171 # MOV operation
ref_129833 = ref_129178 # MOV operation
ref_129847 = (0xF & ref_129833) # AND operation
ref_131076 = ref_129847 # MOV operation
ref_131082 = (0x1 | ref_131076) # OR operation
ref_132391 = ref_131082 # MOV operation
ref_132393 = ((0x40 - ref_132391) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_132401 = ref_132393 # MOV operation
ref_132918 = ref_122612 # MOV operation
ref_132922 = ref_132401 # MOV operation
ref_132924 = (ref_132922 & 0xFFFFFFFF) # MOV operation
ref_132926 = (ref_132918 >> ((ref_132924 & 0xFF) & 0x3F)) # SHR operation
ref_132933 = ref_132926 # MOV operation
ref_133628 = ref_117591 # MOV operation
ref_133632 = ref_132933 # MOV operation
ref_133634 = (ref_133632 | ref_133628) # OR operation
ref_138655 = ref_103010 # MOV operation
ref_144180 = ref_84990 # MOV operation
ref_145206 = ref_144180 # MOV operation
ref_145214 = (ref_145206 >> (0x3 & 0x3F)) # SHR operation
ref_145221 = ref_145214 # MOV operation
ref_145876 = ref_145221 # MOV operation
ref_145890 = (0x7 & ref_145876) # AND operation
ref_147119 = ref_145890 # MOV operation
ref_147125 = (0x1 | ref_147119) # OR operation
ref_147647 = ref_138655 # MOV operation
ref_147651 = ref_147125 # MOV operation
ref_147653 = (ref_147651 & 0xFFFFFFFF) # MOV operation
ref_147655 = (ref_147647 >> ((ref_147653 & 0xFF) & 0x3F)) # SHR operation
ref_147662 = ref_147655 # MOV operation
ref_148433 = ref_133634 # MOV operation
ref_148437 = ref_147662 # MOV operation
ref_148439 = ((ref_148433 - ref_148437) & 0xFFFFFFFFFFFFFFFF) # CMP operation
ref_148441 = ((((ref_148433 ^ (ref_148437 ^ ref_148439)) ^ ((ref_148433 ^ ref_148439) & (ref_148433 ^ ref_148437))) >> 63) & 0x1) # Carry flag
ref_148445 = (0x1 if (ref_148439 == 0x0) else 0x0) # Zero flag
ref_148447 = ((((ref_148437 >> 8) & 0xFFFFFFFFFFFFFF)) << 8 | (0x1 if ((ref_148441 | ref_148445) == 0x1) else 0x0)) # SETBE operation
ref_148449 = (ref_148447 & 0xFF) # MOVZX operation
ref_148696 = (ref_148449 & 0xFFFFFFFF) # MOV operation
ref_148698 = ((ref_148696 & 0xFFFFFFFF) & (ref_148696 & 0xFFFFFFFF)) # TEST operation
ref_148703 = (0x1 if (ref_148698 == 0x0) else 0x0) # Zero flag
ref_148705 = (0x1E1A if (ref_148703 == 0x1) else 0x1DFC) # Program Counter


if (ref_148703 == 0x1):
    ref_263 = SymVar_0
    ref_278 = ref_263 # MOV operation
    ref_15503 = ref_278 # MOV operation
    ref_16707 = ref_15503 # MOV operation
    ref_16713 = (0x1D2C27F0 | ref_16707) # OR operation
    ref_17081 = ref_16713 # MOV operation
    ref_17095 = ((ref_17081 << (0x9 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_22291 = ref_278 # MOV operation
    ref_23495 = ref_22291 # MOV operation
    ref_23501 = (0x1D2C27F0 | ref_23495) # OR operation
    ref_24552 = ref_23501 # MOV operation
    ref_24560 = (ref_24552 >> (0x37 & 0x3F)) # SHR operation
    ref_24567 = ref_24560 # MOV operation
    ref_25262 = ref_17095 # MOV operation
    ref_25266 = ref_24567 # MOV operation
    ref_25268 = (ref_25266 | ref_25262) # OR operation
    ref_26082 = ref_25268 # MOV operation
    ref_35672 = ref_278 # MOV operation
    ref_41197 = ref_26082 # MOV operation
    ref_41540 = ref_41197 # MOV operation
    ref_41554 = ((ref_41540 << (0xD & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_46575 = ref_26082 # MOV operation
    ref_47601 = ref_46575 # MOV operation
    ref_47609 = (ref_47601 >> (0x33 & 0x3F)) # SHR operation
    ref_47616 = ref_47609 # MOV operation
    ref_48311 = ref_41554 # MOV operation
    ref_48315 = ref_47616 # MOV operation
    ref_48317 = (ref_48315 | ref_48311) # OR operation
    ref_49017 = ref_35672 # MOV operation
    ref_49021 = ref_48317 # MOV operation
    ref_49023 = (ref_49021 | ref_49017) # OR operation
    ref_49837 = ref_49023 # MOV operation
    ref_59956 = ref_278 # MOV operation
    ref_60337 = ref_59956 # MOV operation
    ref_60351 = ((0x6402BE2 + ref_60337) & 0xFFFFFFFFFFFFFFFF) # ADD operation
    ref_61166 = ref_60351 # MOV operation
    ref_70756 = ref_278 # MOV operation
    ref_71960 = ref_70756 # MOV operation
    ref_71966 = (0x3544223F | ref_71960) # OR operation
    ref_77516 = ref_61166 # MOV operation
    ref_82512 = ref_49837 # MOV operation
    ref_83047 = ref_77516 # MOV operation
    ref_83051 = ref_82512 # MOV operation
    ref_83053 = (((sx(0x40, ref_83051) * sx(0x40, ref_83047)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
    ref_83614 = ref_83053 # MOV operation
    ref_83616 = (((sx(0x40, ref_83614) * sx(0x40, 0x3BE31211)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
    ref_84173 = ref_71966 # MOV operation
    ref_84177 = ref_83616 # MOV operation
    ref_84179 = (((sx(0x40, ref_84177) * sx(0x40, ref_84173)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
    ref_84990 = ref_84179 # MOV operation
    ref_94405 = ref_61166 # MOV operation
    ref_100459 = ref_84990 # MOV operation
    ref_101094 = ref_100459 # MOV operation
    ref_101108 = (0x1F & ref_101094) # AND operation
    ref_101476 = ref_101108 # MOV operation
    ref_101490 = ((ref_101476 << (0x4 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_102190 = ref_94405 # MOV operation
    ref_102194 = ref_101490 # MOV operation
    ref_102196 = (ref_102194 | ref_102190) # OR operation
    ref_103010 = ref_102196 # MOV operation
    ref_158842 = ref_49837 # MOV operation
    ref_164896 = ref_49837 # MOV operation
    ref_165531 = ref_164896 # MOV operation
    ref_165545 = (0xF & ref_165531) # AND operation
    ref_165913 = ref_165545 # MOV operation
    ref_165927 = ((ref_165913 << (0x2 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_166627 = ref_158842 # MOV operation
    ref_166631 = ref_165927 # MOV operation
    ref_166633 = (ref_166631 | ref_166627) # OR operation
    ref_167447 = ref_166633 # MOV operation
    ref_178288 = ref_167447 # MOV operation
    ref_179314 = ref_178288 # MOV operation
    ref_179322 = (ref_179314 >> (0x3 & 0x3F)) # SHR operation
    ref_179329 = ref_179322 # MOV operation
    ref_179984 = ref_179329 # MOV operation
    ref_179998 = (0xF & ref_179984) # AND operation
    ref_181227 = ref_179998 # MOV operation
    ref_181233 = (0x1 | ref_181227) # OR operation
    ref_186254 = ref_26082 # MOV operation
    ref_186597 = ref_186254 # MOV operation
    ref_186609 = ref_181233 # MOV operation
    ref_186611 = ((ref_186597 << ((ref_186609 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_191632 = ref_26082 # MOV operation
    ref_197157 = ref_167447 # MOV operation
    ref_198183 = ref_197157 # MOV operation
    ref_198191 = (ref_198183 >> (0x3 & 0x3F)) # SHR operation
    ref_198198 = ref_198191 # MOV operation
    ref_198853 = ref_198198 # MOV operation
    ref_198867 = (0xF & ref_198853) # AND operation
    ref_200096 = ref_198867 # MOV operation
    ref_200102 = (0x1 | ref_200096) # OR operation
    ref_201411 = ref_200102 # MOV operation
    ref_201413 = ((0x40 - ref_201411) & 0xFFFFFFFFFFFFFFFF) # SUB operation
    ref_201421 = ref_201413 # MOV operation
    ref_201938 = ref_191632 # MOV operation
    ref_201942 = ref_201421 # MOV operation
    ref_201944 = (ref_201942 & 0xFFFFFFFF) # MOV operation
    ref_201946 = (ref_201938 >> ((ref_201944 & 0xFF) & 0x3F)) # SHR operation
    ref_201953 = ref_201946 # MOV operation
    ref_202648 = ref_186611 # MOV operation
    ref_202652 = ref_201953 # MOV operation
    ref_202654 = (ref_202652 | ref_202648) # OR operation
    ref_207675 = ref_103010 # MOV operation
    ref_213200 = ref_84990 # MOV operation
    ref_213581 = ref_213200 # MOV operation
    ref_213595 = ((0x369A4780 + ref_213581) & 0xFFFFFFFFFFFFFFFF) # ADD operation
    ref_214156 = ref_207675 # MOV operation
    ref_214160 = ref_213595 # MOV operation
    ref_214162 = (((sx(0x40, ref_214160) * sx(0x40, ref_214156)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
    ref_214719 = ref_202654 # MOV operation
    ref_214723 = ref_214162 # MOV operation
    ref_214725 = (((sx(0x40, ref_214723) * sx(0x40, ref_214719)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
    ref_215536 = ref_214725 # MOV operation
    ref_216751 = ref_215536 # MOV operation
    ref_216753 = ref_216751 # MOV operation
    endb = ref_216753


else:
    ref_217073 = SymVar_0
    ref_217088 = ref_217073 # MOV operation
    ref_232318 = ref_217088 # MOV operation
    ref_233522 = ref_232318 # MOV operation
    ref_233528 = (0x1D2C27F0 | ref_233522) # OR operation
    ref_233896 = ref_233528 # MOV operation
    ref_233910 = ((ref_233896 << (0x9 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_239106 = ref_217088 # MOV operation
    ref_240310 = ref_239106 # MOV operation
    ref_240316 = (0x1D2C27F0 | ref_240310) # OR operation
    ref_241367 = ref_240316 # MOV operation
    ref_241375 = (ref_241367 >> (0x37 & 0x3F)) # SHR operation
    ref_241382 = ref_241375 # MOV operation
    ref_242077 = ref_233910 # MOV operation
    ref_242081 = ref_241382 # MOV operation
    ref_242083 = (ref_242081 | ref_242077) # OR operation
    ref_242897 = ref_242083 # MOV operation
    ref_252487 = ref_217088 # MOV operation
    ref_258012 = ref_242897 # MOV operation
    ref_258355 = ref_258012 # MOV operation
    ref_258369 = ((ref_258355 << (0xD & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_263390 = ref_242897 # MOV operation
    ref_264416 = ref_263390 # MOV operation
    ref_264424 = (ref_264416 >> (0x33 & 0x3F)) # SHR operation
    ref_264431 = ref_264424 # MOV operation
    ref_265126 = ref_258369 # MOV operation
    ref_265130 = ref_264431 # MOV operation
    ref_265132 = (ref_265130 | ref_265126) # OR operation
    ref_265832 = ref_252487 # MOV operation
    ref_265836 = ref_265132 # MOV operation
    ref_265838 = (ref_265836 | ref_265832) # OR operation
    ref_266652 = ref_265838 # MOV operation
    ref_266654 = ((ref_266652 >> 56) & 0xFF) # Byte reference - MOV operation
    ref_266655 = ((ref_266652 >> 48) & 0xFF) # Byte reference - MOV operation
    ref_266656 = ((ref_266652 >> 40) & 0xFF) # Byte reference - MOV operation
    ref_266657 = ((ref_266652 >> 32) & 0xFF) # Byte reference - MOV operation
    ref_266658 = ((ref_266652 >> 24) & 0xFF) # Byte reference - MOV operation
    ref_266659 = ((ref_266652 >> 16) & 0xFF) # Byte reference - MOV operation
    ref_266660 = ((ref_266652 >> 8) & 0xFF) # Byte reference - MOV operation
    ref_266661 = (ref_266652 & 0xFF) # Byte reference - MOV operation
    ref_276771 = ref_217088 # MOV operation
    ref_277152 = ref_276771 # MOV operation
    ref_277166 = ((0x6402BE2 + ref_277152) & 0xFFFFFFFFFFFFFFFF) # ADD operation
    ref_277981 = ref_277166 # MOV operation
    ref_287571 = ref_217088 # MOV operation
    ref_288775 = ref_287571 # MOV operation
    ref_288781 = (0x3544223F | ref_288775) # OR operation
    ref_294331 = ref_277981 # MOV operation
    ref_299327 = ref_266652 # MOV operation
    ref_299862 = ref_294331 # MOV operation
    ref_299866 = ref_299327 # MOV operation
    ref_299868 = (((sx(0x40, ref_299866) * sx(0x40, ref_299862)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
    ref_300429 = ref_299868 # MOV operation
    ref_300431 = (((sx(0x40, ref_300429) * sx(0x40, 0x3BE31211)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
    ref_300988 = ref_288781 # MOV operation
    ref_300992 = ref_300431 # MOV operation
    ref_300994 = (((sx(0x40, ref_300992) * sx(0x40, ref_300988)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
    ref_301805 = ref_300994 # MOV operation
    ref_311220 = ref_277981 # MOV operation
    ref_317274 = ref_301805 # MOV operation
    ref_317909 = ref_317274 # MOV operation
    ref_317923 = (0x1F & ref_317909) # AND operation
    ref_318291 = ref_317923 # MOV operation
    ref_318305 = ((ref_318291 << (0x4 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_319005 = ref_311220 # MOV operation
    ref_319009 = ref_318305 # MOV operation
    ref_319011 = (ref_319009 | ref_319005) # OR operation
    ref_319825 = ref_319011 # MOV operation
    ref_375480 = ref_301805 # MOV operation
    ref_376223 = ref_375480 # MOV operation
    ref_376239 = ((((0x0) << 64 | ref_376223) / 0x8) & 0xFFFFFFFFFFFFFFFF) # DIV operation
    ref_377049 = ref_376239 # MOV operation
    ref_377051 = ((ref_377049 >> 56) & 0xFF) # Byte reference - MOV operation
    ref_377052 = ((ref_377049 >> 48) & 0xFF) # Byte reference - MOV operation
    ref_377053 = ((ref_377049 >> 40) & 0xFF) # Byte reference - MOV operation
    ref_377054 = ((ref_377049 >> 32) & 0xFF) # Byte reference - MOV operation
    ref_377055 = ((ref_377049 >> 24) & 0xFF) # Byte reference - MOV operation
    ref_377056 = ((ref_377049 >> 16) & 0xFF) # Byte reference - MOV operation
    ref_377057 = ((ref_377049 >> 8) & 0xFF) # Byte reference - MOV operation
    ref_377058 = (ref_377049 & 0xFF) # Byte reference - MOV operation
    ref_386025 = ref_266659 # MOVZX operation
    ref_387487 = (ref_386025 & 0xFF) # MOVZX operation
    ref_396455 = ref_266656 # MOVZX operation
    ref_405481 = (ref_396455 & 0xFF) # MOVZX operation
    ref_405483 = (ref_405481 & 0xFF) # Byte reference - MOV operation
    ref_406885 = (ref_387487 & 0xFF) # MOVZX operation
    ref_415911 = (ref_406885 & 0xFF) # MOVZX operation
    ref_415913 = (ref_415911 & 0xFF) # Byte reference - MOV operation
    ref_424879 = ref_266654 # MOVZX operation
    ref_426341 = (ref_424879 & 0xFF) # MOVZX operation
    ref_435309 = ref_266661 # MOVZX operation
    ref_444335 = (ref_435309 & 0xFF) # MOVZX operation
    ref_444337 = (ref_444335 & 0xFF) # Byte reference - MOV operation
    ref_445739 = (ref_426341 & 0xFF) # MOVZX operation
    ref_454765 = (ref_445739 & 0xFF) # MOVZX operation
    ref_454767 = (ref_454765 & 0xFF) # Byte reference - MOV operation
    ref_463733 = ref_377054 # MOVZX operation
    ref_465195 = (ref_463733 & 0xFF) # MOVZX operation
    ref_474163 = ref_377058 # MOVZX operation
    ref_483189 = (ref_474163 & 0xFF) # MOVZX operation
    ref_483191 = (ref_483189 & 0xFF) # Byte reference - MOV operation
    ref_484593 = (ref_465195 & 0xFF) # MOVZX operation
    ref_493619 = (ref_484593 & 0xFF) # MOVZX operation
    ref_493621 = (ref_493619 & 0xFF) # Byte reference - MOV operation
    ref_504452 = ((((((((ref_444337) << 8 | ref_266655) << 8 | ref_415913) << 8 | ref_266657) << 8 | ref_266658) << 8 | ref_405483) << 8 | ref_266660) << 8 | ref_454767) # MOV operation
    ref_505478 = ref_504452 # MOV operation
    ref_505486 = (ref_505478 >> (0x3 & 0x3F)) # SHR operation
    ref_505493 = ref_505486 # MOV operation
    ref_506148 = ref_505493 # MOV operation
    ref_506162 = (0xF & ref_506148) # AND operation
    ref_507391 = ref_506162 # MOV operation
    ref_507397 = (0x1 | ref_507391) # OR operation
    ref_512418 = ((((((((ref_377051) << 8 | ref_377052) << 8 | ref_377053) << 8 | ref_483191) << 8 | ref_377055) << 8 | ref_377056) << 8 | ref_377057) << 8 | ref_493621) # MOV operation
    ref_512761 = ref_512418 # MOV operation
    ref_512773 = ref_507397 # MOV operation
    ref_512775 = ((ref_512761 << ((ref_512773 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
    ref_517796 = ((((((((ref_377051) << 8 | ref_377052) << 8 | ref_377053) << 8 | ref_483191) << 8 | ref_377055) << 8 | ref_377056) << 8 | ref_377057) << 8 | ref_493621) # MOV operation
    ref_523321 = ((((((((ref_444337) << 8 | ref_266655) << 8 | ref_415913) << 8 | ref_266657) << 8 | ref_266658) << 8 | ref_405483) << 8 | ref_266660) << 8 | ref_454767) # MOV operation
    ref_524347 = ref_523321 # MOV operation
    ref_524355 = (ref_524347 >> (0x3 & 0x3F)) # SHR operation
    ref_524362 = ref_524355 # MOV operation
    ref_525017 = ref_524362 # MOV operation
    ref_525031 = (0xF & ref_525017) # AND operation
    ref_526260 = ref_525031 # MOV operation
    ref_526266 = (0x1 | ref_526260) # OR operation
    ref_527575 = ref_526266 # MOV operation
    ref_527577 = ((0x40 - ref_527575) & 0xFFFFFFFFFFFFFFFF) # SUB operation
    ref_527585 = ref_527577 # MOV operation
    ref_528102 = ref_517796 # MOV operation
    ref_528106 = ref_527585 # MOV operation
    ref_528108 = (ref_528106 & 0xFFFFFFFF) # MOV operation
    ref_528110 = (ref_528102 >> ((ref_528108 & 0xFF) & 0x3F)) # SHR operation
    ref_528117 = ref_528110 # MOV operation
    ref_528812 = ref_512775 # MOV operation
    ref_528816 = ref_528117 # MOV operation
    ref_528818 = (ref_528816 | ref_528812) # OR operation
    ref_533839 = ref_319825 # MOV operation
    ref_539364 = ref_301805 # MOV operation
    ref_539745 = ref_539364 # MOV operation
    ref_539759 = ((0x369A4780 + ref_539745) & 0xFFFFFFFFFFFFFFFF) # ADD operation
    ref_540320 = ref_533839 # MOV operation
    ref_540324 = ref_539759 # MOV operation
    ref_540326 = (((sx(0x40, ref_540324) * sx(0x40, ref_540320)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
    ref_540883 = ref_528818 # MOV operation
    ref_540887 = ref_540326 # MOV operation
    ref_540889 = (((sx(0x40, ref_540887) * sx(0x40, ref_540883)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
    ref_541700 = ref_540889 # MOV operation
    ref_542915 = ref_541700 # MOV operation
    ref_542917 = ref_542915 # MOV operation
    endb = ref_542917


print endb & 0xffffffffffffffff
