1116680a4aac90f2aa7413d9095a592090648e557Ben MurdochOPTION DOTNAME 25f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles).text$ SEGMENT ALIGN(256) 'CODE' 3116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 4116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 5116680a4aac90f2aa7413d9095a592090648e557Ben MurdochALIGN 16 6116680a4aac90f2aa7413d9095a592090648e557Ben MurdochMULADD_128x512 PROC PRIVATE 7116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[rsi] 8116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 9116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r8,rax 10116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 11116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[rcx],r8 12116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 13116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 14116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[8+rsi] 15116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 16116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r9,rax 17116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 18116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r9,rbx 19116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 20116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 21116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 22116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[16+rsi] 23116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 24116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r10,rax 25116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 26116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r10,rbx 27116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 28116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 29116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 30116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[24+rsi] 31116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 32116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,rax 33116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 34116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,rbx 35116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 36116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 37116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 38116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[32+rsi] 39116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 40116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rax 41116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 42116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rbx 43116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 44116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 45116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 46116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[40+rsi] 47116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 48116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r13,rax 49116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 50116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r13,rbx 51116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 52116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 53116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 54116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[48+rsi] 55116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 56116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,rax 57116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 58116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,rbx 59116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 60116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 61116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 62116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[56+rsi] 63116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 64116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,rax 65116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 66116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,rbx 67116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 68116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r8,rdx 69116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbp,QWORD PTR[8+rdi] 70116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[rsi] 71116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 72116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r9,rax 73116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 74116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[8+rcx],r9 75116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 76116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 77116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[8+rsi] 78116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 79116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r10,rax 80116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 81116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r10,rbx 82116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 83116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 84116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 85116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[16+rsi] 86116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 87116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,rax 88116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 89116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,rbx 90116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 91116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 92116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 93116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[24+rsi] 94116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 95116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rax 96116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 97116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rbx 98116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 99116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 100116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 101116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[32+rsi] 102116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 103116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r13,rax 104116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 105116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r13,rbx 106116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 107116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 108116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 109116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[40+rsi] 110116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 111116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,rax 112116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 113116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,rbx 114116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 115116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 116116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 117116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[48+rsi] 118116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 119116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,rax 120116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 121116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,rbx 122116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 123116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 124116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 125116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[56+rsi] 126116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 127116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r8,rax 128116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 129116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r8,rbx 130116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 131116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r9,rdx 132116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch DB 0F3h,0C3h ;repret 133116680a4aac90f2aa7413d9095a592090648e557Ben MurdochMULADD_128x512 ENDP 134116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 135116680a4aac90f2aa7413d9095a592090648e557Ben MurdochALIGN 16 136116680a4aac90f2aa7413d9095a592090648e557Ben Murdochmont_reduce PROC PRIVATE 137116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch lea rdi,QWORD PTR[192+rsp] 138116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rsi,QWORD PTR[32+rsp] 139116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add rsi,576 140116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch lea rcx,QWORD PTR[520+rsp] 141116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 142116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbp,QWORD PTR[96+rcx] 143116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[rsi] 144116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 145116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r8,QWORD PTR[rcx] 146116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r8,rax 147116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 148116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[rdi],r8 149116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 150116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 151116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[8+rsi] 152116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 153116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r9,QWORD PTR[8+rcx] 154116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r9,rax 155116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 156116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r9,rbx 157116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 158116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 159116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 160116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[16+rsi] 161116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 162116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r10,QWORD PTR[16+rcx] 163116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r10,rax 164116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 165116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r10,rbx 166116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 167116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 168116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 169116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[24+rsi] 170116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 171116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r11,QWORD PTR[24+rcx] 172116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,rax 173116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 174116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,rbx 175116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 176116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 177116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 178116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[32+rsi] 179116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 180116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r12,QWORD PTR[32+rcx] 181116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rax 182116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 183116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rbx 184116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 185116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 186116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 187116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[40+rsi] 188116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 189116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r13,QWORD PTR[40+rcx] 190116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r13,rax 191116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 192116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r13,rbx 193116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 194116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 195116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 196116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[48+rsi] 197116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 198116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r14,QWORD PTR[48+rcx] 199116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,rax 200116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 201116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,rbx 202116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 203116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 204116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 205116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[56+rsi] 206116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 207116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r15,QWORD PTR[56+rcx] 208116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,rax 209116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 210116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,rbx 211116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 212116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r8,rdx 213116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbp,QWORD PTR[104+rcx] 214116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[rsi] 215116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 216116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r9,rax 217116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 218116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[8+rdi],r9 219116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 220116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 221116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[8+rsi] 222116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 223116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r10,rax 224116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 225116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r10,rbx 226116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 227116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 228116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 229116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[16+rsi] 230116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 231116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,rax 232116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 233116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,rbx 234116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 235116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 236116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 237116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[24+rsi] 238116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 239116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rax 240116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 241116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rbx 242116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 243116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 244116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 245116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[32+rsi] 246116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 247116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r13,rax 248116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 249116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r13,rbx 250116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 251116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 252116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 253116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[40+rsi] 254116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 255116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,rax 256116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 257116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,rbx 258116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 259116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 260116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 261116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[48+rsi] 262116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 263116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,rax 264116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 265116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,rbx 266116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 267116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 268116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 269116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[56+rsi] 270116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 271116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r8,rax 272116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 273116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r8,rbx 274116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 275116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r9,rdx 276116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbp,QWORD PTR[112+rcx] 277116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[rsi] 278116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 279116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r10,rax 280116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 281116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[16+rdi],r10 282116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 283116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 284116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[8+rsi] 285116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 286116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,rax 287116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 288116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,rbx 289116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 290116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 291116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 292116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[16+rsi] 293116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 294116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rax 295116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 296116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rbx 297116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 298116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 299116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 300116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[24+rsi] 301116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 302116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r13,rax 303116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 304116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r13,rbx 305116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 306116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 307116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 308116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[32+rsi] 309116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 310116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,rax 311116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 312116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,rbx 313116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 314116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 315116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 316116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[40+rsi] 317116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 318116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,rax 319116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 320116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,rbx 321116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 322116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 323116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 324116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[48+rsi] 325116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 326116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r8,rax 327116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 328116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r8,rbx 329116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 330116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 331116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 332116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[56+rsi] 333116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 334116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r9,rax 335116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 336116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r9,rbx 337116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 338116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r10,rdx 339116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbp,QWORD PTR[120+rcx] 340116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[rsi] 341116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 342116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,rax 343116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 344116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[24+rdi],r11 345116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 346116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 347116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[8+rsi] 348116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 349116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rax 350116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 351116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rbx 352116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 353116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 354116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 355116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[16+rsi] 356116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 357116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r13,rax 358116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 359116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r13,rbx 360116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 361116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 362116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 363116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[24+rsi] 364116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 365116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,rax 366116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 367116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,rbx 368116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 369116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 370116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 371116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[32+rsi] 372116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 373116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,rax 374116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 375116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,rbx 376116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 377116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 378116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 379116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[40+rsi] 380116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 381116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r8,rax 382116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 383116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r8,rbx 384116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 385116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 386116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 387116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[48+rsi] 388116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 389116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r9,rax 390116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 391116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r9,rbx 392116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 393116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 394116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 395116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[56+rsi] 396116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 397116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r10,rax 398116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 399116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r10,rbx 400116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 401116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r11,rdx 402116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch xor rax,rax 403116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 404116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r8,QWORD PTR[64+rcx] 405116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc r9,QWORD PTR[72+rcx] 406116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc r10,QWORD PTR[80+rcx] 407116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc r11,QWORD PTR[88+rcx] 408116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rax,0 409116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 410116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 411116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 412116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 413116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[64+rdi],r8 414116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[72+rdi],r9 415116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbp,r10 416116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[88+rdi],r11 417116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 418116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[384+rsp],rax 419116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 420116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r8,QWORD PTR[rdi] 421116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r9,QWORD PTR[8+rdi] 422116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r10,QWORD PTR[16+rdi] 423116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r11,QWORD PTR[24+rdi] 424116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 425116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 426116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 427116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 428116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 429116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 430116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 431116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 432116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add rdi,8*10 433116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 434116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add rsi,64 435116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch lea rcx,QWORD PTR[296+rsp] 436116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 437116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch call MULADD_128x512 438116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 439116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[384+rsp] 440116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 441116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 442116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r8,QWORD PTR[((-16))+rdi] 443116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc r9,QWORD PTR[((-8))+rdi] 444116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[64+rcx],r8 445116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[72+rcx],r9 446116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 447116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rax,rax 448116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[384+rsp],rax 449116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 450116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch lea rdi,QWORD PTR[192+rsp] 451116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add rsi,64 452116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 453116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 454116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 455116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 456116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 457116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r8,QWORD PTR[rsi] 458116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,QWORD PTR[8+rsi] 459116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 460116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[rcx] 461116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul r8 462116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbp,rax 463116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r9,rdx 464116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 465116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[8+rcx] 466116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul r8 467116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r9,rax 468116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 469116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[rcx] 470116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbx 471116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r9,rax 472116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 473116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[8+rdi],r9 474116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 475116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 476116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch sub rsi,192 477116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 478116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r8,QWORD PTR[rcx] 479116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r9,QWORD PTR[8+rcx] 480116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 481116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch call MULADD_128x512 482116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 483116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 484116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 485116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 486116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[rsi] 487116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,QWORD PTR[8+rsi] 488116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rdi,QWORD PTR[16+rsi] 489116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rdx,QWORD PTR[24+rsi] 490116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 491116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 492116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbp,QWORD PTR[384+rsp] 493116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 494116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r8,QWORD PTR[64+rcx] 495116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc r9,QWORD PTR[72+rcx] 496116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 497116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 498116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rbp,rbp 499116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 500116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 501116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 502116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch shl rbp,3 503116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rcx,QWORD PTR[32+rsp] 504116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add rbp,rcx 505116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 506116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 507116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch xor rsi,rsi 508116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 509116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r10,QWORD PTR[rbp] 510116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc r11,QWORD PTR[64+rbp] 511116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc r12,QWORD PTR[128+rbp] 512116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc r13,QWORD PTR[192+rbp] 513116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc r14,QWORD PTR[256+rbp] 514116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc r15,QWORD PTR[320+rbp] 515116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc r8,QWORD PTR[384+rbp] 516116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc r9,QWORD PTR[448+rbp] 517116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 518116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 519116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 520116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch sbb rsi,0 521116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 522116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 523116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch and rax,rsi 524116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch and rbx,rsi 525116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch and rdi,rsi 526116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch and rdx,rsi 527116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 528116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbp,1 529116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch sub r10,rax 530116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch sbb r11,rbx 531116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch sbb r12,rdi 532116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch sbb r13,rdx 533116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 534116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 535116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 536116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 537116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch sbb rbp,0 538116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 539116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 540116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 541116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add rcx,512 542116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[32+rcx] 543116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,QWORD PTR[40+rcx] 544116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rdi,QWORD PTR[48+rcx] 545116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rdx,QWORD PTR[56+rcx] 546116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 547116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 548116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 549116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch and rax,rsi 550116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch and rbx,rsi 551116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch and rdi,rsi 552116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch and rdx,rsi 553116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 554116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 555116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 556116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch sub rbp,1 557116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 558116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch sbb r14,rax 559116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch sbb r15,rbx 560116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch sbb r8,rdi 561116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch sbb r9,rdx 562116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 563116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 564116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 565116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rsi,QWORD PTR[144+rsp] 566116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[rsi],r10 567116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[8+rsi],r11 568116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[16+rsi],r12 569116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[24+rsi],r13 570116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[32+rsi],r14 571116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[40+rsi],r15 572116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[48+rsi],r8 573116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[56+rsi],r9 574116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 575116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch DB 0F3h,0C3h ;repret 576116680a4aac90f2aa7413d9095a592090648e557Ben Murdochmont_reduce ENDP 577116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 578116680a4aac90f2aa7413d9095a592090648e557Ben MurdochALIGN 16 579116680a4aac90f2aa7413d9095a592090648e557Ben Murdochmont_mul_a3b PROC PRIVATE 580116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 581116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 582116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 583116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 584116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbp,QWORD PTR[rdi] 585116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 586116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,r10 587116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 588116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[520+rsp],rax 589116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r10,rdx 590116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,r11 591116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 592116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r10,rax 593116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 594116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r11,rdx 595116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,r12 596116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 597116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,rax 598116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 599116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r12,rdx 600116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,r13 601116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 602116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rax 603116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 604116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r13,rdx 605116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,r14 606116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 607116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r13,rax 608116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 609116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r14,rdx 610116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,r15 611116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 612116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,rax 613116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 614116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r15,rdx 615116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,r8 616116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 617116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,rax 618116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 619116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r8,rdx 620116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,r9 621116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 622116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r8,rax 623116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 624116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r9,rdx 625116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbp,QWORD PTR[8+rdi] 626116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[rsi] 627116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 628116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r10,rax 629116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 630116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[528+rsp],r10 631116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 632116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 633116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[8+rsi] 634116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 635116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,rax 636116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 637116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,rbx 638116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 639116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 640116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 641116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[16+rsi] 642116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 643116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rax 644116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 645116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rbx 646116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 647116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 648116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 649116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[24+rsi] 650116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 651116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r13,rax 652116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 653116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r13,rbx 654116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 655116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 656116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 657116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[32+rsi] 658116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 659116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,rax 660116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 661116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,rbx 662116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 663116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 664116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 665116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[40+rsi] 666116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 667116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,rax 668116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 669116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,rbx 670116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 671116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 672116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 673116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[48+rsi] 674116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 675116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r8,rax 676116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 677116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r8,rbx 678116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 679116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 680116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 681116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[56+rsi] 682116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 683116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r9,rax 684116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 685116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r9,rbx 686116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 687116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r10,rdx 688116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbp,QWORD PTR[16+rdi] 689116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[rsi] 690116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 691116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,rax 692116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 693116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[536+rsp],r11 694116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 695116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 696116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[8+rsi] 697116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 698116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rax 699116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 700116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rbx 701116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 702116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 703116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 704116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[16+rsi] 705116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 706116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r13,rax 707116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 708116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r13,rbx 709116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 710116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 711116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 712116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[24+rsi] 713116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 714116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,rax 715116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 716116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,rbx 717116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 718116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 719116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 720116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[32+rsi] 721116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 722116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,rax 723116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 724116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,rbx 725116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 726116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 727116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 728116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[40+rsi] 729116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 730116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r8,rax 731116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 732116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r8,rbx 733116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 734116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 735116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 736116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[48+rsi] 737116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 738116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r9,rax 739116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 740116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r9,rbx 741116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 742116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 743116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 744116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[56+rsi] 745116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 746116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r10,rax 747116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 748116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r10,rbx 749116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 750116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r11,rdx 751116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbp,QWORD PTR[24+rdi] 752116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[rsi] 753116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 754116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rax 755116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 756116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[544+rsp],r12 757116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 758116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 759116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[8+rsi] 760116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 761116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r13,rax 762116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 763116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r13,rbx 764116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 765116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 766116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 767116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[16+rsi] 768116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 769116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,rax 770116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 771116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,rbx 772116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 773116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 774116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 775116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[24+rsi] 776116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 777116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,rax 778116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 779116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,rbx 780116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 781116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 782116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 783116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[32+rsi] 784116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 785116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r8,rax 786116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 787116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r8,rbx 788116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 789116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 790116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 791116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[40+rsi] 792116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 793116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r9,rax 794116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 795116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r9,rbx 796116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 797116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 798116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 799116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[48+rsi] 800116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 801116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r10,rax 802116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 803116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r10,rbx 804116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 805116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 806116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 807116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[56+rsi] 808116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 809116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,rax 810116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 811116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,rbx 812116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 813116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r12,rdx 814116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbp,QWORD PTR[32+rdi] 815116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[rsi] 816116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 817116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r13,rax 818116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 819116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[552+rsp],r13 820116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 821116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 822116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[8+rsi] 823116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 824116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,rax 825116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 826116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,rbx 827116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 828116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 829116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 830116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[16+rsi] 831116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 832116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,rax 833116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 834116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,rbx 835116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 836116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 837116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 838116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[24+rsi] 839116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 840116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r8,rax 841116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 842116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r8,rbx 843116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 844116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 845116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 846116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[32+rsi] 847116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 848116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r9,rax 849116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 850116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r9,rbx 851116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 852116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 853116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 854116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[40+rsi] 855116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 856116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r10,rax 857116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 858116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r10,rbx 859116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 860116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 861116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 862116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[48+rsi] 863116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 864116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,rax 865116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 866116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,rbx 867116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 868116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 869116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 870116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[56+rsi] 871116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 872116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rax 873116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 874116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rbx 875116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 876116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r13,rdx 877116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbp,QWORD PTR[40+rdi] 878116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[rsi] 879116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 880116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,rax 881116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 882116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[560+rsp],r14 883116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 884116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 885116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[8+rsi] 886116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 887116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,rax 888116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 889116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,rbx 890116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 891116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 892116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 893116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[16+rsi] 894116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 895116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r8,rax 896116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 897116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r8,rbx 898116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 899116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 900116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 901116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[24+rsi] 902116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 903116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r9,rax 904116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 905116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r9,rbx 906116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 907116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 908116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 909116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[32+rsi] 910116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 911116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r10,rax 912116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 913116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r10,rbx 914116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 915116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 916116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 917116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[40+rsi] 918116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 919116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,rax 920116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 921116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,rbx 922116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 923116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 924116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 925116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[48+rsi] 926116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 927116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rax 928116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 929116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rbx 930116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 931116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 932116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 933116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[56+rsi] 934116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 935116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r13,rax 936116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 937116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r13,rbx 938116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 939116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r14,rdx 940116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbp,QWORD PTR[48+rdi] 941116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[rsi] 942116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 943116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,rax 944116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 945116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[568+rsp],r15 946116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 947116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 948116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[8+rsi] 949116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 950116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r8,rax 951116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 952116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r8,rbx 953116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 954116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 955116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 956116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[16+rsi] 957116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 958116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r9,rax 959116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 960116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r9,rbx 961116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 962116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 963116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 964116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[24+rsi] 965116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 966116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r10,rax 967116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 968116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r10,rbx 969116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 970116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 971116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 972116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[32+rsi] 973116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 974116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,rax 975116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 976116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,rbx 977116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 978116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 979116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 980116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[40+rsi] 981116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 982116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rax 983116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 984116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rbx 985116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 986116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 987116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 988116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[48+rsi] 989116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 990116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r13,rax 991116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 992116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r13,rbx 993116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 994116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 995116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 996116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[56+rsi] 997116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 998116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,rax 999116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1000116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,rbx 1001116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1002116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r15,rdx 1003116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbp,QWORD PTR[56+rdi] 1004116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[rsi] 1005116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 1006116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r8,rax 1007116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1008116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[576+rsp],r8 1009116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 1010116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1011116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[8+rsi] 1012116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 1013116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r9,rax 1014116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1015116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r9,rbx 1016116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1017116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 1018116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1019116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[16+rsi] 1020116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 1021116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r10,rax 1022116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1023116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r10,rbx 1024116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1025116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 1026116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1027116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[24+rsi] 1028116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 1029116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,rax 1030116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1031116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,rbx 1032116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1033116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 1034116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1035116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[32+rsi] 1036116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 1037116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rax 1038116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1039116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rbx 1040116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1041116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 1042116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1043116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[40+rsi] 1044116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 1045116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r13,rax 1046116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1047116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r13,rbx 1048116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1049116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 1050116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1051116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[48+rsi] 1052116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 1053116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,rax 1054116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1055116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,rbx 1056116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1057116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 1058116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1059116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[56+rsi] 1060116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbp 1061116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,rax 1062116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1063116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,rbx 1064116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1065116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r8,rdx 1066116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[584+rsp],r9 1067116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[592+rsp],r10 1068116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[600+rsp],r11 1069116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[608+rsp],r12 1070116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[616+rsp],r13 1071116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[624+rsp],r14 1072116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[632+rsp],r15 1073116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[640+rsp],r8 1074116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1075116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1076116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1077116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1078116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1079116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch jmp mont_reduce 1080116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1081116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1082116680a4aac90f2aa7413d9095a592090648e557Ben Murdochmont_mul_a3b ENDP 1083116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1084116680a4aac90f2aa7413d9095a592090648e557Ben MurdochALIGN 16 1085116680a4aac90f2aa7413d9095a592090648e557Ben Murdochsqr_reduce PROC PRIVATE 1086116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rcx,QWORD PTR[16+rsp] 1087116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1088116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1089116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1090116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,r10 1091116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1092116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,r11 1093116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbx 1094116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[528+rsp],rax 1095116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r10,rdx 1096116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,r12 1097116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbx 1098116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r10,rax 1099116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1100116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r11,rdx 1101116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,r13 1102116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbx 1103116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,rax 1104116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1105116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r12,rdx 1106116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,r14 1107116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbx 1108116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rax 1109116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1110116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r13,rdx 1111116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,r15 1112116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbx 1113116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r13,rax 1114116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1115116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r14,rdx 1116116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,r8 1117116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbx 1118116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,rax 1119116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1120116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r15,rdx 1121116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,r9 1122116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbx 1123116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,rax 1124116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1125116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rsi,rdx 1126116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1127116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[536+rsp],r10 1128116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1129116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1130116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1131116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1132116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1133116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,QWORD PTR[8+rcx] 1134116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1135116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[16+rcx] 1136116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbx 1137116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,rax 1138116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1139116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[544+rsp],r11 1140116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1141116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r10,rdx 1142116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[24+rcx] 1143116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbx 1144116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rax 1145116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1146116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,r10 1147116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1148116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[552+rsp],r12 1149116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1150116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r10,rdx 1151116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[32+rcx] 1152116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbx 1153116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r13,rax 1154116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1155116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r13,r10 1156116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1157116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1158116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r10,rdx 1159116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[40+rcx] 1160116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbx 1161116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,rax 1162116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1163116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,r10 1164116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1165116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1166116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r10,rdx 1167116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,r8 1168116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbx 1169116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,rax 1170116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1171116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,r10 1172116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1173116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1174116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r10,rdx 1175116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,r9 1176116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbx 1177116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add rsi,rax 1178116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1179116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add rsi,r10 1180116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1181116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1182116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r11,rdx 1183116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1184116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1185116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1186116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1187116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,QWORD PTR[16+rcx] 1188116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1189116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[24+rcx] 1190116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbx 1191116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r13,rax 1192116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1193116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[560+rsp],r13 1194116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1195116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r10,rdx 1196116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[32+rcx] 1197116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbx 1198116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,rax 1199116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1200116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,r10 1201116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1202116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[568+rsp],r14 1203116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1204116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r10,rdx 1205116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[40+rcx] 1206116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbx 1207116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,rax 1208116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1209116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,r10 1210116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1211116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1212116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r10,rdx 1213116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,r8 1214116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbx 1215116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add rsi,rax 1216116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1217116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add rsi,r10 1218116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1219116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1220116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r10,rdx 1221116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,r9 1222116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbx 1223116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,rax 1224116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1225116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,r10 1226116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1227116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1228116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r12,rdx 1229116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1230116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1231116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1232116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1233116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1234116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,QWORD PTR[24+rcx] 1235116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1236116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[32+rcx] 1237116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbx 1238116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,rax 1239116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1240116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[576+rsp],r15 1241116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1242116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r10,rdx 1243116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[40+rcx] 1244116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbx 1245116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add rsi,rax 1246116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1247116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add rsi,r10 1248116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1249116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[584+rsp],rsi 1250116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1251116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r10,rdx 1252116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,r8 1253116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbx 1254116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,rax 1255116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1256116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,r10 1257116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1258116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1259116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r10,rdx 1260116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,r9 1261116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbx 1262116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rax 1263116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1264116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,r10 1265116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1266116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1267116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r15,rdx 1268116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1269116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1270116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1271116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1272116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,QWORD PTR[32+rcx] 1273116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1274116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[40+rcx] 1275116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbx 1276116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,rax 1277116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1278116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[592+rsp],r11 1279116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1280116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r10,rdx 1281116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,r8 1282116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbx 1283116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rax 1284116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1285116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,r10 1286116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1287116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[600+rsp],r12 1288116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1289116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r10,rdx 1290116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,r9 1291116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbx 1292116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,rax 1293116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1294116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,r10 1295116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1296116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1297116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r11,rdx 1298116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1299116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1300116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1301116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1302116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,QWORD PTR[40+rcx] 1303116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1304116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,r8 1305116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbx 1306116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r15,rax 1307116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1308116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[608+rsp],r15 1309116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1310116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r10,rdx 1311116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,r9 1312116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbx 1313116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,rax 1314116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1315116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r11,r10 1316116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1317116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[616+rsp],r11 1318116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1319116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r12,rdx 1320116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1321116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1322116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1323116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1324116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,r8 1325116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1326116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,r9 1327116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rbx 1328116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rax 1329116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1330116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[624+rsp],r12 1331116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1332116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[632+rsp],rdx 1333116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1334116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1335116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r10,QWORD PTR[528+rsp] 1336116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r11,QWORD PTR[536+rsp] 1337116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r12,QWORD PTR[544+rsp] 1338116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r13,QWORD PTR[552+rsp] 1339116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r14,QWORD PTR[560+rsp] 1340116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r15,QWORD PTR[568+rsp] 1341116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1342116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[24+rcx] 1343116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rax 1344116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rdi,rax 1345116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r8,rdx 1346116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1347116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r10,r10 1348116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc r11,r11 1349116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc r12,r12 1350116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc r13,r13 1351116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc r14,r14 1352116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc r15,r15 1353116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc r8,0 1354116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1355116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[rcx] 1356116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rax 1357116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[520+rsp],rax 1358116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 1359116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1360116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[8+rcx] 1361116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rax 1362116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1363116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r10,rbx 1364116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc r11,rax 1365116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1366116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1367116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 1368116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[528+rsp],r10 1369116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[536+rsp],r11 1370116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1371116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[16+rcx] 1372116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rax 1373116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1374116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rbx 1375116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc r13,rax 1376116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1377116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1378116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 1379116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1380116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[544+rsp],r12 1381116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[552+rsp],r13 1382116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1383116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch xor rbp,rbp 1384116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,rbx 1385116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc r15,rdi 1386116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rbp,0 1387116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1388116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[560+rsp],r14 1389116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[568+rsp],r15 1390116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1391116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1392116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1393116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1394116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r10,QWORD PTR[576+rsp] 1395116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r11,QWORD PTR[584+rsp] 1396116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r12,QWORD PTR[592+rsp] 1397116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r13,QWORD PTR[600+rsp] 1398116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r14,QWORD PTR[608+rsp] 1399116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r15,QWORD PTR[616+rsp] 1400116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rdi,QWORD PTR[624+rsp] 1401116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rsi,QWORD PTR[632+rsp] 1402116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1403116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,r9 1404116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rax 1405116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r9,rax 1406116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,rdx 1407116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1408116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r10,r10 1409116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc r11,r11 1410116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc r12,r12 1411116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc r13,r13 1412116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc r14,r14 1413116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc r15,r15 1414116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdi,rdi 1415116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rsi,rsi 1416116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rbx,0 1417116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1418116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r10,rbp 1419116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1420116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[32+rcx] 1421116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rax 1422116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1423116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r10,r8 1424116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc r11,rax 1425116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1426116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1427116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbp,rdx 1428116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1429116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[576+rsp],r10 1430116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[584+rsp],r11 1431116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1432116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[40+rcx] 1433116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rax 1434116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1435116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r12,rbp 1436116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc r13,rax 1437116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1438116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1439116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbp,rdx 1440116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1441116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[592+rsp],r12 1442116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[600+rsp],r13 1443116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1444116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[48+rcx] 1445116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mul rax 1446116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1447116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add r14,rbp 1448116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc r15,rax 1449116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rdx,0 1450116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1451116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[608+rsp],r14 1452116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[616+rsp],r15 1453116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1454116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add rdi,rdx 1455116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rsi,r9 1456116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch adc rbx,0 1457116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1458116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[624+rsp],rdi 1459116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[632+rsp],rsi 1460116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[640+rsp],rbx 1461116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1462116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch jmp mont_reduce 1463116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1464116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1465116680a4aac90f2aa7413d9095a592090648e557Ben Murdochsqr_reduce ENDP 1466116680a4aac90f2aa7413d9095a592090648e557Ben MurdochPUBLIC mod_exp_512 1467116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1468116680a4aac90f2aa7413d9095a592090648e557Ben Murdochmod_exp_512 PROC PUBLIC 1469116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[8+rsp],rdi ;WIN64 prologue 1470116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[16+rsp],rsi 1471116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,rsp 1472116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch$L$SEH_begin_mod_exp_512:: 1473116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rdi,rcx 1474116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rsi,rdx 1475116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rdx,r8 1476116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rcx,r9 1477116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1478116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1479116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch push rbp 1480116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch push rbx 1481116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch push r12 1482116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch push r13 1483116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch push r14 1484116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch push r15 1485116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1486116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1487116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r8,rsp 1488116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch sub rsp,2688 1489116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch and rsp,-64 1490116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1491116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1492116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[rsp],r8 1493116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[8+rsp],rdi 1494116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[16+rsp],rsi 1495116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[24+rsp],rcx 1496116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch$L$body:: 1497116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1498116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1499116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1500116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch pxor xmm4,xmm4 1501116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movdqu xmm0,XMMWORD PTR[rsi] 1502116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movdqu xmm1,XMMWORD PTR[16+rsi] 1503116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movdqu xmm2,XMMWORD PTR[32+rsi] 1504116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movdqu xmm3,XMMWORD PTR[48+rsi] 1505116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movdqa XMMWORD PTR[512+rsp],xmm4 1506116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movdqa XMMWORD PTR[528+rsp],xmm4 1507116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movdqa XMMWORD PTR[608+rsp],xmm4 1508116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movdqa XMMWORD PTR[624+rsp],xmm4 1509116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movdqa XMMWORD PTR[544+rsp],xmm0 1510116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movdqa XMMWORD PTR[560+rsp],xmm1 1511116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movdqa XMMWORD PTR[576+rsp],xmm2 1512116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movdqa XMMWORD PTR[592+rsp],xmm3 1513116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1514116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1515116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movdqu xmm0,XMMWORD PTR[rdx] 1516116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movdqu xmm1,XMMWORD PTR[16+rdx] 1517116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movdqu xmm2,XMMWORD PTR[32+rdx] 1518116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movdqu xmm3,XMMWORD PTR[48+rdx] 1519116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1520116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch lea rbx,QWORD PTR[384+rsp] 1521116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[136+rsp],rbx 1522116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch call mont_reduce 1523116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1524116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1525116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch lea rcx,QWORD PTR[448+rsp] 1526116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch xor rax,rax 1527116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[rcx],rax 1528116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[8+rcx],rax 1529116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[24+rcx],rax 1530116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[32+rcx],rax 1531116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[40+rcx],rax 1532116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[48+rcx],rax 1533116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[56+rcx],rax 1534116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[128+rsp],rax 1535116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[16+rcx],1 1536116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1537116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch lea rbp,QWORD PTR[640+rsp] 1538116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rsi,rcx 1539116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rdi,rbp 1540116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,8 1541116680a4aac90f2aa7413d9095a592090648e557Ben Murdochloop_0:: 1542116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,QWORD PTR[rcx] 1543116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov WORD PTR[rdi],bx 1544116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch shr rbx,16 1545116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov WORD PTR[64+rdi],bx 1546116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch shr rbx,16 1547116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov WORD PTR[128+rdi],bx 1548116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch shr rbx,16 1549116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov WORD PTR[192+rdi],bx 1550116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch lea rcx,QWORD PTR[8+rcx] 1551116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch lea rdi,QWORD PTR[256+rdi] 1552116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch dec rax 1553116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch jnz loop_0 1554116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,31 1555116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[32+rsp],rax 1556116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[40+rsp],rbp 1557116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1558116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[136+rsp],rsi 1559116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r10,QWORD PTR[rsi] 1560116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r11,QWORD PTR[8+rsi] 1561116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r12,QWORD PTR[16+rsi] 1562116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r13,QWORD PTR[24+rsi] 1563116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r14,QWORD PTR[32+rsi] 1564116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r15,QWORD PTR[40+rsi] 1565116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r8,QWORD PTR[48+rsi] 1566116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r9,QWORD PTR[56+rsi] 1567116680a4aac90f2aa7413d9095a592090648e557Ben Murdochinit_loop:: 1568116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch lea rdi,QWORD PTR[384+rsp] 1569116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch call mont_mul_a3b 1570116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch lea rsi,QWORD PTR[448+rsp] 1571116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbp,QWORD PTR[40+rsp] 1572116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add rbp,2 1573116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[40+rsp],rbp 1574116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rcx,rsi 1575116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,8 1576116680a4aac90f2aa7413d9095a592090648e557Ben Murdochloop_1:: 1577116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,QWORD PTR[rcx] 1578116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov WORD PTR[rbp],bx 1579116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch shr rbx,16 1580116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov WORD PTR[64+rbp],bx 1581116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch shr rbx,16 1582116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov WORD PTR[128+rbp],bx 1583116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch shr rbx,16 1584116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov WORD PTR[192+rbp],bx 1585116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch lea rcx,QWORD PTR[8+rcx] 1586116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch lea rbp,QWORD PTR[256+rbp] 1587116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch dec rax 1588116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch jnz loop_1 1589116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[32+rsp] 1590116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch sub rax,1 1591116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[32+rsp],rax 1592116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch jne init_loop 1593116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1594116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1595116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1596116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movdqa XMMWORD PTR[64+rsp],xmm0 1597116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movdqa XMMWORD PTR[80+rsp],xmm1 1598116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movdqa XMMWORD PTR[96+rsp],xmm2 1599116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movdqa XMMWORD PTR[112+rsp],xmm3 1600116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1601116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1602116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1603116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1604116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1605116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov eax,DWORD PTR[126+rsp] 1606116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rdx,rax 1607116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch shr rax,11 1608116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch and edx,007FFh 1609116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov DWORD PTR[126+rsp],edx 1610116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch lea rsi,QWORD PTR[640+rax*2+rsp] 1611116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rdx,QWORD PTR[8+rsp] 1612116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbp,4 1613116680a4aac90f2aa7413d9095a592090648e557Ben Murdochloop_2:: 1614116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movzx rbx,WORD PTR[192+rsi] 1615116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movzx rax,WORD PTR[448+rsi] 1616116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch shl rbx,16 1617116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch shl rax,16 1618116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov bx,WORD PTR[128+rsi] 1619116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov ax,WORD PTR[384+rsi] 1620116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch shl rbx,16 1621116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch shl rax,16 1622116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov bx,WORD PTR[64+rsi] 1623116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov ax,WORD PTR[320+rsi] 1624116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch shl rbx,16 1625116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch shl rax,16 1626116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov bx,WORD PTR[rsi] 1627116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov ax,WORD PTR[256+rsi] 1628116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[rdx],rbx 1629116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[8+rdx],rax 1630116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch lea rsi,QWORD PTR[512+rsi] 1631116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch lea rdx,QWORD PTR[16+rdx] 1632116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch sub rbp,1 1633116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch jnz loop_2 1634116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[48+rsp],505 1635116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1636116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rcx,QWORD PTR[8+rsp] 1637116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[136+rsp],rcx 1638116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r10,QWORD PTR[rcx] 1639116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r11,QWORD PTR[8+rcx] 1640116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r12,QWORD PTR[16+rcx] 1641116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r13,QWORD PTR[24+rcx] 1642116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r14,QWORD PTR[32+rcx] 1643116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r15,QWORD PTR[40+rcx] 1644116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r8,QWORD PTR[48+rcx] 1645116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r9,QWORD PTR[56+rcx] 1646116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch jmp sqr_2 1647116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1648116680a4aac90f2aa7413d9095a592090648e557Ben Murdochmain_loop_a3b:: 1649116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch call sqr_reduce 1650116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch call sqr_reduce 1651116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch call sqr_reduce 1652116680a4aac90f2aa7413d9095a592090648e557Ben Murdochsqr_2:: 1653116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch call sqr_reduce 1654116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch call sqr_reduce 1655116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1656116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1657116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1658116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rcx,QWORD PTR[48+rsp] 1659116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,rcx 1660116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch shr rax,4 1661116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov edx,DWORD PTR[64+rax*2+rsp] 1662116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch and rcx,15 1663116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch shr rdx,cl 1664116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch and rdx,01Fh 1665116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1666116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch lea rsi,QWORD PTR[640+rdx*2+rsp] 1667116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch lea rdx,QWORD PTR[448+rsp] 1668116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rdi,rdx 1669116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbp,4 1670116680a4aac90f2aa7413d9095a592090648e557Ben Murdochloop_3:: 1671116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movzx rbx,WORD PTR[192+rsi] 1672116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movzx rax,WORD PTR[448+rsi] 1673116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch shl rbx,16 1674116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch shl rax,16 1675116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov bx,WORD PTR[128+rsi] 1676116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov ax,WORD PTR[384+rsi] 1677116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch shl rbx,16 1678116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch shl rax,16 1679116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov bx,WORD PTR[64+rsi] 1680116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov ax,WORD PTR[320+rsi] 1681116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch shl rbx,16 1682116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch shl rax,16 1683116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov bx,WORD PTR[rsi] 1684116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov ax,WORD PTR[256+rsi] 1685116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[rdx],rbx 1686116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[8+rdx],rax 1687116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch lea rsi,QWORD PTR[512+rsi] 1688116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch lea rdx,QWORD PTR[16+rdx] 1689116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch sub rbp,1 1690116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch jnz loop_3 1691116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rsi,QWORD PTR[8+rsp] 1692116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch call mont_mul_a3b 1693116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1694116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1695116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1696116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rcx,QWORD PTR[48+rsp] 1697116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch sub rcx,5 1698116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[48+rsp],rcx 1699116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch jge main_loop_a3b 1700116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1701116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1702116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1703116680a4aac90f2aa7413d9095a592090648e557Ben Murdochend_main_loop_a3b:: 1704116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1705116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1706116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rdx,QWORD PTR[8+rsp] 1707116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch pxor xmm4,xmm4 1708116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movdqu xmm0,XMMWORD PTR[rdx] 1709116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movdqu xmm1,XMMWORD PTR[16+rdx] 1710116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movdqu xmm2,XMMWORD PTR[32+rdx] 1711116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movdqu xmm3,XMMWORD PTR[48+rdx] 1712116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movdqa XMMWORD PTR[576+rsp],xmm4 1713116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movdqa XMMWORD PTR[592+rsp],xmm4 1714116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movdqa XMMWORD PTR[608+rsp],xmm4 1715116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movdqa XMMWORD PTR[624+rsp],xmm4 1716116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movdqa XMMWORD PTR[512+rsp],xmm0 1717116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movdqa XMMWORD PTR[528+rsp],xmm1 1718116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movdqa XMMWORD PTR[544+rsp],xmm2 1719116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch movdqa XMMWORD PTR[560+rsp],xmm3 1720116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch call mont_reduce 1721116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1722116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1723116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1724116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[8+rsp] 1725116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r8,QWORD PTR[rax] 1726116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r9,QWORD PTR[8+rax] 1727116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r10,QWORD PTR[16+rax] 1728116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r11,QWORD PTR[24+rax] 1729116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r12,QWORD PTR[32+rax] 1730116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r13,QWORD PTR[40+rax] 1731116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r14,QWORD PTR[48+rax] 1732116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r15,QWORD PTR[56+rax] 1733116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1734116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1735116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,QWORD PTR[24+rsp] 1736116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add rbx,512 1737116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1738116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch sub r8,QWORD PTR[rbx] 1739116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch sbb r9,QWORD PTR[8+rbx] 1740116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch sbb r10,QWORD PTR[16+rbx] 1741116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch sbb r11,QWORD PTR[24+rbx] 1742116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch sbb r12,QWORD PTR[32+rbx] 1743116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch sbb r13,QWORD PTR[40+rbx] 1744116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch sbb r14,QWORD PTR[48+rbx] 1745116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch sbb r15,QWORD PTR[56+rbx] 1746116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1747116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1748116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rsi,QWORD PTR[rax] 1749116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rdi,QWORD PTR[8+rax] 1750116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rcx,QWORD PTR[16+rax] 1751116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rdx,QWORD PTR[24+rax] 1752116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch cmovnc rsi,r8 1753116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch cmovnc rdi,r9 1754116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch cmovnc rcx,r10 1755116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch cmovnc rdx,r11 1756116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[rax],rsi 1757116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[8+rax],rdi 1758116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[16+rax],rcx 1759116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[24+rax],rdx 1760116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1761116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rsi,QWORD PTR[32+rax] 1762116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rdi,QWORD PTR[40+rax] 1763116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rcx,QWORD PTR[48+rax] 1764116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rdx,QWORD PTR[56+rax] 1765116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch cmovnc rsi,r12 1766116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch cmovnc rdi,r13 1767116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch cmovnc rcx,r14 1768116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch cmovnc rdx,r15 1769116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[32+rax],rsi 1770116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[40+rax],rdi 1771116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[48+rax],rcx 1772116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[56+rax],rdx 1773116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1774116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rsi,QWORD PTR[rsp] 1775116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r15,QWORD PTR[rsi] 1776116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r14,QWORD PTR[8+rsi] 1777116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r13,QWORD PTR[16+rsi] 1778116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r12,QWORD PTR[24+rsi] 1779116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,QWORD PTR[32+rsi] 1780116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbp,QWORD PTR[40+rsi] 1781116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch lea rsp,QWORD PTR[48+rsi] 1782116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch$L$epilogue:: 1783116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rdi,QWORD PTR[8+rsp] ;WIN64 epilogue 1784116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rsi,QWORD PTR[16+rsp] 1785116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch DB 0F3h,0C3h ;repret 1786116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch$L$SEH_end_mod_exp_512:: 1787116680a4aac90f2aa7413d9095a592090648e557Ben Murdochmod_exp_512 ENDP 1788116680a4aac90f2aa7413d9095a592090648e557Ben MurdochEXTERN __imp_RtlVirtualUnwind:NEAR 1789116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1790116680a4aac90f2aa7413d9095a592090648e557Ben MurdochALIGN 16 1791116680a4aac90f2aa7413d9095a592090648e557Ben Murdochmod_exp_512_se_handler PROC PRIVATE 1792116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch push rsi 1793116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch push rdi 1794116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch push rbx 1795116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch push rbp 1796116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch push r12 1797116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch push r13 1798116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch push r14 1799116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch push r15 1800116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch pushfq 1801116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch sub rsp,64 1802116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1803116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[120+r8] 1804116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,QWORD PTR[248+r8] 1805116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1806116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch lea r10,QWORD PTR[$L$body] 1807116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch cmp rbx,r10 1808116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch jb $L$in_prologue 1809116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1810116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[152+r8] 1811116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1812116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch lea r10,QWORD PTR[$L$epilogue] 1813116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch cmp rbx,r10 1814116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch jae $L$in_prologue 1815116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1816116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rax,QWORD PTR[rax] 1817116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1818116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbx,QWORD PTR[32+rax] 1819116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rbp,QWORD PTR[40+rax] 1820116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r12,QWORD PTR[24+rax] 1821116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r13,QWORD PTR[16+rax] 1822116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r14,QWORD PTR[8+rax] 1823116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r15,QWORD PTR[rax] 1824116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch lea rax,QWORD PTR[48+rax] 1825116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[144+r8],rbx 1826116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[160+r8],rbp 1827116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[216+r8],r12 1828116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[224+r8],r13 1829116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[232+r8],r14 1830116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[240+r8],r15 1831116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1832116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch$L$in_prologue:: 1833116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rdi,QWORD PTR[8+rax] 1834116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rsi,QWORD PTR[16+rax] 1835116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[152+r8],rax 1836116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[168+r8],rsi 1837116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[176+r8],rdi 1838116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1839116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rdi,QWORD PTR[40+r9] 1840116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rsi,r8 1841116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov ecx,154 1842116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch DD 0a548f3fch 1843116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1844116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rsi,r9 1845116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch xor rcx,rcx 1846116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov rdx,QWORD PTR[8+rsi] 1847116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r8,QWORD PTR[rsi] 1848116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r9,QWORD PTR[16+rsi] 1849116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov r10,QWORD PTR[40+rsi] 1850116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch lea r11,QWORD PTR[56+rsi] 1851116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch lea r12,QWORD PTR[24+rsi] 1852116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[32+rsp],r10 1853116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[40+rsp],r11 1854116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[48+rsp],r12 1855116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov QWORD PTR[56+rsp],rcx 1856116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch call QWORD PTR[__imp_RtlVirtualUnwind] 1857116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1858116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch mov eax,1 1859116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch add rsp,64 1860116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch popfq 1861116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch pop r15 1862116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch pop r14 1863116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch pop r13 1864116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch pop r12 1865116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch pop rbp 1866116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch pop rbx 1867116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch pop rdi 1868116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch pop rsi 1869116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch DB 0F3h,0C3h ;repret 1870116680a4aac90f2aa7413d9095a592090648e557Ben Murdochmod_exp_512_se_handler ENDP 1871116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1872116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch.text$ ENDS 1873116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch.pdata SEGMENT READONLY ALIGN(4) 1874116680a4aac90f2aa7413d9095a592090648e557Ben MurdochALIGN 4 1875116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch DD imagerel $L$SEH_begin_mod_exp_512 1876116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch DD imagerel $L$SEH_end_mod_exp_512 1877116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch DD imagerel $L$SEH_info_mod_exp_512 1878116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1879116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch.pdata ENDS 1880116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch.xdata SEGMENT READONLY ALIGN(8) 1881116680a4aac90f2aa7413d9095a592090648e557Ben MurdochALIGN 8 1882116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch$L$SEH_info_mod_exp_512:: 1883116680a4aac90f2aa7413d9095a592090648e557Ben MurdochDB 9,0,0,0 1884116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch DD imagerel mod_exp_512_se_handler 1885116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 1886116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch.xdata ENDS 1887116680a4aac90f2aa7413d9095a592090648e557Ben MurdochEND 1888