Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- v24 = *(_QWORD *)(qword_7FF6C0BE0F98 + 16);
- switch ( __ROR8__(__readgsqword(0x60u), 12) & 0xFi64 )
- {
- case 0i64:
- v25 = -658128982337616763i64;
- for ( i = -4316122797674649353i64; ; i ^= 0xADA2F1118084055Dui64 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- v27 = i * v25;
- v28 = v27 >> 32;
- if ( v27 >> 32 > 0x9040F918 )
- break;
- if ( v27 >> 32 == 2420177176 )
- {
- i ^= 0x858438F4D58AA5FEui64;
- v31 = ((((-3279634441345779121i64 * v24) >> 7) ^ (-3279634441345779121i64 * v24)) >> 14) ^ ((-3279634441345779121i64 * v24) >> 7) ^ (-3279634441345779121i64 * v24);
- v32 = ((7486038930456840951i64 * ((v31 >> 28) ^ v31 ^ (((v31 >> 28) ^ v31) >> 56))) >> 27) ^ (7486038930456840951i64 * ((v31 >> 28) ^ v31 ^ (((v31 >> 28) ^ v31) >> 56)));
- v24 = (v32 ^ (v32 >> 54))
- * *(_QWORD *)(_byteswap_uint64(qword_7FF6B477F0E7 ^ __ROL8__(
- (retaddr - 140697495668226i64) & 0xFFFFFFFFC0000000ui64,
- 16))
- + 15);
- v25 = v27 ^ 0x8645A333AE5CB3A0ui64;
- }
- else
- {
- switch ( v28 )
- {
- case 0x343ACDD7ui64:
- i ^= 0xF2CBA80106E2C953ui64;
- v24 ^= (((v24 >> 21) ^ v24) >> 42) ^ (v24 >> 21);
- v25 = v27 ^ 0xE993BE542C95830Bui64;
- break;
- case 0x4AAB097Dui64:
- i ^= 0xB8E3A062C7077A05ui64;
- v24 = 6665058736540697117i64 * ((v24 >> 38) ^ v24);
- v25 = v27 ^ 0x4C016B1F1A96A632i64;
- break;
- case 0x6A6BFFA3ui64:
- v30 = (((v24 >> 15) ^ v24) >> 30) ^ (v24 >> 15) ^ v24;
- v24 = (v30 >> 60) ^ v30;
- i ^= 0xFE1F1416745EC2FBui64;
- v25 = v27 ^ 0x575A46BEC5DB87BFi64;
- break;
- case 0x8734C301ui64:
- i ^= 0xBB6B13305C31124Cui64;
- v29 = (((v24 >> 11) ^ v24) >> 22) ^ (v24 >> 11) ^ v24;
- v24 = (v29 >> 44) ^ v29;
- v25 = v27 ^ 0xB5F33A63F32DEDA1ui64;
- break;
- default:
- goto LABEL_349;
- }
- }
- }
- if ( v28 != 2678316291 )
- break;
- v24 = ((8131090143218388543i64 * v24) >> 38) ^ (8131090143218388543i64 * v24);
- v25 = v27 ^ 0xF4FD729E116CE56Fui64;
- i ^= 0xBED9D4E754330231ui64;
- }
- if ( v28 != v229 )
- break;
- v25 = v27 ^ 0x27F4D1A9C221B344i64;
- i ^= 0x36890119E1A0AB3Dui64;
- v24 = ((((3722584195270167861i64 * v24) >> 29) ^ (3722584195270167861i64 * v24)) >> 58) ^ ((3722584195270167861i64 * v24) >> 29) ^ (3722584195270167861i64 * v24);
- }
- if ( v28 != v187 )
- break;
- v25 = v27 ^ 0x60EF291D52D14C2i64;
- v24 *= *(_QWORD *)(_byteswap_uint64(qword_7FF6B477F0E7 ^ __ROL8__(
- (retaddr - 140697495668226i64) & 0xFFFFFFFFC0000000ui64,
- 16))
- + 23);
- }
- break;
- case 1i64:
- v33 = 4054041381596956048i64;
- for ( j = 2335979039733756310i64; ; j ^= 0xE7A0FD69688BDA29ui64 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- v35 = j * v33;
- v36 = v35 >> 32;
- if ( v35 >> 32 > 0x960716F8 )
- break;
- if ( v35 >> 32 == 2517047032 )
- {
- j ^= 0xA83FDBC480D2DBA4ui64;
- v24 = ((((-3546923665059370699i64 * v24) >> 27) ^ (-3546923665059370699i64 * v24)) >> 54) ^ ((-3546923665059370699i64 * v24) >> 27) ^ (-3546923665059370699i64 * v24);
- v33 = v35 ^ 0xB1B78B0642BB945Cui64;
- }
- else if ( v36 > 0x46BCAE2E )
- {
- if ( v36 == 2085950662 )
- {
- v24 ^= v24 >> 37;
- j ^= 0xB4FFE23C77C33D2Dui64;
- v33 = v35 ^ 0x614F572DC6FC05Bi64;
- }
- else
- {
- if ( v36 != 2433243840 )
- goto LABEL_349;
- v33 = v35 ^ 0x67F665040231273i64;
- j ^= 0x26AA1FA1531D0280ui64;
- v24 ^= (((v24 >> 29) ^ v24) >> 58) ^ (v24 >> 29);
- }
- }
- else
- {
- switch ( v36 )
- {
- case 0x46BCAE2Eui64:
- v24 *= *(_QWORD *)(_byteswap_uint64(qword_7FF6B477F0E7 ^ __ROL8__(
- (retaddr - 140697495668226i64) & 0xFFFFFFFFC0000000ui64,
- 16))
- + 15);
- j ^= 0xFF986415B0F3EF39ui64;
- v33 = v35 ^ 0xFCAD9C68A86B2B77ui64;
- break;
- case 0xDDAFF47ui64:
- j ^= 0xB1F417B628832322ui64;
- v24 *= 6686804496887140241i64;
- v33 = v35 ^ 0x906803EF47DB1E54ui64;
- break;
- case 0x3FE40595ui64:
- v33 = v35 ^ 0xB1459B2081072C0Dui64;
- j ^= 0x87CD08E69F8B7049ui64;
- v24 *= 2131777630661625733i64;
- break;
- case 0x4017C26Dui64:
- v37 = (((v24 >> 11) ^ v24) >> 22) ^ (v24 >> 11) ^ v24;
- v24 = (v37 >> 44) ^ v37;
- v33 = v35 ^ 0xEAADDB8BDA4D3197ui64;
- j ^= 0x4AB649F8D3139BC4ui64;
- break;
- default:
- goto LABEL_349;
- }
- }
- }
- if ( v36 != 2679709864 )
- break;
- v33 = v35 ^ 0xFDD1241CFDE9A1E5ui64;
- j ^= 0x5E412E0BB1F6F747ui64;
- v24 *= 2319914678847238341i64;
- }
- if ( v36 != v188 )
- break;
- v33 = v35 ^ 0x178C16F00E339F0Fi64;
- j ^= 0x68FFF0449EF59692ui64;
- v24 ^= v24 >> 32;
- }
- if ( v36 != v189 )
- break;
- j ^= 0x5F17D60BD0534349ui64;
- v24 = ((v24 >> 17) ^ v24 ^ (((v24 >> 17) ^ v24) >> 34))
- * *(_QWORD *)(_byteswap_uint64(qword_7FF6B477F0E7 ^ __ROL8__(
- (retaddr - 140697495668226i64) & 0xFFFFFFFFC0000000ui64,
- 16))
- + 7);
- v33 = v35 ^ 0x5835EE623F1F7263i64;
- }
- if ( v36 != v190 )
- break;
- v33 = v35 ^ 0xDCB0011552B7A78i64;
- v24 = ((((5211547994724246143i64 * v24) >> 18) ^ (5211547994724246143i64 * v24)) >> 36) ^ ((5211547994724246143i64 * v24) >> 18) ^ (5211547994724246143i64 * v24);
- j ^= 0xB39AACC7A7F791B9ui64;
- }
- if ( v36 != v191 )
- break;
- v33 = v35 ^ 0x8573199535DDA690ui64;
- v38 = ((((-2969424668786769121i64 * v24) >> 7) ^ (-2969424668786769121i64 * v24)) >> 14) ^ ((-2969424668786769121i64 * v24) >> 7) ^ (-2969424668786769121i64 * v24);
- v24 = (((v38 >> 28) ^ v38) >> 56) ^ (v38 >> 28) ^ v38;
- }
- break;
- case 2i64:
- v39 = -6737623808155290894i64;
- for ( k = 458622280699862171i64; ; k ^= 0x95F1196556E1DA52ui64 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- v41 = k * v39;
- v42 = v41 >> 32;
- if ( v41 >> 32 > 0x655DF4C9 )
- break;
- if ( v41 >> 32 == 1700656329 )
- {
- k ^= 0x3075BA1B83C30A92ui64;
- v39 = v41 ^ 0xE410C4662D13557Dui64;
- v46 = _byteswap_uint64(qword_7FF6B477F0E7 ^ __ROL8__(
- (retaddr - 140697495668226i64) & 0xFFFFFFFFC0000000ui64,
- 16));
- v47 = ((v192 * *(_QWORD *)(v46 + 5) * v24) >> 38) ^ (v192 * *(_QWORD *)(v46 + 5) * v24);
- v48 = ((5280422195435849039i64 * ((v47 >> 39) ^ v47)) >> 22) ^ (5280422195435849039i64
- * ((v47 >> 39) ^ v47));
- v24 = (v48 >> 44) ^ v48;
- }
- else
- {
- switch ( v42 )
- {
- case 0x1AA121F4ui64:
- k ^= 0x8D6756ED031E4062ui64;
- v24 *= *(_QWORD *)(_byteswap_uint64(qword_7FF6B477F0E7 ^ __ROL8__(
- (retaddr - 140697495668226i64) & 0xFFFFFFFFC0000000ui64,
- 16))
- + 15);
- v39 = v41 ^ 0xCF68157FBA8C50CBui64;
- break;
- case 0x40867F26ui64:
- v45 = (((v24 >> 10) ^ v24) >> 20) ^ (v24 >> 10) ^ v24;
- v24 = (v45 >> 40) ^ v45;
- v39 = v41 ^ 0x3FB2FF462DBA58Di64;
- k ^= 0x69A1A0C84E948F04ui64;
- break;
- case 0x471982DCui64:
- v39 = v41 ^ 0xC5D6C408501632D3ui64;
- v43 = -8377912012467172519i64 * ((((v24 >> 27) ^ v24) >> 54) ^ (v24 >> 27) ^ v24);
- v44 = (((v43 >> 11) ^ v43) >> 22) ^ (v43 >> 11) ^ v43;
- v24 = (v44 >> 44) ^ v44;
- k ^= 0x1E3711C8F2640D9Bui64;
- break;
- case 0x5D2A5CA5ui64:
- v39 = v41 ^ 0xA22A83AAAC6276DFui64;
- v24 *= -1509226386949305447i64;
- k ^= 0x3049EEC121716F2Bui64;
- break;
- default:
- goto LABEL_349;
- }
- }
- }
- if ( v42 != 3226386781 )
- break;
- v49 = ((((5662335754533349283i64 * v24) >> 7) ^ (5662335754533349283i64 * v24)) >> 14) ^ ((5662335754533349283i64 * v24) >> 7) ^ (5662335754533349283i64 * v24);
- v24 = (((v49 >> 28) ^ v49) >> 56) ^ (v49 >> 28) ^ v49;
- k ^= 0x91B192528A323496ui64;
- v39 = v41 ^ 0x4939B222A8FB9542i64;
- }
- if ( v42 != 3719283305 )
- break;
- k ^= 0xF39F51A5C90DEDD0ui64;
- v39 = v41 ^ 0xE4FF84AF8E3C5E4Cui64;
- v24 ^= (((v24 >> 29) ^ v24) >> 58) ^ (v24 >> 29);
- }
- if ( v42 != 4262162174 )
- break;
- v24 *= -6430604479836921809i64;
- v39 = v41 ^ 0xD0BB0762AA42DA5i64;
- }
- break;
- case 3i64:
- v50 = -8199223539681387400i64;
- for ( l = -6695808074309519221i64; ; l ^= 0xE9310D4FE29BD496ui64 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- v52 = l * v50;
- v53 = v52 >> 32;
- if ( v52 >> 32 > 0x9874E0FA )
- break;
- if ( v52 >> 32 == 2557796602 )
- {
- v50 = v52 ^ 0xB3CE7A4892E9501Bui64;
- l ^= 0x3BB290B5DF955E06ui64;
- v24 *= 4785905751575917559i64;
- }
- else
- {
- switch ( v53 )
- {
- case 0x9CCAB9Fui64:
- v50 = v52 ^ 0x236C8FF21A0E5646i64;
- v24 = -6206281208814314305i64 * ((((v24 >> 24) ^ v24) >> 48) ^ (v24 >> 24) ^ v24);
- l ^= 0xEF08AC1AF0115831ui64;
- break;
- case 0x1692E8C4ui64:
- v54 = (((v24 >> 7) ^ v24) >> 14) ^ (v24 >> 7) ^ v24;
- v24 = (((v54 >> 28) ^ v54) >> 56) ^ (v54 >> 28) ^ v54;
- v50 = v52 ^ 0x137CAA22C81F476Ei64;
- l ^= 0xA34C84535AE1E3E5ui64;
- break;
- case 0x2094B9E9ui64:
- l ^= 0xC397C86649DA306Cui64;
- v50 = v52 ^ 0x580F863DC7B90A7i64;
- v24 ^= (((v24 >> 21) ^ v24) >> 42) ^ (v24 >> 21);
- break;
- case 0x75F27A84ui64:
- v50 = v52 ^ 0xE1B5B511C910862Dui64;
- l ^= 0xCD80038D2C5D067Dui64;
- v24 = ((v24 >> 29) ^ v24 ^ (((v24 >> 29) ^ v24) >> 58))
- * *(_QWORD *)(_byteswap_uint64(qword_7FF6B477F0E7 ^ __ROL8__(
- (retaddr - 140697495668226i64) & 0xFFFFFFFFC0000000ui64,
- 16))
- + 15);
- break;
- case 0x7EB0E5C4ui64:
- v24 ^= (((v24 >> 23) ^ v24) >> 46) ^ (v24 >> 23);
- l ^= 0xC7B0CC4146E514EEui64;
- v50 = v52 ^ 0x6E8060F830F2B6F4i64;
- break;
- default:
- goto LABEL_349;
- }
- }
- }
- if ( v53 != 3027746497 )
- break;
- v50 = v52 ^ 0x8CBF2BA03AE3EFB9ui64;
- v24 = 7460379961060776749i64
- * ((v24 >> 20) ^ v24 ^ (((v24 >> 20) ^ v24) >> 40))
- * *(_QWORD *)(_byteswap_uint64(qword_7FF6B477F0E7 ^ __ROL8__(
- (retaddr - 140697495668226i64) & 0xFFFFFFFFC0000000ui64,
- 16))
- + 23);
- l ^= 0x2008EF7B201400ECui64;
- }
- if ( v53 != 3639855926 )
- break;
- v24 *= 5492991411419967971i64;
- v50 = v52 ^ 0x6067450AFDC22D37i64;
- l ^= 0x7CF544F21D3A9420ui64;
- }
- if ( v53 != v193 )
- break;
- v50 = v52 ^ 0x62FED21EA07C6C95i64;
- l ^= 0xB8C4CB9AF69E4F67ui64;
- v24 ^= (((v24 >> 27) ^ v24) >> 54) ^ (v24 >> 27);
- }
- if ( v53 != v194 )
- break;
- v55 = ((((4783406861034921679i64 * v24) >> 11) ^ (4783406861034921679i64 * v24)) >> 22) ^ ((4783406861034921679i64 * v24) >> 11) ^ (4783406861034921679i64 * v24);
- v24 = (v55 >> 44) ^ v55;
- v50 = v52 ^ 0xBE70AC3ECABA01E5ui64;
- }
- break;
- case 4i64:
- v56 = -4792569926315582079i64;
- for ( m = 6331567886030880093i64; ; m ^= 0xDE6D83DDCB80C9CBui64 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- v58 = m * v56;
- v59 = v58 >> 32;
- if ( v58 >> 32 > 0x7895CF1F )
- break;
- if ( v58 >> 32 == 2023083807 )
- {
- v56 = v58 ^ 0xF70E9165CD715BEDui64;
- m ^= 0x7017A1155F3B5A9Eui64;
- v62 = (((v24 >> 11) ^ v24) >> 22) ^ (v24 >> 11) ^ v24;
- v24 = (v62 >> 44) ^ v62;
- }
- else
- {
- switch ( v59 )
- {
- case 0x34D89BF6ui64:
- v60 = (((v24 >> 15) ^ v24) >> 30) ^ (v24 >> 15) ^ v24;
- v61 = ((2040780944907204167i64 * ((v60 >> 60) ^ v60)) >> 29) ^ (2040780944907204167i64
- * ((v60 >> 60) ^ v60));
- v24 = (v61 >> 58) ^ v61;
- m ^= 0xDAB45D8A379A29B7ui64;
- v56 = v58 ^ 0xF68F1244E397A03Eui64;
- break;
- case 0x442ACAA4ui64:
- v56 = v58 ^ 0x13C455BD30DCC3B9i64;
- v24 *= *(_QWORD *)(_byteswap_uint64(qword_7FF6B477F0E7 ^ __ROL8__(
- (retaddr - 140697495668226i64) & 0xFFFFFFFFC0000000ui64,
- 16))
- + 15);
- m ^= 0xE93EA3D103983B17ui64;
- break;
- case 0x5A3EC12Fui64:
- v56 = v58 ^ 0xE855EE3F6F87C20Aui64;
- m ^= 0xFA710CD10B01AC1Fui64;
- v24 = 3289047642842779179i64
- * ((v24 >> 39) ^ v24 ^ (((v24 >> 39) ^ v24) >> 40))
- * *(_QWORD *)(_byteswap_uint64(qword_7FF6B477F0E7 ^ __ROL8__(
- (retaddr - 140697495668226i64) & 0xFFFFFFFFC0000000ui64,
- 16))
- + 23);
- break;
- case 0x7555AFCFui64:
- m ^= 0xBC7F876D17CC5279ui64;
- v56 = v58 ^ 0xC71670B87CE8E27Cui64;
- v24 = 6503176235905896109i64 * ((((v24 >> 29) ^ v24) >> 58) ^ (v24 >> 29) ^ v24);
- break;
- default:
- goto LABEL_349;
- }
- }
- }
- if ( v59 != 2207400476 )
- break;
- m ^= 0x14A60AECD9B0CAB8ui64;
- v24 *= -1834762094463994739i64;
- v56 = v58 ^ 0x4E12F14B1851B140i64;
- }
- if ( v59 != 2617785378 )
- break;
- m ^= 0xE2E6E05FB788A8A0ui64;
- v56 = v58 ^ 0xD0AB54BF9D020DACui64;
- v24 *= -8109980627839352813i64;
- }
- if ( v59 != 3125587250 )
- break;
- m ^= 0xB20CEF384BD34CB9ui64;
- v56 = v58 ^ 0x6E081A9DB337E541i64;
- v63 = (((v24 >> 7) ^ v24) >> 14) ^ (v24 >> 7) ^ v24;
- v24 = (((v63 >> 28) ^ v63) >> 56) ^ (v63 >> 28) ^ v63;
- }
- if ( v59 != v195 )
- break;
- v56 = v58 ^ 0xE12C8985DC59ADD3ui64;
- v24 = ((((-8759740311228830765i64 * v24) >> 27) ^ (-8759740311228830765i64 * v24)) >> 54) ^ ((-8759740311228830765i64 * v24) >> 27) ^ (-8759740311228830765i64 * v24);
- }
- break;
- case 5i64:
- v64 = 4459338710780996865i64;
- v65 = 7127186921050675669i64;
- while ( 1 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- v66 = v65 * v64;
- v67 = v66 >> 32;
- if ( v66 >> 32 > 0xD0D5BD30 )
- break;
- if ( v66 >> 32 == 3503668528 )
- {
- v24 *= 336192889925717951i64;
- v65 ^= 0x15473399BD30A4C0ui64;
- v64 = v66 ^ 0xE8EF9431D68082E4ui64;
- }
- else
- {
- switch ( v67 )
- {
- case 0xC46044Dui64:
- v64 = v66 ^ 0xA0237178ADBB255Dui64;
- v65 ^= 0xA0CAC2A60FA5944Cui64;
- v24 ^= v24 >> 37;
- break;
- case 0x2540D351ui64:
- v24 ^= (((v24 >> 16) ^ v24) >> 32) ^ (v24 >> 16);
- v64 = v66 ^ 0xD58BED0D0FBECD81ui64;
- v65 ^= 0x7EACBEED0674E4B0ui64;
- break;
- case 0x95E17EB0ui64:
- v64 = v66 ^ 0x91CA4F42B1262271ui64;
- v24 *= -7244230143269580805i64;
- v65 ^= 0xAF9EF9DE1024F538ui64;
- break;
- case 0xB5299836ui64:
- v68 = ((((-943011020006661099i64 * v24) >> 11) ^ (-943011020006661099i64 * v24)) >> 22) ^ ((-943011020006661099i64 * v24) >> 11) ^ (-943011020006661099i64 * v24);
- v24 = (v68 >> 44) ^ v68;
- v65 ^= 0x3662FE416B7BBE86ui64;
- v64 = v66 ^ 0x5EBB9094B288F17Ei64;
- break;
- default:
- goto LABEL_349;
- }
- }
- }
- if ( v67 != v196 )
- break;
- v65 ^= 0x7B7BFB49EF3ECCC2ui64;
- v64 = v66 ^ 0xCB6F134AE222C448ui64;
- v71 = _byteswap_uint64(qword_7FF6B477F0E7 ^ __ROL8__(
- (retaddr - 140697495668226i64) & 0xFFFFFFFFC0000000ui64,
- 16));
- v72 = ((((((((v24 >> 29) ^ v24 ^ (((v24 >> 29) ^ v24) >> 58)) * *(_QWORD *)(v71 + 15)) >> 7) ^ (((v24 >> 29) ^ v24 ^ (((v24 >> 29) ^ v24) >> 58)) * *(_QWORD *)(v71 + 15))) >> 14) ^ ((((v24 >> 29) ^ v24 ^ (((v24 >> 29) ^ v24) >> 58)) * *(_QWORD *)(v71 + 15)) >> 7) ^ (((v24 >> 29) ^ v24 ^ (((v24 >> 29) ^ v24) >> 58)) * *(_QWORD *)(v71 + 15))) >> 28) ^ ((((((v24 >> 29) ^ v24 ^ (((v24 >> 29) ^ v24) >> 58)) * *(_QWORD *)(v71 + 15)) >> 7) ^ (((v24 >> 29) ^ v24 ^ (((v24 >> 29) ^ v24) >> 58)) * *(_QWORD *)(v71 + 15))) >> 14) ^ ((((v24 >> 29) ^ v24 ^ (((v24 >> 29) ^ v24) >> 58)) * *(_QWORD *)(v71 + 15)) >> 7) ^ (((v24 >> 29) ^ v24 ^ (((v24 >> 29) ^ v24) >> 58)) * *(_QWORD *)(v71 + 15));
- v24 = ((((-1688244662202663091i64 * (v72 ^ (v72 >> 56))) >> 27) ^ (-1688244662202663091i64
- * (v72 ^ (v72 >> 56)))) >> 54) ^ ((-1688244662202663091i64 * (v72 ^ (v72 >> 56))) >> 27) ^ (-1688244662202663091i64 * (v72 ^ (v72 >> 56)));
- }
- if ( v67 != v197 )
- break;
- v65 ^= 0xDFB74899A711C51ui64;
- v24 = -8247582998434948587i64 * ((((v24 >> 17) ^ v24) >> 34) ^ (v24 >> 17) ^ v24);
- v64 = v66 ^ 0x5CD0638448741ECAi64;
- }
- if ( v67 != v198 )
- break;
- v65 ^= 0x3C4E3429BE53AE03ui64;
- v64 = v66 ^ 0x528EAA1EA3B66458i64;
- v69 = _byteswap_uint64(qword_7FF6B477F0E7 ^ __ROL8__(
- (retaddr - 140697495668226i64) & 0xFFFFFFFFC0000000ui64,
- 16));
- v70 = ((v199 * *(_QWORD *)(v69 + 15) * v24) >> 13) ^ (v199 * *(_QWORD *)(v69 + 15) * v24);
- v24 = (((v70 >> 26) ^ v70) >> 52) ^ (v70 >> 26) ^ v70;
- }
- break;
- case 6i64:
- v73 = -7398732493571484710i64;
- for ( n = 9001987162538391707i64; ; n ^= 0xC28C4A1143A89E3Cui64 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- v75 = n * v73;
- v76 = v75 >> 32;
- if ( v75 >> 32 > 0x982D3D15 )
- break;
- if ( v75 >> 32 == 2553101589 )
- {
- n ^= 0x188026642AEF464Fui64;
- v73 = v75 ^ 0x76ACD89157898825i64;
- v24 ^= (((v24 >> 18) ^ v24) >> 36) ^ (v24 >> 18);
- }
- else
- {
- switch ( v76 )
- {
- case 0x311B0198ui64:
- n ^= 0xFD41D83A5B4B96A8ui64;
- v24 *= -2109614380019463139i64;
- v73 = v75 ^ 0x95F9053679026580ui64;
- break;
- case 0x48AE0979ui64:
- v73 = v75 ^ 0xF0DCDE6D5803763i64;
- v24 *= *(_QWORD *)(_byteswap_uint64(qword_7FF6B477F0E7 ^ __ROL8__(
- (retaddr - 140697495668226i64) & 0xFFFFFFFFC0000000ui64,
- 16))
- + 15);
- n ^= 0x96E447C1E8AA3A79ui64;
- break;
- case 0x53EBB407ui64:
- v24 = ((-1493949631739276199i64 * v24) >> 39) ^ (-1493949631739276199i64 * v24);
- n ^= 0x69F3D2686873947Eui64;
- v73 = v75 ^ 0x189B7F9B00894494i64;
- break;
- case 0x5DC4537Fui64:
- n ^= 0xEF35F08561536590ui64;
- v73 = v75 ^ 0x295E00D6142F4EDBi64;
- v77 = ((((-7857210738437638929i64 * v24) >> 14) ^ (-7857210738437638929i64 * v24)) >> 28) ^ ((-7857210738437638929i64 * v24) >> 14) ^ (-7857210738437638929i64 * v24);
- v24 = (v77 >> 56) ^ v77;
- break;
- case 0x660CB1E1ui64:
- v24 = (v24 ^ (v24 >> 39))
- * *(_QWORD *)(_byteswap_uint64(qword_7FF6B477F0E7 ^ __ROL8__(
- (retaddr - 140697495668226i64) & 0xFFFFFFFFC0000000ui64,
- 16))
- + 9);
- v73 = v75 ^ 0xF5CD1E9C5958BDEi64;
- n ^= 0x6908E264D737AAB3ui64;
- break;
- default:
- goto LABEL_349;
- }
- }
- }
- if ( v76 != 2842054029 )
- break;
- v24 = ((((6144968352636790459i64 * v24) >> 29) ^ (6144968352636790459i64 * v24)) >> 58) ^ ((6144968352636790459i64 * v24) >> 29) ^ (6144968352636790459i64 * v24);
- v73 = v75 ^ 0xBFDB08F8C14416A3ui64;
- n ^= 0xEFF810CBE96BF0D9ui64;
- }
- if ( v76 != 3604554822 )
- break;
- v24 *= 5312557318082620321i64;
- v73 = v75 ^ 0x358D9B9F3990F3EBi64;
- n ^= 0x39BB62E420D75202ui64;
- }
- if ( v76 != v200 )
- break;
- n ^= 0x361C26DC3AD54C9ui64;
- v79 = (((v24 >> 7) ^ v24) >> 14) ^ (v24 >> 7) ^ v24;
- v80 = -2053725849177079477i64 * ((((v79 >> 28) ^ v79) >> 56) ^ (v79 >> 28) ^ v79);
- v24 = (((v80 >> 27) ^ v80) >> 54) ^ (v80 >> 27) ^ v80;
- v73 = v75 ^ 0xDCB65D3CE0E3DD8Bui64;
- }
- if ( v76 != v201 )
- break;
- v73 = v75 ^ 0x6A78737E6C745A32i64;
- v78 = (((v24 >> 11) ^ v24) >> 22) ^ (v24 >> 11) ^ v24;
- v24 = (v78 >> 44) ^ v78;
- }
- break;
- case 7i64:
- v81 = 1333530525518412320i64;
- for ( ii = 8025137757419471934i64; ; ii ^= 0xED570C10B5C5F4FDui64 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- v83 = ii * v81;
- v84 = v83 >> 32;
- if ( v83 >> 32 > 0xD7C0EEBA )
- break;
- if ( v83 >> 32 == 3619745466 )
- {
- v81 = v83 ^ 0x772D3A09884C0D6Ci64;
- ii ^= 0xFE2333B1F5807B5Dui64;
- v87 = 8951811467789086437i64
- * (((((-1429920376899690725i64 * v24) >> 29) ^ (-1429920376899690725i64 * v24)) >> 58) ^ ((-1429920376899690725i64 * v24) >> 29) ^ (-1429920376899690725i64 * v24));
- v88 = (((v87 >> 7) ^ v87) >> 14) ^ (v87 >> 7) ^ v87;
- v24 = (((v88 >> 28) ^ v88) >> 56) ^ (v88 >> 28) ^ v88;
- }
- else
- {
- switch ( v84 )
- {
- case 0x3582FDAAui64:
- v81 = v83 ^ 0x9DF7AC5ACFF440D4ui64;
- ii ^= 0xDA74B6592EF73991ui64;
- v86 = (((v24 >> 23) ^ v24) >> 46) ^ (v24 >> 23) ^ v24;
- v24 = 4941283169347710027i64 * ((((v86 >> 18) ^ v86) >> 36) ^ (v86 >> 18) ^ v86);
- break;
- case 0xBCC4FBBDui64:
- ii ^= 0x1BD40EDC7636AAD7ui64;
- v81 = v83 ^ 0xE118EA6D47D19CB8ui64;
- v24 *= *(_QWORD *)(_byteswap_uint64(qword_7FF6B477F0E7 ^ __ROL8__(
- (retaddr - 140697495668226i64) & 0xFFFFFFFFC0000000ui64,
- 16))
- + 15);
- break;
- case 0xD6A61658ui64:
- ii ^= 0x2E2370EEC3C2D235ui64;
- v85 = (((v24 >> 11) ^ v24) >> 22) ^ (v24 >> 11) ^ v24;
- v24 = (v85 >> 44) ^ v85;
- v81 = v83 ^ 0x565B74AFA88AF6CFi64;
- break;
- default:
- goto LABEL_349;
- }
- }
- }
- if ( v84 != v202 )
- break;
- ii ^= 0x6FDB0CD8F63B4292ui64;
- v81 = v83 ^ 0xE3FA5293440FB4Ci64;
- v89 = _byteswap_uint64(qword_7FF6B477F0E7 ^ __ROL8__(
- (retaddr - 140697495668226i64) & 0xFFFFFFFFC0000000ui64,
- 16));
- v90 = ((*(_QWORD *)(v89 + 5) * v24) >> 24) ^ (*(_QWORD *)(v89 + 5) * v24);
- v91 = ((-3820396914168413641i64 * ((v90 >> 48) ^ v90)) >> 16) ^ (-3820396914168413641i64
- * ((v90 >> 48) ^ v90));
- v24 = (v91 >> 32) ^ v91;
- }
- if ( v84 != v203 )
- break;
- v81 = v83 ^ 0x4839BE535114148i64;
- v24 = ((((-8019405126481567907i64 * v24) >> 27) ^ (-8019405126481567907i64 * v24)) >> 54) ^ ((-8019405126481567907i64 * v24) >> 27) ^ (-8019405126481567907i64 * v24);
- }
- break;
- case 8i64:
- v92 = -2932430360038040729i64;
- for ( jj = -5249567968413747519i64; ; jj ^= 0xC265578D50FAFA47ui64 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- v94 = jj * v92;
- v95 = v94 >> 32;
- if ( v94 >> 32 > 0xA7660FEB )
- break;
- if ( v94 >> 32 == 2808483819 )
- {
- v92 = v94 ^ 0xFCD7345CE1BFBB72ui64;
- v98 = 1112717656319520027i64 * ((((v24 >> 27) ^ v24) >> 54) ^ (v24 >> 27) ^ v24);
- v99 = (((v98 >> 11) ^ v98) >> 22) ^ (v98 >> 11) ^ v98;
- v24 = (v99 >> 44) ^ v99;
- jj ^= 0x9668C467EC9418EEui64;
- }
- else
- {
- switch ( v95 )
- {
- case 0x24DC0BCEui64:
- v96 = _byteswap_uint64(qword_7FF6B477F0E7 ^ __ROL8__(
- (retaddr - 140697495668226i64) & 0xFFFFFFFFC0000000ui64,
- 16));
- v97 = ((*(_QWORD *)(v96 + 15) * v24) >> 29) ^ (*(_QWORD *)(v96 + 15) * v24);
- v24 = (v97 >> 58) ^ v97;
- v92 = v94 ^ 0x51BE89D1B1D6AD3Ci64;
- jj ^= 0xEB81D22AFBB69F4Aui64;
- break;
- case 0x3534DFAEui64:
- v92 = v94 ^ 0xC5C7FEC581F09E8i64;
- jj ^= 0x9E6DFD3935CEDBD7ui64;
- v24 *= 6166985448911391549i64;
- break;
- case 0x5BC3F50Cui64:
- jj ^= 0x2F0530BC8858D46Fui64;
- v24 ^= (((v24 >> 30) ^ v24) >> 60) ^ (v24 >> 30);
- v92 = v94 ^ 0x6E37180D474DEE4Ci64;
- break;
- case 0x85A3D06Aui64:
- jj ^= 0xE8504910B4224CE9ui64;
- v24 ^= v24 >> 32;
- v92 = v94 ^ 0xBFA02F348DEA70Ei64;
- break;
- default:
- goto LABEL_349;
- }
- }
- }
- if ( v95 != 3296448727 )
- break;
- v24 = 540826593939459249i64 * ((((v24 >> 21) ^ v24) >> 42) ^ (v24 >> 21) ^ v24);
- jj ^= 0x16D814113EE0EE78ui64;
- v92 = v94 ^ 0x72174741AEC8B321i64;
- }
- if ( v95 != v204 )
- break;
- v92 = v94 ^ 0x5D86F8A13ACB8E37i64;
- jj ^= 0x6CF9AC50CE0D4740ui64;
- v101 = ((((1852138900100605129i64 * v24) >> 7) ^ (1852138900100605129i64 * v24)) >> 14) ^ ((1852138900100605129i64 * v24) >> 7) ^ (1852138900100605129i64 * v24);
- v24 = 6192553499324514553i64 * ((((v101 >> 28) ^ v101) >> 56) ^ (v101 >> 28) ^ v101);
- }
- if ( v95 != v205 )
- break;
- v24 *= v207
- * *(_QWORD *)(_byteswap_uint64(qword_7FF6B477F0E7 ^ __ROL8__(
- (retaddr - 140697495668226i64) & 0xFFFFFFFFC0000000ui64,
- 16))
- + 9);
- v92 = v94 ^ 0xE02AF36CC3A31234ui64;
- jj ^= 0xE2C1C7F3EB4222C0ui64;
- }
- if ( v95 != v206 )
- break;
- v92 = v94 ^ 0x5002AF9DBB206DADi64;
- v100 = (((v24 >> 10) ^ v24) >> 20) ^ (v24 >> 10) ^ v24;
- v24 = (v100 >> 40) ^ v100;
- }
- break;
- case 9i64:
- v102 = 3960825622644286627i64;
- for ( kk = 1777501008533235411i64; ; kk ^= 0xB73ECAD0713080FAui64 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- v104 = kk * v102;
- v105 = v104 >> 32;
- if ( v104 >> 32 > 0x784D3C0F )
- break;
- if ( v104 >> 32 == 2018327567 )
- {
- v102 = v104 ^ 0xD2912106DA865886ui64;
- kk ^= 0x21744047918825A6ui64;
- v24 *= *(_QWORD *)(_byteswap_uint64(qword_7FF6B477F0E7 ^ __ROL8__(
- (retaddr - 140697495668226i64) & 0xFFFFFFFFC0000000ui64,
- 16))
- + 7);
- }
- else
- {
- switch ( v105 )
- {
- case 0x1F582055ui64:
- v102 = v104 ^ 0x94E7C804F872A20Eui64;
- v109 = (((v24 >> 7) ^ v24) >> 14) ^ (v24 >> 7) ^ v24;
- v24 = (((v109 >> 28) ^ v109) >> 56) ^ (v109 >> 28) ^ v109;
- kk ^= 0xA1BDD2DBD8AF4D63ui64;
- break;
- case 0x23968BC5ui64:
- v107 = _byteswap_uint64(qword_7FF6B477F0E7 ^ __ROL8__(
- (retaddr - 140697495668226i64) & 0xFFFFFFFFC0000000ui64,
- 16));
- v108 = ((*(_QWORD *)(v107 + 15) * v24) >> 27) ^ (*(_QWORD *)(v107 + 15) * v24);
- v24 = (v108 >> 54) ^ v108;
- kk ^= 0xBE80BECC32600B70ui64;
- v102 = v104 ^ 0xEC93027DD9E299AFui64;
- break;
- case 0x29D99B2Cui64:
- v102 = v104 ^ 0xE27BDEB799BFDE9Eui64;
- kk ^= 0xB3E196876FDDAB7Fui64;
- v24 = ((((8992064848466434611i64 * v24) >> 29) ^ (8992064848466434611i64 * v24)) >> 58) ^ ((8992064848466434611i64 * v24) >> 29) ^ (8992064848466434611i64 * v24);
- break;
- case 0x2D8A73D9ui64:
- v24 *= 8750005159007868479i64;
- kk ^= 0x7621BF1B7B58DCFDui64;
- v102 = v104 ^ 0x7526FECE34249378i64;
- break;
- case 0x6D7C72D8ui64:
- kk ^= 0x2E04DEB58C61343Eui64;
- v106 = (((v24 >> 11) ^ v24) >> 22) ^ (v24 >> 11) ^ v24;
- v24 = (v106 >> 44) ^ v106;
- v102 = v104 ^ 0xDF3272AF6EBE615i64;
- break;
- default:
- goto LABEL_349;
- }
- }
- }
- if ( v105 != 2077498612 )
- break;
- v102 = v104 ^ 0x437665595636CCF9i64;
- kk ^= 0x9E1422E64074A8CEui64;
- v112 = ((((977728600027576415i64 * v24) >> 10) ^ (977728600027576415i64 * v24)) >> 20) ^ ((977728600027576415i64 * v24) >> 10) ^ (977728600027576415i64 * v24);
- v24 = (v112 >> 40) ^ v112;
- }
- if ( v105 != 3127954577 )
- break;
- v102 = v104 ^ 0x67A25CAF9859DB8Ci64;
- v24 *= 5189965540734827447i64;
- kk ^= 0x7FC8057613801A17ui64;
- }
- if ( v105 != 3563466314 )
- break;
- v102 = v104 ^ 0xE589139B7B5A93F1ui64;
- kk ^= 0xF8877C96D895E015ui64;
- v110 = (((v24 >> 28) ^ v24) >> 56) ^ (v24 >> 28) ^ v24;
- v111 = (((v110 >> 19) ^ v110) >> 38) ^ (v110 >> 19) ^ v110;
- v24 = -3161833119865538159i64 * ((((v111 >> 18) ^ v111) >> 36) ^ (v111 >> 18) ^ v111);
- }
- if ( v105 != 3600984273 )
- break;
- v24 *= -7363273072568260977i64;
- v102 = v104 ^ 0xA9377F114C37ECC9ui64;
- }
- break;
- case 0xAi64:
- v113 = -682294824669924502i64;
- for ( ll = 695649587631130364i64; ; ll ^= 0xB2F3DC13BCA03E98ui64 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- v115 = ll * v113;
- v116 = v115 >> 32;
- if ( v115 >> 32 > 0xAAC919C6 )
- break;
- if ( v115 >> 32 == 2865306054 )
- {
- v24 = ((v24 >> 17) ^ v24 ^ (((v24 >> 17) ^ v24) >> 34))
- * *(_QWORD *)(_byteswap_uint64(qword_7FF6B477F0E7 ^ __ROL8__(
- (retaddr - 140697495668226i64) & 0xFFFFFFFFC0000000ui64,
- 16))
- + 23);
- ll ^= 0x4199793136BADECCui64;
- v113 = v115 ^ 0x2DDAB05A994384C7i64;
- }
- else
- {
- switch ( v116 )
- {
- case 0x405C067ui64:
- ll ^= 0x87727ED0D8AB034Eui64;
- v118 = _byteswap_uint64(qword_7FF6B477F0E7 ^ __ROL8__(
- (retaddr - 140697495668226i64) & 0xFFFFFFFFC0000000ui64,
- 16));
- v119 = ((*(_QWORD *)(v118 + 15) * v24) >> 27) ^ (*(_QWORD *)(v118 + 15) * v24);
- v24 = (v119 >> 54) ^ v119;
- v113 = v115 ^ 0xC97D3C7BFD2652D3ui64;
- break;
- case 0x393E0A2Bui64:
- ll ^= 0x40C85CCF3ED60E4Dui64;
- v113 = v115 ^ 0x8BCFED01426E784Aui64;
- v24 *= -8858708164294822085i64;
- break;
- case 0x5B3140FCui64:
- v113 = v115 ^ 0xFECCA34355F25CE1ui64;
- ll ^= 0xA5E56C0801F11328ui64;
- v24 *= -8870005730456609813i64;
- break;
- case 0x663380D9ui64:
- v117 = (((v24 >> 7) ^ v24) >> 14) ^ (v24 >> 7) ^ v24;
- v24 = (((v117 >> 28) ^ v117) >> 56) ^ (v117 >> 28) ^ v117;
- ll ^= 0xB852CE9FCD6E9FCui64;
- v113 = v115 ^ 0x3251A067437332B4i64;
- break;
- case 0x77D118B6ui64:
- v113 = v115 ^ 0x13DB03DF9B4B1BC9i64;
- ll ^= 0x43D95A9971D4E40Cui64;
- v24 *= -3785550148047728627i64;
- break;
- default:
- goto LABEL_349;
- }
- }
- }
- if ( v116 != 3241268013 )
- break;
- v24 ^= (((v24 >> 35) ^ v24) >> 32) ^ (v24 >> 35);
- ll ^= 0x4DA11CC9C1C59C43ui64;
- v113 = v115 ^ 0x3B65980472D5FEE9i64;
- }
- if ( v116 != 3709714989 )
- break;
- v113 = v115 ^ 0xAC0E4114052002A9ui64;
- ll ^= 0x4A59187D5446958Bui64;
- v24 = 1195875874141242735i64 * ((((v24 >> 29) ^ v24) >> 58) ^ (v24 >> 29) ^ v24);
- }
- if ( v116 != v208 )
- break;
- v120 = (((v24 >> 11) ^ v24) >> 22) ^ (v24 >> 11) ^ v24;
- v24 = (v120 >> 44) ^ v120;
- ll ^= 0x2272C1815DFA0212ui64;
- v113 = v115 ^ 0x1709260F5BC238C0i64;
- }
- if ( v116 != v209 )
- break;
- ll ^= 0xB9CE21EE1A998B68ui64;
- v113 = v115 ^ 0x93C624873256476Aui64;
- v24 ^= v24 >> 34;
- }
- if ( v116 != v210 )
- break;
- v24 *= -677398041349867365i64;
- v113 = v115 ^ 0x22CE0CE0A604C166i64;
- }
- break;
- case 0xBi64:
- v121 = 8780329311882516552i64;
- for ( mm = -4259947316149521195i64; ; mm ^= 0x7A5EA2765DAAA9E3ui64 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- v123 = mm * v121;
- v124 = v123 >> 32;
- if ( v123 >> 32 > 0x7FB4FE7D )
- break;
- if ( v123 >> 32 == 2142568061 )
- {
- v121 = v123 ^ 0xD51454272C150653ui64;
- mm ^= 0xA070C6F2317453Cui64;
- v128 = (((v24 >> 7) ^ v24) >> 14) ^ (v24 >> 7) ^ v24;
- v24 = (((v128 >> 28) ^ v128) >> 56) ^ (v128 >> 28) ^ v128;
- }
- else
- {
- switch ( v124 )
- {
- case 0xD1ACB70ui64:
- mm ^= 0x752907F37446B01Dui64;
- v121 = v123 ^ 0x2CC2FC4A8751064Fi64;
- v24 *= v211
- * *(_QWORD *)(_byteswap_uint64(qword_7FF6B477F0E7 ^ __ROL8__(
- (retaddr - 140697495668226i64) & 0xFFFFFFFFC0000000ui64,
- 16))
- + 9);
- break;
- case 0x233D97ACui64:
- v24 ^= (((v24 >> 27) ^ v24) >> 54) ^ (v24 >> 27);
- mm ^= 0x7263B9B2736F74F9ui64;
- v121 = v123 ^ 0x2F431E4113AFEF74i64;
- break;
- case 0x712822C2ui64:
- mm ^= 0xA6BE4BA6AF43E6ECui64;
- v24 ^= v24 >> 39;
- v121 = v123 ^ 0xFC80FDF68ED1F8B9ui64;
- break;
- case 0x793A4211ui64:
- v121 = v123 ^ 0xAEF94494108F846Eui64;
- mm ^= 0xD67259CDEADD63F6ui64;
- v125 = (((v24 >> 18) ^ v24) >> 36) ^ (v24 >> 18) ^ v24;
- v126 = (((v125 >> 15) ^ v125) >> 30) ^ (v125 >> 15) ^ v125;
- v127 = ((3480673768226165385i64 * ((v126 >> 60) ^ v126)) >> 10) ^ (3480673768226165385i64
- * ((v126 >> 60) ^ v126));
- v24 = (((v127 >> 20) ^ v127) >> 40) ^ (v127 >> 20) ^ v127;
- break;
- case 0x7F6BE762ui64:
- v24 *= -7469824294432962065i64;
- v121 = v123 ^ 0x1F14B73C95306E19i64;
- mm ^= 0xA77F42376D2BEF8Dui64;
- break;
- default:
- goto LABEL_349;
- }
- }
- }
- if ( v124 != 2827828761 )
- break;
- v121 = v123 ^ 0x887833AFE1990673ui64;
- mm ^= 0xC017667A988324F9ui64;
- v24 = ((((2518229445921316307i64 * v24) >> 29) ^ (2518229445921316307i64 * v24)) >> 58) ^ ((2518229445921316307i64 * v24) >> 29) ^ (2518229445921316307i64 * v24);
- }
- if ( v124 != 3046114959 )
- break;
- mm ^= 0x8BF351CC75916482ui64;
- v121 = v123 ^ 0x8DC45EBFAB1EB7C2ui64;
- v129 = ((((8674280700031569843i64 * v24) >> 11) ^ (8674280700031569843i64 * v24)) >> 22) ^ ((8674280700031569843i64 * v24) >> 11) ^ (8674280700031569843i64 * v24);
- v24 = (v129 >> 44) ^ v129;
- }
- if ( v124 != 3676293227 )
- break;
- v121 = v123 ^ 0xCDF8AF565EBCF898ui64;
- mm ^= 0x6AF4D83368A63686ui64;
- v24 *= *(_QWORD *)(_byteswap_uint64(qword_7FF6B477F0E7 ^ __ROL8__(
- (retaddr - 140697495668226i64) & 0xFFFFFFFFC0000000ui64,
- 16))
- + 15);
- }
- if ( v124 != v212 )
- break;
- v24 *= 6273309284213786179i64;
- v121 = v123 ^ 0x2E3942E8C5D0DC99i64;
- }
- break;
- case 0xCi64:
- v130 = -1875004491171143419i64;
- for ( nn = 4827439506710576627i64; ; nn ^= 0xF0F91A33B2109DF5ui64 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- v132 = nn * v130;
- v133 = v132 >> 32;
- if ( v132 >> 32 > 0x4676213F )
- break;
- if ( v132 >> 32 == 1182146879 )
- {
- v130 = v132 ^ 0xEC724F39913B8767ui64;
- nn ^= 0x5A2C37CB08273CECui64;
- v24 *= -9061502868352138697i64;
- }
- else
- {
- switch ( v133 )
- {
- case 0x149C496ui64:
- v24 = ((4639429139621718119i64 * ((v24 >> 36) ^ v24)) >> 40) ^ (4639429139621718119i64
- * ((v24 >> 36) ^ v24));
- nn ^= 0x966FB0DF5B3D4ui64;
- v130 = v132 ^ 0x8133430B1D172A55ui64;
- break;
- case 0xDD44A05ui64:
- v130 = v132 ^ 0xA9E3B196FD5F3EEBui64;
- v24 = ((((1024990206770019591i64 * v24) >> 27) ^ (1024990206770019591i64 * v24)) >> 54) ^ ((1024990206770019591i64 * v24) >> 27) ^ (1024990206770019591i64 * v24);
- nn ^= 0x9C191738A11AF5DDui64;
- break;
- case 0x2CC59774ui64:
- nn ^= 0xBA0F1BE6210F059Eui64;
- v130 = v132 ^ 0xD910B4F2D6FDECE8ui64;
- v134 = ((((-1606407180946172063i64 * v24) >> 7) ^ (-1606407180946172063i64 * v24)) >> 14) ^ ((-1606407180946172063i64 * v24) >> 7) ^ (-1606407180946172063i64 * v24);
- v24 = (((v134 >> 28) ^ v134) >> 56) ^ (v134 >> 28) ^ v134;
- break;
- case 0x3213602Dui64:
- v130 = v132 ^ 0xB85271E65942F45Eui64;
- nn ^= 0x4989B0AB0C01CB9Aui64;
- v24 = ((((-167761684748693155i64 * v24) >> 29) ^ (-167761684748693155i64 * v24)) >> 58) ^ ((-167761684748693155i64 * v24) >> 29) ^ (-167761684748693155i64 * v24);
- break;
- default:
- goto LABEL_349;
- }
- }
- }
- if ( v133 != 1321162259 )
- break;
- nn ^= 0x4FF0A3C29BEC8D26ui64;
- v24 ^= (((v24 >> 18) ^ v24) >> 36) ^ (v24 >> 18);
- v130 = v132 ^ 0x2AAA839D10DCB5F1i64;
- }
- if ( v133 != 2616666008 )
- break;
- v136 = _byteswap_uint64(qword_7FF6B477F0E7 ^ __ROL8__(
- (retaddr - 140697495668226i64) & 0xFFFFFFFFC0000000ui64,
- 16));
- v137 = ((*(_QWORD *)(v136 + 25) * v24) >> 13) ^ (*(_QWORD *)(v136 + 25) * v24);
- v24 = (((v137 >> 26) ^ v137) >> 52) ^ (v137 >> 26) ^ v137;
- v130 = v132 ^ 0x42350829FF92D531i64;
- nn ^= 0x68A536728912C581ui64;
- }
- if ( v133 != 2695055919 )
- break;
- nn ^= 0x9D1A07381C2C60C5ui64;
- v24 *= *(_QWORD *)(_byteswap_uint64(qword_7FF6B477F0E7 ^ __ROL8__(
- (retaddr - 140697495668226i64) & 0xFFFFFFFFC0000000ui64,
- 16))
- + 15);
- v130 = v132 ^ 0x39274F726FF5761Di64;
- }
- if ( v133 != 2935818678 )
- break;
- v130 = v132 ^ 0x5C5EB2CE147D3D62i64;
- v135 = (((v24 >> 11) ^ v24) >> 22) ^ (v24 >> 11) ^ v24;
- v24 = (v135 >> 44) ^ v135;
- }
- break;
- case 0xDi64:
- v138 = -8232296637760703041i64;
- for ( i1 = 8514518569312246028i64; ; i1 ^= 0xD290D3A51E206A3Dui64 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- v140 = i1 * v138;
- v141 = v140 >> 32;
- if ( v140 >> 32 > 0x9968F376 )
- break;
- if ( v140 >> 32 == 2573792118 )
- {
- i1 ^= 0x409CD24B16126272ui64;
- v24 ^= v24 >> 35;
- v138 = v140 ^ 0x8EE0A7F1609F3599ui64;
- }
- else if ( v141 > 0x5059DC10 )
- {
- switch ( v141 )
- {
- case 0x66AB7EC0ui64:
- i1 ^= 0x1D222DC8E3798E86ui64;
- v138 = v140 ^ 0xDA58F292D8E540Bi64;
- v24 ^= v24 >> 33;
- break;
- case 0x69A7C967ui64:
- v144 = _byteswap_uint64(qword_7FF6B477F0E7 ^ __ROL8__(
- (retaddr - 140697495668226i64) & 0xFFFFFFFFC0000000ui64,
- 16));
- v145 = ((*(_QWORD *)(v144 + 15) * v24) >> 29) ^ (*(_QWORD *)(v144 + 15) * v24);
- v24 = (v145 >> 58) ^ v145;
- i1 ^= 0x3E24BDC6AEC66B77ui64;
- v138 = v140 ^ 0x20668681DC17DD99i64;
- break;
- case 0x9669AA56ui64:
- i1 ^= 0xABC4DD6BB18FD606ui64;
- v143 = (((v24 >> 7) ^ v24) >> 14) ^ (v24 >> 7) ^ v24;
- v24 = (((v143 >> 28) ^ v143) >> 56) ^ (v143 >> 28) ^ v143;
- v138 = v140 ^ 0x94EFBDDF17BDEB50ui64;
- break;
- default:
- goto LABEL_349;
- }
- }
- else
- {
- switch ( v141 )
- {
- case 0x5059DC10ui64:
- v138 = v140 ^ 0x6E7B1E907657063Fi64;
- i1 ^= 0xC7E2D7BC3D7C8E32ui64;
- v24 *= 1478166254190517627i64;
- break;
- case 0x10B94353ui64:
- v138 = v140 ^ 0x7CC7FC58879E960Ei64;
- i1 ^= 0x809F29A638067831ui64;
- v24 *= *(_QWORD *)(_byteswap_uint64(qword_7FF6B477F0E7 ^ __ROL8__(
- (retaddr - 140697495668226i64) & 0xFFFFFFFFC0000000ui64,
- 16))
- + 5);
- break;
- case 0x140E7107ui64:
- v142 = (((v24 >> 11) ^ v24) >> 22) ^ (v24 >> 11) ^ v24;
- v24 = (v142 >> 44) ^ v142;
- i1 ^= 0x203C7B0E00FB4DAFui64;
- v138 = v140 ^ 0x6008AF2E36AF6F8Ei64;
- break;
- case 0x19AF53CBui64:
- i1 ^= 0x22C6C9AB59A5B7B3ui64;
- v138 = v140 ^ 0xA71CCC718E23C536ui64;
- v24 = -721208409989132385i64 * ((((v24 >> 27) ^ v24) >> 54) ^ (v24 >> 27) ^ v24);
- break;
- default:
- goto LABEL_349;
- }
- }
- }
- if ( v141 > 0xC4F7AC17 )
- break;
- if ( v141 == 3304565783 )
- {
- i1 ^= 0x72175ECA2BEEE19Dui64;
- v146 = (((v24 >> 12) ^ v24) >> 24) ^ (v24 >> 12) ^ v24;
- v24 = (v146 >> 48) ^ v146;
- v138 = v140 ^ 0xDBBBA9AEBD45FE3Fui64;
- }
- else if ( v141 == v213 )
- {
- v24 *= -4125721857666736939i64;
- v138 = v140 ^ 0x8DC670CB483C1630ui64;
- i1 ^= 0x4109F2A0251A19A8ui64;
- }
- else if ( v141 == v214 )
- {
- v24 *= 3941096854417588179i64;
- v138 = v140 ^ 0xD67821D593C74BD3ui64;
- i1 ^= 0x7C8B53D99DA82D52ui64;
- }
- else
- {
- if ( v141 != v215 )
- goto LABEL_349;
- v138 = v140 ^ 0xD6582EF511B41525ui64;
- i1 ^= 0x9727A4847433BEC8ui64;
- v24 ^= (((v24 >> 16) ^ v24) >> 32) ^ (v24 >> 16);
- }
- }
- if ( v141 != v216 )
- break;
- i1 ^= 0x78AA22920D52D709ui64;
- v138 = v140 ^ 0xA5FD6FA5046930DFui64;
- v24 *= -6085206666103071795i64;
- }
- if ( v141 != v217 )
- break;
- v138 = v140 ^ 0xAEC480BEA8A3555Fui64;
- v24 *= 9010486868665291743i64;
- }
- break;
- case 0xEi64:
- v147 = 8433762652316053170i64;
- for ( i2 = 7508765463061684603i64; ; i2 ^= 0x3C4E0B72D7B6F315ui64 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- v149 = i2 * v147;
- v150 = v149 >> 32;
- if ( v149 >> 32 > 0xA56E3FFD )
- break;
- if ( v149 >> 32 == 2775465981 )
- {
- i2 ^= 0x27D34DB52D42A3F1ui64;
- v147 = v149 ^ 0x65AE47EFCD002F6Ai64;
- v155 = (((v24 >> 26) ^ v24) >> 52) ^ (v24 >> 26) ^ v24;
- v156 = (((v155 >> 11) ^ v155) >> 22) ^ (v155 >> 11) ^ v155;
- v24 = (v156 >> 44) ^ v156;
- }
- else
- {
- switch ( v150 )
- {
- case 0x940CDF6ui64:
- v147 = v149 ^ 0x653250D42388D59Ei64;
- i2 ^= 0x1C50075DEBA6D16Aui64;
- v153 = ((((143742594519471021i64 * v24) >> 7) ^ (143742594519471021i64 * v24)) >> 14) ^ ((143742594519471021i64 * v24) >> 7) ^ (143742594519471021i64 * v24);
- v154 = ((v153 >> 28) ^ v153 ^ (((v153 >> 28) ^ v153) >> 56))
- * *(_QWORD *)(_byteswap_uint64(qword_7FF6B477F0E7 ^ __ROL8__(
- (retaddr - 140697495668226i64) & 0xFFFFFFFFC0000000ui64,
- 16))
- + 15);
- v24 = 4992854581231400237i64 * ((v154 >> 27) ^ v154 ^ (((v154 >> 27) ^ v154) >> 54));
- break;
- case 0x4A7ED3AEui64:
- v147 = v149 ^ 0x248E3FAF6572C2FFi64;
- i2 ^= 0xD6E7A7430C4BCBFCui64;
- v152 = (((v24 >> 11) ^ v24) >> 22) ^ (v24 >> 11) ^ v24;
- v24 = (v152 >> 44) ^ v152;
- break;
- case 0x8ED1C80Eui64:
- i2 ^= 0xB096A1DCE3285D62ui64;
- v151 = ((((7481711191108465607i64 * v24) >> 23) ^ (7481711191108465607i64 * v24)) >> 46) ^ ((7481711191108465607i64 * v24) >> 23) ^ (7481711191108465607i64 * v24);
- v24 = (v151 >> 40) ^ v151;
- v147 = v149 ^ 0x88CE7601BEC6F358ui64;
- break;
- case 0x9125828Aui64:
- v147 = v149 ^ 0x9C7B3D5E39C2A2F2ui64;
- i2 ^= 0x52C8574908D37EA3ui64;
- v24 *= *(_QWORD *)(_byteswap_uint64(qword_7FF6B477F0E7 ^ __ROL8__(
- (retaddr - 140697495668226i64) & 0xFFFFFFFFC0000000ui64,
- 16))
- + 11);
- break;
- default:
- goto LABEL_349;
- }
- }
- }
- if ( v150 != v218 )
- break;
- v147 = v149 ^ 0xB006BA5C0C340AA8ui64;
- i2 ^= 0x975F885FB33B25B3ui64;
- v24 *= 1712293817226564145i64;
- }
- if ( v150 != v219 )
- break;
- v24 *= -7094718117121255671i64;
- i2 ^= 0xF17D313369D2E71ui64;
- v147 = v149 ^ 0x4E75551EFDEC07AAi64;
- }
- if ( v150 != v220 )
- break;
- v147 = v149 ^ 0xD56D1BE70DDE7C29ui64;
- v24 = ((((-2369779144010228985i64 * v24) >> 29) ^ (-2369779144010228985i64 * v24)) >> 58) ^ ((-2369779144010228985i64 * v24) >> 29) ^ (-2369779144010228985i64 * v24);
- }
- break;
- default:
- v157 = -2426703130255704102i64;
- for ( i3 = 2282961890261750055i64; ; i3 ^= 0x87398E8B1F02D6B8ui64 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- while ( 1 )
- {
- v159 = i3 * v157;
- v160 = v159 >> 32;
- if ( v159 >> 32 > 0x76DB88F0 )
- break;
- if ( v159 >> 32 == 1994098928 )
- {
- v163 = _byteswap_uint64(qword_7FF6B477F0E7 ^ __ROL8__(
- (retaddr - 140697495668226i64) & 0xFFFFFFFFC0000000ui64,
- 16));
- v164 = ((*(_QWORD *)(v163 + 5) * v24) >> 30) ^ (*(_QWORD *)(v163 + 5) * v24);
- v165 = (((v164 >> 60) ^ v164) >> 27) ^ (v164 >> 60) ^ v164;
- v24 = (v165 >> 54) ^ v165;
- i3 ^= 0x1D87B70BEA49E907ui64;
- v157 = v159 ^ 0xE6B402A73D0F5B9Fui64;
- }
- else
- {
- switch ( v160 )
- {
- case 0xCA757AFui64:
- i3 ^= 0x4D0144556DB6F64Dui64;
- v24 *= 6103512962455038907i64;
- v157 = v159 ^ 0x3C15D83049D7C403i64;
- break;
- case 0xDD5FCD0ui64:
- v157 = v159 ^ 0x6720CDD62C8BDF72i64;
- v24 = ((((63564935515100485i64 * v24) >> 29) ^ (63564935515100485i64 * v24)) >> 58) ^ ((63564935515100485i64 * v24) >> 29) ^ (63564935515100485i64 * v24);
- i3 ^= 0x49DF7EB24255DF84ui64;
- break;
- case 0x1099536Bui64:
- i3 ^= 0x10496EC77C77C63Cui64;
- v161 = _byteswap_uint64(qword_7FF6B477F0E7 ^ __ROL8__(
- (retaddr - 140697495668226i64) & 0xFFFFFFFFC0000000ui64,
- 16));
- v162 = ((*(_QWORD *)(v161 + 15) * v24) >> 11) ^ (*(_QWORD *)(v161 + 15) * v24);
- v24 = (((v162 >> 22) ^ v162) >> 44) ^ (v162 >> 22) ^ v162;
- v157 = v159 ^ 0x5FB42F29B17943Ci64;
- break;
- case 0x152C6507ui64:
- i3 ^= 0xA822156C814F05A7ui64;
- v157 = v159 ^ 0x4E2FF3A93FA646BFi64;
- v24 = ((((-8136938159196973965i64 * v24) >> 27) ^ (-8136938159196973965i64 * v24)) >> 54) ^ ((-8136938159196973965i64 * v24) >> 27) ^ (-8136938159196973965i64 * v24);
- break;
- default:
- goto LABEL_348;
- }
- }
- }
- if ( v160 != 2501992998 )
- break;
- i3 ^= 0xBE8AB0F1FF768FA5ui64;
- v157 = v159 ^ 0xFF3C8474E582047i64;
- v167 = (((v24 >> 7) ^ v24) >> 14) ^ (v24 >> 7) ^ v24;
- v24 = (((v167 >> 28) ^ v167) >> 56) ^ (v167 >> 28) ^ v167;
- }
- if ( v160 != 3185879987 )
- break;
- v157 = v159 ^ 0x5DDFA3D2647CDA3Fi64;
- v24 *= 2791579393893845511i64;
- i3 ^= 0x599FD070FAA999A7ui64;
- }
- if ( v160 != 3242736028 )
- break;
- v157 = v159 ^ 0xC90F9FBC5930B47Fui64;
- i3 ^= 0x6F68B948F2A809C0ui64;
- v24 *= -3138499123806592773i64;
- }
- if ( v160 != v221 )
- break;
- v166 = ((5029944857642293803i64 * ((v24 >> 39) ^ v24)) >> 15) ^ (5029944857642293803i64
- * ((v24 >> 39) ^ v24));
- v24 = (((v166 >> 30) ^ v166) >> 60) ^ (v166 >> 30) ^ v166;
- v157 = v159 ^ 0xE239A6B88A23BB42ui64;
- }
- LABEL_348:
- v6 = v222;
- v8 = v223;
- v13 = v179;
- break;
- }
- LABEL_349:
- v168 = 0x368i64 * v20;
- v169 = v24 + v168
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement