security/nss/lib/freebl/mpi/mp_comba_amd64_masm.asm

Thu, 22 Jan 2015 13:21:57 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 22 Jan 2015 13:21:57 +0100
branch
TOR_BUG_9701
changeset 15
b8a032363ba2
permissions
-rw-r--r--

Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6

michael@0 1 ; This Source Code Form is subject to the terms of the Mozilla Public
michael@0 2 ; License, v. 2.0. If a copy of the MPL was not distributed with this
michael@0 3 ; file, You can obtain one at http://mozilla.org/MPL/2.0/.
michael@0 4
michael@0 5 ;/* TomsFastMath, a fast ISO C bignum library.
michael@0 6 ; *
michael@0 7 ; * This project is meant to fill in where LibTomMath
michael@0 8 ; * falls short. That is speed ;-)
michael@0 9 ; *
michael@0 10 ; * This project is public domain and free for all purposes.
michael@0 11 ; *
michael@0 12 ; * Tom St Denis, tomstdenis@iahu.ca
michael@0 13 ; */
michael@0 14
michael@0 15 ;/*
michael@0 16 ; * The source file from which this assembly was derived
michael@0 17 ; * comes from TFM v0.03, which has the above license.
michael@0 18 ; * This source was from mp_comba_amd64.sun.s and convert to
michael@0 19 ; * MASM code set.
michael@0 20 ; */
michael@0 21
michael@0 22 .CODE
michael@0 23
michael@0 24 externdef memcpy:PROC
michael@0 25
michael@0 26 public s_mp_mul_comba_4
michael@0 27 public s_mp_mul_comba_8
michael@0 28 public s_mp_mul_comba_16
michael@0 29 public s_mp_mul_comba_32
michael@0 30 public s_mp_sqr_comba_8
michael@0 31 public s_mp_sqr_comba_16
michael@0 32 public s_mp_sqr_comba_32
michael@0 33
michael@0 34
michael@0 35 ; void s_mp_mul_comba_4(const mp_int *A, const mp_int *B, mp_int *C)
michael@0 36
michael@0 37 ALIGN 16
michael@0 38 s_mp_mul_comba_4 PROC
michael@0 39
michael@0 40 push rdi
michael@0 41 push rsi
michael@0 42
michael@0 43 mov rdi, rcx
michael@0 44 mov rsi, rdx
michael@0 45 mov rdx, r8
michael@0 46
michael@0 47 push r12
michael@0 48 push rbp
michael@0 49 push rbx
michael@0 50 sub rsp, 64
michael@0 51 mov r9, qword ptr [16+rdi]
michael@0 52 mov rbx, rdx
michael@0 53 mov rdx, qword ptr [16+rsi]
michael@0 54 mov rax, qword ptr [r9]
michael@0 55 mov qword ptr [-64+64+rsp], rax
michael@0 56 mov r8, qword ptr [8+r9]
michael@0 57 mov qword ptr [-56+64+rsp], r8
michael@0 58 mov rbp, qword ptr [16+r9]
michael@0 59 mov qword ptr [-48+64+rsp], rbp
michael@0 60 mov r12, qword ptr [24+r9]
michael@0 61 mov qword ptr [-40+64+rsp], r12
michael@0 62 mov rcx, qword ptr [rdx]
michael@0 63 mov qword ptr [-32+64+rsp], rcx
michael@0 64 mov r10, qword ptr [8+rdx]
michael@0 65 mov qword ptr [-24+64+rsp], r10
michael@0 66 mov r11, qword ptr [16+rdx]
michael@0 67 xor r10d, r10d
michael@0 68 mov r8, r10
michael@0 69 mov r9, r10
michael@0 70 mov rbp, r10
michael@0 71 mov qword ptr [-16+64+rsp], r11
michael@0 72 mov r11, qword ptr [16+rbx]
michael@0 73 mov rax, qword ptr [24+rdx]
michael@0 74 mov qword ptr [-8+64+rsp], rax
michael@0 75 mov rax, qword ptr [-64+64+rsp]
michael@0 76 mul qword ptr [-32+64+rsp]
michael@0 77 add r8, rax
michael@0 78 adc r9, rdx
michael@0 79 adc rbp, 0
michael@0 80 mov qword ptr [r11], r8
michael@0 81 mov r8, rbp
michael@0 82 mov rbp, r10
michael@0 83 mov rax, qword ptr [-64+64+rsp]
michael@0 84 mul qword ptr [-24+64+rsp]
michael@0 85 add r9, rax
michael@0 86 adc r8, rdx
michael@0 87 adc rbp, 0
michael@0 88 mov r12, rbp
michael@0 89 mov rax, qword ptr [-56+64+rsp]
michael@0 90 mul qword ptr [-32+64+rsp]
michael@0 91 add r9, rax
michael@0 92 adc r8, rdx
michael@0 93 adc r12, 0
michael@0 94 mov qword ptr [8+r11], r9
michael@0 95 mov r9, r12
michael@0 96 mov r12, r10
michael@0 97 mov rax, qword ptr [-64+64+rsp]
michael@0 98 mul qword ptr [-16+64+rsp]
michael@0 99 add r8, rax
michael@0 100 adc r9, rdx
michael@0 101 adc r12, 0
michael@0 102 mov rcx, r12
michael@0 103 mov rax, qword ptr [-56+64+rsp]
michael@0 104 mul qword ptr [-24+64+rsp]
michael@0 105 add r8, rax
michael@0 106 adc r9, rdx
michael@0 107 adc rcx, 0
michael@0 108 mov rbp, r9
michael@0 109 mov r12, rcx
michael@0 110 mov rax, qword ptr [-48+64+rsp]
michael@0 111 mul qword ptr [-32+64+rsp]
michael@0 112 add r8, rax
michael@0 113 adc rbp, rdx
michael@0 114 adc r12, 0
michael@0 115 mov qword ptr [16+r11], r8
michael@0 116 mov r9, r12
michael@0 117 mov rcx, rbp
michael@0 118 mov r8, r10
michael@0 119 mov rax, qword ptr [-64+64+rsp]
michael@0 120 mul qword ptr [-8+64+rsp]
michael@0 121 add rcx, rax
michael@0 122 adc r9, rdx
michael@0 123 adc r8, 0
michael@0 124 mov rax, qword ptr [-56+64+rsp]
michael@0 125 mul qword ptr [-16+64+rsp]
michael@0 126 add rcx, rax
michael@0 127 adc r9, rdx
michael@0 128 adc r8, 0
michael@0 129 mov rax, qword ptr [-48+64+rsp]
michael@0 130 mul qword ptr [-24+64+rsp]
michael@0 131 add rcx, rax
michael@0 132 adc r9, rdx
michael@0 133 adc r8, 0
michael@0 134 mov rbp, r9
michael@0 135 mov r12, r8
michael@0 136 mov rax, qword ptr [-40+64+rsp]
michael@0 137 mul qword ptr [-32+64+rsp]
michael@0 138 add rcx, rax
michael@0 139 adc rbp, rdx
michael@0 140 adc r12, 0
michael@0 141 mov qword ptr [24+r11], rcx
michael@0 142 mov r9, r12
michael@0 143 mov r8, rbp
michael@0 144 mov rcx, r10
michael@0 145 mov rax, qword ptr [-56+64+rsp]
michael@0 146 mul qword ptr [-8+64+rsp]
michael@0 147 add r8, rax
michael@0 148 adc r9, rdx
michael@0 149 adc rcx, 0
michael@0 150 mov rax, qword ptr [-48+64+rsp]
michael@0 151 mul qword ptr [-16+64+rsp]
michael@0 152 add r8, rax
michael@0 153 adc r9, rdx
michael@0 154 adc rcx, 0
michael@0 155 mov rbp, r9
michael@0 156 mov r12, rcx
michael@0 157 mov rax, qword ptr [-40+64+rsp]
michael@0 158 mul qword ptr [-24+64+rsp]
michael@0 159 add r8, rax
michael@0 160 adc rbp, rdx
michael@0 161 adc r12, 0
michael@0 162 mov qword ptr [32+r11], r8
michael@0 163 mov r9, r12
michael@0 164 mov rcx, rbp
michael@0 165 mov r8, r10
michael@0 166 mov rax, qword ptr [-48+64+rsp]
michael@0 167 mul qword ptr [-8+64+rsp]
michael@0 168 add rcx, rax
michael@0 169 adc r9, rdx
michael@0 170 adc r8, 0
michael@0 171 mov r12, r8
michael@0 172 mov rbp, r9
michael@0 173 mov rax, qword ptr [-40+64+rsp]
michael@0 174 mul qword ptr [-16+64+rsp]
michael@0 175 add rcx, rax
michael@0 176 adc rbp, rdx
michael@0 177 adc r12, 0
michael@0 178 mov qword ptr [40+r11], rcx
michael@0 179 mov r8, rbp
michael@0 180 mov rcx, r12
michael@0 181 mov rax, qword ptr [-40+64+rsp]
michael@0 182 mul qword ptr [-8+64+rsp]
michael@0 183 add r8, rax
michael@0 184 adc rcx, rdx
michael@0 185 adc r10, 0
michael@0 186 mov qword ptr [48+r11], r8
michael@0 187 mov esi, dword ptr [rsi]
michael@0 188 xor esi, dword ptr [rdi]
michael@0 189 test rcx, rcx
michael@0 190 mov qword ptr [56+r11], rcx
michael@0 191 mov dword ptr [8+rbx], 8
michael@0 192 jne L9
michael@0 193 ALIGN 16
michael@0 194 L18:
michael@0 195 mov edx, dword ptr [8+rbx]
michael@0 196 lea edi, dword ptr [-1+rdx]
michael@0 197 test edi, edi
michael@0 198 mov dword ptr [8+rbx], edi
michael@0 199 je L9
michael@0 200 lea r10d, dword ptr [-2+rdx]
michael@0 201 cmp dword ptr [r11+r10*8], 0
michael@0 202 je L18
michael@0 203 L9:
michael@0 204 mov edx, dword ptr [8+rbx]
michael@0 205 xor r11d, r11d
michael@0 206 test edx, edx
michael@0 207 cmovne r11d, esi
michael@0 208 mov dword ptr [rbx], r11d
michael@0 209 add rsp, 64
michael@0 210 pop rbx
michael@0 211 pop rbp
michael@0 212 pop r12
michael@0 213
michael@0 214 pop rsi
michael@0 215 pop rdi
michael@0 216
michael@0 217 ret
michael@0 218
michael@0 219 s_mp_mul_comba_4 ENDP
michael@0 220
michael@0 221
michael@0 222 ; void s_mp_mul_comba_8(const mp_int *A, const mp_int *B, mp_int *C)
michael@0 223
michael@0 224 ALIGN 16
michael@0 225 s_mp_mul_comba_8 PROC
michael@0 226
michael@0 227 push rdi
michael@0 228 push rsi
michael@0 229
michael@0 230 mov rdi, rcx
michael@0 231 mov rsi, rdx
michael@0 232 mov rdx, r8
michael@0 233
michael@0 234 push r12
michael@0 235 push rbp
michael@0 236 push rbx
michael@0 237 mov rbx, rdx
michael@0 238 sub rsp, 8+128
michael@0 239 mov rdx, qword ptr [16+rdi]
michael@0 240 mov r8, qword ptr [rdx]
michael@0 241 mov qword ptr [-120+128+rsp], r8
michael@0 242 mov rbp, qword ptr [8+rdx]
michael@0 243 mov qword ptr [-112+128+rsp], rbp
michael@0 244 mov r9, qword ptr [16+rdx]
michael@0 245 mov qword ptr [-104+128+rsp], r9
michael@0 246 mov r12, qword ptr [24+rdx]
michael@0 247 mov qword ptr [-96+128+rsp], r12
michael@0 248 mov rcx, qword ptr [32+rdx]
michael@0 249 mov qword ptr [-88+128+rsp], rcx
michael@0 250 mov r10, qword ptr [40+rdx]
michael@0 251 mov qword ptr [-80+128+rsp], r10
michael@0 252 mov r11, qword ptr [48+rdx]
michael@0 253 mov qword ptr [-72+128+rsp], r11
michael@0 254 mov rax, qword ptr [56+rdx]
michael@0 255 mov rdx, qword ptr [16+rsi]
michael@0 256 mov qword ptr [-64+128+rsp], rax
michael@0 257 mov r8, qword ptr [rdx]
michael@0 258 mov qword ptr [-56+128+rsp], r8
michael@0 259 mov rbp, qword ptr [8+rdx]
michael@0 260 mov qword ptr [-48+128+rsp], rbp
michael@0 261 mov r9, qword ptr [16+rdx]
michael@0 262 mov qword ptr [-40+128+rsp], r9
michael@0 263 mov r12, qword ptr [24+rdx]
michael@0 264 mov qword ptr [-32+128+rsp], r12
michael@0 265 mov rcx, qword ptr [32+rdx]
michael@0 266 mov qword ptr [-24+128+rsp], rcx
michael@0 267 mov r10, qword ptr [40+rdx]
michael@0 268 mov qword ptr [-16+128+rsp], r10
michael@0 269 mov r11, qword ptr [48+rdx]
michael@0 270 xor r10d, r10d
michael@0 271 mov r8, r10
michael@0 272 mov r9, r10
michael@0 273 mov rbp, r10
michael@0 274 mov qword ptr [-8+128+rsp], r11
michael@0 275 mov r11, qword ptr [16+rbx]
michael@0 276 mov rax, qword ptr [56+rdx]
michael@0 277 mov qword ptr [128+rsp], rax
michael@0 278 mov rax, qword ptr [-120+128+rsp]
michael@0 279 mul qword ptr [-56+128+rsp]
michael@0 280 add r8, rax
michael@0 281 adc r9, rdx
michael@0 282 adc rbp, 0
michael@0 283 mov qword ptr [r11], r8
michael@0 284 mov r8, rbp
michael@0 285 mov rbp, r10
michael@0 286 mov rax, qword ptr [-120+128+rsp]
michael@0 287 mul qword ptr [-48+128+rsp]
michael@0 288 add r9, rax
michael@0 289 adc r8, rdx
michael@0 290 adc rbp, 0
michael@0 291 mov r12, rbp
michael@0 292 mov rax, qword ptr [-112+128+rsp]
michael@0 293 mul qword ptr [-56+128+rsp]
michael@0 294 add r9, rax
michael@0 295 adc r8, rdx
michael@0 296 adc r12, 0
michael@0 297 mov qword ptr [8+r11], r9
michael@0 298 mov r9, r12
michael@0 299 mov r12, r10
michael@0 300 mov rax, qword ptr [-120+128+rsp]
michael@0 301 mul qword ptr [-40+128+rsp]
michael@0 302 add r8, rax
michael@0 303 adc r9, rdx
michael@0 304 adc r12, 0
michael@0 305 mov rcx, r12
michael@0 306 mov rax, qword ptr [-112+128+rsp]
michael@0 307 mul qword ptr [-48+128+rsp]
michael@0 308 add r8, rax
michael@0 309 adc r9, rdx
michael@0 310 adc rcx, 0
michael@0 311 mov rbp, r9
michael@0 312 mov r12, rcx
michael@0 313 mov rax, qword ptr [-104+128+rsp]
michael@0 314 mul qword ptr [-56+128+rsp]
michael@0 315 add r8, rax
michael@0 316 adc rbp, rdx
michael@0 317 adc r12, 0
michael@0 318 mov qword ptr [16+r11], r8
michael@0 319 mov r9, r12
michael@0 320 mov rcx, rbp
michael@0 321 mov r8, r10
michael@0 322 mov rax, qword ptr [-120+128+rsp]
michael@0 323 mul qword ptr [-32+128+rsp]
michael@0 324 add rcx, rax
michael@0 325 adc r9, rdx
michael@0 326 adc r8, 0
michael@0 327 mov rax, qword ptr [-112+128+rsp]
michael@0 328 mul qword ptr [-40+128+rsp]
michael@0 329 add rcx, rax
michael@0 330 adc r9, rdx
michael@0 331 adc r8, 0
michael@0 332 mov rax, qword ptr [-104+128+rsp]
michael@0 333 mul qword ptr [-48+128+rsp]
michael@0 334 add rcx, rax
michael@0 335 adc r9, rdx
michael@0 336 adc r8, 0
michael@0 337 mov rbp, r9
michael@0 338 mov r12, r8
michael@0 339 mov rax, qword ptr [-96+128+rsp]
michael@0 340 mul qword ptr [-56+128+rsp]
michael@0 341 add rcx, rax
michael@0 342 adc rbp, rdx
michael@0 343 adc r12, 0
michael@0 344 mov qword ptr [24+r11], rcx
michael@0 345 mov r9, r12
michael@0 346 mov r8, rbp
michael@0 347 mov rcx, r10
michael@0 348 mov rax, qword ptr [-120+128+rsp]
michael@0 349 mul qword ptr [-24+128+rsp]
michael@0 350 add r8, rax
michael@0 351 adc r9, rdx
michael@0 352 adc rcx, 0
michael@0 353 mov rax, qword ptr [-112+128+rsp]
michael@0 354 mul qword ptr [-32+128+rsp]
michael@0 355 add r8, rax
michael@0 356 adc r9, rdx
michael@0 357 adc rcx, 0
michael@0 358 mov rax, qword ptr [-104+128+rsp]
michael@0 359 mul qword ptr [-40+128+rsp]
michael@0 360 add r8, rax
michael@0 361 adc r9, rdx
michael@0 362 adc rcx, 0
michael@0 363 mov rax, qword ptr [-96+128+rsp]
michael@0 364 mul qword ptr [-48+128+rsp]
michael@0 365 add r8, rax
michael@0 366 adc r9, rdx
michael@0 367 adc rcx, 0
michael@0 368 mov rbp, r9
michael@0 369 mov r12, rcx
michael@0 370 mov rax, qword ptr [-88+128+rsp]
michael@0 371 mul qword ptr [-56+128+rsp]
michael@0 372 add r8, rax
michael@0 373 adc rbp, rdx
michael@0 374 adc r12, 0
michael@0 375 mov qword ptr [32+r11], r8
michael@0 376 mov r9, r12
michael@0 377 mov rcx, rbp
michael@0 378 mov r8, r10
michael@0 379 mov rax, qword ptr [-120+128+rsp]
michael@0 380 mul qword ptr [-16+128+rsp]
michael@0 381 add rcx, rax
michael@0 382 adc r9, rdx
michael@0 383 adc r8, 0
michael@0 384 mov rax, qword ptr [-112+128+rsp]
michael@0 385 mul qword ptr [-24+128+rsp]
michael@0 386 add rcx, rax
michael@0 387 adc r9, rdx
michael@0 388 adc r8, 0
michael@0 389 mov rax, qword ptr [-104+128+rsp]
michael@0 390 mul qword ptr [-32+128+rsp]
michael@0 391 add rcx, rax
michael@0 392 adc r9, rdx
michael@0 393 adc r8, 0
michael@0 394 mov rax, qword ptr [-96+128+rsp]
michael@0 395 mul qword ptr [-40+128+rsp]
michael@0 396 add rcx, rax
michael@0 397 adc r9, rdx
michael@0 398 adc r8, 0
michael@0 399 mov rax, qword ptr [-88+128+rsp]
michael@0 400 mul qword ptr [-48+128+rsp]
michael@0 401 add rcx, rax
michael@0 402 adc r9, rdx
michael@0 403 adc r8, 0
michael@0 404 mov rbp, r9
michael@0 405 mov r12, r8
michael@0 406 mov rax, qword ptr [-80+128+rsp]
michael@0 407 mul qword ptr [-56+128+rsp]
michael@0 408 add rcx, rax
michael@0 409 adc rbp, rdx
michael@0 410 adc r12, 0
michael@0 411 mov qword ptr [40+r11], rcx
michael@0 412 mov r9, r12
michael@0 413 mov r8, rbp
michael@0 414 mov rcx, r10
michael@0 415 mov rax, qword ptr [-120+128+rsp]
michael@0 416 mul qword ptr [-8+128+rsp]
michael@0 417 add r8, rax
michael@0 418 adc r9, rdx
michael@0 419 adc rcx, 0
michael@0 420 mov rax, qword ptr [-112+128+rsp]
michael@0 421 mul qword ptr [-16+128+rsp]
michael@0 422 add r8, rax
michael@0 423 adc r9, rdx
michael@0 424 adc rcx, 0
michael@0 425 mov rax, qword ptr [-104+128+rsp]
michael@0 426 mul qword ptr [-24+128+rsp]
michael@0 427 add r8, rax
michael@0 428 adc r9, rdx
michael@0 429 adc rcx, 0
michael@0 430 mov rax, qword ptr [-96+128+rsp]
michael@0 431 mul qword ptr [-32+128+rsp]
michael@0 432 add r8, rax
michael@0 433 adc r9, rdx
michael@0 434 adc rcx, 0
michael@0 435 mov rax, qword ptr [-88+128+rsp]
michael@0 436 mul qword ptr [-40+128+rsp]
michael@0 437 add r8, rax
michael@0 438 adc r9, rdx
michael@0 439 adc rcx, 0
michael@0 440 mov rax, qword ptr [-80+128+rsp]
michael@0 441 mul qword ptr [-48+128+rsp]
michael@0 442 add r8, rax
michael@0 443 adc r9, rdx
michael@0 444 adc rcx, 0
michael@0 445 mov rbp, r9
michael@0 446 mov r12, rcx
michael@0 447 mov rax, qword ptr [-72+128+rsp]
michael@0 448 mul qword ptr [-56+128+rsp]
michael@0 449 add r8, rax
michael@0 450 adc rbp, rdx
michael@0 451 adc r12, 0
michael@0 452 mov qword ptr [48+r11], r8
michael@0 453 mov r9, r12
michael@0 454 mov rcx, rbp
michael@0 455 mov r8, r10
michael@0 456 mov rax, qword ptr [-120+128+rsp]
michael@0 457 mul qword ptr [128+rsp]
michael@0 458 add rcx, rax
michael@0 459 adc r9, rdx
michael@0 460 adc r8, 0
michael@0 461 mov rax, qword ptr [-112+128+rsp]
michael@0 462 mul qword ptr [-8+128+rsp]
michael@0 463 add rcx, rax
michael@0 464 adc r9, rdx
michael@0 465 adc r8, 0
michael@0 466 mov rax, qword ptr [-104+128+rsp]
michael@0 467 mul qword ptr [-16+128+rsp]
michael@0 468 add rcx, rax
michael@0 469 adc r9, rdx
michael@0 470 adc r8, 0
michael@0 471 mov rax, qword ptr [-96+128+rsp]
michael@0 472 mul qword ptr [-24+128+rsp]
michael@0 473 add rcx, rax
michael@0 474 adc r9, rdx
michael@0 475 adc r8, 0
michael@0 476 mov rax, qword ptr [-88+128+rsp]
michael@0 477 mul qword ptr [-32+128+rsp]
michael@0 478 add rcx, rax
michael@0 479 adc r9, rdx
michael@0 480 adc r8, 0
michael@0 481 mov rax, qword ptr [-80+128+rsp]
michael@0 482 mul qword ptr [-40+128+rsp]
michael@0 483 add rcx, rax
michael@0 484 adc r9, rdx
michael@0 485 adc r8, 0
michael@0 486 mov rax, qword ptr [-72+128+rsp]
michael@0 487 mul qword ptr [-48+128+rsp]
michael@0 488 add rcx, rax
michael@0 489 adc r9, rdx
michael@0 490 adc r8, 0
michael@0 491 mov rbp, r9
michael@0 492 mov r12, r8
michael@0 493 mov rax, qword ptr [-64+128+rsp]
michael@0 494 mul qword ptr [-56+128+rsp]
michael@0 495 add rcx, rax
michael@0 496 adc rbp, rdx
michael@0 497 adc r12, 0
michael@0 498 mov qword ptr [56+r11], rcx
michael@0 499 mov r9, r12
michael@0 500 mov r8, rbp
michael@0 501 mov rcx, r10
michael@0 502 mov rax, qword ptr [-112+128+rsp]
michael@0 503 mul qword ptr [128+rsp]
michael@0 504 add r8, rax
michael@0 505 adc r9, rdx
michael@0 506 adc rcx, 0
michael@0 507 mov rax, qword ptr [-104+128+rsp]
michael@0 508 mul qword ptr [-8+128+rsp]
michael@0 509 add r8, rax
michael@0 510 adc r9, rdx
michael@0 511 adc rcx, 0
michael@0 512 mov rax, qword ptr [-96+128+rsp]
michael@0 513 mul qword ptr [-16+128+rsp]
michael@0 514 add r8, rax
michael@0 515 adc r9, rdx
michael@0 516 adc rcx, 0
michael@0 517 mov rax, qword ptr [-88+128+rsp]
michael@0 518 mul qword ptr [-24+128+rsp]
michael@0 519 add r8, rax
michael@0 520 adc r9, rdx
michael@0 521 adc rcx, 0
michael@0 522 mov rax, qword ptr [-80+128+rsp]
michael@0 523 mul qword ptr [-32+128+rsp]
michael@0 524 add r8, rax
michael@0 525 adc r9, rdx
michael@0 526 adc rcx, 0
michael@0 527 mov rax, qword ptr [-72+128+rsp]
michael@0 528 mul qword ptr [-40+128+rsp]
michael@0 529 add r8, rax
michael@0 530 adc r9, rdx
michael@0 531 adc rcx, 0
michael@0 532 mov rbp, r9
michael@0 533 mov r12, rcx
michael@0 534 mov rax, qword ptr [-64+128+rsp]
michael@0 535 mul qword ptr [-48+128+rsp]
michael@0 536 add r8, rax
michael@0 537 adc rbp, rdx
michael@0 538 adc r12, 0
michael@0 539 mov qword ptr [64+r11], r8
michael@0 540 mov r9, r12
michael@0 541 mov rcx, rbp
michael@0 542 mov r8, r10
michael@0 543 mov rax, qword ptr [-104+128+rsp]
michael@0 544 mul qword ptr [128+rsp]
michael@0 545 add rcx, rax
michael@0 546 adc r9, rdx
michael@0 547 adc r8, 0
michael@0 548 mov rax, qword ptr [-96+128+rsp]
michael@0 549 mul qword ptr [-8+128+rsp]
michael@0 550 add rcx, rax
michael@0 551 adc r9, rdx
michael@0 552 adc r8, 0
michael@0 553 mov rax, qword ptr [-88+128+rsp]
michael@0 554 mul qword ptr [-16+128+rsp]
michael@0 555 add rcx, rax
michael@0 556 adc r9, rdx
michael@0 557 adc r8, 0
michael@0 558 mov rax, qword ptr [-80+128+rsp]
michael@0 559 mul qword ptr [-24+128+rsp]
michael@0 560 add rcx, rax
michael@0 561 adc r9, rdx
michael@0 562 adc r8, 0
michael@0 563 mov rax, qword ptr [-72+128+rsp]
michael@0 564 mul qword ptr [-32+128+rsp]
michael@0 565 add rcx, rax
michael@0 566 adc r9, rdx
michael@0 567 adc r8, 0
michael@0 568 mov rbp, r9
michael@0 569 mov r12, r8
michael@0 570 mov rax, qword ptr [-64+128+rsp]
michael@0 571 mul qword ptr [-40+128+rsp]
michael@0 572 add rcx, rax
michael@0 573 adc rbp, rdx
michael@0 574 adc r12, 0
michael@0 575 mov qword ptr [72+r11], rcx
michael@0 576 mov r9, r12
michael@0 577 mov r8, rbp
michael@0 578 mov rcx, r10
michael@0 579 mov rax, qword ptr [-96+128+rsp]
michael@0 580 mul qword ptr [128+rsp]
michael@0 581 add r8, rax
michael@0 582 adc r9, rdx
michael@0 583 adc rcx, 0
michael@0 584 mov rax, qword ptr [-88+128+rsp]
michael@0 585 mul qword ptr [-8+128+rsp]
michael@0 586 add r8, rax
michael@0 587 adc r9, rdx
michael@0 588 adc rcx, 0
michael@0 589 mov rax, qword ptr [-80+128+rsp]
michael@0 590 mul qword ptr [-16+128+rsp]
michael@0 591 add r8, rax
michael@0 592 adc r9, rdx
michael@0 593 adc rcx, 0
michael@0 594 mov rax, qword ptr [-72+128+rsp]
michael@0 595 mul qword ptr [-24+128+rsp]
michael@0 596 add r8, rax
michael@0 597 adc r9, rdx
michael@0 598 adc rcx, 0
michael@0 599 mov rbp, r9
michael@0 600 mov r12, rcx
michael@0 601 mov rax, qword ptr [-64+128+rsp]
michael@0 602 mul qword ptr [-32+128+rsp]
michael@0 603 add r8, rax
michael@0 604 adc rbp, rdx
michael@0 605 adc r12, 0
michael@0 606 mov qword ptr [80+r11], r8
michael@0 607 mov r9, r12
michael@0 608 mov rcx, rbp
michael@0 609 mov r8, r10
michael@0 610 mov rax, qword ptr [-88+128+rsp]
michael@0 611 mul qword ptr [128+rsp]
michael@0 612 add rcx, rax
michael@0 613 adc r9, rdx
michael@0 614 adc r8, 0
michael@0 615 mov rax, qword ptr [-80+128+rsp]
michael@0 616 mul qword ptr [-8+128+rsp]
michael@0 617 add rcx, rax
michael@0 618 adc r9, rdx
michael@0 619 adc r8, 0
michael@0 620 mov rax, qword ptr [-72+128+rsp]
michael@0 621 mul qword ptr [-16+128+rsp]
michael@0 622 add rcx, rax
michael@0 623 adc r9, rdx
michael@0 624 adc r8, 0
michael@0 625 mov rbp, r9
michael@0 626 mov r12, r8
michael@0 627 mov rax, qword ptr [-64+128+rsp]
michael@0 628 mul qword ptr [-24+128+rsp]
michael@0 629 add rcx, rax
michael@0 630 adc rbp, rdx
michael@0 631 adc r12, 0
michael@0 632 mov qword ptr [88+r11], rcx
michael@0 633 mov r9, r12
michael@0 634 mov r8, rbp
michael@0 635 mov rcx, r10
michael@0 636 mov rax, qword ptr [-80+128+rsp]
michael@0 637 mul qword ptr [128+rsp]
michael@0 638 add r8, rax
michael@0 639 adc r9, rdx
michael@0 640 adc rcx, 0
michael@0 641 mov rax, qword ptr [-72+128+rsp]
michael@0 642 mul qword ptr [-8+128+rsp]
michael@0 643 add r8, rax
michael@0 644 adc r9, rdx
michael@0 645 adc rcx, 0
michael@0 646 mov rbp, r9
michael@0 647 mov r12, rcx
michael@0 648 mov rax, qword ptr [-64+128+rsp]
michael@0 649 mul qword ptr [-16+128+rsp]
michael@0 650 add r8, rax
michael@0 651 adc rbp, rdx
michael@0 652 adc r12, 0
michael@0 653 mov qword ptr [96+r11], r8
michael@0 654 mov r9, r12
michael@0 655 mov rcx, rbp
michael@0 656 mov r8, r10
michael@0 657 mov rax, qword ptr [-72+128+rsp]
michael@0 658 mul qword ptr [128+rsp]
michael@0 659 add rcx, rax
michael@0 660 adc r9, rdx
michael@0 661 adc r8, 0
michael@0 662 mov r12, r8
michael@0 663 mov rbp, r9
michael@0 664 mov rax, qword ptr [-64+128+rsp]
michael@0 665 mul qword ptr [-8+128+rsp]
michael@0 666 add rcx, rax
michael@0 667 adc rbp, rdx
michael@0 668 adc r12, 0
michael@0 669 mov qword ptr [104+r11], rcx
michael@0 670 mov r8, rbp
michael@0 671 mov rcx, r12
michael@0 672 mov rax, qword ptr [-64+128+rsp]
michael@0 673 mul qword ptr [128+rsp]
michael@0 674 add r8, rax
michael@0 675 adc rcx, rdx
michael@0 676 adc r10, 0
michael@0 677 mov qword ptr [112+r11], r8
michael@0 678 mov esi, dword ptr [rsi]
michael@0 679 xor esi, dword ptr [rdi]
michael@0 680 test rcx, rcx
michael@0 681 mov qword ptr [120+r11], rcx
michael@0 682 mov dword ptr [8+rbx], 16
michael@0 683 jne L35
michael@0 684 ALIGN 16
michael@0 685 L43:
michael@0 686 mov edx, dword ptr [8+rbx]
michael@0 687 lea edi, dword ptr [-1+rdx]
michael@0 688 test edi, edi
michael@0 689 mov dword ptr [8+rbx], edi
michael@0 690 je L35
michael@0 691 lea eax, dword ptr [-2+rdx]
michael@0 692 cmp dword ptr [r11+rax*8], 0
michael@0 693 je L43
michael@0 694 L35:
michael@0 695 mov r11d, dword ptr [8+rbx]
michael@0 696 xor edx, edx
michael@0 697 test r11d, r11d
michael@0 698 cmovne edx, esi
michael@0 699 mov dword ptr [rbx], edx
michael@0 700 add rsp, 8+128
michael@0 701 pop rbx
michael@0 702 pop rbp
michael@0 703 pop r12
michael@0 704
michael@0 705 pop rsi
michael@0 706 pop rdi
michael@0 707
michael@0 708 ret
michael@0 709
michael@0 710 s_mp_mul_comba_8 ENDP
michael@0 711
michael@0 712
michael@0 713 ; void s_mp_mul_comba_16(const mp_int *A, const mp_int *B, mp_int *C);
michael@0 714
michael@0 715 ALIGN 16
michael@0 716 s_mp_mul_comba_16 PROC
michael@0 717
michael@0 718 push rdi
michael@0 719 push rsi
michael@0 720
michael@0 721 mov rdi, rcx
michael@0 722 mov rsi, rdx
michael@0 723 mov rdx, r8
michael@0 724
michael@0 725 push r12
michael@0 726 push rbp
michael@0 727 push rbx
michael@0 728 mov rbx, rdx
michael@0 729 sub rsp, 136+128
michael@0 730 mov rax, qword ptr [16+rdi]
michael@0 731 mov r8, qword ptr [rax]
michael@0 732 mov qword ptr [-120+128+rsp], r8
michael@0 733 mov rbp, qword ptr [8+rax]
michael@0 734 mov qword ptr [-112+128+rsp], rbp
michael@0 735 mov r9, qword ptr [16+rax]
michael@0 736 mov qword ptr [-104+128+rsp], r9
michael@0 737 mov r12, qword ptr [24+rax]
michael@0 738 mov qword ptr [-96+128+rsp], r12
michael@0 739 mov rcx, qword ptr [32+rax]
michael@0 740 mov qword ptr [-88+128+rsp], rcx
michael@0 741 mov r10, qword ptr [40+rax]
michael@0 742 mov qword ptr [-80+128+rsp], r10
michael@0 743 mov rdx, qword ptr [48+rax]
michael@0 744 mov qword ptr [-72+128+rsp], rdx
michael@0 745 mov r11, qword ptr [56+rax]
michael@0 746 mov qword ptr [-64+128+rsp], r11
michael@0 747 mov r8, qword ptr [64+rax]
michael@0 748 mov qword ptr [-56+128+rsp], r8
michael@0 749 mov rbp, qword ptr [72+rax]
michael@0 750 mov qword ptr [-48+128+rsp], rbp
michael@0 751 mov r9, qword ptr [80+rax]
michael@0 752 mov qword ptr [-40+128+rsp], r9
michael@0 753 mov r12, qword ptr [88+rax]
michael@0 754 mov qword ptr [-32+128+rsp], r12
michael@0 755 mov rcx, qword ptr [96+rax]
michael@0 756 mov qword ptr [-24+128+rsp], rcx
michael@0 757 mov r10, qword ptr [104+rax]
michael@0 758 mov qword ptr [-16+128+rsp], r10
michael@0 759 mov rdx, qword ptr [112+rax]
michael@0 760 mov qword ptr [-8+128+rsp], rdx
michael@0 761 mov r11, qword ptr [120+rax]
michael@0 762 mov qword ptr [128+rsp], r11
michael@0 763 mov r11, qword ptr [16+rsi]
michael@0 764 mov r8, qword ptr [r11]
michael@0 765 mov qword ptr [8+128+rsp], r8
michael@0 766 mov rbp, qword ptr [8+r11]
michael@0 767 mov qword ptr [16+128+rsp], rbp
michael@0 768 mov r9, qword ptr [16+r11]
michael@0 769 mov qword ptr [24+128+rsp], r9
michael@0 770 mov r12, qword ptr [24+r11]
michael@0 771 mov qword ptr [32+128+rsp], r12
michael@0 772 mov rcx, qword ptr [32+r11]
michael@0 773 mov qword ptr [40+128+rsp], rcx
michael@0 774 mov r10, qword ptr [40+r11]
michael@0 775 mov qword ptr [48+128+rsp], r10
michael@0 776 mov rdx, qword ptr [48+r11]
michael@0 777 mov qword ptr [56+128+rsp], rdx
michael@0 778 mov rax, qword ptr [56+r11]
michael@0 779 mov qword ptr [64+128+rsp], rax
michael@0 780 mov r8, qword ptr [64+r11]
michael@0 781 mov qword ptr [72+128+rsp], r8
michael@0 782 mov rbp, qword ptr [72+r11]
michael@0 783 mov qword ptr [80+128+rsp], rbp
michael@0 784 mov r9, qword ptr [80+r11]
michael@0 785 mov qword ptr [88+128+rsp], r9
michael@0 786 mov r12, qword ptr [88+r11]
michael@0 787 mov qword ptr [96+128+rsp], r12
michael@0 788 mov rcx, qword ptr [96+r11]
michael@0 789 mov qword ptr [104+128+rsp], rcx
michael@0 790 mov r10, qword ptr [104+r11]
michael@0 791 mov qword ptr [112+128+rsp], r10
michael@0 792 mov rdx, qword ptr [112+r11]
michael@0 793 xor r10d, r10d
michael@0 794 mov r8, r10
michael@0 795 mov r9, r10
michael@0 796 mov rbp, r10
michael@0 797 mov qword ptr [120+128+rsp], rdx
michael@0 798 mov rax, qword ptr [120+r11]
michael@0 799 mov qword ptr [128+128+rsp], rax
michael@0 800 mov r11, qword ptr [16+rbx]
michael@0 801 mov rax, qword ptr [-120+128+rsp]
michael@0 802 mul qword ptr [8+128+rsp]
michael@0 803 add r8, rax
michael@0 804 adc r9, rdx
michael@0 805 adc rbp, 0
michael@0 806 mov qword ptr [r11], r8
michael@0 807 mov r8, rbp
michael@0 808 mov rbp, r10
michael@0 809 mov rax, qword ptr [-120+128+rsp]
michael@0 810 mul qword ptr [16+128+rsp]
michael@0 811 add r9, rax
michael@0 812 adc r8, rdx
michael@0 813 adc rbp, 0
michael@0 814 mov r12, rbp
michael@0 815 mov rax, qword ptr [-112+128+rsp]
michael@0 816 mul qword ptr [8+128+rsp]
michael@0 817 add r9, rax
michael@0 818 adc r8, rdx
michael@0 819 adc r12, 0
michael@0 820 mov qword ptr [8+r11], r9
michael@0 821 mov r9, r12
michael@0 822 mov r12, r10
michael@0 823 mov rax, qword ptr [-120+128+rsp]
michael@0 824 mul qword ptr [24+128+rsp]
michael@0 825 add r8, rax
michael@0 826 adc r9, rdx
michael@0 827 adc r12, 0
michael@0 828 mov rcx, r12
michael@0 829 mov rax, qword ptr [-112+128+rsp]
michael@0 830 mul qword ptr [16+128+rsp]
michael@0 831 add r8, rax
michael@0 832 adc r9, rdx
michael@0 833 adc rcx, 0
michael@0 834 mov rbp, r9
michael@0 835 mov r12, rcx
michael@0 836 mov rax, qword ptr [-104+128+rsp]
michael@0 837 mul qword ptr [8+128+rsp]
michael@0 838 add r8, rax
michael@0 839 adc rbp, rdx
michael@0 840 adc r12, 0
michael@0 841 mov qword ptr [16+r11], r8
michael@0 842 mov r9, r12
michael@0 843 mov rcx, rbp
michael@0 844 mov r8, r10
michael@0 845 mov rax, qword ptr [-120+128+rsp]
michael@0 846 mul qword ptr [32+128+rsp]
michael@0 847 add rcx, rax
michael@0 848 adc r9, rdx
michael@0 849 adc r8, 0
michael@0 850 mov rax, qword ptr [-112+128+rsp]
michael@0 851 mul qword ptr [24+128+rsp]
michael@0 852 add rcx, rax
michael@0 853 adc r9, rdx
michael@0 854 adc r8, 0
michael@0 855 mov rax, qword ptr [-104+128+rsp]
michael@0 856 mul qword ptr [16+128+rsp]
michael@0 857 add rcx, rax
michael@0 858 adc r9, rdx
michael@0 859 adc r8, 0
michael@0 860 mov rbp, r9
michael@0 861 mov r12, r8
michael@0 862 mov rax, qword ptr [-96+128+rsp]
michael@0 863 mul qword ptr [8+128+rsp]
michael@0 864 add rcx, rax
michael@0 865 adc rbp, rdx
michael@0 866 adc r12, 0
michael@0 867 mov qword ptr [24+r11], rcx
michael@0 868 mov r9, r12
michael@0 869 mov r8, rbp
michael@0 870 mov rcx, r10
michael@0 871 mov rax, qword ptr [-120+128+rsp]
michael@0 872 mul qword ptr [40+128+rsp]
michael@0 873 add r8, rax
michael@0 874 adc r9, rdx
michael@0 875 adc rcx, 0
michael@0 876 mov rax, qword ptr [-112+128+rsp]
michael@0 877 mul qword ptr [32+128+rsp]
michael@0 878 add r8, rax
michael@0 879 adc r9, rdx
michael@0 880 adc rcx, 0
michael@0 881 mov rax, qword ptr [-104+128+rsp]
michael@0 882 mul qword ptr [24+128+rsp]
michael@0 883 add r8, rax
michael@0 884 adc r9, rdx
michael@0 885 adc rcx, 0
michael@0 886 mov rax, qword ptr [-96+128+rsp]
michael@0 887 mul qword ptr [16+128+rsp]
michael@0 888 add r8, rax
michael@0 889 adc r9, rdx
michael@0 890 adc rcx, 0
michael@0 891 mov rbp, r9
michael@0 892 mov r12, rcx
michael@0 893 mov rax, qword ptr [-88+128+rsp]
michael@0 894 mul qword ptr [8+128+rsp]
michael@0 895 add r8, rax
michael@0 896 adc rbp, rdx
michael@0 897 adc r12, 0
michael@0 898 mov qword ptr [32+r11], r8
michael@0 899 mov r9, r12
michael@0 900 mov rcx, rbp
michael@0 901 mov r8, r10
michael@0 902 mov rax, qword ptr [-120+128+rsp]
michael@0 903 mul qword ptr [48+128+rsp]
michael@0 904 add rcx, rax
michael@0 905 adc r9, rdx
michael@0 906 adc r8, 0
michael@0 907 mov rax, qword ptr [-112+128+rsp]
michael@0 908 mul qword ptr [40+128+rsp]
michael@0 909 add rcx, rax
michael@0 910 adc r9, rdx
michael@0 911 adc r8, 0
michael@0 912 mov rax, qword ptr [-104+128+rsp]
michael@0 913 mul qword ptr [32+128+rsp]
michael@0 914 add rcx, rax
michael@0 915 adc r9, rdx
michael@0 916 adc r8, 0
michael@0 917 mov rax, qword ptr [-96+128+rsp]
michael@0 918 mul qword ptr [24+128+rsp]
michael@0 919 add rcx, rax
michael@0 920 adc r9, rdx
michael@0 921 adc r8, 0
michael@0 922 mov rax, qword ptr [-88+128+rsp]
michael@0 923 mul qword ptr [16+128+rsp]
michael@0 924 add rcx, rax
michael@0 925 adc r9, rdx
michael@0 926 adc r8, 0
michael@0 927 mov rbp, r9
michael@0 928 mov r12, r8
michael@0 929 mov rax, qword ptr [-80+128+rsp]
michael@0 930 mul qword ptr [8+128+rsp]
michael@0 931 add rcx, rax
michael@0 932 adc rbp, rdx
michael@0 933 adc r12, 0
michael@0 934 mov qword ptr [40+r11], rcx
michael@0 935 mov r9, r12
michael@0 936 mov r8, rbp
michael@0 937 mov rcx, r10
michael@0 938 mov rax, qword ptr [-120+128+rsp]
michael@0 939 mul qword ptr [56+128+rsp]
michael@0 940 add r8, rax
michael@0 941 adc r9, rdx
michael@0 942 adc rcx, 0
michael@0 943 mov rax, qword ptr [-112+128+rsp]
michael@0 944 mul qword ptr [48+128+rsp]
michael@0 945 add r8, rax
michael@0 946 adc r9, rdx
michael@0 947 adc rcx, 0
michael@0 948 mov rax, qword ptr [-104+128+rsp]
michael@0 949 mul qword ptr [40+128+rsp]
michael@0 950 add r8, rax
michael@0 951 adc r9, rdx
michael@0 952 adc rcx, 0
michael@0 953 mov rax, qword ptr [-96+128+rsp]
michael@0 954 mul qword ptr [32+128+rsp]
michael@0 955 add r8, rax
michael@0 956 adc r9, rdx
michael@0 957 adc rcx, 0
michael@0 958 mov rax, qword ptr [-88+128+rsp]
michael@0 959 mul qword ptr [24+128+rsp]
michael@0 960 add r8, rax
michael@0 961 adc r9, rdx
michael@0 962 adc rcx, 0
michael@0 963 mov rax, qword ptr [-80+128+rsp]
michael@0 964 mul qword ptr [16+128+rsp]
michael@0 965 add r8, rax
michael@0 966 adc r9, rdx
michael@0 967 adc rcx, 0
michael@0 968 mov rbp, r9
michael@0 969 mov r12, rcx
michael@0 970 mov rax, qword ptr [-72+128+rsp]
michael@0 971 mul qword ptr [8+128+rsp]
michael@0 972 add r8, rax
michael@0 973 adc rbp, rdx
michael@0 974 adc r12, 0
michael@0 975 mov qword ptr [48+r11], r8
michael@0 976 mov r9, r12
michael@0 977 mov rcx, rbp
michael@0 978 mov r8, r10
michael@0 979 mov rax, qword ptr [-120+128+rsp]
michael@0 980 mul qword ptr [64+128+rsp]
michael@0 981 add rcx, rax
michael@0 982 adc r9, rdx
michael@0 983 adc r8, 0
michael@0 984 mov rax, qword ptr [-112+128+rsp]
michael@0 985 mul qword ptr [56+128+rsp]
michael@0 986 add rcx, rax
michael@0 987 adc r9, rdx
michael@0 988 adc r8, 0
michael@0 989 mov rax, qword ptr [-104+128+rsp]
michael@0 990 mul qword ptr [48+128+rsp]
michael@0 991 add rcx, rax
michael@0 992 adc r9, rdx
michael@0 993 adc r8, 0
michael@0 994 mov rax, qword ptr [-96+128+rsp]
michael@0 995 mul qword ptr [40+128+rsp]
michael@0 996 add rcx, rax
michael@0 997 adc r9, rdx
michael@0 998 adc r8, 0
michael@0 999 mov rax, qword ptr [-88+128+rsp]
michael@0 1000 mul qword ptr [32+128+rsp]
michael@0 1001 add rcx, rax
michael@0 1002 adc r9, rdx
michael@0 1003 adc r8, 0
michael@0 1004 mov rax, qword ptr [-80+128+rsp]
michael@0 1005 mul qword ptr [24+128+rsp]
michael@0 1006 add rcx, rax
michael@0 1007 adc r9, rdx
michael@0 1008 adc r8, 0
michael@0 1009 mov rax, qword ptr [-72+128+rsp]
michael@0 1010 mul qword ptr [16+128+rsp]
michael@0 1011 add rcx, rax
michael@0 1012 adc r9, rdx
michael@0 1013 adc r8, 0
michael@0 1014 mov rbp, r9
michael@0 1015 mov r12, r8
michael@0 1016 mov rax, qword ptr [-64+128+rsp]
michael@0 1017 mul qword ptr [8+128+rsp]
michael@0 1018 add rcx, rax
michael@0 1019 adc rbp, rdx
michael@0 1020 adc r12, 0
michael@0 1021 mov qword ptr [56+r11], rcx
michael@0 1022 mov r9, r12
michael@0 1023 mov r8, rbp
michael@0 1024 mov rcx, r10
michael@0 1025 mov rax, qword ptr [-120+128+rsp]
michael@0 1026 mul qword ptr [72+128+rsp]
michael@0 1027 add r8, rax
michael@0 1028 adc r9, rdx
michael@0 1029 adc rcx, 0
michael@0 1030 mov rax, qword ptr [-112+128+rsp]
michael@0 1031 mul qword ptr [64+128+rsp]
michael@0 1032 add r8, rax
michael@0 1033 adc r9, rdx
michael@0 1034 adc rcx, 0
michael@0 1035 mov rax, qword ptr [-104+128+rsp]
michael@0 1036 mul qword ptr [56+128+rsp]
michael@0 1037 add r8, rax
michael@0 1038 adc r9, rdx
michael@0 1039 adc rcx, 0
michael@0 1040 mov rax, qword ptr [-96+128+rsp]
michael@0 1041 mul qword ptr [48+128+rsp]
michael@0 1042 add r8, rax
michael@0 1043 adc r9, rdx
michael@0 1044 adc rcx, 0
michael@0 1045 mov rax, qword ptr [-88+128+rsp]
michael@0 1046 mul qword ptr [40+128+rsp]
michael@0 1047 add r8, rax
michael@0 1048 adc r9, rdx
michael@0 1049 adc rcx, 0
michael@0 1050 mov rax, qword ptr [-80+128+rsp]
michael@0 1051 mul qword ptr [32+128+rsp]
michael@0 1052 add r8, rax
michael@0 1053 adc r9, rdx
michael@0 1054 adc rcx, 0
michael@0 1055 mov rax, qword ptr [-72+128+rsp]
michael@0 1056 mul qword ptr [24+128+rsp]
michael@0 1057 add r8, rax
michael@0 1058 adc r9, rdx
michael@0 1059 adc rcx, 0
michael@0 1060 mov rax, qword ptr [-64+128+rsp]
michael@0 1061 mul qword ptr [16+128+rsp]
michael@0 1062 add r8, rax
michael@0 1063 adc r9, rdx
michael@0 1064 adc rcx, 0
michael@0 1065 mov rbp, r9
michael@0 1066 mov r12, rcx
michael@0 1067 mov rax, qword ptr [-56+128+rsp]
michael@0 1068 mul qword ptr [8+128+rsp]
michael@0 1069 add r8, rax
michael@0 1070 adc rbp, rdx
michael@0 1071 adc r12, 0
michael@0 1072 mov qword ptr [64+r11], r8
michael@0 1073 mov r9, r12
michael@0 1074 mov rcx, rbp
michael@0 1075 mov r8, r10
michael@0 1076 mov rax, qword ptr [-120+128+rsp]
michael@0 1077 mul qword ptr [80+128+rsp]
michael@0 1078 add rcx, rax
michael@0 1079 adc r9, rdx
michael@0 1080 adc r8, 0
michael@0 1081 mov rax, qword ptr [-112+128+rsp]
michael@0 1082 mul qword ptr [72+128+rsp]
michael@0 1083 add rcx, rax
michael@0 1084 adc r9, rdx
michael@0 1085 adc r8, 0
michael@0 1086 mov rax, qword ptr [-104+128+rsp]
michael@0 1087 mul qword ptr [64+128+rsp]
michael@0 1088 add rcx, rax
michael@0 1089 adc r9, rdx
michael@0 1090 adc r8, 0
michael@0 1091 mov rax, qword ptr [-96+128+rsp]
michael@0 1092 mul qword ptr [56+128+rsp]
michael@0 1093 add rcx, rax
michael@0 1094 adc r9, rdx
michael@0 1095 adc r8, 0
michael@0 1096 mov rax, qword ptr [-88+128+rsp]
michael@0 1097 mul qword ptr [48+128+rsp]
michael@0 1098 add rcx, rax
michael@0 1099 adc r9, rdx
michael@0 1100 adc r8, 0
michael@0 1101 mov rax, qword ptr [-80+128+rsp]
michael@0 1102 mul qword ptr [40+128+rsp]
michael@0 1103 add rcx, rax
michael@0 1104 adc r9, rdx
michael@0 1105 adc r8, 0
michael@0 1106 mov rax, qword ptr [-72+128+rsp]
michael@0 1107 mul qword ptr [32+128+rsp]
michael@0 1108 add rcx, rax
michael@0 1109 adc r9, rdx
michael@0 1110 adc r8, 0
michael@0 1111 mov rax, qword ptr [-64+128+rsp]
michael@0 1112 mul qword ptr [24+128+rsp]
michael@0 1113 add rcx, rax
michael@0 1114 adc r9, rdx
michael@0 1115 adc r8, 0
michael@0 1116 mov rax, qword ptr [-56+128+rsp]
michael@0 1117 mul qword ptr [16+128+rsp]
michael@0 1118 add rcx, rax
michael@0 1119 adc r9, rdx
michael@0 1120 adc r8, 0
michael@0 1121 mov rbp, r9
michael@0 1122 mov r12, r8
michael@0 1123 mov rax, qword ptr [-48+128+rsp]
michael@0 1124 mul qword ptr [8+128+rsp]
michael@0 1125 add rcx, rax
michael@0 1126 adc rbp, rdx
michael@0 1127 adc r12, 0
michael@0 1128 mov qword ptr [72+r11], rcx
michael@0 1129 mov r9, r12
michael@0 1130 mov r8, rbp
michael@0 1131 mov rcx, r10
michael@0 1132 mov rax, qword ptr [-120+128+rsp]
michael@0 1133 mul qword ptr [88+128+rsp]
michael@0 1134 add r8, rax
michael@0 1135 adc r9, rdx
michael@0 1136 adc rcx, 0
michael@0 1137 mov rax, qword ptr [-112+128+rsp]
michael@0 1138 mul qword ptr [80+128+rsp]
michael@0 1139 add r8, rax
michael@0 1140 adc r9, rdx
michael@0 1141 adc rcx, 0
michael@0 1142 mov rax, qword ptr [-104+128+rsp]
michael@0 1143 mul qword ptr [72+128+rsp]
michael@0 1144 add r8, rax
michael@0 1145 adc r9, rdx
michael@0 1146 adc rcx, 0
michael@0 1147 mov rax, qword ptr [-96+128+rsp]
michael@0 1148 mul qword ptr [64+128+rsp]
michael@0 1149 add r8, rax
michael@0 1150 adc r9, rdx
michael@0 1151 adc rcx, 0
michael@0 1152 mov rax, qword ptr [-88+128+rsp]
michael@0 1153 mul qword ptr [56+128+rsp]
michael@0 1154 add r8, rax
michael@0 1155 adc r9, rdx
michael@0 1156 adc rcx, 0
michael@0 1157 mov rax, qword ptr [-80+128+rsp]
michael@0 1158 mul qword ptr [48+128+rsp]
michael@0 1159 add r8, rax
michael@0 1160 adc r9, rdx
michael@0 1161 adc rcx, 0
michael@0 1162 mov rax, qword ptr [-72+128+rsp]
michael@0 1163 mul qword ptr [40+128+rsp]
michael@0 1164 add r8, rax
michael@0 1165 adc r9, rdx
michael@0 1166 adc rcx, 0
michael@0 1167 mov rax, qword ptr [-64+128+rsp]
michael@0 1168 mul qword ptr [32+128+rsp]
michael@0 1169 add r8, rax
michael@0 1170 adc r9, rdx
michael@0 1171 adc rcx, 0
michael@0 1172 mov rax, qword ptr [-56+128+rsp]
michael@0 1173 mul qword ptr [24+128+rsp]
michael@0 1174 add r8, rax
michael@0 1175 adc r9, rdx
michael@0 1176 adc rcx, 0
michael@0 1177 mov rax, qword ptr [-48+128+rsp]
michael@0 1178 mul qword ptr [16+128+rsp]
michael@0 1179 add r8, rax
michael@0 1180 adc r9, rdx
michael@0 1181 adc rcx, 0
michael@0 1182 mov rbp, r9
michael@0 1183 mov r12, rcx
michael@0 1184 mov rax, qword ptr [-40+128+rsp]
michael@0 1185 mul qword ptr [8+128+rsp]
michael@0 1186 add r8, rax
michael@0 1187 adc rbp, rdx
michael@0 1188 adc r12, 0
michael@0 1189 mov qword ptr [80+r11], r8
michael@0 1190 mov r9, r12
michael@0 1191 mov rcx, rbp
michael@0 1192 mov r8, r10
michael@0 1193 mov rax, qword ptr [-120+128+rsp]
michael@0 1194 mul qword ptr [96+128+rsp]
michael@0 1195 add rcx, rax
michael@0 1196 adc r9, rdx
michael@0 1197 adc r8, 0
michael@0 1198 mov rax, qword ptr [-112+128+rsp]
michael@0 1199 mul qword ptr [88+128+rsp]
michael@0 1200 add rcx, rax
michael@0 1201 adc r9, rdx
michael@0 1202 adc r8, 0
michael@0 1203 mov rax, qword ptr [-104+128+rsp]
michael@0 1204 mul qword ptr [80+128+rsp]
michael@0 1205 add rcx, rax
michael@0 1206 adc r9, rdx
michael@0 1207 adc r8, 0
michael@0 1208 mov rax, qword ptr [-96+128+rsp]
michael@0 1209 mul qword ptr [72+128+rsp]
michael@0 1210 add rcx, rax
michael@0 1211 adc r9, rdx
michael@0 1212 adc r8, 0
michael@0 1213 mov rax, qword ptr [-88+128+rsp]
michael@0 1214 mul qword ptr [64+128+rsp]
michael@0 1215 add rcx, rax
michael@0 1216 adc r9, rdx
michael@0 1217 adc r8, 0
michael@0 1218 mov rax, qword ptr [-80+128+rsp]
michael@0 1219 mul qword ptr [56+128+rsp]
michael@0 1220 add rcx, rax
michael@0 1221 adc r9, rdx
michael@0 1222 adc r8, 0
michael@0 1223 mov rax, qword ptr [-72+128+rsp]
michael@0 1224 mul qword ptr [48+128+rsp]
michael@0 1225 add rcx, rax
michael@0 1226 adc r9, rdx
michael@0 1227 adc r8, 0
michael@0 1228 mov rax, qword ptr [-64+128+rsp]
michael@0 1229 mul qword ptr [40+128+rsp]
michael@0 1230 add rcx, rax
michael@0 1231 adc r9, rdx
michael@0 1232 adc r8, 0
michael@0 1233 mov rax, qword ptr [-56+128+rsp]
michael@0 1234 mul qword ptr [32+128+rsp]
michael@0 1235 add rcx, rax
michael@0 1236 adc r9, rdx
michael@0 1237 adc r8, 0
michael@0 1238 mov rax, qword ptr [-48+128+rsp]
michael@0 1239 mul qword ptr [24+128+rsp]
michael@0 1240 add rcx, rax
michael@0 1241 adc r9, rdx
michael@0 1242 adc r8, 0
michael@0 1243 mov rax, qword ptr [-40+128+rsp]
michael@0 1244 mul qword ptr [16+128+rsp]
michael@0 1245 add rcx, rax
michael@0 1246 adc r9, rdx
michael@0 1247 adc r8, 0
michael@0 1248 mov rbp, r9
michael@0 1249 mov r12, r8
michael@0 1250 mov rax, qword ptr [-32+128+rsp]
michael@0 1251 mul qword ptr [8+128+rsp]
michael@0 1252 add rcx, rax
michael@0 1253 adc rbp, rdx
michael@0 1254 adc r12, 0
michael@0 1255 mov qword ptr [88+r11], rcx
michael@0 1256 mov r9, r12
michael@0 1257 mov r8, rbp
michael@0 1258 mov rcx, r10
michael@0 1259 mov rax, qword ptr [-120+128+rsp]
michael@0 1260 mul qword ptr [104+128+rsp]
michael@0 1261 add r8, rax
michael@0 1262 adc r9, rdx
michael@0 1263 adc rcx, 0
michael@0 1264 mov rax, qword ptr [-112+128+rsp]
michael@0 1265 mul qword ptr [96+128+rsp]
michael@0 1266 add r8, rax
michael@0 1267 adc r9, rdx
michael@0 1268 adc rcx, 0
michael@0 1269 mov rax, qword ptr [-104+128+rsp]
michael@0 1270 mul qword ptr [88+128+rsp]
michael@0 1271 add r8, rax
michael@0 1272 adc r9, rdx
michael@0 1273 adc rcx, 0
michael@0 1274 mov rax, qword ptr [-96+128+rsp]
michael@0 1275 mul qword ptr [80+128+rsp]
michael@0 1276 add r8, rax
michael@0 1277 adc r9, rdx
michael@0 1278 adc rcx, 0
michael@0 1279 mov rax, qword ptr [-88+128+rsp]
michael@0 1280 mul qword ptr [72+128+rsp]
michael@0 1281 add r8, rax
michael@0 1282 adc r9, rdx
michael@0 1283 adc rcx, 0
michael@0 1284 mov rax, qword ptr [-80+128+rsp]
michael@0 1285 mul qword ptr [64+128+rsp]
michael@0 1286 add r8, rax
michael@0 1287 adc r9, rdx
michael@0 1288 adc rcx, 0
michael@0 1289 mov rax, qword ptr [-72+128+rsp]
michael@0 1290 mul qword ptr [56+128+rsp]
michael@0 1291 add r8, rax
michael@0 1292 adc r9, rdx
michael@0 1293 adc rcx, 0
michael@0 1294 mov rax, qword ptr [-64+128+rsp]
michael@0 1295 mul qword ptr [48+128+rsp]
michael@0 1296 add r8, rax
michael@0 1297 adc r9, rdx
michael@0 1298 adc rcx, 0
michael@0 1299 mov rax, qword ptr [-56+128+rsp]
michael@0 1300 mul qword ptr [40+128+rsp]
michael@0 1301 add r8, rax
michael@0 1302 adc r9, rdx
michael@0 1303 adc rcx, 0
michael@0 1304 mov rax, qword ptr [-48+128+rsp]
michael@0 1305 mul qword ptr [32+128+rsp]
michael@0 1306 add r8, rax
michael@0 1307 adc r9, rdx
michael@0 1308 adc rcx, 0
michael@0 1309 mov rax, qword ptr [-40+128+rsp]
michael@0 1310 mul qword ptr [24+128+rsp]
michael@0 1311 add r8, rax
michael@0 1312 adc r9, rdx
michael@0 1313 adc rcx, 0
michael@0 1314 mov rax, qword ptr [-32+128+rsp]
michael@0 1315 mul qword ptr [16+128+rsp]
michael@0 1316 add r8, rax
michael@0 1317 adc r9, rdx
michael@0 1318 adc rcx, 0
michael@0 1319 mov rbp, r9
michael@0 1320 mov r12, rcx
michael@0 1321 mov rax, qword ptr [-24+128+rsp]
michael@0 1322 mul qword ptr [8+128+rsp]
michael@0 1323 add r8, rax
michael@0 1324 adc rbp, rdx
michael@0 1325 adc r12, 0
michael@0 1326 mov qword ptr [96+r11], r8
michael@0 1327 mov r9, r12
michael@0 1328 mov rcx, rbp
michael@0 1329 mov r8, r10
michael@0 1330 mov rax, qword ptr [-120+128+rsp]
michael@0 1331 mul qword ptr [112+128+rsp]
michael@0 1332 add rcx, rax
michael@0 1333 adc r9, rdx
michael@0 1334 adc r8, 0
michael@0 1335 mov rax, qword ptr [-112+128+rsp]
michael@0 1336 mul qword ptr [104+128+rsp]
michael@0 1337 add rcx, rax
michael@0 1338 adc r9, rdx
michael@0 1339 adc r8, 0
michael@0 1340 mov rax, qword ptr [-104+128+rsp]
michael@0 1341 mul qword ptr [96+128+rsp]
michael@0 1342 add rcx, rax
michael@0 1343 adc r9, rdx
michael@0 1344 adc r8, 0
michael@0 1345 mov rax, qword ptr [-96+128+rsp]
michael@0 1346 mul qword ptr [88+128+rsp]
michael@0 1347 add rcx, rax
michael@0 1348 adc r9, rdx
michael@0 1349 adc r8, 0
michael@0 1350 mov rax, qword ptr [-88+128+rsp]
michael@0 1351 mul qword ptr [80+128+rsp]
michael@0 1352 add rcx, rax
michael@0 1353 adc r9, rdx
michael@0 1354 adc r8, 0
michael@0 1355 mov rax, qword ptr [-80+128+rsp]
michael@0 1356 mul qword ptr [72+128+rsp]
michael@0 1357 add rcx, rax
michael@0 1358 adc r9, rdx
michael@0 1359 adc r8, 0
michael@0 1360 mov rax, qword ptr [-72+128+rsp]
michael@0 1361 mul qword ptr [64+128+rsp]
michael@0 1362 add rcx, rax
michael@0 1363 adc r9, rdx
michael@0 1364 adc r8, 0
michael@0 1365 mov rax, qword ptr [-64+128+rsp]
michael@0 1366 mul qword ptr [56+128+rsp]
michael@0 1367 add rcx, rax
michael@0 1368 adc r9, rdx
michael@0 1369 adc r8, 0
michael@0 1370 mov rax, qword ptr [-56+128+rsp]
michael@0 1371 mul qword ptr [48+128+rsp]
michael@0 1372 add rcx, rax
michael@0 1373 adc r9, rdx
michael@0 1374 adc r8, 0
michael@0 1375 mov rax, qword ptr [-48+128+rsp]
michael@0 1376 mul qword ptr [40+128+rsp]
michael@0 1377 add rcx, rax
michael@0 1378 adc r9, rdx
michael@0 1379 adc r8, 0
michael@0 1380 mov rax, qword ptr [-40+128+rsp]
michael@0 1381 mul qword ptr [32+128+rsp]
michael@0 1382 add rcx, rax
michael@0 1383 adc r9, rdx
michael@0 1384 adc r8, 0
michael@0 1385 mov rax, qword ptr [-32+128+rsp]
michael@0 1386 mul qword ptr [24+128+rsp]
michael@0 1387 add rcx, rax
michael@0 1388 adc r9, rdx
michael@0 1389 adc r8, 0
michael@0 1390 mov rax, qword ptr [-24+128+rsp]
michael@0 1391 mul qword ptr [16+128+rsp]
michael@0 1392 add rcx, rax
michael@0 1393 adc r9, rdx
michael@0 1394 adc r8, 0
michael@0 1395 mov rbp, r9
michael@0 1396 mov r12, r8
michael@0 1397 mov rax, qword ptr [-16+128+rsp]
michael@0 1398 mul qword ptr [8+128+rsp]
michael@0 1399 add rcx, rax
michael@0 1400 adc rbp, rdx
michael@0 1401 adc r12, 0
michael@0 1402 mov qword ptr [104+r11], rcx
michael@0 1403 mov r9, r12
michael@0 1404 mov r8, rbp
michael@0 1405 mov rcx, r10
michael@0 1406 mov rax, qword ptr [-120+128+rsp]
michael@0 1407 mul qword ptr [120+128+rsp]
michael@0 1408 add r8, rax
michael@0 1409 adc r9, rdx
michael@0 1410 adc rcx, 0
michael@0 1411 mov rax, qword ptr [-112+128+rsp]
michael@0 1412 mul qword ptr [112+128+rsp]
michael@0 1413 add r8, rax
michael@0 1414 adc r9, rdx
michael@0 1415 adc rcx, 0
michael@0 1416 mov rax, qword ptr [-104+128+rsp]
michael@0 1417 mul qword ptr [104+128+rsp]
michael@0 1418 add r8, rax
michael@0 1419 adc r9, rdx
michael@0 1420 adc rcx, 0
michael@0 1421 mov rax, qword ptr [-96+128+rsp]
michael@0 1422 mul qword ptr [96+128+rsp]
michael@0 1423 add r8, rax
michael@0 1424 adc r9, rdx
michael@0 1425 adc rcx, 0
michael@0 1426 mov rax, qword ptr [-88+128+rsp]
michael@0 1427 mul qword ptr [88+128+rsp]
michael@0 1428 add r8, rax
michael@0 1429 adc r9, rdx
michael@0 1430 adc rcx, 0
michael@0 1431 mov rax, qword ptr [-80+128+rsp]
michael@0 1432 mul qword ptr [80+128+rsp]
michael@0 1433 add r8, rax
michael@0 1434 adc r9, rdx
michael@0 1435 adc rcx, 0
michael@0 1436 mov rax, qword ptr [-72+128+rsp]
michael@0 1437 mul qword ptr [72+128+rsp]
michael@0 1438 add r8, rax
michael@0 1439 adc r9, rdx
michael@0 1440 adc rcx, 0
michael@0 1441 mov rax, qword ptr [-64+128+rsp]
michael@0 1442 mul qword ptr [64+128+rsp]
michael@0 1443 add r8, rax
michael@0 1444 adc r9, rdx
michael@0 1445 adc rcx, 0
michael@0 1446 mov rax, qword ptr [-56+128+rsp]
michael@0 1447 mul qword ptr [56+128+rsp]
michael@0 1448 add r8, rax
michael@0 1449 adc r9, rdx
michael@0 1450 adc rcx, 0
michael@0 1451 mov rax, qword ptr [-48+128+rsp]
michael@0 1452 mul qword ptr [48+128+rsp]
michael@0 1453 add r8, rax
michael@0 1454 adc r9, rdx
michael@0 1455 adc rcx, 0
michael@0 1456 mov rax, qword ptr [-40+128+rsp]
michael@0 1457 mul qword ptr [40+128+rsp]
michael@0 1458 add r8, rax
michael@0 1459 adc r9, rdx
michael@0 1460 adc rcx, 0
michael@0 1461 mov rax, qword ptr [-32+128+rsp]
michael@0 1462 mul qword ptr [32+128+rsp]
michael@0 1463 add r8, rax
michael@0 1464 adc r9, rdx
michael@0 1465 adc rcx, 0
michael@0 1466 mov rax, qword ptr [-24+128+rsp]
michael@0 1467 mul qword ptr [24+128+rsp]
michael@0 1468 add r8, rax
michael@0 1469 adc r9, rdx
michael@0 1470 adc rcx, 0
michael@0 1471 mov rax, qword ptr [-16+128+rsp]
michael@0 1472 mul qword ptr [16+128+rsp]
michael@0 1473 add r8, rax
michael@0 1474 adc r9, rdx
michael@0 1475 adc rcx, 0
michael@0 1476 mov rbp, r9
michael@0 1477 mov r12, rcx
michael@0 1478 mov rax, qword ptr [-8+128+rsp]
michael@0 1479 mul qword ptr [8+128+rsp]
michael@0 1480 add r8, rax
michael@0 1481 adc rbp, rdx
michael@0 1482 adc r12, 0
michael@0 1483 mov qword ptr [112+r11], r8
michael@0 1484 mov r9, r12
michael@0 1485 mov rcx, rbp
michael@0 1486 mov r8, r10
michael@0 1487 mov rax, qword ptr [-120+128+rsp]
michael@0 1488 mul qword ptr [128+128+rsp]
michael@0 1489 add rcx, rax
michael@0 1490 adc r9, rdx
michael@0 1491 adc r8, 0
michael@0 1492 mov rax, qword ptr [-112+128+rsp]
michael@0 1493 mul qword ptr [120+128+rsp]
michael@0 1494 add rcx, rax
michael@0 1495 adc r9, rdx
michael@0 1496 adc r8, 0
michael@0 1497 mov rax, qword ptr [-104+128+rsp]
michael@0 1498 mul qword ptr [112+128+rsp]
michael@0 1499 add rcx, rax
michael@0 1500 adc r9, rdx
michael@0 1501 adc r8, 0
michael@0 1502 mov rax, qword ptr [-96+128+rsp]
michael@0 1503 mul qword ptr [104+128+rsp]
michael@0 1504 add rcx, rax
michael@0 1505 adc r9, rdx
michael@0 1506 adc r8, 0
michael@0 1507 mov rax, qword ptr [-88+128+rsp]
michael@0 1508 mul qword ptr [96+128+rsp]
michael@0 1509 add rcx, rax
michael@0 1510 adc r9, rdx
michael@0 1511 adc r8, 0
michael@0 1512 mov rax, qword ptr [-80+128+rsp]
michael@0 1513 mul qword ptr [88+128+rsp]
michael@0 1514 add rcx, rax
michael@0 1515 adc r9, rdx
michael@0 1516 adc r8, 0
michael@0 1517 mov rax, qword ptr [-72+128+rsp]
michael@0 1518 mul qword ptr [80+128+rsp]
michael@0 1519 add rcx, rax
michael@0 1520 adc r9, rdx
michael@0 1521 adc r8, 0
michael@0 1522 mov rax, qword ptr [-64+128+rsp]
michael@0 1523 mul qword ptr [72+128+rsp]
michael@0 1524 add rcx, rax
michael@0 1525 adc r9, rdx
michael@0 1526 adc r8, 0
michael@0 1527 mov rax, qword ptr [-56+128+rsp]
michael@0 1528 mul qword ptr [64+128+rsp]
michael@0 1529 add rcx, rax
michael@0 1530 adc r9, rdx
michael@0 1531 adc r8, 0
michael@0 1532 mov rax, qword ptr [-48+128+rsp]
michael@0 1533 mul qword ptr [56+128+rsp]
michael@0 1534 add rcx, rax
michael@0 1535 adc r9, rdx
michael@0 1536 adc r8, 0
michael@0 1537 mov rax, qword ptr [-40+128+rsp]
michael@0 1538 mul qword ptr [48+128+rsp]
michael@0 1539 add rcx, rax
michael@0 1540 adc r9, rdx
michael@0 1541 adc r8, 0
michael@0 1542 mov rax, qword ptr [-32+128+rsp]
michael@0 1543 mul qword ptr [40+128+rsp]
michael@0 1544 add rcx, rax
michael@0 1545 adc r9, rdx
michael@0 1546 adc r8, 0
michael@0 1547 mov rax, qword ptr [-24+128+rsp]
michael@0 1548 mul qword ptr [32+128+rsp]
michael@0 1549 add rcx, rax
michael@0 1550 adc r9, rdx
michael@0 1551 adc r8, 0
michael@0 1552 mov rax, qword ptr [-16+128+rsp]
michael@0 1553 mul qword ptr [24+128+rsp]
michael@0 1554 add rcx, rax
michael@0 1555 adc r9, rdx
michael@0 1556 adc r8, 0
michael@0 1557 mov rax, qword ptr [-8+128+rsp]
michael@0 1558 mul qword ptr [16+128+rsp]
michael@0 1559 add rcx, rax
michael@0 1560 adc r9, rdx
michael@0 1561 adc r8, 0
michael@0 1562 mov rbp, r9
michael@0 1563 mov r12, r8
michael@0 1564 mov rax, qword ptr [128+rsp]
michael@0 1565 mul qword ptr [8+128+rsp]
michael@0 1566 add rcx, rax
michael@0 1567 adc rbp, rdx
michael@0 1568 adc r12, 0
michael@0 1569 mov qword ptr [120+r11], rcx
michael@0 1570 mov r9, r12
michael@0 1571 mov r8, rbp
michael@0 1572 mov rcx, r10
michael@0 1573 mov rax, qword ptr [-112+128+rsp]
michael@0 1574 mul qword ptr [128+128+rsp]
michael@0 1575 add r8, rax
michael@0 1576 adc r9, rdx
michael@0 1577 adc rcx, 0
michael@0 1578 mov rax, qword ptr [-104+128+rsp]
michael@0 1579 mul qword ptr [120+128+rsp]
michael@0 1580 add r8, rax
michael@0 1581 adc r9, rdx
michael@0 1582 adc rcx, 0
michael@0 1583 mov rax, qword ptr [-96+128+rsp]
michael@0 1584 mul qword ptr [112+128+rsp]
michael@0 1585 add r8, rax
michael@0 1586 adc r9, rdx
michael@0 1587 adc rcx, 0
michael@0 1588 mov rax, qword ptr [-88+128+rsp]
michael@0 1589 mul qword ptr [104+128+rsp]
michael@0 1590 add r8, rax
michael@0 1591 adc r9, rdx
michael@0 1592 adc rcx, 0
michael@0 1593 mov rax, qword ptr [-80+128+rsp]
michael@0 1594 mul qword ptr [96+128+rsp]
michael@0 1595 add r8, rax
michael@0 1596 adc r9, rdx
michael@0 1597 adc rcx, 0
michael@0 1598 mov rax, qword ptr [-72+128+rsp]
michael@0 1599 mul qword ptr [88+128+rsp]
michael@0 1600 add r8, rax
michael@0 1601 adc r9, rdx
michael@0 1602 adc rcx, 0
michael@0 1603 mov rax, qword ptr [-64+128+rsp]
michael@0 1604 mul qword ptr [80+128+rsp]
michael@0 1605 add r8, rax
michael@0 1606 adc r9, rdx
michael@0 1607 adc rcx, 0
michael@0 1608 mov rax, qword ptr [-56+128+rsp]
michael@0 1609 mul qword ptr [72+128+rsp]
michael@0 1610 add r8, rax
michael@0 1611 adc r9, rdx
michael@0 1612 adc rcx, 0
michael@0 1613 mov rax, qword ptr [-48+128+rsp]
michael@0 1614 mul qword ptr [64+128+rsp]
michael@0 1615 add r8, rax
michael@0 1616 adc r9, rdx
michael@0 1617 adc rcx, 0
michael@0 1618 mov rax, qword ptr [-40+128+rsp]
michael@0 1619 mul qword ptr [56+128+rsp]
michael@0 1620 add r8, rax
michael@0 1621 adc r9, rdx
michael@0 1622 adc rcx, 0
michael@0 1623 mov rax, qword ptr [-32+128+rsp]
michael@0 1624 mul qword ptr [48+128+rsp]
michael@0 1625 add r8, rax
michael@0 1626 adc r9, rdx
michael@0 1627 adc rcx, 0
michael@0 1628 mov rax, qword ptr [-24+128+rsp]
michael@0 1629 mul qword ptr [40+128+rsp]
michael@0 1630 add r8, rax
michael@0 1631 adc r9, rdx
michael@0 1632 adc rcx, 0
michael@0 1633 mov rax, qword ptr [-16+128+rsp]
michael@0 1634 mul qword ptr [32+128+rsp]
michael@0 1635 add r8, rax
michael@0 1636 adc r9, rdx
michael@0 1637 adc rcx, 0
michael@0 1638 mov rax, qword ptr [-8+128+rsp]
michael@0 1639 mul qword ptr [24+128+rsp]
michael@0 1640 add r8, rax
michael@0 1641 adc r9, rdx
michael@0 1642 adc rcx, 0
michael@0 1643 mov rbp, r9
michael@0 1644 mov r12, rcx
michael@0 1645 mov rax, qword ptr [128+rsp]
michael@0 1646 mul qword ptr [16+128+rsp]
michael@0 1647 add r8, rax
michael@0 1648 adc rbp, rdx
michael@0 1649 adc r12, 0
michael@0 1650 mov qword ptr [128+r11], r8
michael@0 1651 mov r9, r12
michael@0 1652 mov rcx, rbp
michael@0 1653 mov r8, r10
michael@0 1654 mov rax, qword ptr [-104+128+rsp]
michael@0 1655 mul qword ptr [128+128+rsp]
michael@0 1656 add rcx, rax
michael@0 1657 adc r9, rdx
michael@0 1658 adc r8, 0
michael@0 1659 mov rax, qword ptr [-96+128+rsp]
michael@0 1660 mul qword ptr [120+128+rsp]
michael@0 1661 add rcx, rax
michael@0 1662 adc r9, rdx
michael@0 1663 adc r8, 0
michael@0 1664 mov rax, qword ptr [-88+128+rsp]
michael@0 1665 mul qword ptr [112+128+rsp]
michael@0 1666 add rcx, rax
michael@0 1667 adc r9, rdx
michael@0 1668 adc r8, 0
michael@0 1669 mov rax, qword ptr [-80+128+rsp]
michael@0 1670 mul qword ptr [104+128+rsp]
michael@0 1671 add rcx, rax
michael@0 1672 adc r9, rdx
michael@0 1673 adc r8, 0
michael@0 1674 mov rax, qword ptr [-72+128+rsp]
michael@0 1675 mul qword ptr [96+128+rsp]
michael@0 1676 add rcx, rax
michael@0 1677 adc r9, rdx
michael@0 1678 adc r8, 0
michael@0 1679 mov rax, qword ptr [-64+128+rsp]
michael@0 1680 mul qword ptr [88+128+rsp]
michael@0 1681 add rcx, rax
michael@0 1682 adc r9, rdx
michael@0 1683 adc r8, 0
michael@0 1684 mov rax, qword ptr [-56+128+rsp]
michael@0 1685 mul qword ptr [80+128+rsp]
michael@0 1686 add rcx, rax
michael@0 1687 adc r9, rdx
michael@0 1688 adc r8, 0
michael@0 1689 mov rax, qword ptr [-48+128+rsp]
michael@0 1690 mul qword ptr [72+128+rsp]
michael@0 1691 add rcx, rax
michael@0 1692 adc r9, rdx
michael@0 1693 adc r8, 0
michael@0 1694 mov rax, qword ptr [-40+128+rsp]
michael@0 1695 mul qword ptr [64+128+rsp]
michael@0 1696 add rcx, rax
michael@0 1697 adc r9, rdx
michael@0 1698 adc r8, 0
michael@0 1699 mov rax, qword ptr [-32+128+rsp]
michael@0 1700 mul qword ptr [56+128+rsp]
michael@0 1701 add rcx, rax
michael@0 1702 adc r9, rdx
michael@0 1703 adc r8, 0
michael@0 1704 mov rax, qword ptr [-24+128+rsp]
michael@0 1705 mul qword ptr [48+128+rsp]
michael@0 1706 add rcx, rax
michael@0 1707 adc r9, rdx
michael@0 1708 adc r8, 0
michael@0 1709 mov rax, qword ptr [-16+128+rsp]
michael@0 1710 mul qword ptr [40+128+rsp]
michael@0 1711 add rcx, rax
michael@0 1712 adc r9, rdx
michael@0 1713 adc r8, 0
michael@0 1714 mov rax, qword ptr [-8+128+rsp]
michael@0 1715 mul qword ptr [32+128+rsp]
michael@0 1716 add rcx, rax
michael@0 1717 adc r9, rdx
michael@0 1718 adc r8, 0
michael@0 1719 mov rbp, r9
michael@0 1720 mov r12, r8
michael@0 1721 mov rax, qword ptr [128+rsp]
michael@0 1722 mul qword ptr [24+128+rsp]
michael@0 1723 add rcx, rax
michael@0 1724 adc rbp, rdx
michael@0 1725 adc r12, 0
michael@0 1726 mov qword ptr [136+r11], rcx
michael@0 1727 mov r9, r12
michael@0 1728 mov r8, rbp
michael@0 1729 mov rcx, r10
michael@0 1730 mov rax, qword ptr [-96+128+rsp]
michael@0 1731 mul qword ptr [128+128+rsp]
michael@0 1732 add r8, rax
michael@0 1733 adc r9, rdx
michael@0 1734 adc rcx, 0
michael@0 1735 mov rax, qword ptr [-88+128+rsp]
michael@0 1736 mul qword ptr [120+128+rsp]
michael@0 1737 add r8, rax
michael@0 1738 adc r9, rdx
michael@0 1739 adc rcx, 0
michael@0 1740 mov rax, qword ptr [-80+128+rsp]
michael@0 1741 mul qword ptr [112+128+rsp]
michael@0 1742 add r8, rax
michael@0 1743 adc r9, rdx
michael@0 1744 adc rcx, 0
michael@0 1745 mov rax, qword ptr [-72+128+rsp]
michael@0 1746 mul qword ptr [104+128+rsp]
michael@0 1747 add r8, rax
michael@0 1748 adc r9, rdx
michael@0 1749 adc rcx, 0
michael@0 1750 mov rax, qword ptr [-64+128+rsp]
michael@0 1751 mul qword ptr [96+128+rsp]
michael@0 1752 add r8, rax
michael@0 1753 adc r9, rdx
michael@0 1754 adc rcx, 0
michael@0 1755 mov rax, qword ptr [-56+128+rsp]
michael@0 1756 mul qword ptr [88+128+rsp]
michael@0 1757 add r8, rax
michael@0 1758 adc r9, rdx
michael@0 1759 adc rcx, 0
michael@0 1760 mov rax, qword ptr [-48+128+rsp]
michael@0 1761 mul qword ptr [80+128+rsp]
michael@0 1762 add r8, rax
michael@0 1763 adc r9, rdx
michael@0 1764 adc rcx, 0
michael@0 1765 mov rax, qword ptr [-40+128+rsp]
michael@0 1766 mul qword ptr [72+128+rsp]
michael@0 1767 add r8, rax
michael@0 1768 adc r9, rdx
michael@0 1769 adc rcx, 0
michael@0 1770 mov rax, qword ptr [-32+128+rsp]
michael@0 1771 mul qword ptr [64+128+rsp]
michael@0 1772 add r8, rax
michael@0 1773 adc r9, rdx
michael@0 1774 adc rcx, 0
michael@0 1775 mov rax, qword ptr [-24+128+rsp]
michael@0 1776 mul qword ptr [56+128+rsp]
michael@0 1777 add r8, rax
michael@0 1778 adc r9, rdx
michael@0 1779 adc rcx, 0
michael@0 1780 mov rax, qword ptr [-16+128+rsp]
michael@0 1781 mul qword ptr [48+128+rsp]
michael@0 1782 add r8, rax
michael@0 1783 adc r9, rdx
michael@0 1784 adc rcx, 0
michael@0 1785 mov rax, qword ptr [-8+128+rsp]
michael@0 1786 mul qword ptr [40+128+rsp]
michael@0 1787 add r8, rax
michael@0 1788 adc r9, rdx
michael@0 1789 adc rcx, 0
michael@0 1790 mov rbp, r9
michael@0 1791 mov r12, rcx
michael@0 1792 mov rax, qword ptr [128+rsp]
michael@0 1793 mul qword ptr [32+128+rsp]
michael@0 1794 add r8, rax
michael@0 1795 adc rbp, rdx
michael@0 1796 adc r12, 0
michael@0 1797 mov qword ptr [144+r11], r8
michael@0 1798 mov r9, r12
michael@0 1799 mov rcx, rbp
michael@0 1800 mov r8, r10
michael@0 1801 mov rax, qword ptr [-88+128+rsp]
michael@0 1802 mul qword ptr [128+128+rsp]
michael@0 1803 add rcx, rax
michael@0 1804 adc r9, rdx
michael@0 1805 adc r8, 0
michael@0 1806 mov rax, qword ptr [-80+128+rsp]
michael@0 1807 mul qword ptr [120+128+rsp]
michael@0 1808 add rcx, rax
michael@0 1809 adc r9, rdx
michael@0 1810 adc r8, 0
michael@0 1811 mov rax, qword ptr [-72+128+rsp]
michael@0 1812 mul qword ptr [112+128+rsp]
michael@0 1813 add rcx, rax
michael@0 1814 adc r9, rdx
michael@0 1815 adc r8, 0
michael@0 1816 mov rax, qword ptr [-64+128+rsp]
michael@0 1817 mul qword ptr [104+128+rsp]
michael@0 1818 add rcx, rax
michael@0 1819 adc r9, rdx
michael@0 1820 adc r8, 0
michael@0 1821 mov rax, qword ptr [-56+128+rsp]
michael@0 1822 mul qword ptr [96+128+rsp]
michael@0 1823 add rcx, rax
michael@0 1824 adc r9, rdx
michael@0 1825 adc r8, 0
michael@0 1826 mov rax, qword ptr [-48+128+rsp]
michael@0 1827 mul qword ptr [88+128+rsp]
michael@0 1828 add rcx, rax
michael@0 1829 adc r9, rdx
michael@0 1830 adc r8, 0
michael@0 1831 mov rax, qword ptr [-40+128+rsp]
michael@0 1832 mul qword ptr [80+128+rsp]
michael@0 1833 add rcx, rax
michael@0 1834 adc r9, rdx
michael@0 1835 adc r8, 0
michael@0 1836 mov rax, qword ptr [-32+128+rsp]
michael@0 1837 mul qword ptr [72+128+rsp]
michael@0 1838 add rcx, rax
michael@0 1839 adc r9, rdx
michael@0 1840 adc r8, 0
michael@0 1841 mov rax, qword ptr [-24+128+rsp]
michael@0 1842 mul qword ptr [64+128+rsp]
michael@0 1843 add rcx, rax
michael@0 1844 adc r9, rdx
michael@0 1845 adc r8, 0
michael@0 1846 mov rax, qword ptr [-16+128+rsp]
michael@0 1847 mul qword ptr [56+128+rsp]
michael@0 1848 add rcx, rax
michael@0 1849 adc r9, rdx
michael@0 1850 adc r8, 0
michael@0 1851 mov rax, qword ptr [-8+128+rsp]
michael@0 1852 mul qword ptr [48+128+rsp]
michael@0 1853 add rcx, rax
michael@0 1854 adc r9, rdx
michael@0 1855 adc r8, 0
michael@0 1856 mov rbp, r9
michael@0 1857 mov r12, r8
michael@0 1858 mov rax, qword ptr [128+rsp]
michael@0 1859 mul qword ptr [40+128+rsp]
michael@0 1860 add rcx, rax
michael@0 1861 adc rbp, rdx
michael@0 1862 adc r12, 0
michael@0 1863 mov qword ptr [152+r11], rcx
michael@0 1864 mov r9, r12
michael@0 1865 mov r8, rbp
michael@0 1866 mov rcx, r10
michael@0 1867 mov rax, qword ptr [-80+128+rsp]
michael@0 1868 mul qword ptr [128+128+rsp]
michael@0 1869 add r8, rax
michael@0 1870 adc r9, rdx
michael@0 1871 adc rcx, 0
michael@0 1872 mov rax, qword ptr [-72+128+rsp]
michael@0 1873 mul qword ptr [120+128+rsp]
michael@0 1874 add r8, rax
michael@0 1875 adc r9, rdx
michael@0 1876 adc rcx, 0
michael@0 1877 mov rax, qword ptr [-64+128+rsp]
michael@0 1878 mul qword ptr [112+128+rsp]
michael@0 1879 add r8, rax
michael@0 1880 adc r9, rdx
michael@0 1881 adc rcx, 0
michael@0 1882 mov rax, qword ptr [-56+128+rsp]
michael@0 1883 mul qword ptr [104+128+rsp]
michael@0 1884 add r8, rax
michael@0 1885 adc r9, rdx
michael@0 1886 adc rcx, 0
michael@0 1887 mov rax, qword ptr [-48+128+rsp]
michael@0 1888 mul qword ptr [96+128+rsp]
michael@0 1889 add r8, rax
michael@0 1890 adc r9, rdx
michael@0 1891 adc rcx, 0
michael@0 1892 mov rax, qword ptr [-40+128+rsp]
michael@0 1893 mul qword ptr [88+128+rsp]
michael@0 1894 add r8, rax
michael@0 1895 adc r9, rdx
michael@0 1896 adc rcx, 0
michael@0 1897 mov rax, qword ptr [-32+128+rsp]
michael@0 1898 mul qword ptr [80+128+rsp]
michael@0 1899 add r8, rax
michael@0 1900 adc r9, rdx
michael@0 1901 adc rcx, 0
michael@0 1902 mov rax, qword ptr [-24+128+rsp]
michael@0 1903 mul qword ptr [72+128+rsp]
michael@0 1904 add r8, rax
michael@0 1905 adc r9, rdx
michael@0 1906 adc rcx, 0
michael@0 1907 mov rax, qword ptr [-16+128+rsp]
michael@0 1908 mul qword ptr [64+128+rsp]
michael@0 1909 add r8, rax
michael@0 1910 adc r9, rdx
michael@0 1911 adc rcx, 0
michael@0 1912 mov rax, qword ptr [-8+128+rsp]
michael@0 1913 mul qword ptr [56+128+rsp]
michael@0 1914 add r8, rax
michael@0 1915 adc r9, rdx
michael@0 1916 adc rcx, 0
michael@0 1917 mov rbp, r9
michael@0 1918 mov r12, rcx
michael@0 1919 mov rax, qword ptr [128+rsp]
michael@0 1920 mul qword ptr [48+128+rsp]
michael@0 1921 add r8, rax
michael@0 1922 adc rbp, rdx
michael@0 1923 adc r12, 0
michael@0 1924 mov qword ptr [160+r11], r8
michael@0 1925 mov r9, r12
michael@0 1926 mov rcx, rbp
michael@0 1927 mov r8, r10
michael@0 1928 mov rax, qword ptr [-72+128+rsp]
michael@0 1929 mul qword ptr [128+128+rsp]
michael@0 1930 add rcx, rax
michael@0 1931 adc r9, rdx
michael@0 1932 adc r8, 0
michael@0 1933 mov rax, qword ptr [-64+128+rsp]
michael@0 1934 mul qword ptr [120+128+rsp]
michael@0 1935 add rcx, rax
michael@0 1936 adc r9, rdx
michael@0 1937 adc r8, 0
michael@0 1938 mov rax, qword ptr [-56+128+rsp]
michael@0 1939 mul qword ptr [112+128+rsp]
michael@0 1940 add rcx, rax
michael@0 1941 adc r9, rdx
michael@0 1942 adc r8, 0
michael@0 1943 mov rax, qword ptr [-48+128+rsp]
michael@0 1944 mul qword ptr [104+128+rsp]
michael@0 1945 add rcx, rax
michael@0 1946 adc r9, rdx
michael@0 1947 adc r8, 0
michael@0 1948 mov rax, qword ptr [-40+128+rsp]
michael@0 1949 mul qword ptr [96+128+rsp]
michael@0 1950 add rcx, rax
michael@0 1951 adc r9, rdx
michael@0 1952 adc r8, 0
michael@0 1953 mov rax, qword ptr [-32+128+rsp]
michael@0 1954 mul qword ptr [88+128+rsp]
michael@0 1955 add rcx, rax
michael@0 1956 adc r9, rdx
michael@0 1957 adc r8, 0
michael@0 1958 mov rax, qword ptr [-24+128+rsp]
michael@0 1959 mul qword ptr [80+128+rsp]
michael@0 1960 add rcx, rax
michael@0 1961 adc r9, rdx
michael@0 1962 adc r8, 0
michael@0 1963 mov rax, qword ptr [-16+128+rsp]
michael@0 1964 mul qword ptr [72+128+rsp]
michael@0 1965 add rcx, rax
michael@0 1966 adc r9, rdx
michael@0 1967 adc r8, 0
michael@0 1968 mov rax, qword ptr [-8+128+rsp]
michael@0 1969 mul qword ptr [64+128+rsp]
michael@0 1970 add rcx, rax
michael@0 1971 adc r9, rdx
michael@0 1972 adc r8, 0
michael@0 1973 mov rbp, r9
michael@0 1974 mov r12, r8
michael@0 1975 mov rax, qword ptr [128+rsp]
michael@0 1976 mul qword ptr [56+128+rsp]
michael@0 1977 add rcx, rax
michael@0 1978 adc rbp, rdx
michael@0 1979 adc r12, 0
michael@0 1980 mov qword ptr [168+r11], rcx
michael@0 1981 mov r9, r12
michael@0 1982 mov r8, rbp
michael@0 1983 mov rcx, r10
michael@0 1984 mov rax, qword ptr [-64+128+rsp]
michael@0 1985 mul qword ptr [128+128+rsp]
michael@0 1986 add r8, rax
michael@0 1987 adc r9, rdx
michael@0 1988 adc rcx, 0
michael@0 1989 mov rax, qword ptr [-56+128+rsp]
michael@0 1990 mul qword ptr [120+128+rsp]
michael@0 1991 add r8, rax
michael@0 1992 adc r9, rdx
michael@0 1993 adc rcx, 0
michael@0 1994 mov rax, qword ptr [-48+128+rsp]
michael@0 1995 mul qword ptr [112+128+rsp]
michael@0 1996 add r8, rax
michael@0 1997 adc r9, rdx
michael@0 1998 adc rcx, 0
michael@0 1999 mov rax, qword ptr [-40+128+rsp]
michael@0 2000 mul qword ptr [104+128+rsp]
michael@0 2001 add r8, rax
michael@0 2002 adc r9, rdx
michael@0 2003 adc rcx, 0
michael@0 2004 mov rax, qword ptr [-32+128+rsp]
michael@0 2005 mul qword ptr [96+128+rsp]
michael@0 2006 add r8, rax
michael@0 2007 adc r9, rdx
michael@0 2008 adc rcx, 0
michael@0 2009 mov rax, qword ptr [-24+128+rsp]
michael@0 2010 mul qword ptr [88+128+rsp]
michael@0 2011 add r8, rax
michael@0 2012 adc r9, rdx
michael@0 2013 adc rcx, 0
michael@0 2014 mov rax, qword ptr [-16+128+rsp]
michael@0 2015 mul qword ptr [80+128+rsp]
michael@0 2016 add r8, rax
michael@0 2017 adc r9, rdx
michael@0 2018 adc rcx, 0
michael@0 2019 mov rax, qword ptr [-8+128+rsp]
michael@0 2020 mul qword ptr [72+128+rsp]
michael@0 2021 add r8, rax
michael@0 2022 adc r9, rdx
michael@0 2023 adc rcx, 0
michael@0 2024 mov rbp, r9
michael@0 2025 mov r12, rcx
michael@0 2026 mov rax, qword ptr [128+rsp]
michael@0 2027 mul qword ptr [64+128+rsp]
michael@0 2028 add r8, rax
michael@0 2029 adc rbp, rdx
michael@0 2030 adc r12, 0
michael@0 2031 mov qword ptr [176+r11], r8
michael@0 2032 mov r9, r12
michael@0 2033 mov rcx, rbp
michael@0 2034 mov r8, r10
michael@0 2035 mov rax, qword ptr [-56+128+rsp]
michael@0 2036 mul qword ptr [128+128+rsp]
michael@0 2037 add rcx, rax
michael@0 2038 adc r9, rdx
michael@0 2039 adc r8, 0
michael@0 2040 mov rax, qword ptr [-48+128+rsp]
michael@0 2041 mul qword ptr [120+128+rsp]
michael@0 2042 add rcx, rax
michael@0 2043 adc r9, rdx
michael@0 2044 adc r8, 0
michael@0 2045 mov rax, qword ptr [-40+128+rsp]
michael@0 2046 mul qword ptr [112+128+rsp]
michael@0 2047 add rcx, rax
michael@0 2048 adc r9, rdx
michael@0 2049 adc r8, 0
michael@0 2050 mov rax, qword ptr [-32+128+rsp]
michael@0 2051 mul qword ptr [104+128+rsp]
michael@0 2052 add rcx, rax
michael@0 2053 adc r9, rdx
michael@0 2054 adc r8, 0
michael@0 2055 mov rax, qword ptr [-24+128+rsp]
michael@0 2056 mul qword ptr [96+128+rsp]
michael@0 2057 add rcx, rax
michael@0 2058 adc r9, rdx
michael@0 2059 adc r8, 0
michael@0 2060 mov rax, qword ptr [-16+128+rsp]
michael@0 2061 mul qword ptr [88+128+rsp]
michael@0 2062 add rcx, rax
michael@0 2063 adc r9, rdx
michael@0 2064 adc r8, 0
michael@0 2065 mov rax, qword ptr [-8+128+rsp]
michael@0 2066 mul qword ptr [80+128+rsp]
michael@0 2067 add rcx, rax
michael@0 2068 adc r9, rdx
michael@0 2069 adc r8, 0
michael@0 2070 mov rbp, r9
michael@0 2071 mov r12, r8
michael@0 2072 mov rax, qword ptr [128+rsp]
michael@0 2073 mul qword ptr [72+128+rsp]
michael@0 2074 add rcx, rax
michael@0 2075 adc rbp, rdx
michael@0 2076 adc r12, 0
michael@0 2077 mov qword ptr [184+r11], rcx
michael@0 2078 mov r9, r12
michael@0 2079 mov r8, rbp
michael@0 2080 mov rcx, r10
michael@0 2081 mov rax, qword ptr [-48+128+rsp]
michael@0 2082 mul qword ptr [128+128+rsp]
michael@0 2083 add r8, rax
michael@0 2084 adc r9, rdx
michael@0 2085 adc rcx, 0
michael@0 2086 mov rax, qword ptr [-40+128+rsp]
michael@0 2087 mul qword ptr [120+128+rsp]
michael@0 2088 add r8, rax
michael@0 2089 adc r9, rdx
michael@0 2090 adc rcx, 0
michael@0 2091 mov rax, qword ptr [-32+128+rsp]
michael@0 2092 mul qword ptr [112+128+rsp]
michael@0 2093 add r8, rax
michael@0 2094 adc r9, rdx
michael@0 2095 adc rcx, 0
michael@0 2096 mov rax, qword ptr [-24+128+rsp]
michael@0 2097 mul qword ptr [104+128+rsp]
michael@0 2098 add r8, rax
michael@0 2099 adc r9, rdx
michael@0 2100 adc rcx, 0
michael@0 2101 mov rax, qword ptr [-16+128+rsp]
michael@0 2102 mul qword ptr [96+128+rsp]
michael@0 2103 add r8, rax
michael@0 2104 adc r9, rdx
michael@0 2105 adc rcx, 0
michael@0 2106 mov rax, qword ptr [-8+128+rsp]
michael@0 2107 mul qword ptr [88+128+rsp]
michael@0 2108 add r8, rax
michael@0 2109 adc r9, rdx
michael@0 2110 adc rcx, 0
michael@0 2111 mov rbp, r9
michael@0 2112 mov r12, rcx
michael@0 2113 mov rax, qword ptr [128+rsp]
michael@0 2114 mul qword ptr [80+128+rsp]
michael@0 2115 add r8, rax
michael@0 2116 adc rbp, rdx
michael@0 2117 adc r12, 0
michael@0 2118 mov qword ptr [192+r11], r8
michael@0 2119 mov r9, r12
michael@0 2120 mov rcx, rbp
michael@0 2121 mov r8, r10
michael@0 2122 mov rax, qword ptr [-40+128+rsp]
michael@0 2123 mul qword ptr [128+128+rsp]
michael@0 2124 add rcx, rax
michael@0 2125 adc r9, rdx
michael@0 2126 adc r8, 0
michael@0 2127 mov rax, qword ptr [-32+128+rsp]
michael@0 2128 mul qword ptr [120+128+rsp]
michael@0 2129 add rcx, rax
michael@0 2130 adc r9, rdx
michael@0 2131 adc r8, 0
michael@0 2132 mov rax, qword ptr [-24+128+rsp]
michael@0 2133 mul qword ptr [112+128+rsp]
michael@0 2134 add rcx, rax
michael@0 2135 adc r9, rdx
michael@0 2136 adc r8, 0
michael@0 2137 mov rax, qword ptr [-16+128+rsp]
michael@0 2138 mul qword ptr [104+128+rsp]
michael@0 2139 add rcx, rax
michael@0 2140 adc r9, rdx
michael@0 2141 adc r8, 0
michael@0 2142 mov rax, qword ptr [-8+128+rsp]
michael@0 2143 mul qword ptr [96+128+rsp]
michael@0 2144 add rcx, rax
michael@0 2145 adc r9, rdx
michael@0 2146 adc r8, 0
michael@0 2147 mov rbp, r9
michael@0 2148 mov r12, r8
michael@0 2149 mov rax, qword ptr [128+rsp]
michael@0 2150 mul qword ptr [88+128+rsp]
michael@0 2151 add rcx, rax
michael@0 2152 adc rbp, rdx
michael@0 2153 adc r12, 0
michael@0 2154 mov qword ptr [200+r11], rcx
michael@0 2155 mov r9, r12
michael@0 2156 mov r8, rbp
michael@0 2157 mov rcx, r10
michael@0 2158 mov rax, qword ptr [-32+128+rsp]
michael@0 2159 mul qword ptr [128+128+rsp]
michael@0 2160 add r8, rax
michael@0 2161 adc r9, rdx
michael@0 2162 adc rcx, 0
michael@0 2163 mov rax, qword ptr [-24+128+rsp]
michael@0 2164 mul qword ptr [120+128+rsp]
michael@0 2165 add r8, rax
michael@0 2166 adc r9, rdx
michael@0 2167 adc rcx, 0
michael@0 2168 mov rax, qword ptr [-16+128+rsp]
michael@0 2169 mul qword ptr [112+128+rsp]
michael@0 2170 add r8, rax
michael@0 2171 adc r9, rdx
michael@0 2172 adc rcx, 0
michael@0 2173 mov rax, qword ptr [-8+128+rsp]
michael@0 2174 mul qword ptr [104+128+rsp]
michael@0 2175 add r8, rax
michael@0 2176 adc r9, rdx
michael@0 2177 adc rcx, 0
michael@0 2178 mov rbp, r9
michael@0 2179 mov r12, rcx
michael@0 2180 mov rax, qword ptr [128+rsp]
michael@0 2181 mul qword ptr [96+128+rsp]
michael@0 2182 add r8, rax
michael@0 2183 adc rbp, rdx
michael@0 2184 adc r12, 0
michael@0 2185 mov qword ptr [208+r11], r8
michael@0 2186 mov r9, r12
michael@0 2187 mov rcx, rbp
michael@0 2188 mov r8, r10
michael@0 2189 mov rax, qword ptr [-24+128+rsp]
michael@0 2190 mul qword ptr [128+128+rsp]
michael@0 2191 add rcx, rax
michael@0 2192 adc r9, rdx
michael@0 2193 adc r8, 0
michael@0 2194 mov rax, qword ptr [-16+128+rsp]
michael@0 2195 mul qword ptr [120+128+rsp]
michael@0 2196 add rcx, rax
michael@0 2197 adc r9, rdx
michael@0 2198 adc r8, 0
michael@0 2199 mov rax, qword ptr [-8+128+rsp]
michael@0 2200 mul qword ptr [112+128+rsp]
michael@0 2201 add rcx, rax
michael@0 2202 adc r9, rdx
michael@0 2203 adc r8, 0
michael@0 2204 mov rbp, r9
michael@0 2205 mov r12, r8
michael@0 2206 mov rax, qword ptr [128+rsp]
michael@0 2207 mul qword ptr [104+128+rsp]
michael@0 2208 add rcx, rax
michael@0 2209 adc rbp, rdx
michael@0 2210 adc r12, 0
michael@0 2211 mov qword ptr [216+r11], rcx
michael@0 2212 mov r9, r12
michael@0 2213 mov r8, rbp
michael@0 2214 mov rcx, r10
michael@0 2215 mov rax, qword ptr [-16+128+rsp]
michael@0 2216 mul qword ptr [128+128+rsp]
michael@0 2217 add r8, rax
michael@0 2218 adc r9, rdx
michael@0 2219 adc rcx, 0
michael@0 2220 mov rax, qword ptr [-8+128+rsp]
michael@0 2221 mul qword ptr [120+128+rsp]
michael@0 2222 add r8, rax
michael@0 2223 adc r9, rdx
michael@0 2224 adc rcx, 0
michael@0 2225 mov rbp, r9
michael@0 2226 mov r12, rcx
michael@0 2227 mov rax, qword ptr [128+rsp]
michael@0 2228 mul qword ptr [112+128+rsp]
michael@0 2229 add r8, rax
michael@0 2230 adc rbp, rdx
michael@0 2231 adc r12, 0
michael@0 2232 mov qword ptr [224+r11], r8
michael@0 2233 mov r9, r12
michael@0 2234 mov rcx, rbp
michael@0 2235 mov r8, r10
michael@0 2236 mov rax, qword ptr [-8+128+rsp]
michael@0 2237 mul qword ptr [128+128+rsp]
michael@0 2238 add rcx, rax
michael@0 2239 adc r9, rdx
michael@0 2240 adc r8, 0
michael@0 2241 mov r12, r8
michael@0 2242 mov rbp, r9
michael@0 2243 mov rax, qword ptr [128+rsp]
michael@0 2244 mul qword ptr [120+128+rsp]
michael@0 2245 add rcx, rax
michael@0 2246 adc rbp, rdx
michael@0 2247 adc r12, 0
michael@0 2248 mov qword ptr [232+r11], rcx
michael@0 2249 mov r8, rbp
michael@0 2250 mov rcx, r12
michael@0 2251 mov rax, qword ptr [128+rsp]
michael@0 2252 mul qword ptr [128+128+rsp]
michael@0 2253 add r8, rax
michael@0 2254 adc rcx, rdx
michael@0 2255 adc r10, 0
michael@0 2256 mov qword ptr [240+r11], r8
michael@0 2257 mov esi, dword ptr [rsi]
michael@0 2258 xor esi, dword ptr [rdi]
michael@0 2259 test rcx, rcx
michael@0 2260 mov qword ptr [248+r11], rcx
michael@0 2261 mov dword ptr [8+rbx], 32
michael@0 2262 jne L76
michael@0 2263 ALIGN 16
michael@0 2264 L84:
michael@0 2265 mov edx, dword ptr [8+rbx]
michael@0 2266 lea edi, dword ptr [-1+rdx]
michael@0 2267 test edi, edi
michael@0 2268 mov dword ptr [8+rbx], edi
michael@0 2269 je L76
michael@0 2270 lea eax, dword ptr [-2+rdx]
michael@0 2271 cmp dword ptr [r11+rax*8], 0
michael@0 2272 je L84
michael@0 2273 L76:
michael@0 2274 mov edx, dword ptr [8+rbx]
michael@0 2275 xor r11d, r11d
michael@0 2276 test edx, edx
michael@0 2277 cmovne r11d, esi
michael@0 2278 mov dword ptr [rbx], r11d
michael@0 2279 add rsp, 136+128
michael@0 2280 pop rbx
michael@0 2281 pop rbp
michael@0 2282 pop r12
michael@0 2283
michael@0 2284 pop rsi
michael@0 2285 pop rdi
michael@0 2286
michael@0 2287 ret
michael@0 2288
michael@0 2289 s_mp_mul_comba_16 ENDP
michael@0 2290
michael@0 2291 ; void s_mp_mul_comba_32(const mp_int *A, const mp_int *B, mp_int *C)
michael@0 2292
michael@0 2293
michael@0 2294 ALIGN 16
michael@0 2295 s_mp_mul_comba_32 PROC ; a "FRAME" function
michael@0 2296
michael@0 2297 push rdi
michael@0 2298 push rsi
michael@0 2299
michael@0 2300 mov rdi, rcx
michael@0 2301 mov rsi, rdx
michael@0 2302 mov rdx, r8
michael@0 2303
michael@0 2304 push rbp
michael@0 2305 mov rbp, rsp
michael@0 2306 push r13
michael@0 2307 mov r13, rdx
michael@0 2308 ; mov edx, 256
michael@0 2309 mov r8d, 256
michael@0 2310 push r12
michael@0 2311 mov r12, rsi
michael@0 2312 push rbx
michael@0 2313 mov rbx, rdi
michael@0 2314 sub rsp, 520+32 ; +32 for "home" storage
michael@0 2315 ; mov rsi, qword ptr [16+rdi]
michael@0 2316 ; lea rdi, qword ptr [-544+rbp]
michael@0 2317 mov rdx, qword ptr [16+rdi]
michael@0 2318 lea rcx, qword ptr [-544+rbp]
michael@0 2319 call memcpy
michael@0 2320 ; mov rsi, qword ptr [16+r12]
michael@0 2321 ; lea rdi, qword ptr [-288+rbp]
michael@0 2322 ; mov edx, 256
michael@0 2323 mov rdx, qword ptr [16+r12]
michael@0 2324 lea rcx, qword ptr [-288+rbp]
michael@0 2325 mov r8d, 256
michael@0 2326 call memcpy
michael@0 2327 mov r9, qword ptr [16+r13]
michael@0 2328 xor r8d, r8d
michael@0 2329 mov rsi, r8
michael@0 2330 mov rdi, r8
michael@0 2331 mov r10, r8
michael@0 2332 mov rax, qword ptr [-544+rbp]
michael@0 2333 mul qword ptr [-288+rbp]
michael@0 2334 add rsi, rax
michael@0 2335 adc rdi, rdx
michael@0 2336 adc r10, 0
michael@0 2337 mov qword ptr [r9], rsi
michael@0 2338 mov rsi, r10
michael@0 2339 mov r10, r8
michael@0 2340 mov rax, qword ptr [-544+rbp]
michael@0 2341 mul qword ptr [-280+rbp]
michael@0 2342 add rdi, rax
michael@0 2343 adc rsi, rdx
michael@0 2344 adc r10, 0
michael@0 2345 mov r11, r10
michael@0 2346 mov rax, qword ptr [-536+rbp]
michael@0 2347 mul qword ptr [-288+rbp]
michael@0 2348 add rdi, rax
michael@0 2349 adc rsi, rdx
michael@0 2350 adc r11, 0
michael@0 2351 mov qword ptr [8+r9], rdi
michael@0 2352 mov rdi, r11
michael@0 2353 mov r11, r8
michael@0 2354 mov rax, qword ptr [-544+rbp]
michael@0 2355 mul qword ptr [-272+rbp]
michael@0 2356 add rsi, rax
michael@0 2357 adc rdi, rdx
michael@0 2358 adc r11, 0
michael@0 2359 mov rcx, r11
michael@0 2360 mov rax, qword ptr [-536+rbp]
michael@0 2361 mul qword ptr [-280+rbp]
michael@0 2362 add rsi, rax
michael@0 2363 adc rdi, rdx
michael@0 2364 adc rcx, 0
michael@0 2365 mov r10, rdi
michael@0 2366 mov r11, rcx
michael@0 2367 mov rax, qword ptr [-528+rbp]
michael@0 2368 mul qword ptr [-288+rbp]
michael@0 2369 add rsi, rax
michael@0 2370 adc r10, rdx
michael@0 2371 adc r11, 0
michael@0 2372 mov qword ptr [16+r9], rsi
michael@0 2373 mov rdi, r11
michael@0 2374 mov rcx, r10
michael@0 2375 mov rsi, r8
michael@0 2376 mov rax, qword ptr [-544+rbp]
michael@0 2377 mul qword ptr [-264+rbp]
michael@0 2378 add rcx, rax
michael@0 2379 adc rdi, rdx
michael@0 2380 adc rsi, 0
michael@0 2381 mov rax, qword ptr [-536+rbp]
michael@0 2382 mul qword ptr [-272+rbp]
michael@0 2383 add rcx, rax
michael@0 2384 adc rdi, rdx
michael@0 2385 adc rsi, 0
michael@0 2386 mov rax, qword ptr [-528+rbp]
michael@0 2387 mul qword ptr [-280+rbp]
michael@0 2388 add rcx, rax
michael@0 2389 adc rdi, rdx
michael@0 2390 adc rsi, 0
michael@0 2391 mov r10, rdi
michael@0 2392 mov r11, rsi
michael@0 2393 mov rax, qword ptr [-520+rbp]
michael@0 2394 mul qword ptr [-288+rbp]
michael@0 2395 add rcx, rax
michael@0 2396 adc r10, rdx
michael@0 2397 adc r11, 0
michael@0 2398 mov qword ptr [24+r9], rcx
michael@0 2399 mov rdi, r11
michael@0 2400 mov rsi, r10
michael@0 2401 mov rcx, r8
michael@0 2402 mov rax, qword ptr [-544+rbp]
michael@0 2403 mul qword ptr [-256+rbp]
michael@0 2404 add rsi, rax
michael@0 2405 adc rdi, rdx
michael@0 2406 adc rcx, 0
michael@0 2407 mov rax, qword ptr [-536+rbp]
michael@0 2408 mul qword ptr [-264+rbp]
michael@0 2409 add rsi, rax
michael@0 2410 adc rdi, rdx
michael@0 2411 adc rcx, 0
michael@0 2412 mov rax, qword ptr [-528+rbp]
michael@0 2413 mul qword ptr [-272+rbp]
michael@0 2414 add rsi, rax
michael@0 2415 adc rdi, rdx
michael@0 2416 adc rcx, 0
michael@0 2417 mov rax, qword ptr [-520+rbp]
michael@0 2418 mul qword ptr [-280+rbp]
michael@0 2419 add rsi, rax
michael@0 2420 adc rdi, rdx
michael@0 2421 adc rcx, 0
michael@0 2422 mov r10, rdi
michael@0 2423 mov r11, rcx
michael@0 2424 mov rax, qword ptr [-512+rbp]
michael@0 2425 mul qword ptr [-288+rbp]
michael@0 2426 add rsi, rax
michael@0 2427 adc r10, rdx
michael@0 2428 adc r11, 0
michael@0 2429 mov qword ptr [32+r9], rsi
michael@0 2430 mov rdi, r11
michael@0 2431 mov rcx, r10
michael@0 2432 mov rsi, r8
michael@0 2433 mov rax, qword ptr [-544+rbp]
michael@0 2434 mul qword ptr [-248+rbp]
michael@0 2435 add rcx, rax
michael@0 2436 adc rdi, rdx
michael@0 2437 adc rsi, 0
michael@0 2438 mov rax, qword ptr [-536+rbp]
michael@0 2439 mul qword ptr [-256+rbp]
michael@0 2440 add rcx, rax
michael@0 2441 adc rdi, rdx
michael@0 2442 adc rsi, 0
michael@0 2443 mov rax, qword ptr [-528+rbp]
michael@0 2444 mul qword ptr [-264+rbp]
michael@0 2445 add rcx, rax
michael@0 2446 adc rdi, rdx
michael@0 2447 adc rsi, 0
michael@0 2448 mov rax, qword ptr [-520+rbp]
michael@0 2449 mul qword ptr [-272+rbp]
michael@0 2450 add rcx, rax
michael@0 2451 adc rdi, rdx
michael@0 2452 adc rsi, 0
michael@0 2453 mov rax, qword ptr [-512+rbp]
michael@0 2454 mul qword ptr [-280+rbp]
michael@0 2455 add rcx, rax
michael@0 2456 adc rdi, rdx
michael@0 2457 adc rsi, 0
michael@0 2458 mov r10, rdi
michael@0 2459 mov r11, rsi
michael@0 2460 mov rax, qword ptr [-504+rbp]
michael@0 2461 mul qword ptr [-288+rbp]
michael@0 2462 add rcx, rax
michael@0 2463 adc r10, rdx
michael@0 2464 adc r11, 0
michael@0 2465 mov qword ptr [40+r9], rcx
michael@0 2466 mov rdi, r11
michael@0 2467 mov rsi, r10
michael@0 2468 mov rcx, r8
michael@0 2469 mov rax, qword ptr [-544+rbp]
michael@0 2470 mul qword ptr [-240+rbp]
michael@0 2471 add rsi, rax
michael@0 2472 adc rdi, rdx
michael@0 2473 adc rcx, 0
michael@0 2474 mov rax, qword ptr [-536+rbp]
michael@0 2475 mul qword ptr [-248+rbp]
michael@0 2476 add rsi, rax
michael@0 2477 adc rdi, rdx
michael@0 2478 adc rcx, 0
michael@0 2479 mov rax, qword ptr [-528+rbp]
michael@0 2480 mul qword ptr [-256+rbp]
michael@0 2481 add rsi, rax
michael@0 2482 adc rdi, rdx
michael@0 2483 adc rcx, 0
michael@0 2484 mov rax, qword ptr [-520+rbp]
michael@0 2485 mul qword ptr [-264+rbp]
michael@0 2486 add rsi, rax
michael@0 2487 adc rdi, rdx
michael@0 2488 adc rcx, 0
michael@0 2489 mov rax, qword ptr [-512+rbp]
michael@0 2490 mul qword ptr [-272+rbp]
michael@0 2491 add rsi, rax
michael@0 2492 adc rdi, rdx
michael@0 2493 adc rcx, 0
michael@0 2494 mov rax, qword ptr [-504+rbp]
michael@0 2495 mul qword ptr [-280+rbp]
michael@0 2496 add rsi, rax
michael@0 2497 adc rdi, rdx
michael@0 2498 adc rcx, 0
michael@0 2499 mov r10, rdi
michael@0 2500 mov r11, rcx
michael@0 2501 mov rax, qword ptr [-496+rbp]
michael@0 2502 mul qword ptr [-288+rbp]
michael@0 2503 add rsi, rax
michael@0 2504 adc r10, rdx
michael@0 2505 adc r11, 0
michael@0 2506 mov qword ptr [48+r9], rsi
michael@0 2507 mov rdi, r11
michael@0 2508 mov rcx, r10
michael@0 2509 mov rsi, r8
michael@0 2510 mov rax, qword ptr [-544+rbp]
michael@0 2511 mul qword ptr [-232+rbp]
michael@0 2512 add rcx, rax
michael@0 2513 adc rdi, rdx
michael@0 2514 adc rsi, 0
michael@0 2515 mov rax, qword ptr [-536+rbp]
michael@0 2516 mul qword ptr [-240+rbp]
michael@0 2517 add rcx, rax
michael@0 2518 adc rdi, rdx
michael@0 2519 adc rsi, 0
michael@0 2520 mov rax, qword ptr [-528+rbp]
michael@0 2521 mul qword ptr [-248+rbp]
michael@0 2522 add rcx, rax
michael@0 2523 adc rdi, rdx
michael@0 2524 adc rsi, 0
michael@0 2525 mov rax, qword ptr [-520+rbp]
michael@0 2526 mul qword ptr [-256+rbp]
michael@0 2527 add rcx, rax
michael@0 2528 adc rdi, rdx
michael@0 2529 adc rsi, 0
michael@0 2530 mov rax, qword ptr [-512+rbp]
michael@0 2531 mul qword ptr [-264+rbp]
michael@0 2532 add rcx, rax
michael@0 2533 adc rdi, rdx
michael@0 2534 adc rsi, 0
michael@0 2535 mov rax, qword ptr [-504+rbp]
michael@0 2536 mul qword ptr [-272+rbp]
michael@0 2537 add rcx, rax
michael@0 2538 adc rdi, rdx
michael@0 2539 adc rsi, 0
michael@0 2540 mov rax, qword ptr [-496+rbp]
michael@0 2541 mul qword ptr [-280+rbp]
michael@0 2542 add rcx, rax
michael@0 2543 adc rdi, rdx
michael@0 2544 adc rsi, 0
michael@0 2545 mov r10, rdi
michael@0 2546 mov r11, rsi
michael@0 2547 mov rax, qword ptr [-488+rbp]
michael@0 2548 mul qword ptr [-288+rbp]
michael@0 2549 add rcx, rax
michael@0 2550 adc r10, rdx
michael@0 2551 adc r11, 0
michael@0 2552 mov qword ptr [56+r9], rcx
michael@0 2553 mov rdi, r11
michael@0 2554 mov rsi, r10
michael@0 2555 mov rcx, r8
michael@0 2556 mov rax, qword ptr [-544+rbp]
michael@0 2557 mul qword ptr [-224+rbp]
michael@0 2558 add rsi, rax
michael@0 2559 adc rdi, rdx
michael@0 2560 adc rcx, 0
michael@0 2561 mov rax, qword ptr [-536+rbp]
michael@0 2562 mul qword ptr [-232+rbp]
michael@0 2563 add rsi, rax
michael@0 2564 adc rdi, rdx
michael@0 2565 adc rcx, 0
michael@0 2566 mov rax, qword ptr [-528+rbp]
michael@0 2567 mul qword ptr [-240+rbp]
michael@0 2568 add rsi, rax
michael@0 2569 adc rdi, rdx
michael@0 2570 adc rcx, 0
michael@0 2571 mov rax, qword ptr [-520+rbp]
michael@0 2572 mul qword ptr [-248+rbp]
michael@0 2573 add rsi, rax
michael@0 2574 adc rdi, rdx
michael@0 2575 adc rcx, 0
michael@0 2576 mov rax, qword ptr [-512+rbp]
michael@0 2577 mul qword ptr [-256+rbp]
michael@0 2578 add rsi, rax
michael@0 2579 adc rdi, rdx
michael@0 2580 adc rcx, 0
michael@0 2581 mov rax, qword ptr [-504+rbp]
michael@0 2582 mul qword ptr [-264+rbp]
michael@0 2583 add rsi, rax
michael@0 2584 adc rdi, rdx
michael@0 2585 adc rcx, 0
michael@0 2586 mov rax, qword ptr [-496+rbp]
michael@0 2587 mul qword ptr [-272+rbp]
michael@0 2588 add rsi, rax
michael@0 2589 adc rdi, rdx
michael@0 2590 adc rcx, 0
michael@0 2591 mov rax, qword ptr [-488+rbp]
michael@0 2592 mul qword ptr [-280+rbp]
michael@0 2593 add rsi, rax
michael@0 2594 adc rdi, rdx
michael@0 2595 adc rcx, 0
michael@0 2596 mov r10, rdi
michael@0 2597 mov r11, rcx
michael@0 2598 mov rax, qword ptr [-480+rbp]
michael@0 2599 mul qword ptr [-288+rbp]
michael@0 2600 add rsi, rax
michael@0 2601 adc r10, rdx
michael@0 2602 adc r11, 0
michael@0 2603 mov qword ptr [64+r9], rsi
michael@0 2604 mov rdi, r11
michael@0 2605 mov rcx, r10
michael@0 2606 mov rsi, r8
michael@0 2607 mov rax, qword ptr [-544+rbp]
michael@0 2608 mul qword ptr [-216+rbp]
michael@0 2609 add rcx, rax
michael@0 2610 adc rdi, rdx
michael@0 2611 adc rsi, 0
michael@0 2612 mov rax, qword ptr [-536+rbp]
michael@0 2613 mul qword ptr [-224+rbp]
michael@0 2614 add rcx, rax
michael@0 2615 adc rdi, rdx
michael@0 2616 adc rsi, 0
michael@0 2617 mov rax, qword ptr [-528+rbp]
michael@0 2618 mul qword ptr [-232+rbp]
michael@0 2619 add rcx, rax
michael@0 2620 adc rdi, rdx
michael@0 2621 adc rsi, 0
michael@0 2622 mov rax, qword ptr [-520+rbp]
michael@0 2623 mul qword ptr [-240+rbp]
michael@0 2624 add rcx, rax
michael@0 2625 adc rdi, rdx
michael@0 2626 adc rsi, 0
michael@0 2627 mov rax, qword ptr [-512+rbp]
michael@0 2628 mul qword ptr [-248+rbp]
michael@0 2629 add rcx, rax
michael@0 2630 adc rdi, rdx
michael@0 2631 adc rsi, 0
michael@0 2632 mov rax, qword ptr [-504+rbp]
michael@0 2633 mul qword ptr [-256+rbp]
michael@0 2634 add rcx, rax
michael@0 2635 adc rdi, rdx
michael@0 2636 adc rsi, 0
michael@0 2637 mov rax, qword ptr [-496+rbp]
michael@0 2638 mul qword ptr [-264+rbp]
michael@0 2639 add rcx, rax
michael@0 2640 adc rdi, rdx
michael@0 2641 adc rsi, 0
michael@0 2642 mov rax, qword ptr [-488+rbp]
michael@0 2643 mul qword ptr [-272+rbp]
michael@0 2644 add rcx, rax
michael@0 2645 adc rdi, rdx
michael@0 2646 adc rsi, 0
michael@0 2647 mov rax, qword ptr [-480+rbp]
michael@0 2648 mul qword ptr [-280+rbp]
michael@0 2649 add rcx, rax
michael@0 2650 adc rdi, rdx
michael@0 2651 adc rsi, 0
michael@0 2652 mov r10, rdi
michael@0 2653 mov r11, rsi
michael@0 2654 mov rax, qword ptr [-472+rbp]
michael@0 2655 mul qword ptr [-288+rbp]
michael@0 2656 add rcx, rax
michael@0 2657 adc r10, rdx
michael@0 2658 adc r11, 0
michael@0 2659 mov qword ptr [72+r9], rcx
michael@0 2660 mov rdi, r11
michael@0 2661 mov rsi, r10
michael@0 2662 mov rcx, r8
michael@0 2663 mov rax, qword ptr [-544+rbp]
michael@0 2664 mul qword ptr [-208+rbp]
michael@0 2665 add rsi, rax
michael@0 2666 adc rdi, rdx
michael@0 2667 adc rcx, 0
michael@0 2668 mov rax, qword ptr [-536+rbp]
michael@0 2669 mul qword ptr [-216+rbp]
michael@0 2670 add rsi, rax
michael@0 2671 adc rdi, rdx
michael@0 2672 adc rcx, 0
michael@0 2673 mov rax, qword ptr [-528+rbp]
michael@0 2674 mul qword ptr [-224+rbp]
michael@0 2675 add rsi, rax
michael@0 2676 adc rdi, rdx
michael@0 2677 adc rcx, 0
michael@0 2678 mov rax, qword ptr [-520+rbp]
michael@0 2679 mul qword ptr [-232+rbp]
michael@0 2680 add rsi, rax
michael@0 2681 adc rdi, rdx
michael@0 2682 adc rcx, 0
michael@0 2683 mov rax, qword ptr [-512+rbp]
michael@0 2684 mul qword ptr [-240+rbp]
michael@0 2685 add rsi, rax
michael@0 2686 adc rdi, rdx
michael@0 2687 adc rcx, 0
michael@0 2688 mov rax, qword ptr [-504+rbp]
michael@0 2689 mul qword ptr [-248+rbp]
michael@0 2690 add rsi, rax
michael@0 2691 adc rdi, rdx
michael@0 2692 adc rcx, 0
michael@0 2693 mov rax, qword ptr [-496+rbp]
michael@0 2694 mul qword ptr [-256+rbp]
michael@0 2695 add rsi, rax
michael@0 2696 adc rdi, rdx
michael@0 2697 adc rcx, 0
michael@0 2698 mov rax, qword ptr [-488+rbp]
michael@0 2699 mul qword ptr [-264+rbp]
michael@0 2700 add rsi, rax
michael@0 2701 adc rdi, rdx
michael@0 2702 adc rcx, 0
michael@0 2703 mov rax, qword ptr [-480+rbp]
michael@0 2704 mul qword ptr [-272+rbp]
michael@0 2705 add rsi, rax
michael@0 2706 adc rdi, rdx
michael@0 2707 adc rcx, 0
michael@0 2708 mov rax, qword ptr [-472+rbp]
michael@0 2709 mul qword ptr [-280+rbp]
michael@0 2710 add rsi, rax
michael@0 2711 adc rdi, rdx
michael@0 2712 adc rcx, 0
michael@0 2713 mov r10, rdi
michael@0 2714 mov r11, rcx
michael@0 2715 mov rax, qword ptr [-464+rbp]
michael@0 2716 mul qword ptr [-288+rbp]
michael@0 2717 add rsi, rax
michael@0 2718 adc r10, rdx
michael@0 2719 adc r11, 0
michael@0 2720 mov qword ptr [80+r9], rsi
michael@0 2721 mov rdi, r11
michael@0 2722 mov rcx, r10
michael@0 2723 mov rsi, r8
michael@0 2724 mov rax, qword ptr [-544+rbp]
michael@0 2725 mul qword ptr [-200+rbp]
michael@0 2726 add rcx, rax
michael@0 2727 adc rdi, rdx
michael@0 2728 adc rsi, 0
michael@0 2729 mov rax, qword ptr [-536+rbp]
michael@0 2730 mul qword ptr [-208+rbp]
michael@0 2731 add rcx, rax
michael@0 2732 adc rdi, rdx
michael@0 2733 adc rsi, 0
michael@0 2734 mov rax, qword ptr [-528+rbp]
michael@0 2735 mul qword ptr [-216+rbp]
michael@0 2736 add rcx, rax
michael@0 2737 adc rdi, rdx
michael@0 2738 adc rsi, 0
michael@0 2739 mov rax, qword ptr [-520+rbp]
michael@0 2740 mul qword ptr [-224+rbp]
michael@0 2741 add rcx, rax
michael@0 2742 adc rdi, rdx
michael@0 2743 adc rsi, 0
michael@0 2744 mov rax, qword ptr [-512+rbp]
michael@0 2745 mul qword ptr [-232+rbp]
michael@0 2746 add rcx, rax
michael@0 2747 adc rdi, rdx
michael@0 2748 adc rsi, 0
michael@0 2749 mov rax, qword ptr [-504+rbp]
michael@0 2750 mul qword ptr [-240+rbp]
michael@0 2751 add rcx, rax
michael@0 2752 adc rdi, rdx
michael@0 2753 adc rsi, 0
michael@0 2754 mov rax, qword ptr [-496+rbp]
michael@0 2755 mul qword ptr [-248+rbp]
michael@0 2756 add rcx, rax
michael@0 2757 adc rdi, rdx
michael@0 2758 adc rsi, 0
michael@0 2759 mov rax, qword ptr [-488+rbp]
michael@0 2760 mul qword ptr [-256+rbp]
michael@0 2761 add rcx, rax
michael@0 2762 adc rdi, rdx
michael@0 2763 adc rsi, 0
michael@0 2764 mov rax, qword ptr [-480+rbp]
michael@0 2765 mul qword ptr [-264+rbp]
michael@0 2766 add rcx, rax
michael@0 2767 adc rdi, rdx
michael@0 2768 adc rsi, 0
michael@0 2769 mov rax, qword ptr [-472+rbp]
michael@0 2770 mul qword ptr [-272+rbp]
michael@0 2771 add rcx, rax
michael@0 2772 adc rdi, rdx
michael@0 2773 adc rsi, 0
michael@0 2774 mov rax, qword ptr [-464+rbp]
michael@0 2775 mul qword ptr [-280+rbp]
michael@0 2776 add rcx, rax
michael@0 2777 adc rdi, rdx
michael@0 2778 adc rsi, 0
michael@0 2779 mov r10, rdi
michael@0 2780 mov r11, rsi
michael@0 2781 mov rax, qword ptr [-456+rbp]
michael@0 2782 mul qword ptr [-288+rbp]
michael@0 2783 add rcx, rax
michael@0 2784 adc r10, rdx
michael@0 2785 adc r11, 0
michael@0 2786 mov qword ptr [88+r9], rcx
michael@0 2787 mov rdi, r11
michael@0 2788 mov rsi, r10
michael@0 2789 mov rcx, r8
michael@0 2790 mov rax, qword ptr [-544+rbp]
michael@0 2791 mul qword ptr [-192+rbp]
michael@0 2792 add rsi, rax
michael@0 2793 adc rdi, rdx
michael@0 2794 adc rcx, 0
michael@0 2795 mov rax, qword ptr [-536+rbp]
michael@0 2796 mul qword ptr [-200+rbp]
michael@0 2797 add rsi, rax
michael@0 2798 adc rdi, rdx
michael@0 2799 adc rcx, 0
michael@0 2800 mov rax, qword ptr [-528+rbp]
michael@0 2801 mul qword ptr [-208+rbp]
michael@0 2802 add rsi, rax
michael@0 2803 adc rdi, rdx
michael@0 2804 adc rcx, 0
michael@0 2805 mov rax, qword ptr [-520+rbp]
michael@0 2806 mul qword ptr [-216+rbp]
michael@0 2807 add rsi, rax
michael@0 2808 adc rdi, rdx
michael@0 2809 adc rcx, 0
michael@0 2810 mov rax, qword ptr [-512+rbp]
michael@0 2811 mul qword ptr [-224+rbp]
michael@0 2812 add rsi, rax
michael@0 2813 adc rdi, rdx
michael@0 2814 adc rcx, 0
michael@0 2815 mov rax, qword ptr [-504+rbp]
michael@0 2816 mul qword ptr [-232+rbp]
michael@0 2817 add rsi, rax
michael@0 2818 adc rdi, rdx
michael@0 2819 adc rcx, 0
michael@0 2820 mov rax, qword ptr [-496+rbp]
michael@0 2821 mul qword ptr [-240+rbp]
michael@0 2822 add rsi, rax
michael@0 2823 adc rdi, rdx
michael@0 2824 adc rcx, 0
michael@0 2825 mov rax, qword ptr [-488+rbp]
michael@0 2826 mul qword ptr [-248+rbp]
michael@0 2827 add rsi, rax
michael@0 2828 adc rdi, rdx
michael@0 2829 adc rcx, 0
michael@0 2830 mov rax, qword ptr [-480+rbp]
michael@0 2831 mul qword ptr [-256+rbp]
michael@0 2832 add rsi, rax
michael@0 2833 adc rdi, rdx
michael@0 2834 adc rcx, 0
michael@0 2835 mov rax, qword ptr [-472+rbp]
michael@0 2836 mul qword ptr [-264+rbp]
michael@0 2837 add rsi, rax
michael@0 2838 adc rdi, rdx
michael@0 2839 adc rcx, 0
michael@0 2840 mov rax, qword ptr [-464+rbp]
michael@0 2841 mul qword ptr [-272+rbp]
michael@0 2842 add rsi, rax
michael@0 2843 adc rdi, rdx
michael@0 2844 adc rcx, 0
michael@0 2845 mov rax, qword ptr [-456+rbp]
michael@0 2846 mul qword ptr [-280+rbp]
michael@0 2847 add rsi, rax
michael@0 2848 adc rdi, rdx
michael@0 2849 adc rcx, 0
michael@0 2850 mov r10, rdi
michael@0 2851 mov r11, rcx
michael@0 2852 mov rax, qword ptr [-448+rbp]
michael@0 2853 mul qword ptr [-288+rbp]
michael@0 2854 add rsi, rax
michael@0 2855 adc r10, rdx
michael@0 2856 adc r11, 0
michael@0 2857 mov qword ptr [96+r9], rsi
michael@0 2858 mov rdi, r11
michael@0 2859 mov rcx, r10
michael@0 2860 mov rsi, r8
michael@0 2861 mov rax, qword ptr [-544+rbp]
michael@0 2862 mul qword ptr [-184+rbp]
michael@0 2863 add rcx, rax
michael@0 2864 adc rdi, rdx
michael@0 2865 adc rsi, 0
michael@0 2866 mov rax, qword ptr [-536+rbp]
michael@0 2867 mul qword ptr [-192+rbp]
michael@0 2868 add rcx, rax
michael@0 2869 adc rdi, rdx
michael@0 2870 adc rsi, 0
michael@0 2871 mov rax, qword ptr [-528+rbp]
michael@0 2872 mul qword ptr [-200+rbp]
michael@0 2873 add rcx, rax
michael@0 2874 adc rdi, rdx
michael@0 2875 adc rsi, 0
michael@0 2876 mov rax, qword ptr [-520+rbp]
michael@0 2877 mul qword ptr [-208+rbp]
michael@0 2878 add rcx, rax
michael@0 2879 adc rdi, rdx
michael@0 2880 adc rsi, 0
michael@0 2881 mov rax, qword ptr [-512+rbp]
michael@0 2882 mul qword ptr [-216+rbp]
michael@0 2883 add rcx, rax
michael@0 2884 adc rdi, rdx
michael@0 2885 adc rsi, 0
michael@0 2886 mov rax, qword ptr [-504+rbp]
michael@0 2887 mul qword ptr [-224+rbp]
michael@0 2888 add rcx, rax
michael@0 2889 adc rdi, rdx
michael@0 2890 adc rsi, 0
michael@0 2891 mov rax, qword ptr [-496+rbp]
michael@0 2892 mul qword ptr [-232+rbp]
michael@0 2893 add rcx, rax
michael@0 2894 adc rdi, rdx
michael@0 2895 adc rsi, 0
michael@0 2896 mov rax, qword ptr [-488+rbp]
michael@0 2897 mul qword ptr [-240+rbp]
michael@0 2898 add rcx, rax
michael@0 2899 adc rdi, rdx
michael@0 2900 adc rsi, 0
michael@0 2901 mov rax, qword ptr [-480+rbp]
michael@0 2902 mul qword ptr [-248+rbp]
michael@0 2903 add rcx, rax
michael@0 2904 adc rdi, rdx
michael@0 2905 adc rsi, 0
michael@0 2906 mov rax, qword ptr [-472+rbp]
michael@0 2907 mul qword ptr [-256+rbp]
michael@0 2908 add rcx, rax
michael@0 2909 adc rdi, rdx
michael@0 2910 adc rsi, 0
michael@0 2911 mov rax, qword ptr [-464+rbp]
michael@0 2912 mul qword ptr [-264+rbp]
michael@0 2913 add rcx, rax
michael@0 2914 adc rdi, rdx
michael@0 2915 adc rsi, 0
michael@0 2916 mov rax, qword ptr [-456+rbp]
michael@0 2917 mul qword ptr [-272+rbp]
michael@0 2918 add rcx, rax
michael@0 2919 adc rdi, rdx
michael@0 2920 adc rsi, 0
michael@0 2921 mov rax, qword ptr [-448+rbp]
michael@0 2922 mul qword ptr [-280+rbp]
michael@0 2923 add rcx, rax
michael@0 2924 adc rdi, rdx
michael@0 2925 adc rsi, 0
michael@0 2926 mov r10, rdi
michael@0 2927 mov r11, rsi
michael@0 2928 mov rax, qword ptr [-440+rbp]
michael@0 2929 mul qword ptr [-288+rbp]
michael@0 2930 add rcx, rax
michael@0 2931 adc r10, rdx
michael@0 2932 adc r11, 0
michael@0 2933 mov qword ptr [104+r9], rcx
michael@0 2934 mov rdi, r11
michael@0 2935 mov rsi, r10
michael@0 2936 mov rcx, r8
michael@0 2937 mov rax, qword ptr [-544+rbp]
michael@0 2938 mul qword ptr [-176+rbp]
michael@0 2939 add rsi, rax
michael@0 2940 adc rdi, rdx
michael@0 2941 adc rcx, 0
michael@0 2942 mov rax, qword ptr [-536+rbp]
michael@0 2943 mul qword ptr [-184+rbp]
michael@0 2944 add rsi, rax
michael@0 2945 adc rdi, rdx
michael@0 2946 adc rcx, 0
michael@0 2947 mov rax, qword ptr [-528+rbp]
michael@0 2948 mul qword ptr [-192+rbp]
michael@0 2949 add rsi, rax
michael@0 2950 adc rdi, rdx
michael@0 2951 adc rcx, 0
michael@0 2952 mov rax, qword ptr [-520+rbp]
michael@0 2953 mul qword ptr [-200+rbp]
michael@0 2954 add rsi, rax
michael@0 2955 adc rdi, rdx
michael@0 2956 adc rcx, 0
michael@0 2957 mov rax, qword ptr [-512+rbp]
michael@0 2958 mul qword ptr [-208+rbp]
michael@0 2959 add rsi, rax
michael@0 2960 adc rdi, rdx
michael@0 2961 adc rcx, 0
michael@0 2962 mov rax, qword ptr [-504+rbp]
michael@0 2963 mul qword ptr [-216+rbp]
michael@0 2964 add rsi, rax
michael@0 2965 adc rdi, rdx
michael@0 2966 adc rcx, 0
michael@0 2967 mov rax, qword ptr [-496+rbp]
michael@0 2968 mul qword ptr [-224+rbp]
michael@0 2969 add rsi, rax
michael@0 2970 adc rdi, rdx
michael@0 2971 adc rcx, 0
michael@0 2972 mov rax, qword ptr [-488+rbp]
michael@0 2973 mul qword ptr [-232+rbp]
michael@0 2974 add rsi, rax
michael@0 2975 adc rdi, rdx
michael@0 2976 adc rcx, 0
michael@0 2977 mov rax, qword ptr [-480+rbp]
michael@0 2978 mul qword ptr [-240+rbp]
michael@0 2979 add rsi, rax
michael@0 2980 adc rdi, rdx
michael@0 2981 adc rcx, 0
michael@0 2982 mov rax, qword ptr [-472+rbp]
michael@0 2983 mul qword ptr [-248+rbp]
michael@0 2984 add rsi, rax
michael@0 2985 adc rdi, rdx
michael@0 2986 adc rcx, 0
michael@0 2987 mov rax, qword ptr [-464+rbp]
michael@0 2988 mul qword ptr [-256+rbp]
michael@0 2989 add rsi, rax
michael@0 2990 adc rdi, rdx
michael@0 2991 adc rcx, 0
michael@0 2992 mov rax, qword ptr [-456+rbp]
michael@0 2993 mul qword ptr [-264+rbp]
michael@0 2994 add rsi, rax
michael@0 2995 adc rdi, rdx
michael@0 2996 adc rcx, 0
michael@0 2997 mov rax, qword ptr [-448+rbp]
michael@0 2998 mul qword ptr [-272+rbp]
michael@0 2999 add rsi, rax
michael@0 3000 adc rdi, rdx
michael@0 3001 adc rcx, 0
michael@0 3002 mov rax, qword ptr [-440+rbp]
michael@0 3003 mul qword ptr [-280+rbp]
michael@0 3004 add rsi, rax
michael@0 3005 adc rdi, rdx
michael@0 3006 adc rcx, 0
michael@0 3007 mov r10, rdi
michael@0 3008 mov r11, rcx
michael@0 3009 mov rax, qword ptr [-432+rbp]
michael@0 3010 mul qword ptr [-288+rbp]
michael@0 3011 add rsi, rax
michael@0 3012 adc r10, rdx
michael@0 3013 adc r11, 0
michael@0 3014 mov qword ptr [112+r9], rsi
michael@0 3015 mov rdi, r11
michael@0 3016 mov rcx, r10
michael@0 3017 mov rsi, r8
michael@0 3018 mov rax, qword ptr [-544+rbp]
michael@0 3019 mul qword ptr [-168+rbp]
michael@0 3020 add rcx, rax
michael@0 3021 adc rdi, rdx
michael@0 3022 adc rsi, 0
michael@0 3023 mov rax, qword ptr [-536+rbp]
michael@0 3024 mul qword ptr [-176+rbp]
michael@0 3025 add rcx, rax
michael@0 3026 adc rdi, rdx
michael@0 3027 adc rsi, 0
michael@0 3028 mov rax, qword ptr [-528+rbp]
michael@0 3029 mul qword ptr [-184+rbp]
michael@0 3030 add rcx, rax
michael@0 3031 adc rdi, rdx
michael@0 3032 adc rsi, 0
michael@0 3033 mov rax, qword ptr [-520+rbp]
michael@0 3034 mul qword ptr [-192+rbp]
michael@0 3035 add rcx, rax
michael@0 3036 adc rdi, rdx
michael@0 3037 adc rsi, 0
michael@0 3038 mov rax, qword ptr [-512+rbp]
michael@0 3039 mul qword ptr [-200+rbp]
michael@0 3040 add rcx, rax
michael@0 3041 adc rdi, rdx
michael@0 3042 adc rsi, 0
michael@0 3043 mov rax, qword ptr [-504+rbp]
michael@0 3044 mul qword ptr [-208+rbp]
michael@0 3045 add rcx, rax
michael@0 3046 adc rdi, rdx
michael@0 3047 adc rsi, 0
michael@0 3048 mov rax, qword ptr [-496+rbp]
michael@0 3049 mul qword ptr [-216+rbp]
michael@0 3050 add rcx, rax
michael@0 3051 adc rdi, rdx
michael@0 3052 adc rsi, 0
michael@0 3053 mov rax, qword ptr [-488+rbp]
michael@0 3054 mul qword ptr [-224+rbp]
michael@0 3055 add rcx, rax
michael@0 3056 adc rdi, rdx
michael@0 3057 adc rsi, 0
michael@0 3058 mov rax, qword ptr [-480+rbp]
michael@0 3059 mul qword ptr [-232+rbp]
michael@0 3060 add rcx, rax
michael@0 3061 adc rdi, rdx
michael@0 3062 adc rsi, 0
michael@0 3063 mov rax, qword ptr [-472+rbp]
michael@0 3064 mul qword ptr [-240+rbp]
michael@0 3065 add rcx, rax
michael@0 3066 adc rdi, rdx
michael@0 3067 adc rsi, 0
michael@0 3068 mov rax, qword ptr [-464+rbp]
michael@0 3069 mul qword ptr [-248+rbp]
michael@0 3070 add rcx, rax
michael@0 3071 adc rdi, rdx
michael@0 3072 adc rsi, 0
michael@0 3073 mov rax, qword ptr [-456+rbp]
michael@0 3074 mul qword ptr [-256+rbp]
michael@0 3075 add rcx, rax
michael@0 3076 adc rdi, rdx
michael@0 3077 adc rsi, 0
michael@0 3078 mov rax, qword ptr [-448+rbp]
michael@0 3079 mul qword ptr [-264+rbp]
michael@0 3080 add rcx, rax
michael@0 3081 adc rdi, rdx
michael@0 3082 adc rsi, 0
michael@0 3083 mov rax, qword ptr [-440+rbp]
michael@0 3084 mul qword ptr [-272+rbp]
michael@0 3085 add rcx, rax
michael@0 3086 adc rdi, rdx
michael@0 3087 adc rsi, 0
michael@0 3088 mov rax, qword ptr [-432+rbp]
michael@0 3089 mul qword ptr [-280+rbp]
michael@0 3090 add rcx, rax
michael@0 3091 adc rdi, rdx
michael@0 3092 adc rsi, 0
michael@0 3093 mov r10, rdi
michael@0 3094 mov r11, rsi
michael@0 3095 mov rax, qword ptr [-424+rbp]
michael@0 3096 mul qword ptr [-288+rbp]
michael@0 3097 add rcx, rax
michael@0 3098 adc r10, rdx
michael@0 3099 adc r11, 0
michael@0 3100 mov qword ptr [120+r9], rcx
michael@0 3101 mov rdi, r11
michael@0 3102 mov rsi, r10
michael@0 3103 mov rcx, r8
michael@0 3104 mov rax, qword ptr [-544+rbp]
michael@0 3105 mul qword ptr [-160+rbp]
michael@0 3106 add rsi, rax
michael@0 3107 adc rdi, rdx
michael@0 3108 adc rcx, 0
michael@0 3109 mov rax, qword ptr [-536+rbp]
michael@0 3110 mul qword ptr [-168+rbp]
michael@0 3111 add rsi, rax
michael@0 3112 adc rdi, rdx
michael@0 3113 adc rcx, 0
michael@0 3114 mov rax, qword ptr [-528+rbp]
michael@0 3115 mul qword ptr [-176+rbp]
michael@0 3116 add rsi, rax
michael@0 3117 adc rdi, rdx
michael@0 3118 adc rcx, 0
michael@0 3119 mov rax, qword ptr [-520+rbp]
michael@0 3120 mul qword ptr [-184+rbp]
michael@0 3121 add rsi, rax
michael@0 3122 adc rdi, rdx
michael@0 3123 adc rcx, 0
michael@0 3124 mov rax, qword ptr [-512+rbp]
michael@0 3125 mul qword ptr [-192+rbp]
michael@0 3126 add rsi, rax
michael@0 3127 adc rdi, rdx
michael@0 3128 adc rcx, 0
michael@0 3129 mov rax, qword ptr [-504+rbp]
michael@0 3130 mul qword ptr [-200+rbp]
michael@0 3131 add rsi, rax
michael@0 3132 adc rdi, rdx
michael@0 3133 adc rcx, 0
michael@0 3134 mov rax, qword ptr [-496+rbp]
michael@0 3135 mul qword ptr [-208+rbp]
michael@0 3136 add rsi, rax
michael@0 3137 adc rdi, rdx
michael@0 3138 adc rcx, 0
michael@0 3139 mov rax, qword ptr [-488+rbp]
michael@0 3140 mul qword ptr [-216+rbp]
michael@0 3141 add rsi, rax
michael@0 3142 adc rdi, rdx
michael@0 3143 adc rcx, 0
michael@0 3144 mov rax, qword ptr [-480+rbp]
michael@0 3145 mul qword ptr [-224+rbp]
michael@0 3146 add rsi, rax
michael@0 3147 adc rdi, rdx
michael@0 3148 adc rcx, 0
michael@0 3149 mov rax, qword ptr [-472+rbp]
michael@0 3150 mul qword ptr [-232+rbp]
michael@0 3151 add rsi, rax
michael@0 3152 adc rdi, rdx
michael@0 3153 adc rcx, 0
michael@0 3154 mov rax, qword ptr [-464+rbp]
michael@0 3155 mul qword ptr [-240+rbp]
michael@0 3156 add rsi, rax
michael@0 3157 adc rdi, rdx
michael@0 3158 adc rcx, 0
michael@0 3159 mov rax, qword ptr [-456+rbp]
michael@0 3160 mul qword ptr [-248+rbp]
michael@0 3161 add rsi, rax
michael@0 3162 adc rdi, rdx
michael@0 3163 adc rcx, 0
michael@0 3164 mov rax, qword ptr [-448+rbp]
michael@0 3165 mul qword ptr [-256+rbp]
michael@0 3166 add rsi, rax
michael@0 3167 adc rdi, rdx
michael@0 3168 adc rcx, 0
michael@0 3169 mov rax, qword ptr [-440+rbp]
michael@0 3170 mul qword ptr [-264+rbp]
michael@0 3171 add rsi, rax
michael@0 3172 adc rdi, rdx
michael@0 3173 adc rcx, 0
michael@0 3174 mov rax, qword ptr [-432+rbp]
michael@0 3175 mul qword ptr [-272+rbp]
michael@0 3176 add rsi, rax
michael@0 3177 adc rdi, rdx
michael@0 3178 adc rcx, 0
michael@0 3179 mov rax, qword ptr [-424+rbp]
michael@0 3180 mul qword ptr [-280+rbp]
michael@0 3181 add rsi, rax
michael@0 3182 adc rdi, rdx
michael@0 3183 adc rcx, 0
michael@0 3184 mov r10, rdi
michael@0 3185 mov r11, rcx
michael@0 3186 mov rax, qword ptr [-416+rbp]
michael@0 3187 mul qword ptr [-288+rbp]
michael@0 3188 add rsi, rax
michael@0 3189 adc r10, rdx
michael@0 3190 adc r11, 0
michael@0 3191 mov qword ptr [128+r9], rsi
michael@0 3192 mov rdi, r11
michael@0 3193 mov rcx, r10
michael@0 3194 mov rsi, r8
michael@0 3195 mov rax, qword ptr [-544+rbp]
michael@0 3196 mul qword ptr [-152+rbp]
michael@0 3197 add rcx, rax
michael@0 3198 adc rdi, rdx
michael@0 3199 adc rsi, 0
michael@0 3200 mov rax, qword ptr [-536+rbp]
michael@0 3201 mul qword ptr [-160+rbp]
michael@0 3202 add rcx, rax
michael@0 3203 adc rdi, rdx
michael@0 3204 adc rsi, 0
michael@0 3205 mov rax, qword ptr [-528+rbp]
michael@0 3206 mul qword ptr [-168+rbp]
michael@0 3207 add rcx, rax
michael@0 3208 adc rdi, rdx
michael@0 3209 adc rsi, 0
michael@0 3210 mov rax, qword ptr [-520+rbp]
michael@0 3211 mul qword ptr [-176+rbp]
michael@0 3212 add rcx, rax
michael@0 3213 adc rdi, rdx
michael@0 3214 adc rsi, 0
michael@0 3215 mov rax, qword ptr [-512+rbp]
michael@0 3216 mul qword ptr [-184+rbp]
michael@0 3217 add rcx, rax
michael@0 3218 adc rdi, rdx
michael@0 3219 adc rsi, 0
michael@0 3220 mov rax, qword ptr [-504+rbp]
michael@0 3221 mul qword ptr [-192+rbp]
michael@0 3222 add rcx, rax
michael@0 3223 adc rdi, rdx
michael@0 3224 adc rsi, 0
michael@0 3225 mov rax, qword ptr [-496+rbp]
michael@0 3226 mul qword ptr [-200+rbp]
michael@0 3227 add rcx, rax
michael@0 3228 adc rdi, rdx
michael@0 3229 adc rsi, 0
michael@0 3230 mov rax, qword ptr [-488+rbp]
michael@0 3231 mul qword ptr [-208+rbp]
michael@0 3232 add rcx, rax
michael@0 3233 adc rdi, rdx
michael@0 3234 adc rsi, 0
michael@0 3235 mov rax, qword ptr [-480+rbp]
michael@0 3236 mul qword ptr [-216+rbp]
michael@0 3237 add rcx, rax
michael@0 3238 adc rdi, rdx
michael@0 3239 adc rsi, 0
michael@0 3240 mov rax, qword ptr [-472+rbp]
michael@0 3241 mul qword ptr [-224+rbp]
michael@0 3242 add rcx, rax
michael@0 3243 adc rdi, rdx
michael@0 3244 adc rsi, 0
michael@0 3245 mov rax, qword ptr [-464+rbp]
michael@0 3246 mul qword ptr [-232+rbp]
michael@0 3247 add rcx, rax
michael@0 3248 adc rdi, rdx
michael@0 3249 adc rsi, 0
michael@0 3250 mov rax, qword ptr [-456+rbp]
michael@0 3251 mul qword ptr [-240+rbp]
michael@0 3252 add rcx, rax
michael@0 3253 adc rdi, rdx
michael@0 3254 adc rsi, 0
michael@0 3255 mov rax, qword ptr [-448+rbp]
michael@0 3256 mul qword ptr [-248+rbp]
michael@0 3257 add rcx, rax
michael@0 3258 adc rdi, rdx
michael@0 3259 adc rsi, 0
michael@0 3260 mov rax, qword ptr [-440+rbp]
michael@0 3261 mul qword ptr [-256+rbp]
michael@0 3262 add rcx, rax
michael@0 3263 adc rdi, rdx
michael@0 3264 adc rsi, 0
michael@0 3265 mov rax, qword ptr [-432+rbp]
michael@0 3266 mul qword ptr [-264+rbp]
michael@0 3267 add rcx, rax
michael@0 3268 adc rdi, rdx
michael@0 3269 adc rsi, 0
michael@0 3270 mov rax, qword ptr [-424+rbp]
michael@0 3271 mul qword ptr [-272+rbp]
michael@0 3272 add rcx, rax
michael@0 3273 adc rdi, rdx
michael@0 3274 adc rsi, 0
michael@0 3275 mov rax, qword ptr [-416+rbp]
michael@0 3276 mul qword ptr [-280+rbp]
michael@0 3277 add rcx, rax
michael@0 3278 adc rdi, rdx
michael@0 3279 adc rsi, 0
michael@0 3280 mov r10, rdi
michael@0 3281 mov r11, rsi
michael@0 3282 mov rax, qword ptr [-408+rbp]
michael@0 3283 mul qword ptr [-288+rbp]
michael@0 3284 add rcx, rax
michael@0 3285 adc r10, rdx
michael@0 3286 adc r11, 0
michael@0 3287 mov qword ptr [136+r9], rcx
michael@0 3288 mov rdi, r11
michael@0 3289 mov rsi, r10
michael@0 3290 mov rcx, r8
michael@0 3291 mov rax, qword ptr [-544+rbp]
michael@0 3292 mul qword ptr [-144+rbp]
michael@0 3293 add rsi, rax
michael@0 3294 adc rdi, rdx
michael@0 3295 adc rcx, 0
michael@0 3296 mov rax, qword ptr [-536+rbp]
michael@0 3297 mul qword ptr [-152+rbp]
michael@0 3298 add rsi, rax
michael@0 3299 adc rdi, rdx
michael@0 3300 adc rcx, 0
michael@0 3301 mov rax, qword ptr [-528+rbp]
michael@0 3302 mul qword ptr [-160+rbp]
michael@0 3303 add rsi, rax
michael@0 3304 adc rdi, rdx
michael@0 3305 adc rcx, 0
michael@0 3306 mov rax, qword ptr [-520+rbp]
michael@0 3307 mul qword ptr [-168+rbp]
michael@0 3308 add rsi, rax
michael@0 3309 adc rdi, rdx
michael@0 3310 adc rcx, 0
michael@0 3311 mov rax, qword ptr [-512+rbp]
michael@0 3312 mul qword ptr [-176+rbp]
michael@0 3313 add rsi, rax
michael@0 3314 adc rdi, rdx
michael@0 3315 adc rcx, 0
michael@0 3316 mov rax, qword ptr [-504+rbp]
michael@0 3317 mul qword ptr [-184+rbp]
michael@0 3318 add rsi, rax
michael@0 3319 adc rdi, rdx
michael@0 3320 adc rcx, 0
michael@0 3321 mov rax, qword ptr [-496+rbp]
michael@0 3322 mul qword ptr [-192+rbp]
michael@0 3323 add rsi, rax
michael@0 3324 adc rdi, rdx
michael@0 3325 adc rcx, 0
michael@0 3326 mov rax, qword ptr [-488+rbp]
michael@0 3327 mul qword ptr [-200+rbp]
michael@0 3328 add rsi, rax
michael@0 3329 adc rdi, rdx
michael@0 3330 adc rcx, 0
michael@0 3331 mov rax, qword ptr [-480+rbp]
michael@0 3332 mul qword ptr [-208+rbp]
michael@0 3333 add rsi, rax
michael@0 3334 adc rdi, rdx
michael@0 3335 adc rcx, 0
michael@0 3336 mov rax, qword ptr [-472+rbp]
michael@0 3337 mul qword ptr [-216+rbp]
michael@0 3338 add rsi, rax
michael@0 3339 adc rdi, rdx
michael@0 3340 adc rcx, 0
michael@0 3341 mov rax, qword ptr [-464+rbp]
michael@0 3342 mul qword ptr [-224+rbp]
michael@0 3343 add rsi, rax
michael@0 3344 adc rdi, rdx
michael@0 3345 adc rcx, 0
michael@0 3346 mov rax, qword ptr [-456+rbp]
michael@0 3347 mul qword ptr [-232+rbp]
michael@0 3348 add rsi, rax
michael@0 3349 adc rdi, rdx
michael@0 3350 adc rcx, 0
michael@0 3351 mov rax, qword ptr [-448+rbp]
michael@0 3352 mul qword ptr [-240+rbp]
michael@0 3353 add rsi, rax
michael@0 3354 adc rdi, rdx
michael@0 3355 adc rcx, 0
michael@0 3356 mov rax, qword ptr [-440+rbp]
michael@0 3357 mul qword ptr [-248+rbp]
michael@0 3358 add rsi, rax
michael@0 3359 adc rdi, rdx
michael@0 3360 adc rcx, 0
michael@0 3361 mov rax, qword ptr [-432+rbp]
michael@0 3362 mul qword ptr [-256+rbp]
michael@0 3363 add rsi, rax
michael@0 3364 adc rdi, rdx
michael@0 3365 adc rcx, 0
michael@0 3366 mov rax, qword ptr [-424+rbp]
michael@0 3367 mul qword ptr [-264+rbp]
michael@0 3368 add rsi, rax
michael@0 3369 adc rdi, rdx
michael@0 3370 adc rcx, 0
michael@0 3371 mov rax, qword ptr [-416+rbp]
michael@0 3372 mul qword ptr [-272+rbp]
michael@0 3373 add rsi, rax
michael@0 3374 adc rdi, rdx
michael@0 3375 adc rcx, 0
michael@0 3376 mov rax, qword ptr [-408+rbp]
michael@0 3377 mul qword ptr [-280+rbp]
michael@0 3378 add rsi, rax
michael@0 3379 adc rdi, rdx
michael@0 3380 adc rcx, 0
michael@0 3381 mov r10, rdi
michael@0 3382 mov r11, rcx
michael@0 3383 mov rax, qword ptr [-400+rbp]
michael@0 3384 mul qword ptr [-288+rbp]
michael@0 3385 add rsi, rax
michael@0 3386 adc r10, rdx
michael@0 3387 adc r11, 0
michael@0 3388 mov qword ptr [144+r9], rsi
michael@0 3389 mov rdi, r11
michael@0 3390 mov rcx, r10
michael@0 3391 mov rsi, r8
michael@0 3392 mov rax, qword ptr [-544+rbp]
michael@0 3393 mul qword ptr [-136+rbp]
michael@0 3394 add rcx, rax
michael@0 3395 adc rdi, rdx
michael@0 3396 adc rsi, 0
michael@0 3397 mov rax, qword ptr [-536+rbp]
michael@0 3398 mul qword ptr [-144+rbp]
michael@0 3399 add rcx, rax
michael@0 3400 adc rdi, rdx
michael@0 3401 adc rsi, 0
michael@0 3402 mov rax, qword ptr [-528+rbp]
michael@0 3403 mul qword ptr [-152+rbp]
michael@0 3404 add rcx, rax
michael@0 3405 adc rdi, rdx
michael@0 3406 adc rsi, 0
michael@0 3407 mov rax, qword ptr [-520+rbp]
michael@0 3408 mul qword ptr [-160+rbp]
michael@0 3409 add rcx, rax
michael@0 3410 adc rdi, rdx
michael@0 3411 adc rsi, 0
michael@0 3412 mov rax, qword ptr [-512+rbp]
michael@0 3413 mul qword ptr [-168+rbp]
michael@0 3414 add rcx, rax
michael@0 3415 adc rdi, rdx
michael@0 3416 adc rsi, 0
michael@0 3417 mov rax, qword ptr [-504+rbp]
michael@0 3418 mul qword ptr [-176+rbp]
michael@0 3419 add rcx, rax
michael@0 3420 adc rdi, rdx
michael@0 3421 adc rsi, 0
michael@0 3422 mov rax, qword ptr [-496+rbp]
michael@0 3423 mul qword ptr [-184+rbp]
michael@0 3424 add rcx, rax
michael@0 3425 adc rdi, rdx
michael@0 3426 adc rsi, 0
michael@0 3427 mov rax, qword ptr [-488+rbp]
michael@0 3428 mul qword ptr [-192+rbp]
michael@0 3429 add rcx, rax
michael@0 3430 adc rdi, rdx
michael@0 3431 adc rsi, 0
michael@0 3432 mov rax, qword ptr [-480+rbp]
michael@0 3433 mul qword ptr [-200+rbp]
michael@0 3434 add rcx, rax
michael@0 3435 adc rdi, rdx
michael@0 3436 adc rsi, 0
michael@0 3437 mov rax, qword ptr [-472+rbp]
michael@0 3438 mul qword ptr [-208+rbp]
michael@0 3439 add rcx, rax
michael@0 3440 adc rdi, rdx
michael@0 3441 adc rsi, 0
michael@0 3442 mov rax, qword ptr [-464+rbp]
michael@0 3443 mul qword ptr [-216+rbp]
michael@0 3444 add rcx, rax
michael@0 3445 adc rdi, rdx
michael@0 3446 adc rsi, 0
michael@0 3447 mov rax, qword ptr [-456+rbp]
michael@0 3448 mul qword ptr [-224+rbp]
michael@0 3449 add rcx, rax
michael@0 3450 adc rdi, rdx
michael@0 3451 adc rsi, 0
michael@0 3452 mov rax, qword ptr [-448+rbp]
michael@0 3453 mul qword ptr [-232+rbp]
michael@0 3454 add rcx, rax
michael@0 3455 adc rdi, rdx
michael@0 3456 adc rsi, 0
michael@0 3457 mov rax, qword ptr [-440+rbp]
michael@0 3458 mul qword ptr [-240+rbp]
michael@0 3459 add rcx, rax
michael@0 3460 adc rdi, rdx
michael@0 3461 adc rsi, 0
michael@0 3462 mov rax, qword ptr [-432+rbp]
michael@0 3463 mul qword ptr [-248+rbp]
michael@0 3464 add rcx, rax
michael@0 3465 adc rdi, rdx
michael@0 3466 adc rsi, 0
michael@0 3467 mov rax, qword ptr [-424+rbp]
michael@0 3468 mul qword ptr [-256+rbp]
michael@0 3469 add rcx, rax
michael@0 3470 adc rdi, rdx
michael@0 3471 adc rsi, 0
michael@0 3472 mov rax, qword ptr [-416+rbp]
michael@0 3473 mul qword ptr [-264+rbp]
michael@0 3474 add rcx, rax
michael@0 3475 adc rdi, rdx
michael@0 3476 adc rsi, 0
michael@0 3477 mov rax, qword ptr [-408+rbp]
michael@0 3478 mul qword ptr [-272+rbp]
michael@0 3479 add rcx, rax
michael@0 3480 adc rdi, rdx
michael@0 3481 adc rsi, 0
michael@0 3482 mov rax, qword ptr [-400+rbp]
michael@0 3483 mul qword ptr [-280+rbp]
michael@0 3484 add rcx, rax
michael@0 3485 adc rdi, rdx
michael@0 3486 adc rsi, 0
michael@0 3487 mov r10, rdi
michael@0 3488 mov r11, rsi
michael@0 3489 mov rax, qword ptr [-392+rbp]
michael@0 3490 mul qword ptr [-288+rbp]
michael@0 3491 add rcx, rax
michael@0 3492 adc r10, rdx
michael@0 3493 adc r11, 0
michael@0 3494 mov qword ptr [152+r9], rcx
michael@0 3495 mov rdi, r11
michael@0 3496 mov rsi, r10
michael@0 3497 mov rcx, r8
michael@0 3498 mov rax, qword ptr [-544+rbp]
michael@0 3499 mul qword ptr [-128+rbp]
michael@0 3500 add rsi, rax
michael@0 3501 adc rdi, rdx
michael@0 3502 adc rcx, 0
michael@0 3503 mov rax, qword ptr [-536+rbp]
michael@0 3504 mul qword ptr [-136+rbp]
michael@0 3505 add rsi, rax
michael@0 3506 adc rdi, rdx
michael@0 3507 adc rcx, 0
michael@0 3508 mov rax, qword ptr [-528+rbp]
michael@0 3509 mul qword ptr [-144+rbp]
michael@0 3510 add rsi, rax
michael@0 3511 adc rdi, rdx
michael@0 3512 adc rcx, 0
michael@0 3513 mov rax, qword ptr [-520+rbp]
michael@0 3514 mul qword ptr [-152+rbp]
michael@0 3515 add rsi, rax
michael@0 3516 adc rdi, rdx
michael@0 3517 adc rcx, 0
michael@0 3518 mov rax, qword ptr [-512+rbp]
michael@0 3519 mul qword ptr [-160+rbp]
michael@0 3520 add rsi, rax
michael@0 3521 adc rdi, rdx
michael@0 3522 adc rcx, 0
michael@0 3523 mov rax, qword ptr [-504+rbp]
michael@0 3524 mul qword ptr [-168+rbp]
michael@0 3525 add rsi, rax
michael@0 3526 adc rdi, rdx
michael@0 3527 adc rcx, 0
michael@0 3528 mov rax, qword ptr [-496+rbp]
michael@0 3529 mul qword ptr [-176+rbp]
michael@0 3530 add rsi, rax
michael@0 3531 adc rdi, rdx
michael@0 3532 adc rcx, 0
michael@0 3533 mov rax, qword ptr [-488+rbp]
michael@0 3534 mul qword ptr [-184+rbp]
michael@0 3535 add rsi, rax
michael@0 3536 adc rdi, rdx
michael@0 3537 adc rcx, 0
michael@0 3538 mov rax, qword ptr [-480+rbp]
michael@0 3539 mul qword ptr [-192+rbp]
michael@0 3540 add rsi, rax
michael@0 3541 adc rdi, rdx
michael@0 3542 adc rcx, 0
michael@0 3543 mov rax, qword ptr [-472+rbp]
michael@0 3544 mul qword ptr [-200+rbp]
michael@0 3545 add rsi, rax
michael@0 3546 adc rdi, rdx
michael@0 3547 adc rcx, 0
michael@0 3548 mov rax, qword ptr [-464+rbp]
michael@0 3549 mul qword ptr [-208+rbp]
michael@0 3550 add rsi, rax
michael@0 3551 adc rdi, rdx
michael@0 3552 adc rcx, 0
michael@0 3553 mov rax, qword ptr [-456+rbp]
michael@0 3554 mul qword ptr [-216+rbp]
michael@0 3555 add rsi, rax
michael@0 3556 adc rdi, rdx
michael@0 3557 adc rcx, 0
michael@0 3558 mov rax, qword ptr [-448+rbp]
michael@0 3559 mul qword ptr [-224+rbp]
michael@0 3560 add rsi, rax
michael@0 3561 adc rdi, rdx
michael@0 3562 adc rcx, 0
michael@0 3563 mov rax, qword ptr [-440+rbp]
michael@0 3564 mul qword ptr [-232+rbp]
michael@0 3565 add rsi, rax
michael@0 3566 adc rdi, rdx
michael@0 3567 adc rcx, 0
michael@0 3568 mov rax, qword ptr [-432+rbp]
michael@0 3569 mul qword ptr [-240+rbp]
michael@0 3570 add rsi, rax
michael@0 3571 adc rdi, rdx
michael@0 3572 adc rcx, 0
michael@0 3573 mov rax, qword ptr [-424+rbp]
michael@0 3574 mul qword ptr [-248+rbp]
michael@0 3575 add rsi, rax
michael@0 3576 adc rdi, rdx
michael@0 3577 adc rcx, 0
michael@0 3578 mov rax, qword ptr [-416+rbp]
michael@0 3579 mul qword ptr [-256+rbp]
michael@0 3580 add rsi, rax
michael@0 3581 adc rdi, rdx
michael@0 3582 adc rcx, 0
michael@0 3583 mov rax, qword ptr [-408+rbp]
michael@0 3584 mul qword ptr [-264+rbp]
michael@0 3585 add rsi, rax
michael@0 3586 adc rdi, rdx
michael@0 3587 adc rcx, 0
michael@0 3588 mov rax, qword ptr [-400+rbp]
michael@0 3589 mul qword ptr [-272+rbp]
michael@0 3590 add rsi, rax
michael@0 3591 adc rdi, rdx
michael@0 3592 adc rcx, 0
michael@0 3593 mov rax, qword ptr [-392+rbp]
michael@0 3594 mul qword ptr [-280+rbp]
michael@0 3595 add rsi, rax
michael@0 3596 adc rdi, rdx
michael@0 3597 adc rcx, 0
michael@0 3598 mov r10, rdi
michael@0 3599 mov r11, rcx
michael@0 3600 mov rax, qword ptr [-384+rbp]
michael@0 3601 mul qword ptr [-288+rbp]
michael@0 3602 add rsi, rax
michael@0 3603 adc r10, rdx
michael@0 3604 adc r11, 0
michael@0 3605 mov qword ptr [160+r9], rsi
michael@0 3606 mov rdi, r11
michael@0 3607 mov rcx, r10
michael@0 3608 mov rsi, r8
michael@0 3609 mov rax, qword ptr [-544+rbp]
michael@0 3610 mul qword ptr [-120+rbp]
michael@0 3611 add rcx, rax
michael@0 3612 adc rdi, rdx
michael@0 3613 adc rsi, 0
michael@0 3614 mov rax, qword ptr [-536+rbp]
michael@0 3615 mul qword ptr [-128+rbp]
michael@0 3616 add rcx, rax
michael@0 3617 adc rdi, rdx
michael@0 3618 adc rsi, 0
michael@0 3619 mov rax, qword ptr [-528+rbp]
michael@0 3620 mul qword ptr [-136+rbp]
michael@0 3621 add rcx, rax
michael@0 3622 adc rdi, rdx
michael@0 3623 adc rsi, 0
michael@0 3624 mov rax, qword ptr [-520+rbp]
michael@0 3625 mul qword ptr [-144+rbp]
michael@0 3626 add rcx, rax
michael@0 3627 adc rdi, rdx
michael@0 3628 adc rsi, 0
michael@0 3629 mov rax, qword ptr [-512+rbp]
michael@0 3630 mul qword ptr [-152+rbp]
michael@0 3631 add rcx, rax
michael@0 3632 adc rdi, rdx
michael@0 3633 adc rsi, 0
michael@0 3634 mov rax, qword ptr [-504+rbp]
michael@0 3635 mul qword ptr [-160+rbp]
michael@0 3636 add rcx, rax
michael@0 3637 adc rdi, rdx
michael@0 3638 adc rsi, 0
michael@0 3639 mov rax, qword ptr [-496+rbp]
michael@0 3640 mul qword ptr [-168+rbp]
michael@0 3641 add rcx, rax
michael@0 3642 adc rdi, rdx
michael@0 3643 adc rsi, 0
michael@0 3644 mov rax, qword ptr [-488+rbp]
michael@0 3645 mul qword ptr [-176+rbp]
michael@0 3646 add rcx, rax
michael@0 3647 adc rdi, rdx
michael@0 3648 adc rsi, 0
michael@0 3649 mov rax, qword ptr [-480+rbp]
michael@0 3650 mul qword ptr [-184+rbp]
michael@0 3651 add rcx, rax
michael@0 3652 adc rdi, rdx
michael@0 3653 adc rsi, 0
michael@0 3654 mov rax, qword ptr [-472+rbp]
michael@0 3655 mul qword ptr [-192+rbp]
michael@0 3656 add rcx, rax
michael@0 3657 adc rdi, rdx
michael@0 3658 adc rsi, 0
michael@0 3659 mov rax, qword ptr [-464+rbp]
michael@0 3660 mul qword ptr [-200+rbp]
michael@0 3661 add rcx, rax
michael@0 3662 adc rdi, rdx
michael@0 3663 adc rsi, 0
michael@0 3664 mov rax, qword ptr [-456+rbp]
michael@0 3665 mul qword ptr [-208+rbp]
michael@0 3666 add rcx, rax
michael@0 3667 adc rdi, rdx
michael@0 3668 adc rsi, 0
michael@0 3669 mov rax, qword ptr [-448+rbp]
michael@0 3670 mul qword ptr [-216+rbp]
michael@0 3671 add rcx, rax
michael@0 3672 adc rdi, rdx
michael@0 3673 adc rsi, 0
michael@0 3674 mov rax, qword ptr [-440+rbp]
michael@0 3675 mul qword ptr [-224+rbp]
michael@0 3676 add rcx, rax
michael@0 3677 adc rdi, rdx
michael@0 3678 adc rsi, 0
michael@0 3679 mov rax, qword ptr [-432+rbp]
michael@0 3680 mul qword ptr [-232+rbp]
michael@0 3681 add rcx, rax
michael@0 3682 adc rdi, rdx
michael@0 3683 adc rsi, 0
michael@0 3684 mov rax, qword ptr [-424+rbp]
michael@0 3685 mul qword ptr [-240+rbp]
michael@0 3686 add rcx, rax
michael@0 3687 adc rdi, rdx
michael@0 3688 adc rsi, 0
michael@0 3689 mov rax, qword ptr [-416+rbp]
michael@0 3690 mul qword ptr [-248+rbp]
michael@0 3691 add rcx, rax
michael@0 3692 adc rdi, rdx
michael@0 3693 adc rsi, 0
michael@0 3694 mov rax, qword ptr [-408+rbp]
michael@0 3695 mul qword ptr [-256+rbp]
michael@0 3696 add rcx, rax
michael@0 3697 adc rdi, rdx
michael@0 3698 adc rsi, 0
michael@0 3699 mov rax, qword ptr [-400+rbp]
michael@0 3700 mul qword ptr [-264+rbp]
michael@0 3701 add rcx, rax
michael@0 3702 adc rdi, rdx
michael@0 3703 adc rsi, 0
michael@0 3704 mov rax, qword ptr [-392+rbp]
michael@0 3705 mul qword ptr [-272+rbp]
michael@0 3706 add rcx, rax
michael@0 3707 adc rdi, rdx
michael@0 3708 adc rsi, 0
michael@0 3709 mov rax, qword ptr [-384+rbp]
michael@0 3710 mul qword ptr [-280+rbp]
michael@0 3711 add rcx, rax
michael@0 3712 adc rdi, rdx
michael@0 3713 adc rsi, 0
michael@0 3714 mov r10, rdi
michael@0 3715 mov r11, rsi
michael@0 3716 mov rax, qword ptr [-376+rbp]
michael@0 3717 mul qword ptr [-288+rbp]
michael@0 3718 add rcx, rax
michael@0 3719 adc r10, rdx
michael@0 3720 adc r11, 0
michael@0 3721 mov qword ptr [168+r9], rcx
michael@0 3722 mov rdi, r11
michael@0 3723 mov rsi, r10
michael@0 3724 mov rcx, r8
michael@0 3725 mov rax, qword ptr [-544+rbp]
michael@0 3726 mul qword ptr [-112+rbp]
michael@0 3727 add rsi, rax
michael@0 3728 adc rdi, rdx
michael@0 3729 adc rcx, 0
michael@0 3730 mov rax, qword ptr [-536+rbp]
michael@0 3731 mul qword ptr [-120+rbp]
michael@0 3732 add rsi, rax
michael@0 3733 adc rdi, rdx
michael@0 3734 adc rcx, 0
michael@0 3735 mov rax, qword ptr [-528+rbp]
michael@0 3736 mul qword ptr [-128+rbp]
michael@0 3737 add rsi, rax
michael@0 3738 adc rdi, rdx
michael@0 3739 adc rcx, 0
michael@0 3740 mov rax, qword ptr [-520+rbp]
michael@0 3741 mul qword ptr [-136+rbp]
michael@0 3742 add rsi, rax
michael@0 3743 adc rdi, rdx
michael@0 3744 adc rcx, 0
michael@0 3745 mov rax, qword ptr [-512+rbp]
michael@0 3746 mul qword ptr [-144+rbp]
michael@0 3747 add rsi, rax
michael@0 3748 adc rdi, rdx
michael@0 3749 adc rcx, 0
michael@0 3750 mov rax, qword ptr [-504+rbp]
michael@0 3751 mul qword ptr [-152+rbp]
michael@0 3752 add rsi, rax
michael@0 3753 adc rdi, rdx
michael@0 3754 adc rcx, 0
michael@0 3755 mov rax, qword ptr [-496+rbp]
michael@0 3756 mul qword ptr [-160+rbp]
michael@0 3757 add rsi, rax
michael@0 3758 adc rdi, rdx
michael@0 3759 adc rcx, 0
michael@0 3760 mov rax, qword ptr [-488+rbp]
michael@0 3761 mul qword ptr [-168+rbp]
michael@0 3762 add rsi, rax
michael@0 3763 adc rdi, rdx
michael@0 3764 adc rcx, 0
michael@0 3765 mov rax, qword ptr [-480+rbp]
michael@0 3766 mul qword ptr [-176+rbp]
michael@0 3767 add rsi, rax
michael@0 3768 adc rdi, rdx
michael@0 3769 adc rcx, 0
michael@0 3770 mov rax, qword ptr [-472+rbp]
michael@0 3771 mul qword ptr [-184+rbp]
michael@0 3772 add rsi, rax
michael@0 3773 adc rdi, rdx
michael@0 3774 adc rcx, 0
michael@0 3775 mov rax, qword ptr [-464+rbp]
michael@0 3776 mul qword ptr [-192+rbp]
michael@0 3777 add rsi, rax
michael@0 3778 adc rdi, rdx
michael@0 3779 adc rcx, 0
michael@0 3780 mov rax, qword ptr [-456+rbp]
michael@0 3781 mul qword ptr [-200+rbp]
michael@0 3782 add rsi, rax
michael@0 3783 adc rdi, rdx
michael@0 3784 adc rcx, 0
michael@0 3785 mov rax, qword ptr [-448+rbp]
michael@0 3786 mul qword ptr [-208+rbp]
michael@0 3787 add rsi, rax
michael@0 3788 adc rdi, rdx
michael@0 3789 adc rcx, 0
michael@0 3790 mov rax, qword ptr [-440+rbp]
michael@0 3791 mul qword ptr [-216+rbp]
michael@0 3792 add rsi, rax
michael@0 3793 adc rdi, rdx
michael@0 3794 adc rcx, 0
michael@0 3795 mov rax, qword ptr [-432+rbp]
michael@0 3796 mul qword ptr [-224+rbp]
michael@0 3797 add rsi, rax
michael@0 3798 adc rdi, rdx
michael@0 3799 adc rcx, 0
michael@0 3800 mov rax, qword ptr [-424+rbp]
michael@0 3801 mul qword ptr [-232+rbp]
michael@0 3802 add rsi, rax
michael@0 3803 adc rdi, rdx
michael@0 3804 adc rcx, 0
michael@0 3805 mov rax, qword ptr [-416+rbp]
michael@0 3806 mul qword ptr [-240+rbp]
michael@0 3807 add rsi, rax
michael@0 3808 adc rdi, rdx
michael@0 3809 adc rcx, 0
michael@0 3810 mov rax, qword ptr [-408+rbp]
michael@0 3811 mul qword ptr [-248+rbp]
michael@0 3812 add rsi, rax
michael@0 3813 adc rdi, rdx
michael@0 3814 adc rcx, 0
michael@0 3815 mov rax, qword ptr [-400+rbp]
michael@0 3816 mul qword ptr [-256+rbp]
michael@0 3817 add rsi, rax
michael@0 3818 adc rdi, rdx
michael@0 3819 adc rcx, 0
michael@0 3820 mov rax, qword ptr [-392+rbp]
michael@0 3821 mul qword ptr [-264+rbp]
michael@0 3822 add rsi, rax
michael@0 3823 adc rdi, rdx
michael@0 3824 adc rcx, 0
michael@0 3825 mov rax, qword ptr [-384+rbp]
michael@0 3826 mul qword ptr [-272+rbp]
michael@0 3827 add rsi, rax
michael@0 3828 adc rdi, rdx
michael@0 3829 adc rcx, 0
michael@0 3830 mov rax, qword ptr [-376+rbp]
michael@0 3831 mul qword ptr [-280+rbp]
michael@0 3832 add rsi, rax
michael@0 3833 adc rdi, rdx
michael@0 3834 adc rcx, 0
michael@0 3835 mov r10, rdi
michael@0 3836 mov r11, rcx
michael@0 3837 mov rax, qword ptr [-368+rbp]
michael@0 3838 mul qword ptr [-288+rbp]
michael@0 3839 add rsi, rax
michael@0 3840 adc r10, rdx
michael@0 3841 adc r11, 0
michael@0 3842 mov qword ptr [176+r9], rsi
michael@0 3843 mov rdi, r11
michael@0 3844 mov rcx, r10
michael@0 3845 mov rsi, r8
michael@0 3846 mov rax, qword ptr [-544+rbp]
michael@0 3847 mul qword ptr [-104+rbp]
michael@0 3848 add rcx, rax
michael@0 3849 adc rdi, rdx
michael@0 3850 adc rsi, 0
michael@0 3851 mov rax, qword ptr [-536+rbp]
michael@0 3852 mul qword ptr [-112+rbp]
michael@0 3853 add rcx, rax
michael@0 3854 adc rdi, rdx
michael@0 3855 adc rsi, 0
michael@0 3856 mov rax, qword ptr [-528+rbp]
michael@0 3857 mul qword ptr [-120+rbp]
michael@0 3858 add rcx, rax
michael@0 3859 adc rdi, rdx
michael@0 3860 adc rsi, 0
michael@0 3861 mov rax, qword ptr [-520+rbp]
michael@0 3862 mul qword ptr [-128+rbp]
michael@0 3863 add rcx, rax
michael@0 3864 adc rdi, rdx
michael@0 3865 adc rsi, 0
michael@0 3866 mov rax, qword ptr [-512+rbp]
michael@0 3867 mul qword ptr [-136+rbp]
michael@0 3868 add rcx, rax
michael@0 3869 adc rdi, rdx
michael@0 3870 adc rsi, 0
michael@0 3871 mov rax, qword ptr [-504+rbp]
michael@0 3872 mul qword ptr [-144+rbp]
michael@0 3873 add rcx, rax
michael@0 3874 adc rdi, rdx
michael@0 3875 adc rsi, 0
michael@0 3876 mov rax, qword ptr [-496+rbp]
michael@0 3877 mul qword ptr [-152+rbp]
michael@0 3878 add rcx, rax
michael@0 3879 adc rdi, rdx
michael@0 3880 adc rsi, 0
michael@0 3881 mov rax, qword ptr [-488+rbp]
michael@0 3882 mul qword ptr [-160+rbp]
michael@0 3883 add rcx, rax
michael@0 3884 adc rdi, rdx
michael@0 3885 adc rsi, 0
michael@0 3886 mov rax, qword ptr [-480+rbp]
michael@0 3887 mul qword ptr [-168+rbp]
michael@0 3888 add rcx, rax
michael@0 3889 adc rdi, rdx
michael@0 3890 adc rsi, 0
michael@0 3891 mov rax, qword ptr [-472+rbp]
michael@0 3892 mul qword ptr [-176+rbp]
michael@0 3893 add rcx, rax
michael@0 3894 adc rdi, rdx
michael@0 3895 adc rsi, 0
michael@0 3896 mov rax, qword ptr [-464+rbp]
michael@0 3897 mul qword ptr [-184+rbp]
michael@0 3898 add rcx, rax
michael@0 3899 adc rdi, rdx
michael@0 3900 adc rsi, 0
michael@0 3901 mov rax, qword ptr [-456+rbp]
michael@0 3902 mul qword ptr [-192+rbp]
michael@0 3903 add rcx, rax
michael@0 3904 adc rdi, rdx
michael@0 3905 adc rsi, 0
michael@0 3906 mov rax, qword ptr [-448+rbp]
michael@0 3907 mul qword ptr [-200+rbp]
michael@0 3908 add rcx, rax
michael@0 3909 adc rdi, rdx
michael@0 3910 adc rsi, 0
michael@0 3911 mov rax, qword ptr [-440+rbp]
michael@0 3912 mul qword ptr [-208+rbp]
michael@0 3913 add rcx, rax
michael@0 3914 adc rdi, rdx
michael@0 3915 adc rsi, 0
michael@0 3916 mov rax, qword ptr [-432+rbp]
michael@0 3917 mul qword ptr [-216+rbp]
michael@0 3918 add rcx, rax
michael@0 3919 adc rdi, rdx
michael@0 3920 adc rsi, 0
michael@0 3921 mov rax, qword ptr [-424+rbp]
michael@0 3922 mul qword ptr [-224+rbp]
michael@0 3923 add rcx, rax
michael@0 3924 adc rdi, rdx
michael@0 3925 adc rsi, 0
michael@0 3926 mov rax, qword ptr [-416+rbp]
michael@0 3927 mul qword ptr [-232+rbp]
michael@0 3928 add rcx, rax
michael@0 3929 adc rdi, rdx
michael@0 3930 adc rsi, 0
michael@0 3931 mov rax, qword ptr [-408+rbp]
michael@0 3932 mul qword ptr [-240+rbp]
michael@0 3933 add rcx, rax
michael@0 3934 adc rdi, rdx
michael@0 3935 adc rsi, 0
michael@0 3936 mov rax, qword ptr [-400+rbp]
michael@0 3937 mul qword ptr [-248+rbp]
michael@0 3938 add rcx, rax
michael@0 3939 adc rdi, rdx
michael@0 3940 adc rsi, 0
michael@0 3941 mov rax, qword ptr [-392+rbp]
michael@0 3942 mul qword ptr [-256+rbp]
michael@0 3943 add rcx, rax
michael@0 3944 adc rdi, rdx
michael@0 3945 adc rsi, 0
michael@0 3946 mov rax, qword ptr [-384+rbp]
michael@0 3947 mul qword ptr [-264+rbp]
michael@0 3948 add rcx, rax
michael@0 3949 adc rdi, rdx
michael@0 3950 adc rsi, 0
michael@0 3951 mov rax, qword ptr [-376+rbp]
michael@0 3952 mul qword ptr [-272+rbp]
michael@0 3953 add rcx, rax
michael@0 3954 adc rdi, rdx
michael@0 3955 adc rsi, 0
michael@0 3956 mov rax, qword ptr [-368+rbp]
michael@0 3957 mul qword ptr [-280+rbp]
michael@0 3958 add rcx, rax
michael@0 3959 adc rdi, rdx
michael@0 3960 adc rsi, 0
michael@0 3961 mov r10, rdi
michael@0 3962 mov r11, rsi
michael@0 3963 mov rax, qword ptr [-360+rbp]
michael@0 3964 mul qword ptr [-288+rbp]
michael@0 3965 add rcx, rax
michael@0 3966 adc r10, rdx
michael@0 3967 adc r11, 0
michael@0 3968 mov qword ptr [184+r9], rcx
michael@0 3969 mov rdi, r11
michael@0 3970 mov rsi, r10
michael@0 3971 mov rcx, r8
michael@0 3972 mov rax, qword ptr [-544+rbp]
michael@0 3973 mul qword ptr [-96+rbp]
michael@0 3974 add rsi, rax
michael@0 3975 adc rdi, rdx
michael@0 3976 adc rcx, 0
michael@0 3977 mov rax, qword ptr [-536+rbp]
michael@0 3978 mul qword ptr [-104+rbp]
michael@0 3979 add rsi, rax
michael@0 3980 adc rdi, rdx
michael@0 3981 adc rcx, 0
michael@0 3982 mov rax, qword ptr [-528+rbp]
michael@0 3983 mul qword ptr [-112+rbp]
michael@0 3984 add rsi, rax
michael@0 3985 adc rdi, rdx
michael@0 3986 adc rcx, 0
michael@0 3987 mov rax, qword ptr [-520+rbp]
michael@0 3988 mul qword ptr [-120+rbp]
michael@0 3989 add rsi, rax
michael@0 3990 adc rdi, rdx
michael@0 3991 adc rcx, 0
michael@0 3992 mov rax, qword ptr [-512+rbp]
michael@0 3993 mul qword ptr [-128+rbp]
michael@0 3994 add rsi, rax
michael@0 3995 adc rdi, rdx
michael@0 3996 adc rcx, 0
michael@0 3997 mov rax, qword ptr [-504+rbp]
michael@0 3998 mul qword ptr [-136+rbp]
michael@0 3999 add rsi, rax
michael@0 4000 adc rdi, rdx
michael@0 4001 adc rcx, 0
michael@0 4002 mov rax, qword ptr [-496+rbp]
michael@0 4003 mul qword ptr [-144+rbp]
michael@0 4004 add rsi, rax
michael@0 4005 adc rdi, rdx
michael@0 4006 adc rcx, 0
michael@0 4007 mov rax, qword ptr [-488+rbp]
michael@0 4008 mul qword ptr [-152+rbp]
michael@0 4009 add rsi, rax
michael@0 4010 adc rdi, rdx
michael@0 4011 adc rcx, 0
michael@0 4012 mov rax, qword ptr [-480+rbp]
michael@0 4013 mul qword ptr [-160+rbp]
michael@0 4014 add rsi, rax
michael@0 4015 adc rdi, rdx
michael@0 4016 adc rcx, 0
michael@0 4017 mov rax, qword ptr [-472+rbp]
michael@0 4018 mul qword ptr [-168+rbp]
michael@0 4019 add rsi, rax
michael@0 4020 adc rdi, rdx
michael@0 4021 adc rcx, 0
michael@0 4022 mov rax, qword ptr [-464+rbp]
michael@0 4023 mul qword ptr [-176+rbp]
michael@0 4024 add rsi, rax
michael@0 4025 adc rdi, rdx
michael@0 4026 adc rcx, 0
michael@0 4027 mov rax, qword ptr [-456+rbp]
michael@0 4028 mul qword ptr [-184+rbp]
michael@0 4029 add rsi, rax
michael@0 4030 adc rdi, rdx
michael@0 4031 adc rcx, 0
michael@0 4032 mov rax, qword ptr [-448+rbp]
michael@0 4033 mul qword ptr [-192+rbp]
michael@0 4034 add rsi, rax
michael@0 4035 adc rdi, rdx
michael@0 4036 adc rcx, 0
michael@0 4037 mov rax, qword ptr [-440+rbp]
michael@0 4038 mul qword ptr [-200+rbp]
michael@0 4039 add rsi, rax
michael@0 4040 adc rdi, rdx
michael@0 4041 adc rcx, 0
michael@0 4042 mov rax, qword ptr [-432+rbp]
michael@0 4043 mul qword ptr [-208+rbp]
michael@0 4044 add rsi, rax
michael@0 4045 adc rdi, rdx
michael@0 4046 adc rcx, 0
michael@0 4047 mov rax, qword ptr [-424+rbp]
michael@0 4048 mul qword ptr [-216+rbp]
michael@0 4049 add rsi, rax
michael@0 4050 adc rdi, rdx
michael@0 4051 adc rcx, 0
michael@0 4052 mov rax, qword ptr [-416+rbp]
michael@0 4053 mul qword ptr [-224+rbp]
michael@0 4054 add rsi, rax
michael@0 4055 adc rdi, rdx
michael@0 4056 adc rcx, 0
michael@0 4057 mov rax, qword ptr [-408+rbp]
michael@0 4058 mul qword ptr [-232+rbp]
michael@0 4059 add rsi, rax
michael@0 4060 adc rdi, rdx
michael@0 4061 adc rcx, 0
michael@0 4062 mov rax, qword ptr [-400+rbp]
michael@0 4063 mul qword ptr [-240+rbp]
michael@0 4064 add rsi, rax
michael@0 4065 adc rdi, rdx
michael@0 4066 adc rcx, 0
michael@0 4067 mov rax, qword ptr [-392+rbp]
michael@0 4068 mul qword ptr [-248+rbp]
michael@0 4069 add rsi, rax
michael@0 4070 adc rdi, rdx
michael@0 4071 adc rcx, 0
michael@0 4072 mov rax, qword ptr [-384+rbp]
michael@0 4073 mul qword ptr [-256+rbp]
michael@0 4074 add rsi, rax
michael@0 4075 adc rdi, rdx
michael@0 4076 adc rcx, 0
michael@0 4077 mov rax, qword ptr [-376+rbp]
michael@0 4078 mul qword ptr [-264+rbp]
michael@0 4079 add rsi, rax
michael@0 4080 adc rdi, rdx
michael@0 4081 adc rcx, 0
michael@0 4082 mov rax, qword ptr [-368+rbp]
michael@0 4083 mul qword ptr [-272+rbp]
michael@0 4084 add rsi, rax
michael@0 4085 adc rdi, rdx
michael@0 4086 adc rcx, 0
michael@0 4087 mov rax, qword ptr [-360+rbp]
michael@0 4088 mul qword ptr [-280+rbp]
michael@0 4089 add rsi, rax
michael@0 4090 adc rdi, rdx
michael@0 4091 adc rcx, 0
michael@0 4092 mov r10, rdi
michael@0 4093 mov r11, rcx
michael@0 4094 mov rax, qword ptr [-352+rbp]
michael@0 4095 mul qword ptr [-288+rbp]
michael@0 4096 add rsi, rax
michael@0 4097 adc r10, rdx
michael@0 4098 adc r11, 0
michael@0 4099 mov qword ptr [192+r9], rsi
michael@0 4100 mov rdi, r11
michael@0 4101 mov rcx, r10
michael@0 4102 mov rsi, r8
michael@0 4103 mov rax, qword ptr [-544+rbp]
michael@0 4104 mul qword ptr [-88+rbp]
michael@0 4105 add rcx, rax
michael@0 4106 adc rdi, rdx
michael@0 4107 adc rsi, 0
michael@0 4108 mov rax, qword ptr [-536+rbp]
michael@0 4109 mul qword ptr [-96+rbp]
michael@0 4110 add rcx, rax
michael@0 4111 adc rdi, rdx
michael@0 4112 adc rsi, 0
michael@0 4113 mov rax, qword ptr [-528+rbp]
michael@0 4114 mul qword ptr [-104+rbp]
michael@0 4115 add rcx, rax
michael@0 4116 adc rdi, rdx
michael@0 4117 adc rsi, 0
michael@0 4118 mov rax, qword ptr [-520+rbp]
michael@0 4119 mul qword ptr [-112+rbp]
michael@0 4120 add rcx, rax
michael@0 4121 adc rdi, rdx
michael@0 4122 adc rsi, 0
michael@0 4123 mov rax, qword ptr [-512+rbp]
michael@0 4124 mul qword ptr [-120+rbp]
michael@0 4125 add rcx, rax
michael@0 4126 adc rdi, rdx
michael@0 4127 adc rsi, 0
michael@0 4128 mov rax, qword ptr [-504+rbp]
michael@0 4129 mul qword ptr [-128+rbp]
michael@0 4130 add rcx, rax
michael@0 4131 adc rdi, rdx
michael@0 4132 adc rsi, 0
michael@0 4133 mov rax, qword ptr [-496+rbp]
michael@0 4134 mul qword ptr [-136+rbp]
michael@0 4135 add rcx, rax
michael@0 4136 adc rdi, rdx
michael@0 4137 adc rsi, 0
michael@0 4138 mov rax, qword ptr [-488+rbp]
michael@0 4139 mul qword ptr [-144+rbp]
michael@0 4140 add rcx, rax
michael@0 4141 adc rdi, rdx
michael@0 4142 adc rsi, 0
michael@0 4143 mov rax, qword ptr [-480+rbp]
michael@0 4144 mul qword ptr [-152+rbp]
michael@0 4145 add rcx, rax
michael@0 4146 adc rdi, rdx
michael@0 4147 adc rsi, 0
michael@0 4148 mov rax, qword ptr [-472+rbp]
michael@0 4149 mul qword ptr [-160+rbp]
michael@0 4150 add rcx, rax
michael@0 4151 adc rdi, rdx
michael@0 4152 adc rsi, 0
michael@0 4153 mov rax, qword ptr [-464+rbp]
michael@0 4154 mul qword ptr [-168+rbp]
michael@0 4155 add rcx, rax
michael@0 4156 adc rdi, rdx
michael@0 4157 adc rsi, 0
michael@0 4158 mov rax, qword ptr [-456+rbp]
michael@0 4159 mul qword ptr [-176+rbp]
michael@0 4160 add rcx, rax
michael@0 4161 adc rdi, rdx
michael@0 4162 adc rsi, 0
michael@0 4163 mov rax, qword ptr [-448+rbp]
michael@0 4164 mul qword ptr [-184+rbp]
michael@0 4165 add rcx, rax
michael@0 4166 adc rdi, rdx
michael@0 4167 adc rsi, 0
michael@0 4168 mov rax, qword ptr [-440+rbp]
michael@0 4169 mul qword ptr [-192+rbp]
michael@0 4170 add rcx, rax
michael@0 4171 adc rdi, rdx
michael@0 4172 adc rsi, 0
michael@0 4173 mov rax, qword ptr [-432+rbp]
michael@0 4174 mul qword ptr [-200+rbp]
michael@0 4175 add rcx, rax
michael@0 4176 adc rdi, rdx
michael@0 4177 adc rsi, 0
michael@0 4178 mov rax, qword ptr [-424+rbp]
michael@0 4179 mul qword ptr [-208+rbp]
michael@0 4180 add rcx, rax
michael@0 4181 adc rdi, rdx
michael@0 4182 adc rsi, 0
michael@0 4183 mov rax, qword ptr [-416+rbp]
michael@0 4184 mul qword ptr [-216+rbp]
michael@0 4185 add rcx, rax
michael@0 4186 adc rdi, rdx
michael@0 4187 adc rsi, 0
michael@0 4188 mov rax, qword ptr [-408+rbp]
michael@0 4189 mul qword ptr [-224+rbp]
michael@0 4190 add rcx, rax
michael@0 4191 adc rdi, rdx
michael@0 4192 adc rsi, 0
michael@0 4193 mov rax, qword ptr [-400+rbp]
michael@0 4194 mul qword ptr [-232+rbp]
michael@0 4195 add rcx, rax
michael@0 4196 adc rdi, rdx
michael@0 4197 adc rsi, 0
michael@0 4198 mov rax, qword ptr [-392+rbp]
michael@0 4199 mul qword ptr [-240+rbp]
michael@0 4200 add rcx, rax
michael@0 4201 adc rdi, rdx
michael@0 4202 adc rsi, 0
michael@0 4203 mov rax, qword ptr [-384+rbp]
michael@0 4204 mul qword ptr [-248+rbp]
michael@0 4205 add rcx, rax
michael@0 4206 adc rdi, rdx
michael@0 4207 adc rsi, 0
michael@0 4208 mov rax, qword ptr [-376+rbp]
michael@0 4209 mul qword ptr [-256+rbp]
michael@0 4210 add rcx, rax
michael@0 4211 adc rdi, rdx
michael@0 4212 adc rsi, 0
michael@0 4213 mov rax, qword ptr [-368+rbp]
michael@0 4214 mul qword ptr [-264+rbp]
michael@0 4215 add rcx, rax
michael@0 4216 adc rdi, rdx
michael@0 4217 adc rsi, 0
michael@0 4218 mov rax, qword ptr [-360+rbp]
michael@0 4219 mul qword ptr [-272+rbp]
michael@0 4220 add rcx, rax
michael@0 4221 adc rdi, rdx
michael@0 4222 adc rsi, 0
michael@0 4223 mov rax, qword ptr [-352+rbp]
michael@0 4224 mul qword ptr [-280+rbp]
michael@0 4225 add rcx, rax
michael@0 4226 adc rdi, rdx
michael@0 4227 adc rsi, 0
michael@0 4228 mov r10, rdi
michael@0 4229 mov r11, rsi
michael@0 4230 mov rax, qword ptr [-344+rbp]
michael@0 4231 mul qword ptr [-288+rbp]
michael@0 4232 add rcx, rax
michael@0 4233 adc r10, rdx
michael@0 4234 adc r11, 0
michael@0 4235 mov qword ptr [200+r9], rcx
michael@0 4236 mov rdi, r11
michael@0 4237 mov rsi, r10
michael@0 4238 mov rcx, r8
michael@0 4239 mov rax, qword ptr [-544+rbp]
michael@0 4240 mul qword ptr [-80+rbp]
michael@0 4241 add rsi, rax
michael@0 4242 adc rdi, rdx
michael@0 4243 adc rcx, 0
michael@0 4244 mov rax, qword ptr [-536+rbp]
michael@0 4245 mul qword ptr [-88+rbp]
michael@0 4246 add rsi, rax
michael@0 4247 adc rdi, rdx
michael@0 4248 adc rcx, 0
michael@0 4249 mov rax, qword ptr [-528+rbp]
michael@0 4250 mul qword ptr [-96+rbp]
michael@0 4251 add rsi, rax
michael@0 4252 adc rdi, rdx
michael@0 4253 adc rcx, 0
michael@0 4254 mov rax, qword ptr [-520+rbp]
michael@0 4255 mul qword ptr [-104+rbp]
michael@0 4256 add rsi, rax
michael@0 4257 adc rdi, rdx
michael@0 4258 adc rcx, 0
michael@0 4259 mov rax, qword ptr [-512+rbp]
michael@0 4260 mul qword ptr [-112+rbp]
michael@0 4261 add rsi, rax
michael@0 4262 adc rdi, rdx
michael@0 4263 adc rcx, 0
michael@0 4264 mov rax, qword ptr [-504+rbp]
michael@0 4265 mul qword ptr [-120+rbp]
michael@0 4266 add rsi, rax
michael@0 4267 adc rdi, rdx
michael@0 4268 adc rcx, 0
michael@0 4269 mov rax, qword ptr [-496+rbp]
michael@0 4270 mul qword ptr [-128+rbp]
michael@0 4271 add rsi, rax
michael@0 4272 adc rdi, rdx
michael@0 4273 adc rcx, 0
michael@0 4274 mov rax, qword ptr [-488+rbp]
michael@0 4275 mul qword ptr [-136+rbp]
michael@0 4276 add rsi, rax
michael@0 4277 adc rdi, rdx
michael@0 4278 adc rcx, 0
michael@0 4279 mov rax, qword ptr [-480+rbp]
michael@0 4280 mul qword ptr [-144+rbp]
michael@0 4281 add rsi, rax
michael@0 4282 adc rdi, rdx
michael@0 4283 adc rcx, 0
michael@0 4284 mov rax, qword ptr [-472+rbp]
michael@0 4285 mul qword ptr [-152+rbp]
michael@0 4286 add rsi, rax
michael@0 4287 adc rdi, rdx
michael@0 4288 adc rcx, 0
michael@0 4289 mov rax, qword ptr [-464+rbp]
michael@0 4290 mul qword ptr [-160+rbp]
michael@0 4291 add rsi, rax
michael@0 4292 adc rdi, rdx
michael@0 4293 adc rcx, 0
michael@0 4294 mov rax, qword ptr [-456+rbp]
michael@0 4295 mul qword ptr [-168+rbp]
michael@0 4296 add rsi, rax
michael@0 4297 adc rdi, rdx
michael@0 4298 adc rcx, 0
michael@0 4299 mov rax, qword ptr [-448+rbp]
michael@0 4300 mul qword ptr [-176+rbp]
michael@0 4301 add rsi, rax
michael@0 4302 adc rdi, rdx
michael@0 4303 adc rcx, 0
michael@0 4304 mov rax, qword ptr [-440+rbp]
michael@0 4305 mul qword ptr [-184+rbp]
michael@0 4306 add rsi, rax
michael@0 4307 adc rdi, rdx
michael@0 4308 adc rcx, 0
michael@0 4309 mov rax, qword ptr [-432+rbp]
michael@0 4310 mul qword ptr [-192+rbp]
michael@0 4311 add rsi, rax
michael@0 4312 adc rdi, rdx
michael@0 4313 adc rcx, 0
michael@0 4314 mov rax, qword ptr [-424+rbp]
michael@0 4315 mul qword ptr [-200+rbp]
michael@0 4316 add rsi, rax
michael@0 4317 adc rdi, rdx
michael@0 4318 adc rcx, 0
michael@0 4319 mov rax, qword ptr [-416+rbp]
michael@0 4320 mul qword ptr [-208+rbp]
michael@0 4321 add rsi, rax
michael@0 4322 adc rdi, rdx
michael@0 4323 adc rcx, 0
michael@0 4324 mov rax, qword ptr [-408+rbp]
michael@0 4325 mul qword ptr [-216+rbp]
michael@0 4326 add rsi, rax
michael@0 4327 adc rdi, rdx
michael@0 4328 adc rcx, 0
michael@0 4329 mov rax, qword ptr [-400+rbp]
michael@0 4330 mul qword ptr [-224+rbp]
michael@0 4331 add rsi, rax
michael@0 4332 adc rdi, rdx
michael@0 4333 adc rcx, 0
michael@0 4334 mov rax, qword ptr [-392+rbp]
michael@0 4335 mul qword ptr [-232+rbp]
michael@0 4336 add rsi, rax
michael@0 4337 adc rdi, rdx
michael@0 4338 adc rcx, 0
michael@0 4339 mov rax, qword ptr [-384+rbp]
michael@0 4340 mul qword ptr [-240+rbp]
michael@0 4341 add rsi, rax
michael@0 4342 adc rdi, rdx
michael@0 4343 adc rcx, 0
michael@0 4344 mov rax, qword ptr [-376+rbp]
michael@0 4345 mul qword ptr [-248+rbp]
michael@0 4346 add rsi, rax
michael@0 4347 adc rdi, rdx
michael@0 4348 adc rcx, 0
michael@0 4349 mov rax, qword ptr [-368+rbp]
michael@0 4350 mul qword ptr [-256+rbp]
michael@0 4351 add rsi, rax
michael@0 4352 adc rdi, rdx
michael@0 4353 adc rcx, 0
michael@0 4354 mov rax, qword ptr [-360+rbp]
michael@0 4355 mul qword ptr [-264+rbp]
michael@0 4356 add rsi, rax
michael@0 4357 adc rdi, rdx
michael@0 4358 adc rcx, 0
michael@0 4359 mov rax, qword ptr [-352+rbp]
michael@0 4360 mul qword ptr [-272+rbp]
michael@0 4361 add rsi, rax
michael@0 4362 adc rdi, rdx
michael@0 4363 adc rcx, 0
michael@0 4364 mov rax, qword ptr [-344+rbp]
michael@0 4365 mul qword ptr [-280+rbp]
michael@0 4366 add rsi, rax
michael@0 4367 adc rdi, rdx
michael@0 4368 adc rcx, 0
michael@0 4369 mov r10, rdi
michael@0 4370 mov r11, rcx
michael@0 4371 mov rax, qword ptr [-336+rbp]
michael@0 4372 mul qword ptr [-288+rbp]
michael@0 4373 add rsi, rax
michael@0 4374 adc r10, rdx
michael@0 4375 adc r11, 0
michael@0 4376 mov qword ptr [208+r9], rsi
michael@0 4377 mov rdi, r11
michael@0 4378 mov rcx, r10
michael@0 4379 mov rsi, r8
michael@0 4380 mov rax, qword ptr [-544+rbp]
michael@0 4381 mul qword ptr [-72+rbp]
michael@0 4382 add rcx, rax
michael@0 4383 adc rdi, rdx
michael@0 4384 adc rsi, 0
michael@0 4385 mov rax, qword ptr [-536+rbp]
michael@0 4386 mul qword ptr [-80+rbp]
michael@0 4387 add rcx, rax
michael@0 4388 adc rdi, rdx
michael@0 4389 adc rsi, 0
michael@0 4390 mov rax, qword ptr [-528+rbp]
michael@0 4391 mul qword ptr [-88+rbp]
michael@0 4392 add rcx, rax
michael@0 4393 adc rdi, rdx
michael@0 4394 adc rsi, 0
michael@0 4395 mov rax, qword ptr [-520+rbp]
michael@0 4396 mul qword ptr [-96+rbp]
michael@0 4397 add rcx, rax
michael@0 4398 adc rdi, rdx
michael@0 4399 adc rsi, 0
michael@0 4400 mov rax, qword ptr [-512+rbp]
michael@0 4401 mul qword ptr [-104+rbp]
michael@0 4402 add rcx, rax
michael@0 4403 adc rdi, rdx
michael@0 4404 adc rsi, 0
michael@0 4405 mov rax, qword ptr [-504+rbp]
michael@0 4406 mul qword ptr [-112+rbp]
michael@0 4407 add rcx, rax
michael@0 4408 adc rdi, rdx
michael@0 4409 adc rsi, 0
michael@0 4410 mov rax, qword ptr [-496+rbp]
michael@0 4411 mul qword ptr [-120+rbp]
michael@0 4412 add rcx, rax
michael@0 4413 adc rdi, rdx
michael@0 4414 adc rsi, 0
michael@0 4415 mov rax, qword ptr [-488+rbp]
michael@0 4416 mul qword ptr [-128+rbp]
michael@0 4417 add rcx, rax
michael@0 4418 adc rdi, rdx
michael@0 4419 adc rsi, 0
michael@0 4420 mov rax, qword ptr [-480+rbp]
michael@0 4421 mul qword ptr [-136+rbp]
michael@0 4422 add rcx, rax
michael@0 4423 adc rdi, rdx
michael@0 4424 adc rsi, 0
michael@0 4425 mov rax, qword ptr [-472+rbp]
michael@0 4426 mul qword ptr [-144+rbp]
michael@0 4427 add rcx, rax
michael@0 4428 adc rdi, rdx
michael@0 4429 adc rsi, 0
michael@0 4430 mov rax, qword ptr [-464+rbp]
michael@0 4431 mul qword ptr [-152+rbp]
michael@0 4432 add rcx, rax
michael@0 4433 adc rdi, rdx
michael@0 4434 adc rsi, 0
michael@0 4435 mov rax, qword ptr [-456+rbp]
michael@0 4436 mul qword ptr [-160+rbp]
michael@0 4437 add rcx, rax
michael@0 4438 adc rdi, rdx
michael@0 4439 adc rsi, 0
michael@0 4440 mov rax, qword ptr [-448+rbp]
michael@0 4441 mul qword ptr [-168+rbp]
michael@0 4442 add rcx, rax
michael@0 4443 adc rdi, rdx
michael@0 4444 adc rsi, 0
michael@0 4445 mov rax, qword ptr [-440+rbp]
michael@0 4446 mul qword ptr [-176+rbp]
michael@0 4447 add rcx, rax
michael@0 4448 adc rdi, rdx
michael@0 4449 adc rsi, 0
michael@0 4450 mov rax, qword ptr [-432+rbp]
michael@0 4451 mul qword ptr [-184+rbp]
michael@0 4452 add rcx, rax
michael@0 4453 adc rdi, rdx
michael@0 4454 adc rsi, 0
michael@0 4455 mov rax, qword ptr [-424+rbp]
michael@0 4456 mul qword ptr [-192+rbp]
michael@0 4457 add rcx, rax
michael@0 4458 adc rdi, rdx
michael@0 4459 adc rsi, 0
michael@0 4460 mov rax, qword ptr [-416+rbp]
michael@0 4461 mul qword ptr [-200+rbp]
michael@0 4462 add rcx, rax
michael@0 4463 adc rdi, rdx
michael@0 4464 adc rsi, 0
michael@0 4465 mov rax, qword ptr [-408+rbp]
michael@0 4466 mul qword ptr [-208+rbp]
michael@0 4467 add rcx, rax
michael@0 4468 adc rdi, rdx
michael@0 4469 adc rsi, 0
michael@0 4470 mov rax, qword ptr [-400+rbp]
michael@0 4471 mul qword ptr [-216+rbp]
michael@0 4472 add rcx, rax
michael@0 4473 adc rdi, rdx
michael@0 4474 adc rsi, 0
michael@0 4475 mov rax, qword ptr [-392+rbp]
michael@0 4476 mul qword ptr [-224+rbp]
michael@0 4477 add rcx, rax
michael@0 4478 adc rdi, rdx
michael@0 4479 adc rsi, 0
michael@0 4480 mov rax, qword ptr [-384+rbp]
michael@0 4481 mul qword ptr [-232+rbp]
michael@0 4482 add rcx, rax
michael@0 4483 adc rdi, rdx
michael@0 4484 adc rsi, 0
michael@0 4485 mov rax, qword ptr [-376+rbp]
michael@0 4486 mul qword ptr [-240+rbp]
michael@0 4487 add rcx, rax
michael@0 4488 adc rdi, rdx
michael@0 4489 adc rsi, 0
michael@0 4490 mov rax, qword ptr [-368+rbp]
michael@0 4491 mul qword ptr [-248+rbp]
michael@0 4492 add rcx, rax
michael@0 4493 adc rdi, rdx
michael@0 4494 adc rsi, 0
michael@0 4495 mov rax, qword ptr [-360+rbp]
michael@0 4496 mul qword ptr [-256+rbp]
michael@0 4497 add rcx, rax
michael@0 4498 adc rdi, rdx
michael@0 4499 adc rsi, 0
michael@0 4500 mov rax, qword ptr [-352+rbp]
michael@0 4501 mul qword ptr [-264+rbp]
michael@0 4502 add rcx, rax
michael@0 4503 adc rdi, rdx
michael@0 4504 adc rsi, 0
michael@0 4505 mov rax, qword ptr [-344+rbp]
michael@0 4506 mul qword ptr [-272+rbp]
michael@0 4507 add rcx, rax
michael@0 4508 adc rdi, rdx
michael@0 4509 adc rsi, 0
michael@0 4510 mov rax, qword ptr [-336+rbp]
michael@0 4511 mul qword ptr [-280+rbp]
michael@0 4512 add rcx, rax
michael@0 4513 adc rdi, rdx
michael@0 4514 adc rsi, 0
michael@0 4515 mov r10, rdi
michael@0 4516 mov r11, rsi
michael@0 4517 mov rax, qword ptr [-328+rbp]
michael@0 4518 mul qword ptr [-288+rbp]
michael@0 4519 add rcx, rax
michael@0 4520 adc r10, rdx
michael@0 4521 adc r11, 0
michael@0 4522 mov qword ptr [216+r9], rcx
michael@0 4523 mov rdi, r11
michael@0 4524 mov rsi, r10
michael@0 4525 mov rcx, r8
michael@0 4526 mov rax, qword ptr [-544+rbp]
michael@0 4527 mul qword ptr [-64+rbp]
michael@0 4528 add rsi, rax
michael@0 4529 adc rdi, rdx
michael@0 4530 adc rcx, 0
michael@0 4531 mov rax, qword ptr [-536+rbp]
michael@0 4532 mul qword ptr [-72+rbp]
michael@0 4533 add rsi, rax
michael@0 4534 adc rdi, rdx
michael@0 4535 adc rcx, 0
michael@0 4536 mov rax, qword ptr [-528+rbp]
michael@0 4537 mul qword ptr [-80+rbp]
michael@0 4538 add rsi, rax
michael@0 4539 adc rdi, rdx
michael@0 4540 adc rcx, 0
michael@0 4541 mov rax, qword ptr [-520+rbp]
michael@0 4542 mul qword ptr [-88+rbp]
michael@0 4543 add rsi, rax
michael@0 4544 adc rdi, rdx
michael@0 4545 adc rcx, 0
michael@0 4546 mov rax, qword ptr [-512+rbp]
michael@0 4547 mul qword ptr [-96+rbp]
michael@0 4548 add rsi, rax
michael@0 4549 adc rdi, rdx
michael@0 4550 adc rcx, 0
michael@0 4551 mov rax, qword ptr [-504+rbp]
michael@0 4552 mul qword ptr [-104+rbp]
michael@0 4553 add rsi, rax
michael@0 4554 adc rdi, rdx
michael@0 4555 adc rcx, 0
michael@0 4556 mov rax, qword ptr [-496+rbp]
michael@0 4557 mul qword ptr [-112+rbp]
michael@0 4558 add rsi, rax
michael@0 4559 adc rdi, rdx
michael@0 4560 adc rcx, 0
michael@0 4561 mov rax, qword ptr [-488+rbp]
michael@0 4562 mul qword ptr [-120+rbp]
michael@0 4563 add rsi, rax
michael@0 4564 adc rdi, rdx
michael@0 4565 adc rcx, 0
michael@0 4566 mov rax, qword ptr [-480+rbp]
michael@0 4567 mul qword ptr [-128+rbp]
michael@0 4568 add rsi, rax
michael@0 4569 adc rdi, rdx
michael@0 4570 adc rcx, 0
michael@0 4571 mov rax, qword ptr [-472+rbp]
michael@0 4572 mul qword ptr [-136+rbp]
michael@0 4573 add rsi, rax
michael@0 4574 adc rdi, rdx
michael@0 4575 adc rcx, 0
michael@0 4576 mov rax, qword ptr [-464+rbp]
michael@0 4577 mul qword ptr [-144+rbp]
michael@0 4578 add rsi, rax
michael@0 4579 adc rdi, rdx
michael@0 4580 adc rcx, 0
michael@0 4581 mov rax, qword ptr [-456+rbp]
michael@0 4582 mul qword ptr [-152+rbp]
michael@0 4583 add rsi, rax
michael@0 4584 adc rdi, rdx
michael@0 4585 adc rcx, 0
michael@0 4586 mov rax, qword ptr [-448+rbp]
michael@0 4587 mul qword ptr [-160+rbp]
michael@0 4588 add rsi, rax
michael@0 4589 adc rdi, rdx
michael@0 4590 adc rcx, 0
michael@0 4591 mov rax, qword ptr [-440+rbp]
michael@0 4592 mul qword ptr [-168+rbp]
michael@0 4593 add rsi, rax
michael@0 4594 adc rdi, rdx
michael@0 4595 adc rcx, 0
michael@0 4596 mov rax, qword ptr [-432+rbp]
michael@0 4597 mul qword ptr [-176+rbp]
michael@0 4598 add rsi, rax
michael@0 4599 adc rdi, rdx
michael@0 4600 adc rcx, 0
michael@0 4601 mov rax, qword ptr [-424+rbp]
michael@0 4602 mul qword ptr [-184+rbp]
michael@0 4603 add rsi, rax
michael@0 4604 adc rdi, rdx
michael@0 4605 adc rcx, 0
michael@0 4606 mov rax, qword ptr [-416+rbp]
michael@0 4607 mul qword ptr [-192+rbp]
michael@0 4608 add rsi, rax
michael@0 4609 adc rdi, rdx
michael@0 4610 adc rcx, 0
michael@0 4611 mov rax, qword ptr [-408+rbp]
michael@0 4612 mul qword ptr [-200+rbp]
michael@0 4613 add rsi, rax
michael@0 4614 adc rdi, rdx
michael@0 4615 adc rcx, 0
michael@0 4616 mov rax, qword ptr [-400+rbp]
michael@0 4617 mul qword ptr [-208+rbp]
michael@0 4618 add rsi, rax
michael@0 4619 adc rdi, rdx
michael@0 4620 adc rcx, 0
michael@0 4621 mov rax, qword ptr [-392+rbp]
michael@0 4622 mul qword ptr [-216+rbp]
michael@0 4623 add rsi, rax
michael@0 4624 adc rdi, rdx
michael@0 4625 adc rcx, 0
michael@0 4626 mov rax, qword ptr [-384+rbp]
michael@0 4627 mul qword ptr [-224+rbp]
michael@0 4628 add rsi, rax
michael@0 4629 adc rdi, rdx
michael@0 4630 adc rcx, 0
michael@0 4631 mov rax, qword ptr [-376+rbp]
michael@0 4632 mul qword ptr [-232+rbp]
michael@0 4633 add rsi, rax
michael@0 4634 adc rdi, rdx
michael@0 4635 adc rcx, 0
michael@0 4636 mov rax, qword ptr [-368+rbp]
michael@0 4637 mul qword ptr [-240+rbp]
michael@0 4638 add rsi, rax
michael@0 4639 adc rdi, rdx
michael@0 4640 adc rcx, 0
michael@0 4641 mov rax, qword ptr [-360+rbp]
michael@0 4642 mul qword ptr [-248+rbp]
michael@0 4643 add rsi, rax
michael@0 4644 adc rdi, rdx
michael@0 4645 adc rcx, 0
michael@0 4646 mov rax, qword ptr [-352+rbp]
michael@0 4647 mul qword ptr [-256+rbp]
michael@0 4648 add rsi, rax
michael@0 4649 adc rdi, rdx
michael@0 4650 adc rcx, 0
michael@0 4651 mov rax, qword ptr [-344+rbp]
michael@0 4652 mul qword ptr [-264+rbp]
michael@0 4653 add rsi, rax
michael@0 4654 adc rdi, rdx
michael@0 4655 adc rcx, 0
michael@0 4656 mov rax, qword ptr [-336+rbp]
michael@0 4657 mul qword ptr [-272+rbp]
michael@0 4658 add rsi, rax
michael@0 4659 adc rdi, rdx
michael@0 4660 adc rcx, 0
michael@0 4661 mov rax, qword ptr [-328+rbp]
michael@0 4662 mul qword ptr [-280+rbp]
michael@0 4663 add rsi, rax
michael@0 4664 adc rdi, rdx
michael@0 4665 adc rcx, 0
michael@0 4666 mov r10, rdi
michael@0 4667 mov r11, rcx
michael@0 4668 mov rax, qword ptr [-320+rbp]
michael@0 4669 mul qword ptr [-288+rbp]
michael@0 4670 add rsi, rax
michael@0 4671 adc r10, rdx
michael@0 4672 adc r11, 0
michael@0 4673 mov qword ptr [224+r9], rsi
michael@0 4674 mov rdi, r11
michael@0 4675 mov rcx, r10
michael@0 4676 mov rsi, r8
michael@0 4677 mov rax, qword ptr [-544+rbp]
michael@0 4678 mul qword ptr [-56+rbp]
michael@0 4679 add rcx, rax
michael@0 4680 adc rdi, rdx
michael@0 4681 adc rsi, 0
michael@0 4682 mov rax, qword ptr [-536+rbp]
michael@0 4683 mul qword ptr [-64+rbp]
michael@0 4684 add rcx, rax
michael@0 4685 adc rdi, rdx
michael@0 4686 adc rsi, 0
michael@0 4687 mov rax, qword ptr [-528+rbp]
michael@0 4688 mul qword ptr [-72+rbp]
michael@0 4689 add rcx, rax
michael@0 4690 adc rdi, rdx
michael@0 4691 adc rsi, 0
michael@0 4692 mov rax, qword ptr [-520+rbp]
michael@0 4693 mul qword ptr [-80+rbp]
michael@0 4694 add rcx, rax
michael@0 4695 adc rdi, rdx
michael@0 4696 adc rsi, 0
michael@0 4697 mov rax, qword ptr [-512+rbp]
michael@0 4698 mul qword ptr [-88+rbp]
michael@0 4699 add rcx, rax
michael@0 4700 adc rdi, rdx
michael@0 4701 adc rsi, 0
michael@0 4702 mov rax, qword ptr [-504+rbp]
michael@0 4703 mul qword ptr [-96+rbp]
michael@0 4704 add rcx, rax
michael@0 4705 adc rdi, rdx
michael@0 4706 adc rsi, 0
michael@0 4707 mov rax, qword ptr [-496+rbp]
michael@0 4708 mul qword ptr [-104+rbp]
michael@0 4709 add rcx, rax
michael@0 4710 adc rdi, rdx
michael@0 4711 adc rsi, 0
michael@0 4712 mov rax, qword ptr [-488+rbp]
michael@0 4713 mul qword ptr [-112+rbp]
michael@0 4714 add rcx, rax
michael@0 4715 adc rdi, rdx
michael@0 4716 adc rsi, 0
michael@0 4717 mov rax, qword ptr [-480+rbp]
michael@0 4718 mul qword ptr [-120+rbp]
michael@0 4719 add rcx, rax
michael@0 4720 adc rdi, rdx
michael@0 4721 adc rsi, 0
michael@0 4722 mov rax, qword ptr [-472+rbp]
michael@0 4723 mul qword ptr [-128+rbp]
michael@0 4724 add rcx, rax
michael@0 4725 adc rdi, rdx
michael@0 4726 adc rsi, 0
michael@0 4727 mov rax, qword ptr [-464+rbp]
michael@0 4728 mul qword ptr [-136+rbp]
michael@0 4729 add rcx, rax
michael@0 4730 adc rdi, rdx
michael@0 4731 adc rsi, 0
michael@0 4732 mov rax, qword ptr [-456+rbp]
michael@0 4733 mul qword ptr [-144+rbp]
michael@0 4734 add rcx, rax
michael@0 4735 adc rdi, rdx
michael@0 4736 adc rsi, 0
michael@0 4737 mov rax, qword ptr [-448+rbp]
michael@0 4738 mul qword ptr [-152+rbp]
michael@0 4739 add rcx, rax
michael@0 4740 adc rdi, rdx
michael@0 4741 adc rsi, 0
michael@0 4742 mov rax, qword ptr [-440+rbp]
michael@0 4743 mul qword ptr [-160+rbp]
michael@0 4744 add rcx, rax
michael@0 4745 adc rdi, rdx
michael@0 4746 adc rsi, 0
michael@0 4747 mov rax, qword ptr [-432+rbp]
michael@0 4748 mul qword ptr [-168+rbp]
michael@0 4749 add rcx, rax
michael@0 4750 adc rdi, rdx
michael@0 4751 adc rsi, 0
michael@0 4752 mov rax, qword ptr [-424+rbp]
michael@0 4753 mul qword ptr [-176+rbp]
michael@0 4754 add rcx, rax
michael@0 4755 adc rdi, rdx
michael@0 4756 adc rsi, 0
michael@0 4757 mov rax, qword ptr [-416+rbp]
michael@0 4758 mul qword ptr [-184+rbp]
michael@0 4759 add rcx, rax
michael@0 4760 adc rdi, rdx
michael@0 4761 adc rsi, 0
michael@0 4762 mov rax, qword ptr [-408+rbp]
michael@0 4763 mul qword ptr [-192+rbp]
michael@0 4764 add rcx, rax
michael@0 4765 adc rdi, rdx
michael@0 4766 adc rsi, 0
michael@0 4767 mov rax, qword ptr [-400+rbp]
michael@0 4768 mul qword ptr [-200+rbp]
michael@0 4769 add rcx, rax
michael@0 4770 adc rdi, rdx
michael@0 4771 adc rsi, 0
michael@0 4772 mov rax, qword ptr [-392+rbp]
michael@0 4773 mul qword ptr [-208+rbp]
michael@0 4774 add rcx, rax
michael@0 4775 adc rdi, rdx
michael@0 4776 adc rsi, 0
michael@0 4777 mov rax, qword ptr [-384+rbp]
michael@0 4778 mul qword ptr [-216+rbp]
michael@0 4779 add rcx, rax
michael@0 4780 adc rdi, rdx
michael@0 4781 adc rsi, 0
michael@0 4782 mov rax, qword ptr [-376+rbp]
michael@0 4783 mul qword ptr [-224+rbp]
michael@0 4784 add rcx, rax
michael@0 4785 adc rdi, rdx
michael@0 4786 adc rsi, 0
michael@0 4787 mov rax, qword ptr [-368+rbp]
michael@0 4788 mul qword ptr [-232+rbp]
michael@0 4789 add rcx, rax
michael@0 4790 adc rdi, rdx
michael@0 4791 adc rsi, 0
michael@0 4792 mov rax, qword ptr [-360+rbp]
michael@0 4793 mul qword ptr [-240+rbp]
michael@0 4794 add rcx, rax
michael@0 4795 adc rdi, rdx
michael@0 4796 adc rsi, 0
michael@0 4797 mov rax, qword ptr [-352+rbp]
michael@0 4798 mul qword ptr [-248+rbp]
michael@0 4799 add rcx, rax
michael@0 4800 adc rdi, rdx
michael@0 4801 adc rsi, 0
michael@0 4802 mov rax, qword ptr [-344+rbp]
michael@0 4803 mul qword ptr [-256+rbp]
michael@0 4804 add rcx, rax
michael@0 4805 adc rdi, rdx
michael@0 4806 adc rsi, 0
michael@0 4807 mov rax, qword ptr [-336+rbp]
michael@0 4808 mul qword ptr [-264+rbp]
michael@0 4809 add rcx, rax
michael@0 4810 adc rdi, rdx
michael@0 4811 adc rsi, 0
michael@0 4812 mov rax, qword ptr [-328+rbp]
michael@0 4813 mul qword ptr [-272+rbp]
michael@0 4814 add rcx, rax
michael@0 4815 adc rdi, rdx
michael@0 4816 adc rsi, 0
michael@0 4817 mov rax, qword ptr [-320+rbp]
michael@0 4818 mul qword ptr [-280+rbp]
michael@0 4819 add rcx, rax
michael@0 4820 adc rdi, rdx
michael@0 4821 adc rsi, 0
michael@0 4822 mov r10, rdi
michael@0 4823 mov r11, rsi
michael@0 4824 mov rax, qword ptr [-312+rbp]
michael@0 4825 mul qword ptr [-288+rbp]
michael@0 4826 add rcx, rax
michael@0 4827 adc r10, rdx
michael@0 4828 adc r11, 0
michael@0 4829 mov qword ptr [232+r9], rcx
michael@0 4830 mov rdi, r11
michael@0 4831 mov rsi, r10
michael@0 4832 mov rcx, r8
michael@0 4833 mov rax, qword ptr [-544+rbp]
michael@0 4834 mul qword ptr [-48+rbp]
michael@0 4835 add rsi, rax
michael@0 4836 adc rdi, rdx
michael@0 4837 adc rcx, 0
michael@0 4838 mov rax, qword ptr [-536+rbp]
michael@0 4839 mul qword ptr [-56+rbp]
michael@0 4840 add rsi, rax
michael@0 4841 adc rdi, rdx
michael@0 4842 adc rcx, 0
michael@0 4843 mov rax, qword ptr [-528+rbp]
michael@0 4844 mul qword ptr [-64+rbp]
michael@0 4845 add rsi, rax
michael@0 4846 adc rdi, rdx
michael@0 4847 adc rcx, 0
michael@0 4848 mov rax, qword ptr [-520+rbp]
michael@0 4849 mul qword ptr [-72+rbp]
michael@0 4850 add rsi, rax
michael@0 4851 adc rdi, rdx
michael@0 4852 adc rcx, 0
michael@0 4853 mov rax, qword ptr [-512+rbp]
michael@0 4854 mul qword ptr [-80+rbp]
michael@0 4855 add rsi, rax
michael@0 4856 adc rdi, rdx
michael@0 4857 adc rcx, 0
michael@0 4858 mov rax, qword ptr [-504+rbp]
michael@0 4859 mul qword ptr [-88+rbp]
michael@0 4860 add rsi, rax
michael@0 4861 adc rdi, rdx
michael@0 4862 adc rcx, 0
michael@0 4863 mov rax, qword ptr [-496+rbp]
michael@0 4864 mul qword ptr [-96+rbp]
michael@0 4865 add rsi, rax
michael@0 4866 adc rdi, rdx
michael@0 4867 adc rcx, 0
michael@0 4868 mov rax, qword ptr [-488+rbp]
michael@0 4869 mul qword ptr [-104+rbp]
michael@0 4870 add rsi, rax
michael@0 4871 adc rdi, rdx
michael@0 4872 adc rcx, 0
michael@0 4873 mov rax, qword ptr [-480+rbp]
michael@0 4874 mul qword ptr [-112+rbp]
michael@0 4875 add rsi, rax
michael@0 4876 adc rdi, rdx
michael@0 4877 adc rcx, 0
michael@0 4878 mov rax, qword ptr [-472+rbp]
michael@0 4879 mul qword ptr [-120+rbp]
michael@0 4880 add rsi, rax
michael@0 4881 adc rdi, rdx
michael@0 4882 adc rcx, 0
michael@0 4883 mov rax, qword ptr [-464+rbp]
michael@0 4884 mul qword ptr [-128+rbp]
michael@0 4885 add rsi, rax
michael@0 4886 adc rdi, rdx
michael@0 4887 adc rcx, 0
michael@0 4888 mov rax, qword ptr [-456+rbp]
michael@0 4889 mul qword ptr [-136+rbp]
michael@0 4890 add rsi, rax
michael@0 4891 adc rdi, rdx
michael@0 4892 adc rcx, 0
michael@0 4893 mov rax, qword ptr [-448+rbp]
michael@0 4894 mul qword ptr [-144+rbp]
michael@0 4895 add rsi, rax
michael@0 4896 adc rdi, rdx
michael@0 4897 adc rcx, 0
michael@0 4898 mov rax, qword ptr [-440+rbp]
michael@0 4899 mul qword ptr [-152+rbp]
michael@0 4900 add rsi, rax
michael@0 4901 adc rdi, rdx
michael@0 4902 adc rcx, 0
michael@0 4903 mov rax, qword ptr [-432+rbp]
michael@0 4904 mul qword ptr [-160+rbp]
michael@0 4905 add rsi, rax
michael@0 4906 adc rdi, rdx
michael@0 4907 adc rcx, 0
michael@0 4908 mov rax, qword ptr [-424+rbp]
michael@0 4909 mul qword ptr [-168+rbp]
michael@0 4910 add rsi, rax
michael@0 4911 adc rdi, rdx
michael@0 4912 adc rcx, 0
michael@0 4913 mov rax, qword ptr [-416+rbp]
michael@0 4914 mul qword ptr [-176+rbp]
michael@0 4915 add rsi, rax
michael@0 4916 adc rdi, rdx
michael@0 4917 adc rcx, 0
michael@0 4918 mov rax, qword ptr [-408+rbp]
michael@0 4919 mul qword ptr [-184+rbp]
michael@0 4920 add rsi, rax
michael@0 4921 adc rdi, rdx
michael@0 4922 adc rcx, 0
michael@0 4923 mov rax, qword ptr [-400+rbp]
michael@0 4924 mul qword ptr [-192+rbp]
michael@0 4925 add rsi, rax
michael@0 4926 adc rdi, rdx
michael@0 4927 adc rcx, 0
michael@0 4928 mov rax, qword ptr [-392+rbp]
michael@0 4929 mul qword ptr [-200+rbp]
michael@0 4930 add rsi, rax
michael@0 4931 adc rdi, rdx
michael@0 4932 adc rcx, 0
michael@0 4933 mov rax, qword ptr [-384+rbp]
michael@0 4934 mul qword ptr [-208+rbp]
michael@0 4935 add rsi, rax
michael@0 4936 adc rdi, rdx
michael@0 4937 adc rcx, 0
michael@0 4938 mov rax, qword ptr [-376+rbp]
michael@0 4939 mul qword ptr [-216+rbp]
michael@0 4940 add rsi, rax
michael@0 4941 adc rdi, rdx
michael@0 4942 adc rcx, 0
michael@0 4943 mov rax, qword ptr [-368+rbp]
michael@0 4944 mul qword ptr [-224+rbp]
michael@0 4945 add rsi, rax
michael@0 4946 adc rdi, rdx
michael@0 4947 adc rcx, 0
michael@0 4948 mov rax, qword ptr [-360+rbp]
michael@0 4949 mul qword ptr [-232+rbp]
michael@0 4950 add rsi, rax
michael@0 4951 adc rdi, rdx
michael@0 4952 adc rcx, 0
michael@0 4953 mov rax, qword ptr [-352+rbp]
michael@0 4954 mul qword ptr [-240+rbp]
michael@0 4955 add rsi, rax
michael@0 4956 adc rdi, rdx
michael@0 4957 adc rcx, 0
michael@0 4958 mov rax, qword ptr [-344+rbp]
michael@0 4959 mul qword ptr [-248+rbp]
michael@0 4960 add rsi, rax
michael@0 4961 adc rdi, rdx
michael@0 4962 adc rcx, 0
michael@0 4963 mov rax, qword ptr [-336+rbp]
michael@0 4964 mul qword ptr [-256+rbp]
michael@0 4965 add rsi, rax
michael@0 4966 adc rdi, rdx
michael@0 4967 adc rcx, 0
michael@0 4968 mov rax, qword ptr [-328+rbp]
michael@0 4969 mul qword ptr [-264+rbp]
michael@0 4970 add rsi, rax
michael@0 4971 adc rdi, rdx
michael@0 4972 adc rcx, 0
michael@0 4973 mov rax, qword ptr [-320+rbp]
michael@0 4974 mul qword ptr [-272+rbp]
michael@0 4975 add rsi, rax
michael@0 4976 adc rdi, rdx
michael@0 4977 adc rcx, 0
michael@0 4978 mov rax, qword ptr [-312+rbp]
michael@0 4979 mul qword ptr [-280+rbp]
michael@0 4980 add rsi, rax
michael@0 4981 adc rdi, rdx
michael@0 4982 adc rcx, 0
michael@0 4983 mov r10, rdi
michael@0 4984 mov r11, rcx
michael@0 4985 mov rax, qword ptr [-304+rbp]
michael@0 4986 mul qword ptr [-288+rbp]
michael@0 4987 add rsi, rax
michael@0 4988 adc r10, rdx
michael@0 4989 adc r11, 0
michael@0 4990 mov qword ptr [240+r9], rsi
michael@0 4991 mov rdi, r11
michael@0 4992 mov rcx, r10
michael@0 4993 mov rsi, r8
michael@0 4994 mov rax, qword ptr [-544+rbp]
michael@0 4995 mul qword ptr [-40+rbp]
michael@0 4996 add rcx, rax
michael@0 4997 adc rdi, rdx
michael@0 4998 adc rsi, 0
michael@0 4999 mov rax, qword ptr [-536+rbp]
michael@0 5000 mul qword ptr [-48+rbp]
michael@0 5001 add rcx, rax
michael@0 5002 adc rdi, rdx
michael@0 5003 adc rsi, 0
michael@0 5004 mov rax, qword ptr [-528+rbp]
michael@0 5005 mul qword ptr [-56+rbp]
michael@0 5006 add rcx, rax
michael@0 5007 adc rdi, rdx
michael@0 5008 adc rsi, 0
michael@0 5009 mov rax, qword ptr [-520+rbp]
michael@0 5010 mul qword ptr [-64+rbp]
michael@0 5011 add rcx, rax
michael@0 5012 adc rdi, rdx
michael@0 5013 adc rsi, 0
michael@0 5014 mov rax, qword ptr [-512+rbp]
michael@0 5015 mul qword ptr [-72+rbp]
michael@0 5016 add rcx, rax
michael@0 5017 adc rdi, rdx
michael@0 5018 adc rsi, 0
michael@0 5019 mov rax, qword ptr [-504+rbp]
michael@0 5020 mul qword ptr [-80+rbp]
michael@0 5021 add rcx, rax
michael@0 5022 adc rdi, rdx
michael@0 5023 adc rsi, 0
michael@0 5024 mov rax, qword ptr [-496+rbp]
michael@0 5025 mul qword ptr [-88+rbp]
michael@0 5026 add rcx, rax
michael@0 5027 adc rdi, rdx
michael@0 5028 adc rsi, 0
michael@0 5029 mov rax, qword ptr [-488+rbp]
michael@0 5030 mul qword ptr [-96+rbp]
michael@0 5031 add rcx, rax
michael@0 5032 adc rdi, rdx
michael@0 5033 adc rsi, 0
michael@0 5034 mov rax, qword ptr [-480+rbp]
michael@0 5035 mul qword ptr [-104+rbp]
michael@0 5036 add rcx, rax
michael@0 5037 adc rdi, rdx
michael@0 5038 adc rsi, 0
michael@0 5039 mov rax, qword ptr [-472+rbp]
michael@0 5040 mul qword ptr [-112+rbp]
michael@0 5041 add rcx, rax
michael@0 5042 adc rdi, rdx
michael@0 5043 adc rsi, 0
michael@0 5044 mov rax, qword ptr [-464+rbp]
michael@0 5045 mul qword ptr [-120+rbp]
michael@0 5046 add rcx, rax
michael@0 5047 adc rdi, rdx
michael@0 5048 adc rsi, 0
michael@0 5049 mov rax, qword ptr [-456+rbp]
michael@0 5050 mul qword ptr [-128+rbp]
michael@0 5051 add rcx, rax
michael@0 5052 adc rdi, rdx
michael@0 5053 adc rsi, 0
michael@0 5054 mov rax, qword ptr [-448+rbp]
michael@0 5055 mul qword ptr [-136+rbp]
michael@0 5056 add rcx, rax
michael@0 5057 adc rdi, rdx
michael@0 5058 adc rsi, 0
michael@0 5059 mov rax, qword ptr [-440+rbp]
michael@0 5060 mul qword ptr [-144+rbp]
michael@0 5061 add rcx, rax
michael@0 5062 adc rdi, rdx
michael@0 5063 adc rsi, 0
michael@0 5064 mov rax, qword ptr [-432+rbp]
michael@0 5065 mul qword ptr [-152+rbp]
michael@0 5066 add rcx, rax
michael@0 5067 adc rdi, rdx
michael@0 5068 adc rsi, 0
michael@0 5069 mov rax, qword ptr [-424+rbp]
michael@0 5070 mul qword ptr [-160+rbp]
michael@0 5071 add rcx, rax
michael@0 5072 adc rdi, rdx
michael@0 5073 adc rsi, 0
michael@0 5074 mov rax, qword ptr [-416+rbp]
michael@0 5075 mul qword ptr [-168+rbp]
michael@0 5076 add rcx, rax
michael@0 5077 adc rdi, rdx
michael@0 5078 adc rsi, 0
michael@0 5079 mov rax, qword ptr [-408+rbp]
michael@0 5080 mul qword ptr [-176+rbp]
michael@0 5081 add rcx, rax
michael@0 5082 adc rdi, rdx
michael@0 5083 adc rsi, 0
michael@0 5084 mov rax, qword ptr [-400+rbp]
michael@0 5085 mul qword ptr [-184+rbp]
michael@0 5086 add rcx, rax
michael@0 5087 adc rdi, rdx
michael@0 5088 adc rsi, 0
michael@0 5089 mov rax, qword ptr [-392+rbp]
michael@0 5090 mul qword ptr [-192+rbp]
michael@0 5091 add rcx, rax
michael@0 5092 adc rdi, rdx
michael@0 5093 adc rsi, 0
michael@0 5094 mov rax, qword ptr [-384+rbp]
michael@0 5095 mul qword ptr [-200+rbp]
michael@0 5096 add rcx, rax
michael@0 5097 adc rdi, rdx
michael@0 5098 adc rsi, 0
michael@0 5099 mov rax, qword ptr [-376+rbp]
michael@0 5100 mul qword ptr [-208+rbp]
michael@0 5101 add rcx, rax
michael@0 5102 adc rdi, rdx
michael@0 5103 adc rsi, 0
michael@0 5104 mov rax, qword ptr [-368+rbp]
michael@0 5105 mul qword ptr [-216+rbp]
michael@0 5106 add rcx, rax
michael@0 5107 adc rdi, rdx
michael@0 5108 adc rsi, 0
michael@0 5109 mov rax, qword ptr [-360+rbp]
michael@0 5110 mul qword ptr [-224+rbp]
michael@0 5111 add rcx, rax
michael@0 5112 adc rdi, rdx
michael@0 5113 adc rsi, 0
michael@0 5114 mov rax, qword ptr [-352+rbp]
michael@0 5115 mul qword ptr [-232+rbp]
michael@0 5116 add rcx, rax
michael@0 5117 adc rdi, rdx
michael@0 5118 adc rsi, 0
michael@0 5119 mov rax, qword ptr [-344+rbp]
michael@0 5120 mul qword ptr [-240+rbp]
michael@0 5121 add rcx, rax
michael@0 5122 adc rdi, rdx
michael@0 5123 adc rsi, 0
michael@0 5124 mov rax, qword ptr [-336+rbp]
michael@0 5125 mul qword ptr [-248+rbp]
michael@0 5126 add rcx, rax
michael@0 5127 adc rdi, rdx
michael@0 5128 adc rsi, 0
michael@0 5129 mov rax, qword ptr [-328+rbp]
michael@0 5130 mul qword ptr [-256+rbp]
michael@0 5131 add rcx, rax
michael@0 5132 adc rdi, rdx
michael@0 5133 adc rsi, 0
michael@0 5134 mov rax, qword ptr [-320+rbp]
michael@0 5135 mul qword ptr [-264+rbp]
michael@0 5136 add rcx, rax
michael@0 5137 adc rdi, rdx
michael@0 5138 adc rsi, 0
michael@0 5139 mov rax, qword ptr [-312+rbp]
michael@0 5140 mul qword ptr [-272+rbp]
michael@0 5141 add rcx, rax
michael@0 5142 adc rdi, rdx
michael@0 5143 adc rsi, 0
michael@0 5144 mov rax, qword ptr [-304+rbp]
michael@0 5145 mul qword ptr [-280+rbp]
michael@0 5146 add rcx, rax
michael@0 5147 adc rdi, rdx
michael@0 5148 adc rsi, 0
michael@0 5149 mov r10, rdi
michael@0 5150 mov r11, rsi
michael@0 5151 mov rax, qword ptr [-296+rbp]
michael@0 5152 mul qword ptr [-288+rbp]
michael@0 5153 add rcx, rax
michael@0 5154 adc r10, rdx
michael@0 5155 adc r11, 0
michael@0 5156 mov qword ptr [248+r9], rcx
michael@0 5157 mov rdi, r11
michael@0 5158 mov rsi, r10
michael@0 5159 mov rcx, r8
michael@0 5160 mov rax, qword ptr [-536+rbp]
michael@0 5161 mul qword ptr [-40+rbp]
michael@0 5162 add rsi, rax
michael@0 5163 adc rdi, rdx
michael@0 5164 adc rcx, 0
michael@0 5165 mov rax, qword ptr [-528+rbp]
michael@0 5166 mul qword ptr [-48+rbp]
michael@0 5167 add rsi, rax
michael@0 5168 adc rdi, rdx
michael@0 5169 adc rcx, 0
michael@0 5170 mov rax, qword ptr [-520+rbp]
michael@0 5171 mul qword ptr [-56+rbp]
michael@0 5172 add rsi, rax
michael@0 5173 adc rdi, rdx
michael@0 5174 adc rcx, 0
michael@0 5175 mov rax, qword ptr [-512+rbp]
michael@0 5176 mul qword ptr [-64+rbp]
michael@0 5177 add rsi, rax
michael@0 5178 adc rdi, rdx
michael@0 5179 adc rcx, 0
michael@0 5180 mov rax, qword ptr [-504+rbp]
michael@0 5181 mul qword ptr [-72+rbp]
michael@0 5182 add rsi, rax
michael@0 5183 adc rdi, rdx
michael@0 5184 adc rcx, 0
michael@0 5185 mov rax, qword ptr [-496+rbp]
michael@0 5186 mul qword ptr [-80+rbp]
michael@0 5187 add rsi, rax
michael@0 5188 adc rdi, rdx
michael@0 5189 adc rcx, 0
michael@0 5190 mov rax, qword ptr [-488+rbp]
michael@0 5191 mul qword ptr [-88+rbp]
michael@0 5192 add rsi, rax
michael@0 5193 adc rdi, rdx
michael@0 5194 adc rcx, 0
michael@0 5195 mov rax, qword ptr [-480+rbp]
michael@0 5196 mul qword ptr [-96+rbp]
michael@0 5197 add rsi, rax
michael@0 5198 adc rdi, rdx
michael@0 5199 adc rcx, 0
michael@0 5200 mov rax, qword ptr [-472+rbp]
michael@0 5201 mul qword ptr [-104+rbp]
michael@0 5202 add rsi, rax
michael@0 5203 adc rdi, rdx
michael@0 5204 adc rcx, 0
michael@0 5205 mov rax, qword ptr [-464+rbp]
michael@0 5206 mul qword ptr [-112+rbp]
michael@0 5207 add rsi, rax
michael@0 5208 adc rdi, rdx
michael@0 5209 adc rcx, 0
michael@0 5210 mov rax, qword ptr [-456+rbp]
michael@0 5211 mul qword ptr [-120+rbp]
michael@0 5212 add rsi, rax
michael@0 5213 adc rdi, rdx
michael@0 5214 adc rcx, 0
michael@0 5215 mov rax, qword ptr [-448+rbp]
michael@0 5216 mul qword ptr [-128+rbp]
michael@0 5217 add rsi, rax
michael@0 5218 adc rdi, rdx
michael@0 5219 adc rcx, 0
michael@0 5220 mov rax, qword ptr [-440+rbp]
michael@0 5221 mul qword ptr [-136+rbp]
michael@0 5222 add rsi, rax
michael@0 5223 adc rdi, rdx
michael@0 5224 adc rcx, 0
michael@0 5225 mov rax, qword ptr [-432+rbp]
michael@0 5226 mul qword ptr [-144+rbp]
michael@0 5227 add rsi, rax
michael@0 5228 adc rdi, rdx
michael@0 5229 adc rcx, 0
michael@0 5230 mov rax, qword ptr [-424+rbp]
michael@0 5231 mul qword ptr [-152+rbp]
michael@0 5232 add rsi, rax
michael@0 5233 adc rdi, rdx
michael@0 5234 adc rcx, 0
michael@0 5235 mov rax, qword ptr [-416+rbp]
michael@0 5236 mul qword ptr [-160+rbp]
michael@0 5237 add rsi, rax
michael@0 5238 adc rdi, rdx
michael@0 5239 adc rcx, 0
michael@0 5240 mov rax, qword ptr [-408+rbp]
michael@0 5241 mul qword ptr [-168+rbp]
michael@0 5242 add rsi, rax
michael@0 5243 adc rdi, rdx
michael@0 5244 adc rcx, 0
michael@0 5245 mov rax, qword ptr [-400+rbp]
michael@0 5246 mul qword ptr [-176+rbp]
michael@0 5247 add rsi, rax
michael@0 5248 adc rdi, rdx
michael@0 5249 adc rcx, 0
michael@0 5250 mov rax, qword ptr [-392+rbp]
michael@0 5251 mul qword ptr [-184+rbp]
michael@0 5252 add rsi, rax
michael@0 5253 adc rdi, rdx
michael@0 5254 adc rcx, 0
michael@0 5255 mov rax, qword ptr [-384+rbp]
michael@0 5256 mul qword ptr [-192+rbp]
michael@0 5257 add rsi, rax
michael@0 5258 adc rdi, rdx
michael@0 5259 adc rcx, 0
michael@0 5260 mov rax, qword ptr [-376+rbp]
michael@0 5261 mul qword ptr [-200+rbp]
michael@0 5262 add rsi, rax
michael@0 5263 adc rdi, rdx
michael@0 5264 adc rcx, 0
michael@0 5265 mov rax, qword ptr [-368+rbp]
michael@0 5266 mul qword ptr [-208+rbp]
michael@0 5267 add rsi, rax
michael@0 5268 adc rdi, rdx
michael@0 5269 adc rcx, 0
michael@0 5270 mov rax, qword ptr [-360+rbp]
michael@0 5271 mul qword ptr [-216+rbp]
michael@0 5272 add rsi, rax
michael@0 5273 adc rdi, rdx
michael@0 5274 adc rcx, 0
michael@0 5275 mov rax, qword ptr [-352+rbp]
michael@0 5276 mul qword ptr [-224+rbp]
michael@0 5277 add rsi, rax
michael@0 5278 adc rdi, rdx
michael@0 5279 adc rcx, 0
michael@0 5280 mov rax, qword ptr [-344+rbp]
michael@0 5281 mul qword ptr [-232+rbp]
michael@0 5282 add rsi, rax
michael@0 5283 adc rdi, rdx
michael@0 5284 adc rcx, 0
michael@0 5285 mov rax, qword ptr [-336+rbp]
michael@0 5286 mul qword ptr [-240+rbp]
michael@0 5287 add rsi, rax
michael@0 5288 adc rdi, rdx
michael@0 5289 adc rcx, 0
michael@0 5290 mov rax, qword ptr [-328+rbp]
michael@0 5291 mul qword ptr [-248+rbp]
michael@0 5292 add rsi, rax
michael@0 5293 adc rdi, rdx
michael@0 5294 adc rcx, 0
michael@0 5295 mov rax, qword ptr [-320+rbp]
michael@0 5296 mul qword ptr [-256+rbp]
michael@0 5297 add rsi, rax
michael@0 5298 adc rdi, rdx
michael@0 5299 adc rcx, 0
michael@0 5300 mov rax, qword ptr [-312+rbp]
michael@0 5301 mul qword ptr [-264+rbp]
michael@0 5302 add rsi, rax
michael@0 5303 adc rdi, rdx
michael@0 5304 adc rcx, 0
michael@0 5305 mov rax, qword ptr [-304+rbp]
michael@0 5306 mul qword ptr [-272+rbp]
michael@0 5307 add rsi, rax
michael@0 5308 adc rdi, rdx
michael@0 5309 adc rcx, 0
michael@0 5310 mov r10, rdi
michael@0 5311 mov r11, rcx
michael@0 5312 mov rax, qword ptr [-296+rbp]
michael@0 5313 mul qword ptr [-280+rbp]
michael@0 5314 add rsi, rax
michael@0 5315 adc r10, rdx
michael@0 5316 adc r11, 0
michael@0 5317 mov qword ptr [256+r9], rsi
michael@0 5318 mov rdi, r11
michael@0 5319 mov rcx, r10
michael@0 5320 mov rsi, r8
michael@0 5321 mov rax, qword ptr [-528+rbp]
michael@0 5322 mul qword ptr [-40+rbp]
michael@0 5323 add rcx, rax
michael@0 5324 adc rdi, rdx
michael@0 5325 adc rsi, 0
michael@0 5326 mov rax, qword ptr [-520+rbp]
michael@0 5327 mul qword ptr [-48+rbp]
michael@0 5328 add rcx, rax
michael@0 5329 adc rdi, rdx
michael@0 5330 adc rsi, 0
michael@0 5331 mov rax, qword ptr [-512+rbp]
michael@0 5332 mul qword ptr [-56+rbp]
michael@0 5333 add rcx, rax
michael@0 5334 adc rdi, rdx
michael@0 5335 adc rsi, 0
michael@0 5336 mov rax, qword ptr [-504+rbp]
michael@0 5337 mul qword ptr [-64+rbp]
michael@0 5338 add rcx, rax
michael@0 5339 adc rdi, rdx
michael@0 5340 adc rsi, 0
michael@0 5341 mov rax, qword ptr [-496+rbp]
michael@0 5342 mul qword ptr [-72+rbp]
michael@0 5343 add rcx, rax
michael@0 5344 adc rdi, rdx
michael@0 5345 adc rsi, 0
michael@0 5346 mov rax, qword ptr [-488+rbp]
michael@0 5347 mul qword ptr [-80+rbp]
michael@0 5348 add rcx, rax
michael@0 5349 adc rdi, rdx
michael@0 5350 adc rsi, 0
michael@0 5351 mov rax, qword ptr [-480+rbp]
michael@0 5352 mul qword ptr [-88+rbp]
michael@0 5353 add rcx, rax
michael@0 5354 adc rdi, rdx
michael@0 5355 adc rsi, 0
michael@0 5356 mov rax, qword ptr [-472+rbp]
michael@0 5357 mul qword ptr [-96+rbp]
michael@0 5358 add rcx, rax
michael@0 5359 adc rdi, rdx
michael@0 5360 adc rsi, 0
michael@0 5361 mov rax, qword ptr [-464+rbp]
michael@0 5362 mul qword ptr [-104+rbp]
michael@0 5363 add rcx, rax
michael@0 5364 adc rdi, rdx
michael@0 5365 adc rsi, 0
michael@0 5366 mov rax, qword ptr [-456+rbp]
michael@0 5367 mul qword ptr [-112+rbp]
michael@0 5368 add rcx, rax
michael@0 5369 adc rdi, rdx
michael@0 5370 adc rsi, 0
michael@0 5371 mov rax, qword ptr [-448+rbp]
michael@0 5372 mul qword ptr [-120+rbp]
michael@0 5373 add rcx, rax
michael@0 5374 adc rdi, rdx
michael@0 5375 adc rsi, 0
michael@0 5376 mov rax, qword ptr [-440+rbp]
michael@0 5377 mul qword ptr [-128+rbp]
michael@0 5378 add rcx, rax
michael@0 5379 adc rdi, rdx
michael@0 5380 adc rsi, 0
michael@0 5381 mov rax, qword ptr [-432+rbp]
michael@0 5382 mul qword ptr [-136+rbp]
michael@0 5383 add rcx, rax
michael@0 5384 adc rdi, rdx
michael@0 5385 adc rsi, 0
michael@0 5386 mov rax, qword ptr [-424+rbp]
michael@0 5387 mul qword ptr [-144+rbp]
michael@0 5388 add rcx, rax
michael@0 5389 adc rdi, rdx
michael@0 5390 adc rsi, 0
michael@0 5391 mov rax, qword ptr [-416+rbp]
michael@0 5392 mul qword ptr [-152+rbp]
michael@0 5393 add rcx, rax
michael@0 5394 adc rdi, rdx
michael@0 5395 adc rsi, 0
michael@0 5396 mov rax, qword ptr [-408+rbp]
michael@0 5397 mul qword ptr [-160+rbp]
michael@0 5398 add rcx, rax
michael@0 5399 adc rdi, rdx
michael@0 5400 adc rsi, 0
michael@0 5401 mov rax, qword ptr [-400+rbp]
michael@0 5402 mul qword ptr [-168+rbp]
michael@0 5403 add rcx, rax
michael@0 5404 adc rdi, rdx
michael@0 5405 adc rsi, 0
michael@0 5406 mov rax, qword ptr [-392+rbp]
michael@0 5407 mul qword ptr [-176+rbp]
michael@0 5408 add rcx, rax
michael@0 5409 adc rdi, rdx
michael@0 5410 adc rsi, 0
michael@0 5411 mov rax, qword ptr [-384+rbp]
michael@0 5412 mul qword ptr [-184+rbp]
michael@0 5413 add rcx, rax
michael@0 5414 adc rdi, rdx
michael@0 5415 adc rsi, 0
michael@0 5416 mov rax, qword ptr [-376+rbp]
michael@0 5417 mul qword ptr [-192+rbp]
michael@0 5418 add rcx, rax
michael@0 5419 adc rdi, rdx
michael@0 5420 adc rsi, 0
michael@0 5421 mov rax, qword ptr [-368+rbp]
michael@0 5422 mul qword ptr [-200+rbp]
michael@0 5423 add rcx, rax
michael@0 5424 adc rdi, rdx
michael@0 5425 adc rsi, 0
michael@0 5426 mov rax, qword ptr [-360+rbp]
michael@0 5427 mul qword ptr [-208+rbp]
michael@0 5428 add rcx, rax
michael@0 5429 adc rdi, rdx
michael@0 5430 adc rsi, 0
michael@0 5431 mov rax, qword ptr [-352+rbp]
michael@0 5432 mul qword ptr [-216+rbp]
michael@0 5433 add rcx, rax
michael@0 5434 adc rdi, rdx
michael@0 5435 adc rsi, 0
michael@0 5436 mov rax, qword ptr [-344+rbp]
michael@0 5437 mul qword ptr [-224+rbp]
michael@0 5438 add rcx, rax
michael@0 5439 adc rdi, rdx
michael@0 5440 adc rsi, 0
michael@0 5441 mov rax, qword ptr [-336+rbp]
michael@0 5442 mul qword ptr [-232+rbp]
michael@0 5443 add rcx, rax
michael@0 5444 adc rdi, rdx
michael@0 5445 adc rsi, 0
michael@0 5446 mov rax, qword ptr [-328+rbp]
michael@0 5447 mul qword ptr [-240+rbp]
michael@0 5448 add rcx, rax
michael@0 5449 adc rdi, rdx
michael@0 5450 adc rsi, 0
michael@0 5451 mov rax, qword ptr [-320+rbp]
michael@0 5452 mul qword ptr [-248+rbp]
michael@0 5453 add rcx, rax
michael@0 5454 adc rdi, rdx
michael@0 5455 adc rsi, 0
michael@0 5456 mov rax, qword ptr [-312+rbp]
michael@0 5457 mul qword ptr [-256+rbp]
michael@0 5458 add rcx, rax
michael@0 5459 adc rdi, rdx
michael@0 5460 adc rsi, 0
michael@0 5461 mov rax, qword ptr [-304+rbp]
michael@0 5462 mul qword ptr [-264+rbp]
michael@0 5463 add rcx, rax
michael@0 5464 adc rdi, rdx
michael@0 5465 adc rsi, 0
michael@0 5466 mov r10, rdi
michael@0 5467 mov r11, rsi
michael@0 5468 mov rax, qword ptr [-296+rbp]
michael@0 5469 mul qword ptr [-272+rbp]
michael@0 5470 add rcx, rax
michael@0 5471 adc r10, rdx
michael@0 5472 adc r11, 0
michael@0 5473 mov qword ptr [264+r9], rcx
michael@0 5474 mov rdi, r11
michael@0 5475 mov rsi, r10
michael@0 5476 mov rcx, r8
michael@0 5477 mov rax, qword ptr [-520+rbp]
michael@0 5478 mul qword ptr [-40+rbp]
michael@0 5479 add rsi, rax
michael@0 5480 adc rdi, rdx
michael@0 5481 adc rcx, 0
michael@0 5482 mov rax, qword ptr [-512+rbp]
michael@0 5483 mul qword ptr [-48+rbp]
michael@0 5484 add rsi, rax
michael@0 5485 adc rdi, rdx
michael@0 5486 adc rcx, 0
michael@0 5487 mov rax, qword ptr [-504+rbp]
michael@0 5488 mul qword ptr [-56+rbp]
michael@0 5489 add rsi, rax
michael@0 5490 adc rdi, rdx
michael@0 5491 adc rcx, 0
michael@0 5492 mov rax, qword ptr [-496+rbp]
michael@0 5493 mul qword ptr [-64+rbp]
michael@0 5494 add rsi, rax
michael@0 5495 adc rdi, rdx
michael@0 5496 adc rcx, 0
michael@0 5497 mov rax, qword ptr [-488+rbp]
michael@0 5498 mul qword ptr [-72+rbp]
michael@0 5499 add rsi, rax
michael@0 5500 adc rdi, rdx
michael@0 5501 adc rcx, 0
michael@0 5502 mov rax, qword ptr [-480+rbp]
michael@0 5503 mul qword ptr [-80+rbp]
michael@0 5504 add rsi, rax
michael@0 5505 adc rdi, rdx
michael@0 5506 adc rcx, 0
michael@0 5507 mov rax, qword ptr [-472+rbp]
michael@0 5508 mul qword ptr [-88+rbp]
michael@0 5509 add rsi, rax
michael@0 5510 adc rdi, rdx
michael@0 5511 adc rcx, 0
michael@0 5512 mov rax, qword ptr [-464+rbp]
michael@0 5513 mul qword ptr [-96+rbp]
michael@0 5514 add rsi, rax
michael@0 5515 adc rdi, rdx
michael@0 5516 adc rcx, 0
michael@0 5517 mov rax, qword ptr [-456+rbp]
michael@0 5518 mul qword ptr [-104+rbp]
michael@0 5519 add rsi, rax
michael@0 5520 adc rdi, rdx
michael@0 5521 adc rcx, 0
michael@0 5522 mov rax, qword ptr [-448+rbp]
michael@0 5523 mul qword ptr [-112+rbp]
michael@0 5524 add rsi, rax
michael@0 5525 adc rdi, rdx
michael@0 5526 adc rcx, 0
michael@0 5527 mov rax, qword ptr [-440+rbp]
michael@0 5528 mul qword ptr [-120+rbp]
michael@0 5529 add rsi, rax
michael@0 5530 adc rdi, rdx
michael@0 5531 adc rcx, 0
michael@0 5532 mov rax, qword ptr [-432+rbp]
michael@0 5533 mul qword ptr [-128+rbp]
michael@0 5534 add rsi, rax
michael@0 5535 adc rdi, rdx
michael@0 5536 adc rcx, 0
michael@0 5537 mov rax, qword ptr [-424+rbp]
michael@0 5538 mul qword ptr [-136+rbp]
michael@0 5539 add rsi, rax
michael@0 5540 adc rdi, rdx
michael@0 5541 adc rcx, 0
michael@0 5542 mov rax, qword ptr [-416+rbp]
michael@0 5543 mul qword ptr [-144+rbp]
michael@0 5544 add rsi, rax
michael@0 5545 adc rdi, rdx
michael@0 5546 adc rcx, 0
michael@0 5547 mov rax, qword ptr [-408+rbp]
michael@0 5548 mul qword ptr [-152+rbp]
michael@0 5549 add rsi, rax
michael@0 5550 adc rdi, rdx
michael@0 5551 adc rcx, 0
michael@0 5552 mov rax, qword ptr [-400+rbp]
michael@0 5553 mul qword ptr [-160+rbp]
michael@0 5554 add rsi, rax
michael@0 5555 adc rdi, rdx
michael@0 5556 adc rcx, 0
michael@0 5557 mov rax, qword ptr [-392+rbp]
michael@0 5558 mul qword ptr [-168+rbp]
michael@0 5559 add rsi, rax
michael@0 5560 adc rdi, rdx
michael@0 5561 adc rcx, 0
michael@0 5562 mov rax, qword ptr [-384+rbp]
michael@0 5563 mul qword ptr [-176+rbp]
michael@0 5564 add rsi, rax
michael@0 5565 adc rdi, rdx
michael@0 5566 adc rcx, 0
michael@0 5567 mov rax, qword ptr [-376+rbp]
michael@0 5568 mul qword ptr [-184+rbp]
michael@0 5569 add rsi, rax
michael@0 5570 adc rdi, rdx
michael@0 5571 adc rcx, 0
michael@0 5572 mov rax, qword ptr [-368+rbp]
michael@0 5573 mul qword ptr [-192+rbp]
michael@0 5574 add rsi, rax
michael@0 5575 adc rdi, rdx
michael@0 5576 adc rcx, 0
michael@0 5577 mov rax, qword ptr [-360+rbp]
michael@0 5578 mul qword ptr [-200+rbp]
michael@0 5579 add rsi, rax
michael@0 5580 adc rdi, rdx
michael@0 5581 adc rcx, 0
michael@0 5582 mov rax, qword ptr [-352+rbp]
michael@0 5583 mul qword ptr [-208+rbp]
michael@0 5584 add rsi, rax
michael@0 5585 adc rdi, rdx
michael@0 5586 adc rcx, 0
michael@0 5587 mov rax, qword ptr [-344+rbp]
michael@0 5588 mul qword ptr [-216+rbp]
michael@0 5589 add rsi, rax
michael@0 5590 adc rdi, rdx
michael@0 5591 adc rcx, 0
michael@0 5592 mov rax, qword ptr [-336+rbp]
michael@0 5593 mul qword ptr [-224+rbp]
michael@0 5594 add rsi, rax
michael@0 5595 adc rdi, rdx
michael@0 5596 adc rcx, 0
michael@0 5597 mov rax, qword ptr [-328+rbp]
michael@0 5598 mul qword ptr [-232+rbp]
michael@0 5599 add rsi, rax
michael@0 5600 adc rdi, rdx
michael@0 5601 adc rcx, 0
michael@0 5602 mov rax, qword ptr [-320+rbp]
michael@0 5603 mul qword ptr [-240+rbp]
michael@0 5604 add rsi, rax
michael@0 5605 adc rdi, rdx
michael@0 5606 adc rcx, 0
michael@0 5607 mov rax, qword ptr [-312+rbp]
michael@0 5608 mul qword ptr [-248+rbp]
michael@0 5609 add rsi, rax
michael@0 5610 adc rdi, rdx
michael@0 5611 adc rcx, 0
michael@0 5612 mov rax, qword ptr [-304+rbp]
michael@0 5613 mul qword ptr [-256+rbp]
michael@0 5614 add rsi, rax
michael@0 5615 adc rdi, rdx
michael@0 5616 adc rcx, 0
michael@0 5617 mov r10, rdi
michael@0 5618 mov r11, rcx
michael@0 5619 mov rax, qword ptr [-296+rbp]
michael@0 5620 mul qword ptr [-264+rbp]
michael@0 5621 add rsi, rax
michael@0 5622 adc r10, rdx
michael@0 5623 adc r11, 0
michael@0 5624 mov qword ptr [272+r9], rsi
michael@0 5625 mov rdi, r11
michael@0 5626 mov rcx, r10
michael@0 5627 mov rsi, r8
michael@0 5628 mov rax, qword ptr [-512+rbp]
michael@0 5629 mul qword ptr [-40+rbp]
michael@0 5630 add rcx, rax
michael@0 5631 adc rdi, rdx
michael@0 5632 adc rsi, 0
michael@0 5633 mov rax, qword ptr [-504+rbp]
michael@0 5634 mul qword ptr [-48+rbp]
michael@0 5635 add rcx, rax
michael@0 5636 adc rdi, rdx
michael@0 5637 adc rsi, 0
michael@0 5638 mov rax, qword ptr [-496+rbp]
michael@0 5639 mul qword ptr [-56+rbp]
michael@0 5640 add rcx, rax
michael@0 5641 adc rdi, rdx
michael@0 5642 adc rsi, 0
michael@0 5643 mov rax, qword ptr [-488+rbp]
michael@0 5644 mul qword ptr [-64+rbp]
michael@0 5645 add rcx, rax
michael@0 5646 adc rdi, rdx
michael@0 5647 adc rsi, 0
michael@0 5648 mov rax, qword ptr [-480+rbp]
michael@0 5649 mul qword ptr [-72+rbp]
michael@0 5650 add rcx, rax
michael@0 5651 adc rdi, rdx
michael@0 5652 adc rsi, 0
michael@0 5653 mov rax, qword ptr [-472+rbp]
michael@0 5654 mul qword ptr [-80+rbp]
michael@0 5655 add rcx, rax
michael@0 5656 adc rdi, rdx
michael@0 5657 adc rsi, 0
michael@0 5658 mov rax, qword ptr [-464+rbp]
michael@0 5659 mul qword ptr [-88+rbp]
michael@0 5660 add rcx, rax
michael@0 5661 adc rdi, rdx
michael@0 5662 adc rsi, 0
michael@0 5663 mov rax, qword ptr [-456+rbp]
michael@0 5664 mul qword ptr [-96+rbp]
michael@0 5665 add rcx, rax
michael@0 5666 adc rdi, rdx
michael@0 5667 adc rsi, 0
michael@0 5668 mov rax, qword ptr [-448+rbp]
michael@0 5669 mul qword ptr [-104+rbp]
michael@0 5670 add rcx, rax
michael@0 5671 adc rdi, rdx
michael@0 5672 adc rsi, 0
michael@0 5673 mov rax, qword ptr [-440+rbp]
michael@0 5674 mul qword ptr [-112+rbp]
michael@0 5675 add rcx, rax
michael@0 5676 adc rdi, rdx
michael@0 5677 adc rsi, 0
michael@0 5678 mov rax, qword ptr [-432+rbp]
michael@0 5679 mul qword ptr [-120+rbp]
michael@0 5680 add rcx, rax
michael@0 5681 adc rdi, rdx
michael@0 5682 adc rsi, 0
michael@0 5683 mov rax, qword ptr [-424+rbp]
michael@0 5684 mul qword ptr [-128+rbp]
michael@0 5685 add rcx, rax
michael@0 5686 adc rdi, rdx
michael@0 5687 adc rsi, 0
michael@0 5688 mov rax, qword ptr [-416+rbp]
michael@0 5689 mul qword ptr [-136+rbp]
michael@0 5690 add rcx, rax
michael@0 5691 adc rdi, rdx
michael@0 5692 adc rsi, 0
michael@0 5693 mov rax, qword ptr [-408+rbp]
michael@0 5694 mul qword ptr [-144+rbp]
michael@0 5695 add rcx, rax
michael@0 5696 adc rdi, rdx
michael@0 5697 adc rsi, 0
michael@0 5698 mov rax, qword ptr [-400+rbp]
michael@0 5699 mul qword ptr [-152+rbp]
michael@0 5700 add rcx, rax
michael@0 5701 adc rdi, rdx
michael@0 5702 adc rsi, 0
michael@0 5703 mov rax, qword ptr [-392+rbp]
michael@0 5704 mul qword ptr [-160+rbp]
michael@0 5705 add rcx, rax
michael@0 5706 adc rdi, rdx
michael@0 5707 adc rsi, 0
michael@0 5708 mov rax, qword ptr [-384+rbp]
michael@0 5709 mul qword ptr [-168+rbp]
michael@0 5710 add rcx, rax
michael@0 5711 adc rdi, rdx
michael@0 5712 adc rsi, 0
michael@0 5713 mov rax, qword ptr [-376+rbp]
michael@0 5714 mul qword ptr [-176+rbp]
michael@0 5715 add rcx, rax
michael@0 5716 adc rdi, rdx
michael@0 5717 adc rsi, 0
michael@0 5718 mov rax, qword ptr [-368+rbp]
michael@0 5719 mul qword ptr [-184+rbp]
michael@0 5720 add rcx, rax
michael@0 5721 adc rdi, rdx
michael@0 5722 adc rsi, 0
michael@0 5723 mov rax, qword ptr [-360+rbp]
michael@0 5724 mul qword ptr [-192+rbp]
michael@0 5725 add rcx, rax
michael@0 5726 adc rdi, rdx
michael@0 5727 adc rsi, 0
michael@0 5728 mov rax, qword ptr [-352+rbp]
michael@0 5729 mul qword ptr [-200+rbp]
michael@0 5730 add rcx, rax
michael@0 5731 adc rdi, rdx
michael@0 5732 adc rsi, 0
michael@0 5733 mov rax, qword ptr [-344+rbp]
michael@0 5734 mul qword ptr [-208+rbp]
michael@0 5735 add rcx, rax
michael@0 5736 adc rdi, rdx
michael@0 5737 adc rsi, 0
michael@0 5738 mov rax, qword ptr [-336+rbp]
michael@0 5739 mul qword ptr [-216+rbp]
michael@0 5740 add rcx, rax
michael@0 5741 adc rdi, rdx
michael@0 5742 adc rsi, 0
michael@0 5743 mov rax, qword ptr [-328+rbp]
michael@0 5744 mul qword ptr [-224+rbp]
michael@0 5745 add rcx, rax
michael@0 5746 adc rdi, rdx
michael@0 5747 adc rsi, 0
michael@0 5748 mov rax, qword ptr [-320+rbp]
michael@0 5749 mul qword ptr [-232+rbp]
michael@0 5750 add rcx, rax
michael@0 5751 adc rdi, rdx
michael@0 5752 adc rsi, 0
michael@0 5753 mov rax, qword ptr [-312+rbp]
michael@0 5754 mul qword ptr [-240+rbp]
michael@0 5755 add rcx, rax
michael@0 5756 adc rdi, rdx
michael@0 5757 adc rsi, 0
michael@0 5758 mov rax, qword ptr [-304+rbp]
michael@0 5759 mul qword ptr [-248+rbp]
michael@0 5760 add rcx, rax
michael@0 5761 adc rdi, rdx
michael@0 5762 adc rsi, 0
michael@0 5763 mov r10, rdi
michael@0 5764 mov r11, rsi
michael@0 5765 mov rax, qword ptr [-296+rbp]
michael@0 5766 mul qword ptr [-256+rbp]
michael@0 5767 add rcx, rax
michael@0 5768 adc r10, rdx
michael@0 5769 adc r11, 0
michael@0 5770 mov qword ptr [280+r9], rcx
michael@0 5771 mov rdi, r11
michael@0 5772 mov rsi, r10
michael@0 5773 mov rcx, r8
michael@0 5774 mov rax, qword ptr [-504+rbp]
michael@0 5775 mul qword ptr [-40+rbp]
michael@0 5776 add rsi, rax
michael@0 5777 adc rdi, rdx
michael@0 5778 adc rcx, 0
michael@0 5779 mov rax, qword ptr [-496+rbp]
michael@0 5780 mul qword ptr [-48+rbp]
michael@0 5781 add rsi, rax
michael@0 5782 adc rdi, rdx
michael@0 5783 adc rcx, 0
michael@0 5784 mov rax, qword ptr [-488+rbp]
michael@0 5785 mul qword ptr [-56+rbp]
michael@0 5786 add rsi, rax
michael@0 5787 adc rdi, rdx
michael@0 5788 adc rcx, 0
michael@0 5789 mov rax, qword ptr [-480+rbp]
michael@0 5790 mul qword ptr [-64+rbp]
michael@0 5791 add rsi, rax
michael@0 5792 adc rdi, rdx
michael@0 5793 adc rcx, 0
michael@0 5794 mov rax, qword ptr [-472+rbp]
michael@0 5795 mul qword ptr [-72+rbp]
michael@0 5796 add rsi, rax
michael@0 5797 adc rdi, rdx
michael@0 5798 adc rcx, 0
michael@0 5799 mov rax, qword ptr [-464+rbp]
michael@0 5800 mul qword ptr [-80+rbp]
michael@0 5801 add rsi, rax
michael@0 5802 adc rdi, rdx
michael@0 5803 adc rcx, 0
michael@0 5804 mov rax, qword ptr [-456+rbp]
michael@0 5805 mul qword ptr [-88+rbp]
michael@0 5806 add rsi, rax
michael@0 5807 adc rdi, rdx
michael@0 5808 adc rcx, 0
michael@0 5809 mov rax, qword ptr [-448+rbp]
michael@0 5810 mul qword ptr [-96+rbp]
michael@0 5811 add rsi, rax
michael@0 5812 adc rdi, rdx
michael@0 5813 adc rcx, 0
michael@0 5814 mov rax, qword ptr [-440+rbp]
michael@0 5815 mul qword ptr [-104+rbp]
michael@0 5816 add rsi, rax
michael@0 5817 adc rdi, rdx
michael@0 5818 adc rcx, 0
michael@0 5819 mov rax, qword ptr [-432+rbp]
michael@0 5820 mul qword ptr [-112+rbp]
michael@0 5821 add rsi, rax
michael@0 5822 adc rdi, rdx
michael@0 5823 adc rcx, 0
michael@0 5824 mov rax, qword ptr [-424+rbp]
michael@0 5825 mul qword ptr [-120+rbp]
michael@0 5826 add rsi, rax
michael@0 5827 adc rdi, rdx
michael@0 5828 adc rcx, 0
michael@0 5829 mov rax, qword ptr [-416+rbp]
michael@0 5830 mul qword ptr [-128+rbp]
michael@0 5831 add rsi, rax
michael@0 5832 adc rdi, rdx
michael@0 5833 adc rcx, 0
michael@0 5834 mov rax, qword ptr [-408+rbp]
michael@0 5835 mul qword ptr [-136+rbp]
michael@0 5836 add rsi, rax
michael@0 5837 adc rdi, rdx
michael@0 5838 adc rcx, 0
michael@0 5839 mov rax, qword ptr [-400+rbp]
michael@0 5840 mul qword ptr [-144+rbp]
michael@0 5841 add rsi, rax
michael@0 5842 adc rdi, rdx
michael@0 5843 adc rcx, 0
michael@0 5844 mov rax, qword ptr [-392+rbp]
michael@0 5845 mul qword ptr [-152+rbp]
michael@0 5846 add rsi, rax
michael@0 5847 adc rdi, rdx
michael@0 5848 adc rcx, 0
michael@0 5849 mov rax, qword ptr [-384+rbp]
michael@0 5850 mul qword ptr [-160+rbp]
michael@0 5851 add rsi, rax
michael@0 5852 adc rdi, rdx
michael@0 5853 adc rcx, 0
michael@0 5854 mov rax, qword ptr [-376+rbp]
michael@0 5855 mul qword ptr [-168+rbp]
michael@0 5856 add rsi, rax
michael@0 5857 adc rdi, rdx
michael@0 5858 adc rcx, 0
michael@0 5859 mov rax, qword ptr [-368+rbp]
michael@0 5860 mul qword ptr [-176+rbp]
michael@0 5861 add rsi, rax
michael@0 5862 adc rdi, rdx
michael@0 5863 adc rcx, 0
michael@0 5864 mov rax, qword ptr [-360+rbp]
michael@0 5865 mul qword ptr [-184+rbp]
michael@0 5866 add rsi, rax
michael@0 5867 adc rdi, rdx
michael@0 5868 adc rcx, 0
michael@0 5869 mov rax, qword ptr [-352+rbp]
michael@0 5870 mul qword ptr [-192+rbp]
michael@0 5871 add rsi, rax
michael@0 5872 adc rdi, rdx
michael@0 5873 adc rcx, 0
michael@0 5874 mov rax, qword ptr [-344+rbp]
michael@0 5875 mul qword ptr [-200+rbp]
michael@0 5876 add rsi, rax
michael@0 5877 adc rdi, rdx
michael@0 5878 adc rcx, 0
michael@0 5879 mov rax, qword ptr [-336+rbp]
michael@0 5880 mul qword ptr [-208+rbp]
michael@0 5881 add rsi, rax
michael@0 5882 adc rdi, rdx
michael@0 5883 adc rcx, 0
michael@0 5884 mov rax, qword ptr [-328+rbp]
michael@0 5885 mul qword ptr [-216+rbp]
michael@0 5886 add rsi, rax
michael@0 5887 adc rdi, rdx
michael@0 5888 adc rcx, 0
michael@0 5889 mov rax, qword ptr [-320+rbp]
michael@0 5890 mul qword ptr [-224+rbp]
michael@0 5891 add rsi, rax
michael@0 5892 adc rdi, rdx
michael@0 5893 adc rcx, 0
michael@0 5894 mov rax, qword ptr [-312+rbp]
michael@0 5895 mul qword ptr [-232+rbp]
michael@0 5896 add rsi, rax
michael@0 5897 adc rdi, rdx
michael@0 5898 adc rcx, 0
michael@0 5899 mov rax, qword ptr [-304+rbp]
michael@0 5900 mul qword ptr [-240+rbp]
michael@0 5901 add rsi, rax
michael@0 5902 adc rdi, rdx
michael@0 5903 adc rcx, 0
michael@0 5904 mov r10, rdi
michael@0 5905 mov r11, rcx
michael@0 5906 mov rax, qword ptr [-296+rbp]
michael@0 5907 mul qword ptr [-248+rbp]
michael@0 5908 add rsi, rax
michael@0 5909 adc r10, rdx
michael@0 5910 adc r11, 0
michael@0 5911 mov qword ptr [288+r9], rsi
michael@0 5912 mov rdi, r11
michael@0 5913 mov rcx, r10
michael@0 5914 mov rsi, r8
michael@0 5915 mov rax, qword ptr [-496+rbp]
michael@0 5916 mul qword ptr [-40+rbp]
michael@0 5917 add rcx, rax
michael@0 5918 adc rdi, rdx
michael@0 5919 adc rsi, 0
michael@0 5920 mov rax, qword ptr [-488+rbp]
michael@0 5921 mul qword ptr [-48+rbp]
michael@0 5922 add rcx, rax
michael@0 5923 adc rdi, rdx
michael@0 5924 adc rsi, 0
michael@0 5925 mov rax, qword ptr [-480+rbp]
michael@0 5926 mul qword ptr [-56+rbp]
michael@0 5927 add rcx, rax
michael@0 5928 adc rdi, rdx
michael@0 5929 adc rsi, 0
michael@0 5930 mov rax, qword ptr [-472+rbp]
michael@0 5931 mul qword ptr [-64+rbp]
michael@0 5932 add rcx, rax
michael@0 5933 adc rdi, rdx
michael@0 5934 adc rsi, 0
michael@0 5935 mov rax, qword ptr [-464+rbp]
michael@0 5936 mul qword ptr [-72+rbp]
michael@0 5937 add rcx, rax
michael@0 5938 adc rdi, rdx
michael@0 5939 adc rsi, 0
michael@0 5940 mov rax, qword ptr [-456+rbp]
michael@0 5941 mul qword ptr [-80+rbp]
michael@0 5942 add rcx, rax
michael@0 5943 adc rdi, rdx
michael@0 5944 adc rsi, 0
michael@0 5945 mov rax, qword ptr [-448+rbp]
michael@0 5946 mul qword ptr [-88+rbp]
michael@0 5947 add rcx, rax
michael@0 5948 adc rdi, rdx
michael@0 5949 adc rsi, 0
michael@0 5950 mov rax, qword ptr [-440+rbp]
michael@0 5951 mul qword ptr [-96+rbp]
michael@0 5952 add rcx, rax
michael@0 5953 adc rdi, rdx
michael@0 5954 adc rsi, 0
michael@0 5955 mov rax, qword ptr [-432+rbp]
michael@0 5956 mul qword ptr [-104+rbp]
michael@0 5957 add rcx, rax
michael@0 5958 adc rdi, rdx
michael@0 5959 adc rsi, 0
michael@0 5960 mov rax, qword ptr [-424+rbp]
michael@0 5961 mul qword ptr [-112+rbp]
michael@0 5962 add rcx, rax
michael@0 5963 adc rdi, rdx
michael@0 5964 adc rsi, 0
michael@0 5965 mov rax, qword ptr [-416+rbp]
michael@0 5966 mul qword ptr [-120+rbp]
michael@0 5967 add rcx, rax
michael@0 5968 adc rdi, rdx
michael@0 5969 adc rsi, 0
michael@0 5970 mov rax, qword ptr [-408+rbp]
michael@0 5971 mul qword ptr [-128+rbp]
michael@0 5972 add rcx, rax
michael@0 5973 adc rdi, rdx
michael@0 5974 adc rsi, 0
michael@0 5975 mov rax, qword ptr [-400+rbp]
michael@0 5976 mul qword ptr [-136+rbp]
michael@0 5977 add rcx, rax
michael@0 5978 adc rdi, rdx
michael@0 5979 adc rsi, 0
michael@0 5980 mov rax, qword ptr [-392+rbp]
michael@0 5981 mul qword ptr [-144+rbp]
michael@0 5982 add rcx, rax
michael@0 5983 adc rdi, rdx
michael@0 5984 adc rsi, 0
michael@0 5985 mov rax, qword ptr [-384+rbp]
michael@0 5986 mul qword ptr [-152+rbp]
michael@0 5987 add rcx, rax
michael@0 5988 adc rdi, rdx
michael@0 5989 adc rsi, 0
michael@0 5990 mov rax, qword ptr [-376+rbp]
michael@0 5991 mul qword ptr [-160+rbp]
michael@0 5992 add rcx, rax
michael@0 5993 adc rdi, rdx
michael@0 5994 adc rsi, 0
michael@0 5995 mov rax, qword ptr [-368+rbp]
michael@0 5996 mul qword ptr [-168+rbp]
michael@0 5997 add rcx, rax
michael@0 5998 adc rdi, rdx
michael@0 5999 adc rsi, 0
michael@0 6000 mov rax, qword ptr [-360+rbp]
michael@0 6001 mul qword ptr [-176+rbp]
michael@0 6002 add rcx, rax
michael@0 6003 adc rdi, rdx
michael@0 6004 adc rsi, 0
michael@0 6005 mov rax, qword ptr [-352+rbp]
michael@0 6006 mul qword ptr [-184+rbp]
michael@0 6007 add rcx, rax
michael@0 6008 adc rdi, rdx
michael@0 6009 adc rsi, 0
michael@0 6010 mov rax, qword ptr [-344+rbp]
michael@0 6011 mul qword ptr [-192+rbp]
michael@0 6012 add rcx, rax
michael@0 6013 adc rdi, rdx
michael@0 6014 adc rsi, 0
michael@0 6015 mov rax, qword ptr [-336+rbp]
michael@0 6016 mul qword ptr [-200+rbp]
michael@0 6017 add rcx, rax
michael@0 6018 adc rdi, rdx
michael@0 6019 adc rsi, 0
michael@0 6020 mov rax, qword ptr [-328+rbp]
michael@0 6021 mul qword ptr [-208+rbp]
michael@0 6022 add rcx, rax
michael@0 6023 adc rdi, rdx
michael@0 6024 adc rsi, 0
michael@0 6025 mov rax, qword ptr [-320+rbp]
michael@0 6026 mul qword ptr [-216+rbp]
michael@0 6027 add rcx, rax
michael@0 6028 adc rdi, rdx
michael@0 6029 adc rsi, 0
michael@0 6030 mov rax, qword ptr [-312+rbp]
michael@0 6031 mul qword ptr [-224+rbp]
michael@0 6032 add rcx, rax
michael@0 6033 adc rdi, rdx
michael@0 6034 adc rsi, 0
michael@0 6035 mov rax, qword ptr [-304+rbp]
michael@0 6036 mul qword ptr [-232+rbp]
michael@0 6037 add rcx, rax
michael@0 6038 adc rdi, rdx
michael@0 6039 adc rsi, 0
michael@0 6040 mov r10, rdi
michael@0 6041 mov r11, rsi
michael@0 6042 mov rax, qword ptr [-296+rbp]
michael@0 6043 mul qword ptr [-240+rbp]
michael@0 6044 add rcx, rax
michael@0 6045 adc r10, rdx
michael@0 6046 adc r11, 0
michael@0 6047 mov qword ptr [296+r9], rcx
michael@0 6048 mov rdi, r11
michael@0 6049 mov rsi, r10
michael@0 6050 mov rcx, r8
michael@0 6051 mov rax, qword ptr [-488+rbp]
michael@0 6052 mul qword ptr [-40+rbp]
michael@0 6053 add rsi, rax
michael@0 6054 adc rdi, rdx
michael@0 6055 adc rcx, 0
michael@0 6056 mov rax, qword ptr [-480+rbp]
michael@0 6057 mul qword ptr [-48+rbp]
michael@0 6058 add rsi, rax
michael@0 6059 adc rdi, rdx
michael@0 6060 adc rcx, 0
michael@0 6061 mov rax, qword ptr [-472+rbp]
michael@0 6062 mul qword ptr [-56+rbp]
michael@0 6063 add rsi, rax
michael@0 6064 adc rdi, rdx
michael@0 6065 adc rcx, 0
michael@0 6066 mov rax, qword ptr [-464+rbp]
michael@0 6067 mul qword ptr [-64+rbp]
michael@0 6068 add rsi, rax
michael@0 6069 adc rdi, rdx
michael@0 6070 adc rcx, 0
michael@0 6071 mov rax, qword ptr [-456+rbp]
michael@0 6072 mul qword ptr [-72+rbp]
michael@0 6073 add rsi, rax
michael@0 6074 adc rdi, rdx
michael@0 6075 adc rcx, 0
michael@0 6076 mov rax, qword ptr [-448+rbp]
michael@0 6077 mul qword ptr [-80+rbp]
michael@0 6078 add rsi, rax
michael@0 6079 adc rdi, rdx
michael@0 6080 adc rcx, 0
michael@0 6081 mov rax, qword ptr [-440+rbp]
michael@0 6082 mul qword ptr [-88+rbp]
michael@0 6083 add rsi, rax
michael@0 6084 adc rdi, rdx
michael@0 6085 adc rcx, 0
michael@0 6086 mov rax, qword ptr [-432+rbp]
michael@0 6087 mul qword ptr [-96+rbp]
michael@0 6088 add rsi, rax
michael@0 6089 adc rdi, rdx
michael@0 6090 adc rcx, 0
michael@0 6091 mov rax, qword ptr [-424+rbp]
michael@0 6092 mul qword ptr [-104+rbp]
michael@0 6093 add rsi, rax
michael@0 6094 adc rdi, rdx
michael@0 6095 adc rcx, 0
michael@0 6096 mov rax, qword ptr [-416+rbp]
michael@0 6097 mul qword ptr [-112+rbp]
michael@0 6098 add rsi, rax
michael@0 6099 adc rdi, rdx
michael@0 6100 adc rcx, 0
michael@0 6101 mov rax, qword ptr [-408+rbp]
michael@0 6102 mul qword ptr [-120+rbp]
michael@0 6103 add rsi, rax
michael@0 6104 adc rdi, rdx
michael@0 6105 adc rcx, 0
michael@0 6106 mov rax, qword ptr [-400+rbp]
michael@0 6107 mul qword ptr [-128+rbp]
michael@0 6108 add rsi, rax
michael@0 6109 adc rdi, rdx
michael@0 6110 adc rcx, 0
michael@0 6111 mov rax, qword ptr [-392+rbp]
michael@0 6112 mul qword ptr [-136+rbp]
michael@0 6113 add rsi, rax
michael@0 6114 adc rdi, rdx
michael@0 6115 adc rcx, 0
michael@0 6116 mov rax, qword ptr [-384+rbp]
michael@0 6117 mul qword ptr [-144+rbp]
michael@0 6118 add rsi, rax
michael@0 6119 adc rdi, rdx
michael@0 6120 adc rcx, 0
michael@0 6121 mov rax, qword ptr [-376+rbp]
michael@0 6122 mul qword ptr [-152+rbp]
michael@0 6123 add rsi, rax
michael@0 6124 adc rdi, rdx
michael@0 6125 adc rcx, 0
michael@0 6126 mov rax, qword ptr [-368+rbp]
michael@0 6127 mul qword ptr [-160+rbp]
michael@0 6128 add rsi, rax
michael@0 6129 adc rdi, rdx
michael@0 6130 adc rcx, 0
michael@0 6131 mov rax, qword ptr [-360+rbp]
michael@0 6132 mul qword ptr [-168+rbp]
michael@0 6133 add rsi, rax
michael@0 6134 adc rdi, rdx
michael@0 6135 adc rcx, 0
michael@0 6136 mov rax, qword ptr [-352+rbp]
michael@0 6137 mul qword ptr [-176+rbp]
michael@0 6138 add rsi, rax
michael@0 6139 adc rdi, rdx
michael@0 6140 adc rcx, 0
michael@0 6141 mov rax, qword ptr [-344+rbp]
michael@0 6142 mul qword ptr [-184+rbp]
michael@0 6143 add rsi, rax
michael@0 6144 adc rdi, rdx
michael@0 6145 adc rcx, 0
michael@0 6146 mov rax, qword ptr [-336+rbp]
michael@0 6147 mul qword ptr [-192+rbp]
michael@0 6148 add rsi, rax
michael@0 6149 adc rdi, rdx
michael@0 6150 adc rcx, 0
michael@0 6151 mov rax, qword ptr [-328+rbp]
michael@0 6152 mul qword ptr [-200+rbp]
michael@0 6153 add rsi, rax
michael@0 6154 adc rdi, rdx
michael@0 6155 adc rcx, 0
michael@0 6156 mov rax, qword ptr [-320+rbp]
michael@0 6157 mul qword ptr [-208+rbp]
michael@0 6158 add rsi, rax
michael@0 6159 adc rdi, rdx
michael@0 6160 adc rcx, 0
michael@0 6161 mov rax, qword ptr [-312+rbp]
michael@0 6162 mul qword ptr [-216+rbp]
michael@0 6163 add rsi, rax
michael@0 6164 adc rdi, rdx
michael@0 6165 adc rcx, 0
michael@0 6166 mov rax, qword ptr [-304+rbp]
michael@0 6167 mul qword ptr [-224+rbp]
michael@0 6168 add rsi, rax
michael@0 6169 adc rdi, rdx
michael@0 6170 adc rcx, 0
michael@0 6171 mov r10, rdi
michael@0 6172 mov r11, rcx
michael@0 6173 mov rax, qword ptr [-296+rbp]
michael@0 6174 mul qword ptr [-232+rbp]
michael@0 6175 add rsi, rax
michael@0 6176 adc r10, rdx
michael@0 6177 adc r11, 0
michael@0 6178 mov qword ptr [304+r9], rsi
michael@0 6179 mov rdi, r11
michael@0 6180 mov rcx, r10
michael@0 6181 mov rsi, r8
michael@0 6182 mov rax, qword ptr [-480+rbp]
michael@0 6183 mul qword ptr [-40+rbp]
michael@0 6184 add rcx, rax
michael@0 6185 adc rdi, rdx
michael@0 6186 adc rsi, 0
michael@0 6187 mov rax, qword ptr [-472+rbp]
michael@0 6188 mul qword ptr [-48+rbp]
michael@0 6189 add rcx, rax
michael@0 6190 adc rdi, rdx
michael@0 6191 adc rsi, 0
michael@0 6192 mov rax, qword ptr [-464+rbp]
michael@0 6193 mul qword ptr [-56+rbp]
michael@0 6194 add rcx, rax
michael@0 6195 adc rdi, rdx
michael@0 6196 adc rsi, 0
michael@0 6197 mov rax, qword ptr [-456+rbp]
michael@0 6198 mul qword ptr [-64+rbp]
michael@0 6199 add rcx, rax
michael@0 6200 adc rdi, rdx
michael@0 6201 adc rsi, 0
michael@0 6202 mov rax, qword ptr [-448+rbp]
michael@0 6203 mul qword ptr [-72+rbp]
michael@0 6204 add rcx, rax
michael@0 6205 adc rdi, rdx
michael@0 6206 adc rsi, 0
michael@0 6207 mov rax, qword ptr [-440+rbp]
michael@0 6208 mul qword ptr [-80+rbp]
michael@0 6209 add rcx, rax
michael@0 6210 adc rdi, rdx
michael@0 6211 adc rsi, 0
michael@0 6212 mov rax, qword ptr [-432+rbp]
michael@0 6213 mul qword ptr [-88+rbp]
michael@0 6214 add rcx, rax
michael@0 6215 adc rdi, rdx
michael@0 6216 adc rsi, 0
michael@0 6217 mov rax, qword ptr [-424+rbp]
michael@0 6218 mul qword ptr [-96+rbp]
michael@0 6219 add rcx, rax
michael@0 6220 adc rdi, rdx
michael@0 6221 adc rsi, 0
michael@0 6222 mov rax, qword ptr [-416+rbp]
michael@0 6223 mul qword ptr [-104+rbp]
michael@0 6224 add rcx, rax
michael@0 6225 adc rdi, rdx
michael@0 6226 adc rsi, 0
michael@0 6227 mov rax, qword ptr [-408+rbp]
michael@0 6228 mul qword ptr [-112+rbp]
michael@0 6229 add rcx, rax
michael@0 6230 adc rdi, rdx
michael@0 6231 adc rsi, 0
michael@0 6232 mov rax, qword ptr [-400+rbp]
michael@0 6233 mul qword ptr [-120+rbp]
michael@0 6234 add rcx, rax
michael@0 6235 adc rdi, rdx
michael@0 6236 adc rsi, 0
michael@0 6237 mov rax, qword ptr [-392+rbp]
michael@0 6238 mul qword ptr [-128+rbp]
michael@0 6239 add rcx, rax
michael@0 6240 adc rdi, rdx
michael@0 6241 adc rsi, 0
michael@0 6242 mov rax, qword ptr [-384+rbp]
michael@0 6243 mul qword ptr [-136+rbp]
michael@0 6244 add rcx, rax
michael@0 6245 adc rdi, rdx
michael@0 6246 adc rsi, 0
michael@0 6247 mov rax, qword ptr [-376+rbp]
michael@0 6248 mul qword ptr [-144+rbp]
michael@0 6249 add rcx, rax
michael@0 6250 adc rdi, rdx
michael@0 6251 adc rsi, 0
michael@0 6252 mov rax, qword ptr [-368+rbp]
michael@0 6253 mul qword ptr [-152+rbp]
michael@0 6254 add rcx, rax
michael@0 6255 adc rdi, rdx
michael@0 6256 adc rsi, 0
michael@0 6257 mov rax, qword ptr [-360+rbp]
michael@0 6258 mul qword ptr [-160+rbp]
michael@0 6259 add rcx, rax
michael@0 6260 adc rdi, rdx
michael@0 6261 adc rsi, 0
michael@0 6262 mov rax, qword ptr [-352+rbp]
michael@0 6263 mul qword ptr [-168+rbp]
michael@0 6264 add rcx, rax
michael@0 6265 adc rdi, rdx
michael@0 6266 adc rsi, 0
michael@0 6267 mov rax, qword ptr [-344+rbp]
michael@0 6268 mul qword ptr [-176+rbp]
michael@0 6269 add rcx, rax
michael@0 6270 adc rdi, rdx
michael@0 6271 adc rsi, 0
michael@0 6272 mov rax, qword ptr [-336+rbp]
michael@0 6273 mul qword ptr [-184+rbp]
michael@0 6274 add rcx, rax
michael@0 6275 adc rdi, rdx
michael@0 6276 adc rsi, 0
michael@0 6277 mov rax, qword ptr [-328+rbp]
michael@0 6278 mul qword ptr [-192+rbp]
michael@0 6279 add rcx, rax
michael@0 6280 adc rdi, rdx
michael@0 6281 adc rsi, 0
michael@0 6282 mov rax, qword ptr [-320+rbp]
michael@0 6283 mul qword ptr [-200+rbp]
michael@0 6284 add rcx, rax
michael@0 6285 adc rdi, rdx
michael@0 6286 adc rsi, 0
michael@0 6287 mov rax, qword ptr [-312+rbp]
michael@0 6288 mul qword ptr [-208+rbp]
michael@0 6289 add rcx, rax
michael@0 6290 adc rdi, rdx
michael@0 6291 adc rsi, 0
michael@0 6292 mov rax, qword ptr [-304+rbp]
michael@0 6293 mul qword ptr [-216+rbp]
michael@0 6294 add rcx, rax
michael@0 6295 adc rdi, rdx
michael@0 6296 adc rsi, 0
michael@0 6297 mov r10, rdi
michael@0 6298 mov r11, rsi
michael@0 6299 mov rax, qword ptr [-296+rbp]
michael@0 6300 mul qword ptr [-224+rbp]
michael@0 6301 add rcx, rax
michael@0 6302 adc r10, rdx
michael@0 6303 adc r11, 0
michael@0 6304 mov qword ptr [312+r9], rcx
michael@0 6305 mov rdi, r11
michael@0 6306 mov rsi, r10
michael@0 6307 mov rcx, r8
michael@0 6308 mov rax, qword ptr [-472+rbp]
michael@0 6309 mul qword ptr [-40+rbp]
michael@0 6310 add rsi, rax
michael@0 6311 adc rdi, rdx
michael@0 6312 adc rcx, 0
michael@0 6313 mov rax, qword ptr [-464+rbp]
michael@0 6314 mul qword ptr [-48+rbp]
michael@0 6315 add rsi, rax
michael@0 6316 adc rdi, rdx
michael@0 6317 adc rcx, 0
michael@0 6318 mov rax, qword ptr [-456+rbp]
michael@0 6319 mul qword ptr [-56+rbp]
michael@0 6320 add rsi, rax
michael@0 6321 adc rdi, rdx
michael@0 6322 adc rcx, 0
michael@0 6323 mov rax, qword ptr [-448+rbp]
michael@0 6324 mul qword ptr [-64+rbp]
michael@0 6325 add rsi, rax
michael@0 6326 adc rdi, rdx
michael@0 6327 adc rcx, 0
michael@0 6328 mov rax, qword ptr [-440+rbp]
michael@0 6329 mul qword ptr [-72+rbp]
michael@0 6330 add rsi, rax
michael@0 6331 adc rdi, rdx
michael@0 6332 adc rcx, 0
michael@0 6333 mov rax, qword ptr [-432+rbp]
michael@0 6334 mul qword ptr [-80+rbp]
michael@0 6335 add rsi, rax
michael@0 6336 adc rdi, rdx
michael@0 6337 adc rcx, 0
michael@0 6338 mov rax, qword ptr [-424+rbp]
michael@0 6339 mul qword ptr [-88+rbp]
michael@0 6340 add rsi, rax
michael@0 6341 adc rdi, rdx
michael@0 6342 adc rcx, 0
michael@0 6343 mov rax, qword ptr [-416+rbp]
michael@0 6344 mul qword ptr [-96+rbp]
michael@0 6345 add rsi, rax
michael@0 6346 adc rdi, rdx
michael@0 6347 adc rcx, 0
michael@0 6348 mov rax, qword ptr [-408+rbp]
michael@0 6349 mul qword ptr [-104+rbp]
michael@0 6350 add rsi, rax
michael@0 6351 adc rdi, rdx
michael@0 6352 adc rcx, 0
michael@0 6353 mov rax, qword ptr [-400+rbp]
michael@0 6354 mul qword ptr [-112+rbp]
michael@0 6355 add rsi, rax
michael@0 6356 adc rdi, rdx
michael@0 6357 adc rcx, 0
michael@0 6358 mov rax, qword ptr [-392+rbp]
michael@0 6359 mul qword ptr [-120+rbp]
michael@0 6360 add rsi, rax
michael@0 6361 adc rdi, rdx
michael@0 6362 adc rcx, 0
michael@0 6363 mov rax, qword ptr [-384+rbp]
michael@0 6364 mul qword ptr [-128+rbp]
michael@0 6365 add rsi, rax
michael@0 6366 adc rdi, rdx
michael@0 6367 adc rcx, 0
michael@0 6368 mov rax, qword ptr [-376+rbp]
michael@0 6369 mul qword ptr [-136+rbp]
michael@0 6370 add rsi, rax
michael@0 6371 adc rdi, rdx
michael@0 6372 adc rcx, 0
michael@0 6373 mov rax, qword ptr [-368+rbp]
michael@0 6374 mul qword ptr [-144+rbp]
michael@0 6375 add rsi, rax
michael@0 6376 adc rdi, rdx
michael@0 6377 adc rcx, 0
michael@0 6378 mov rax, qword ptr [-360+rbp]
michael@0 6379 mul qword ptr [-152+rbp]
michael@0 6380 add rsi, rax
michael@0 6381 adc rdi, rdx
michael@0 6382 adc rcx, 0
michael@0 6383 mov rax, qword ptr [-352+rbp]
michael@0 6384 mul qword ptr [-160+rbp]
michael@0 6385 add rsi, rax
michael@0 6386 adc rdi, rdx
michael@0 6387 adc rcx, 0
michael@0 6388 mov rax, qword ptr [-344+rbp]
michael@0 6389 mul qword ptr [-168+rbp]
michael@0 6390 add rsi, rax
michael@0 6391 adc rdi, rdx
michael@0 6392 adc rcx, 0
michael@0 6393 mov rax, qword ptr [-336+rbp]
michael@0 6394 mul qword ptr [-176+rbp]
michael@0 6395 add rsi, rax
michael@0 6396 adc rdi, rdx
michael@0 6397 adc rcx, 0
michael@0 6398 mov rax, qword ptr [-328+rbp]
michael@0 6399 mul qword ptr [-184+rbp]
michael@0 6400 add rsi, rax
michael@0 6401 adc rdi, rdx
michael@0 6402 adc rcx, 0
michael@0 6403 mov rax, qword ptr [-320+rbp]
michael@0 6404 mul qword ptr [-192+rbp]
michael@0 6405 add rsi, rax
michael@0 6406 adc rdi, rdx
michael@0 6407 adc rcx, 0
michael@0 6408 mov rax, qword ptr [-312+rbp]
michael@0 6409 mul qword ptr [-200+rbp]
michael@0 6410 add rsi, rax
michael@0 6411 adc rdi, rdx
michael@0 6412 adc rcx, 0
michael@0 6413 mov rax, qword ptr [-304+rbp]
michael@0 6414 mul qword ptr [-208+rbp]
michael@0 6415 add rsi, rax
michael@0 6416 adc rdi, rdx
michael@0 6417 adc rcx, 0
michael@0 6418 mov r10, rdi
michael@0 6419 mov r11, rcx
michael@0 6420 mov rax, qword ptr [-296+rbp]
michael@0 6421 mul qword ptr [-216+rbp]
michael@0 6422 add rsi, rax
michael@0 6423 adc r10, rdx
michael@0 6424 adc r11, 0
michael@0 6425 mov qword ptr [320+r9], rsi
michael@0 6426 mov rdi, r11
michael@0 6427 mov rcx, r10
michael@0 6428 mov rsi, r8
michael@0 6429 mov rax, qword ptr [-464+rbp]
michael@0 6430 mul qword ptr [-40+rbp]
michael@0 6431 add rcx, rax
michael@0 6432 adc rdi, rdx
michael@0 6433 adc rsi, 0
michael@0 6434 mov rax, qword ptr [-456+rbp]
michael@0 6435 mul qword ptr [-48+rbp]
michael@0 6436 add rcx, rax
michael@0 6437 adc rdi, rdx
michael@0 6438 adc rsi, 0
michael@0 6439 mov rax, qword ptr [-448+rbp]
michael@0 6440 mul qword ptr [-56+rbp]
michael@0 6441 add rcx, rax
michael@0 6442 adc rdi, rdx
michael@0 6443 adc rsi, 0
michael@0 6444 mov rax, qword ptr [-440+rbp]
michael@0 6445 mul qword ptr [-64+rbp]
michael@0 6446 add rcx, rax
michael@0 6447 adc rdi, rdx
michael@0 6448 adc rsi, 0
michael@0 6449 mov rax, qword ptr [-432+rbp]
michael@0 6450 mul qword ptr [-72+rbp]
michael@0 6451 add rcx, rax
michael@0 6452 adc rdi, rdx
michael@0 6453 adc rsi, 0
michael@0 6454 mov rax, qword ptr [-424+rbp]
michael@0 6455 mul qword ptr [-80+rbp]
michael@0 6456 add rcx, rax
michael@0 6457 adc rdi, rdx
michael@0 6458 adc rsi, 0
michael@0 6459 mov rax, qword ptr [-416+rbp]
michael@0 6460 mul qword ptr [-88+rbp]
michael@0 6461 add rcx, rax
michael@0 6462 adc rdi, rdx
michael@0 6463 adc rsi, 0
michael@0 6464 mov rax, qword ptr [-408+rbp]
michael@0 6465 mul qword ptr [-96+rbp]
michael@0 6466 add rcx, rax
michael@0 6467 adc rdi, rdx
michael@0 6468 adc rsi, 0
michael@0 6469 mov rax, qword ptr [-400+rbp]
michael@0 6470 mul qword ptr [-104+rbp]
michael@0 6471 add rcx, rax
michael@0 6472 adc rdi, rdx
michael@0 6473 adc rsi, 0
michael@0 6474 mov rax, qword ptr [-392+rbp]
michael@0 6475 mul qword ptr [-112+rbp]
michael@0 6476 add rcx, rax
michael@0 6477 adc rdi, rdx
michael@0 6478 adc rsi, 0
michael@0 6479 mov rax, qword ptr [-384+rbp]
michael@0 6480 mul qword ptr [-120+rbp]
michael@0 6481 add rcx, rax
michael@0 6482 adc rdi, rdx
michael@0 6483 adc rsi, 0
michael@0 6484 mov rax, qword ptr [-376+rbp]
michael@0 6485 mul qword ptr [-128+rbp]
michael@0 6486 add rcx, rax
michael@0 6487 adc rdi, rdx
michael@0 6488 adc rsi, 0
michael@0 6489 mov rax, qword ptr [-368+rbp]
michael@0 6490 mul qword ptr [-136+rbp]
michael@0 6491 add rcx, rax
michael@0 6492 adc rdi, rdx
michael@0 6493 adc rsi, 0
michael@0 6494 mov rax, qword ptr [-360+rbp]
michael@0 6495 mul qword ptr [-144+rbp]
michael@0 6496 add rcx, rax
michael@0 6497 adc rdi, rdx
michael@0 6498 adc rsi, 0
michael@0 6499 mov rax, qword ptr [-352+rbp]
michael@0 6500 mul qword ptr [-152+rbp]
michael@0 6501 add rcx, rax
michael@0 6502 adc rdi, rdx
michael@0 6503 adc rsi, 0
michael@0 6504 mov rax, qword ptr [-344+rbp]
michael@0 6505 mul qword ptr [-160+rbp]
michael@0 6506 add rcx, rax
michael@0 6507 adc rdi, rdx
michael@0 6508 adc rsi, 0
michael@0 6509 mov rax, qword ptr [-336+rbp]
michael@0 6510 mul qword ptr [-168+rbp]
michael@0 6511 add rcx, rax
michael@0 6512 adc rdi, rdx
michael@0 6513 adc rsi, 0
michael@0 6514 mov rax, qword ptr [-328+rbp]
michael@0 6515 mul qword ptr [-176+rbp]
michael@0 6516 add rcx, rax
michael@0 6517 adc rdi, rdx
michael@0 6518 adc rsi, 0
michael@0 6519 mov rax, qword ptr [-320+rbp]
michael@0 6520 mul qword ptr [-184+rbp]
michael@0 6521 add rcx, rax
michael@0 6522 adc rdi, rdx
michael@0 6523 adc rsi, 0
michael@0 6524 mov rax, qword ptr [-312+rbp]
michael@0 6525 mul qword ptr [-192+rbp]
michael@0 6526 add rcx, rax
michael@0 6527 adc rdi, rdx
michael@0 6528 adc rsi, 0
michael@0 6529 mov rax, qword ptr [-304+rbp]
michael@0 6530 mul qword ptr [-200+rbp]
michael@0 6531 add rcx, rax
michael@0 6532 adc rdi, rdx
michael@0 6533 adc rsi, 0
michael@0 6534 mov r10, rdi
michael@0 6535 mov r11, rsi
michael@0 6536 mov rax, qword ptr [-296+rbp]
michael@0 6537 mul qword ptr [-208+rbp]
michael@0 6538 add rcx, rax
michael@0 6539 adc r10, rdx
michael@0 6540 adc r11, 0
michael@0 6541 mov qword ptr [328+r9], rcx
michael@0 6542 mov rdi, r11
michael@0 6543 mov r11, r10
michael@0 6544 mov r10, r8
michael@0 6545 mov rax, qword ptr [-456+rbp]
michael@0 6546 mul qword ptr [-40+rbp]
michael@0 6547 add r11, rax
michael@0 6548 adc rdi, rdx
michael@0 6549 adc r10, 0
michael@0 6550 mov rax, qword ptr [-448+rbp]
michael@0 6551 mul qword ptr [-48+rbp]
michael@0 6552 add r11, rax
michael@0 6553 adc rdi, rdx
michael@0 6554 adc r10, 0
michael@0 6555 mov rax, qword ptr [-440+rbp]
michael@0 6556 mul qword ptr [-56+rbp]
michael@0 6557 add r11, rax
michael@0 6558 adc rdi, rdx
michael@0 6559 adc r10, 0
michael@0 6560 mov rax, qword ptr [-432+rbp]
michael@0 6561 mul qword ptr [-64+rbp]
michael@0 6562 add r11, rax
michael@0 6563 adc rdi, rdx
michael@0 6564 adc r10, 0
michael@0 6565 mov rax, qword ptr [-424+rbp]
michael@0 6566 mul qword ptr [-72+rbp]
michael@0 6567 add r11, rax
michael@0 6568 adc rdi, rdx
michael@0 6569 adc r10, 0
michael@0 6570 mov rax, qword ptr [-416+rbp]
michael@0 6571 mul qword ptr [-80+rbp]
michael@0 6572 add r11, rax
michael@0 6573 adc rdi, rdx
michael@0 6574 adc r10, 0
michael@0 6575 mov rax, qword ptr [-408+rbp]
michael@0 6576 mul qword ptr [-88+rbp]
michael@0 6577 add r11, rax
michael@0 6578 adc rdi, rdx
michael@0 6579 adc r10, 0
michael@0 6580 mov rax, qword ptr [-400+rbp]
michael@0 6581 mul qword ptr [-96+rbp]
michael@0 6582 add r11, rax
michael@0 6583 adc rdi, rdx
michael@0 6584 adc r10, 0
michael@0 6585 mov rax, qword ptr [-392+rbp]
michael@0 6586 mul qword ptr [-104+rbp]
michael@0 6587 add r11, rax
michael@0 6588 adc rdi, rdx
michael@0 6589 adc r10, 0
michael@0 6590 mov rax, qword ptr [-384+rbp]
michael@0 6591 mul qword ptr [-112+rbp]
michael@0 6592 add r11, rax
michael@0 6593 adc rdi, rdx
michael@0 6594 adc r10, 0
michael@0 6595 mov rax, qword ptr [-376+rbp]
michael@0 6596 mul qword ptr [-120+rbp]
michael@0 6597 add r11, rax
michael@0 6598 adc rdi, rdx
michael@0 6599 adc r10, 0
michael@0 6600 mov rax, qword ptr [-368+rbp]
michael@0 6601 mul qword ptr [-128+rbp]
michael@0 6602 add r11, rax
michael@0 6603 adc rdi, rdx
michael@0 6604 adc r10, 0
michael@0 6605 mov rax, qword ptr [-360+rbp]
michael@0 6606 mul qword ptr [-136+rbp]
michael@0 6607 add r11, rax
michael@0 6608 adc rdi, rdx
michael@0 6609 adc r10, 0
michael@0 6610 mov rax, qword ptr [-352+rbp]
michael@0 6611 mul qword ptr [-144+rbp]
michael@0 6612 add r11, rax
michael@0 6613 adc rdi, rdx
michael@0 6614 adc r10, 0
michael@0 6615 mov rax, qword ptr [-344+rbp]
michael@0 6616 mul qword ptr [-152+rbp]
michael@0 6617 add r11, rax
michael@0 6618 adc rdi, rdx
michael@0 6619 adc r10, 0
michael@0 6620 mov rax, qword ptr [-336+rbp]
michael@0 6621 mul qword ptr [-160+rbp]
michael@0 6622 add r11, rax
michael@0 6623 adc rdi, rdx
michael@0 6624 adc r10, 0
michael@0 6625 mov rax, qword ptr [-328+rbp]
michael@0 6626 mul qword ptr [-168+rbp]
michael@0 6627 add r11, rax
michael@0 6628 adc rdi, rdx
michael@0 6629 adc r10, 0
michael@0 6630 mov rax, qword ptr [-320+rbp]
michael@0 6631 mul qword ptr [-176+rbp]
michael@0 6632 add r11, rax
michael@0 6633 adc rdi, rdx
michael@0 6634 adc r10, 0
michael@0 6635 mov rax, qword ptr [-312+rbp]
michael@0 6636 mul qword ptr [-184+rbp]
michael@0 6637 add r11, rax
michael@0 6638 adc rdi, rdx
michael@0 6639 adc r10, 0
michael@0 6640 mov rax, qword ptr [-304+rbp]
michael@0 6641 mul qword ptr [-192+rbp]
michael@0 6642 add r11, rax
michael@0 6643 adc rdi, rdx
michael@0 6644 adc r10, 0
michael@0 6645 mov rax, qword ptr [-296+rbp]
michael@0 6646 mul qword ptr [-200+rbp]
michael@0 6647 add r11, rax
michael@0 6648 adc rdi, rdx
michael@0 6649 adc r10, 0
michael@0 6650 mov qword ptr [336+r9], r11
michael@0 6651 mov rsi, r10
michael@0 6652 mov r10, r8
michael@0 6653 mov rax, qword ptr [-448+rbp]
michael@0 6654 mul qword ptr [-40+rbp]
michael@0 6655 add rdi, rax
michael@0 6656 adc rsi, rdx
michael@0 6657 adc r10, 0
michael@0 6658 mov rcx, r10
michael@0 6659 mov rax, qword ptr [-440+rbp]
michael@0 6660 mul qword ptr [-48+rbp]
michael@0 6661 add rdi, rax
michael@0 6662 adc rsi, rdx
michael@0 6663 adc rcx, 0
michael@0 6664 mov rax, qword ptr [-432+rbp]
michael@0 6665 mul qword ptr [-56+rbp]
michael@0 6666 add rdi, rax
michael@0 6667 adc rsi, rdx
michael@0 6668 adc rcx, 0
michael@0 6669 mov rax, qword ptr [-424+rbp]
michael@0 6670 mul qword ptr [-64+rbp]
michael@0 6671 add rdi, rax
michael@0 6672 adc rsi, rdx
michael@0 6673 adc rcx, 0
michael@0 6674 mov rax, qword ptr [-416+rbp]
michael@0 6675 mul qword ptr [-72+rbp]
michael@0 6676 add rdi, rax
michael@0 6677 adc rsi, rdx
michael@0 6678 adc rcx, 0
michael@0 6679 mov rax, qword ptr [-408+rbp]
michael@0 6680 mul qword ptr [-80+rbp]
michael@0 6681 add rdi, rax
michael@0 6682 adc rsi, rdx
michael@0 6683 adc rcx, 0
michael@0 6684 mov rax, qword ptr [-400+rbp]
michael@0 6685 mul qword ptr [-88+rbp]
michael@0 6686 add rdi, rax
michael@0 6687 adc rsi, rdx
michael@0 6688 adc rcx, 0
michael@0 6689 mov rax, qword ptr [-392+rbp]
michael@0 6690 mul qword ptr [-96+rbp]
michael@0 6691 add rdi, rax
michael@0 6692 adc rsi, rdx
michael@0 6693 adc rcx, 0
michael@0 6694 mov rax, qword ptr [-384+rbp]
michael@0 6695 mul qword ptr [-104+rbp]
michael@0 6696 add rdi, rax
michael@0 6697 adc rsi, rdx
michael@0 6698 adc rcx, 0
michael@0 6699 mov rax, qword ptr [-376+rbp]
michael@0 6700 mul qword ptr [-112+rbp]
michael@0 6701 add rdi, rax
michael@0 6702 adc rsi, rdx
michael@0 6703 adc rcx, 0
michael@0 6704 mov rax, qword ptr [-368+rbp]
michael@0 6705 mul qword ptr [-120+rbp]
michael@0 6706 add rdi, rax
michael@0 6707 adc rsi, rdx
michael@0 6708 adc rcx, 0
michael@0 6709 mov rax, qword ptr [-360+rbp]
michael@0 6710 mul qword ptr [-128+rbp]
michael@0 6711 add rdi, rax
michael@0 6712 adc rsi, rdx
michael@0 6713 adc rcx, 0
michael@0 6714 mov rax, qword ptr [-352+rbp]
michael@0 6715 mul qword ptr [-136+rbp]
michael@0 6716 add rdi, rax
michael@0 6717 adc rsi, rdx
michael@0 6718 adc rcx, 0
michael@0 6719 mov rax, qword ptr [-344+rbp]
michael@0 6720 mul qword ptr [-144+rbp]
michael@0 6721 add rdi, rax
michael@0 6722 adc rsi, rdx
michael@0 6723 adc rcx, 0
michael@0 6724 mov rax, qword ptr [-336+rbp]
michael@0 6725 mul qword ptr [-152+rbp]
michael@0 6726 add rdi, rax
michael@0 6727 adc rsi, rdx
michael@0 6728 adc rcx, 0
michael@0 6729 mov rax, qword ptr [-328+rbp]
michael@0 6730 mul qword ptr [-160+rbp]
michael@0 6731 add rdi, rax
michael@0 6732 adc rsi, rdx
michael@0 6733 adc rcx, 0
michael@0 6734 mov rax, qword ptr [-320+rbp]
michael@0 6735 mul qword ptr [-168+rbp]
michael@0 6736 add rdi, rax
michael@0 6737 adc rsi, rdx
michael@0 6738 adc rcx, 0
michael@0 6739 mov rax, qword ptr [-312+rbp]
michael@0 6740 mul qword ptr [-176+rbp]
michael@0 6741 add rdi, rax
michael@0 6742 adc rsi, rdx
michael@0 6743 adc rcx, 0
michael@0 6744 mov rax, qword ptr [-304+rbp]
michael@0 6745 mul qword ptr [-184+rbp]
michael@0 6746 add rdi, rax
michael@0 6747 adc rsi, rdx
michael@0 6748 adc rcx, 0
michael@0 6749 mov r11, rsi
michael@0 6750 mov r10, rcx
michael@0 6751 mov rax, qword ptr [-296+rbp]
michael@0 6752 mul qword ptr [-192+rbp]
michael@0 6753 add rdi, rax
michael@0 6754 adc r11, rdx
michael@0 6755 adc r10, 0
michael@0 6756 mov qword ptr [344+r9], rdi
michael@0 6757 mov rcx, r11
michael@0 6758 mov rdi, r10
michael@0 6759 mov r11, r8
michael@0 6760 mov rax, qword ptr [-440+rbp]
michael@0 6761 mul qword ptr [-40+rbp]
michael@0 6762 add rcx, rax
michael@0 6763 adc rdi, rdx
michael@0 6764 adc r11, 0
michael@0 6765 mov rsi, r11
michael@0 6766 mov rax, qword ptr [-432+rbp]
michael@0 6767 mul qword ptr [-48+rbp]
michael@0 6768 add rcx, rax
michael@0 6769 adc rdi, rdx
michael@0 6770 adc rsi, 0
michael@0 6771 mov rax, qword ptr [-424+rbp]
michael@0 6772 mul qword ptr [-56+rbp]
michael@0 6773 add rcx, rax
michael@0 6774 adc rdi, rdx
michael@0 6775 adc rsi, 0
michael@0 6776 mov rax, qword ptr [-416+rbp]
michael@0 6777 mul qword ptr [-64+rbp]
michael@0 6778 add rcx, rax
michael@0 6779 adc rdi, rdx
michael@0 6780 adc rsi, 0
michael@0 6781 mov rax, qword ptr [-408+rbp]
michael@0 6782 mul qword ptr [-72+rbp]
michael@0 6783 add rcx, rax
michael@0 6784 adc rdi, rdx
michael@0 6785 adc rsi, 0
michael@0 6786 mov rax, qword ptr [-400+rbp]
michael@0 6787 mul qword ptr [-80+rbp]
michael@0 6788 add rcx, rax
michael@0 6789 adc rdi, rdx
michael@0 6790 adc rsi, 0
michael@0 6791 mov rax, qword ptr [-392+rbp]
michael@0 6792 mul qword ptr [-88+rbp]
michael@0 6793 add rcx, rax
michael@0 6794 adc rdi, rdx
michael@0 6795 adc rsi, 0
michael@0 6796 mov rax, qword ptr [-384+rbp]
michael@0 6797 mul qword ptr [-96+rbp]
michael@0 6798 add rcx, rax
michael@0 6799 adc rdi, rdx
michael@0 6800 adc rsi, 0
michael@0 6801 mov rax, qword ptr [-376+rbp]
michael@0 6802 mul qword ptr [-104+rbp]
michael@0 6803 add rcx, rax
michael@0 6804 adc rdi, rdx
michael@0 6805 adc rsi, 0
michael@0 6806 mov rax, qword ptr [-368+rbp]
michael@0 6807 mul qword ptr [-112+rbp]
michael@0 6808 add rcx, rax
michael@0 6809 adc rdi, rdx
michael@0 6810 adc rsi, 0
michael@0 6811 mov rax, qword ptr [-360+rbp]
michael@0 6812 mul qword ptr [-120+rbp]
michael@0 6813 add rcx, rax
michael@0 6814 adc rdi, rdx
michael@0 6815 adc rsi, 0
michael@0 6816 mov rax, qword ptr [-352+rbp]
michael@0 6817 mul qword ptr [-128+rbp]
michael@0 6818 add rcx, rax
michael@0 6819 adc rdi, rdx
michael@0 6820 adc rsi, 0
michael@0 6821 mov rax, qword ptr [-344+rbp]
michael@0 6822 mul qword ptr [-136+rbp]
michael@0 6823 add rcx, rax
michael@0 6824 adc rdi, rdx
michael@0 6825 adc rsi, 0
michael@0 6826 mov rax, qword ptr [-336+rbp]
michael@0 6827 mul qword ptr [-144+rbp]
michael@0 6828 add rcx, rax
michael@0 6829 adc rdi, rdx
michael@0 6830 adc rsi, 0
michael@0 6831 mov rax, qword ptr [-328+rbp]
michael@0 6832 mul qword ptr [-152+rbp]
michael@0 6833 add rcx, rax
michael@0 6834 adc rdi, rdx
michael@0 6835 adc rsi, 0
michael@0 6836 mov rax, qword ptr [-320+rbp]
michael@0 6837 mul qword ptr [-160+rbp]
michael@0 6838 add rcx, rax
michael@0 6839 adc rdi, rdx
michael@0 6840 adc rsi, 0
michael@0 6841 mov rax, qword ptr [-312+rbp]
michael@0 6842 mul qword ptr [-168+rbp]
michael@0 6843 add rcx, rax
michael@0 6844 adc rdi, rdx
michael@0 6845 adc rsi, 0
michael@0 6846 mov rax, qword ptr [-304+rbp]
michael@0 6847 mul qword ptr [-176+rbp]
michael@0 6848 add rcx, rax
michael@0 6849 adc rdi, rdx
michael@0 6850 adc rsi, 0
michael@0 6851 mov r10, rdi
michael@0 6852 mov r11, rsi
michael@0 6853 mov rax, qword ptr [-296+rbp]
michael@0 6854 mul qword ptr [-184+rbp]
michael@0 6855 add rcx, rax
michael@0 6856 adc r10, rdx
michael@0 6857 adc r11, 0
michael@0 6858 mov qword ptr [352+r9], rcx
michael@0 6859 mov rdi, r11
michael@0 6860 mov rsi, r10
michael@0 6861 mov rcx, r8
michael@0 6862 mov rax, qword ptr [-432+rbp]
michael@0 6863 mul qword ptr [-40+rbp]
michael@0 6864 add rsi, rax
michael@0 6865 adc rdi, rdx
michael@0 6866 adc rcx, 0
michael@0 6867 mov rax, qword ptr [-424+rbp]
michael@0 6868 mul qword ptr [-48+rbp]
michael@0 6869 add rsi, rax
michael@0 6870 adc rdi, rdx
michael@0 6871 adc rcx, 0
michael@0 6872 mov rax, qword ptr [-416+rbp]
michael@0 6873 mul qword ptr [-56+rbp]
michael@0 6874 add rsi, rax
michael@0 6875 adc rdi, rdx
michael@0 6876 adc rcx, 0
michael@0 6877 mov rax, qword ptr [-408+rbp]
michael@0 6878 mul qword ptr [-64+rbp]
michael@0 6879 add rsi, rax
michael@0 6880 adc rdi, rdx
michael@0 6881 adc rcx, 0
michael@0 6882 mov rax, qword ptr [-400+rbp]
michael@0 6883 mul qword ptr [-72+rbp]
michael@0 6884 add rsi, rax
michael@0 6885 adc rdi, rdx
michael@0 6886 adc rcx, 0
michael@0 6887 mov rax, qword ptr [-392+rbp]
michael@0 6888 mul qword ptr [-80+rbp]
michael@0 6889 add rsi, rax
michael@0 6890 adc rdi, rdx
michael@0 6891 adc rcx, 0
michael@0 6892 mov rax, qword ptr [-384+rbp]
michael@0 6893 mul qword ptr [-88+rbp]
michael@0 6894 add rsi, rax
michael@0 6895 adc rdi, rdx
michael@0 6896 adc rcx, 0
michael@0 6897 mov rax, qword ptr [-376+rbp]
michael@0 6898 mul qword ptr [-96+rbp]
michael@0 6899 add rsi, rax
michael@0 6900 adc rdi, rdx
michael@0 6901 adc rcx, 0
michael@0 6902 mov rax, qword ptr [-368+rbp]
michael@0 6903 mul qword ptr [-104+rbp]
michael@0 6904 add rsi, rax
michael@0 6905 adc rdi, rdx
michael@0 6906 adc rcx, 0
michael@0 6907 mov rax, qword ptr [-360+rbp]
michael@0 6908 mul qword ptr [-112+rbp]
michael@0 6909 add rsi, rax
michael@0 6910 adc rdi, rdx
michael@0 6911 adc rcx, 0
michael@0 6912 mov rax, qword ptr [-352+rbp]
michael@0 6913 mul qword ptr [-120+rbp]
michael@0 6914 add rsi, rax
michael@0 6915 adc rdi, rdx
michael@0 6916 adc rcx, 0
michael@0 6917 mov rax, qword ptr [-344+rbp]
michael@0 6918 mul qword ptr [-128+rbp]
michael@0 6919 add rsi, rax
michael@0 6920 adc rdi, rdx
michael@0 6921 adc rcx, 0
michael@0 6922 mov rax, qword ptr [-336+rbp]
michael@0 6923 mul qword ptr [-136+rbp]
michael@0 6924 add rsi, rax
michael@0 6925 adc rdi, rdx
michael@0 6926 adc rcx, 0
michael@0 6927 mov rax, qword ptr [-328+rbp]
michael@0 6928 mul qword ptr [-144+rbp]
michael@0 6929 add rsi, rax
michael@0 6930 adc rdi, rdx
michael@0 6931 adc rcx, 0
michael@0 6932 mov rax, qword ptr [-320+rbp]
michael@0 6933 mul qword ptr [-152+rbp]
michael@0 6934 add rsi, rax
michael@0 6935 adc rdi, rdx
michael@0 6936 adc rcx, 0
michael@0 6937 mov rax, qword ptr [-312+rbp]
michael@0 6938 mul qword ptr [-160+rbp]
michael@0 6939 add rsi, rax
michael@0 6940 adc rdi, rdx
michael@0 6941 adc rcx, 0
michael@0 6942 mov rax, qword ptr [-304+rbp]
michael@0 6943 mul qword ptr [-168+rbp]
michael@0 6944 add rsi, rax
michael@0 6945 adc rdi, rdx
michael@0 6946 adc rcx, 0
michael@0 6947 mov r10, rdi
michael@0 6948 mov r11, rcx
michael@0 6949 mov rax, qword ptr [-296+rbp]
michael@0 6950 mul qword ptr [-176+rbp]
michael@0 6951 add rsi, rax
michael@0 6952 adc r10, rdx
michael@0 6953 adc r11, 0
michael@0 6954 mov qword ptr [360+r9], rsi
michael@0 6955 mov rdi, r11
michael@0 6956 mov rcx, r10
michael@0 6957 mov rsi, r8
michael@0 6958 mov rax, qword ptr [-424+rbp]
michael@0 6959 mul qword ptr [-40+rbp]
michael@0 6960 add rcx, rax
michael@0 6961 adc rdi, rdx
michael@0 6962 adc rsi, 0
michael@0 6963 mov rax, qword ptr [-416+rbp]
michael@0 6964 mul qword ptr [-48+rbp]
michael@0 6965 add rcx, rax
michael@0 6966 adc rdi, rdx
michael@0 6967 adc rsi, 0
michael@0 6968 mov rax, qword ptr [-408+rbp]
michael@0 6969 mul qword ptr [-56+rbp]
michael@0 6970 add rcx, rax
michael@0 6971 adc rdi, rdx
michael@0 6972 adc rsi, 0
michael@0 6973 mov rax, qword ptr [-400+rbp]
michael@0 6974 mul qword ptr [-64+rbp]
michael@0 6975 add rcx, rax
michael@0 6976 adc rdi, rdx
michael@0 6977 adc rsi, 0
michael@0 6978 mov rax, qword ptr [-392+rbp]
michael@0 6979 mul qword ptr [-72+rbp]
michael@0 6980 add rcx, rax
michael@0 6981 adc rdi, rdx
michael@0 6982 adc rsi, 0
michael@0 6983 mov rax, qword ptr [-384+rbp]
michael@0 6984 mul qword ptr [-80+rbp]
michael@0 6985 add rcx, rax
michael@0 6986 adc rdi, rdx
michael@0 6987 adc rsi, 0
michael@0 6988 mov rax, qword ptr [-376+rbp]
michael@0 6989 mul qword ptr [-88+rbp]
michael@0 6990 add rcx, rax
michael@0 6991 adc rdi, rdx
michael@0 6992 adc rsi, 0
michael@0 6993 mov rax, qword ptr [-368+rbp]
michael@0 6994 mul qword ptr [-96+rbp]
michael@0 6995 add rcx, rax
michael@0 6996 adc rdi, rdx
michael@0 6997 adc rsi, 0
michael@0 6998 mov rax, qword ptr [-360+rbp]
michael@0 6999 mul qword ptr [-104+rbp]
michael@0 7000 add rcx, rax
michael@0 7001 adc rdi, rdx
michael@0 7002 adc rsi, 0
michael@0 7003 mov rax, qword ptr [-352+rbp]
michael@0 7004 mul qword ptr [-112+rbp]
michael@0 7005 add rcx, rax
michael@0 7006 adc rdi, rdx
michael@0 7007 adc rsi, 0
michael@0 7008 mov rax, qword ptr [-344+rbp]
michael@0 7009 mul qword ptr [-120+rbp]
michael@0 7010 add rcx, rax
michael@0 7011 adc rdi, rdx
michael@0 7012 adc rsi, 0
michael@0 7013 mov rax, qword ptr [-336+rbp]
michael@0 7014 mul qword ptr [-128+rbp]
michael@0 7015 add rcx, rax
michael@0 7016 adc rdi, rdx
michael@0 7017 adc rsi, 0
michael@0 7018 mov rax, qword ptr [-328+rbp]
michael@0 7019 mul qword ptr [-136+rbp]
michael@0 7020 add rcx, rax
michael@0 7021 adc rdi, rdx
michael@0 7022 adc rsi, 0
michael@0 7023 mov rax, qword ptr [-320+rbp]
michael@0 7024 mul qword ptr [-144+rbp]
michael@0 7025 add rcx, rax
michael@0 7026 adc rdi, rdx
michael@0 7027 adc rsi, 0
michael@0 7028 mov rax, qword ptr [-312+rbp]
michael@0 7029 mul qword ptr [-152+rbp]
michael@0 7030 add rcx, rax
michael@0 7031 adc rdi, rdx
michael@0 7032 adc rsi, 0
michael@0 7033 mov rax, qword ptr [-304+rbp]
michael@0 7034 mul qword ptr [-160+rbp]
michael@0 7035 add rcx, rax
michael@0 7036 adc rdi, rdx
michael@0 7037 adc rsi, 0
michael@0 7038 mov r10, rdi
michael@0 7039 mov r11, rsi
michael@0 7040 mov rax, qword ptr [-296+rbp]
michael@0 7041 mul qword ptr [-168+rbp]
michael@0 7042 add rcx, rax
michael@0 7043 adc r10, rdx
michael@0 7044 adc r11, 0
michael@0 7045 mov qword ptr [368+r9], rcx
michael@0 7046 mov rdi, r11
michael@0 7047 mov rsi, r10
michael@0 7048 mov rcx, r8
michael@0 7049 mov rax, qword ptr [-416+rbp]
michael@0 7050 mul qword ptr [-40+rbp]
michael@0 7051 add rsi, rax
michael@0 7052 adc rdi, rdx
michael@0 7053 adc rcx, 0
michael@0 7054 mov rax, qword ptr [-408+rbp]
michael@0 7055 mul qword ptr [-48+rbp]
michael@0 7056 add rsi, rax
michael@0 7057 adc rdi, rdx
michael@0 7058 adc rcx, 0
michael@0 7059 mov rax, qword ptr [-400+rbp]
michael@0 7060 mul qword ptr [-56+rbp]
michael@0 7061 add rsi, rax
michael@0 7062 adc rdi, rdx
michael@0 7063 adc rcx, 0
michael@0 7064 mov rax, qword ptr [-392+rbp]
michael@0 7065 mul qword ptr [-64+rbp]
michael@0 7066 add rsi, rax
michael@0 7067 adc rdi, rdx
michael@0 7068 adc rcx, 0
michael@0 7069 mov rax, qword ptr [-384+rbp]
michael@0 7070 mul qword ptr [-72+rbp]
michael@0 7071 add rsi, rax
michael@0 7072 adc rdi, rdx
michael@0 7073 adc rcx, 0
michael@0 7074 mov rax, qword ptr [-376+rbp]
michael@0 7075 mul qword ptr [-80+rbp]
michael@0 7076 add rsi, rax
michael@0 7077 adc rdi, rdx
michael@0 7078 adc rcx, 0
michael@0 7079 mov rax, qword ptr [-368+rbp]
michael@0 7080 mul qword ptr [-88+rbp]
michael@0 7081 add rsi, rax
michael@0 7082 adc rdi, rdx
michael@0 7083 adc rcx, 0
michael@0 7084 mov rax, qword ptr [-360+rbp]
michael@0 7085 mul qword ptr [-96+rbp]
michael@0 7086 add rsi, rax
michael@0 7087 adc rdi, rdx
michael@0 7088 adc rcx, 0
michael@0 7089 mov rax, qword ptr [-352+rbp]
michael@0 7090 mul qword ptr [-104+rbp]
michael@0 7091 add rsi, rax
michael@0 7092 adc rdi, rdx
michael@0 7093 adc rcx, 0
michael@0 7094 mov rax, qword ptr [-344+rbp]
michael@0 7095 mul qword ptr [-112+rbp]
michael@0 7096 add rsi, rax
michael@0 7097 adc rdi, rdx
michael@0 7098 adc rcx, 0
michael@0 7099 mov rax, qword ptr [-336+rbp]
michael@0 7100 mul qword ptr [-120+rbp]
michael@0 7101 add rsi, rax
michael@0 7102 adc rdi, rdx
michael@0 7103 adc rcx, 0
michael@0 7104 mov rax, qword ptr [-328+rbp]
michael@0 7105 mul qword ptr [-128+rbp]
michael@0 7106 add rsi, rax
michael@0 7107 adc rdi, rdx
michael@0 7108 adc rcx, 0
michael@0 7109 mov rax, qword ptr [-320+rbp]
michael@0 7110 mul qword ptr [-136+rbp]
michael@0 7111 add rsi, rax
michael@0 7112 adc rdi, rdx
michael@0 7113 adc rcx, 0
michael@0 7114 mov rax, qword ptr [-312+rbp]
michael@0 7115 mul qword ptr [-144+rbp]
michael@0 7116 add rsi, rax
michael@0 7117 adc rdi, rdx
michael@0 7118 adc rcx, 0
michael@0 7119 mov rax, qword ptr [-304+rbp]
michael@0 7120 mul qword ptr [-152+rbp]
michael@0 7121 add rsi, rax
michael@0 7122 adc rdi, rdx
michael@0 7123 adc rcx, 0
michael@0 7124 mov r10, rdi
michael@0 7125 mov r11, rcx
michael@0 7126 mov rax, qword ptr [-296+rbp]
michael@0 7127 mul qword ptr [-160+rbp]
michael@0 7128 add rsi, rax
michael@0 7129 adc r10, rdx
michael@0 7130 adc r11, 0
michael@0 7131 mov qword ptr [376+r9], rsi
michael@0 7132 mov rdi, r11
michael@0 7133 mov rcx, r10
michael@0 7134 mov rsi, r8
michael@0 7135 mov rax, qword ptr [-408+rbp]
michael@0 7136 mul qword ptr [-40+rbp]
michael@0 7137 add rcx, rax
michael@0 7138 adc rdi, rdx
michael@0 7139 adc rsi, 0
michael@0 7140 mov rax, qword ptr [-400+rbp]
michael@0 7141 mul qword ptr [-48+rbp]
michael@0 7142 add rcx, rax
michael@0 7143 adc rdi, rdx
michael@0 7144 adc rsi, 0
michael@0 7145 mov rax, qword ptr [-392+rbp]
michael@0 7146 mul qword ptr [-56+rbp]
michael@0 7147 add rcx, rax
michael@0 7148 adc rdi, rdx
michael@0 7149 adc rsi, 0
michael@0 7150 mov rax, qword ptr [-384+rbp]
michael@0 7151 mul qword ptr [-64+rbp]
michael@0 7152 add rcx, rax
michael@0 7153 adc rdi, rdx
michael@0 7154 adc rsi, 0
michael@0 7155 mov rax, qword ptr [-376+rbp]
michael@0 7156 mul qword ptr [-72+rbp]
michael@0 7157 add rcx, rax
michael@0 7158 adc rdi, rdx
michael@0 7159 adc rsi, 0
michael@0 7160 mov rax, qword ptr [-368+rbp]
michael@0 7161 mul qword ptr [-80+rbp]
michael@0 7162 add rcx, rax
michael@0 7163 adc rdi, rdx
michael@0 7164 adc rsi, 0
michael@0 7165 mov rax, qword ptr [-360+rbp]
michael@0 7166 mul qword ptr [-88+rbp]
michael@0 7167 add rcx, rax
michael@0 7168 adc rdi, rdx
michael@0 7169 adc rsi, 0
michael@0 7170 mov rax, qword ptr [-352+rbp]
michael@0 7171 mul qword ptr [-96+rbp]
michael@0 7172 add rcx, rax
michael@0 7173 adc rdi, rdx
michael@0 7174 adc rsi, 0
michael@0 7175 mov rax, qword ptr [-344+rbp]
michael@0 7176 mul qword ptr [-104+rbp]
michael@0 7177 add rcx, rax
michael@0 7178 adc rdi, rdx
michael@0 7179 adc rsi, 0
michael@0 7180 mov rax, qword ptr [-336+rbp]
michael@0 7181 mul qword ptr [-112+rbp]
michael@0 7182 add rcx, rax
michael@0 7183 adc rdi, rdx
michael@0 7184 adc rsi, 0
michael@0 7185 mov rax, qword ptr [-328+rbp]
michael@0 7186 mul qword ptr [-120+rbp]
michael@0 7187 add rcx, rax
michael@0 7188 adc rdi, rdx
michael@0 7189 adc rsi, 0
michael@0 7190 mov rax, qword ptr [-320+rbp]
michael@0 7191 mul qword ptr [-128+rbp]
michael@0 7192 add rcx, rax
michael@0 7193 adc rdi, rdx
michael@0 7194 adc rsi, 0
michael@0 7195 mov rax, qword ptr [-312+rbp]
michael@0 7196 mul qword ptr [-136+rbp]
michael@0 7197 add rcx, rax
michael@0 7198 adc rdi, rdx
michael@0 7199 adc rsi, 0
michael@0 7200 mov rax, qword ptr [-304+rbp]
michael@0 7201 mul qword ptr [-144+rbp]
michael@0 7202 add rcx, rax
michael@0 7203 adc rdi, rdx
michael@0 7204 adc rsi, 0
michael@0 7205 mov r10, rdi
michael@0 7206 mov r11, rsi
michael@0 7207 mov rax, qword ptr [-296+rbp]
michael@0 7208 mul qword ptr [-152+rbp]
michael@0 7209 add rcx, rax
michael@0 7210 adc r10, rdx
michael@0 7211 adc r11, 0
michael@0 7212 mov qword ptr [384+r9], rcx
michael@0 7213 mov rdi, r11
michael@0 7214 mov rsi, r10
michael@0 7215 mov rcx, r8
michael@0 7216 mov rax, qword ptr [-400+rbp]
michael@0 7217 mul qword ptr [-40+rbp]
michael@0 7218 add rsi, rax
michael@0 7219 adc rdi, rdx
michael@0 7220 adc rcx, 0
michael@0 7221 mov rax, qword ptr [-392+rbp]
michael@0 7222 mul qword ptr [-48+rbp]
michael@0 7223 add rsi, rax
michael@0 7224 adc rdi, rdx
michael@0 7225 adc rcx, 0
michael@0 7226 mov rax, qword ptr [-384+rbp]
michael@0 7227 mul qword ptr [-56+rbp]
michael@0 7228 add rsi, rax
michael@0 7229 adc rdi, rdx
michael@0 7230 adc rcx, 0
michael@0 7231 mov rax, qword ptr [-376+rbp]
michael@0 7232 mul qword ptr [-64+rbp]
michael@0 7233 add rsi, rax
michael@0 7234 adc rdi, rdx
michael@0 7235 adc rcx, 0
michael@0 7236 mov rax, qword ptr [-368+rbp]
michael@0 7237 mul qword ptr [-72+rbp]
michael@0 7238 add rsi, rax
michael@0 7239 adc rdi, rdx
michael@0 7240 adc rcx, 0
michael@0 7241 mov rax, qword ptr [-360+rbp]
michael@0 7242 mul qword ptr [-80+rbp]
michael@0 7243 add rsi, rax
michael@0 7244 adc rdi, rdx
michael@0 7245 adc rcx, 0
michael@0 7246 mov rax, qword ptr [-352+rbp]
michael@0 7247 mul qword ptr [-88+rbp]
michael@0 7248 add rsi, rax
michael@0 7249 adc rdi, rdx
michael@0 7250 adc rcx, 0
michael@0 7251 mov rax, qword ptr [-344+rbp]
michael@0 7252 mul qword ptr [-96+rbp]
michael@0 7253 add rsi, rax
michael@0 7254 adc rdi, rdx
michael@0 7255 adc rcx, 0
michael@0 7256 mov rax, qword ptr [-336+rbp]
michael@0 7257 mul qword ptr [-104+rbp]
michael@0 7258 add rsi, rax
michael@0 7259 adc rdi, rdx
michael@0 7260 adc rcx, 0
michael@0 7261 mov rax, qword ptr [-328+rbp]
michael@0 7262 mul qword ptr [-112+rbp]
michael@0 7263 add rsi, rax
michael@0 7264 adc rdi, rdx
michael@0 7265 adc rcx, 0
michael@0 7266 mov rax, qword ptr [-320+rbp]
michael@0 7267 mul qword ptr [-120+rbp]
michael@0 7268 add rsi, rax
michael@0 7269 adc rdi, rdx
michael@0 7270 adc rcx, 0
michael@0 7271 mov rax, qword ptr [-312+rbp]
michael@0 7272 mul qword ptr [-128+rbp]
michael@0 7273 add rsi, rax
michael@0 7274 adc rdi, rdx
michael@0 7275 adc rcx, 0
michael@0 7276 mov rax, qword ptr [-304+rbp]
michael@0 7277 mul qword ptr [-136+rbp]
michael@0 7278 add rsi, rax
michael@0 7279 adc rdi, rdx
michael@0 7280 adc rcx, 0
michael@0 7281 mov r10, rdi
michael@0 7282 mov r11, rcx
michael@0 7283 mov rax, qword ptr [-296+rbp]
michael@0 7284 mul qword ptr [-144+rbp]
michael@0 7285 add rsi, rax
michael@0 7286 adc r10, rdx
michael@0 7287 adc r11, 0
michael@0 7288 mov qword ptr [392+r9], rsi
michael@0 7289 mov rdi, r11
michael@0 7290 mov rcx, r10
michael@0 7291 mov rsi, r8
michael@0 7292 mov rax, qword ptr [-392+rbp]
michael@0 7293 mul qword ptr [-40+rbp]
michael@0 7294 add rcx, rax
michael@0 7295 adc rdi, rdx
michael@0 7296 adc rsi, 0
michael@0 7297 mov rax, qword ptr [-384+rbp]
michael@0 7298 mul qword ptr [-48+rbp]
michael@0 7299 add rcx, rax
michael@0 7300 adc rdi, rdx
michael@0 7301 adc rsi, 0
michael@0 7302 mov rax, qword ptr [-376+rbp]
michael@0 7303 mul qword ptr [-56+rbp]
michael@0 7304 add rcx, rax
michael@0 7305 adc rdi, rdx
michael@0 7306 adc rsi, 0
michael@0 7307 mov rax, qword ptr [-368+rbp]
michael@0 7308 mul qword ptr [-64+rbp]
michael@0 7309 add rcx, rax
michael@0 7310 adc rdi, rdx
michael@0 7311 adc rsi, 0
michael@0 7312 mov rax, qword ptr [-360+rbp]
michael@0 7313 mul qword ptr [-72+rbp]
michael@0 7314 add rcx, rax
michael@0 7315 adc rdi, rdx
michael@0 7316 adc rsi, 0
michael@0 7317 mov rax, qword ptr [-352+rbp]
michael@0 7318 mul qword ptr [-80+rbp]
michael@0 7319 add rcx, rax
michael@0 7320 adc rdi, rdx
michael@0 7321 adc rsi, 0
michael@0 7322 mov rax, qword ptr [-344+rbp]
michael@0 7323 mul qword ptr [-88+rbp]
michael@0 7324 add rcx, rax
michael@0 7325 adc rdi, rdx
michael@0 7326 adc rsi, 0
michael@0 7327 mov rax, qword ptr [-336+rbp]
michael@0 7328 mul qword ptr [-96+rbp]
michael@0 7329 add rcx, rax
michael@0 7330 adc rdi, rdx
michael@0 7331 adc rsi, 0
michael@0 7332 mov rax, qword ptr [-328+rbp]
michael@0 7333 mul qword ptr [-104+rbp]
michael@0 7334 add rcx, rax
michael@0 7335 adc rdi, rdx
michael@0 7336 adc rsi, 0
michael@0 7337 mov rax, qword ptr [-320+rbp]
michael@0 7338 mul qword ptr [-112+rbp]
michael@0 7339 add rcx, rax
michael@0 7340 adc rdi, rdx
michael@0 7341 adc rsi, 0
michael@0 7342 mov rax, qword ptr [-312+rbp]
michael@0 7343 mul qword ptr [-120+rbp]
michael@0 7344 add rcx, rax
michael@0 7345 adc rdi, rdx
michael@0 7346 adc rsi, 0
michael@0 7347 mov rax, qword ptr [-304+rbp]
michael@0 7348 mul qword ptr [-128+rbp]
michael@0 7349 add rcx, rax
michael@0 7350 adc rdi, rdx
michael@0 7351 adc rsi, 0
michael@0 7352 mov r10, rdi
michael@0 7353 mov r11, rsi
michael@0 7354 mov rax, qword ptr [-296+rbp]
michael@0 7355 mul qword ptr [-136+rbp]
michael@0 7356 add rcx, rax
michael@0 7357 adc r10, rdx
michael@0 7358 adc r11, 0
michael@0 7359 mov qword ptr [400+r9], rcx
michael@0 7360 mov rdi, r11
michael@0 7361 mov rsi, r10
michael@0 7362 mov rcx, r8
michael@0 7363 mov rax, qword ptr [-384+rbp]
michael@0 7364 mul qword ptr [-40+rbp]
michael@0 7365 add rsi, rax
michael@0 7366 adc rdi, rdx
michael@0 7367 adc rcx, 0
michael@0 7368 mov rax, qword ptr [-376+rbp]
michael@0 7369 mul qword ptr [-48+rbp]
michael@0 7370 add rsi, rax
michael@0 7371 adc rdi, rdx
michael@0 7372 adc rcx, 0
michael@0 7373 mov rax, qword ptr [-368+rbp]
michael@0 7374 mul qword ptr [-56+rbp]
michael@0 7375 add rsi, rax
michael@0 7376 adc rdi, rdx
michael@0 7377 adc rcx, 0
michael@0 7378 mov rax, qword ptr [-360+rbp]
michael@0 7379 mul qword ptr [-64+rbp]
michael@0 7380 add rsi, rax
michael@0 7381 adc rdi, rdx
michael@0 7382 adc rcx, 0
michael@0 7383 mov rax, qword ptr [-352+rbp]
michael@0 7384 mul qword ptr [-72+rbp]
michael@0 7385 add rsi, rax
michael@0 7386 adc rdi, rdx
michael@0 7387 adc rcx, 0
michael@0 7388 mov rax, qword ptr [-344+rbp]
michael@0 7389 mul qword ptr [-80+rbp]
michael@0 7390 add rsi, rax
michael@0 7391 adc rdi, rdx
michael@0 7392 adc rcx, 0
michael@0 7393 mov rax, qword ptr [-336+rbp]
michael@0 7394 mul qword ptr [-88+rbp]
michael@0 7395 add rsi, rax
michael@0 7396 adc rdi, rdx
michael@0 7397 adc rcx, 0
michael@0 7398 mov rax, qword ptr [-328+rbp]
michael@0 7399 mul qword ptr [-96+rbp]
michael@0 7400 add rsi, rax
michael@0 7401 adc rdi, rdx
michael@0 7402 adc rcx, 0
michael@0 7403 mov rax, qword ptr [-320+rbp]
michael@0 7404 mul qword ptr [-104+rbp]
michael@0 7405 add rsi, rax
michael@0 7406 adc rdi, rdx
michael@0 7407 adc rcx, 0
michael@0 7408 mov rax, qword ptr [-312+rbp]
michael@0 7409 mul qword ptr [-112+rbp]
michael@0 7410 add rsi, rax
michael@0 7411 adc rdi, rdx
michael@0 7412 adc rcx, 0
michael@0 7413 mov rax, qword ptr [-304+rbp]
michael@0 7414 mul qword ptr [-120+rbp]
michael@0 7415 add rsi, rax
michael@0 7416 adc rdi, rdx
michael@0 7417 adc rcx, 0
michael@0 7418 mov r10, rdi
michael@0 7419 mov r11, rcx
michael@0 7420 mov rax, qword ptr [-296+rbp]
michael@0 7421 mul qword ptr [-128+rbp]
michael@0 7422 add rsi, rax
michael@0 7423 adc r10, rdx
michael@0 7424 adc r11, 0
michael@0 7425 mov qword ptr [408+r9], rsi
michael@0 7426 mov rdi, r11
michael@0 7427 mov rcx, r10
michael@0 7428 mov rsi, r8
michael@0 7429 mov rax, qword ptr [-376+rbp]
michael@0 7430 mul qword ptr [-40+rbp]
michael@0 7431 add rcx, rax
michael@0 7432 adc rdi, rdx
michael@0 7433 adc rsi, 0
michael@0 7434 mov rax, qword ptr [-368+rbp]
michael@0 7435 mul qword ptr [-48+rbp]
michael@0 7436 add rcx, rax
michael@0 7437 adc rdi, rdx
michael@0 7438 adc rsi, 0
michael@0 7439 mov rax, qword ptr [-360+rbp]
michael@0 7440 mul qword ptr [-56+rbp]
michael@0 7441 add rcx, rax
michael@0 7442 adc rdi, rdx
michael@0 7443 adc rsi, 0
michael@0 7444 mov rax, qword ptr [-352+rbp]
michael@0 7445 mul qword ptr [-64+rbp]
michael@0 7446 add rcx, rax
michael@0 7447 adc rdi, rdx
michael@0 7448 adc rsi, 0
michael@0 7449 mov rax, qword ptr [-344+rbp]
michael@0 7450 mul qword ptr [-72+rbp]
michael@0 7451 add rcx, rax
michael@0 7452 adc rdi, rdx
michael@0 7453 adc rsi, 0
michael@0 7454 mov rax, qword ptr [-336+rbp]
michael@0 7455 mul qword ptr [-80+rbp]
michael@0 7456 add rcx, rax
michael@0 7457 adc rdi, rdx
michael@0 7458 adc rsi, 0
michael@0 7459 mov rax, qword ptr [-328+rbp]
michael@0 7460 mul qword ptr [-88+rbp]
michael@0 7461 add rcx, rax
michael@0 7462 adc rdi, rdx
michael@0 7463 adc rsi, 0
michael@0 7464 mov rax, qword ptr [-320+rbp]
michael@0 7465 mul qword ptr [-96+rbp]
michael@0 7466 add rcx, rax
michael@0 7467 adc rdi, rdx
michael@0 7468 adc rsi, 0
michael@0 7469 mov rax, qword ptr [-312+rbp]
michael@0 7470 mul qword ptr [-104+rbp]
michael@0 7471 add rcx, rax
michael@0 7472 adc rdi, rdx
michael@0 7473 adc rsi, 0
michael@0 7474 mov rax, qword ptr [-304+rbp]
michael@0 7475 mul qword ptr [-112+rbp]
michael@0 7476 add rcx, rax
michael@0 7477 adc rdi, rdx
michael@0 7478 adc rsi, 0
michael@0 7479 mov r10, rdi
michael@0 7480 mov r11, rsi
michael@0 7481 mov rax, qword ptr [-296+rbp]
michael@0 7482 mul qword ptr [-120+rbp]
michael@0 7483 add rcx, rax
michael@0 7484 adc r10, rdx
michael@0 7485 adc r11, 0
michael@0 7486 mov qword ptr [416+r9], rcx
michael@0 7487 mov rdi, r11
michael@0 7488 mov rsi, r10
michael@0 7489 mov rcx, r8
michael@0 7490 mov rax, qword ptr [-368+rbp]
michael@0 7491 mul qword ptr [-40+rbp]
michael@0 7492 add rsi, rax
michael@0 7493 adc rdi, rdx
michael@0 7494 adc rcx, 0
michael@0 7495 mov rax, qword ptr [-360+rbp]
michael@0 7496 mul qword ptr [-48+rbp]
michael@0 7497 add rsi, rax
michael@0 7498 adc rdi, rdx
michael@0 7499 adc rcx, 0
michael@0 7500 mov rax, qword ptr [-352+rbp]
michael@0 7501 mul qword ptr [-56+rbp]
michael@0 7502 add rsi, rax
michael@0 7503 adc rdi, rdx
michael@0 7504 adc rcx, 0
michael@0 7505 mov rax, qword ptr [-344+rbp]
michael@0 7506 mul qword ptr [-64+rbp]
michael@0 7507 add rsi, rax
michael@0 7508 adc rdi, rdx
michael@0 7509 adc rcx, 0
michael@0 7510 mov rax, qword ptr [-336+rbp]
michael@0 7511 mul qword ptr [-72+rbp]
michael@0 7512 add rsi, rax
michael@0 7513 adc rdi, rdx
michael@0 7514 adc rcx, 0
michael@0 7515 mov rax, qword ptr [-328+rbp]
michael@0 7516 mul qword ptr [-80+rbp]
michael@0 7517 add rsi, rax
michael@0 7518 adc rdi, rdx
michael@0 7519 adc rcx, 0
michael@0 7520 mov rax, qword ptr [-320+rbp]
michael@0 7521 mul qword ptr [-88+rbp]
michael@0 7522 add rsi, rax
michael@0 7523 adc rdi, rdx
michael@0 7524 adc rcx, 0
michael@0 7525 mov rax, qword ptr [-312+rbp]
michael@0 7526 mul qword ptr [-96+rbp]
michael@0 7527 add rsi, rax
michael@0 7528 adc rdi, rdx
michael@0 7529 adc rcx, 0
michael@0 7530 mov rax, qword ptr [-304+rbp]
michael@0 7531 mul qword ptr [-104+rbp]
michael@0 7532 add rsi, rax
michael@0 7533 adc rdi, rdx
michael@0 7534 adc rcx, 0
michael@0 7535 mov r10, rdi
michael@0 7536 mov r11, rcx
michael@0 7537 mov rax, qword ptr [-296+rbp]
michael@0 7538 mul qword ptr [-112+rbp]
michael@0 7539 add rsi, rax
michael@0 7540 adc r10, rdx
michael@0 7541 adc r11, 0
michael@0 7542 mov qword ptr [424+r9], rsi
michael@0 7543 mov rdi, r11
michael@0 7544 mov rcx, r10
michael@0 7545 mov rsi, r8
michael@0 7546 mov rax, qword ptr [-360+rbp]
michael@0 7547 mul qword ptr [-40+rbp]
michael@0 7548 add rcx, rax
michael@0 7549 adc rdi, rdx
michael@0 7550 adc rsi, 0
michael@0 7551 mov rax, qword ptr [-352+rbp]
michael@0 7552 mul qword ptr [-48+rbp]
michael@0 7553 add rcx, rax
michael@0 7554 adc rdi, rdx
michael@0 7555 adc rsi, 0
michael@0 7556 mov rax, qword ptr [-344+rbp]
michael@0 7557 mul qword ptr [-56+rbp]
michael@0 7558 add rcx, rax
michael@0 7559 adc rdi, rdx
michael@0 7560 adc rsi, 0
michael@0 7561 mov rax, qword ptr [-336+rbp]
michael@0 7562 mul qword ptr [-64+rbp]
michael@0 7563 add rcx, rax
michael@0 7564 adc rdi, rdx
michael@0 7565 adc rsi, 0
michael@0 7566 mov rax, qword ptr [-328+rbp]
michael@0 7567 mul qword ptr [-72+rbp]
michael@0 7568 add rcx, rax
michael@0 7569 adc rdi, rdx
michael@0 7570 adc rsi, 0
michael@0 7571 mov rax, qword ptr [-320+rbp]
michael@0 7572 mul qword ptr [-80+rbp]
michael@0 7573 add rcx, rax
michael@0 7574 adc rdi, rdx
michael@0 7575 adc rsi, 0
michael@0 7576 mov rax, qword ptr [-312+rbp]
michael@0 7577 mul qword ptr [-88+rbp]
michael@0 7578 add rcx, rax
michael@0 7579 adc rdi, rdx
michael@0 7580 adc rsi, 0
michael@0 7581 mov rax, qword ptr [-304+rbp]
michael@0 7582 mul qword ptr [-96+rbp]
michael@0 7583 add rcx, rax
michael@0 7584 adc rdi, rdx
michael@0 7585 adc rsi, 0
michael@0 7586 mov r10, rdi
michael@0 7587 mov r11, rsi
michael@0 7588 mov rax, qword ptr [-296+rbp]
michael@0 7589 mul qword ptr [-104+rbp]
michael@0 7590 add rcx, rax
michael@0 7591 adc r10, rdx
michael@0 7592 adc r11, 0
michael@0 7593 mov qword ptr [432+r9], rcx
michael@0 7594 mov rdi, r11
michael@0 7595 mov rsi, r10
michael@0 7596 mov rcx, r8
michael@0 7597 mov rax, qword ptr [-352+rbp]
michael@0 7598 mul qword ptr [-40+rbp]
michael@0 7599 add rsi, rax
michael@0 7600 adc rdi, rdx
michael@0 7601 adc rcx, 0
michael@0 7602 mov rax, qword ptr [-344+rbp]
michael@0 7603 mul qword ptr [-48+rbp]
michael@0 7604 add rsi, rax
michael@0 7605 adc rdi, rdx
michael@0 7606 adc rcx, 0
michael@0 7607 mov rax, qword ptr [-336+rbp]
michael@0 7608 mul qword ptr [-56+rbp]
michael@0 7609 add rsi, rax
michael@0 7610 adc rdi, rdx
michael@0 7611 adc rcx, 0
michael@0 7612 mov rax, qword ptr [-328+rbp]
michael@0 7613 mul qword ptr [-64+rbp]
michael@0 7614 add rsi, rax
michael@0 7615 adc rdi, rdx
michael@0 7616 adc rcx, 0
michael@0 7617 mov rax, qword ptr [-320+rbp]
michael@0 7618 mul qword ptr [-72+rbp]
michael@0 7619 add rsi, rax
michael@0 7620 adc rdi, rdx
michael@0 7621 adc rcx, 0
michael@0 7622 mov rax, qword ptr [-312+rbp]
michael@0 7623 mul qword ptr [-80+rbp]
michael@0 7624 add rsi, rax
michael@0 7625 adc rdi, rdx
michael@0 7626 adc rcx, 0
michael@0 7627 mov rax, qword ptr [-304+rbp]
michael@0 7628 mul qword ptr [-88+rbp]
michael@0 7629 add rsi, rax
michael@0 7630 adc rdi, rdx
michael@0 7631 adc rcx, 0
michael@0 7632 mov r10, rdi
michael@0 7633 mov r11, rcx
michael@0 7634 mov rax, qword ptr [-296+rbp]
michael@0 7635 mul qword ptr [-96+rbp]
michael@0 7636 add rsi, rax
michael@0 7637 adc r10, rdx
michael@0 7638 adc r11, 0
michael@0 7639 mov qword ptr [440+r9], rsi
michael@0 7640 mov rdi, r11
michael@0 7641 mov rcx, r10
michael@0 7642 mov rsi, r8
michael@0 7643 mov rax, qword ptr [-344+rbp]
michael@0 7644 mul qword ptr [-40+rbp]
michael@0 7645 add rcx, rax
michael@0 7646 adc rdi, rdx
michael@0 7647 adc rsi, 0
michael@0 7648 mov rax, qword ptr [-336+rbp]
michael@0 7649 mul qword ptr [-48+rbp]
michael@0 7650 add rcx, rax
michael@0 7651 adc rdi, rdx
michael@0 7652 adc rsi, 0
michael@0 7653 mov rax, qword ptr [-328+rbp]
michael@0 7654 mul qword ptr [-56+rbp]
michael@0 7655 add rcx, rax
michael@0 7656 adc rdi, rdx
michael@0 7657 adc rsi, 0
michael@0 7658 mov rax, qword ptr [-320+rbp]
michael@0 7659 mul qword ptr [-64+rbp]
michael@0 7660 add rcx, rax
michael@0 7661 adc rdi, rdx
michael@0 7662 adc rsi, 0
michael@0 7663 mov rax, qword ptr [-312+rbp]
michael@0 7664 mul qword ptr [-72+rbp]
michael@0 7665 add rcx, rax
michael@0 7666 adc rdi, rdx
michael@0 7667 adc rsi, 0
michael@0 7668 mov rax, qword ptr [-304+rbp]
michael@0 7669 mul qword ptr [-80+rbp]
michael@0 7670 add rcx, rax
michael@0 7671 adc rdi, rdx
michael@0 7672 adc rsi, 0
michael@0 7673 mov r10, rdi
michael@0 7674 mov r11, rsi
michael@0 7675 mov rax, qword ptr [-296+rbp]
michael@0 7676 mul qword ptr [-88+rbp]
michael@0 7677 add rcx, rax
michael@0 7678 adc r10, rdx
michael@0 7679 adc r11, 0
michael@0 7680 mov qword ptr [448+r9], rcx
michael@0 7681 mov rdi, r11
michael@0 7682 mov rsi, r10
michael@0 7683 mov rcx, r8
michael@0 7684 mov rax, qword ptr [-336+rbp]
michael@0 7685 mul qword ptr [-40+rbp]
michael@0 7686 add rsi, rax
michael@0 7687 adc rdi, rdx
michael@0 7688 adc rcx, 0
michael@0 7689 mov rax, qword ptr [-328+rbp]
michael@0 7690 mul qword ptr [-48+rbp]
michael@0 7691 add rsi, rax
michael@0 7692 adc rdi, rdx
michael@0 7693 adc rcx, 0
michael@0 7694 mov rax, qword ptr [-320+rbp]
michael@0 7695 mul qword ptr [-56+rbp]
michael@0 7696 add rsi, rax
michael@0 7697 adc rdi, rdx
michael@0 7698 adc rcx, 0
michael@0 7699 mov rax, qword ptr [-312+rbp]
michael@0 7700 mul qword ptr [-64+rbp]
michael@0 7701 add rsi, rax
michael@0 7702 adc rdi, rdx
michael@0 7703 adc rcx, 0
michael@0 7704 mov rax, qword ptr [-304+rbp]
michael@0 7705 mul qword ptr [-72+rbp]
michael@0 7706 add rsi, rax
michael@0 7707 adc rdi, rdx
michael@0 7708 adc rcx, 0
michael@0 7709 mov r10, rdi
michael@0 7710 mov r11, rcx
michael@0 7711 mov rax, qword ptr [-296+rbp]
michael@0 7712 mul qword ptr [-80+rbp]
michael@0 7713 add rsi, rax
michael@0 7714 adc r10, rdx
michael@0 7715 adc r11, 0
michael@0 7716 mov qword ptr [456+r9], rsi
michael@0 7717 mov rdi, r11
michael@0 7718 mov rcx, r10
michael@0 7719 mov rsi, r8
michael@0 7720 mov rax, qword ptr [-328+rbp]
michael@0 7721 mul qword ptr [-40+rbp]
michael@0 7722 add rcx, rax
michael@0 7723 adc rdi, rdx
michael@0 7724 adc rsi, 0
michael@0 7725 mov rax, qword ptr [-320+rbp]
michael@0 7726 mul qword ptr [-48+rbp]
michael@0 7727 add rcx, rax
michael@0 7728 adc rdi, rdx
michael@0 7729 adc rsi, 0
michael@0 7730 mov rax, qword ptr [-312+rbp]
michael@0 7731 mul qword ptr [-56+rbp]
michael@0 7732 add rcx, rax
michael@0 7733 adc rdi, rdx
michael@0 7734 adc rsi, 0
michael@0 7735 mov rax, qword ptr [-304+rbp]
michael@0 7736 mul qword ptr [-64+rbp]
michael@0 7737 add rcx, rax
michael@0 7738 adc rdi, rdx
michael@0 7739 adc rsi, 0
michael@0 7740 mov r10, rdi
michael@0 7741 mov r11, rsi
michael@0 7742 mov rax, qword ptr [-296+rbp]
michael@0 7743 mul qword ptr [-72+rbp]
michael@0 7744 add rcx, rax
michael@0 7745 adc r10, rdx
michael@0 7746 adc r11, 0
michael@0 7747 mov qword ptr [464+r9], rcx
michael@0 7748 mov rdi, r11
michael@0 7749 mov rsi, r10
michael@0 7750 mov rcx, r8
michael@0 7751 mov rax, qword ptr [-320+rbp]
michael@0 7752 mul qword ptr [-40+rbp]
michael@0 7753 add rsi, rax
michael@0 7754 adc rdi, rdx
michael@0 7755 adc rcx, 0
michael@0 7756 mov rax, qword ptr [-312+rbp]
michael@0 7757 mul qword ptr [-48+rbp]
michael@0 7758 add rsi, rax
michael@0 7759 adc rdi, rdx
michael@0 7760 adc rcx, 0
michael@0 7761 mov rax, qword ptr [-304+rbp]
michael@0 7762 mul qword ptr [-56+rbp]
michael@0 7763 add rsi, rax
michael@0 7764 adc rdi, rdx
michael@0 7765 adc rcx, 0
michael@0 7766 mov r10, rdi
michael@0 7767 mov r11, rcx
michael@0 7768 mov rax, qword ptr [-296+rbp]
michael@0 7769 mul qword ptr [-64+rbp]
michael@0 7770 add rsi, rax
michael@0 7771 adc r10, rdx
michael@0 7772 adc r11, 0
michael@0 7773 mov qword ptr [472+r9], rsi
michael@0 7774 mov rdi, r11
michael@0 7775 mov rcx, r10
michael@0 7776 mov rsi, r8
michael@0 7777 mov rax, qword ptr [-312+rbp]
michael@0 7778 mul qword ptr [-40+rbp]
michael@0 7779 add rcx, rax
michael@0 7780 adc rdi, rdx
michael@0 7781 adc rsi, 0
michael@0 7782 mov rax, qword ptr [-304+rbp]
michael@0 7783 mul qword ptr [-48+rbp]
michael@0 7784 add rcx, rax
michael@0 7785 adc rdi, rdx
michael@0 7786 adc rsi, 0
michael@0 7787 mov r10, rdi
michael@0 7788 mov r11, rsi
michael@0 7789 mov rax, qword ptr [-296+rbp]
michael@0 7790 mul qword ptr [-56+rbp]
michael@0 7791 add rcx, rax
michael@0 7792 adc r10, rdx
michael@0 7793 adc r11, 0
michael@0 7794 mov qword ptr [480+r9], rcx
michael@0 7795 mov rdi, r11
michael@0 7796 mov rsi, r10
michael@0 7797 mov rcx, r8
michael@0 7798 mov rax, qword ptr [-304+rbp]
michael@0 7799 mul qword ptr [-40+rbp]
michael@0 7800 add rsi, rax
michael@0 7801 adc rdi, rdx
michael@0 7802 adc rcx, 0
michael@0 7803 mov r11, rcx
michael@0 7804 mov r10, rdi
michael@0 7805 mov rax, qword ptr [-296+rbp]
michael@0 7806 mul qword ptr [-48+rbp]
michael@0 7807 add rsi, rax
michael@0 7808 adc r10, rdx
michael@0 7809 adc r11, 0
michael@0 7810 mov qword ptr [488+r9], rsi
michael@0 7811 mov rcx, r10
michael@0 7812 mov rsi, r11
michael@0 7813 mov rax, qword ptr [-296+rbp]
michael@0 7814 mul qword ptr [-40+rbp]
michael@0 7815 add rcx, rax
michael@0 7816 adc rsi, rdx
michael@0 7817 adc r8, 0
michael@0 7818 mov qword ptr [496+r9], rcx
michael@0 7819 mov ecx, dword ptr [r12]
michael@0 7820 xor ecx, dword ptr [rbx]
michael@0 7821 test rsi, rsi
michael@0 7822 mov qword ptr [504+r9], rsi
michael@0 7823 mov dword ptr [8+r13], 64
michael@0 7824 jne L149
michael@0 7825 ALIGN 16
michael@0 7826 L157:
michael@0 7827 mov edx, dword ptr [8+r13]
michael@0 7828 lea ebx, dword ptr [-1+rdx]
michael@0 7829 test ebx, ebx
michael@0 7830 mov dword ptr [8+r13], ebx
michael@0 7831 je L149
michael@0 7832 lea r12d, dword ptr [-2+rdx]
michael@0 7833 cmp dword ptr [r9+r12*8], 0
michael@0 7834 je L157
michael@0 7835 L149:
michael@0 7836 mov r9d, dword ptr [8+r13]
michael@0 7837 xor edx, edx
michael@0 7838 test r9d, r9d
michael@0 7839 cmovne edx, ecx
michael@0 7840 mov dword ptr [r13], edx
michael@0 7841 add rsp, 520+32 ; +32 for "home" storage
michael@0 7842 pop rbx
michael@0 7843 pop r12
michael@0 7844 pop r13
michael@0 7845 pop rbp
michael@0 7846 pop rsi
michael@0 7847 pop rdi
michael@0 7848
michael@0 7849 ret
michael@0 7850
michael@0 7851 s_mp_mul_comba_32 ENDP
michael@0 7852
michael@0 7853
michael@0 7854 ; void s_mp_sqr_comba_4(const mp_int *A, mp_int *B);
michael@0 7855
michael@0 7856 ALIGN 16
michael@0 7857 s_mp_sqr_comba_4 PROC
michael@0 7858
michael@0 7859 push rdi
michael@0 7860 push rsi
michael@0 7861
michael@0 7862 mov rdi, rcx
michael@0 7863 mov rsi, rdx
michael@0 7864
michael@0 7865 push rbp
michael@0 7866 sub rsp, 80
michael@0 7867 mov r11, rsi
michael@0 7868 xor esi, esi
michael@0 7869 mov r10, rsi
michael@0 7870 mov rbp, rsi
michael@0 7871 mov r8, rsi
michael@0 7872 push rbx
michael@0 7873 mov rbx, rsi
michael@0 7874 mov rcx, qword ptr [16+rdi]
michael@0 7875 mov rdi, rsi
michael@0 7876 mov rax, qword ptr [rcx]
michael@0 7877 mul rax
michael@0 7878 add r10, rax
michael@0 7879 adc rbx, rdx
michael@0 7880 adc rdi, 0
michael@0 7881 mov qword ptr [-72+80+rsp], r10
michael@0 7882 mov rax, qword ptr [rcx]
michael@0 7883 mul qword ptr [8+rcx]
michael@0 7884 add rbx, rax
michael@0 7885 adc rdi, rdx
michael@0 7886 adc rbp, 0
michael@0 7887 add rbx, rax
michael@0 7888 adc rdi, rdx
michael@0 7889 adc rbp, 0
michael@0 7890 mov qword ptr [-64+80+rsp], rbx
michael@0 7891 mov rax, qword ptr [rcx]
michael@0 7892 mul qword ptr [16+rcx]
michael@0 7893 add rdi, rax
michael@0 7894 adc rbp, rdx
michael@0 7895 adc r8, 0
michael@0 7896 add rdi, rax
michael@0 7897 adc rbp, rdx
michael@0 7898 adc r8, 0
michael@0 7899 mov rbx, rbp
michael@0 7900 mov rbp, r8
michael@0 7901 mov rax, qword ptr [8+rcx]
michael@0 7902 mul rax
michael@0 7903 add rdi, rax
michael@0 7904 adc rbx, rdx
michael@0 7905 adc rbp, 0
michael@0 7906 mov qword ptr [-56+80+rsp], rdi
michael@0 7907 mov r9, rbp
michael@0 7908 mov r8, rbx
michael@0 7909 mov rdi, rsi
michael@0 7910 mov rax, qword ptr [rcx]
michael@0 7911 mul qword ptr [24+rcx]
michael@0 7912 add r8, rax
michael@0 7913 adc r9, rdx
michael@0 7914 adc rdi, 0
michael@0 7915 add r8, rax
michael@0 7916 adc r9, rdx
michael@0 7917 adc rdi, 0
michael@0 7918 mov rbx, r9
michael@0 7919 mov rbp, rdi
michael@0 7920 mov rax, qword ptr [8+rcx]
michael@0 7921 mul qword ptr [16+rcx]
michael@0 7922 add r8, rax
michael@0 7923 adc rbx, rdx
michael@0 7924 adc rbp, 0
michael@0 7925 add r8, rax
michael@0 7926 adc rbx, rdx
michael@0 7927 adc rbp, 0
michael@0 7928 mov qword ptr [-48+80+rsp], r8
michael@0 7929 mov r9, rbp
michael@0 7930 mov rdi, rbx
michael@0 7931 mov r8, rsi
michael@0 7932 mov dword ptr [8+r11], 8
michael@0 7933 mov dword ptr [r11], 0
michael@0 7934 mov rax, qword ptr [8+rcx]
michael@0 7935 mul qword ptr [24+rcx]
michael@0 7936 add rdi, rax
michael@0 7937 adc r9, rdx
michael@0 7938 adc r8, 0
michael@0 7939 add rdi, rax
michael@0 7940 adc r9, rdx
michael@0 7941 adc r8, 0
michael@0 7942 mov rbx, r9
michael@0 7943 mov rbp, r8
michael@0 7944 mov rax, qword ptr [16+rcx]
michael@0 7945 mul rax
michael@0 7946 add rdi, rax
michael@0 7947 adc rbx, rdx
michael@0 7948 adc rbp, 0
michael@0 7949 mov rax, rbp
michael@0 7950 mov qword ptr [-40+80+rsp], rdi
michael@0 7951 mov rbp, rbx
michael@0 7952 mov rdi, rax
michael@0 7953 mov rbx, rsi
michael@0 7954 mov rax, qword ptr [16+rcx]
michael@0 7955 mul qword ptr [24+rcx]
michael@0 7956 add rbp, rax
michael@0 7957 adc rdi, rdx
michael@0 7958 adc rbx, 0
michael@0 7959 add rbp, rax
michael@0 7960 adc rdi, rdx
michael@0 7961 adc rbx, 0
michael@0 7962 mov qword ptr [-32+80+rsp], rbp
michael@0 7963 mov r9, rbx
michael@0 7964 mov rax, qword ptr [24+rcx]
michael@0 7965 mul rax
michael@0 7966 add rdi, rax
michael@0 7967 adc r9, rdx
michael@0 7968 adc rsi, 0
michael@0 7969 mov rdx, qword ptr [16+r11]
michael@0 7970 mov qword ptr [-24+80+rsp], rdi
michael@0 7971 mov qword ptr [-16+80+rsp], r9
michael@0 7972 mov qword ptr [rdx], r10
michael@0 7973 mov r8, qword ptr [-64+80+rsp]
michael@0 7974 mov qword ptr [8+rdx], r8
michael@0 7975 mov rbp, qword ptr [-56+80+rsp]
michael@0 7976 mov qword ptr [16+rdx], rbp
michael@0 7977 mov rdi, qword ptr [-48+80+rsp]
michael@0 7978 mov qword ptr [24+rdx], rdi
michael@0 7979 mov rsi, qword ptr [-40+80+rsp]
michael@0 7980 mov qword ptr [32+rdx], rsi
michael@0 7981 mov rbx, qword ptr [-32+80+rsp]
michael@0 7982 mov qword ptr [40+rdx], rbx
michael@0 7983 mov rcx, qword ptr [-24+80+rsp]
michael@0 7984 mov qword ptr [48+rdx], rcx
michael@0 7985 mov rax, qword ptr [-16+80+rsp]
michael@0 7986 mov qword ptr [56+rdx], rax
michael@0 7987 mov edx, dword ptr [8+r11]
michael@0 7988 test edx, edx
michael@0 7989 je L168
michael@0 7990 lea ecx, dword ptr [-1+rdx]
michael@0 7991 mov rsi, qword ptr [16+r11]
michael@0 7992 mov r10d, ecx
michael@0 7993 cmp dword ptr [rsi+r10*8], 0
michael@0 7994 jne L166
michael@0 7995 mov edx, ecx
michael@0 7996 ALIGN 16
michael@0 7997 L167:
michael@0 7998 test edx, edx
michael@0 7999 mov ecx, edx
michael@0 8000 je L171
michael@0 8001 dec edx
michael@0 8002 mov eax, edx
michael@0 8003 cmp dword ptr [rsi+rax*8], 0
michael@0 8004 je L167
michael@0 8005 mov dword ptr [8+r11], ecx
michael@0 8006 mov edx, ecx
michael@0 8007 L166:
michael@0 8008 test edx, edx
michael@0 8009 je L168
michael@0 8010 mov eax, dword ptr [r11]
michael@0 8011 jmp L169
michael@0 8012
michael@0 8013 L171:
michael@0 8014 mov dword ptr [8+r11], edx
michael@0 8015 L168:
michael@0 8016 xor eax, eax
michael@0 8017 L169:
michael@0 8018 add rsp, 80
michael@0 8019 pop rbx
michael@0 8020 pop rbp
michael@0 8021 mov dword ptr [r11], eax
michael@0 8022
michael@0 8023 pop rsi
michael@0 8024 pop rdi
michael@0 8025
michael@0 8026 ret
michael@0 8027
michael@0 8028 s_mp_sqr_comba_4 ENDP
michael@0 8029
michael@0 8030
michael@0 8031 ; void s_mp_sqr_comba_8(const mp_int *A, mp_int *B);
michael@0 8032
michael@0 8033 ALIGN 16
michael@0 8034 s_mp_sqr_comba_8 PROC
michael@0 8035
michael@0 8036 push rdi
michael@0 8037 push rsi
michael@0 8038
michael@0 8039 mov rdi, rcx
michael@0 8040 mov rsi, rdx
michael@0 8041 mov rdx, r8
michael@0 8042 mov rcx, r9
michael@0 8043
michael@0 8044 push r14
michael@0 8045 xor r9d, r9d
michael@0 8046 mov r14, r9
michael@0 8047 mov r10, r9
michael@0 8048 push r13
michael@0 8049 mov r13, r9
michael@0 8050 push r12
michael@0 8051 mov r12, r9
michael@0 8052 push rbp
michael@0 8053 mov rbp, rsi
michael@0 8054 mov rsi, r9
michael@0 8055 push rbx
michael@0 8056 mov rbx, r9
michael@0 8057 sub rsp, 8+128
michael@0 8058 mov rcx, qword ptr [16+rdi]
michael@0 8059 mov rax, qword ptr [rcx]
michael@0 8060 mul rax
michael@0 8061 add r14, rax
michael@0 8062 adc rbx, rdx
michael@0 8063 adc r12, 0
michael@0 8064 mov qword ptr [-120+128+rsp], r14
michael@0 8065 mov rax, qword ptr [rcx]
michael@0 8066 mul qword ptr [8+rcx]
michael@0 8067 add rbx, rax
michael@0 8068 adc r12, rdx
michael@0 8069 adc r10, 0
michael@0 8070 add rbx, rax
michael@0 8071 adc r12, rdx
michael@0 8072 adc r10, 0
michael@0 8073 mov qword ptr [-112+128+rsp], rbx
michael@0 8074 mov rax, qword ptr [rcx]
michael@0 8075 mul qword ptr [16+rcx]
michael@0 8076 add r12, rax
michael@0 8077 adc r10, rdx
michael@0 8078 adc r13, 0
michael@0 8079 add r12, rax
michael@0 8080 adc r10, rdx
michael@0 8081 adc r13, 0
michael@0 8082 mov rbx, r10
michael@0 8083 mov r10, r13
michael@0 8084 mov r13, r9
michael@0 8085 mov rax, qword ptr [8+rcx]
michael@0 8086 mul rax
michael@0 8087 add r12, rax
michael@0 8088 adc rbx, rdx
michael@0 8089 adc r10, 0
michael@0 8090 mov qword ptr [-104+128+rsp], r12
michael@0 8091 mov rdi, r10
michael@0 8092 mov r11, rbx
michael@0 8093 mov rax, qword ptr [rcx]
michael@0 8094 mul qword ptr [24+rcx]
michael@0 8095 add r11, rax
michael@0 8096 adc rdi, rdx
michael@0 8097 adc rsi, 0
michael@0 8098 add r11, rax
michael@0 8099 adc rdi, rdx
michael@0 8100 adc rsi, 0
michael@0 8101 mov rbx, rdi
michael@0 8102 mov r10, rsi
michael@0 8103 mov rdi, r9
michael@0 8104 mov rax, qword ptr [8+rcx]
michael@0 8105 mul qword ptr [16+rcx]
michael@0 8106 add r11, rax
michael@0 8107 adc rbx, rdx
michael@0 8108 adc r10, 0
michael@0 8109 add r11, rax
michael@0 8110 adc rbx, rdx
michael@0 8111 adc r10, 0
michael@0 8112 mov rsi, r9
michael@0 8113 mov qword ptr [-96+128+rsp], r11
michael@0 8114 mov r8, r10
michael@0 8115 mov r12, rbx
michael@0 8116 mov r11, r9
michael@0 8117 mov rax, qword ptr [rcx]
michael@0 8118 mul qword ptr [32+rcx]
michael@0 8119 add r12, rax
michael@0 8120 adc r8, rdx
michael@0 8121 adc r13, 0
michael@0 8122 add r12, rax
michael@0 8123 adc r8, rdx
michael@0 8124 adc r13, 0
michael@0 8125 mov rax, qword ptr [8+rcx]
michael@0 8126 mul qword ptr [24+rcx]
michael@0 8127 add r12, rax
michael@0 8128 adc r8, rdx
michael@0 8129 adc r13, 0
michael@0 8130 add r12, rax
michael@0 8131 adc r8, rdx
michael@0 8132 adc r13, 0
michael@0 8133 mov rbx, r8
michael@0 8134 mov r10, r13
michael@0 8135 mov r8, r9
michael@0 8136 mov rax, qword ptr [16+rcx]
michael@0 8137 mul rax
michael@0 8138 add r12, rax
michael@0 8139 adc rbx, rdx
michael@0 8140 adc r10, 0
michael@0 8141 mov qword ptr [-88+128+rsp], r12
michael@0 8142 mov rax, qword ptr [rcx]
michael@0 8143 mul qword ptr [40+rcx]
michael@0 8144 mov r8, rax
michael@0 8145 mov rdi, rdx
michael@0 8146 xor rsi, rsi
michael@0 8147 mov rax, qword ptr [8+rcx]
michael@0 8148 mul qword ptr [32+rcx]
michael@0 8149 add r8, rax
michael@0 8150 adc rdi, rdx
michael@0 8151 adc rsi, 0
michael@0 8152 mov rax, qword ptr [16+rcx]
michael@0 8153 mul qword ptr [24+rcx]
michael@0 8154 add r8, rax
michael@0 8155 adc rdi, rdx
michael@0 8156 adc rsi, 0
michael@0 8157 add rbx, r8
michael@0 8158 adc r10, rdi
michael@0 8159 adc r11, rsi
michael@0 8160 add rbx, r8
michael@0 8161 adc r10, rdi
michael@0 8162 adc r11, rsi
michael@0 8163 mov qword ptr [-80+128+rsp], rbx
michael@0 8164 mov rax, qword ptr [rcx]
michael@0 8165 mul qword ptr [48+rcx]
michael@0 8166 mov r8, rax
michael@0 8167 mov rdi, rdx
michael@0 8168 xor rsi, rsi
michael@0 8169 mov rax, qword ptr [8+rcx]
michael@0 8170 mul qword ptr [40+rcx]
michael@0 8171 add r8, rax
michael@0 8172 adc rdi, rdx
michael@0 8173 adc rsi, 0
michael@0 8174 mov rax, qword ptr [16+rcx]
michael@0 8175 mul qword ptr [32+rcx]
michael@0 8176 add r8, rax
michael@0 8177 adc rdi, rdx
michael@0 8178 adc rsi, 0
michael@0 8179 mov rax, r9
michael@0 8180 mov r13, rdi
michael@0 8181 mov r12, rsi
michael@0 8182 add r10, r8
michael@0 8183 adc r11, r13
michael@0 8184 adc rax, r12
michael@0 8185 add r10, r8
michael@0 8186 adc r11, r13
michael@0 8187 adc rax, r12
michael@0 8188 mov rdx, rax
michael@0 8189 mov rbx, r11
michael@0 8190 mov rdi, r13
michael@0 8191 mov r11, rdx
michael@0 8192 mov rsi, r12
michael@0 8193 mov rax, qword ptr [24+rcx]
michael@0 8194 mul rax
michael@0 8195 add r10, rax
michael@0 8196 adc rbx, rdx
michael@0 8197 adc r11, 0
michael@0 8198 mov qword ptr [-72+128+rsp], r10
michael@0 8199 mov r10, r11
michael@0 8200 mov rax, qword ptr [rcx]
michael@0 8201 mul qword ptr [56+rcx]
michael@0 8202 mov r8, rax
michael@0 8203 mov rdi, rdx
michael@0 8204 xor rsi, rsi
michael@0 8205 mov rax, qword ptr [8+rcx]
michael@0 8206 mul qword ptr [48+rcx]
michael@0 8207 add r8, rax
michael@0 8208 adc rdi, rdx
michael@0 8209 adc rsi, 0
michael@0 8210 mov rax, qword ptr [16+rcx]
michael@0 8211 mul qword ptr [40+rcx]
michael@0 8212 add r8, rax
michael@0 8213 adc rdi, rdx
michael@0 8214 adc rsi, 0
michael@0 8215 mov rax, qword ptr [24+rcx]
michael@0 8216 mul qword ptr [32+rcx]
michael@0 8217 add r8, rax
michael@0 8218 adc rdi, rdx
michael@0 8219 adc rsi, 0
michael@0 8220 mov rax, r9
michael@0 8221 add rbx, r8
michael@0 8222 adc r10, rdi
michael@0 8223 adc rax, rsi
michael@0 8224 add rbx, r8
michael@0 8225 adc r10, rdi
michael@0 8226 adc rax, rsi
michael@0 8227 mov qword ptr [-64+128+rsp], rbx
michael@0 8228 mov r11, rax
michael@0 8229 mov rbx, r9
michael@0 8230 mov rax, qword ptr [8+rcx]
michael@0 8231 mul qword ptr [56+rcx]
michael@0 8232 mov r8, rax
michael@0 8233 mov rdi, rdx
michael@0 8234 xor rsi, rsi
michael@0 8235 mov rax, qword ptr [16+rcx]
michael@0 8236 mul qword ptr [48+rcx]
michael@0 8237 add r8, rax
michael@0 8238 adc rdi, rdx
michael@0 8239 adc rsi, 0
michael@0 8240 mov rax, qword ptr [24+rcx]
michael@0 8241 mul qword ptr [40+rcx]
michael@0 8242 add r8, rax
michael@0 8243 adc rdi, rdx
michael@0 8244 adc rsi, 0
michael@0 8245 mov r13, rdi
michael@0 8246 mov r12, rsi
michael@0 8247 add r10, r8
michael@0 8248 adc r11, r13
michael@0 8249 adc rbx, r12
michael@0 8250 add r10, r8
michael@0 8251 adc r11, r13
michael@0 8252 adc rbx, r12
michael@0 8253 mov rsi, rbx
michael@0 8254 mov rdi, r13
michael@0 8255 mov rbx, r11
michael@0 8256 mov r13, r12
michael@0 8257 mov r11, rsi
michael@0 8258 mov rax, qword ptr [32+rcx]
michael@0 8259 mul rax
michael@0 8260 add r10, rax
michael@0 8261 adc rbx, rdx
michael@0 8262 adc r11, 0
michael@0 8263 mov qword ptr [-56+128+rsp], r10
michael@0 8264 mov r10, r9
michael@0 8265 mov rax, qword ptr [16+rcx]
michael@0 8266 mul qword ptr [56+rcx]
michael@0 8267 mov r8, rax
michael@0 8268 mov rdi, rdx
michael@0 8269 xor r13, r13
michael@0 8270 mov rax, qword ptr [24+rcx]
michael@0 8271 mul qword ptr [48+rcx]
michael@0 8272 add r8, rax
michael@0 8273 adc rdi, rdx
michael@0 8274 adc r13, 0
michael@0 8275 mov rax, qword ptr [32+rcx]
michael@0 8276 mul qword ptr [40+rcx]
michael@0 8277 add r8, rax
michael@0 8278 adc rdi, rdx
michael@0 8279 adc r13, 0
michael@0 8280 mov r12, rdi
michael@0 8281 mov rax, r13
michael@0 8282 add rbx, r8
michael@0 8283 adc r11, r12
michael@0 8284 adc r10, rax
michael@0 8285 add rbx, r8
michael@0 8286 adc r11, r12
michael@0 8287 adc r10, rax
michael@0 8288 mov qword ptr [-48+128+rsp], rbx
michael@0 8289 mov r12, r11
michael@0 8290 mov rsi, r10
michael@0 8291 mov rbx, r9
michael@0 8292 mov r11, r9
michael@0 8293 mov rax, qword ptr [24+rcx]
michael@0 8294 mul qword ptr [56+rcx]
michael@0 8295 add r12, rax
michael@0 8296 adc rsi, rdx
michael@0 8297 adc rbx, 0
michael@0 8298 add r12, rax
michael@0 8299 adc rsi, rdx
michael@0 8300 adc rbx, 0
michael@0 8301 mov r13, rbx
michael@0 8302 mov rax, qword ptr [32+rcx]
michael@0 8303 mul qword ptr [48+rcx]
michael@0 8304 add r12, rax
michael@0 8305 adc rsi, rdx
michael@0 8306 adc r13, 0
michael@0 8307 add r12, rax
michael@0 8308 adc rsi, rdx
michael@0 8309 adc r13, 0
michael@0 8310 mov r10, rsi
michael@0 8311 mov rbx, r13
michael@0 8312 mov r13, r9
michael@0 8313 mov rax, qword ptr [40+rcx]
michael@0 8314 mul rax
michael@0 8315 add r12, rax
michael@0 8316 adc r10, rdx
michael@0 8317 adc rbx, 0
michael@0 8318 mov qword ptr [-40+128+rsp], r12
michael@0 8319 mov r8, rbx
michael@0 8320 mov rdi, r10
michael@0 8321 mov rax, qword ptr [32+rcx]
michael@0 8322 mul qword ptr [56+rcx]
michael@0 8323 add rdi, rax
michael@0 8324 adc r8, rdx
michael@0 8325 adc r11, 0
michael@0 8326 add rdi, rax
michael@0 8327 adc r8, rdx
michael@0 8328 adc r11, 0
michael@0 8329 mov r10, r8
michael@0 8330 mov rbx, r11
michael@0 8331 mov rax, qword ptr [40+rcx]
michael@0 8332 mul qword ptr [48+rcx]
michael@0 8333 add rdi, rax
michael@0 8334 adc r10, rdx
michael@0 8335 adc rbx, 0
michael@0 8336 add rdi, rax
michael@0 8337 adc r10, rdx
michael@0 8338 adc rbx, 0
michael@0 8339 mov qword ptr [-32+128+rsp], rdi
michael@0 8340 mov rsi, rbx
michael@0 8341 mov r12, r10
michael@0 8342 mov rax, qword ptr [40+rcx]
michael@0 8343 mul qword ptr [56+rcx]
michael@0 8344 add r12, rax
michael@0 8345 adc rsi, rdx
michael@0 8346 adc r13, 0
michael@0 8347 add r12, rax
michael@0 8348 adc rsi, rdx
michael@0 8349 adc r13, 0
michael@0 8350 mov r10, rsi
michael@0 8351 mov rbx, r13
michael@0 8352 mov rax, qword ptr [48+rcx]
michael@0 8353 mul rax
michael@0 8354 add r12, rax
michael@0 8355 adc r10, rdx
michael@0 8356 adc rbx, 0
michael@0 8357 mov qword ptr [-24+128+rsp], r12
michael@0 8358 mov rdi, r10
michael@0 8359 mov rsi, rbx
michael@0 8360 mov r10, r9
michael@0 8361 mov dword ptr [8+rbp], 16
michael@0 8362 mov dword ptr [rbp], 0
michael@0 8363 mov rax, qword ptr [48+rcx]
michael@0 8364 mul qword ptr [56+rcx]
michael@0 8365 add rdi, rax
michael@0 8366 adc rsi, rdx
michael@0 8367 adc r10, 0
michael@0 8368 add rdi, rax
michael@0 8369 adc rsi, rdx
michael@0 8370 adc r10, 0
michael@0 8371 mov qword ptr [-16+128+rsp], rdi
michael@0 8372 mov r8, r10
michael@0 8373 mov rax, qword ptr [56+rcx]
michael@0 8374 mul rax
michael@0 8375 add rsi, rax
michael@0 8376 adc r8, rdx
michael@0 8377 adc r9, 0
michael@0 8378 mov rax, qword ptr [16+rbp]
michael@0 8379 mov qword ptr [-8+128+rsp], rsi
michael@0 8380 mov qword ptr [128+rsp], r8
michael@0 8381 mov qword ptr [rax], r14
michael@0 8382 mov rbx, qword ptr [-112+128+rsp]
michael@0 8383 mov qword ptr [8+rax], rbx
michael@0 8384 mov rcx, qword ptr [-104+128+rsp]
michael@0 8385 mov qword ptr [16+rax], rcx
michael@0 8386 mov rdx, qword ptr [-96+128+rsp]
michael@0 8387 mov qword ptr [24+rax], rdx
michael@0 8388 mov r14, qword ptr [-88+128+rsp]
michael@0 8389 mov qword ptr [32+rax], r14
michael@0 8390 mov r13, qword ptr [-80+128+rsp]
michael@0 8391 mov qword ptr [40+rax], r13
michael@0 8392 mov r12, qword ptr [-72+128+rsp]
michael@0 8393 mov qword ptr [48+rax], r12
michael@0 8394 mov r11, qword ptr [-64+128+rsp]
michael@0 8395 mov qword ptr [56+rax], r11
michael@0 8396 mov r10, qword ptr [-56+128+rsp]
michael@0 8397 mov qword ptr [64+rax], r10
michael@0 8398 mov r9, qword ptr [-48+128+rsp]
michael@0 8399 mov qword ptr [72+rax], r9
michael@0 8400 mov r8, qword ptr [-40+128+rsp]
michael@0 8401 mov qword ptr [80+rax], r8
michael@0 8402 mov rdi, qword ptr [-32+128+rsp]
michael@0 8403 mov qword ptr [88+rax], rdi
michael@0 8404 mov rsi, qword ptr [-24+128+rsp]
michael@0 8405 mov qword ptr [96+rax], rsi
michael@0 8406 mov rbx, qword ptr [-16+128+rsp]
michael@0 8407 mov qword ptr [104+rax], rbx
michael@0 8408 mov rcx, qword ptr [-8+128+rsp]
michael@0 8409 mov qword ptr [112+rax], rcx
michael@0 8410 mov rdx, qword ptr [128+rsp]
michael@0 8411 mov qword ptr [120+rax], rdx
michael@0 8412 mov edx, dword ptr [8+rbp]
michael@0 8413 test edx, edx
michael@0 8414 je L192
michael@0 8415 lea ecx, dword ptr [-1+rdx]
michael@0 8416 mov rsi, qword ptr [16+rbp]
michael@0 8417 mov r14d, ecx
michael@0 8418 cmp dword ptr [rsi+r14*8], 0
michael@0 8419 jne L190
michael@0 8420 mov edx, ecx
michael@0 8421 ALIGN 16
michael@0 8422 L191:
michael@0 8423 test edx, edx
michael@0 8424 mov ecx, edx
michael@0 8425 je L195
michael@0 8426 dec edx
michael@0 8427 mov r9d, edx
michael@0 8428 cmp dword ptr [rsi+r9*8], 0
michael@0 8429 je L191
michael@0 8430 mov dword ptr [8+rbp], ecx
michael@0 8431 mov edx, ecx
michael@0 8432 L190:
michael@0 8433 test edx, edx
michael@0 8434 je L192
michael@0 8435 mov eax, dword ptr [rbp]
michael@0 8436 jmp L193
michael@0 8437
michael@0 8438 L195:
michael@0 8439 mov dword ptr [8+rbp], edx
michael@0 8440 L192:
michael@0 8441 xor eax, eax
michael@0 8442 L193:
michael@0 8443 mov dword ptr [rbp], eax
michael@0 8444 add rsp, 8+128
michael@0 8445 pop rbx
michael@0 8446 pop rbp
michael@0 8447 pop r12
michael@0 8448 pop r13
michael@0 8449 pop r14
michael@0 8450
michael@0 8451 pop rsi
michael@0 8452 pop rdi
michael@0 8453
michael@0 8454 ret
michael@0 8455
michael@0 8456 s_mp_sqr_comba_8 ENDP
michael@0 8457
michael@0 8458
michael@0 8459 ; void s_mp_sqr_comba_16(const mp_int *A, mp_int *B)
michael@0 8460
michael@0 8461 ALIGN 16
michael@0 8462 s_mp_sqr_comba_16 PROC ; A "FRAME" function
michael@0 8463
michael@0 8464 push rdi
michael@0 8465 push rsi
michael@0 8466
michael@0 8467 mov rdi, rcx
michael@0 8468 mov rsi, rdx
michael@0 8469
michael@0 8470 push rbp
michael@0 8471 xor r9d, r9d
michael@0 8472 mov r8, r9
michael@0 8473 mov r11, r9
michael@0 8474 mov rbp, rsp
michael@0 8475 push r14
michael@0 8476 mov r14, rsi
michael@0 8477 mov rsi, r9
michael@0 8478 push r13
michael@0 8479 mov r13, r9
michael@0 8480 push r12
michael@0 8481 mov r12, r9
michael@0 8482 push rbx
michael@0 8483 mov rbx, r9
michael@0 8484 sub rsp, 256+32 ; +32 for "home" storage
michael@0 8485 mov rcx, qword ptr [16+rdi]
michael@0 8486 mov rax, qword ptr [rcx]
michael@0 8487 mul rax
michael@0 8488 add r8, rax
michael@0 8489 adc rbx, rdx
michael@0 8490 adc rsi, 0
michael@0 8491 mov qword ptr [-288+rbp], r8
michael@0 8492 mov rax, qword ptr [rcx]
michael@0 8493 mul qword ptr [8+rcx]
michael@0 8494 add rbx, rax
michael@0 8495 adc rsi, rdx
michael@0 8496 adc r12, 0
michael@0 8497 add rbx, rax
michael@0 8498 adc rsi, rdx
michael@0 8499 adc r12, 0
michael@0 8500 mov qword ptr [-280+rbp], rbx
michael@0 8501 mov rax, qword ptr [rcx]
michael@0 8502 mul qword ptr [16+rcx]
michael@0 8503 add rsi, rax
michael@0 8504 adc r12, rdx
michael@0 8505 adc r13, 0
michael@0 8506 add rsi, rax
michael@0 8507 adc r12, rdx
michael@0 8508 adc r13, 0
michael@0 8509 mov rbx, r12
michael@0 8510 mov r10, r13
michael@0 8511 mov rax, qword ptr [8+rcx]
michael@0 8512 mul rax
michael@0 8513 add rsi, rax
michael@0 8514 adc rbx, rdx
michael@0 8515 adc r10, 0
michael@0 8516 mov qword ptr [-272+rbp], rsi
michael@0 8517 mov rdi, r10
michael@0 8518 mov rsi, r9
michael@0 8519 mov r10, rbx
michael@0 8520 mov rax, qword ptr [rcx]
michael@0 8521 mul qword ptr [24+rcx]
michael@0 8522 add r10, rax
michael@0 8523 adc rdi, rdx
michael@0 8524 adc r11, 0
michael@0 8525 add r10, rax
michael@0 8526 adc rdi, rdx
michael@0 8527 adc r11, 0
michael@0 8528 mov r12, rdi
michael@0 8529 mov rbx, r11
michael@0 8530 mov rdi, r9
michael@0 8531 mov rax, qword ptr [8+rcx]
michael@0 8532 mul qword ptr [16+rcx]
michael@0 8533 add r10, rax
michael@0 8534 adc r12, rdx
michael@0 8535 adc rbx, 0
michael@0 8536 add r10, rax
michael@0 8537 adc r12, rdx
michael@0 8538 adc rbx, 0
michael@0 8539 mov r11, r9
michael@0 8540 mov qword ptr [-264+rbp], r10
michael@0 8541 mov r8, rbx
michael@0 8542 mov r13, r12
michael@0 8543 mov r12, r9
michael@0 8544 mov rax, qword ptr [rcx]
michael@0 8545 mul qword ptr [32+rcx]
michael@0 8546 add r13, rax
michael@0 8547 adc r8, rdx
michael@0 8548 adc r12, 0
michael@0 8549 add r13, rax
michael@0 8550 adc r8, rdx
michael@0 8551 adc r12, 0
michael@0 8552 mov rax, qword ptr [8+rcx]
michael@0 8553 mul qword ptr [24+rcx]
michael@0 8554 add r13, rax
michael@0 8555 adc r8, rdx
michael@0 8556 adc r12, 0
michael@0 8557 add r13, rax
michael@0 8558 adc r8, rdx
michael@0 8559 adc r12, 0
michael@0 8560 mov rbx, r8
michael@0 8561 mov r10, r12
michael@0 8562 mov r8, r9
michael@0 8563 mov rax, qword ptr [16+rcx]
michael@0 8564 mul rax
michael@0 8565 add r13, rax
michael@0 8566 adc rbx, rdx
michael@0 8567 adc r10, 0
michael@0 8568 mov qword ptr [-256+rbp], r13
michael@0 8569 mov rax, qword ptr [rcx]
michael@0 8570 mul qword ptr [40+rcx]
michael@0 8571 mov r8, rax
michael@0 8572 mov rdi, rdx
michael@0 8573 xor rsi, rsi
michael@0 8574 mov rax, qword ptr [8+rcx]
michael@0 8575 mul qword ptr [32+rcx]
michael@0 8576 add r8, rax
michael@0 8577 adc rdi, rdx
michael@0 8578 adc rsi, 0
michael@0 8579 mov rax, qword ptr [16+rcx]
michael@0 8580 mul qword ptr [24+rcx]
michael@0 8581 add r8, rax
michael@0 8582 adc rdi, rdx
michael@0 8583 adc rsi, 0
michael@0 8584 add rbx, r8
michael@0 8585 adc r10, rdi
michael@0 8586 adc r11, rsi
michael@0 8587 add rbx, r8
michael@0 8588 adc r10, rdi
michael@0 8589 adc r11, rsi
michael@0 8590 mov qword ptr [-248+rbp], rbx
michael@0 8591 mov rax, qword ptr [rcx]
michael@0 8592 mul qword ptr [48+rcx]
michael@0 8593 mov r8, rax
michael@0 8594 mov rdi, rdx
michael@0 8595 xor rsi, rsi
michael@0 8596 mov rax, qword ptr [8+rcx]
michael@0 8597 mul qword ptr [40+rcx]
michael@0 8598 add r8, rax
michael@0 8599 adc rdi, rdx
michael@0 8600 adc rsi, 0
michael@0 8601 mov rax, qword ptr [16+rcx]
michael@0 8602 mul qword ptr [32+rcx]
michael@0 8603 add r8, rax
michael@0 8604 adc rdi, rdx
michael@0 8605 adc rsi, 0
michael@0 8606 mov rax, r9
michael@0 8607 mov r13, rdi
michael@0 8608 mov r12, rsi
michael@0 8609 add r10, r8
michael@0 8610 adc r11, r13
michael@0 8611 adc rax, r12
michael@0 8612 add r10, r8
michael@0 8613 adc r11, r13
michael@0 8614 adc rax, r12
michael@0 8615 mov rdx, rax
michael@0 8616 mov rbx, r11
michael@0 8617 mov rdi, r13
michael@0 8618 mov r11, rdx
michael@0 8619 mov rsi, r12
michael@0 8620 mov rax, qword ptr [24+rcx]
michael@0 8621 mul rax
michael@0 8622 add r10, rax
michael@0 8623 adc rbx, rdx
michael@0 8624 adc r11, 0
michael@0 8625 mov qword ptr [-240+rbp], r10
michael@0 8626 mov r10, r11
michael@0 8627 mov rax, qword ptr [rcx]
michael@0 8628 mul qword ptr [56+rcx]
michael@0 8629 mov r8, rax
michael@0 8630 mov rdi, rdx
michael@0 8631 xor rsi, rsi
michael@0 8632 mov rax, qword ptr [8+rcx]
michael@0 8633 mul qword ptr [48+rcx]
michael@0 8634 add r8, rax
michael@0 8635 adc rdi, rdx
michael@0 8636 adc rsi, 0
michael@0 8637 mov rax, qword ptr [16+rcx]
michael@0 8638 mul qword ptr [40+rcx]
michael@0 8639 add r8, rax
michael@0 8640 adc rdi, rdx
michael@0 8641 adc rsi, 0
michael@0 8642 mov rax, qword ptr [24+rcx]
michael@0 8643 mul qword ptr [32+rcx]
michael@0 8644 add r8, rax
michael@0 8645 adc rdi, rdx
michael@0 8646 adc rsi, 0
michael@0 8647 mov rdx, r9
michael@0 8648 add rbx, r8
michael@0 8649 adc r10, rdi
michael@0 8650 adc rdx, rsi
michael@0 8651 add rbx, r8
michael@0 8652 adc r10, rdi
michael@0 8653 adc rdx, rsi
michael@0 8654 mov r11, rdx
michael@0 8655 mov qword ptr [-232+rbp], rbx
michael@0 8656 mov rbx, r9
michael@0 8657 mov rax, qword ptr [rcx]
michael@0 8658 mul qword ptr [64+rcx]
michael@0 8659 mov r8, rax
michael@0 8660 mov rdi, rdx
michael@0 8661 xor rsi, rsi
michael@0 8662 mov rax, qword ptr [8+rcx]
michael@0 8663 mul qword ptr [56+rcx]
michael@0 8664 add r8, rax
michael@0 8665 adc rdi, rdx
michael@0 8666 adc rsi, 0
michael@0 8667 mov rax, qword ptr [16+rcx]
michael@0 8668 mul qword ptr [48+rcx]
michael@0 8669 add r8, rax
michael@0 8670 adc rdi, rdx
michael@0 8671 adc rsi, 0
michael@0 8672 mov rax, qword ptr [24+rcx]
michael@0 8673 mul qword ptr [40+rcx]
michael@0 8674 add r8, rax
michael@0 8675 adc rdi, rdx
michael@0 8676 adc rsi, 0
michael@0 8677 mov r13, rdi
michael@0 8678 mov r12, rsi
michael@0 8679 add r10, r8
michael@0 8680 adc r11, r13
michael@0 8681 adc rbx, r12
michael@0 8682 add r10, r8
michael@0 8683 adc r11, r13
michael@0 8684 adc rbx, r12
michael@0 8685 mov rax, qword ptr [32+rcx]
michael@0 8686 mul rax
michael@0 8687 add r10, rax
michael@0 8688 adc r11, rdx
michael@0 8689 adc rbx, 0
michael@0 8690 mov rdi, r13
michael@0 8691 mov qword ptr [-224+rbp], r10
michael@0 8692 mov rsi, r12
michael@0 8693 mov r10, rbx
michael@0 8694 mov r12, r9
michael@0 8695 mov rax, qword ptr [rcx]
michael@0 8696 mul qword ptr [72+rcx]
michael@0 8697 mov r8, rax
michael@0 8698 mov rdi, rdx
michael@0 8699 xor rsi, rsi
michael@0 8700 mov rax, qword ptr [8+rcx]
michael@0 8701 mul qword ptr [64+rcx]
michael@0 8702 add r8, rax
michael@0 8703 adc rdi, rdx
michael@0 8704 adc rsi, 0
michael@0 8705 mov rax, qword ptr [16+rcx]
michael@0 8706 mul qword ptr [56+rcx]
michael@0 8707 add r8, rax
michael@0 8708 adc rdi, rdx
michael@0 8709 adc rsi, 0
michael@0 8710 mov rax, qword ptr [24+rcx]
michael@0 8711 mul qword ptr [48+rcx]
michael@0 8712 add r8, rax
michael@0 8713 adc rdi, rdx
michael@0 8714 adc rsi, 0
michael@0 8715 mov rax, qword ptr [32+rcx]
michael@0 8716 mul qword ptr [40+rcx]
michael@0 8717 add r8, rax
michael@0 8718 adc rdi, rdx
michael@0 8719 adc rsi, 0
michael@0 8720 add r11, r8
michael@0 8721 adc r10, rdi
michael@0 8722 adc r12, rsi
michael@0 8723 add r11, r8
michael@0 8724 adc r10, rdi
michael@0 8725 adc r12, rsi
michael@0 8726 mov qword ptr [-216+rbp], r11
michael@0 8727 mov rbx, r12
michael@0 8728 mov rax, qword ptr [rcx]
michael@0 8729 mul qword ptr [80+rcx]
michael@0 8730 mov r8, rax
michael@0 8731 mov rdi, rdx
michael@0 8732 xor rsi, rsi
michael@0 8733 mov rax, qword ptr [8+rcx]
michael@0 8734 mul qword ptr [72+rcx]
michael@0 8735 add r8, rax
michael@0 8736 adc rdi, rdx
michael@0 8737 adc rsi, 0
michael@0 8738 mov rax, qword ptr [16+rcx]
michael@0 8739 mul qword ptr [64+rcx]
michael@0 8740 add r8, rax
michael@0 8741 adc rdi, rdx
michael@0 8742 adc rsi, 0
michael@0 8743 mov rax, qword ptr [24+rcx]
michael@0 8744 mul qword ptr [56+rcx]
michael@0 8745 add r8, rax
michael@0 8746 adc rdi, rdx
michael@0 8747 adc rsi, 0
michael@0 8748 mov rax, qword ptr [32+rcx]
michael@0 8749 mul qword ptr [48+rcx]
michael@0 8750 add r8, rax
michael@0 8751 adc rdi, rdx
michael@0 8752 adc rsi, 0
michael@0 8753 mov rax, r9
michael@0 8754 mov r13, rdi
michael@0 8755 mov r12, rsi
michael@0 8756 add r10, r8
michael@0 8757 adc rbx, r13
michael@0 8758 adc rax, r12
michael@0 8759 add r10, r8
michael@0 8760 adc rbx, r13
michael@0 8761 adc rax, r12
michael@0 8762 mov rdx, rax
michael@0 8763 mov r11, rbx
michael@0 8764 mov rdi, r13
michael@0 8765 mov rbx, rdx
michael@0 8766 mov rsi, r12
michael@0 8767 mov rax, qword ptr [40+rcx]
michael@0 8768 mul rax
michael@0 8769 add r10, rax
michael@0 8770 adc r11, rdx
michael@0 8771 adc rbx, 0
michael@0 8772 mov qword ptr [-208+rbp], r10
michael@0 8773 mov r10, rbx
michael@0 8774 mov rax, qword ptr [rcx]
michael@0 8775 mul qword ptr [88+rcx]
michael@0 8776 mov r8, rax
michael@0 8777 mov rdi, rdx
michael@0 8778 xor rsi, rsi
michael@0 8779 mov rax, qword ptr [8+rcx]
michael@0 8780 mul qword ptr [80+rcx]
michael@0 8781 add r8, rax
michael@0 8782 adc rdi, rdx
michael@0 8783 adc rsi, 0
michael@0 8784 mov rax, qword ptr [16+rcx]
michael@0 8785 mul qword ptr [72+rcx]
michael@0 8786 add r8, rax
michael@0 8787 adc rdi, rdx
michael@0 8788 adc rsi, 0
michael@0 8789 mov rax, qword ptr [24+rcx]
michael@0 8790 mul qword ptr [64+rcx]
michael@0 8791 add r8, rax
michael@0 8792 adc rdi, rdx
michael@0 8793 adc rsi, 0
michael@0 8794 mov rax, qword ptr [32+rcx]
michael@0 8795 mul qword ptr [56+rcx]
michael@0 8796 add r8, rax
michael@0 8797 adc rdi, rdx
michael@0 8798 adc rsi, 0
michael@0 8799 mov rax, qword ptr [40+rcx]
michael@0 8800 mul qword ptr [48+rcx]
michael@0 8801 add r8, rax
michael@0 8802 adc rdi, rdx
michael@0 8803 adc rsi, 0
michael@0 8804 mov rdx, r9
michael@0 8805 add r11, r8
michael@0 8806 adc r10, rdi
michael@0 8807 adc rdx, rsi
michael@0 8808 add r11, r8
michael@0 8809 adc r10, rdi
michael@0 8810 adc rdx, rsi
michael@0 8811 mov r13, rdx
michael@0 8812 mov qword ptr [-200+rbp], r11
michael@0 8813 mov r12, r13
michael@0 8814 mov rax, qword ptr [rcx]
michael@0 8815 mul qword ptr [96+rcx]
michael@0 8816 mov r8, rax
michael@0 8817 mov rdi, rdx
michael@0 8818 xor rsi, rsi
michael@0 8819 mov rax, qword ptr [8+rcx]
michael@0 8820 mul qword ptr [88+rcx]
michael@0 8821 add r8, rax
michael@0 8822 adc rdi, rdx
michael@0 8823 adc rsi, 0
michael@0 8824 mov rax, qword ptr [16+rcx]
michael@0 8825 mul qword ptr [80+rcx]
michael@0 8826 add r8, rax
michael@0 8827 adc rdi, rdx
michael@0 8828 adc rsi, 0
michael@0 8829 mov rax, qword ptr [24+rcx]
michael@0 8830 mul qword ptr [72+rcx]
michael@0 8831 add r8, rax
michael@0 8832 adc rdi, rdx
michael@0 8833 adc rsi, 0
michael@0 8834 mov rax, qword ptr [32+rcx]
michael@0 8835 mul qword ptr [64+rcx]
michael@0 8836 add r8, rax
michael@0 8837 adc rdi, rdx
michael@0 8838 adc rsi, 0
michael@0 8839 mov rax, qword ptr [40+rcx]
michael@0 8840 mul qword ptr [56+rcx]
michael@0 8841 add r8, rax
michael@0 8842 adc rdi, rdx
michael@0 8843 adc rsi, 0
michael@0 8844 mov rax, r9
michael@0 8845 mov rdx, rdi
michael@0 8846 mov r11, rsi
michael@0 8847 add r10, r8
michael@0 8848 adc r12, rdx
michael@0 8849 adc rax, r11
michael@0 8850 add r10, r8
michael@0 8851 adc r12, rdx
michael@0 8852 adc rax, r11
michael@0 8853 mov rbx, rdx
michael@0 8854 mov r13, rax
michael@0 8855 mov rsi, r11
michael@0 8856 mov rax, qword ptr [48+rcx]
michael@0 8857 mul rax
michael@0 8858 add r10, rax
michael@0 8859 adc r12, rdx
michael@0 8860 adc r13, 0
michael@0 8861 mov rdi, rbx
michael@0 8862 mov qword ptr [-192+rbp], r10
michael@0 8863 mov r10, r13
michael@0 8864 mov rax, qword ptr [rcx]
michael@0 8865 mul qword ptr [104+rcx]
michael@0 8866 mov r8, rax
michael@0 8867 mov rdi, rdx
michael@0 8868 xor rsi, rsi
michael@0 8869 mov r13, r9
michael@0 8870 mov rax, qword ptr [8+rcx]
michael@0 8871 mul qword ptr [96+rcx]
michael@0 8872 add r8, rax
michael@0 8873 adc rdi, rdx
michael@0 8874 adc rsi, 0
michael@0 8875 mov rax, qword ptr [16+rcx]
michael@0 8876 mul qword ptr [88+rcx]
michael@0 8877 add r8, rax
michael@0 8878 adc rdi, rdx
michael@0 8879 adc rsi, 0
michael@0 8880 mov rax, qword ptr [24+rcx]
michael@0 8881 mul qword ptr [80+rcx]
michael@0 8882 add r8, rax
michael@0 8883 adc rdi, rdx
michael@0 8884 adc rsi, 0
michael@0 8885 mov rax, qword ptr [32+rcx]
michael@0 8886 mul qword ptr [72+rcx]
michael@0 8887 add r8, rax
michael@0 8888 adc rdi, rdx
michael@0 8889 adc rsi, 0
michael@0 8890 mov rax, qword ptr [40+rcx]
michael@0 8891 mul qword ptr [64+rcx]
michael@0 8892 add r8, rax
michael@0 8893 adc rdi, rdx
michael@0 8894 adc rsi, 0
michael@0 8895 mov rax, qword ptr [48+rcx]
michael@0 8896 mul qword ptr [56+rcx]
michael@0 8897 add r8, rax
michael@0 8898 adc rdi, rdx
michael@0 8899 adc rsi, 0
michael@0 8900 add r12, r8
michael@0 8901 adc r10, rdi
michael@0 8902 adc r13, rsi
michael@0 8903 add r12, r8
michael@0 8904 adc r10, rdi
michael@0 8905 adc r13, rsi
michael@0 8906 mov qword ptr [-184+rbp], r12
michael@0 8907 mov r12, r13
michael@0 8908 mov rax, qword ptr [rcx]
michael@0 8909 mul qword ptr [112+rcx]
michael@0 8910 mov r8, rax
michael@0 8911 mov rdi, rdx
michael@0 8912 xor rsi, rsi
michael@0 8913 mov rax, qword ptr [8+rcx]
michael@0 8914 mul qword ptr [104+rcx]
michael@0 8915 add r8, rax
michael@0 8916 adc rdi, rdx
michael@0 8917 adc rsi, 0
michael@0 8918 mov rax, qword ptr [16+rcx]
michael@0 8919 mul qword ptr [96+rcx]
michael@0 8920 add r8, rax
michael@0 8921 adc rdi, rdx
michael@0 8922 adc rsi, 0
michael@0 8923 mov rax, qword ptr [24+rcx]
michael@0 8924 mul qword ptr [88+rcx]
michael@0 8925 add r8, rax
michael@0 8926 adc rdi, rdx
michael@0 8927 adc rsi, 0
michael@0 8928 mov rax, qword ptr [32+rcx]
michael@0 8929 mul qword ptr [80+rcx]
michael@0 8930 add r8, rax
michael@0 8931 adc rdi, rdx
michael@0 8932 adc rsi, 0
michael@0 8933 mov rax, qword ptr [40+rcx]
michael@0 8934 mul qword ptr [72+rcx]
michael@0 8935 add r8, rax
michael@0 8936 adc rdi, rdx
michael@0 8937 adc rsi, 0
michael@0 8938 mov rax, qword ptr [48+rcx]
michael@0 8939 mul qword ptr [64+rcx]
michael@0 8940 add r8, rax
michael@0 8941 adc rdi, rdx
michael@0 8942 adc rsi, 0
michael@0 8943 mov rax, r9
michael@0 8944 mov rbx, rdi
michael@0 8945 mov rdx, rsi
michael@0 8946 add r10, r8
michael@0 8947 adc r12, rbx
michael@0 8948 adc rax, rdx
michael@0 8949 add r10, r8
michael@0 8950 adc r12, rbx
michael@0 8951 adc rax, rdx
michael@0 8952 mov r11, rdx
michael@0 8953 mov r13, rax
michael@0 8954 mov rdi, rbx
michael@0 8955 mov rax, qword ptr [56+rcx]
michael@0 8956 mul rax
michael@0 8957 add r10, rax
michael@0 8958 adc r12, rdx
michael@0 8959 adc r13, 0
michael@0 8960 mov rsi, r11
michael@0 8961 mov qword ptr [-176+rbp], r10
michael@0 8962 mov r10, r13
michael@0 8963 mov rax, qword ptr [rcx]
michael@0 8964 mul qword ptr [120+rcx]
michael@0 8965 mov r8, rax
michael@0 8966 mov rdi, rdx
michael@0 8967 xor rsi, rsi
michael@0 8968 mov r13, r9
michael@0 8969 mov rax, qword ptr [8+rcx]
michael@0 8970 mul qword ptr [112+rcx]
michael@0 8971 add r8, rax
michael@0 8972 adc rdi, rdx
michael@0 8973 adc rsi, 0
michael@0 8974 mov rax, qword ptr [16+rcx]
michael@0 8975 mul qword ptr [104+rcx]
michael@0 8976 add r8, rax
michael@0 8977 adc rdi, rdx
michael@0 8978 adc rsi, 0
michael@0 8979 mov rax, qword ptr [24+rcx]
michael@0 8980 mul qword ptr [96+rcx]
michael@0 8981 add r8, rax
michael@0 8982 adc rdi, rdx
michael@0 8983 adc rsi, 0
michael@0 8984 mov rax, qword ptr [32+rcx]
michael@0 8985 mul qword ptr [88+rcx]
michael@0 8986 add r8, rax
michael@0 8987 adc rdi, rdx
michael@0 8988 adc rsi, 0
michael@0 8989 mov rax, qword ptr [40+rcx]
michael@0 8990 mul qword ptr [80+rcx]
michael@0 8991 add r8, rax
michael@0 8992 adc rdi, rdx
michael@0 8993 adc rsi, 0
michael@0 8994 mov rax, qword ptr [48+rcx]
michael@0 8995 mul qword ptr [72+rcx]
michael@0 8996 add r8, rax
michael@0 8997 adc rdi, rdx
michael@0 8998 adc rsi, 0
michael@0 8999 mov rax, qword ptr [56+rcx]
michael@0 9000 mul qword ptr [64+rcx]
michael@0 9001 add r8, rax
michael@0 9002 adc rdi, rdx
michael@0 9003 adc rsi, 0
michael@0 9004 add r12, r8
michael@0 9005 adc r10, rdi
michael@0 9006 adc r13, rsi
michael@0 9007 add r12, r8
michael@0 9008 adc r10, rdi
michael@0 9009 adc r13, rsi
michael@0 9010 mov qword ptr [-168+rbp], r12
michael@0 9011 mov r12, r13
michael@0 9012 mov rax, qword ptr [8+rcx]
michael@0 9013 mul qword ptr [120+rcx]
michael@0 9014 mov r8, rax
michael@0 9015 mov rdi, rdx
michael@0 9016 xor rsi, rsi
michael@0 9017 mov rax, qword ptr [16+rcx]
michael@0 9018 mul qword ptr [112+rcx]
michael@0 9019 add r8, rax
michael@0 9020 adc rdi, rdx
michael@0 9021 adc rsi, 0
michael@0 9022 mov rax, qword ptr [24+rcx]
michael@0 9023 mul qword ptr [104+rcx]
michael@0 9024 add r8, rax
michael@0 9025 adc rdi, rdx
michael@0 9026 adc rsi, 0
michael@0 9027 mov rax, qword ptr [32+rcx]
michael@0 9028 mul qword ptr [96+rcx]
michael@0 9029 add r8, rax
michael@0 9030 adc rdi, rdx
michael@0 9031 adc rsi, 0
michael@0 9032 mov rax, qword ptr [40+rcx]
michael@0 9033 mul qword ptr [88+rcx]
michael@0 9034 add r8, rax
michael@0 9035 adc rdi, rdx
michael@0 9036 adc rsi, 0
michael@0 9037 mov rax, qword ptr [48+rcx]
michael@0 9038 mul qword ptr [80+rcx]
michael@0 9039 add r8, rax
michael@0 9040 adc rdi, rdx
michael@0 9041 adc rsi, 0
michael@0 9042 mov rax, qword ptr [56+rcx]
michael@0 9043 mul qword ptr [72+rcx]
michael@0 9044 add r8, rax
michael@0 9045 adc rdi, rdx
michael@0 9046 adc rsi, 0
michael@0 9047 mov rax, r9
michael@0 9048 mov rbx, rdi
michael@0 9049 mov rdx, rsi
michael@0 9050 add r10, r8
michael@0 9051 adc r12, rbx
michael@0 9052 adc rax, rdx
michael@0 9053 add r10, r8
michael@0 9054 adc r12, rbx
michael@0 9055 adc rax, rdx
michael@0 9056 mov r11, rdx
michael@0 9057 mov r13, rax
michael@0 9058 mov rdi, rbx
michael@0 9059 mov rax, qword ptr [64+rcx]
michael@0 9060 mul rax
michael@0 9061 add r10, rax
michael@0 9062 adc r12, rdx
michael@0 9063 adc r13, 0
michael@0 9064 mov rsi, r11
michael@0 9065 mov qword ptr [-160+rbp], r10
michael@0 9066 mov r11, r9
michael@0 9067 mov rax, qword ptr [16+rcx]
michael@0 9068 mul qword ptr [120+rcx]
michael@0 9069 mov r8, rax
michael@0 9070 mov rdi, rdx
michael@0 9071 xor rsi, rsi
michael@0 9072 mov r10, r13
michael@0 9073 mov rbx, r9
michael@0 9074 mov rax, qword ptr [24+rcx]
michael@0 9075 mul qword ptr [112+rcx]
michael@0 9076 add r8, rax
michael@0 9077 adc rdi, rdx
michael@0 9078 adc rsi, 0
michael@0 9079 mov rax, qword ptr [32+rcx]
michael@0 9080 mul qword ptr [104+rcx]
michael@0 9081 add r8, rax
michael@0 9082 adc rdi, rdx
michael@0 9083 adc rsi, 0
michael@0 9084 mov rax, qword ptr [40+rcx]
michael@0 9085 mul qword ptr [96+rcx]
michael@0 9086 add r8, rax
michael@0 9087 adc rdi, rdx
michael@0 9088 adc rsi, 0
michael@0 9089 mov rax, qword ptr [48+rcx]
michael@0 9090 mul qword ptr [88+rcx]
michael@0 9091 add r8, rax
michael@0 9092 adc rdi, rdx
michael@0 9093 adc rsi, 0
michael@0 9094 mov rax, qword ptr [56+rcx]
michael@0 9095 mul qword ptr [80+rcx]
michael@0 9096 add r8, rax
michael@0 9097 adc rdi, rdx
michael@0 9098 adc rsi, 0
michael@0 9099 mov rax, qword ptr [64+rcx]
michael@0 9100 mul qword ptr [72+rcx]
michael@0 9101 add r8, rax
michael@0 9102 adc rdi, rdx
michael@0 9103 adc rsi, 0
michael@0 9104 add r12, r8
michael@0 9105 adc r10, rdi
michael@0 9106 adc r11, rsi
michael@0 9107 add r12, r8
michael@0 9108 adc r10, rdi
michael@0 9109 adc r11, rsi
michael@0 9110 mov qword ptr [-152+rbp], r12
michael@0 9111 mov rax, qword ptr [24+rcx]
michael@0 9112 mul qword ptr [120+rcx]
michael@0 9113 mov r8, rax
michael@0 9114 mov rdi, rdx
michael@0 9115 xor rsi, rsi
michael@0 9116 mov rax, qword ptr [32+rcx]
michael@0 9117 mul qword ptr [112+rcx]
michael@0 9118 add r8, rax
michael@0 9119 adc rdi, rdx
michael@0 9120 adc rsi, 0
michael@0 9121 mov rax, qword ptr [40+rcx]
michael@0 9122 mul qword ptr [104+rcx]
michael@0 9123 add r8, rax
michael@0 9124 adc rdi, rdx
michael@0 9125 adc rsi, 0
michael@0 9126 mov rax, qword ptr [48+rcx]
michael@0 9127 mul qword ptr [96+rcx]
michael@0 9128 add r8, rax
michael@0 9129 adc rdi, rdx
michael@0 9130 adc rsi, 0
michael@0 9131 mov rax, qword ptr [56+rcx]
michael@0 9132 mul qword ptr [88+rcx]
michael@0 9133 add r8, rax
michael@0 9134 adc rdi, rdx
michael@0 9135 adc rsi, 0
michael@0 9136 mov rax, qword ptr [64+rcx]
michael@0 9137 mul qword ptr [80+rcx]
michael@0 9138 add r8, rax
michael@0 9139 adc rdi, rdx
michael@0 9140 adc rsi, 0
michael@0 9141 mov r13, rdi
michael@0 9142 mov r12, rsi
michael@0 9143 add r10, r8
michael@0 9144 adc r11, r13
michael@0 9145 adc rbx, r12
michael@0 9146 add r10, r8
michael@0 9147 adc r11, r13
michael@0 9148 adc rbx, r12
michael@0 9149 mov rdx, rbx
michael@0 9150 mov rdi, r13
michael@0 9151 mov rbx, r11
michael@0 9152 mov rsi, r12
michael@0 9153 mov r11, rdx
michael@0 9154 mov r12, r9
michael@0 9155 mov rax, qword ptr [72+rcx]
michael@0 9156 mul rax
michael@0 9157 add r10, rax
michael@0 9158 adc rbx, rdx
michael@0 9159 adc r11, 0
michael@0 9160 mov qword ptr [-144+rbp], r10
michael@0 9161 mov r10, r11
michael@0 9162 mov rax, qword ptr [32+rcx]
michael@0 9163 mul qword ptr [120+rcx]
michael@0 9164 mov r8, rax
michael@0 9165 mov rdi, rdx
michael@0 9166 xor rsi, rsi
michael@0 9167 mov rax, qword ptr [40+rcx]
michael@0 9168 mul qword ptr [112+rcx]
michael@0 9169 add r8, rax
michael@0 9170 adc rdi, rdx
michael@0 9171 adc rsi, 0
michael@0 9172 mov rax, qword ptr [48+rcx]
michael@0 9173 mul qword ptr [104+rcx]
michael@0 9174 add r8, rax
michael@0 9175 adc rdi, rdx
michael@0 9176 adc rsi, 0
michael@0 9177 mov rax, qword ptr [56+rcx]
michael@0 9178 mul qword ptr [96+rcx]
michael@0 9179 add r8, rax
michael@0 9180 adc rdi, rdx
michael@0 9181 adc rsi, 0
michael@0 9182 mov rax, qword ptr [64+rcx]
michael@0 9183 mul qword ptr [88+rcx]
michael@0 9184 add r8, rax
michael@0 9185 adc rdi, rdx
michael@0 9186 adc rsi, 0
michael@0 9187 mov rax, qword ptr [72+rcx]
michael@0 9188 mul qword ptr [80+rcx]
michael@0 9189 add r8, rax
michael@0 9190 adc rdi, rdx
michael@0 9191 adc rsi, 0
michael@0 9192 add rbx, r8
michael@0 9193 adc r10, rdi
michael@0 9194 adc r12, rsi
michael@0 9195 add rbx, r8
michael@0 9196 adc r10, rdi
michael@0 9197 adc r12, rsi
michael@0 9198 mov qword ptr [-136+rbp], rbx
michael@0 9199 mov r11, r12
michael@0 9200 mov rax, qword ptr [40+rcx]
michael@0 9201 mul qword ptr [120+rcx]
michael@0 9202 mov r8, rax
michael@0 9203 mov rdi, rdx
michael@0 9204 xor rsi, rsi
michael@0 9205 mov rax, qword ptr [48+rcx]
michael@0 9206 mul qword ptr [112+rcx]
michael@0 9207 add r8, rax
michael@0 9208 adc rdi, rdx
michael@0 9209 adc rsi, 0
michael@0 9210 mov rax, qword ptr [56+rcx]
michael@0 9211 mul qword ptr [104+rcx]
michael@0 9212 add r8, rax
michael@0 9213 adc rdi, rdx
michael@0 9214 adc rsi, 0
michael@0 9215 mov rax, qword ptr [64+rcx]
michael@0 9216 mul qword ptr [96+rcx]
michael@0 9217 add r8, rax
michael@0 9218 adc rdi, rdx
michael@0 9219 adc rsi, 0
michael@0 9220 mov rax, qword ptr [72+rcx]
michael@0 9221 mul qword ptr [88+rcx]
michael@0 9222 add r8, rax
michael@0 9223 adc rdi, rdx
michael@0 9224 adc rsi, 0
michael@0 9225 mov rax, r9
michael@0 9226 mov r13, rdi
michael@0 9227 mov r12, rsi
michael@0 9228 add r10, r8
michael@0 9229 adc r11, r13
michael@0 9230 adc rax, r12
michael@0 9231 add r10, r8
michael@0 9232 adc r11, r13
michael@0 9233 adc rax, r12
michael@0 9234 mov rdx, rax
michael@0 9235 mov rbx, r11
michael@0 9236 mov rdi, r13
michael@0 9237 mov r11, rdx
michael@0 9238 mov rsi, r12
michael@0 9239 mov rax, qword ptr [80+rcx]
michael@0 9240 mul rax
michael@0 9241 add r10, rax
michael@0 9242 adc rbx, rdx
michael@0 9243 adc r11, 0
michael@0 9244 mov qword ptr [-128+rbp], r10
michael@0 9245 mov r10, r11
michael@0 9246 mov rax, qword ptr [48+rcx]
michael@0 9247 mul qword ptr [120+rcx]
michael@0 9248 mov r8, rax
michael@0 9249 mov rdi, rdx
michael@0 9250 xor rsi, rsi
michael@0 9251 mov rax, qword ptr [56+rcx]
michael@0 9252 mul qword ptr [112+rcx]
michael@0 9253 add r8, rax
michael@0 9254 adc rdi, rdx
michael@0 9255 adc rsi, 0
michael@0 9256 mov rax, qword ptr [64+rcx]
michael@0 9257 mul qword ptr [104+rcx]
michael@0 9258 add r8, rax
michael@0 9259 adc rdi, rdx
michael@0 9260 adc rsi, 0
michael@0 9261 mov rax, qword ptr [72+rcx]
michael@0 9262 mul qword ptr [96+rcx]
michael@0 9263 add r8, rax
michael@0 9264 adc rdi, rdx
michael@0 9265 adc rsi, 0
michael@0 9266 mov rax, qword ptr [80+rcx]
michael@0 9267 mul qword ptr [88+rcx]
michael@0 9268 add r8, rax
michael@0 9269 adc rdi, rdx
michael@0 9270 adc rsi, 0
michael@0 9271 mov rdx, r9
michael@0 9272 add rbx, r8
michael@0 9273 adc r10, rdi
michael@0 9274 adc rdx, rsi
michael@0 9275 add rbx, r8
michael@0 9276 adc r10, rdi
michael@0 9277 adc rdx, rsi
michael@0 9278 mov qword ptr [-120+rbp], rbx
michael@0 9279 mov r11, rdx
michael@0 9280 mov rbx, r9
michael@0 9281 mov rax, qword ptr [56+rcx]
michael@0 9282 mul qword ptr [120+rcx]
michael@0 9283 mov r8, rax
michael@0 9284 mov rdi, rdx
michael@0 9285 xor rsi, rsi
michael@0 9286 mov rax, qword ptr [64+rcx]
michael@0 9287 mul qword ptr [112+rcx]
michael@0 9288 add r8, rax
michael@0 9289 adc rdi, rdx
michael@0 9290 adc rsi, 0
michael@0 9291 mov rax, qword ptr [72+rcx]
michael@0 9292 mul qword ptr [104+rcx]
michael@0 9293 add r8, rax
michael@0 9294 adc rdi, rdx
michael@0 9295 adc rsi, 0
michael@0 9296 mov rax, qword ptr [80+rcx]
michael@0 9297 mul qword ptr [96+rcx]
michael@0 9298 add r8, rax
michael@0 9299 adc rdi, rdx
michael@0 9300 adc rsi, 0
michael@0 9301 mov r13, rdi
michael@0 9302 mov r12, rsi
michael@0 9303 add r10, r8
michael@0 9304 adc r11, r13
michael@0 9305 adc rbx, r12
michael@0 9306 add r10, r8
michael@0 9307 adc r11, r13
michael@0 9308 adc rbx, r12
michael@0 9309 mov rdx, rbx
michael@0 9310 mov rdi, r13
michael@0 9311 mov rbx, r11
michael@0 9312 mov rsi, r12
michael@0 9313 mov r11, rdx
michael@0 9314 mov r12, r9
michael@0 9315 mov rax, qword ptr [88+rcx]
michael@0 9316 mul rax
michael@0 9317 add r10, rax
michael@0 9318 adc rbx, rdx
michael@0 9319 adc r11, 0
michael@0 9320 mov qword ptr [-112+rbp], r10
michael@0 9321 mov r10, r11
michael@0 9322 mov rax, qword ptr [64+rcx]
michael@0 9323 mul qword ptr [120+rcx]
michael@0 9324 mov r8, rax
michael@0 9325 mov rdi, rdx
michael@0 9326 xor rsi, rsi
michael@0 9327 mov rax, qword ptr [72+rcx]
michael@0 9328 mul qword ptr [112+rcx]
michael@0 9329 add r8, rax
michael@0 9330 adc rdi, rdx
michael@0 9331 adc rsi, 0
michael@0 9332 mov rax, qword ptr [80+rcx]
michael@0 9333 mul qword ptr [104+rcx]
michael@0 9334 add r8, rax
michael@0 9335 adc rdi, rdx
michael@0 9336 adc rsi, 0
michael@0 9337 mov rax, qword ptr [88+rcx]
michael@0 9338 mul qword ptr [96+rcx]
michael@0 9339 add r8, rax
michael@0 9340 adc rdi, rdx
michael@0 9341 adc rsi, 0
michael@0 9342 add rbx, r8
michael@0 9343 adc r10, rdi
michael@0 9344 adc r12, rsi
michael@0 9345 add rbx, r8
michael@0 9346 adc r10, rdi
michael@0 9347 adc r12, rsi
michael@0 9348 mov qword ptr [-104+rbp], rbx
michael@0 9349 mov r11, r12
michael@0 9350 mov rax, qword ptr [72+rcx]
michael@0 9351 mul qword ptr [120+rcx]
michael@0 9352 mov r8, rax
michael@0 9353 mov rdi, rdx
michael@0 9354 xor rsi, rsi
michael@0 9355 mov rax, qword ptr [80+rcx]
michael@0 9356 mul qword ptr [112+rcx]
michael@0 9357 add r8, rax
michael@0 9358 adc rdi, rdx
michael@0 9359 adc rsi, 0
michael@0 9360 mov rax, qword ptr [88+rcx]
michael@0 9361 mul qword ptr [104+rcx]
michael@0 9362 add r8, rax
michael@0 9363 adc rdi, rdx
michael@0 9364 adc rsi, 0
michael@0 9365 mov rax, r9
michael@0 9366 mov r13, rdi
michael@0 9367 mov r12, rsi
michael@0 9368 add r10, r8
michael@0 9369 adc r11, r13
michael@0 9370 adc rax, r12
michael@0 9371 add r10, r8
michael@0 9372 adc r11, r13
michael@0 9373 adc rax, r12
michael@0 9374 mov rdx, rax
michael@0 9375 mov rbx, r11
michael@0 9376 mov rdi, r13
michael@0 9377 mov r11, rdx
michael@0 9378 mov rsi, r12
michael@0 9379 mov rax, qword ptr [96+rcx]
michael@0 9380 mul rax
michael@0 9381 add r10, rax
michael@0 9382 adc rbx, rdx
michael@0 9383 adc r11, 0
michael@0 9384 mov qword ptr [-96+rbp], r10
michael@0 9385 mov r10, r9
michael@0 9386 mov rax, qword ptr [80+rcx]
michael@0 9387 mul qword ptr [120+rcx]
michael@0 9388 mov r8, rax
michael@0 9389 mov rdi, rdx
michael@0 9390 xor rsi, rsi
michael@0 9391 mov rax, qword ptr [88+rcx]
michael@0 9392 mul qword ptr [112+rcx]
michael@0 9393 add r8, rax
michael@0 9394 adc rdi, rdx
michael@0 9395 adc rsi, 0
michael@0 9396 mov rax, qword ptr [96+rcx]
michael@0 9397 mul qword ptr [104+rcx]
michael@0 9398 add r8, rax
michael@0 9399 adc rdi, rdx
michael@0 9400 adc rsi, 0
michael@0 9401 mov r12, rdi
michael@0 9402 mov rax, rsi
michael@0 9403 mov rsi, r9
michael@0 9404 add rbx, r8
michael@0 9405 adc r11, r12
michael@0 9406 adc r10, rax
michael@0 9407 add rbx, r8
michael@0 9408 adc r11, r12
michael@0 9409 adc r10, rax
michael@0 9410 mov r12, r9
michael@0 9411 mov qword ptr [-88+rbp], rbx
michael@0 9412 mov r13, r11
michael@0 9413 mov r11, r10
michael@0 9414 mov rax, qword ptr [88+rcx]
michael@0 9415 mul qword ptr [120+rcx]
michael@0 9416 add r13, rax
michael@0 9417 adc r11, rdx
michael@0 9418 adc r12, 0
michael@0 9419 add r13, rax
michael@0 9420 adc r11, rdx
michael@0 9421 adc r12, 0
michael@0 9422 mov rdi, r12
michael@0 9423 mov rax, qword ptr [96+rcx]
michael@0 9424 mul qword ptr [112+rcx]
michael@0 9425 add r13, rax
michael@0 9426 adc r11, rdx
michael@0 9427 adc rdi, 0
michael@0 9428 add r13, rax
michael@0 9429 adc r11, rdx
michael@0 9430 adc rdi, 0
michael@0 9431 mov rbx, r11
michael@0 9432 mov r10, rdi
michael@0 9433 mov r11, r9
michael@0 9434 mov rax, qword ptr [104+rcx]
michael@0 9435 mul rax
michael@0 9436 add r13, rax
michael@0 9437 adc rbx, rdx
michael@0 9438 adc r10, 0
michael@0 9439 mov qword ptr [-80+rbp], r13
michael@0 9440 mov r8, r10
michael@0 9441 mov r10, rbx
michael@0 9442 mov rax, qword ptr [96+rcx]
michael@0 9443 mul qword ptr [120+rcx]
michael@0 9444 add r10, rax
michael@0 9445 adc r8, rdx
michael@0 9446 adc rsi, 0
michael@0 9447 add r10, rax
michael@0 9448 adc r8, rdx
michael@0 9449 adc rsi, 0
michael@0 9450 mov r12, r8
michael@0 9451 mov rbx, rsi
michael@0 9452 mov rax, qword ptr [104+rcx]
michael@0 9453 mul qword ptr [112+rcx]
michael@0 9454 add r10, rax
michael@0 9455 adc r12, rdx
michael@0 9456 adc rbx, 0
michael@0 9457 add r10, rax
michael@0 9458 adc r12, rdx
michael@0 9459 adc rbx, 0
michael@0 9460 mov qword ptr [-72+rbp], r10
michael@0 9461 mov r13, rbx
michael@0 9462 mov rbx, r12
michael@0 9463 mov rax, qword ptr [104+rcx]
michael@0 9464 mul qword ptr [120+rcx]
michael@0 9465 add rbx, rax
michael@0 9466 adc r13, rdx
michael@0 9467 adc r11, 0
michael@0 9468 add rbx, rax
michael@0 9469 adc r13, rdx
michael@0 9470 adc r11, 0
michael@0 9471 mov r12, r11
michael@0 9472 mov r10, r13
michael@0 9473 mov rax, qword ptr [112+rcx]
michael@0 9474 mul rax
michael@0 9475 add rbx, rax
michael@0 9476 adc r10, rdx
michael@0 9477 adc r12, 0
michael@0 9478 mov qword ptr [-64+rbp], rbx
michael@0 9479 mov rdi, r10
michael@0 9480 mov rbx, r9
michael@0 9481 mov rsi, r12
michael@0 9482 mov rax, qword ptr [112+rcx]
michael@0 9483 mul qword ptr [120+rcx]
michael@0 9484 add rdi, rax
michael@0 9485 adc rsi, rdx
michael@0 9486 adc rbx, 0
michael@0 9487 add rdi, rax
michael@0 9488 adc rsi, rdx
michael@0 9489 adc rbx, 0
michael@0 9490 mov qword ptr [-56+rbp], rdi
michael@0 9491 mov r8, rbx
michael@0 9492 mov rax, qword ptr [120+rcx]
michael@0 9493 mul rax
michael@0 9494 add rsi, rax
michael@0 9495 adc r8, rdx
michael@0 9496 adc r9, 0
michael@0 9497 mov qword ptr [-48+rbp], rsi
michael@0 9498 mov qword ptr [-40+rbp], r8
michael@0 9499 mov dword ptr [8+r14], 32
michael@0 9500 mov dword ptr [r14], 0
michael@0 9501 ; mov rdi, qword ptr [16+r14]
michael@0 9502 ; lea rsi, qword ptr [-288+rbp]
michael@0 9503 ; mov edx, 256
michael@0 9504 mov rcx, qword ptr [16+r14]
michael@0 9505 lea rdx, qword ptr [-288+rbp]
michael@0 9506 mov r8d, 256
michael@0 9507 call memcpy
michael@0 9508 mov edx, dword ptr [8+r14]
michael@0 9509 test edx, edx
michael@0 9510 je L232
michael@0 9511 lea ecx, dword ptr [-1+rdx]
michael@0 9512 mov rsi, qword ptr [16+r14]
michael@0 9513 mov r9d, ecx
michael@0 9514 cmp dword ptr [rsi+r9*8], 0
michael@0 9515 jne L230
michael@0 9516 mov edx, ecx
michael@0 9517 ALIGN 16
michael@0 9518 L231:
michael@0 9519 test edx, edx
michael@0 9520 mov ecx, edx
michael@0 9521 je L235
michael@0 9522 dec edx
michael@0 9523 mov eax, edx
michael@0 9524 cmp dword ptr [rsi+rax*8], 0
michael@0 9525 je L231
michael@0 9526 mov dword ptr [8+r14], ecx
michael@0 9527 mov edx, ecx
michael@0 9528 L230:
michael@0 9529 test edx, edx
michael@0 9530 je L232
michael@0 9531 mov eax, dword ptr [r14]
michael@0 9532 jmp L233
michael@0 9533
michael@0 9534 L235:
michael@0 9535 mov dword ptr [8+r14], edx
michael@0 9536 L232:
michael@0 9537 xor eax, eax
michael@0 9538 L233:
michael@0 9539 mov dword ptr [r14], eax
michael@0 9540 add rsp, 256+32 ; +32 for "home" storage
michael@0 9541 pop rbx
michael@0 9542 pop r12
michael@0 9543 pop r13
michael@0 9544 pop r14
michael@0 9545 pop rbp
michael@0 9546 pop rsi
michael@0 9547 pop rdi
michael@0 9548
michael@0 9549 ret
michael@0 9550
michael@0 9551 s_mp_sqr_comba_16 ENDP
michael@0 9552
michael@0 9553
michael@0 9554 ; void s_mp_sqr_comba_32(const mp_int *A, mp_int *B);
michael@0 9555
michael@0 9556 ALIGN 16
michael@0 9557 s_mp_sqr_comba_32 PROC ; A "FRAME" function
michael@0 9558
michael@0 9559 push rdi
michael@0 9560 push rsi
michael@0 9561
michael@0 9562 mov rdi, rcx
michael@0 9563 mov rsi, rdx
michael@0 9564
michael@0 9565 push rbp
michael@0 9566 xor r10d, r10d
michael@0 9567 mov r8, r10
michael@0 9568 mov r11, r10
michael@0 9569 mov rbp, rsp
michael@0 9570 push r14
michael@0 9571 mov r14, rsi
michael@0 9572 mov rsi, r10
michael@0 9573 push r13
michael@0 9574 mov r13, r10
michael@0 9575 push r12
michael@0 9576 mov r12, r10
michael@0 9577 push rbx
michael@0 9578 mov rbx, r10
michael@0 9579 sub rsp, 512+32 ; +32 for "home" storage
michael@0 9580 mov rcx, qword ptr [16+rdi]
michael@0 9581 mov rax, qword ptr [rcx]
michael@0 9582 mul rax
michael@0 9583 add r8, rax
michael@0 9584 adc rbx, rdx
michael@0 9585 adc rsi, 0
michael@0 9586 mov qword ptr [-544+rbp], r8
michael@0 9587 mov rax, qword ptr [rcx]
michael@0 9588 mul qword ptr [8+rcx]
michael@0 9589 add rbx, rax
michael@0 9590 adc rsi, rdx
michael@0 9591 adc r12, 0
michael@0 9592 add rbx, rax
michael@0 9593 adc rsi, rdx
michael@0 9594 adc r12, 0
michael@0 9595 mov qword ptr [-536+rbp], rbx
michael@0 9596 mov rax, qword ptr [rcx]
michael@0 9597 mul qword ptr [16+rcx]
michael@0 9598 add rsi, rax
michael@0 9599 adc r12, rdx
michael@0 9600 adc r13, 0
michael@0 9601 add rsi, rax
michael@0 9602 adc r12, rdx
michael@0 9603 adc r13, 0
michael@0 9604 mov rbx, r12
michael@0 9605 mov r9, r13
michael@0 9606 mov rax, qword ptr [8+rcx]
michael@0 9607 mul rax
michael@0 9608 add rsi, rax
michael@0 9609 adc rbx, rdx
michael@0 9610 adc r9, 0
michael@0 9611 mov qword ptr [-528+rbp], rsi
michael@0 9612 mov rdi, r9
michael@0 9613 mov rsi, r10
michael@0 9614 mov r9, rbx
michael@0 9615 mov rax, qword ptr [rcx]
michael@0 9616 mul qword ptr [24+rcx]
michael@0 9617 add r9, rax
michael@0 9618 adc rdi, rdx
michael@0 9619 adc r11, 0
michael@0 9620 add r9, rax
michael@0 9621 adc rdi, rdx
michael@0 9622 adc r11, 0
michael@0 9623 mov r12, rdi
michael@0 9624 mov r13, r11
michael@0 9625 mov rdi, r10
michael@0 9626 mov rax, qword ptr [8+rcx]
michael@0 9627 mul qword ptr [16+rcx]
michael@0 9628 add r9, rax
michael@0 9629 adc r12, rdx
michael@0 9630 adc r13, 0
michael@0 9631 add r9, rax
michael@0 9632 adc r12, rdx
michael@0 9633 adc r13, 0
michael@0 9634 mov r11, r10
michael@0 9635 mov qword ptr [-520+rbp], r9
michael@0 9636 mov r8, r13
michael@0 9637 mov r13, r12
michael@0 9638 mov r12, r10
michael@0 9639 mov rax, qword ptr [rcx]
michael@0 9640 mul qword ptr [32+rcx]
michael@0 9641 add r13, rax
michael@0 9642 adc r8, rdx
michael@0 9643 adc r12, 0
michael@0 9644 add r13, rax
michael@0 9645 adc r8, rdx
michael@0 9646 adc r12, 0
michael@0 9647 mov rax, qword ptr [8+rcx]
michael@0 9648 mul qword ptr [24+rcx]
michael@0 9649 add r13, rax
michael@0 9650 adc r8, rdx
michael@0 9651 adc r12, 0
michael@0 9652 add r13, rax
michael@0 9653 adc r8, rdx
michael@0 9654 adc r12, 0
michael@0 9655 mov rbx, r8
michael@0 9656 mov r9, r12
michael@0 9657 mov r8, r10
michael@0 9658 mov rax, qword ptr [16+rcx]
michael@0 9659 mul rax
michael@0 9660 add r13, rax
michael@0 9661 adc rbx, rdx
michael@0 9662 adc r9, 0
michael@0 9663 mov qword ptr [-512+rbp], r13
michael@0 9664 mov rax, qword ptr [rcx]
michael@0 9665 mul qword ptr [40+rcx]
michael@0 9666 mov r8, rax
michael@0 9667 mov rdi, rdx
michael@0 9668 xor rsi, rsi
michael@0 9669 mov rax, qword ptr [8+rcx]
michael@0 9670 mul qword ptr [32+rcx]
michael@0 9671 add r8, rax
michael@0 9672 adc rdi, rdx
michael@0 9673 adc rsi, 0
michael@0 9674 mov rax, qword ptr [16+rcx]
michael@0 9675 mul qword ptr [24+rcx]
michael@0 9676 add r8, rax
michael@0 9677 adc rdi, rdx
michael@0 9678 adc rsi, 0
michael@0 9679 add rbx, r8
michael@0 9680 adc r9, rdi
michael@0 9681 adc r11, rsi
michael@0 9682 add rbx, r8
michael@0 9683 adc r9, rdi
michael@0 9684 adc r11, rsi
michael@0 9685 mov qword ptr [-504+rbp], rbx
michael@0 9686 mov rax, qword ptr [rcx]
michael@0 9687 mul qword ptr [48+rcx]
michael@0 9688 mov r8, rax
michael@0 9689 mov rdi, rdx
michael@0 9690 xor rsi, rsi
michael@0 9691 mov rax, qword ptr [8+rcx]
michael@0 9692 mul qword ptr [40+rcx]
michael@0 9693 add r8, rax
michael@0 9694 adc rdi, rdx
michael@0 9695 adc rsi, 0
michael@0 9696 mov rax, qword ptr [16+rcx]
michael@0 9697 mul qword ptr [32+rcx]
michael@0 9698 add r8, rax
michael@0 9699 adc rdi, rdx
michael@0 9700 adc rsi, 0
michael@0 9701 mov rax, r10
michael@0 9702 mov r13, rdi
michael@0 9703 mov r12, rsi
michael@0 9704 add r9, r8
michael@0 9705 adc r11, r13
michael@0 9706 adc rax, r12
michael@0 9707 add r9, r8
michael@0 9708 adc r11, r13
michael@0 9709 adc rax, r12
michael@0 9710 mov rdx, rax
michael@0 9711 mov rbx, r11
michael@0 9712 mov rdi, r13
michael@0 9713 mov r11, rdx
michael@0 9714 mov rsi, r12
michael@0 9715 mov rax, qword ptr [24+rcx]
michael@0 9716 mul rax
michael@0 9717 add r9, rax
michael@0 9718 adc rbx, rdx
michael@0 9719 adc r11, 0
michael@0 9720 mov qword ptr [-496+rbp], r9
michael@0 9721 mov r9, r11
michael@0 9722 mov rax, qword ptr [rcx]
michael@0 9723 mul qword ptr [56+rcx]
michael@0 9724 mov r8, rax
michael@0 9725 mov rdi, rdx
michael@0 9726 xor rsi, rsi
michael@0 9727 mov rax, qword ptr [8+rcx]
michael@0 9728 mul qword ptr [48+rcx]
michael@0 9729 add r8, rax
michael@0 9730 adc rdi, rdx
michael@0 9731 adc rsi, 0
michael@0 9732 mov rax, qword ptr [16+rcx]
michael@0 9733 mul qword ptr [40+rcx]
michael@0 9734 add r8, rax
michael@0 9735 adc rdi, rdx
michael@0 9736 adc rsi, 0
michael@0 9737 mov rax, qword ptr [24+rcx]
michael@0 9738 mul qword ptr [32+rcx]
michael@0 9739 add r8, rax
michael@0 9740 adc rdi, rdx
michael@0 9741 adc rsi, 0
michael@0 9742 mov rdx, r10
michael@0 9743 add rbx, r8
michael@0 9744 adc r9, rdi
michael@0 9745 adc rdx, rsi
michael@0 9746 add rbx, r8
michael@0 9747 adc r9, rdi
michael@0 9748 adc rdx, rsi
michael@0 9749 mov r11, rdx
michael@0 9750 mov qword ptr [-488+rbp], rbx
michael@0 9751 mov rbx, r10
michael@0 9752 mov rax, qword ptr [rcx]
michael@0 9753 mul qword ptr [64+rcx]
michael@0 9754 mov r8, rax
michael@0 9755 mov rdi, rdx
michael@0 9756 xor rsi, rsi
michael@0 9757 mov rax, qword ptr [8+rcx]
michael@0 9758 mul qword ptr [56+rcx]
michael@0 9759 add r8, rax
michael@0 9760 adc rdi, rdx
michael@0 9761 adc rsi, 0
michael@0 9762 mov rax, qword ptr [16+rcx]
michael@0 9763 mul qword ptr [48+rcx]
michael@0 9764 add r8, rax
michael@0 9765 adc rdi, rdx
michael@0 9766 adc rsi, 0
michael@0 9767 mov rax, qword ptr [24+rcx]
michael@0 9768 mul qword ptr [40+rcx]
michael@0 9769 add r8, rax
michael@0 9770 adc rdi, rdx
michael@0 9771 adc rsi, 0
michael@0 9772 mov r13, rdi
michael@0 9773 mov r12, rsi
michael@0 9774 add r9, r8
michael@0 9775 adc r11, r13
michael@0 9776 adc rbx, r12
michael@0 9777 add r9, r8
michael@0 9778 adc r11, r13
michael@0 9779 adc rbx, r12
michael@0 9780 mov rax, qword ptr [32+rcx]
michael@0 9781 mul rax
michael@0 9782 add r9, rax
michael@0 9783 adc r11, rdx
michael@0 9784 adc rbx, 0
michael@0 9785 mov rdi, r13
michael@0 9786 mov qword ptr [-480+rbp], r9
michael@0 9787 mov rsi, r12
michael@0 9788 mov r9, rbx
michael@0 9789 mov r12, r10
michael@0 9790 mov rax, qword ptr [rcx]
michael@0 9791 mul qword ptr [72+rcx]
michael@0 9792 mov r8, rax
michael@0 9793 mov rdi, rdx
michael@0 9794 xor rsi, rsi
michael@0 9795 mov rax, qword ptr [8+rcx]
michael@0 9796 mul qword ptr [64+rcx]
michael@0 9797 add r8, rax
michael@0 9798 adc rdi, rdx
michael@0 9799 adc rsi, 0
michael@0 9800 mov rax, qword ptr [16+rcx]
michael@0 9801 mul qword ptr [56+rcx]
michael@0 9802 add r8, rax
michael@0 9803 adc rdi, rdx
michael@0 9804 adc rsi, 0
michael@0 9805 mov rax, qword ptr [24+rcx]
michael@0 9806 mul qword ptr [48+rcx]
michael@0 9807 add r8, rax
michael@0 9808 adc rdi, rdx
michael@0 9809 adc rsi, 0
michael@0 9810 mov rax, qword ptr [32+rcx]
michael@0 9811 mul qword ptr [40+rcx]
michael@0 9812 add r8, rax
michael@0 9813 adc rdi, rdx
michael@0 9814 adc rsi, 0
michael@0 9815 add r11, r8
michael@0 9816 adc r9, rdi
michael@0 9817 adc r12, rsi
michael@0 9818 add r11, r8
michael@0 9819 adc r9, rdi
michael@0 9820 adc r12, rsi
michael@0 9821 mov qword ptr [-472+rbp], r11
michael@0 9822 mov rbx, r12
michael@0 9823 mov rax, qword ptr [rcx]
michael@0 9824 mul qword ptr [80+rcx]
michael@0 9825 mov r8, rax
michael@0 9826 mov rdi, rdx
michael@0 9827 xor rsi, rsi
michael@0 9828 mov rax, qword ptr [8+rcx]
michael@0 9829 mul qword ptr [72+rcx]
michael@0 9830 add r8, rax
michael@0 9831 adc rdi, rdx
michael@0 9832 adc rsi, 0
michael@0 9833 mov rax, qword ptr [16+rcx]
michael@0 9834 mul qword ptr [64+rcx]
michael@0 9835 add r8, rax
michael@0 9836 adc rdi, rdx
michael@0 9837 adc rsi, 0
michael@0 9838 mov rax, qword ptr [24+rcx]
michael@0 9839 mul qword ptr [56+rcx]
michael@0 9840 add r8, rax
michael@0 9841 adc rdi, rdx
michael@0 9842 adc rsi, 0
michael@0 9843 mov rax, qword ptr [32+rcx]
michael@0 9844 mul qword ptr [48+rcx]
michael@0 9845 add r8, rax
michael@0 9846 adc rdi, rdx
michael@0 9847 adc rsi, 0
michael@0 9848 mov rax, r10
michael@0 9849 mov r13, rdi
michael@0 9850 mov r12, rsi
michael@0 9851 add r9, r8
michael@0 9852 adc rbx, r13
michael@0 9853 adc rax, r12
michael@0 9854 add r9, r8
michael@0 9855 adc rbx, r13
michael@0 9856 adc rax, r12
michael@0 9857 mov rdx, rax
michael@0 9858 mov r11, rbx
michael@0 9859 mov rdi, r13
michael@0 9860 mov rbx, rdx
michael@0 9861 mov rsi, r12
michael@0 9862 mov rax, qword ptr [40+rcx]
michael@0 9863 mul rax
michael@0 9864 add r9, rax
michael@0 9865 adc r11, rdx
michael@0 9866 adc rbx, 0
michael@0 9867 mov qword ptr [-464+rbp], r9
michael@0 9868 mov r9, rbx
michael@0 9869 mov rax, qword ptr [rcx]
michael@0 9870 mul qword ptr [88+rcx]
michael@0 9871 mov r8, rax
michael@0 9872 mov rdi, rdx
michael@0 9873 xor rsi, rsi
michael@0 9874 mov rax, qword ptr [8+rcx]
michael@0 9875 mul qword ptr [80+rcx]
michael@0 9876 add r8, rax
michael@0 9877 adc rdi, rdx
michael@0 9878 adc rsi, 0
michael@0 9879 mov rax, qword ptr [16+rcx]
michael@0 9880 mul qword ptr [72+rcx]
michael@0 9881 add r8, rax
michael@0 9882 adc rdi, rdx
michael@0 9883 adc rsi, 0
michael@0 9884 mov rax, qword ptr [24+rcx]
michael@0 9885 mul qword ptr [64+rcx]
michael@0 9886 add r8, rax
michael@0 9887 adc rdi, rdx
michael@0 9888 adc rsi, 0
michael@0 9889 mov rax, qword ptr [32+rcx]
michael@0 9890 mul qword ptr [56+rcx]
michael@0 9891 add r8, rax
michael@0 9892 adc rdi, rdx
michael@0 9893 adc rsi, 0
michael@0 9894 mov rax, qword ptr [40+rcx]
michael@0 9895 mul qword ptr [48+rcx]
michael@0 9896 add r8, rax
michael@0 9897 adc rdi, rdx
michael@0 9898 adc rsi, 0
michael@0 9899 mov rdx, r10
michael@0 9900 add r11, r8
michael@0 9901 adc r9, rdi
michael@0 9902 adc rdx, rsi
michael@0 9903 add r11, r8
michael@0 9904 adc r9, rdi
michael@0 9905 adc rdx, rsi
michael@0 9906 mov r13, rdx
michael@0 9907 mov qword ptr [-456+rbp], r11
michael@0 9908 mov r12, r13
michael@0 9909 mov r13, r10
michael@0 9910 mov rax, qword ptr [rcx]
michael@0 9911 mul qword ptr [96+rcx]
michael@0 9912 mov r8, rax
michael@0 9913 mov rdi, rdx
michael@0 9914 xor rsi, rsi
michael@0 9915 mov rax, qword ptr [8+rcx]
michael@0 9916 mul qword ptr [88+rcx]
michael@0 9917 add r8, rax
michael@0 9918 adc rdi, rdx
michael@0 9919 adc rsi, 0
michael@0 9920 mov rax, qword ptr [16+rcx]
michael@0 9921 mul qword ptr [80+rcx]
michael@0 9922 add r8, rax
michael@0 9923 adc rdi, rdx
michael@0 9924 adc rsi, 0
michael@0 9925 mov rax, qword ptr [24+rcx]
michael@0 9926 mul qword ptr [72+rcx]
michael@0 9927 add r8, rax
michael@0 9928 adc rdi, rdx
michael@0 9929 adc rsi, 0
michael@0 9930 mov rax, qword ptr [32+rcx]
michael@0 9931 mul qword ptr [64+rcx]
michael@0 9932 add r8, rax
michael@0 9933 adc rdi, rdx
michael@0 9934 adc rsi, 0
michael@0 9935 mov rax, qword ptr [40+rcx]
michael@0 9936 mul qword ptr [56+rcx]
michael@0 9937 add r8, rax
michael@0 9938 adc rdi, rdx
michael@0 9939 adc rsi, 0
michael@0 9940 mov rax, rdi
michael@0 9941 mov r11, rsi
michael@0 9942 add r9, r8
michael@0 9943 adc r12, rax
michael@0 9944 adc r13, r11
michael@0 9945 add r9, r8
michael@0 9946 adc r12, rax
michael@0 9947 adc r13, r11
michael@0 9948 mov rbx, rax
michael@0 9949 mov rsi, r11
michael@0 9950 mov rax, qword ptr [48+rcx]
michael@0 9951 mul rax
michael@0 9952 add r9, rax
michael@0 9953 adc r12, rdx
michael@0 9954 adc r13, 0
michael@0 9955 mov rdi, rbx
michael@0 9956 mov qword ptr [-448+rbp], r9
michael@0 9957 mov r9, r13
michael@0 9958 mov rax, qword ptr [rcx]
michael@0 9959 mul qword ptr [104+rcx]
michael@0 9960 mov r8, rax
michael@0 9961 mov rdi, rdx
michael@0 9962 xor rsi, rsi
michael@0 9963 mov r13, r10
michael@0 9964 mov rax, qword ptr [8+rcx]
michael@0 9965 mul qword ptr [96+rcx]
michael@0 9966 add r8, rax
michael@0 9967 adc rdi, rdx
michael@0 9968 adc rsi, 0
michael@0 9969 mov rax, qword ptr [16+rcx]
michael@0 9970 mul qword ptr [88+rcx]
michael@0 9971 add r8, rax
michael@0 9972 adc rdi, rdx
michael@0 9973 adc rsi, 0
michael@0 9974 mov rax, qword ptr [24+rcx]
michael@0 9975 mul qword ptr [80+rcx]
michael@0 9976 add r8, rax
michael@0 9977 adc rdi, rdx
michael@0 9978 adc rsi, 0
michael@0 9979 mov rax, qword ptr [32+rcx]
michael@0 9980 mul qword ptr [72+rcx]
michael@0 9981 add r8, rax
michael@0 9982 adc rdi, rdx
michael@0 9983 adc rsi, 0
michael@0 9984 mov rax, qword ptr [40+rcx]
michael@0 9985 mul qword ptr [64+rcx]
michael@0 9986 add r8, rax
michael@0 9987 adc rdi, rdx
michael@0 9988 adc rsi, 0
michael@0 9989 mov rax, qword ptr [48+rcx]
michael@0 9990 mul qword ptr [56+rcx]
michael@0 9991 add r8, rax
michael@0 9992 adc rdi, rdx
michael@0 9993 adc rsi, 0
michael@0 9994 add r12, r8
michael@0 9995 adc r9, rdi
michael@0 9996 adc r13, rsi
michael@0 9997 add r12, r8
michael@0 9998 adc r9, rdi
michael@0 9999 adc r13, rsi
michael@0 10000 mov qword ptr [-440+rbp], r12
michael@0 10001 mov r12, r10
michael@0 10002 mov rax, qword ptr [rcx]
michael@0 10003 mul qword ptr [112+rcx]
michael@0 10004 mov r8, rax
michael@0 10005 mov rdi, rdx
michael@0 10006 xor rsi, rsi
michael@0 10007 mov rax, qword ptr [8+rcx]
michael@0 10008 mul qword ptr [104+rcx]
michael@0 10009 add r8, rax
michael@0 10010 adc rdi, rdx
michael@0 10011 adc rsi, 0
michael@0 10012 mov rax, qword ptr [16+rcx]
michael@0 10013 mul qword ptr [96+rcx]
michael@0 10014 add r8, rax
michael@0 10015 adc rdi, rdx
michael@0 10016 adc rsi, 0
michael@0 10017 mov rax, qword ptr [24+rcx]
michael@0 10018 mul qword ptr [88+rcx]
michael@0 10019 add r8, rax
michael@0 10020 adc rdi, rdx
michael@0 10021 adc rsi, 0
michael@0 10022 mov rax, qword ptr [32+rcx]
michael@0 10023 mul qword ptr [80+rcx]
michael@0 10024 add r8, rax
michael@0 10025 adc rdi, rdx
michael@0 10026 adc rsi, 0
michael@0 10027 mov rax, qword ptr [40+rcx]
michael@0 10028 mul qword ptr [72+rcx]
michael@0 10029 add r8, rax
michael@0 10030 adc rdi, rdx
michael@0 10031 adc rsi, 0
michael@0 10032 mov rax, qword ptr [48+rcx]
michael@0 10033 mul qword ptr [64+rcx]
michael@0 10034 add r8, rax
michael@0 10035 adc rdi, rdx
michael@0 10036 adc rsi, 0
michael@0 10037 mov rdx, r13
michael@0 10038 mov rbx, rdi
michael@0 10039 mov r13, rsi
michael@0 10040 add r9, r8
michael@0 10041 adc rdx, rbx
michael@0 10042 adc r12, r13
michael@0 10043 add r9, r8
michael@0 10044 adc rdx, rbx
michael@0 10045 adc r12, r13
michael@0 10046 mov rax, r12
michael@0 10047 mov r11, r13
michael@0 10048 mov r12, rdx
michael@0 10049 mov r13, rax
michael@0 10050 mov rdi, rbx
michael@0 10051 mov rsi, r11
michael@0 10052 mov rax, qword ptr [56+rcx]
michael@0 10053 mul rax
michael@0 10054 add r9, rax
michael@0 10055 adc r12, rdx
michael@0 10056 adc r13, 0
michael@0 10057 mov qword ptr [-432+rbp], r9
michael@0 10058 mov r9, r13
michael@0 10059 mov r13, r10
michael@0 10060 mov rax, qword ptr [rcx]
michael@0 10061 mul qword ptr [120+rcx]
michael@0 10062 mov r8, rax
michael@0 10063 mov rdi, rdx
michael@0 10064 xor rsi, rsi
michael@0 10065 mov rax, qword ptr [8+rcx]
michael@0 10066 mul qword ptr [112+rcx]
michael@0 10067 add r8, rax
michael@0 10068 adc rdi, rdx
michael@0 10069 adc rsi, 0
michael@0 10070 mov rax, qword ptr [16+rcx]
michael@0 10071 mul qword ptr [104+rcx]
michael@0 10072 add r8, rax
michael@0 10073 adc rdi, rdx
michael@0 10074 adc rsi, 0
michael@0 10075 mov rax, qword ptr [24+rcx]
michael@0 10076 mul qword ptr [96+rcx]
michael@0 10077 add r8, rax
michael@0 10078 adc rdi, rdx
michael@0 10079 adc rsi, 0
michael@0 10080 mov rax, qword ptr [32+rcx]
michael@0 10081 mul qword ptr [88+rcx]
michael@0 10082 add r8, rax
michael@0 10083 adc rdi, rdx
michael@0 10084 adc rsi, 0
michael@0 10085 mov rax, qword ptr [40+rcx]
michael@0 10086 mul qword ptr [80+rcx]
michael@0 10087 add r8, rax
michael@0 10088 adc rdi, rdx
michael@0 10089 adc rsi, 0
michael@0 10090 mov rax, qword ptr [48+rcx]
michael@0 10091 mul qword ptr [72+rcx]
michael@0 10092 add r8, rax
michael@0 10093 adc rdi, rdx
michael@0 10094 adc rsi, 0
michael@0 10095 mov rax, qword ptr [56+rcx]
michael@0 10096 mul qword ptr [64+rcx]
michael@0 10097 add r8, rax
michael@0 10098 adc rdi, rdx
michael@0 10099 adc rsi, 0
michael@0 10100 mov rax, r8
michael@0 10101 mov rdx, rdi
michael@0 10102 mov rbx, rsi
michael@0 10103 add r12, rax
michael@0 10104 adc r9, rdx
michael@0 10105 adc r13, rbx
michael@0 10106 add r12, rax
michael@0 10107 adc r9, rdx
michael@0 10108 adc r13, rbx
michael@0 10109 mov qword ptr [-424+rbp], r12
michael@0 10110 mov r8, rdx
michael@0 10111 mov rsi, rax
michael@0 10112 mov rdi, rbx
michael@0 10113 mov r12, r13
michael@0 10114 mov r13, r10
michael@0 10115 mov rax, qword ptr [rcx]
michael@0 10116 mul qword ptr [128+rcx]
michael@0 10117 mov rsi, rax
michael@0 10118 mov r8, rdx
michael@0 10119 xor rdi, rdi
michael@0 10120 mov rax, qword ptr [8+rcx]
michael@0 10121 mul qword ptr [120+rcx]
michael@0 10122 add rsi, rax
michael@0 10123 adc r8, rdx
michael@0 10124 adc rdi, 0
michael@0 10125 mov rax, qword ptr [16+rcx]
michael@0 10126 mul qword ptr [112+rcx]
michael@0 10127 add rsi, rax
michael@0 10128 adc r8, rdx
michael@0 10129 adc rdi, 0
michael@0 10130 mov rax, qword ptr [24+rcx]
michael@0 10131 mul qword ptr [104+rcx]
michael@0 10132 add rsi, rax
michael@0 10133 adc r8, rdx
michael@0 10134 adc rdi, 0
michael@0 10135 mov rax, qword ptr [32+rcx]
michael@0 10136 mul qword ptr [96+rcx]
michael@0 10137 add rsi, rax
michael@0 10138 adc r8, rdx
michael@0 10139 adc rdi, 0
michael@0 10140 mov rax, qword ptr [40+rcx]
michael@0 10141 mul qword ptr [88+rcx]
michael@0 10142 add rsi, rax
michael@0 10143 adc r8, rdx
michael@0 10144 adc rdi, 0
michael@0 10145 mov rax, qword ptr [48+rcx]
michael@0 10146 mul qword ptr [80+rcx]
michael@0 10147 add rsi, rax
michael@0 10148 adc r8, rdx
michael@0 10149 adc rdi, 0
michael@0 10150 mov rax, qword ptr [56+rcx]
michael@0 10151 mul qword ptr [72+rcx]
michael@0 10152 add rsi, rax
michael@0 10153 adc r8, rdx
michael@0 10154 adc rdi, 0
michael@0 10155 mov rax, rsi
michael@0 10156 mov rbx, r8
michael@0 10157 mov rdx, rdi
michael@0 10158 add r9, rax
michael@0 10159 adc r12, rbx
michael@0 10160 adc r13, rdx
michael@0 10161 add r9, rax
michael@0 10162 adc r12, rbx
michael@0 10163 adc r13, rdx
michael@0 10164 mov r11, rdx
michael@0 10165 mov r8, rax
michael@0 10166 mov rdi, rbx
michael@0 10167 mov rax, qword ptr [64+rcx]
michael@0 10168 mul rax
michael@0 10169 add r9, rax
michael@0 10170 adc r12, rdx
michael@0 10171 adc r13, 0
michael@0 10172 mov rsi, r11
michael@0 10173 mov qword ptr [-416+rbp], r9
michael@0 10174 mov r9, r13
michael@0 10175 mov rax, qword ptr [rcx]
michael@0 10176 mul qword ptr [136+rcx]
michael@0 10177 mov r8, rax
michael@0 10178 mov rdi, rdx
michael@0 10179 xor rsi, rsi
michael@0 10180 mov r13, r10
michael@0 10181 mov rax, qword ptr [8+rcx]
michael@0 10182 mul qword ptr [128+rcx]
michael@0 10183 add r8, rax
michael@0 10184 adc rdi, rdx
michael@0 10185 adc rsi, 0
michael@0 10186 mov rax, qword ptr [16+rcx]
michael@0 10187 mul qword ptr [120+rcx]
michael@0 10188 add r8, rax
michael@0 10189 adc rdi, rdx
michael@0 10190 adc rsi, 0
michael@0 10191 mov rax, qword ptr [24+rcx]
michael@0 10192 mul qword ptr [112+rcx]
michael@0 10193 add r8, rax
michael@0 10194 adc rdi, rdx
michael@0 10195 adc rsi, 0
michael@0 10196 mov rax, qword ptr [32+rcx]
michael@0 10197 mul qword ptr [104+rcx]
michael@0 10198 add r8, rax
michael@0 10199 adc rdi, rdx
michael@0 10200 adc rsi, 0
michael@0 10201 mov rax, qword ptr [40+rcx]
michael@0 10202 mul qword ptr [96+rcx]
michael@0 10203 add r8, rax
michael@0 10204 adc rdi, rdx
michael@0 10205 adc rsi, 0
michael@0 10206 mov rax, qword ptr [48+rcx]
michael@0 10207 mul qword ptr [88+rcx]
michael@0 10208 add r8, rax
michael@0 10209 adc rdi, rdx
michael@0 10210 adc rsi, 0
michael@0 10211 mov rax, qword ptr [56+rcx]
michael@0 10212 mul qword ptr [80+rcx]
michael@0 10213 add r8, rax
michael@0 10214 adc rdi, rdx
michael@0 10215 adc rsi, 0
michael@0 10216 mov rax, qword ptr [64+rcx]
michael@0 10217 mul qword ptr [72+rcx]
michael@0 10218 add r8, rax
michael@0 10219 adc rdi, rdx
michael@0 10220 adc rsi, 0
michael@0 10221 mov rbx, r8
michael@0 10222 mov rax, rdi
michael@0 10223 mov rdx, rsi
michael@0 10224 add r12, rbx
michael@0 10225 adc r9, rax
michael@0 10226 adc r13, rdx
michael@0 10227 add r12, rbx
michael@0 10228 adc r9, rax
michael@0 10229 adc r13, rdx
michael@0 10230 mov qword ptr [-408+rbp], r12
michael@0 10231 mov rdi, rdx
michael@0 10232 mov r8, rax
michael@0 10233 mov rsi, rbx
michael@0 10234 mov r12, r13
michael@0 10235 mov r13, r10
michael@0 10236 mov rax, qword ptr [rcx]
michael@0 10237 mul qword ptr [144+rcx]
michael@0 10238 mov rsi, rax
michael@0 10239 mov r8, rdx
michael@0 10240 xor rdi, rdi
michael@0 10241 mov rax, qword ptr [8+rcx]
michael@0 10242 mul qword ptr [136+rcx]
michael@0 10243 add rsi, rax
michael@0 10244 adc r8, rdx
michael@0 10245 adc rdi, 0
michael@0 10246 mov rax, qword ptr [16+rcx]
michael@0 10247 mul qword ptr [128+rcx]
michael@0 10248 add rsi, rax
michael@0 10249 adc r8, rdx
michael@0 10250 adc rdi, 0
michael@0 10251 mov rax, qword ptr [24+rcx]
michael@0 10252 mul qword ptr [120+rcx]
michael@0 10253 add rsi, rax
michael@0 10254 adc r8, rdx
michael@0 10255 adc rdi, 0
michael@0 10256 mov rax, qword ptr [32+rcx]
michael@0 10257 mul qword ptr [112+rcx]
michael@0 10258 add rsi, rax
michael@0 10259 adc r8, rdx
michael@0 10260 adc rdi, 0
michael@0 10261 mov rax, qword ptr [40+rcx]
michael@0 10262 mul qword ptr [104+rcx]
michael@0 10263 add rsi, rax
michael@0 10264 adc r8, rdx
michael@0 10265 adc rdi, 0
michael@0 10266 mov rax, qword ptr [48+rcx]
michael@0 10267 mul qword ptr [96+rcx]
michael@0 10268 add rsi, rax
michael@0 10269 adc r8, rdx
michael@0 10270 adc rdi, 0
michael@0 10271 mov rax, qword ptr [56+rcx]
michael@0 10272 mul qword ptr [88+rcx]
michael@0 10273 add rsi, rax
michael@0 10274 adc r8, rdx
michael@0 10275 adc rdi, 0
michael@0 10276 mov rax, qword ptr [64+rcx]
michael@0 10277 mul qword ptr [80+rcx]
michael@0 10278 add rsi, rax
michael@0 10279 adc r8, rdx
michael@0 10280 adc rdi, 0
michael@0 10281 mov rax, rsi
michael@0 10282 mov rbx, r8
michael@0 10283 mov rdx, rdi
michael@0 10284 add r9, rax
michael@0 10285 adc r12, rbx
michael@0 10286 adc r13, rdx
michael@0 10287 add r9, rax
michael@0 10288 adc r12, rbx
michael@0 10289 adc r13, rdx
michael@0 10290 mov r11, rdx
michael@0 10291 mov r8, rax
michael@0 10292 mov rdi, rbx
michael@0 10293 mov rax, qword ptr [72+rcx]
michael@0 10294 mul rax
michael@0 10295 add r9, rax
michael@0 10296 adc r12, rdx
michael@0 10297 adc r13, 0
michael@0 10298 mov rsi, r11
michael@0 10299 mov qword ptr [-400+rbp], r9
michael@0 10300 mov r9, r13
michael@0 10301 mov rax, qword ptr [rcx]
michael@0 10302 mul qword ptr [152+rcx]
michael@0 10303 mov r8, rax
michael@0 10304 mov rdi, rdx
michael@0 10305 xor rsi, rsi
michael@0 10306 mov r13, r10
michael@0 10307 mov rax, qword ptr [8+rcx]
michael@0 10308 mul qword ptr [144+rcx]
michael@0 10309 add r8, rax
michael@0 10310 adc rdi, rdx
michael@0 10311 adc rsi, 0
michael@0 10312 mov rax, qword ptr [16+rcx]
michael@0 10313 mul qword ptr [136+rcx]
michael@0 10314 add r8, rax
michael@0 10315 adc rdi, rdx
michael@0 10316 adc rsi, 0
michael@0 10317 mov rax, qword ptr [24+rcx]
michael@0 10318 mul qword ptr [128+rcx]
michael@0 10319 add r8, rax
michael@0 10320 adc rdi, rdx
michael@0 10321 adc rsi, 0
michael@0 10322 mov rax, qword ptr [32+rcx]
michael@0 10323 mul qword ptr [120+rcx]
michael@0 10324 add r8, rax
michael@0 10325 adc rdi, rdx
michael@0 10326 adc rsi, 0
michael@0 10327 mov rax, qword ptr [40+rcx]
michael@0 10328 mul qword ptr [112+rcx]
michael@0 10329 add r8, rax
michael@0 10330 adc rdi, rdx
michael@0 10331 adc rsi, 0
michael@0 10332 mov rax, qword ptr [48+rcx]
michael@0 10333 mul qword ptr [104+rcx]
michael@0 10334 add r8, rax
michael@0 10335 adc rdi, rdx
michael@0 10336 adc rsi, 0
michael@0 10337 mov rax, qword ptr [56+rcx]
michael@0 10338 mul qword ptr [96+rcx]
michael@0 10339 add r8, rax
michael@0 10340 adc rdi, rdx
michael@0 10341 adc rsi, 0
michael@0 10342 mov rax, qword ptr [64+rcx]
michael@0 10343 mul qword ptr [88+rcx]
michael@0 10344 add r8, rax
michael@0 10345 adc rdi, rdx
michael@0 10346 adc rsi, 0
michael@0 10347 mov rax, qword ptr [72+rcx]
michael@0 10348 mul qword ptr [80+rcx]
michael@0 10349 add r8, rax
michael@0 10350 adc rdi, rdx
michael@0 10351 adc rsi, 0
michael@0 10352 mov rbx, r8
michael@0 10353 mov rax, rdi
michael@0 10354 mov rdx, rsi
michael@0 10355 add r12, rbx
michael@0 10356 adc r9, rax
michael@0 10357 adc r13, rdx
michael@0 10358 add r12, rbx
michael@0 10359 adc r9, rax
michael@0 10360 adc r13, rdx
michael@0 10361 mov qword ptr [-392+rbp], r12
michael@0 10362 mov rdi, rdx
michael@0 10363 mov r8, rax
michael@0 10364 mov rsi, rbx
michael@0 10365 mov r12, r13
michael@0 10366 mov r13, r10
michael@0 10367 mov rax, qword ptr [rcx]
michael@0 10368 mul qword ptr [160+rcx]
michael@0 10369 mov rsi, rax
michael@0 10370 mov r8, rdx
michael@0 10371 xor rdi, rdi
michael@0 10372 mov rax, qword ptr [8+rcx]
michael@0 10373 mul qword ptr [152+rcx]
michael@0 10374 add rsi, rax
michael@0 10375 adc r8, rdx
michael@0 10376 adc rdi, 0
michael@0 10377 mov rax, qword ptr [16+rcx]
michael@0 10378 mul qword ptr [144+rcx]
michael@0 10379 add rsi, rax
michael@0 10380 adc r8, rdx
michael@0 10381 adc rdi, 0
michael@0 10382 mov rax, qword ptr [24+rcx]
michael@0 10383 mul qword ptr [136+rcx]
michael@0 10384 add rsi, rax
michael@0 10385 adc r8, rdx
michael@0 10386 adc rdi, 0
michael@0 10387 mov rax, qword ptr [32+rcx]
michael@0 10388 mul qword ptr [128+rcx]
michael@0 10389 add rsi, rax
michael@0 10390 adc r8, rdx
michael@0 10391 adc rdi, 0
michael@0 10392 mov rax, qword ptr [40+rcx]
michael@0 10393 mul qword ptr [120+rcx]
michael@0 10394 add rsi, rax
michael@0 10395 adc r8, rdx
michael@0 10396 adc rdi, 0
michael@0 10397 mov rax, qword ptr [48+rcx]
michael@0 10398 mul qword ptr [112+rcx]
michael@0 10399 add rsi, rax
michael@0 10400 adc r8, rdx
michael@0 10401 adc rdi, 0
michael@0 10402 mov rax, qword ptr [56+rcx]
michael@0 10403 mul qword ptr [104+rcx]
michael@0 10404 add rsi, rax
michael@0 10405 adc r8, rdx
michael@0 10406 adc rdi, 0
michael@0 10407 mov rax, qword ptr [64+rcx]
michael@0 10408 mul qword ptr [96+rcx]
michael@0 10409 add rsi, rax
michael@0 10410 adc r8, rdx
michael@0 10411 adc rdi, 0
michael@0 10412 mov rax, qword ptr [72+rcx]
michael@0 10413 mul qword ptr [88+rcx]
michael@0 10414 add rsi, rax
michael@0 10415 adc r8, rdx
michael@0 10416 adc rdi, 0
michael@0 10417 mov rax, rsi
michael@0 10418 mov rbx, r8
michael@0 10419 mov rdx, rdi
michael@0 10420 add r9, rax
michael@0 10421 adc r12, rbx
michael@0 10422 adc r13, rdx
michael@0 10423 add r9, rax
michael@0 10424 adc r12, rbx
michael@0 10425 adc r13, rdx
michael@0 10426 mov r11, rdx
michael@0 10427 mov r8, rax
michael@0 10428 mov rdi, rbx
michael@0 10429 mov rax, qword ptr [80+rcx]
michael@0 10430 mul rax
michael@0 10431 add r9, rax
michael@0 10432 adc r12, rdx
michael@0 10433 adc r13, 0
michael@0 10434 mov rsi, r11
michael@0 10435 mov qword ptr [-384+rbp], r9
michael@0 10436 mov r9, r13
michael@0 10437 mov rax, qword ptr [rcx]
michael@0 10438 mul qword ptr [168+rcx]
michael@0 10439 mov r8, rax
michael@0 10440 mov rdi, rdx
michael@0 10441 xor rsi, rsi
michael@0 10442 mov r13, r10
michael@0 10443 mov rax, qword ptr [8+rcx]
michael@0 10444 mul qword ptr [160+rcx]
michael@0 10445 add r8, rax
michael@0 10446 adc rdi, rdx
michael@0 10447 adc rsi, 0
michael@0 10448 mov rax, qword ptr [16+rcx]
michael@0 10449 mul qword ptr [152+rcx]
michael@0 10450 add r8, rax
michael@0 10451 adc rdi, rdx
michael@0 10452 adc rsi, 0
michael@0 10453 mov rax, qword ptr [24+rcx]
michael@0 10454 mul qword ptr [144+rcx]
michael@0 10455 add r8, rax
michael@0 10456 adc rdi, rdx
michael@0 10457 adc rsi, 0
michael@0 10458 mov rax, qword ptr [32+rcx]
michael@0 10459 mul qword ptr [136+rcx]
michael@0 10460 add r8, rax
michael@0 10461 adc rdi, rdx
michael@0 10462 adc rsi, 0
michael@0 10463 mov rax, qword ptr [40+rcx]
michael@0 10464 mul qword ptr [128+rcx]
michael@0 10465 add r8, rax
michael@0 10466 adc rdi, rdx
michael@0 10467 adc rsi, 0
michael@0 10468 mov rax, qword ptr [48+rcx]
michael@0 10469 mul qword ptr [120+rcx]
michael@0 10470 add r8, rax
michael@0 10471 adc rdi, rdx
michael@0 10472 adc rsi, 0
michael@0 10473 mov rax, qword ptr [56+rcx]
michael@0 10474 mul qword ptr [112+rcx]
michael@0 10475 add r8, rax
michael@0 10476 adc rdi, rdx
michael@0 10477 adc rsi, 0
michael@0 10478 mov rax, qword ptr [64+rcx]
michael@0 10479 mul qword ptr [104+rcx]
michael@0 10480 add r8, rax
michael@0 10481 adc rdi, rdx
michael@0 10482 adc rsi, 0
michael@0 10483 mov rax, qword ptr [72+rcx]
michael@0 10484 mul qword ptr [96+rcx]
michael@0 10485 add r8, rax
michael@0 10486 adc rdi, rdx
michael@0 10487 adc rsi, 0
michael@0 10488 mov rax, qword ptr [80+rcx]
michael@0 10489 mul qword ptr [88+rcx]
michael@0 10490 add r8, rax
michael@0 10491 adc rdi, rdx
michael@0 10492 adc rsi, 0
michael@0 10493 mov rbx, r8
michael@0 10494 mov rax, rdi
michael@0 10495 mov rdx, rsi
michael@0 10496 add r12, rbx
michael@0 10497 adc r9, rax
michael@0 10498 adc r13, rdx
michael@0 10499 add r12, rbx
michael@0 10500 adc r9, rax
michael@0 10501 adc r13, rdx
michael@0 10502 mov qword ptr [-376+rbp], r12
michael@0 10503 mov rdi, rdx
michael@0 10504 mov r8, rax
michael@0 10505 mov rsi, rbx
michael@0 10506 mov r12, r13
michael@0 10507 mov r13, r10
michael@0 10508 mov rax, qword ptr [rcx]
michael@0 10509 mul qword ptr [176+rcx]
michael@0 10510 mov rsi, rax
michael@0 10511 mov r8, rdx
michael@0 10512 xor rdi, rdi
michael@0 10513 mov rax, qword ptr [8+rcx]
michael@0 10514 mul qword ptr [168+rcx]
michael@0 10515 add rsi, rax
michael@0 10516 adc r8, rdx
michael@0 10517 adc rdi, 0
michael@0 10518 mov rax, qword ptr [16+rcx]
michael@0 10519 mul qword ptr [160+rcx]
michael@0 10520 add rsi, rax
michael@0 10521 adc r8, rdx
michael@0 10522 adc rdi, 0
michael@0 10523 mov rax, qword ptr [24+rcx]
michael@0 10524 mul qword ptr [152+rcx]
michael@0 10525 add rsi, rax
michael@0 10526 adc r8, rdx
michael@0 10527 adc rdi, 0
michael@0 10528 mov rax, qword ptr [32+rcx]
michael@0 10529 mul qword ptr [144+rcx]
michael@0 10530 add rsi, rax
michael@0 10531 adc r8, rdx
michael@0 10532 adc rdi, 0
michael@0 10533 mov rax, qword ptr [40+rcx]
michael@0 10534 mul qword ptr [136+rcx]
michael@0 10535 add rsi, rax
michael@0 10536 adc r8, rdx
michael@0 10537 adc rdi, 0
michael@0 10538 mov rax, qword ptr [48+rcx]
michael@0 10539 mul qword ptr [128+rcx]
michael@0 10540 add rsi, rax
michael@0 10541 adc r8, rdx
michael@0 10542 adc rdi, 0
michael@0 10543 mov rax, qword ptr [56+rcx]
michael@0 10544 mul qword ptr [120+rcx]
michael@0 10545 add rsi, rax
michael@0 10546 adc r8, rdx
michael@0 10547 adc rdi, 0
michael@0 10548 mov rax, qword ptr [64+rcx]
michael@0 10549 mul qword ptr [112+rcx]
michael@0 10550 add rsi, rax
michael@0 10551 adc r8, rdx
michael@0 10552 adc rdi, 0
michael@0 10553 mov rax, qword ptr [72+rcx]
michael@0 10554 mul qword ptr [104+rcx]
michael@0 10555 add rsi, rax
michael@0 10556 adc r8, rdx
michael@0 10557 adc rdi, 0
michael@0 10558 mov rax, qword ptr [80+rcx]
michael@0 10559 mul qword ptr [96+rcx]
michael@0 10560 add rsi, rax
michael@0 10561 adc r8, rdx
michael@0 10562 adc rdi, 0
michael@0 10563 mov rax, rsi
michael@0 10564 mov rbx, r8
michael@0 10565 mov rdx, rdi
michael@0 10566 add r9, rax
michael@0 10567 adc r12, rbx
michael@0 10568 adc r13, rdx
michael@0 10569 add r9, rax
michael@0 10570 adc r12, rbx
michael@0 10571 adc r13, rdx
michael@0 10572 mov r11, rdx
michael@0 10573 mov r8, rax
michael@0 10574 mov rdi, rbx
michael@0 10575 mov rax, qword ptr [88+rcx]
michael@0 10576 mul rax
michael@0 10577 add r9, rax
michael@0 10578 adc r12, rdx
michael@0 10579 adc r13, 0
michael@0 10580 mov rsi, r11
michael@0 10581 mov qword ptr [-368+rbp], r9
michael@0 10582 mov r9, r13
michael@0 10583 mov rax, qword ptr [rcx]
michael@0 10584 mul qword ptr [184+rcx]
michael@0 10585 mov r8, rax
michael@0 10586 mov rdi, rdx
michael@0 10587 xor rsi, rsi
michael@0 10588 mov r13, r10
michael@0 10589 mov rax, qword ptr [8+rcx]
michael@0 10590 mul qword ptr [176+rcx]
michael@0 10591 add r8, rax
michael@0 10592 adc rdi, rdx
michael@0 10593 adc rsi, 0
michael@0 10594 mov rax, qword ptr [16+rcx]
michael@0 10595 mul qword ptr [168+rcx]
michael@0 10596 add r8, rax
michael@0 10597 adc rdi, rdx
michael@0 10598 adc rsi, 0
michael@0 10599 mov rax, qword ptr [24+rcx]
michael@0 10600 mul qword ptr [160+rcx]
michael@0 10601 add r8, rax
michael@0 10602 adc rdi, rdx
michael@0 10603 adc rsi, 0
michael@0 10604 mov rax, qword ptr [32+rcx]
michael@0 10605 mul qword ptr [152+rcx]
michael@0 10606 add r8, rax
michael@0 10607 adc rdi, rdx
michael@0 10608 adc rsi, 0
michael@0 10609 mov rax, qword ptr [40+rcx]
michael@0 10610 mul qword ptr [144+rcx]
michael@0 10611 add r8, rax
michael@0 10612 adc rdi, rdx
michael@0 10613 adc rsi, 0
michael@0 10614 mov rax, qword ptr [48+rcx]
michael@0 10615 mul qword ptr [136+rcx]
michael@0 10616 add r8, rax
michael@0 10617 adc rdi, rdx
michael@0 10618 adc rsi, 0
michael@0 10619 mov rax, qword ptr [56+rcx]
michael@0 10620 mul qword ptr [128+rcx]
michael@0 10621 add r8, rax
michael@0 10622 adc rdi, rdx
michael@0 10623 adc rsi, 0
michael@0 10624 mov rax, qword ptr [64+rcx]
michael@0 10625 mul qword ptr [120+rcx]
michael@0 10626 add r8, rax
michael@0 10627 adc rdi, rdx
michael@0 10628 adc rsi, 0
michael@0 10629 mov rax, qword ptr [72+rcx]
michael@0 10630 mul qword ptr [112+rcx]
michael@0 10631 add r8, rax
michael@0 10632 adc rdi, rdx
michael@0 10633 adc rsi, 0
michael@0 10634 mov rax, qword ptr [80+rcx]
michael@0 10635 mul qword ptr [104+rcx]
michael@0 10636 add r8, rax
michael@0 10637 adc rdi, rdx
michael@0 10638 adc rsi, 0
michael@0 10639 mov rax, qword ptr [88+rcx]
michael@0 10640 mul qword ptr [96+rcx]
michael@0 10641 add r8, rax
michael@0 10642 adc rdi, rdx
michael@0 10643 adc rsi, 0
michael@0 10644 mov rbx, r8
michael@0 10645 mov rax, rdi
michael@0 10646 mov rdx, rsi
michael@0 10647 add r12, rbx
michael@0 10648 adc r9, rax
michael@0 10649 adc r13, rdx
michael@0 10650 add r12, rbx
michael@0 10651 adc r9, rax
michael@0 10652 adc r13, rdx
michael@0 10653 mov rdi, rdx
michael@0 10654 mov qword ptr [-360+rbp], r12
michael@0 10655 mov r8, rax
michael@0 10656 mov rsi, rbx
michael@0 10657 mov r12, r13
michael@0 10658 mov r13, r10
michael@0 10659 mov rax, qword ptr [rcx]
michael@0 10660 mul qword ptr [192+rcx]
michael@0 10661 mov rsi, rax
michael@0 10662 mov r8, rdx
michael@0 10663 xor rdi, rdi
michael@0 10664 mov rax, qword ptr [8+rcx]
michael@0 10665 mul qword ptr [184+rcx]
michael@0 10666 add rsi, rax
michael@0 10667 adc r8, rdx
michael@0 10668 adc rdi, 0
michael@0 10669 mov rax, qword ptr [16+rcx]
michael@0 10670 mul qword ptr [176+rcx]
michael@0 10671 add rsi, rax
michael@0 10672 adc r8, rdx
michael@0 10673 adc rdi, 0
michael@0 10674 mov rax, qword ptr [24+rcx]
michael@0 10675 mul qword ptr [168+rcx]
michael@0 10676 add rsi, rax
michael@0 10677 adc r8, rdx
michael@0 10678 adc rdi, 0
michael@0 10679 mov rax, qword ptr [32+rcx]
michael@0 10680 mul qword ptr [160+rcx]
michael@0 10681 add rsi, rax
michael@0 10682 adc r8, rdx
michael@0 10683 adc rdi, 0
michael@0 10684 mov rax, qword ptr [40+rcx]
michael@0 10685 mul qword ptr [152+rcx]
michael@0 10686 add rsi, rax
michael@0 10687 adc r8, rdx
michael@0 10688 adc rdi, 0
michael@0 10689 mov rax, qword ptr [48+rcx]
michael@0 10690 mul qword ptr [144+rcx]
michael@0 10691 add rsi, rax
michael@0 10692 adc r8, rdx
michael@0 10693 adc rdi, 0
michael@0 10694 mov rax, qword ptr [56+rcx]
michael@0 10695 mul qword ptr [136+rcx]
michael@0 10696 add rsi, rax
michael@0 10697 adc r8, rdx
michael@0 10698 adc rdi, 0
michael@0 10699 mov rax, qword ptr [64+rcx]
michael@0 10700 mul qword ptr [128+rcx]
michael@0 10701 add rsi, rax
michael@0 10702 adc r8, rdx
michael@0 10703 adc rdi, 0
michael@0 10704 mov rax, qword ptr [72+rcx]
michael@0 10705 mul qword ptr [120+rcx]
michael@0 10706 add rsi, rax
michael@0 10707 adc r8, rdx
michael@0 10708 adc rdi, 0
michael@0 10709 mov rax, qword ptr [80+rcx]
michael@0 10710 mul qword ptr [112+rcx]
michael@0 10711 add rsi, rax
michael@0 10712 adc r8, rdx
michael@0 10713 adc rdi, 0
michael@0 10714 mov rax, qword ptr [88+rcx]
michael@0 10715 mul qword ptr [104+rcx]
michael@0 10716 add rsi, rax
michael@0 10717 adc r8, rdx
michael@0 10718 adc rdi, 0
michael@0 10719 mov rbx, r8
michael@0 10720 mov rax, rdi
michael@0 10721 add r9, rsi
michael@0 10722 adc r12, rbx
michael@0 10723 adc r13, rax
michael@0 10724 add r9, rsi
michael@0 10725 adc r12, rbx
michael@0 10726 adc r13, rax
michael@0 10727 mov r11, rax
michael@0 10728 mov r8, rbx
michael@0 10729 mov rax, qword ptr [96+rcx]
michael@0 10730 mul rax
michael@0 10731 add r9, rax
michael@0 10732 adc r12, rdx
michael@0 10733 adc r13, 0
michael@0 10734 mov rdi, r11
michael@0 10735 mov qword ptr [-352+rbp], r9
michael@0 10736 mov r9, r13
michael@0 10737 mov rax, qword ptr [rcx]
michael@0 10738 mul qword ptr [200+rcx]
michael@0 10739 mov rsi, rax
michael@0 10740 mov r8, rdx
michael@0 10741 xor rdi, rdi
michael@0 10742 mov r13, r10
michael@0 10743 mov rax, qword ptr [8+rcx]
michael@0 10744 mul qword ptr [192+rcx]
michael@0 10745 add rsi, rax
michael@0 10746 adc r8, rdx
michael@0 10747 adc rdi, 0
michael@0 10748 mov rax, qword ptr [16+rcx]
michael@0 10749 mul qword ptr [184+rcx]
michael@0 10750 add rsi, rax
michael@0 10751 adc r8, rdx
michael@0 10752 adc rdi, 0
michael@0 10753 mov rax, qword ptr [24+rcx]
michael@0 10754 mul qword ptr [176+rcx]
michael@0 10755 add rsi, rax
michael@0 10756 adc r8, rdx
michael@0 10757 adc rdi, 0
michael@0 10758 mov rax, qword ptr [32+rcx]
michael@0 10759 mul qword ptr [168+rcx]
michael@0 10760 add rsi, rax
michael@0 10761 adc r8, rdx
michael@0 10762 adc rdi, 0
michael@0 10763 mov rax, qword ptr [40+rcx]
michael@0 10764 mul qword ptr [160+rcx]
michael@0 10765 add rsi, rax
michael@0 10766 adc r8, rdx
michael@0 10767 adc rdi, 0
michael@0 10768 mov rax, qword ptr [48+rcx]
michael@0 10769 mul qword ptr [152+rcx]
michael@0 10770 add rsi, rax
michael@0 10771 adc r8, rdx
michael@0 10772 adc rdi, 0
michael@0 10773 mov rax, qword ptr [56+rcx]
michael@0 10774 mul qword ptr [144+rcx]
michael@0 10775 add rsi, rax
michael@0 10776 adc r8, rdx
michael@0 10777 adc rdi, 0
michael@0 10778 mov rax, qword ptr [64+rcx]
michael@0 10779 mul qword ptr [136+rcx]
michael@0 10780 add rsi, rax
michael@0 10781 adc r8, rdx
michael@0 10782 adc rdi, 0
michael@0 10783 mov rax, qword ptr [72+rcx]
michael@0 10784 mul qword ptr [128+rcx]
michael@0 10785 add rsi, rax
michael@0 10786 adc r8, rdx
michael@0 10787 adc rdi, 0
michael@0 10788 mov rax, qword ptr [80+rcx]
michael@0 10789 mul qword ptr [120+rcx]
michael@0 10790 add rsi, rax
michael@0 10791 adc r8, rdx
michael@0 10792 adc rdi, 0
michael@0 10793 mov rax, qword ptr [88+rcx]
michael@0 10794 mul qword ptr [112+rcx]
michael@0 10795 add rsi, rax
michael@0 10796 adc r8, rdx
michael@0 10797 adc rdi, 0
michael@0 10798 mov rax, qword ptr [96+rcx]
michael@0 10799 mul qword ptr [104+rcx]
michael@0 10800 add rsi, rax
michael@0 10801 adc r8, rdx
michael@0 10802 adc rdi, 0
michael@0 10803 add r12, rsi
michael@0 10804 adc r9, r8
michael@0 10805 adc r13, rdi
michael@0 10806 add r12, rsi
michael@0 10807 adc r9, r8
michael@0 10808 adc r13, rdi
michael@0 10809 mov qword ptr [-344+rbp], r12
michael@0 10810 mov r12, r10
michael@0 10811 mov rax, qword ptr [rcx]
michael@0 10812 mul qword ptr [208+rcx]
michael@0 10813 mov rsi, rax
michael@0 10814 mov r8, rdx
michael@0 10815 xor rdi, rdi
michael@0 10816 mov rax, qword ptr [8+rcx]
michael@0 10817 mul qword ptr [200+rcx]
michael@0 10818 add rsi, rax
michael@0 10819 adc r8, rdx
michael@0 10820 adc rdi, 0
michael@0 10821 mov rax, qword ptr [16+rcx]
michael@0 10822 mul qword ptr [192+rcx]
michael@0 10823 add rsi, rax
michael@0 10824 adc r8, rdx
michael@0 10825 adc rdi, 0
michael@0 10826 mov rax, qword ptr [24+rcx]
michael@0 10827 mul qword ptr [184+rcx]
michael@0 10828 add rsi, rax
michael@0 10829 adc r8, rdx
michael@0 10830 adc rdi, 0
michael@0 10831 mov rax, qword ptr [32+rcx]
michael@0 10832 mul qword ptr [176+rcx]
michael@0 10833 add rsi, rax
michael@0 10834 adc r8, rdx
michael@0 10835 adc rdi, 0
michael@0 10836 mov rax, qword ptr [40+rcx]
michael@0 10837 mul qword ptr [168+rcx]
michael@0 10838 add rsi, rax
michael@0 10839 adc r8, rdx
michael@0 10840 adc rdi, 0
michael@0 10841 mov rax, qword ptr [48+rcx]
michael@0 10842 mul qword ptr [160+rcx]
michael@0 10843 add rsi, rax
michael@0 10844 adc r8, rdx
michael@0 10845 adc rdi, 0
michael@0 10846 mov rax, qword ptr [56+rcx]
michael@0 10847 mul qword ptr [152+rcx]
michael@0 10848 add rsi, rax
michael@0 10849 adc r8, rdx
michael@0 10850 adc rdi, 0
michael@0 10851 mov rax, qword ptr [64+rcx]
michael@0 10852 mul qword ptr [144+rcx]
michael@0 10853 add rsi, rax
michael@0 10854 adc r8, rdx
michael@0 10855 adc rdi, 0
michael@0 10856 mov rax, qword ptr [72+rcx]
michael@0 10857 mul qword ptr [136+rcx]
michael@0 10858 add rsi, rax
michael@0 10859 adc r8, rdx
michael@0 10860 adc rdi, 0
michael@0 10861 mov rax, qword ptr [80+rcx]
michael@0 10862 mul qword ptr [128+rcx]
michael@0 10863 add rsi, rax
michael@0 10864 adc r8, rdx
michael@0 10865 adc rdi, 0
michael@0 10866 mov rax, qword ptr [88+rcx]
michael@0 10867 mul qword ptr [120+rcx]
michael@0 10868 add rsi, rax
michael@0 10869 adc r8, rdx
michael@0 10870 adc rdi, 0
michael@0 10871 mov rax, qword ptr [96+rcx]
michael@0 10872 mul qword ptr [112+rcx]
michael@0 10873 add rsi, rax
michael@0 10874 adc r8, rdx
michael@0 10875 adc rdi, 0
michael@0 10876 mov rdx, r13
michael@0 10877 mov rbx, r8
michael@0 10878 mov r13, rdi
michael@0 10879 add r9, rsi
michael@0 10880 adc rdx, rbx
michael@0 10881 adc r12, r13
michael@0 10882 add r9, rsi
michael@0 10883 adc rdx, rbx
michael@0 10884 adc r12, r13
michael@0 10885 mov rax, r12
michael@0 10886 mov r11, r13
michael@0 10887 mov r12, rdx
michael@0 10888 mov r13, rax
michael@0 10889 mov r8, rbx
michael@0 10890 mov rdi, r11
michael@0 10891 mov rax, qword ptr [104+rcx]
michael@0 10892 mul rax
michael@0 10893 add r9, rax
michael@0 10894 adc r12, rdx
michael@0 10895 adc r13, 0
michael@0 10896 mov qword ptr [-336+rbp], r9
michael@0 10897 mov r9, r13
michael@0 10898 mov r13, r10
michael@0 10899 mov rax, qword ptr [rcx]
michael@0 10900 mul qword ptr [216+rcx]
michael@0 10901 mov rsi, rax
michael@0 10902 mov r8, rdx
michael@0 10903 xor rdi, rdi
michael@0 10904 mov rax, qword ptr [8+rcx]
michael@0 10905 mul qword ptr [208+rcx]
michael@0 10906 add rsi, rax
michael@0 10907 adc r8, rdx
michael@0 10908 adc rdi, 0
michael@0 10909 mov rax, qword ptr [16+rcx]
michael@0 10910 mul qword ptr [200+rcx]
michael@0 10911 add rsi, rax
michael@0 10912 adc r8, rdx
michael@0 10913 adc rdi, 0
michael@0 10914 mov rax, qword ptr [24+rcx]
michael@0 10915 mul qword ptr [192+rcx]
michael@0 10916 add rsi, rax
michael@0 10917 adc r8, rdx
michael@0 10918 adc rdi, 0
michael@0 10919 mov rax, qword ptr [32+rcx]
michael@0 10920 mul qword ptr [184+rcx]
michael@0 10921 add rsi, rax
michael@0 10922 adc r8, rdx
michael@0 10923 adc rdi, 0
michael@0 10924 mov rax, qword ptr [40+rcx]
michael@0 10925 mul qword ptr [176+rcx]
michael@0 10926 add rsi, rax
michael@0 10927 adc r8, rdx
michael@0 10928 adc rdi, 0
michael@0 10929 mov rax, qword ptr [48+rcx]
michael@0 10930 mul qword ptr [168+rcx]
michael@0 10931 add rsi, rax
michael@0 10932 adc r8, rdx
michael@0 10933 adc rdi, 0
michael@0 10934 mov rax, qword ptr [56+rcx]
michael@0 10935 mul qword ptr [160+rcx]
michael@0 10936 add rsi, rax
michael@0 10937 adc r8, rdx
michael@0 10938 adc rdi, 0
michael@0 10939 mov rax, qword ptr [64+rcx]
michael@0 10940 mul qword ptr [152+rcx]
michael@0 10941 add rsi, rax
michael@0 10942 adc r8, rdx
michael@0 10943 adc rdi, 0
michael@0 10944 mov rax, qword ptr [72+rcx]
michael@0 10945 mul qword ptr [144+rcx]
michael@0 10946 add rsi, rax
michael@0 10947 adc r8, rdx
michael@0 10948 adc rdi, 0
michael@0 10949 mov rax, qword ptr [80+rcx]
michael@0 10950 mul qword ptr [136+rcx]
michael@0 10951 add rsi, rax
michael@0 10952 adc r8, rdx
michael@0 10953 adc rdi, 0
michael@0 10954 mov rax, qword ptr [88+rcx]
michael@0 10955 mul qword ptr [128+rcx]
michael@0 10956 add rsi, rax
michael@0 10957 adc r8, rdx
michael@0 10958 adc rdi, 0
michael@0 10959 mov rax, qword ptr [96+rcx]
michael@0 10960 mul qword ptr [120+rcx]
michael@0 10961 add rsi, rax
michael@0 10962 adc r8, rdx
michael@0 10963 adc rdi, 0
michael@0 10964 mov rax, qword ptr [104+rcx]
michael@0 10965 mul qword ptr [112+rcx]
michael@0 10966 add rsi, rax
michael@0 10967 adc r8, rdx
michael@0 10968 adc rdi, 0
michael@0 10969 add r12, rsi
michael@0 10970 adc r9, r8
michael@0 10971 adc r13, rdi
michael@0 10972 add r12, rsi
michael@0 10973 adc r9, r8
michael@0 10974 adc r13, rdi
michael@0 10975 mov qword ptr [-328+rbp], r12
michael@0 10976 mov rax, qword ptr [rcx]
michael@0 10977 mul qword ptr [224+rcx]
michael@0 10978 mov rsi, rax
michael@0 10979 mov r8, rdx
michael@0 10980 xor rdi, rdi
michael@0 10981 mov rax, qword ptr [8+rcx]
michael@0 10982 mul qword ptr [216+rcx]
michael@0 10983 add rsi, rax
michael@0 10984 adc r8, rdx
michael@0 10985 adc rdi, 0
michael@0 10986 mov rax, qword ptr [16+rcx]
michael@0 10987 mul qword ptr [208+rcx]
michael@0 10988 add rsi, rax
michael@0 10989 adc r8, rdx
michael@0 10990 adc rdi, 0
michael@0 10991 mov rax, qword ptr [24+rcx]
michael@0 10992 mul qword ptr [200+rcx]
michael@0 10993 add rsi, rax
michael@0 10994 adc r8, rdx
michael@0 10995 adc rdi, 0
michael@0 10996 mov rax, qword ptr [32+rcx]
michael@0 10997 mul qword ptr [192+rcx]
michael@0 10998 add rsi, rax
michael@0 10999 adc r8, rdx
michael@0 11000 adc rdi, 0
michael@0 11001 mov rax, qword ptr [40+rcx]
michael@0 11002 mul qword ptr [184+rcx]
michael@0 11003 add rsi, rax
michael@0 11004 adc r8, rdx
michael@0 11005 adc rdi, 0
michael@0 11006 mov rax, qword ptr [48+rcx]
michael@0 11007 mul qword ptr [176+rcx]
michael@0 11008 add rsi, rax
michael@0 11009 adc r8, rdx
michael@0 11010 adc rdi, 0
michael@0 11011 mov rax, qword ptr [56+rcx]
michael@0 11012 mul qword ptr [168+rcx]
michael@0 11013 add rsi, rax
michael@0 11014 adc r8, rdx
michael@0 11015 adc rdi, 0
michael@0 11016 mov rax, qword ptr [64+rcx]
michael@0 11017 mul qword ptr [160+rcx]
michael@0 11018 add rsi, rax
michael@0 11019 adc r8, rdx
michael@0 11020 adc rdi, 0
michael@0 11021 mov rax, qword ptr [72+rcx]
michael@0 11022 mul qword ptr [152+rcx]
michael@0 11023 add rsi, rax
michael@0 11024 adc r8, rdx
michael@0 11025 adc rdi, 0
michael@0 11026 mov rax, qword ptr [80+rcx]
michael@0 11027 mul qword ptr [144+rcx]
michael@0 11028 add rsi, rax
michael@0 11029 adc r8, rdx
michael@0 11030 adc rdi, 0
michael@0 11031 mov rax, qword ptr [88+rcx]
michael@0 11032 mul qword ptr [136+rcx]
michael@0 11033 add rsi, rax
michael@0 11034 adc r8, rdx
michael@0 11035 adc rdi, 0
michael@0 11036 mov rax, qword ptr [96+rcx]
michael@0 11037 mul qword ptr [128+rcx]
michael@0 11038 add rsi, rax
michael@0 11039 adc r8, rdx
michael@0 11040 adc rdi, 0
michael@0 11041 mov rax, qword ptr [104+rcx]
michael@0 11042 mul qword ptr [120+rcx]
michael@0 11043 add rsi, rax
michael@0 11044 adc r8, rdx
michael@0 11045 adc rdi, 0
michael@0 11046 mov rax, r13
michael@0 11047 mov rdx, r10
michael@0 11048 mov rbx, r8
michael@0 11049 mov r12, rdi
michael@0 11050 add r9, rsi
michael@0 11051 adc rax, rbx
michael@0 11052 adc rdx, r12
michael@0 11053 add r9, rsi
michael@0 11054 adc rax, rbx
michael@0 11055 adc rdx, r12
michael@0 11056 mov rdi, rdx
michael@0 11057 mov r11, r12
michael@0 11058 mov r8, rbx
michael@0 11059 mov r12, rax
michael@0 11060 mov r13, rdi
michael@0 11061 mov rdi, r11
michael@0 11062 mov rax, qword ptr [112+rcx]
michael@0 11063 mul rax
michael@0 11064 add r9, rax
michael@0 11065 adc r12, rdx
michael@0 11066 adc r13, 0
michael@0 11067 mov qword ptr [-320+rbp], r9
michael@0 11068 mov rbx, r13
michael@0 11069 mov r9, r10
michael@0 11070 mov rax, qword ptr [rcx]
michael@0 11071 mul qword ptr [232+rcx]
michael@0 11072 mov rsi, rax
michael@0 11073 mov r8, rdx
michael@0 11074 xor rdi, rdi
michael@0 11075 mov rax, qword ptr [8+rcx]
michael@0 11076 mul qword ptr [224+rcx]
michael@0 11077 add rsi, rax
michael@0 11078 adc r8, rdx
michael@0 11079 adc rdi, 0
michael@0 11080 mov rax, qword ptr [16+rcx]
michael@0 11081 mul qword ptr [216+rcx]
michael@0 11082 add rsi, rax
michael@0 11083 adc r8, rdx
michael@0 11084 adc rdi, 0
michael@0 11085 mov rax, qword ptr [24+rcx]
michael@0 11086 mul qword ptr [208+rcx]
michael@0 11087 add rsi, rax
michael@0 11088 adc r8, rdx
michael@0 11089 adc rdi, 0
michael@0 11090 mov rax, qword ptr [32+rcx]
michael@0 11091 mul qword ptr [200+rcx]
michael@0 11092 add rsi, rax
michael@0 11093 adc r8, rdx
michael@0 11094 adc rdi, 0
michael@0 11095 mov rax, qword ptr [40+rcx]
michael@0 11096 mul qword ptr [192+rcx]
michael@0 11097 add rsi, rax
michael@0 11098 adc r8, rdx
michael@0 11099 adc rdi, 0
michael@0 11100 mov rax, qword ptr [48+rcx]
michael@0 11101 mul qword ptr [184+rcx]
michael@0 11102 add rsi, rax
michael@0 11103 adc r8, rdx
michael@0 11104 adc rdi, 0
michael@0 11105 mov rax, qword ptr [56+rcx]
michael@0 11106 mul qword ptr [176+rcx]
michael@0 11107 add rsi, rax
michael@0 11108 adc r8, rdx
michael@0 11109 adc rdi, 0
michael@0 11110 mov rax, qword ptr [64+rcx]
michael@0 11111 mul qword ptr [168+rcx]
michael@0 11112 add rsi, rax
michael@0 11113 adc r8, rdx
michael@0 11114 adc rdi, 0
michael@0 11115 mov rax, qword ptr [72+rcx]
michael@0 11116 mul qword ptr [160+rcx]
michael@0 11117 add rsi, rax
michael@0 11118 adc r8, rdx
michael@0 11119 adc rdi, 0
michael@0 11120 mov rax, qword ptr [80+rcx]
michael@0 11121 mul qword ptr [152+rcx]
michael@0 11122 add rsi, rax
michael@0 11123 adc r8, rdx
michael@0 11124 adc rdi, 0
michael@0 11125 mov rax, qword ptr [88+rcx]
michael@0 11126 mul qword ptr [144+rcx]
michael@0 11127 add rsi, rax
michael@0 11128 adc r8, rdx
michael@0 11129 adc rdi, 0
michael@0 11130 mov rax, qword ptr [96+rcx]
michael@0 11131 mul qword ptr [136+rcx]
michael@0 11132 add rsi, rax
michael@0 11133 adc r8, rdx
michael@0 11134 adc rdi, 0
michael@0 11135 mov rax, qword ptr [104+rcx]
michael@0 11136 mul qword ptr [128+rcx]
michael@0 11137 add rsi, rax
michael@0 11138 adc r8, rdx
michael@0 11139 adc rdi, 0
michael@0 11140 mov rax, qword ptr [112+rcx]
michael@0 11141 mul qword ptr [120+rcx]
michael@0 11142 add rsi, rax
michael@0 11143 adc r8, rdx
michael@0 11144 adc rdi, 0
michael@0 11145 add r12, rsi
michael@0 11146 adc rbx, r8
michael@0 11147 adc r9, rdi
michael@0 11148 add r12, rsi
michael@0 11149 adc rbx, r8
michael@0 11150 adc r9, rdi
michael@0 11151 mov qword ptr [-312+rbp], r12
michael@0 11152 mov r13, r9
michael@0 11153 mov rax, qword ptr [rcx]
michael@0 11154 mul qword ptr [240+rcx]
michael@0 11155 mov rsi, rax
michael@0 11156 mov r8, rdx
michael@0 11157 xor rdi, rdi
michael@0 11158 mov rax, qword ptr [8+rcx]
michael@0 11159 mul qword ptr [232+rcx]
michael@0 11160 add rsi, rax
michael@0 11161 adc r8, rdx
michael@0 11162 adc rdi, 0
michael@0 11163 mov rax, qword ptr [16+rcx]
michael@0 11164 mul qword ptr [224+rcx]
michael@0 11165 add rsi, rax
michael@0 11166 adc r8, rdx
michael@0 11167 adc rdi, 0
michael@0 11168 mov rax, qword ptr [24+rcx]
michael@0 11169 mul qword ptr [216+rcx]
michael@0 11170 add rsi, rax
michael@0 11171 adc r8, rdx
michael@0 11172 adc rdi, 0
michael@0 11173 mov rax, qword ptr [32+rcx]
michael@0 11174 mul qword ptr [208+rcx]
michael@0 11175 add rsi, rax
michael@0 11176 adc r8, rdx
michael@0 11177 adc rdi, 0
michael@0 11178 mov rax, qword ptr [40+rcx]
michael@0 11179 mul qword ptr [200+rcx]
michael@0 11180 add rsi, rax
michael@0 11181 adc r8, rdx
michael@0 11182 adc rdi, 0
michael@0 11183 mov rax, qword ptr [48+rcx]
michael@0 11184 mul qword ptr [192+rcx]
michael@0 11185 add rsi, rax
michael@0 11186 adc r8, rdx
michael@0 11187 adc rdi, 0
michael@0 11188 mov rax, qword ptr [56+rcx]
michael@0 11189 mul qword ptr [184+rcx]
michael@0 11190 add rsi, rax
michael@0 11191 adc r8, rdx
michael@0 11192 adc rdi, 0
michael@0 11193 mov rax, qword ptr [64+rcx]
michael@0 11194 mul qword ptr [176+rcx]
michael@0 11195 add rsi, rax
michael@0 11196 adc r8, rdx
michael@0 11197 adc rdi, 0
michael@0 11198 mov rax, qword ptr [72+rcx]
michael@0 11199 mul qword ptr [168+rcx]
michael@0 11200 add rsi, rax
michael@0 11201 adc r8, rdx
michael@0 11202 adc rdi, 0
michael@0 11203 mov rax, qword ptr [80+rcx]
michael@0 11204 mul qword ptr [160+rcx]
michael@0 11205 add rsi, rax
michael@0 11206 adc r8, rdx
michael@0 11207 adc rdi, 0
michael@0 11208 mov rax, qword ptr [88+rcx]
michael@0 11209 mul qword ptr [152+rcx]
michael@0 11210 add rsi, rax
michael@0 11211 adc r8, rdx
michael@0 11212 adc rdi, 0
michael@0 11213 mov rax, qword ptr [96+rcx]
michael@0 11214 mul qword ptr [144+rcx]
michael@0 11215 add rsi, rax
michael@0 11216 adc r8, rdx
michael@0 11217 adc rdi, 0
michael@0 11218 mov rax, qword ptr [104+rcx]
michael@0 11219 mul qword ptr [136+rcx]
michael@0 11220 add rsi, rax
michael@0 11221 adc r8, rdx
michael@0 11222 adc rdi, 0
michael@0 11223 mov rax, qword ptr [112+rcx]
michael@0 11224 mul qword ptr [128+rcx]
michael@0 11225 add rsi, rax
michael@0 11226 adc r8, rdx
michael@0 11227 adc rdi, 0
michael@0 11228 mov rax, r10
michael@0 11229 mov r11, r8
michael@0 11230 mov rdx, rdi
michael@0 11231 add rbx, rsi
michael@0 11232 adc r13, r11
michael@0 11233 adc rax, rdx
michael@0 11234 add rbx, rsi
michael@0 11235 adc r13, r11
michael@0 11236 adc rax, rdx
michael@0 11237 mov r9, rdx
michael@0 11238 mov rdx, rax
michael@0 11239 mov r12, r13
michael@0 11240 mov r8, r11
michael@0 11241 mov r13, rdx
michael@0 11242 mov rdi, r9
michael@0 11243 mov rax, qword ptr [120+rcx]
michael@0 11244 mul rax
michael@0 11245 add rbx, rax
michael@0 11246 adc r12, rdx
michael@0 11247 adc r13, 0
michael@0 11248 mov qword ptr [-304+rbp], rbx
michael@0 11249 mov rbx, r13
michael@0 11250 mov r13, r10
michael@0 11251 mov rax, qword ptr [rcx]
michael@0 11252 mul qword ptr [248+rcx]
michael@0 11253 mov rsi, rax
michael@0 11254 mov r8, rdx
michael@0 11255 xor rdi, rdi
michael@0 11256 mov rax, qword ptr [8+rcx]
michael@0 11257 mul qword ptr [240+rcx]
michael@0 11258 add rsi, rax
michael@0 11259 adc r8, rdx
michael@0 11260 adc rdi, 0
michael@0 11261 mov rax, qword ptr [16+rcx]
michael@0 11262 mul qword ptr [232+rcx]
michael@0 11263 add rsi, rax
michael@0 11264 adc r8, rdx
michael@0 11265 adc rdi, 0
michael@0 11266 mov rax, qword ptr [24+rcx]
michael@0 11267 mul qword ptr [224+rcx]
michael@0 11268 add rsi, rax
michael@0 11269 adc r8, rdx
michael@0 11270 adc rdi, 0
michael@0 11271 mov rax, qword ptr [32+rcx]
michael@0 11272 mul qword ptr [216+rcx]
michael@0 11273 add rsi, rax
michael@0 11274 adc r8, rdx
michael@0 11275 adc rdi, 0
michael@0 11276 mov rax, qword ptr [40+rcx]
michael@0 11277 mul qword ptr [208+rcx]
michael@0 11278 add rsi, rax
michael@0 11279 adc r8, rdx
michael@0 11280 adc rdi, 0
michael@0 11281 mov rax, qword ptr [48+rcx]
michael@0 11282 mul qword ptr [200+rcx]
michael@0 11283 add rsi, rax
michael@0 11284 adc r8, rdx
michael@0 11285 adc rdi, 0
michael@0 11286 mov rax, qword ptr [56+rcx]
michael@0 11287 mul qword ptr [192+rcx]
michael@0 11288 add rsi, rax
michael@0 11289 adc r8, rdx
michael@0 11290 adc rdi, 0
michael@0 11291 mov rax, qword ptr [64+rcx]
michael@0 11292 mul qword ptr [184+rcx]
michael@0 11293 add rsi, rax
michael@0 11294 adc r8, rdx
michael@0 11295 adc rdi, 0
michael@0 11296 mov rax, qword ptr [72+rcx]
michael@0 11297 mul qword ptr [176+rcx]
michael@0 11298 add rsi, rax
michael@0 11299 adc r8, rdx
michael@0 11300 adc rdi, 0
michael@0 11301 mov rax, qword ptr [80+rcx]
michael@0 11302 mul qword ptr [168+rcx]
michael@0 11303 add rsi, rax
michael@0 11304 adc r8, rdx
michael@0 11305 adc rdi, 0
michael@0 11306 mov rax, qword ptr [88+rcx]
michael@0 11307 mul qword ptr [160+rcx]
michael@0 11308 add rsi, rax
michael@0 11309 adc r8, rdx
michael@0 11310 adc rdi, 0
michael@0 11311 mov rax, qword ptr [96+rcx]
michael@0 11312 mul qword ptr [152+rcx]
michael@0 11313 add rsi, rax
michael@0 11314 adc r8, rdx
michael@0 11315 adc rdi, 0
michael@0 11316 mov rax, qword ptr [104+rcx]
michael@0 11317 mul qword ptr [144+rcx]
michael@0 11318 add rsi, rax
michael@0 11319 adc r8, rdx
michael@0 11320 adc rdi, 0
michael@0 11321 mov rax, qword ptr [112+rcx]
michael@0 11322 mul qword ptr [136+rcx]
michael@0 11323 add rsi, rax
michael@0 11324 adc r8, rdx
michael@0 11325 adc rdi, 0
michael@0 11326 mov rax, qword ptr [120+rcx]
michael@0 11327 mul qword ptr [128+rcx]
michael@0 11328 add rsi, rax
michael@0 11329 adc r8, rdx
michael@0 11330 adc rdi, 0
michael@0 11331 add r12, rsi
michael@0 11332 adc rbx, r8
michael@0 11333 adc r13, rdi
michael@0 11334 add r12, rsi
michael@0 11335 adc rbx, r8
michael@0 11336 adc r13, rdi
michael@0 11337 mov qword ptr [-296+rbp], r12
michael@0 11338 mov r12, r13
michael@0 11339 mov r13, r10
michael@0 11340 mov rax, qword ptr [8+rcx]
michael@0 11341 mul qword ptr [248+rcx]
michael@0 11342 mov rsi, rax
michael@0 11343 mov r8, rdx
michael@0 11344 xor rdi, rdi
michael@0 11345 mov rax, qword ptr [16+rcx]
michael@0 11346 mul qword ptr [240+rcx]
michael@0 11347 add rsi, rax
michael@0 11348 adc r8, rdx
michael@0 11349 adc rdi, 0
michael@0 11350 mov rax, qword ptr [24+rcx]
michael@0 11351 mul qword ptr [232+rcx]
michael@0 11352 add rsi, rax
michael@0 11353 adc r8, rdx
michael@0 11354 adc rdi, 0
michael@0 11355 mov rax, qword ptr [32+rcx]
michael@0 11356 mul qword ptr [224+rcx]
michael@0 11357 add rsi, rax
michael@0 11358 adc r8, rdx
michael@0 11359 adc rdi, 0
michael@0 11360 mov rax, qword ptr [40+rcx]
michael@0 11361 mul qword ptr [216+rcx]
michael@0 11362 add rsi, rax
michael@0 11363 adc r8, rdx
michael@0 11364 adc rdi, 0
michael@0 11365 mov rax, qword ptr [48+rcx]
michael@0 11366 mul qword ptr [208+rcx]
michael@0 11367 add rsi, rax
michael@0 11368 adc r8, rdx
michael@0 11369 adc rdi, 0
michael@0 11370 mov rax, qword ptr [56+rcx]
michael@0 11371 mul qword ptr [200+rcx]
michael@0 11372 add rsi, rax
michael@0 11373 adc r8, rdx
michael@0 11374 adc rdi, 0
michael@0 11375 mov rax, qword ptr [64+rcx]
michael@0 11376 mul qword ptr [192+rcx]
michael@0 11377 add rsi, rax
michael@0 11378 adc r8, rdx
michael@0 11379 adc rdi, 0
michael@0 11380 mov rax, qword ptr [72+rcx]
michael@0 11381 mul qword ptr [184+rcx]
michael@0 11382 add rsi, rax
michael@0 11383 adc r8, rdx
michael@0 11384 adc rdi, 0
michael@0 11385 mov rax, qword ptr [80+rcx]
michael@0 11386 mul qword ptr [176+rcx]
michael@0 11387 add rsi, rax
michael@0 11388 adc r8, rdx
michael@0 11389 adc rdi, 0
michael@0 11390 mov rax, qword ptr [88+rcx]
michael@0 11391 mul qword ptr [168+rcx]
michael@0 11392 add rsi, rax
michael@0 11393 adc r8, rdx
michael@0 11394 adc rdi, 0
michael@0 11395 mov rax, qword ptr [96+rcx]
michael@0 11396 mul qword ptr [160+rcx]
michael@0 11397 add rsi, rax
michael@0 11398 adc r8, rdx
michael@0 11399 adc rdi, 0
michael@0 11400 mov rax, qword ptr [104+rcx]
michael@0 11401 mul qword ptr [152+rcx]
michael@0 11402 add rsi, rax
michael@0 11403 adc r8, rdx
michael@0 11404 adc rdi, 0
michael@0 11405 mov rax, qword ptr [112+rcx]
michael@0 11406 mul qword ptr [144+rcx]
michael@0 11407 add rsi, rax
michael@0 11408 adc r8, rdx
michael@0 11409 adc rdi, 0
michael@0 11410 mov rax, qword ptr [120+rcx]
michael@0 11411 mul qword ptr [136+rcx]
michael@0 11412 add rsi, rax
michael@0 11413 adc r8, rdx
michael@0 11414 adc rdi, 0
michael@0 11415 mov r11, r8
michael@0 11416 mov rax, rdi
michael@0 11417 add rbx, rsi
michael@0 11418 adc r12, r11
michael@0 11419 adc r13, rax
michael@0 11420 add rbx, rsi
michael@0 11421 adc r12, r11
michael@0 11422 adc r13, rax
michael@0 11423 mov r9, rax
michael@0 11424 mov r8, r11
michael@0 11425 mov rax, qword ptr [128+rcx]
michael@0 11426 mul rax
michael@0 11427 add rbx, rax
michael@0 11428 adc r12, rdx
michael@0 11429 adc r13, 0
michael@0 11430 mov rdi, r9
michael@0 11431 mov qword ptr [-288+rbp], rbx
michael@0 11432 mov r9, r13
michael@0 11433 mov rax, qword ptr [16+rcx]
michael@0 11434 mul qword ptr [248+rcx]
michael@0 11435 mov rsi, rax
michael@0 11436 mov r8, rdx
michael@0 11437 xor rdi, rdi
michael@0 11438 mov r13, r10
michael@0 11439 mov rax, qword ptr [24+rcx]
michael@0 11440 mul qword ptr [240+rcx]
michael@0 11441 add rsi, rax
michael@0 11442 adc r8, rdx
michael@0 11443 adc rdi, 0
michael@0 11444 mov rax, qword ptr [32+rcx]
michael@0 11445 mul qword ptr [232+rcx]
michael@0 11446 add rsi, rax
michael@0 11447 adc r8, rdx
michael@0 11448 adc rdi, 0
michael@0 11449 mov rax, qword ptr [40+rcx]
michael@0 11450 mul qword ptr [224+rcx]
michael@0 11451 add rsi, rax
michael@0 11452 adc r8, rdx
michael@0 11453 adc rdi, 0
michael@0 11454 mov rax, qword ptr [48+rcx]
michael@0 11455 mul qword ptr [216+rcx]
michael@0 11456 add rsi, rax
michael@0 11457 adc r8, rdx
michael@0 11458 adc rdi, 0
michael@0 11459 mov rax, qword ptr [56+rcx]
michael@0 11460 mul qword ptr [208+rcx]
michael@0 11461 add rsi, rax
michael@0 11462 adc r8, rdx
michael@0 11463 adc rdi, 0
michael@0 11464 mov rax, qword ptr [64+rcx]
michael@0 11465 mul qword ptr [200+rcx]
michael@0 11466 add rsi, rax
michael@0 11467 adc r8, rdx
michael@0 11468 adc rdi, 0
michael@0 11469 mov rax, qword ptr [72+rcx]
michael@0 11470 mul qword ptr [192+rcx]
michael@0 11471 add rsi, rax
michael@0 11472 adc r8, rdx
michael@0 11473 adc rdi, 0
michael@0 11474 mov rax, qword ptr [80+rcx]
michael@0 11475 mul qword ptr [184+rcx]
michael@0 11476 add rsi, rax
michael@0 11477 adc r8, rdx
michael@0 11478 adc rdi, 0
michael@0 11479 mov rax, qword ptr [88+rcx]
michael@0 11480 mul qword ptr [176+rcx]
michael@0 11481 add rsi, rax
michael@0 11482 adc r8, rdx
michael@0 11483 adc rdi, 0
michael@0 11484 mov rax, qword ptr [96+rcx]
michael@0 11485 mul qword ptr [168+rcx]
michael@0 11486 add rsi, rax
michael@0 11487 adc r8, rdx
michael@0 11488 adc rdi, 0
michael@0 11489 mov rax, qword ptr [104+rcx]
michael@0 11490 mul qword ptr [160+rcx]
michael@0 11491 add rsi, rax
michael@0 11492 adc r8, rdx
michael@0 11493 adc rdi, 0
michael@0 11494 mov rax, qword ptr [112+rcx]
michael@0 11495 mul qword ptr [152+rcx]
michael@0 11496 add rsi, rax
michael@0 11497 adc r8, rdx
michael@0 11498 adc rdi, 0
michael@0 11499 mov rax, qword ptr [120+rcx]
michael@0 11500 mul qword ptr [144+rcx]
michael@0 11501 add rsi, rax
michael@0 11502 adc r8, rdx
michael@0 11503 adc rdi, 0
michael@0 11504 mov rax, qword ptr [128+rcx]
michael@0 11505 mul qword ptr [136+rcx]
michael@0 11506 add rsi, rax
michael@0 11507 adc r8, rdx
michael@0 11508 adc rdi, 0
michael@0 11509 add r12, rsi
michael@0 11510 adc r9, r8
michael@0 11511 adc r13, rdi
michael@0 11512 add r12, rsi
michael@0 11513 adc r9, r8
michael@0 11514 adc r13, rdi
michael@0 11515 mov qword ptr [-280+rbp], r12
michael@0 11516 mov r12, r10
michael@0 11517 mov rax, qword ptr [24+rcx]
michael@0 11518 mul qword ptr [248+rcx]
michael@0 11519 mov rsi, rax
michael@0 11520 mov r8, rdx
michael@0 11521 xor rdi, rdi
michael@0 11522 mov rax, qword ptr [32+rcx]
michael@0 11523 mul qword ptr [240+rcx]
michael@0 11524 add rsi, rax
michael@0 11525 adc r8, rdx
michael@0 11526 adc rdi, 0
michael@0 11527 mov rax, qword ptr [40+rcx]
michael@0 11528 mul qword ptr [232+rcx]
michael@0 11529 add rsi, rax
michael@0 11530 adc r8, rdx
michael@0 11531 adc rdi, 0
michael@0 11532 mov rax, qword ptr [48+rcx]
michael@0 11533 mul qword ptr [224+rcx]
michael@0 11534 add rsi, rax
michael@0 11535 adc r8, rdx
michael@0 11536 adc rdi, 0
michael@0 11537 mov rax, qword ptr [56+rcx]
michael@0 11538 mul qword ptr [216+rcx]
michael@0 11539 add rsi, rax
michael@0 11540 adc r8, rdx
michael@0 11541 adc rdi, 0
michael@0 11542 mov rax, qword ptr [64+rcx]
michael@0 11543 mul qword ptr [208+rcx]
michael@0 11544 add rsi, rax
michael@0 11545 adc r8, rdx
michael@0 11546 adc rdi, 0
michael@0 11547 mov rax, qword ptr [72+rcx]
michael@0 11548 mul qword ptr [200+rcx]
michael@0 11549 add rsi, rax
michael@0 11550 adc r8, rdx
michael@0 11551 adc rdi, 0
michael@0 11552 mov rax, qword ptr [80+rcx]
michael@0 11553 mul qword ptr [192+rcx]
michael@0 11554 add rsi, rax
michael@0 11555 adc r8, rdx
michael@0 11556 adc rdi, 0
michael@0 11557 mov rax, qword ptr [88+rcx]
michael@0 11558 mul qword ptr [184+rcx]
michael@0 11559 add rsi, rax
michael@0 11560 adc r8, rdx
michael@0 11561 adc rdi, 0
michael@0 11562 mov rax, qword ptr [96+rcx]
michael@0 11563 mul qword ptr [176+rcx]
michael@0 11564 add rsi, rax
michael@0 11565 adc r8, rdx
michael@0 11566 adc rdi, 0
michael@0 11567 mov rax, qword ptr [104+rcx]
michael@0 11568 mul qword ptr [168+rcx]
michael@0 11569 add rsi, rax
michael@0 11570 adc r8, rdx
michael@0 11571 adc rdi, 0
michael@0 11572 mov rax, qword ptr [112+rcx]
michael@0 11573 mul qword ptr [160+rcx]
michael@0 11574 add rsi, rax
michael@0 11575 adc r8, rdx
michael@0 11576 adc rdi, 0
michael@0 11577 mov rax, qword ptr [120+rcx]
michael@0 11578 mul qword ptr [152+rcx]
michael@0 11579 add rsi, rax
michael@0 11580 adc r8, rdx
michael@0 11581 adc rdi, 0
michael@0 11582 mov rax, qword ptr [128+rcx]
michael@0 11583 mul qword ptr [144+rcx]
michael@0 11584 add rsi, rax
michael@0 11585 adc r8, rdx
michael@0 11586 adc rdi, 0
michael@0 11587 mov rdx, r13
michael@0 11588 mov rbx, r8
michael@0 11589 mov r13, rdi
michael@0 11590 add r9, rsi
michael@0 11591 adc rdx, rbx
michael@0 11592 adc r12, r13
michael@0 11593 add r9, rsi
michael@0 11594 adc rdx, rbx
michael@0 11595 adc r12, r13
michael@0 11596 mov rax, r12
michael@0 11597 mov r11, r13
michael@0 11598 mov r12, rdx
michael@0 11599 mov r13, rax
michael@0 11600 mov r8, rbx
michael@0 11601 mov rdi, r11
michael@0 11602 mov rax, qword ptr [136+rcx]
michael@0 11603 mul rax
michael@0 11604 add r9, rax
michael@0 11605 adc r12, rdx
michael@0 11606 adc r13, 0
michael@0 11607 mov qword ptr [-272+rbp], r9
michael@0 11608 mov r9, r13
michael@0 11609 mov r13, r10
michael@0 11610 mov rax, qword ptr [32+rcx]
michael@0 11611 mul qword ptr [248+rcx]
michael@0 11612 mov rsi, rax
michael@0 11613 mov r8, rdx
michael@0 11614 xor rdi, rdi
michael@0 11615 mov rax, qword ptr [40+rcx]
michael@0 11616 mul qword ptr [240+rcx]
michael@0 11617 add rsi, rax
michael@0 11618 adc r8, rdx
michael@0 11619 adc rdi, 0
michael@0 11620 mov rax, qword ptr [48+rcx]
michael@0 11621 mul qword ptr [232+rcx]
michael@0 11622 add rsi, rax
michael@0 11623 adc r8, rdx
michael@0 11624 adc rdi, 0
michael@0 11625 mov rax, qword ptr [56+rcx]
michael@0 11626 mul qword ptr [224+rcx]
michael@0 11627 add rsi, rax
michael@0 11628 adc r8, rdx
michael@0 11629 adc rdi, 0
michael@0 11630 mov rax, qword ptr [64+rcx]
michael@0 11631 mul qword ptr [216+rcx]
michael@0 11632 add rsi, rax
michael@0 11633 adc r8, rdx
michael@0 11634 adc rdi, 0
michael@0 11635 mov rax, qword ptr [72+rcx]
michael@0 11636 mul qword ptr [208+rcx]
michael@0 11637 add rsi, rax
michael@0 11638 adc r8, rdx
michael@0 11639 adc rdi, 0
michael@0 11640 mov rax, qword ptr [80+rcx]
michael@0 11641 mul qword ptr [200+rcx]
michael@0 11642 add rsi, rax
michael@0 11643 adc r8, rdx
michael@0 11644 adc rdi, 0
michael@0 11645 mov rax, qword ptr [88+rcx]
michael@0 11646 mul qword ptr [192+rcx]
michael@0 11647 add rsi, rax
michael@0 11648 adc r8, rdx
michael@0 11649 adc rdi, 0
michael@0 11650 mov rax, qword ptr [96+rcx]
michael@0 11651 mul qword ptr [184+rcx]
michael@0 11652 add rsi, rax
michael@0 11653 adc r8, rdx
michael@0 11654 adc rdi, 0
michael@0 11655 mov rax, qword ptr [104+rcx]
michael@0 11656 mul qword ptr [176+rcx]
michael@0 11657 add rsi, rax
michael@0 11658 adc r8, rdx
michael@0 11659 adc rdi, 0
michael@0 11660 mov rax, qword ptr [112+rcx]
michael@0 11661 mul qword ptr [168+rcx]
michael@0 11662 add rsi, rax
michael@0 11663 adc r8, rdx
michael@0 11664 adc rdi, 0
michael@0 11665 mov rax, qword ptr [120+rcx]
michael@0 11666 mul qword ptr [160+rcx]
michael@0 11667 add rsi, rax
michael@0 11668 adc r8, rdx
michael@0 11669 adc rdi, 0
michael@0 11670 mov rax, qword ptr [128+rcx]
michael@0 11671 mul qword ptr [152+rcx]
michael@0 11672 add rsi, rax
michael@0 11673 adc r8, rdx
michael@0 11674 adc rdi, 0
michael@0 11675 mov rax, qword ptr [136+rcx]
michael@0 11676 mul qword ptr [144+rcx]
michael@0 11677 add rsi, rax
michael@0 11678 adc r8, rdx
michael@0 11679 adc rdi, 0
michael@0 11680 add r12, rsi
michael@0 11681 adc r9, r8
michael@0 11682 adc r13, rdi
michael@0 11683 add r12, rsi
michael@0 11684 adc r9, r8
michael@0 11685 adc r13, rdi
michael@0 11686 mov qword ptr [-264+rbp], r12
michael@0 11687 mov rax, qword ptr [40+rcx]
michael@0 11688 mul qword ptr [248+rcx]
michael@0 11689 mov rsi, rax
michael@0 11690 mov r8, rdx
michael@0 11691 xor rdi, rdi
michael@0 11692 mov rax, qword ptr [48+rcx]
michael@0 11693 mul qword ptr [240+rcx]
michael@0 11694 add rsi, rax
michael@0 11695 adc r8, rdx
michael@0 11696 adc rdi, 0
michael@0 11697 mov rax, qword ptr [56+rcx]
michael@0 11698 mul qword ptr [232+rcx]
michael@0 11699 add rsi, rax
michael@0 11700 adc r8, rdx
michael@0 11701 adc rdi, 0
michael@0 11702 mov rax, qword ptr [64+rcx]
michael@0 11703 mul qword ptr [224+rcx]
michael@0 11704 add rsi, rax
michael@0 11705 adc r8, rdx
michael@0 11706 adc rdi, 0
michael@0 11707 mov rax, qword ptr [72+rcx]
michael@0 11708 mul qword ptr [216+rcx]
michael@0 11709 add rsi, rax
michael@0 11710 adc r8, rdx
michael@0 11711 adc rdi, 0
michael@0 11712 mov rax, qword ptr [80+rcx]
michael@0 11713 mul qword ptr [208+rcx]
michael@0 11714 add rsi, rax
michael@0 11715 adc r8, rdx
michael@0 11716 adc rdi, 0
michael@0 11717 mov rax, qword ptr [88+rcx]
michael@0 11718 mul qword ptr [200+rcx]
michael@0 11719 add rsi, rax
michael@0 11720 adc r8, rdx
michael@0 11721 adc rdi, 0
michael@0 11722 mov rax, qword ptr [96+rcx]
michael@0 11723 mul qword ptr [192+rcx]
michael@0 11724 add rsi, rax
michael@0 11725 adc r8, rdx
michael@0 11726 adc rdi, 0
michael@0 11727 mov rax, qword ptr [104+rcx]
michael@0 11728 mul qword ptr [184+rcx]
michael@0 11729 add rsi, rax
michael@0 11730 adc r8, rdx
michael@0 11731 adc rdi, 0
michael@0 11732 mov rax, qword ptr [112+rcx]
michael@0 11733 mul qword ptr [176+rcx]
michael@0 11734 add rsi, rax
michael@0 11735 adc r8, rdx
michael@0 11736 adc rdi, 0
michael@0 11737 mov rax, qword ptr [120+rcx]
michael@0 11738 mul qword ptr [168+rcx]
michael@0 11739 add rsi, rax
michael@0 11740 adc r8, rdx
michael@0 11741 adc rdi, 0
michael@0 11742 mov rax, qword ptr [128+rcx]
michael@0 11743 mul qword ptr [160+rcx]
michael@0 11744 add rsi, rax
michael@0 11745 adc r8, rdx
michael@0 11746 adc rdi, 0
michael@0 11747 mov rax, qword ptr [136+rcx]
michael@0 11748 mul qword ptr [152+rcx]
michael@0 11749 add rsi, rax
michael@0 11750 adc r8, rdx
michael@0 11751 adc rdi, 0
michael@0 11752 mov rax, r13
michael@0 11753 mov rdx, r10
michael@0 11754 mov rbx, r8
michael@0 11755 mov r12, rdi
michael@0 11756 add r9, rsi
michael@0 11757 adc rax, rbx
michael@0 11758 adc rdx, r12
michael@0 11759 add r9, rsi
michael@0 11760 adc rax, rbx
michael@0 11761 adc rdx, r12
michael@0 11762 mov rdi, rdx
michael@0 11763 mov r11, r12
michael@0 11764 mov r8, rbx
michael@0 11765 mov r12, rax
michael@0 11766 mov r13, rdi
michael@0 11767 mov rdi, r11
michael@0 11768 mov rax, qword ptr [144+rcx]
michael@0 11769 mul rax
michael@0 11770 add r9, rax
michael@0 11771 adc r12, rdx
michael@0 11772 adc r13, 0
michael@0 11773 mov r11, r10
michael@0 11774 mov qword ptr [-256+rbp], r9
michael@0 11775 mov r9, r13
michael@0 11776 mov rax, qword ptr [48+rcx]
michael@0 11777 mul qword ptr [248+rcx]
michael@0 11778 mov rsi, rax
michael@0 11779 mov r8, rdx
michael@0 11780 xor rdi, rdi
michael@0 11781 mov rax, qword ptr [56+rcx]
michael@0 11782 mul qword ptr [240+rcx]
michael@0 11783 add rsi, rax
michael@0 11784 adc r8, rdx
michael@0 11785 adc rdi, 0
michael@0 11786 mov rax, qword ptr [64+rcx]
michael@0 11787 mul qword ptr [232+rcx]
michael@0 11788 add rsi, rax
michael@0 11789 adc r8, rdx
michael@0 11790 adc rdi, 0
michael@0 11791 mov rax, qword ptr [72+rcx]
michael@0 11792 mul qword ptr [224+rcx]
michael@0 11793 add rsi, rax
michael@0 11794 adc r8, rdx
michael@0 11795 adc rdi, 0
michael@0 11796 mov rax, qword ptr [80+rcx]
michael@0 11797 mul qword ptr [216+rcx]
michael@0 11798 add rsi, rax
michael@0 11799 adc r8, rdx
michael@0 11800 adc rdi, 0
michael@0 11801 mov rax, qword ptr [88+rcx]
michael@0 11802 mul qword ptr [208+rcx]
michael@0 11803 add rsi, rax
michael@0 11804 adc r8, rdx
michael@0 11805 adc rdi, 0
michael@0 11806 mov rax, qword ptr [96+rcx]
michael@0 11807 mul qword ptr [200+rcx]
michael@0 11808 add rsi, rax
michael@0 11809 adc r8, rdx
michael@0 11810 adc rdi, 0
michael@0 11811 mov rax, qword ptr [104+rcx]
michael@0 11812 mul qword ptr [192+rcx]
michael@0 11813 add rsi, rax
michael@0 11814 adc r8, rdx
michael@0 11815 adc rdi, 0
michael@0 11816 mov rax, qword ptr [112+rcx]
michael@0 11817 mul qword ptr [184+rcx]
michael@0 11818 add rsi, rax
michael@0 11819 adc r8, rdx
michael@0 11820 adc rdi, 0
michael@0 11821 mov rax, qword ptr [120+rcx]
michael@0 11822 mul qword ptr [176+rcx]
michael@0 11823 add rsi, rax
michael@0 11824 adc r8, rdx
michael@0 11825 adc rdi, 0
michael@0 11826 mov rax, qword ptr [128+rcx]
michael@0 11827 mul qword ptr [168+rcx]
michael@0 11828 add rsi, rax
michael@0 11829 adc r8, rdx
michael@0 11830 adc rdi, 0
michael@0 11831 mov rax, qword ptr [136+rcx]
michael@0 11832 mul qword ptr [160+rcx]
michael@0 11833 add rsi, rax
michael@0 11834 adc r8, rdx
michael@0 11835 adc rdi, 0
michael@0 11836 mov rax, qword ptr [144+rcx]
michael@0 11837 mul qword ptr [152+rcx]
michael@0 11838 add rsi, rax
michael@0 11839 adc r8, rdx
michael@0 11840 adc rdi, 0
michael@0 11841 add r12, rsi
michael@0 11842 adc r9, r8
michael@0 11843 adc r11, rdi
michael@0 11844 add r12, rsi
michael@0 11845 adc r9, r8
michael@0 11846 adc r11, rdi
michael@0 11847 mov qword ptr [-248+rbp], r12
michael@0 11848 mov r13, r11
michael@0 11849 mov rax, qword ptr [56+rcx]
michael@0 11850 mul qword ptr [248+rcx]
michael@0 11851 mov rsi, rax
michael@0 11852 mov r8, rdx
michael@0 11853 xor rdi, rdi
michael@0 11854 mov rax, qword ptr [64+rcx]
michael@0 11855 mul qword ptr [240+rcx]
michael@0 11856 add rsi, rax
michael@0 11857 adc r8, rdx
michael@0 11858 adc rdi, 0
michael@0 11859 mov rax, qword ptr [72+rcx]
michael@0 11860 mul qword ptr [232+rcx]
michael@0 11861 add rsi, rax
michael@0 11862 adc r8, rdx
michael@0 11863 adc rdi, 0
michael@0 11864 mov rax, qword ptr [80+rcx]
michael@0 11865 mul qword ptr [224+rcx]
michael@0 11866 add rsi, rax
michael@0 11867 adc r8, rdx
michael@0 11868 adc rdi, 0
michael@0 11869 mov rax, qword ptr [88+rcx]
michael@0 11870 mul qword ptr [216+rcx]
michael@0 11871 add rsi, rax
michael@0 11872 adc r8, rdx
michael@0 11873 adc rdi, 0
michael@0 11874 mov rax, qword ptr [96+rcx]
michael@0 11875 mul qword ptr [208+rcx]
michael@0 11876 add rsi, rax
michael@0 11877 adc r8, rdx
michael@0 11878 adc rdi, 0
michael@0 11879 mov rax, qword ptr [104+rcx]
michael@0 11880 mul qword ptr [200+rcx]
michael@0 11881 add rsi, rax
michael@0 11882 adc r8, rdx
michael@0 11883 adc rdi, 0
michael@0 11884 mov rax, qword ptr [112+rcx]
michael@0 11885 mul qword ptr [192+rcx]
michael@0 11886 add rsi, rax
michael@0 11887 adc r8, rdx
michael@0 11888 adc rdi, 0
michael@0 11889 mov rax, qword ptr [120+rcx]
michael@0 11890 mul qword ptr [184+rcx]
michael@0 11891 add rsi, rax
michael@0 11892 adc r8, rdx
michael@0 11893 adc rdi, 0
michael@0 11894 mov rax, qword ptr [128+rcx]
michael@0 11895 mul qword ptr [176+rcx]
michael@0 11896 add rsi, rax
michael@0 11897 adc r8, rdx
michael@0 11898 adc rdi, 0
michael@0 11899 mov rax, qword ptr [136+rcx]
michael@0 11900 mul qword ptr [168+rcx]
michael@0 11901 add rsi, rax
michael@0 11902 adc r8, rdx
michael@0 11903 adc rdi, 0
michael@0 11904 mov rax, qword ptr [144+rcx]
michael@0 11905 mul qword ptr [160+rcx]
michael@0 11906 add rsi, rax
michael@0 11907 adc r8, rdx
michael@0 11908 adc rdi, 0
michael@0 11909 mov rax, r10
michael@0 11910 mov rdx, rsi
michael@0 11911 mov rbx, r8
michael@0 11912 mov r12, rdi
michael@0 11913 add r9, rdx
michael@0 11914 adc r13, rbx
michael@0 11915 adc rax, r12
michael@0 11916 add r9, rdx
michael@0 11917 adc r13, rbx
michael@0 11918 adc rax, r12
michael@0 11919 mov r11, r12
michael@0 11920 mov r8, rdx
michael@0 11921 mov rdx, rax
michael@0 11922 mov r12, r13
michael@0 11923 mov rdi, rbx
michael@0 11924 mov r13, rdx
michael@0 11925 mov rsi, r11
michael@0 11926 mov rax, qword ptr [152+rcx]
michael@0 11927 mul rax
michael@0 11928 add r9, rax
michael@0 11929 adc r12, rdx
michael@0 11930 adc r13, 0
michael@0 11931 mov qword ptr [-240+rbp], r9
michael@0 11932 mov r9, r13
michael@0 11933 mov r13, r10
michael@0 11934 mov rax, qword ptr [64+rcx]
michael@0 11935 mul qword ptr [248+rcx]
michael@0 11936 mov r8, rax
michael@0 11937 mov rdi, rdx
michael@0 11938 xor rsi, rsi
michael@0 11939 mov rax, qword ptr [72+rcx]
michael@0 11940 mul qword ptr [240+rcx]
michael@0 11941 add r8, rax
michael@0 11942 adc rdi, rdx
michael@0 11943 adc rsi, 0
michael@0 11944 mov rax, qword ptr [80+rcx]
michael@0 11945 mul qword ptr [232+rcx]
michael@0 11946 add r8, rax
michael@0 11947 adc rdi, rdx
michael@0 11948 adc rsi, 0
michael@0 11949 mov rax, qword ptr [88+rcx]
michael@0 11950 mul qword ptr [224+rcx]
michael@0 11951 add r8, rax
michael@0 11952 adc rdi, rdx
michael@0 11953 adc rsi, 0
michael@0 11954 mov rax, qword ptr [96+rcx]
michael@0 11955 mul qword ptr [216+rcx]
michael@0 11956 add r8, rax
michael@0 11957 adc rdi, rdx
michael@0 11958 adc rsi, 0
michael@0 11959 mov rax, qword ptr [104+rcx]
michael@0 11960 mul qword ptr [208+rcx]
michael@0 11961 add r8, rax
michael@0 11962 adc rdi, rdx
michael@0 11963 adc rsi, 0
michael@0 11964 mov rax, qword ptr [112+rcx]
michael@0 11965 mul qword ptr [200+rcx]
michael@0 11966 add r8, rax
michael@0 11967 adc rdi, rdx
michael@0 11968 adc rsi, 0
michael@0 11969 mov rax, qword ptr [120+rcx]
michael@0 11970 mul qword ptr [192+rcx]
michael@0 11971 add r8, rax
michael@0 11972 adc rdi, rdx
michael@0 11973 adc rsi, 0
michael@0 11974 mov rax, qword ptr [128+rcx]
michael@0 11975 mul qword ptr [184+rcx]
michael@0 11976 add r8, rax
michael@0 11977 adc rdi, rdx
michael@0 11978 adc rsi, 0
michael@0 11979 mov rax, qword ptr [136+rcx]
michael@0 11980 mul qword ptr [176+rcx]
michael@0 11981 add r8, rax
michael@0 11982 adc rdi, rdx
michael@0 11983 adc rsi, 0
michael@0 11984 mov rax, qword ptr [144+rcx]
michael@0 11985 mul qword ptr [168+rcx]
michael@0 11986 add r8, rax
michael@0 11987 adc rdi, rdx
michael@0 11988 adc rsi, 0
michael@0 11989 mov rax, qword ptr [152+rcx]
michael@0 11990 mul qword ptr [160+rcx]
michael@0 11991 add r8, rax
michael@0 11992 adc rdi, rdx
michael@0 11993 adc rsi, 0
michael@0 11994 mov rax, r8
michael@0 11995 mov rdx, rdi
michael@0 11996 mov rbx, rsi
michael@0 11997 add r12, rax
michael@0 11998 adc r9, rdx
michael@0 11999 adc r13, rbx
michael@0 12000 add r12, rax
michael@0 12001 adc r9, rdx
michael@0 12002 adc r13, rbx
michael@0 12003 mov qword ptr [-232+rbp], r12
michael@0 12004 mov r8, rdx
michael@0 12005 mov rsi, rax
michael@0 12006 mov rdi, rbx
michael@0 12007 mov r12, r13
michael@0 12008 mov r13, r10
michael@0 12009 mov rax, qword ptr [72+rcx]
michael@0 12010 mul qword ptr [248+rcx]
michael@0 12011 mov rsi, rax
michael@0 12012 mov r8, rdx
michael@0 12013 xor rdi, rdi
michael@0 12014 mov rax, qword ptr [80+rcx]
michael@0 12015 mul qword ptr [240+rcx]
michael@0 12016 add rsi, rax
michael@0 12017 adc r8, rdx
michael@0 12018 adc rdi, 0
michael@0 12019 mov rax, qword ptr [88+rcx]
michael@0 12020 mul qword ptr [232+rcx]
michael@0 12021 add rsi, rax
michael@0 12022 adc r8, rdx
michael@0 12023 adc rdi, 0
michael@0 12024 mov rax, qword ptr [96+rcx]
michael@0 12025 mul qword ptr [224+rcx]
michael@0 12026 add rsi, rax
michael@0 12027 adc r8, rdx
michael@0 12028 adc rdi, 0
michael@0 12029 mov rax, qword ptr [104+rcx]
michael@0 12030 mul qword ptr [216+rcx]
michael@0 12031 add rsi, rax
michael@0 12032 adc r8, rdx
michael@0 12033 adc rdi, 0
michael@0 12034 mov rax, qword ptr [112+rcx]
michael@0 12035 mul qword ptr [208+rcx]
michael@0 12036 add rsi, rax
michael@0 12037 adc r8, rdx
michael@0 12038 adc rdi, 0
michael@0 12039 mov rax, qword ptr [120+rcx]
michael@0 12040 mul qword ptr [200+rcx]
michael@0 12041 add rsi, rax
michael@0 12042 adc r8, rdx
michael@0 12043 adc rdi, 0
michael@0 12044 mov rax, qword ptr [128+rcx]
michael@0 12045 mul qword ptr [192+rcx]
michael@0 12046 add rsi, rax
michael@0 12047 adc r8, rdx
michael@0 12048 adc rdi, 0
michael@0 12049 mov rax, qword ptr [136+rcx]
michael@0 12050 mul qword ptr [184+rcx]
michael@0 12051 add rsi, rax
michael@0 12052 adc r8, rdx
michael@0 12053 adc rdi, 0
michael@0 12054 mov rax, qword ptr [144+rcx]
michael@0 12055 mul qword ptr [176+rcx]
michael@0 12056 add rsi, rax
michael@0 12057 adc r8, rdx
michael@0 12058 adc rdi, 0
michael@0 12059 mov rax, qword ptr [152+rcx]
michael@0 12060 mul qword ptr [168+rcx]
michael@0 12061 add rsi, rax
michael@0 12062 adc r8, rdx
michael@0 12063 adc rdi, 0
michael@0 12064 mov rax, rsi
michael@0 12065 mov rbx, r8
michael@0 12066 mov rdx, rdi
michael@0 12067 add r9, rax
michael@0 12068 adc r12, rbx
michael@0 12069 adc r13, rdx
michael@0 12070 add r9, rax
michael@0 12071 adc r12, rbx
michael@0 12072 adc r13, rdx
michael@0 12073 mov r11, rdx
michael@0 12074 mov r8, rax
michael@0 12075 mov rdi, rbx
michael@0 12076 mov rax, qword ptr [160+rcx]
michael@0 12077 mul rax
michael@0 12078 add r9, rax
michael@0 12079 adc r12, rdx
michael@0 12080 adc r13, 0
michael@0 12081 mov rsi, r11
michael@0 12082 mov qword ptr [-224+rbp], r9
michael@0 12083 mov r9, r13
michael@0 12084 mov rax, qword ptr [80+rcx]
michael@0 12085 mul qword ptr [248+rcx]
michael@0 12086 mov r8, rax
michael@0 12087 mov rdi, rdx
michael@0 12088 xor rsi, rsi
michael@0 12089 mov r13, r10
michael@0 12090 mov rax, qword ptr [88+rcx]
michael@0 12091 mul qword ptr [240+rcx]
michael@0 12092 add r8, rax
michael@0 12093 adc rdi, rdx
michael@0 12094 adc rsi, 0
michael@0 12095 mov rax, qword ptr [96+rcx]
michael@0 12096 mul qword ptr [232+rcx]
michael@0 12097 add r8, rax
michael@0 12098 adc rdi, rdx
michael@0 12099 adc rsi, 0
michael@0 12100 mov rax, qword ptr [104+rcx]
michael@0 12101 mul qword ptr [224+rcx]
michael@0 12102 add r8, rax
michael@0 12103 adc rdi, rdx
michael@0 12104 adc rsi, 0
michael@0 12105 mov rax, qword ptr [112+rcx]
michael@0 12106 mul qword ptr [216+rcx]
michael@0 12107 add r8, rax
michael@0 12108 adc rdi, rdx
michael@0 12109 adc rsi, 0
michael@0 12110 mov rax, qword ptr [120+rcx]
michael@0 12111 mul qword ptr [208+rcx]
michael@0 12112 add r8, rax
michael@0 12113 adc rdi, rdx
michael@0 12114 adc rsi, 0
michael@0 12115 mov rax, qword ptr [128+rcx]
michael@0 12116 mul qword ptr [200+rcx]
michael@0 12117 add r8, rax
michael@0 12118 adc rdi, rdx
michael@0 12119 adc rsi, 0
michael@0 12120 mov rax, qword ptr [136+rcx]
michael@0 12121 mul qword ptr [192+rcx]
michael@0 12122 add r8, rax
michael@0 12123 adc rdi, rdx
michael@0 12124 adc rsi, 0
michael@0 12125 mov rax, qword ptr [144+rcx]
michael@0 12126 mul qword ptr [184+rcx]
michael@0 12127 add r8, rax
michael@0 12128 adc rdi, rdx
michael@0 12129 adc rsi, 0
michael@0 12130 mov rax, qword ptr [152+rcx]
michael@0 12131 mul qword ptr [176+rcx]
michael@0 12132 add r8, rax
michael@0 12133 adc rdi, rdx
michael@0 12134 adc rsi, 0
michael@0 12135 mov rax, qword ptr [160+rcx]
michael@0 12136 mul qword ptr [168+rcx]
michael@0 12137 add r8, rax
michael@0 12138 adc rdi, rdx
michael@0 12139 adc rsi, 0
michael@0 12140 mov rbx, r8
michael@0 12141 mov rax, rdi
michael@0 12142 mov rdx, rsi
michael@0 12143 add r12, rbx
michael@0 12144 adc r9, rax
michael@0 12145 adc r13, rdx
michael@0 12146 add r12, rbx
michael@0 12147 adc r9, rax
michael@0 12148 adc r13, rdx
michael@0 12149 mov qword ptr [-216+rbp], r12
michael@0 12150 mov rdi, rdx
michael@0 12151 mov r8, rax
michael@0 12152 mov rsi, rbx
michael@0 12153 mov r12, r13
michael@0 12154 mov r13, r10
michael@0 12155 mov rax, qword ptr [88+rcx]
michael@0 12156 mul qword ptr [248+rcx]
michael@0 12157 mov rsi, rax
michael@0 12158 mov r8, rdx
michael@0 12159 xor rdi, rdi
michael@0 12160 mov rax, qword ptr [96+rcx]
michael@0 12161 mul qword ptr [240+rcx]
michael@0 12162 add rsi, rax
michael@0 12163 adc r8, rdx
michael@0 12164 adc rdi, 0
michael@0 12165 mov rax, qword ptr [104+rcx]
michael@0 12166 mul qword ptr [232+rcx]
michael@0 12167 add rsi, rax
michael@0 12168 adc r8, rdx
michael@0 12169 adc rdi, 0
michael@0 12170 mov rax, qword ptr [112+rcx]
michael@0 12171 mul qword ptr [224+rcx]
michael@0 12172 add rsi, rax
michael@0 12173 adc r8, rdx
michael@0 12174 adc rdi, 0
michael@0 12175 mov rax, qword ptr [120+rcx]
michael@0 12176 mul qword ptr [216+rcx]
michael@0 12177 add rsi, rax
michael@0 12178 adc r8, rdx
michael@0 12179 adc rdi, 0
michael@0 12180 mov rax, qword ptr [128+rcx]
michael@0 12181 mul qword ptr [208+rcx]
michael@0 12182 add rsi, rax
michael@0 12183 adc r8, rdx
michael@0 12184 adc rdi, 0
michael@0 12185 mov rax, qword ptr [136+rcx]
michael@0 12186 mul qword ptr [200+rcx]
michael@0 12187 add rsi, rax
michael@0 12188 adc r8, rdx
michael@0 12189 adc rdi, 0
michael@0 12190 mov rax, qword ptr [144+rcx]
michael@0 12191 mul qword ptr [192+rcx]
michael@0 12192 add rsi, rax
michael@0 12193 adc r8, rdx
michael@0 12194 adc rdi, 0
michael@0 12195 mov rax, qword ptr [152+rcx]
michael@0 12196 mul qword ptr [184+rcx]
michael@0 12197 add rsi, rax
michael@0 12198 adc r8, rdx
michael@0 12199 adc rdi, 0
michael@0 12200 mov rax, qword ptr [160+rcx]
michael@0 12201 mul qword ptr [176+rcx]
michael@0 12202 add rsi, rax
michael@0 12203 adc r8, rdx
michael@0 12204 adc rdi, 0
michael@0 12205 mov rax, rsi
michael@0 12206 mov rbx, r8
michael@0 12207 mov rdx, rdi
michael@0 12208 add r9, rax
michael@0 12209 adc r12, rbx
michael@0 12210 adc r13, rdx
michael@0 12211 add r9, rax
michael@0 12212 adc r12, rbx
michael@0 12213 adc r13, rdx
michael@0 12214 mov r11, rdx
michael@0 12215 mov r8, rax
michael@0 12216 mov rdi, rbx
michael@0 12217 mov rax, qword ptr [168+rcx]
michael@0 12218 mul rax
michael@0 12219 add r9, rax
michael@0 12220 adc r12, rdx
michael@0 12221 adc r13, 0
michael@0 12222 mov rsi, r11
michael@0 12223 mov qword ptr [-208+rbp], r9
michael@0 12224 mov r9, r13
michael@0 12225 mov rax, qword ptr [96+rcx]
michael@0 12226 mul qword ptr [248+rcx]
michael@0 12227 mov r8, rax
michael@0 12228 mov rdi, rdx
michael@0 12229 xor rsi, rsi
michael@0 12230 mov r13, r10
michael@0 12231 mov rax, qword ptr [104+rcx]
michael@0 12232 mul qword ptr [240+rcx]
michael@0 12233 add r8, rax
michael@0 12234 adc rdi, rdx
michael@0 12235 adc rsi, 0
michael@0 12236 mov rax, qword ptr [112+rcx]
michael@0 12237 mul qword ptr [232+rcx]
michael@0 12238 add r8, rax
michael@0 12239 adc rdi, rdx
michael@0 12240 adc rsi, 0
michael@0 12241 mov rax, qword ptr [120+rcx]
michael@0 12242 mul qword ptr [224+rcx]
michael@0 12243 add r8, rax
michael@0 12244 adc rdi, rdx
michael@0 12245 adc rsi, 0
michael@0 12246 mov rax, qword ptr [128+rcx]
michael@0 12247 mul qword ptr [216+rcx]
michael@0 12248 add r8, rax
michael@0 12249 adc rdi, rdx
michael@0 12250 adc rsi, 0
michael@0 12251 mov rax, qword ptr [136+rcx]
michael@0 12252 mul qword ptr [208+rcx]
michael@0 12253 add r8, rax
michael@0 12254 adc rdi, rdx
michael@0 12255 adc rsi, 0
michael@0 12256 mov rax, qword ptr [144+rcx]
michael@0 12257 mul qword ptr [200+rcx]
michael@0 12258 add r8, rax
michael@0 12259 adc rdi, rdx
michael@0 12260 adc rsi, 0
michael@0 12261 mov rax, qword ptr [152+rcx]
michael@0 12262 mul qword ptr [192+rcx]
michael@0 12263 add r8, rax
michael@0 12264 adc rdi, rdx
michael@0 12265 adc rsi, 0
michael@0 12266 mov rax, qword ptr [160+rcx]
michael@0 12267 mul qword ptr [184+rcx]
michael@0 12268 add r8, rax
michael@0 12269 adc rdi, rdx
michael@0 12270 adc rsi, 0
michael@0 12271 mov rax, qword ptr [168+rcx]
michael@0 12272 mul qword ptr [176+rcx]
michael@0 12273 add r8, rax
michael@0 12274 adc rdi, rdx
michael@0 12275 adc rsi, 0
michael@0 12276 mov rbx, r8
michael@0 12277 mov rax, rdi
michael@0 12278 mov rdx, rsi
michael@0 12279 add r12, rbx
michael@0 12280 adc r9, rax
michael@0 12281 adc r13, rdx
michael@0 12282 add r12, rbx
michael@0 12283 adc r9, rax
michael@0 12284 adc r13, rdx
michael@0 12285 mov qword ptr [-200+rbp], r12
michael@0 12286 mov rdi, rdx
michael@0 12287 mov r8, rax
michael@0 12288 mov rsi, rbx
michael@0 12289 mov r12, r13
michael@0 12290 mov r13, r10
michael@0 12291 mov rax, qword ptr [104+rcx]
michael@0 12292 mul qword ptr [248+rcx]
michael@0 12293 mov rsi, rax
michael@0 12294 mov r8, rdx
michael@0 12295 xor rdi, rdi
michael@0 12296 mov rax, qword ptr [112+rcx]
michael@0 12297 mul qword ptr [240+rcx]
michael@0 12298 add rsi, rax
michael@0 12299 adc r8, rdx
michael@0 12300 adc rdi, 0
michael@0 12301 mov rax, qword ptr [120+rcx]
michael@0 12302 mul qword ptr [232+rcx]
michael@0 12303 add rsi, rax
michael@0 12304 adc r8, rdx
michael@0 12305 adc rdi, 0
michael@0 12306 mov rax, qword ptr [128+rcx]
michael@0 12307 mul qword ptr [224+rcx]
michael@0 12308 add rsi, rax
michael@0 12309 adc r8, rdx
michael@0 12310 adc rdi, 0
michael@0 12311 mov rax, qword ptr [136+rcx]
michael@0 12312 mul qword ptr [216+rcx]
michael@0 12313 add rsi, rax
michael@0 12314 adc r8, rdx
michael@0 12315 adc rdi, 0
michael@0 12316 mov rax, qword ptr [144+rcx]
michael@0 12317 mul qword ptr [208+rcx]
michael@0 12318 add rsi, rax
michael@0 12319 adc r8, rdx
michael@0 12320 adc rdi, 0
michael@0 12321 mov rax, qword ptr [152+rcx]
michael@0 12322 mul qword ptr [200+rcx]
michael@0 12323 add rsi, rax
michael@0 12324 adc r8, rdx
michael@0 12325 adc rdi, 0
michael@0 12326 mov rax, qword ptr [160+rcx]
michael@0 12327 mul qword ptr [192+rcx]
michael@0 12328 add rsi, rax
michael@0 12329 adc r8, rdx
michael@0 12330 adc rdi, 0
michael@0 12331 mov rax, qword ptr [168+rcx]
michael@0 12332 mul qword ptr [184+rcx]
michael@0 12333 add rsi, rax
michael@0 12334 adc r8, rdx
michael@0 12335 adc rdi, 0
michael@0 12336 mov rax, rsi
michael@0 12337 mov rbx, r8
michael@0 12338 mov rdx, rdi
michael@0 12339 add r9, rax
michael@0 12340 adc r12, rbx
michael@0 12341 adc r13, rdx
michael@0 12342 add r9, rax
michael@0 12343 adc r12, rbx
michael@0 12344 adc r13, rdx
michael@0 12345 mov r11, rdx
michael@0 12346 mov r8, rax
michael@0 12347 mov rdi, rbx
michael@0 12348 mov rax, qword ptr [176+rcx]
michael@0 12349 mul rax
michael@0 12350 add r9, rax
michael@0 12351 adc r12, rdx
michael@0 12352 adc r13, 0
michael@0 12353 mov rsi, r11
michael@0 12354 mov qword ptr [-192+rbp], r9
michael@0 12355 mov r9, r13
michael@0 12356 mov rax, qword ptr [112+rcx]
michael@0 12357 mul qword ptr [248+rcx]
michael@0 12358 mov r8, rax
michael@0 12359 mov rdi, rdx
michael@0 12360 xor rsi, rsi
michael@0 12361 mov r13, r10
michael@0 12362 mov rax, qword ptr [120+rcx]
michael@0 12363 mul qword ptr [240+rcx]
michael@0 12364 add r8, rax
michael@0 12365 adc rdi, rdx
michael@0 12366 adc rsi, 0
michael@0 12367 mov rax, qword ptr [128+rcx]
michael@0 12368 mul qword ptr [232+rcx]
michael@0 12369 add r8, rax
michael@0 12370 adc rdi, rdx
michael@0 12371 adc rsi, 0
michael@0 12372 mov rax, qword ptr [136+rcx]
michael@0 12373 mul qword ptr [224+rcx]
michael@0 12374 add r8, rax
michael@0 12375 adc rdi, rdx
michael@0 12376 adc rsi, 0
michael@0 12377 mov rax, qword ptr [144+rcx]
michael@0 12378 mul qword ptr [216+rcx]
michael@0 12379 add r8, rax
michael@0 12380 adc rdi, rdx
michael@0 12381 adc rsi, 0
michael@0 12382 mov rax, qword ptr [152+rcx]
michael@0 12383 mul qword ptr [208+rcx]
michael@0 12384 add r8, rax
michael@0 12385 adc rdi, rdx
michael@0 12386 adc rsi, 0
michael@0 12387 mov rax, qword ptr [160+rcx]
michael@0 12388 mul qword ptr [200+rcx]
michael@0 12389 add r8, rax
michael@0 12390 adc rdi, rdx
michael@0 12391 adc rsi, 0
michael@0 12392 mov rax, qword ptr [168+rcx]
michael@0 12393 mul qword ptr [192+rcx]
michael@0 12394 add r8, rax
michael@0 12395 adc rdi, rdx
michael@0 12396 adc rsi, 0
michael@0 12397 mov rax, qword ptr [176+rcx]
michael@0 12398 mul qword ptr [184+rcx]
michael@0 12399 add r8, rax
michael@0 12400 adc rdi, rdx
michael@0 12401 adc rsi, 0
michael@0 12402 mov rbx, r8
michael@0 12403 mov rax, rdi
michael@0 12404 mov rdx, rsi
michael@0 12405 add r12, rbx
michael@0 12406 adc r9, rax
michael@0 12407 adc r13, rdx
michael@0 12408 add r12, rbx
michael@0 12409 adc r9, rax
michael@0 12410 adc r13, rdx
michael@0 12411 mov qword ptr [-184+rbp], r12
michael@0 12412 mov rdi, rdx
michael@0 12413 mov r8, rax
michael@0 12414 mov rsi, rbx
michael@0 12415 mov r12, r13
michael@0 12416 mov r13, r10
michael@0 12417 mov rax, qword ptr [120+rcx]
michael@0 12418 mul qword ptr [248+rcx]
michael@0 12419 mov rsi, rax
michael@0 12420 mov r8, rdx
michael@0 12421 xor rdi, rdi
michael@0 12422 mov rax, qword ptr [128+rcx]
michael@0 12423 mul qword ptr [240+rcx]
michael@0 12424 add rsi, rax
michael@0 12425 adc r8, rdx
michael@0 12426 adc rdi, 0
michael@0 12427 mov rax, qword ptr [136+rcx]
michael@0 12428 mul qword ptr [232+rcx]
michael@0 12429 add rsi, rax
michael@0 12430 adc r8, rdx
michael@0 12431 adc rdi, 0
michael@0 12432 mov rax, qword ptr [144+rcx]
michael@0 12433 mul qword ptr [224+rcx]
michael@0 12434 add rsi, rax
michael@0 12435 adc r8, rdx
michael@0 12436 adc rdi, 0
michael@0 12437 mov rax, qword ptr [152+rcx]
michael@0 12438 mul qword ptr [216+rcx]
michael@0 12439 add rsi, rax
michael@0 12440 adc r8, rdx
michael@0 12441 adc rdi, 0
michael@0 12442 mov rax, qword ptr [160+rcx]
michael@0 12443 mul qword ptr [208+rcx]
michael@0 12444 add rsi, rax
michael@0 12445 adc r8, rdx
michael@0 12446 adc rdi, 0
michael@0 12447 mov rax, qword ptr [168+rcx]
michael@0 12448 mul qword ptr [200+rcx]
michael@0 12449 add rsi, rax
michael@0 12450 adc r8, rdx
michael@0 12451 adc rdi, 0
michael@0 12452 mov rax, qword ptr [176+rcx]
michael@0 12453 mul qword ptr [192+rcx]
michael@0 12454 add rsi, rax
michael@0 12455 adc r8, rdx
michael@0 12456 adc rdi, 0
michael@0 12457 mov rax, rsi
michael@0 12458 mov rbx, r8
michael@0 12459 mov rdx, rdi
michael@0 12460 add r9, rax
michael@0 12461 adc r12, rbx
michael@0 12462 adc r13, rdx
michael@0 12463 add r9, rax
michael@0 12464 adc r12, rbx
michael@0 12465 adc r13, rdx
michael@0 12466 mov r11, rdx
michael@0 12467 mov r8, rax
michael@0 12468 mov rdi, rbx
michael@0 12469 mov rax, qword ptr [184+rcx]
michael@0 12470 mul rax
michael@0 12471 add r9, rax
michael@0 12472 adc r12, rdx
michael@0 12473 adc r13, 0
michael@0 12474 mov rsi, r11
michael@0 12475 mov qword ptr [-176+rbp], r9
michael@0 12476 mov r9, r13
michael@0 12477 mov rax, qword ptr [128+rcx]
michael@0 12478 mul qword ptr [248+rcx]
michael@0 12479 mov r8, rax
michael@0 12480 mov rdi, rdx
michael@0 12481 xor rsi, rsi
michael@0 12482 mov r13, r10
michael@0 12483 mov rax, qword ptr [136+rcx]
michael@0 12484 mul qword ptr [240+rcx]
michael@0 12485 add r8, rax
michael@0 12486 adc rdi, rdx
michael@0 12487 adc rsi, 0
michael@0 12488 mov rax, qword ptr [144+rcx]
michael@0 12489 mul qword ptr [232+rcx]
michael@0 12490 add r8, rax
michael@0 12491 adc rdi, rdx
michael@0 12492 adc rsi, 0
michael@0 12493 mov rax, qword ptr [152+rcx]
michael@0 12494 mul qword ptr [224+rcx]
michael@0 12495 add r8, rax
michael@0 12496 adc rdi, rdx
michael@0 12497 adc rsi, 0
michael@0 12498 mov rax, qword ptr [160+rcx]
michael@0 12499 mul qword ptr [216+rcx]
michael@0 12500 add r8, rax
michael@0 12501 adc rdi, rdx
michael@0 12502 adc rsi, 0
michael@0 12503 mov rax, qword ptr [168+rcx]
michael@0 12504 mul qword ptr [208+rcx]
michael@0 12505 add r8, rax
michael@0 12506 adc rdi, rdx
michael@0 12507 adc rsi, 0
michael@0 12508 mov rax, qword ptr [176+rcx]
michael@0 12509 mul qword ptr [200+rcx]
michael@0 12510 add r8, rax
michael@0 12511 adc rdi, rdx
michael@0 12512 adc rsi, 0
michael@0 12513 mov rax, qword ptr [184+rcx]
michael@0 12514 mul qword ptr [192+rcx]
michael@0 12515 add r8, rax
michael@0 12516 adc rdi, rdx
michael@0 12517 adc rsi, 0
michael@0 12518 add r12, r8
michael@0 12519 adc r9, rdi
michael@0 12520 adc r13, rsi
michael@0 12521 add r12, r8
michael@0 12522 adc r9, rdi
michael@0 12523 adc r13, rsi
michael@0 12524 mov qword ptr [-168+rbp], r12
michael@0 12525 mov r12, r13
michael@0 12526 mov r13, r10
michael@0 12527 mov rax, qword ptr [136+rcx]
michael@0 12528 mul qword ptr [248+rcx]
michael@0 12529 mov r8, rax
michael@0 12530 mov rdi, rdx
michael@0 12531 xor rsi, rsi
michael@0 12532 mov rax, qword ptr [144+rcx]
michael@0 12533 mul qword ptr [240+rcx]
michael@0 12534 add r8, rax
michael@0 12535 adc rdi, rdx
michael@0 12536 adc rsi, 0
michael@0 12537 mov rax, qword ptr [152+rcx]
michael@0 12538 mul qword ptr [232+rcx]
michael@0 12539 add r8, rax
michael@0 12540 adc rdi, rdx
michael@0 12541 adc rsi, 0
michael@0 12542 mov rax, qword ptr [160+rcx]
michael@0 12543 mul qword ptr [224+rcx]
michael@0 12544 add r8, rax
michael@0 12545 adc rdi, rdx
michael@0 12546 adc rsi, 0
michael@0 12547 mov rax, qword ptr [168+rcx]
michael@0 12548 mul qword ptr [216+rcx]
michael@0 12549 add r8, rax
michael@0 12550 adc rdi, rdx
michael@0 12551 adc rsi, 0
michael@0 12552 mov rax, qword ptr [176+rcx]
michael@0 12553 mul qword ptr [208+rcx]
michael@0 12554 add r8, rax
michael@0 12555 adc rdi, rdx
michael@0 12556 adc rsi, 0
michael@0 12557 mov rax, qword ptr [184+rcx]
michael@0 12558 mul qword ptr [200+rcx]
michael@0 12559 add r8, rax
michael@0 12560 adc rdi, rdx
michael@0 12561 adc rsi, 0
michael@0 12562 mov rbx, rdi
michael@0 12563 mov rax, rsi
michael@0 12564 add r9, r8
michael@0 12565 adc r12, rbx
michael@0 12566 adc r13, rax
michael@0 12567 add r9, r8
michael@0 12568 adc r12, rbx
michael@0 12569 adc r13, rax
michael@0 12570 mov r11, rax
michael@0 12571 mov rdi, rbx
michael@0 12572 mov rbx, r10
michael@0 12573 mov rax, qword ptr [192+rcx]
michael@0 12574 mul rax
michael@0 12575 add r9, rax
michael@0 12576 adc r12, rdx
michael@0 12577 adc r13, 0
michael@0 12578 mov rsi, r11
michael@0 12579 mov qword ptr [-160+rbp], r9
michael@0 12580 mov r9, r13
michael@0 12581 mov rax, qword ptr [144+rcx]
michael@0 12582 mul qword ptr [248+rcx]
michael@0 12583 mov r8, rax
michael@0 12584 mov rdi, rdx
michael@0 12585 xor rsi, rsi
michael@0 12586 mov rax, qword ptr [152+rcx]
michael@0 12587 mul qword ptr [240+rcx]
michael@0 12588 add r8, rax
michael@0 12589 adc rdi, rdx
michael@0 12590 adc rsi, 0
michael@0 12591 mov rax, qword ptr [160+rcx]
michael@0 12592 mul qword ptr [232+rcx]
michael@0 12593 add r8, rax
michael@0 12594 adc rdi, rdx
michael@0 12595 adc rsi, 0
michael@0 12596 mov rax, qword ptr [168+rcx]
michael@0 12597 mul qword ptr [224+rcx]
michael@0 12598 add r8, rax
michael@0 12599 adc rdi, rdx
michael@0 12600 adc rsi, 0
michael@0 12601 mov rax, qword ptr [176+rcx]
michael@0 12602 mul qword ptr [216+rcx]
michael@0 12603 add r8, rax
michael@0 12604 adc rdi, rdx
michael@0 12605 adc rsi, 0
michael@0 12606 mov rax, qword ptr [184+rcx]
michael@0 12607 mul qword ptr [208+rcx]
michael@0 12608 add r8, rax
michael@0 12609 adc rdi, rdx
michael@0 12610 adc rsi, 0
michael@0 12611 mov rax, qword ptr [192+rcx]
michael@0 12612 mul qword ptr [200+rcx]
michael@0 12613 add r8, rax
michael@0 12614 adc rdi, rdx
michael@0 12615 adc rsi, 0
michael@0 12616 add r12, r8
michael@0 12617 adc r9, rdi
michael@0 12618 adc rbx, rsi
michael@0 12619 add r12, r8
michael@0 12620 adc r9, rdi
michael@0 12621 adc rbx, rsi
michael@0 12622 mov qword ptr [-152+rbp], r12
michael@0 12623 mov rax, qword ptr [152+rcx]
michael@0 12624 mul qword ptr [248+rcx]
michael@0 12625 mov r8, rax
michael@0 12626 mov rdi, rdx
michael@0 12627 xor rsi, rsi
michael@0 12628 mov rax, qword ptr [160+rcx]
michael@0 12629 mul qword ptr [240+rcx]
michael@0 12630 add r8, rax
michael@0 12631 adc rdi, rdx
michael@0 12632 adc rsi, 0
michael@0 12633 mov rax, qword ptr [168+rcx]
michael@0 12634 mul qword ptr [232+rcx]
michael@0 12635 add r8, rax
michael@0 12636 adc rdi, rdx
michael@0 12637 adc rsi, 0
michael@0 12638 mov rax, qword ptr [176+rcx]
michael@0 12639 mul qword ptr [224+rcx]
michael@0 12640 add r8, rax
michael@0 12641 adc rdi, rdx
michael@0 12642 adc rsi, 0
michael@0 12643 mov rax, qword ptr [184+rcx]
michael@0 12644 mul qword ptr [216+rcx]
michael@0 12645 add r8, rax
michael@0 12646 adc rdi, rdx
michael@0 12647 adc rsi, 0
michael@0 12648 mov rax, qword ptr [192+rcx]
michael@0 12649 mul qword ptr [208+rcx]
michael@0 12650 add r8, rax
michael@0 12651 adc rdi, rdx
michael@0 12652 adc rsi, 0
michael@0 12653 mov rdx, r10
michael@0 12654 mov r13, rdi
michael@0 12655 mov r12, rsi
michael@0 12656 add r9, r8
michael@0 12657 adc rbx, r13
michael@0 12658 adc rdx, r12
michael@0 12659 add r9, r8
michael@0 12660 adc rbx, r13
michael@0 12661 adc rdx, r12
michael@0 12662 mov rax, rdx
michael@0 12663 mov rdi, r13
michael@0 12664 mov rsi, r12
michael@0 12665 mov r11, rax
michael@0 12666 mov r12, r10
michael@0 12667 mov rax, qword ptr [200+rcx]
michael@0 12668 mul rax
michael@0 12669 add r9, rax
michael@0 12670 adc rbx, rdx
michael@0 12671 adc r11, 0
michael@0 12672 mov qword ptr [-144+rbp], r9
michael@0 12673 mov r9, r11
michael@0 12674 mov rax, qword ptr [160+rcx]
michael@0 12675 mul qword ptr [248+rcx]
michael@0 12676 mov r8, rax
michael@0 12677 mov rdi, rdx
michael@0 12678 xor rsi, rsi
michael@0 12679 mov rax, qword ptr [168+rcx]
michael@0 12680 mul qword ptr [240+rcx]
michael@0 12681 add r8, rax
michael@0 12682 adc rdi, rdx
michael@0 12683 adc rsi, 0
michael@0 12684 mov rax, qword ptr [176+rcx]
michael@0 12685 mul qword ptr [232+rcx]
michael@0 12686 add r8, rax
michael@0 12687 adc rdi, rdx
michael@0 12688 adc rsi, 0
michael@0 12689 mov rax, qword ptr [184+rcx]
michael@0 12690 mul qword ptr [224+rcx]
michael@0 12691 add r8, rax
michael@0 12692 adc rdi, rdx
michael@0 12693 adc rsi, 0
michael@0 12694 mov rax, qword ptr [192+rcx]
michael@0 12695 mul qword ptr [216+rcx]
michael@0 12696 add r8, rax
michael@0 12697 adc rdi, rdx
michael@0 12698 adc rsi, 0
michael@0 12699 mov rax, qword ptr [200+rcx]
michael@0 12700 mul qword ptr [208+rcx]
michael@0 12701 add r8, rax
michael@0 12702 adc rdi, rdx
michael@0 12703 adc rsi, 0
michael@0 12704 add rbx, r8
michael@0 12705 adc r9, rdi
michael@0 12706 adc r12, rsi
michael@0 12707 add rbx, r8
michael@0 12708 adc r9, rdi
michael@0 12709 adc r12, rsi
michael@0 12710 mov qword ptr [-136+rbp], rbx
michael@0 12711 mov r11, r12
michael@0 12712 mov rax, qword ptr [168+rcx]
michael@0 12713 mul qword ptr [248+rcx]
michael@0 12714 mov r8, rax
michael@0 12715 mov rdi, rdx
michael@0 12716 xor rsi, rsi
michael@0 12717 mov rax, qword ptr [176+rcx]
michael@0 12718 mul qword ptr [240+rcx]
michael@0 12719 add r8, rax
michael@0 12720 adc rdi, rdx
michael@0 12721 adc rsi, 0
michael@0 12722 mov rax, qword ptr [184+rcx]
michael@0 12723 mul qword ptr [232+rcx]
michael@0 12724 add r8, rax
michael@0 12725 adc rdi, rdx
michael@0 12726 adc rsi, 0
michael@0 12727 mov rax, qword ptr [192+rcx]
michael@0 12728 mul qword ptr [224+rcx]
michael@0 12729 add r8, rax
michael@0 12730 adc rdi, rdx
michael@0 12731 adc rsi, 0
michael@0 12732 mov rax, qword ptr [200+rcx]
michael@0 12733 mul qword ptr [216+rcx]
michael@0 12734 add r8, rax
michael@0 12735 adc rdi, rdx
michael@0 12736 adc rsi, 0
michael@0 12737 mov rax, r10
michael@0 12738 mov r13, rdi
michael@0 12739 mov r12, rsi
michael@0 12740 add r9, r8
michael@0 12741 adc r11, r13
michael@0 12742 adc rax, r12
michael@0 12743 add r9, r8
michael@0 12744 adc r11, r13
michael@0 12745 adc rax, r12
michael@0 12746 mov rdx, rax
michael@0 12747 mov rbx, r11
michael@0 12748 mov rdi, r13
michael@0 12749 mov r11, rdx
michael@0 12750 mov rsi, r12
michael@0 12751 mov rax, qword ptr [208+rcx]
michael@0 12752 mul rax
michael@0 12753 add r9, rax
michael@0 12754 adc rbx, rdx
michael@0 12755 adc r11, 0
michael@0 12756 mov qword ptr [-128+rbp], r9
michael@0 12757 mov r9, r11
michael@0 12758 mov rax, qword ptr [176+rcx]
michael@0 12759 mul qword ptr [248+rcx]
michael@0 12760 mov r8, rax
michael@0 12761 mov rdi, rdx
michael@0 12762 xor rsi, rsi
michael@0 12763 mov rax, qword ptr [184+rcx]
michael@0 12764 mul qword ptr [240+rcx]
michael@0 12765 add r8, rax
michael@0 12766 adc rdi, rdx
michael@0 12767 adc rsi, 0
michael@0 12768 mov rax, qword ptr [192+rcx]
michael@0 12769 mul qword ptr [232+rcx]
michael@0 12770 add r8, rax
michael@0 12771 adc rdi, rdx
michael@0 12772 adc rsi, 0
michael@0 12773 mov rax, qword ptr [200+rcx]
michael@0 12774 mul qword ptr [224+rcx]
michael@0 12775 add r8, rax
michael@0 12776 adc rdi, rdx
michael@0 12777 adc rsi, 0
michael@0 12778 mov rax, qword ptr [208+rcx]
michael@0 12779 mul qword ptr [216+rcx]
michael@0 12780 add r8, rax
michael@0 12781 adc rdi, rdx
michael@0 12782 adc rsi, 0
michael@0 12783 mov rdx, r10
michael@0 12784 add rbx, r8
michael@0 12785 adc r9, rdi
michael@0 12786 adc rdx, rsi
michael@0 12787 add rbx, r8
michael@0 12788 adc r9, rdi
michael@0 12789 adc rdx, rsi
michael@0 12790 mov qword ptr [-120+rbp], rbx
michael@0 12791 mov r11, rdx
michael@0 12792 mov rbx, r10
michael@0 12793 mov rax, qword ptr [184+rcx]
michael@0 12794 mul qword ptr [248+rcx]
michael@0 12795 mov r8, rax
michael@0 12796 mov rdi, rdx
michael@0 12797 xor rsi, rsi
michael@0 12798 mov rax, qword ptr [192+rcx]
michael@0 12799 mul qword ptr [240+rcx]
michael@0 12800 add r8, rax
michael@0 12801 adc rdi, rdx
michael@0 12802 adc rsi, 0
michael@0 12803 mov rax, qword ptr [200+rcx]
michael@0 12804 mul qword ptr [232+rcx]
michael@0 12805 add r8, rax
michael@0 12806 adc rdi, rdx
michael@0 12807 adc rsi, 0
michael@0 12808 mov rax, qword ptr [208+rcx]
michael@0 12809 mul qword ptr [224+rcx]
michael@0 12810 add r8, rax
michael@0 12811 adc rdi, rdx
michael@0 12812 adc rsi, 0
michael@0 12813 mov r13, rdi
michael@0 12814 mov r12, rsi
michael@0 12815 add r9, r8
michael@0 12816 adc r11, r13
michael@0 12817 adc rbx, r12
michael@0 12818 add r9, r8
michael@0 12819 adc r11, r13
michael@0 12820 adc rbx, r12
michael@0 12821 mov rdx, rbx
michael@0 12822 mov rdi, r13
michael@0 12823 mov rbx, r11
michael@0 12824 mov rsi, r12
michael@0 12825 mov r11, rdx
michael@0 12826 mov r12, r10
michael@0 12827 mov rax, qword ptr [216+rcx]
michael@0 12828 mul rax
michael@0 12829 add r9, rax
michael@0 12830 adc rbx, rdx
michael@0 12831 adc r11, 0
michael@0 12832 mov qword ptr [-112+rbp], r9
michael@0 12833 mov r9, r11
michael@0 12834 mov rax, qword ptr [192+rcx]
michael@0 12835 mul qword ptr [248+rcx]
michael@0 12836 mov r8, rax
michael@0 12837 mov rdi, rdx
michael@0 12838 xor rsi, rsi
michael@0 12839 mov rax, qword ptr [200+rcx]
michael@0 12840 mul qword ptr [240+rcx]
michael@0 12841 add r8, rax
michael@0 12842 adc rdi, rdx
michael@0 12843 adc rsi, 0
michael@0 12844 mov rax, qword ptr [208+rcx]
michael@0 12845 mul qword ptr [232+rcx]
michael@0 12846 add r8, rax
michael@0 12847 adc rdi, rdx
michael@0 12848 adc rsi, 0
michael@0 12849 mov rax, qword ptr [216+rcx]
michael@0 12850 mul qword ptr [224+rcx]
michael@0 12851 add r8, rax
michael@0 12852 adc rdi, rdx
michael@0 12853 adc rsi, 0
michael@0 12854 add rbx, r8
michael@0 12855 adc r9, rdi
michael@0 12856 adc r12, rsi
michael@0 12857 add rbx, r8
michael@0 12858 adc r9, rdi
michael@0 12859 adc r12, rsi
michael@0 12860 mov qword ptr [-104+rbp], rbx
michael@0 12861 mov r11, r12
michael@0 12862 mov rax, qword ptr [200+rcx]
michael@0 12863 mul qword ptr [248+rcx]
michael@0 12864 mov r8, rax
michael@0 12865 mov rdi, rdx
michael@0 12866 xor rsi, rsi
michael@0 12867 mov rax, qword ptr [208+rcx]
michael@0 12868 mul qword ptr [240+rcx]
michael@0 12869 add r8, rax
michael@0 12870 adc rdi, rdx
michael@0 12871 adc rsi, 0
michael@0 12872 mov rax, qword ptr [216+rcx]
michael@0 12873 mul qword ptr [232+rcx]
michael@0 12874 add r8, rax
michael@0 12875 adc rdi, rdx
michael@0 12876 adc rsi, 0
michael@0 12877 mov rax, r10
michael@0 12878 mov r13, rdi
michael@0 12879 mov r12, rsi
michael@0 12880 add r9, r8
michael@0 12881 adc r11, r13
michael@0 12882 adc rax, r12
michael@0 12883 add r9, r8
michael@0 12884 adc r11, r13
michael@0 12885 adc rax, r12
michael@0 12886 mov rdx, rax
michael@0 12887 mov rbx, r11
michael@0 12888 mov rdi, r13
michael@0 12889 mov r11, rdx
michael@0 12890 mov rsi, r12
michael@0 12891 mov r12, r10
michael@0 12892 mov rax, qword ptr [224+rcx]
michael@0 12893 mul rax
michael@0 12894 add r9, rax
michael@0 12895 adc rbx, rdx
michael@0 12896 adc r11, 0
michael@0 12897 mov qword ptr [-96+rbp], r9
michael@0 12898 mov r9, r10
michael@0 12899 mov rax, qword ptr [208+rcx]
michael@0 12900 mul qword ptr [248+rcx]
michael@0 12901 mov r8, rax
michael@0 12902 mov rdi, rdx
michael@0 12903 xor rsi, rsi
michael@0 12904 mov rax, qword ptr [216+rcx]
michael@0 12905 mul qword ptr [240+rcx]
michael@0 12906 add r8, rax
michael@0 12907 adc rdi, rdx
michael@0 12908 adc rsi, 0
michael@0 12909 mov rax, qword ptr [224+rcx]
michael@0 12910 mul qword ptr [232+rcx]
michael@0 12911 add r8, rax
michael@0 12912 adc rdi, rdx
michael@0 12913 adc rsi, 0
michael@0 12914 mov r13, rdi
michael@0 12915 mov rax, rsi
michael@0 12916 add rbx, r8
michael@0 12917 adc r11, r13
michael@0 12918 adc r9, rax
michael@0 12919 add rbx, r8
michael@0 12920 adc r11, r13
michael@0 12921 adc r9, rax
michael@0 12922 mov qword ptr [-88+rbp], rbx
michael@0 12923 mov rsi, r11
michael@0 12924 mov r8, r9
michael@0 12925 mov rax, qword ptr [216+rcx]
michael@0 12926 mul qword ptr [248+rcx]
michael@0 12927 add rsi, rax
michael@0 12928 adc r8, rdx
michael@0 12929 adc r12, 0
michael@0 12930 add rsi, rax
michael@0 12931 adc r8, rdx
michael@0 12932 adc r12, 0
michael@0 12933 mov r11, r12
michael@0 12934 mov rax, qword ptr [224+rcx]
michael@0 12935 mul qword ptr [240+rcx]
michael@0 12936 add rsi, rax
michael@0 12937 adc r8, rdx
michael@0 12938 adc r11, 0
michael@0 12939 add rsi, rax
michael@0 12940 adc r8, rdx
michael@0 12941 adc r11, 0
michael@0 12942 mov r13, r8
michael@0 12943 mov rbx, r11
michael@0 12944 mov rax, qword ptr [232+rcx]
michael@0 12945 mul rax
michael@0 12946 add rsi, rax
michael@0 12947 adc r13, rdx
michael@0 12948 adc rbx, 0
michael@0 12949 mov qword ptr [-80+rbp], rsi
michael@0 12950 mov r12, rbx
michael@0 12951 mov rdi, r13
michael@0 12952 mov r13, r10
michael@0 12953 mov rax, qword ptr [224+rcx]
michael@0 12954 mul qword ptr [248+rcx]
michael@0 12955 add rdi, rax
michael@0 12956 adc r12, rdx
michael@0 12957 adc r13, 0
michael@0 12958 add rdi, rax
michael@0 12959 adc r12, rdx
michael@0 12960 adc r13, 0
michael@0 12961 mov r9, r12
michael@0 12962 mov r12, r13
michael@0 12963 mov rax, qword ptr [232+rcx]
michael@0 12964 mul qword ptr [240+rcx]
michael@0 12965 add rdi, rax
michael@0 12966 adc r9, rdx
michael@0 12967 adc r12, 0
michael@0 12968 add rdi, rax
michael@0 12969 adc r9, rdx
michael@0 12970 adc r12, 0
michael@0 12971 mov qword ptr [-72+rbp], rdi
michael@0 12972 mov r11, r9
michael@0 12973 mov rbx, r12
michael@0 12974 mov r9, r10
michael@0 12975 mov rax, qword ptr [232+rcx]
michael@0 12976 mul qword ptr [248+rcx]
michael@0 12977 add r11, rax
michael@0 12978 adc rbx, rdx
michael@0 12979 adc r9, 0
michael@0 12980 add r11, rax
michael@0 12981 adc rbx, rdx
michael@0 12982 adc r9, 0
michael@0 12983 mov r13, rbx
michael@0 12984 mov rbx, r9
michael@0 12985 mov r9, r10
michael@0 12986 mov rax, qword ptr [240+rcx]
michael@0 12987 mul rax
michael@0 12988 add r11, rax
michael@0 12989 adc r13, rdx
michael@0 12990 adc rbx, 0
michael@0 12991 mov qword ptr [-64+rbp], r11
michael@0 12992 mov rdi, r13
michael@0 12993 mov rsi, rbx
michael@0 12994 mov rax, qword ptr [240+rcx]
michael@0 12995 mul qword ptr [248+rcx]
michael@0 12996 add rdi, rax
michael@0 12997 adc rsi, rdx
michael@0 12998 adc r9, 0
michael@0 12999 add rdi, rax
michael@0 13000 adc rsi, rdx
michael@0 13001 adc r9, 0
michael@0 13002 mov qword ptr [-56+rbp], rdi
michael@0 13003 mov r8, r9
michael@0 13004 mov rax, qword ptr [248+rcx]
michael@0 13005 mul rax
michael@0 13006 add rsi, rax
michael@0 13007 adc r8, rdx
michael@0 13008 adc r10, 0
michael@0 13009 mov qword ptr [-48+rbp], rsi
michael@0 13010 mov qword ptr [-40+rbp], r8
michael@0 13011 mov dword ptr [8+r14], 64
michael@0 13012 mov dword ptr [r14], 0
michael@0 13013 ; mov rdi, qword ptr [16+r14]
michael@0 13014 ; lea rsi, qword ptr [-544+rbp]
michael@0 13015 ; mov edx, 512
michael@0 13016 mov rcx, qword ptr [16+r14]
michael@0 13017 lea rdx, qword ptr [-544+rbp]
michael@0 13018 mov r8d, 512
michael@0 13019 call memcpy
michael@0 13020 mov edx, dword ptr [8+r14]
michael@0 13021 test edx, edx
michael@0 13022 je L304
michael@0 13023 lea ecx, dword ptr [-1+rdx]
michael@0 13024 mov rsi, qword ptr [16+r14]
michael@0 13025 mov r10d, ecx
michael@0 13026 cmp dword ptr [rsi+r10*8], 0
michael@0 13027 jne L302
michael@0 13028 mov edx, ecx
michael@0 13029 ALIGN 16
michael@0 13030 L303:
michael@0 13031 test edx, edx
michael@0 13032 mov ecx, edx
michael@0 13033 je L307
michael@0 13034 dec edx
michael@0 13035 mov eax, edx
michael@0 13036 cmp dword ptr [rsi+rax*8], 0
michael@0 13037 je L303
michael@0 13038 mov dword ptr [8+r14], ecx
michael@0 13039 mov edx, ecx
michael@0 13040 L302:
michael@0 13041 test edx, edx
michael@0 13042 je L304
michael@0 13043 mov eax, dword ptr [r14]
michael@0 13044 jmp L305
michael@0 13045
michael@0 13046 L307:
michael@0 13047 mov dword ptr [8+r14], edx
michael@0 13048 L304:
michael@0 13049 xor eax, eax
michael@0 13050 L305:
michael@0 13051 mov dword ptr [r14], eax
michael@0 13052 add rsp, 512+32 ; +32 for "home" storage
michael@0 13053 pop rbx
michael@0 13054 pop r12
michael@0 13055 pop r13
michael@0 13056 pop r14
michael@0 13057 pop rbp
michael@0 13058
michael@0 13059 pop rsi
michael@0 13060 pop rdi
michael@0 13061
michael@0 13062 ret
michael@0 13063
michael@0 13064 s_mp_sqr_comba_32 ENDP
michael@0 13065
michael@0 13066 END

mercurial