arrow/compute/internal/kernels/cast_numeric_sse4_amd64.s (8,143 lines of code) (raw):

//go:build go1.18 && !noasm && !appengine // AUTO-GENERATED BY C2GOASM -- DO NOT EDIT DATA LCDATA1<>+0x000(SB)/8, $0x43e0000000000000 DATA LCDATA1<>+0x008(SB)/8, $0x0000000000000000 DATA LCDATA1<>+0x010(SB)/8, $0x0000000000000400 DATA LCDATA1<>+0x018(SB)/8, $0x0000000000000000 DATA LCDATA1<>+0x020(SB)/8, $0x4f0000004f000000 DATA LCDATA1<>+0x028(SB)/8, $0x4f0000004f000000 DATA LCDATA1<>+0x030(SB)/8, $0x8000000080000000 DATA LCDATA1<>+0x038(SB)/8, $0x8000000080000000 DATA LCDATA1<>+0x040(SB)/8, $0x0000000000000800 DATA LCDATA1<>+0x048(SB)/8, $0x0000000000000000 DATA LCDATA1<>+0x050(SB)/8, $0x4330000000000000 DATA LCDATA1<>+0x058(SB)/8, $0x4330000000000000 DATA LCDATA1<>+0x060(SB)/8, $0x4530000000000000 DATA LCDATA1<>+0x068(SB)/8, $0x4530000000000000 DATA LCDATA1<>+0x070(SB)/8, $0x4530000000100000 DATA LCDATA1<>+0x078(SB)/8, $0x4530000000100000 DATA LCDATA1<>+0x080(SB)/8, $0x4530000043300000 DATA LCDATA1<>+0x088(SB)/8, $0x0000000000000000 DATA LCDATA1<>+0x090(SB)/8, $0x4330000000000000 DATA LCDATA1<>+0x098(SB)/8, $0x4530000000000000 DATA LCDATA1<>+0x0a0(SB)/8, $0x0000000000000001 DATA LCDATA1<>+0x0a8(SB)/8, $0x0000000000000001 DATA LCDATA1<>+0x0b0(SB)/8, $0x0d0c090805040100 DATA LCDATA1<>+0x0b8(SB)/8, $0x0f0e0d0c0d0c0908 DATA LCDATA1<>+0x0c0(SB)/8, $0x000000000c080400 DATA LCDATA1<>+0x0c8(SB)/8, $0x0000000000000000 DATA LCDATA1<>+0x0d0(SB)/8, $0x4b0000004b000000 DATA LCDATA1<>+0x0d8(SB)/8, $0x4b0000004b000000 DATA LCDATA1<>+0x0e0(SB)/8, $0x5300000053000000 DATA LCDATA1<>+0x0e8(SB)/8, $0x5300000053000000 DATA LCDATA1<>+0x0f0(SB)/8, $0x5300008053000080 DATA LCDATA1<>+0x0f8(SB)/8, $0x5300008053000080 DATA LCDATA1<>+0x100(SB)/8, $0x0e0c0a0806040200 DATA LCDATA1<>+0x108(SB)/8, $0x0000000000000000 DATA LCDATA1<>+0x110(SB)/8, $0x000000005f000000 GLOBL LCDATA1<>(SB), 8, $280 TEXT ·_cast_type_numeric_sse4(SB), $0-40 MOVQ itype+0(FP), DI MOVQ otype+8(FP), SI MOVQ in+16(FP), DX MOVQ out+24(FP), CX MOVQ len+32(FP), R8 LEAQ LCDATA1<>(SB), BP WORD $0xff83; BYTE $0x06 // cmp edi, 6 JG LBB0_13 WORD $0xff83; BYTE $0x03 // cmp edi, 3 JLE LBB0_25 WORD $0xff83; BYTE $0x04 // cmp edi, 4 JE LBB0_45 WORD $0xff83; BYTE $0x05 // cmp edi, 5 JE LBB0_53 WORD $0xff83; BYTE $0x06 // cmp edi, 6 JNE LBB0_1526 WORD $0xfe83; BYTE $0x06 // cmp esi, 6 JG LBB0_93 WORD $0xfe83; BYTE $0x03 // cmp esi, 3 JLE LBB0_163 WORD $0xfe83; BYTE $0x04 // cmp esi, 4 JE LBB0_263 WORD $0xfe83; BYTE $0x05 // cmp esi, 5 JE LBB0_266 WORD $0xfe83; BYTE $0x06 // cmp esi, 6 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JB LBB0_12 LONG $0x8a048d4a // lea rax, [rdx + 4*r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_761 LONG $0x89048d4a // lea rax, [rcx + 4*r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_761 LBB0_12: WORD $0xf631 // xor esi, esi LBB0_1104: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1106 LBB0_1105: WORD $0x048b; BYTE $0xb2 // mov eax, dword [rdx + 4*rsi] WORD $0x0489; BYTE $0xb1 // mov dword [rcx + 4*rsi], eax LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1105 LBB0_1106: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1107: WORD $0x048b; BYTE $0xb2 // mov eax, dword [rdx + 4*rsi] WORD $0x0489; BYTE $0xb1 // mov dword [rcx + 4*rsi], eax LONG $0x04b2448b // mov eax, dword [rdx + 4*rsi + 4] LONG $0x04b14489 // mov dword [rcx + 4*rsi + 4], eax LONG $0x08b2448b // mov eax, dword [rdx + 4*rsi + 8] LONG $0x08b14489 // mov dword [rcx + 4*rsi + 8], eax LONG $0x0cb2448b // mov eax, dword [rdx + 4*rsi + 12] LONG $0x0cb14489 // mov dword [rcx + 4*rsi + 12], eax LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1107 JMP LBB0_1526 LBB0_13: WORD $0xff83; BYTE $0x08 // cmp edi, 8 JLE LBB0_35 WORD $0xff83; BYTE $0x09 // cmp edi, 9 JE LBB0_61 WORD $0xff83; BYTE $0x0b // cmp edi, 11 JE LBB0_69 WORD $0xff83; BYTE $0x0c // cmp edi, 12 JNE LBB0_1526 WORD $0xfe83; BYTE $0x06 // cmp esi, 6 JG LBB0_100 WORD $0xfe83; BYTE $0x03 // cmp esi, 3 JLE LBB0_168 WORD $0xfe83; BYTE $0x04 // cmp esi, 4 JE LBB0_269 WORD $0xfe83; BYTE $0x05 // cmp esi, 5 JE LBB0_272 WORD $0xfe83; BYTE $0x06 // cmp esi, 6 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8944; BYTE $0xc6 // mov esi, r8d LONG $0xff7e8d48 // lea rdi, [rsi - 1] WORD $0x8941; BYTE $0xf0 // mov r8d, esi LONG $0x03e08341 // and r8d, 3 LONG $0x03ff8348 // cmp rdi, 3 JAE LBB0_446 WORD $0xff31 // xor edi, edi JMP LBB0_448 LBB0_25: WORD $0xff83; BYTE $0x02 // cmp edi, 2 JE LBB0_77 WORD $0xff83; BYTE $0x03 // cmp edi, 3 JNE LBB0_1526 WORD $0xfe83; BYTE $0x06 // cmp esi, 6 JG LBB0_107 WORD $0xfe83; BYTE $0x03 // cmp esi, 3 JLE LBB0_173 WORD $0xfe83; BYTE $0x04 // cmp esi, 4 JE LBB0_275 WORD $0xfe83; BYTE $0x05 // cmp esi, 5 JE LBB0_278 WORD $0xfe83; BYTE $0x06 // cmp esi, 6 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JB LBB0_34 LONG $0x0a048d4a // lea rax, [rdx + r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_763 LONG $0x89048d4a // lea rax, [rcx + 4*r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_763 LBB0_34: WORD $0xf631 // xor esi, esi LBB0_1482: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xc8 // mov rax, r9 LONG $0x03e08348 // and rax, 3 JE LBB0_1484 LBB0_1483: LONG $0x323cbe0f // movsx edi, byte [rdx + rsi] WORD $0x3c89; BYTE $0xb1 // mov dword [rcx + 4*rsi], edi LONG $0x01c68348 // add rsi, 1 LONG $0xffc08348 // add rax, -1 JNE LBB0_1483 LBB0_1484: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1485: LONG $0x3204be0f // movsx eax, byte [rdx + rsi] WORD $0x0489; BYTE $0xb1 // mov dword [rcx + 4*rsi], eax LONG $0x3244be0f; BYTE $0x01 // movsx eax, byte [rdx + rsi + 1] LONG $0x04b14489 // mov dword [rcx + 4*rsi + 4], eax LONG $0x3244be0f; BYTE $0x02 // movsx eax, byte [rdx + rsi + 2] LONG $0x08b14489 // mov dword [rcx + 4*rsi + 8], eax LONG $0x3244be0f; BYTE $0x03 // movsx eax, byte [rdx + rsi + 3] LONG $0x0cb14489 // mov dword [rcx + 4*rsi + 12], eax LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1485 JMP LBB0_1526 LBB0_35: WORD $0xff83; BYTE $0x07 // cmp edi, 7 JE LBB0_85 WORD $0xff83; BYTE $0x08 // cmp edi, 8 JNE LBB0_1526 WORD $0xfe83; BYTE $0x06 // cmp esi, 6 JG LBB0_114 WORD $0xfe83; BYTE $0x03 // cmp esi, 3 JLE LBB0_178 WORD $0xfe83; BYTE $0x04 // cmp esi, 4 JE LBB0_281 WORD $0xfe83; BYTE $0x05 // cmp esi, 5 JE LBB0_284 WORD $0xfe83; BYTE $0x06 // cmp esi, 6 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JAE LBB0_454 WORD $0xf631 // xor esi, esi JMP LBB0_948 LBB0_45: WORD $0xfe83; BYTE $0x06 // cmp esi, 6 JG LBB0_121 WORD $0xfe83; BYTE $0x03 // cmp esi, 3 JLE LBB0_183 WORD $0xfe83; BYTE $0x04 // cmp esi, 4 JE LBB0_287 WORD $0xfe83; BYTE $0x05 // cmp esi, 5 JE LBB0_290 WORD $0xfe83; BYTE $0x06 // cmp esi, 6 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JAE LBB0_457 WORD $0xf631 // xor esi, esi JMP LBB0_953 LBB0_53: WORD $0xfe83; BYTE $0x06 // cmp esi, 6 JG LBB0_128 WORD $0xfe83; BYTE $0x03 // cmp esi, 3 JLE LBB0_188 WORD $0xfe83; BYTE $0x04 // cmp esi, 4 JE LBB0_293 WORD $0xfe83; BYTE $0x05 // cmp esi, 5 JE LBB0_296 WORD $0xfe83; BYTE $0x06 // cmp esi, 6 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JAE LBB0_460 WORD $0xf631 // xor esi, esi JMP LBB0_958 LBB0_61: WORD $0xfe83; BYTE $0x06 // cmp esi, 6 JG LBB0_135 WORD $0xfe83; BYTE $0x03 // cmp esi, 3 JLE LBB0_193 WORD $0xfe83; BYTE $0x04 // cmp esi, 4 JE LBB0_299 WORD $0xfe83; BYTE $0x05 // cmp esi, 5 JE LBB0_302 WORD $0xfe83; BYTE $0x06 // cmp esi, 6 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JAE LBB0_463 WORD $0xf631 // xor esi, esi JMP LBB0_963 LBB0_69: WORD $0xfe83; BYTE $0x06 // cmp esi, 6 JG LBB0_142 WORD $0xfe83; BYTE $0x03 // cmp esi, 3 JLE LBB0_198 WORD $0xfe83; BYTE $0x04 // cmp esi, 4 JE LBB0_305 WORD $0xfe83; BYTE $0x05 // cmp esi, 5 JE LBB0_308 WORD $0xfe83; BYTE $0x06 // cmp esi, 6 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JAE LBB0_466 WORD $0xf631 // xor esi, esi JMP LBB0_968 LBB0_77: WORD $0xfe83; BYTE $0x06 // cmp esi, 6 JG LBB0_149 WORD $0xfe83; BYTE $0x03 // cmp esi, 3 JLE LBB0_203 WORD $0xfe83; BYTE $0x04 // cmp esi, 4 JE LBB0_311 WORD $0xfe83; BYTE $0x05 // cmp esi, 5 JE LBB0_314 WORD $0xfe83; BYTE $0x06 // cmp esi, 6 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JB LBB0_84 LONG $0x0a048d4a // lea rax, [rdx + r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_766 LONG $0x89048d4a // lea rax, [rcx + 4*r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_766 LBB0_84: WORD $0xf631 // xor esi, esi LBB0_1490: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xc8 // mov rax, r9 LONG $0x03e08348 // and rax, 3 JE LBB0_1492 LBB0_1491: LONG $0x323cb60f // movzx edi, byte [rdx + rsi] WORD $0x3c89; BYTE $0xb1 // mov dword [rcx + 4*rsi], edi LONG $0x01c68348 // add rsi, 1 LONG $0xffc08348 // add rax, -1 JNE LBB0_1491 LBB0_1492: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1493: LONG $0x3204b60f // movzx eax, byte [rdx + rsi] WORD $0x0489; BYTE $0xb1 // mov dword [rcx + 4*rsi], eax LONG $0x3244b60f; BYTE $0x01 // movzx eax, byte [rdx + rsi + 1] LONG $0x04b14489 // mov dword [rcx + 4*rsi + 4], eax LONG $0x3244b60f; BYTE $0x02 // movzx eax, byte [rdx + rsi + 2] LONG $0x08b14489 // mov dword [rcx + 4*rsi + 8], eax LONG $0x3244b60f; BYTE $0x03 // movzx eax, byte [rdx + rsi + 3] LONG $0x0cb14489 // mov dword [rcx + 4*rsi + 12], eax LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1493 JMP LBB0_1526 LBB0_85: WORD $0xfe83; BYTE $0x06 // cmp esi, 6 JG LBB0_156 WORD $0xfe83; BYTE $0x03 // cmp esi, 3 JLE LBB0_208 WORD $0xfe83; BYTE $0x04 // cmp esi, 4 JE LBB0_317 WORD $0xfe83; BYTE $0x05 // cmp esi, 5 JE LBB0_320 WORD $0xfe83; BYTE $0x06 // cmp esi, 6 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JB LBB0_92 LONG $0x8a048d4a // lea rax, [rdx + 4*r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_769 LONG $0x89048d4a // lea rax, [rcx + 4*r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_769 LBB0_92: WORD $0xf631 // xor esi, esi LBB0_1114: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1116 LBB0_1115: WORD $0x048b; BYTE $0xb2 // mov eax, dword [rdx + 4*rsi] WORD $0x0489; BYTE $0xb1 // mov dword [rcx + 4*rsi], eax LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1115 LBB0_1116: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1117: WORD $0x048b; BYTE $0xb2 // mov eax, dword [rdx + 4*rsi] WORD $0x0489; BYTE $0xb1 // mov dword [rcx + 4*rsi], eax LONG $0x04b2448b // mov eax, dword [rdx + 4*rsi + 4] LONG $0x04b14489 // mov dword [rcx + 4*rsi + 4], eax LONG $0x08b2448b // mov eax, dword [rdx + 4*rsi + 8] LONG $0x08b14489 // mov dword [rcx + 4*rsi + 8], eax LONG $0x0cb2448b // mov eax, dword [rdx + 4*rsi + 12] LONG $0x0cb14489 // mov dword [rcx + 4*rsi + 12], eax LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1117 JMP LBB0_1526 LBB0_93: WORD $0xfe83; BYTE $0x08 // cmp esi, 8 JLE LBB0_213 WORD $0xfe83; BYTE $0x09 // cmp esi, 9 JE LBB0_323 WORD $0xfe83; BYTE $0x0b // cmp esi, 11 JE LBB0_326 WORD $0xfe83; BYTE $0x0c // cmp esi, 12 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8944; BYTE $0xc6 // mov esi, r8d LONG $0xff7e8d48 // lea rdi, [rsi - 1] WORD $0x8941; BYTE $0xf0 // mov r8d, esi LONG $0x03e08341 // and r8d, 3 LONG $0x03ff8348 // cmp rdi, 3 JAE LBB0_475 WORD $0xff31 // xor edi, edi JMP LBB0_477 LBB0_100: WORD $0xfe83; BYTE $0x08 // cmp esi, 8 JLE LBB0_218 WORD $0xfe83; BYTE $0x09 // cmp esi, 9 JE LBB0_329 WORD $0xfe83; BYTE $0x0b // cmp esi, 11 JE LBB0_332 WORD $0xfe83; BYTE $0x0c // cmp esi, 12 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JB LBB0_106 LONG $0xca048d4a // lea rax, [rdx + 8*r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_771 LONG $0xc9048d4a // lea rax, [rcx + 8*r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_771 LBB0_106: WORD $0xf631 // xor esi, esi LBB0_1124: WORD $0x8944; BYTE $0xcf // mov edi, r9d WORD $0xf729 // sub edi, esi WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 LONG $0x07e78348 // and rdi, 7 JE LBB0_1126 LBB0_1125: LONG $0xf2048b48 // mov rax, qword [rdx + 8*rsi] LONG $0xf1048948 // mov qword [rcx + 8*rsi], rax LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1125 LBB0_1126: LONG $0x07f88349 // cmp r8, 7 JB LBB0_1526 LBB0_1127: LONG $0xf2048b48 // mov rax, qword [rdx + 8*rsi] LONG $0xf1048948 // mov qword [rcx + 8*rsi], rax LONG $0xf2448b48; BYTE $0x08 // mov rax, qword [rdx + 8*rsi + 8] LONG $0xf1448948; BYTE $0x08 // mov qword [rcx + 8*rsi + 8], rax LONG $0xf2448b48; BYTE $0x10 // mov rax, qword [rdx + 8*rsi + 16] LONG $0xf1448948; BYTE $0x10 // mov qword [rcx + 8*rsi + 16], rax LONG $0xf2448b48; BYTE $0x18 // mov rax, qword [rdx + 8*rsi + 24] LONG $0xf1448948; BYTE $0x18 // mov qword [rcx + 8*rsi + 24], rax LONG $0xf2448b48; BYTE $0x20 // mov rax, qword [rdx + 8*rsi + 32] LONG $0xf1448948; BYTE $0x20 // mov qword [rcx + 8*rsi + 32], rax LONG $0xf2448b48; BYTE $0x28 // mov rax, qword [rdx + 8*rsi + 40] LONG $0xf1448948; BYTE $0x28 // mov qword [rcx + 8*rsi + 40], rax LONG $0xf2448b48; BYTE $0x30 // mov rax, qword [rdx + 8*rsi + 48] LONG $0xf1448948; BYTE $0x30 // mov qword [rcx + 8*rsi + 48], rax LONG $0xf2448b48; BYTE $0x38 // mov rax, qword [rdx + 8*rsi + 56] LONG $0xf1448948; BYTE $0x38 // mov qword [rcx + 8*rsi + 56], rax LONG $0x08c68348 // add rsi, 8 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1127 JMP LBB0_1526 LBB0_107: WORD $0xfe83; BYTE $0x08 // cmp esi, 8 JLE LBB0_223 WORD $0xfe83; BYTE $0x09 // cmp esi, 9 JE LBB0_335 WORD $0xfe83; BYTE $0x0b // cmp esi, 11 JE LBB0_338 WORD $0xfe83; BYTE $0x0c // cmp esi, 12 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8944; BYTE $0xc6 // mov esi, r8d LONG $0xff7e8d48 // lea rdi, [rsi - 1] WORD $0x8941; BYTE $0xf0 // mov r8d, esi LONG $0x03e08341 // and r8d, 3 LONG $0x03ff8348 // cmp rdi, 3 JAE LBB0_483 WORD $0xff31 // xor edi, edi JMP LBB0_485 LBB0_114: WORD $0xfe83; BYTE $0x08 // cmp esi, 8 JLE LBB0_228 WORD $0xfe83; BYTE $0x09 // cmp esi, 9 JE LBB0_341 WORD $0xfe83; BYTE $0x0b // cmp esi, 11 JE LBB0_344 WORD $0xfe83; BYTE $0x0c // cmp esi, 12 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JAE LBB0_488 WORD $0xf631 // xor esi, esi JMP LBB0_973 LBB0_121: WORD $0xfe83; BYTE $0x08 // cmp esi, 8 JLE LBB0_233 WORD $0xfe83; BYTE $0x09 // cmp esi, 9 JE LBB0_347 WORD $0xfe83; BYTE $0x0b // cmp esi, 11 JE LBB0_350 WORD $0xfe83; BYTE $0x0c // cmp esi, 12 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8944; BYTE $0xc6 // mov esi, r8d LONG $0xff7e8d48 // lea rdi, [rsi - 1] WORD $0x8941; BYTE $0xf0 // mov r8d, esi LONG $0x03e08341 // and r8d, 3 LONG $0x03ff8348 // cmp rdi, 3 JAE LBB0_491 WORD $0xff31 // xor edi, edi JMP LBB0_493 LBB0_128: WORD $0xfe83; BYTE $0x08 // cmp esi, 8 JLE LBB0_238 WORD $0xfe83; BYTE $0x09 // cmp esi, 9 JE LBB0_353 WORD $0xfe83; BYTE $0x0b // cmp esi, 11 JE LBB0_356 WORD $0xfe83; BYTE $0x0c // cmp esi, 12 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8944; BYTE $0xc6 // mov esi, r8d LONG $0xff7e8d48 // lea rdi, [rsi - 1] WORD $0x8941; BYTE $0xf0 // mov r8d, esi LONG $0x03e08341 // and r8d, 3 LONG $0x03ff8348 // cmp rdi, 3 JAE LBB0_496 WORD $0xff31 // xor edi, edi JMP LBB0_498 LBB0_135: WORD $0xfe83; BYTE $0x08 // cmp esi, 8 JLE LBB0_243 WORD $0xfe83; BYTE $0x09 // cmp esi, 9 JE LBB0_359 WORD $0xfe83; BYTE $0x0b // cmp esi, 11 JE LBB0_362 WORD $0xfe83; BYTE $0x0c // cmp esi, 12 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8944; BYTE $0xc6 // mov esi, r8d LONG $0xff7e8d48 // lea rdi, [rsi - 1] WORD $0xf089 // mov eax, esi WORD $0xe083; BYTE $0x03 // and eax, 3 LONG $0x03ff8348 // cmp rdi, 3 JAE LBB0_501 WORD $0xff31 // xor edi, edi JMP LBB0_503 LBB0_142: WORD $0xfe83; BYTE $0x08 // cmp esi, 8 JLE LBB0_248 WORD $0xfe83; BYTE $0x09 // cmp esi, 9 JE LBB0_365 WORD $0xfe83; BYTE $0x0b // cmp esi, 11 JE LBB0_368 WORD $0xfe83; BYTE $0x0c // cmp esi, 12 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JAE LBB0_506 WORD $0xf631 // xor esi, esi JMP LBB0_979 LBB0_149: WORD $0xfe83; BYTE $0x08 // cmp esi, 8 JLE LBB0_253 WORD $0xfe83; BYTE $0x09 // cmp esi, 9 JE LBB0_371 WORD $0xfe83; BYTE $0x0b // cmp esi, 11 JE LBB0_374 WORD $0xfe83; BYTE $0x0c // cmp esi, 12 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8944; BYTE $0xc6 // mov esi, r8d LONG $0xff7e8d48 // lea rdi, [rsi - 1] WORD $0x8941; BYTE $0xf0 // mov r8d, esi LONG $0x03e08341 // and r8d, 3 LONG $0x03ff8348 // cmp rdi, 3 JAE LBB0_509 WORD $0xff31 // xor edi, edi JMP LBB0_511 LBB0_156: WORD $0xfe83; BYTE $0x08 // cmp esi, 8 JLE LBB0_258 WORD $0xfe83; BYTE $0x09 // cmp esi, 9 JE LBB0_377 WORD $0xfe83; BYTE $0x0b // cmp esi, 11 JE LBB0_380 WORD $0xfe83; BYTE $0x0c // cmp esi, 12 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8944; BYTE $0xc6 // mov esi, r8d LONG $0xff7e8d48 // lea rdi, [rsi - 1] WORD $0xf089 // mov eax, esi WORD $0xe083; BYTE $0x03 // and eax, 3 LONG $0x03ff8348 // cmp rdi, 3 JAE LBB0_514 WORD $0xff31 // xor edi, edi JMP LBB0_516 LBB0_163: WORD $0xfe83; BYTE $0x02 // cmp esi, 2 JE LBB0_383 WORD $0xfe83; BYTE $0x03 // cmp esi, 3 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JB LBB0_167 LONG $0x8a048d4a // lea rax, [rdx + 4*r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_773 LONG $0x09048d4a // lea rax, [rcx + r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_773 LBB0_167: WORD $0xf631 // xor esi, esi LBB0_1498: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1500 LBB0_1499: LONG $0xb204b60f // movzx eax, byte [rdx + 4*rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1499 LBB0_1500: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1501: LONG $0xb204b60f // movzx eax, byte [rdx + 4*rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0xb244b60f; BYTE $0x04 // movzx eax, byte [rdx + 4*rsi + 4] LONG $0x01314488 // mov byte [rcx + rsi + 1], al LONG $0xb244b60f; BYTE $0x08 // movzx eax, byte [rdx + 4*rsi + 8] LONG $0x02314488 // mov byte [rcx + rsi + 2], al LONG $0xb244b60f; BYTE $0x0c // movzx eax, byte [rdx + 4*rsi + 12] LONG $0x03314488 // mov byte [rcx + rsi + 3], al LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1501 JMP LBB0_1526 LBB0_168: WORD $0xfe83; BYTE $0x02 // cmp esi, 2 JE LBB0_386 WORD $0xfe83; BYTE $0x03 // cmp esi, 3 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JB LBB0_172 LONG $0xca048d4a // lea rax, [rdx + 8*r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_776 LONG $0x09048d4a // lea rax, [rcx + r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_776 LBB0_172: WORD $0xf631 // xor esi, esi LBB0_1506: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1508 LBB0_1507: LONG $0x042c0ff2; BYTE $0xf2 // cvttsd2si eax, qword [rdx + 8*rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1507 LBB0_1508: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1509: LONG $0x042c0ff2; BYTE $0xf2 // cvttsd2si eax, qword [rdx + 8*rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0x442c0ff2; WORD $0x08f2 // cvttsd2si eax, qword [rdx + 8*rsi + 8] LONG $0x01314488 // mov byte [rcx + rsi + 1], al LONG $0x442c0ff2; WORD $0x10f2 // cvttsd2si eax, qword [rdx + 8*rsi + 16] LONG $0x02314488 // mov byte [rcx + rsi + 2], al LONG $0x442c0ff2; WORD $0x18f2 // cvttsd2si eax, qword [rdx + 8*rsi + 24] LONG $0x03314488 // mov byte [rcx + rsi + 3], al LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1509 JMP LBB0_1526 LBB0_173: WORD $0xfe83; BYTE $0x02 // cmp esi, 2 JE LBB0_389 WORD $0xfe83; BYTE $0x03 // cmp esi, 3 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x20f88341 // cmp r8d, 32 JB LBB0_177 LONG $0x0a048d4a // lea rax, [rdx + r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_779 LONG $0x09048d4a // lea rax, [rcx + r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_779 LBB0_177: WORD $0xf631 // xor esi, esi LBB0_1134: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1136 LBB0_1135: LONG $0x3204b60f // movzx eax, byte [rdx + rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1135 LBB0_1136: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1137: LONG $0x3204b60f // movzx eax, byte [rdx + rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0x3244b60f; BYTE $0x01 // movzx eax, byte [rdx + rsi + 1] LONG $0x01314488 // mov byte [rcx + rsi + 1], al LONG $0x3244b60f; BYTE $0x02 // movzx eax, byte [rdx + rsi + 2] LONG $0x02314488 // mov byte [rcx + rsi + 2], al LONG $0x3244b60f; BYTE $0x03 // movzx eax, byte [rdx + rsi + 3] LONG $0x03314488 // mov byte [rcx + rsi + 3], al LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1137 JMP LBB0_1526 LBB0_178: WORD $0xfe83; BYTE $0x02 // cmp esi, 2 JE LBB0_392 WORD $0xfe83; BYTE $0x03 // cmp esi, 3 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JB LBB0_182 LONG $0xca048d4a // lea rax, [rdx + 8*r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_781 LONG $0x09048d4a // lea rax, [rcx + r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_781 LBB0_182: WORD $0xf631 // xor esi, esi LBB0_1322: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1324 LBB0_1323: LONG $0xf204b60f // movzx eax, byte [rdx + 8*rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1323 LBB0_1324: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1325: LONG $0xf204b60f // movzx eax, byte [rdx + 8*rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0xf244b60f; BYTE $0x08 // movzx eax, byte [rdx + 8*rsi + 8] LONG $0x01314488 // mov byte [rcx + rsi + 1], al LONG $0xf244b60f; BYTE $0x10 // movzx eax, byte [rdx + 8*rsi + 16] LONG $0x02314488 // mov byte [rcx + rsi + 2], al LONG $0xf244b60f; BYTE $0x18 // movzx eax, byte [rdx + 8*rsi + 24] LONG $0x03314488 // mov byte [rcx + rsi + 3], al LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1325 JMP LBB0_1526 LBB0_183: WORD $0xfe83; BYTE $0x02 // cmp esi, 2 JE LBB0_395 WORD $0xfe83; BYTE $0x03 // cmp esi, 3 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x10f88341 // cmp r8d, 16 JB LBB0_187 LONG $0x4a048d4a // lea rax, [rdx + 2*r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_784 LONG $0x09048d4a // lea rax, [rcx + r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_784 LBB0_187: WORD $0xf631 // xor esi, esi LBB0_1330: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1332 LBB0_1331: LONG $0x7204b60f // movzx eax, byte [rdx + 2*rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1331 LBB0_1332: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1333: LONG $0x7204b60f // movzx eax, byte [rdx + 2*rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0x7244b60f; BYTE $0x02 // movzx eax, byte [rdx + 2*rsi + 2] LONG $0x01314488 // mov byte [rcx + rsi + 1], al LONG $0x7244b60f; BYTE $0x04 // movzx eax, byte [rdx + 2*rsi + 4] LONG $0x02314488 // mov byte [rcx + rsi + 2], al LONG $0x7244b60f; BYTE $0x06 // movzx eax, byte [rdx + 2*rsi + 6] LONG $0x03314488 // mov byte [rcx + rsi + 3], al LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1333 JMP LBB0_1526 LBB0_188: WORD $0xfe83; BYTE $0x02 // cmp esi, 2 JE LBB0_398 WORD $0xfe83; BYTE $0x03 // cmp esi, 3 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x10f88341 // cmp r8d, 16 JB LBB0_192 LONG $0x4a048d4a // lea rax, [rdx + 2*r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_787 LONG $0x09048d4a // lea rax, [rcx + r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_787 LBB0_192: WORD $0xf631 // xor esi, esi LBB0_1514: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1516 LBB0_1515: LONG $0x7204b60f // movzx eax, byte [rdx + 2*rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1515 LBB0_1516: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1517: LONG $0x7204b60f // movzx eax, byte [rdx + 2*rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0x7244b60f; BYTE $0x02 // movzx eax, byte [rdx + 2*rsi + 2] LONG $0x01314488 // mov byte [rcx + rsi + 1], al LONG $0x7244b60f; BYTE $0x04 // movzx eax, byte [rdx + 2*rsi + 4] LONG $0x02314488 // mov byte [rcx + rsi + 2], al LONG $0x7244b60f; BYTE $0x06 // movzx eax, byte [rdx + 2*rsi + 6] LONG $0x03314488 // mov byte [rcx + rsi + 3], al LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1517 JMP LBB0_1526 LBB0_193: WORD $0xfe83; BYTE $0x02 // cmp esi, 2 JE LBB0_401 WORD $0xfe83; BYTE $0x03 // cmp esi, 3 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JB LBB0_197 LONG $0xca048d4a // lea rax, [rdx + 8*r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_790 LONG $0x09048d4a // lea rax, [rcx + r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_790 LBB0_197: WORD $0xf631 // xor esi, esi LBB0_1338: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1340 LBB0_1339: LONG $0xf204b60f // movzx eax, byte [rdx + 8*rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1339 LBB0_1340: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1341: LONG $0xf204b60f // movzx eax, byte [rdx + 8*rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0xf244b60f; BYTE $0x08 // movzx eax, byte [rdx + 8*rsi + 8] LONG $0x01314488 // mov byte [rcx + rsi + 1], al LONG $0xf244b60f; BYTE $0x10 // movzx eax, byte [rdx + 8*rsi + 16] LONG $0x02314488 // mov byte [rcx + rsi + 2], al LONG $0xf244b60f; BYTE $0x18 // movzx eax, byte [rdx + 8*rsi + 24] LONG $0x03314488 // mov byte [rcx + rsi + 3], al LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1341 JMP LBB0_1526 LBB0_198: WORD $0xfe83; BYTE $0x02 // cmp esi, 2 JE LBB0_404 WORD $0xfe83; BYTE $0x03 // cmp esi, 3 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JB LBB0_202 LONG $0x8a048d4a // lea rax, [rdx + 4*r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_793 LONG $0x09048d4a // lea rax, [rcx + r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_793 LBB0_202: WORD $0xf631 // xor esi, esi LBB0_1522: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1524 LBB0_1523: LONG $0x042c0ff3; BYTE $0xb2 // cvttss2si eax, dword [rdx + 4*rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1523 LBB0_1524: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1525: LONG $0x042c0ff3; BYTE $0xb2 // cvttss2si eax, dword [rdx + 4*rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0x442c0ff3; WORD $0x04b2 // cvttss2si eax, dword [rdx + 4*rsi + 4] LONG $0x01314488 // mov byte [rcx + rsi + 1], al LONG $0x442c0ff3; WORD $0x08b2 // cvttss2si eax, dword [rdx + 4*rsi + 8] LONG $0x02314488 // mov byte [rcx + rsi + 2], al LONG $0x442c0ff3; WORD $0x0cb2 // cvttss2si eax, dword [rdx + 4*rsi + 12] LONG $0x03314488 // mov byte [rcx + rsi + 3], al LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1525 JMP LBB0_1526 LBB0_203: WORD $0xfe83; BYTE $0x02 // cmp esi, 2 JE LBB0_407 WORD $0xfe83; BYTE $0x03 // cmp esi, 3 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x20f88341 // cmp r8d, 32 JB LBB0_207 LONG $0x0a048d4a // lea rax, [rdx + r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_796 LONG $0x09048d4a // lea rax, [rcx + r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_796 LBB0_207: WORD $0xf631 // xor esi, esi LBB0_1144: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1146 LBB0_1145: LONG $0x3204b60f // movzx eax, byte [rdx + rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1145 LBB0_1146: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1147: LONG $0x3204b60f // movzx eax, byte [rdx + rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0x3244b60f; BYTE $0x01 // movzx eax, byte [rdx + rsi + 1] LONG $0x01314488 // mov byte [rcx + rsi + 1], al LONG $0x3244b60f; BYTE $0x02 // movzx eax, byte [rdx + rsi + 2] LONG $0x02314488 // mov byte [rcx + rsi + 2], al LONG $0x3244b60f; BYTE $0x03 // movzx eax, byte [rdx + rsi + 3] LONG $0x03314488 // mov byte [rcx + rsi + 3], al LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1147 JMP LBB0_1526 LBB0_208: WORD $0xfe83; BYTE $0x02 // cmp esi, 2 JE LBB0_410 WORD $0xfe83; BYTE $0x03 // cmp esi, 3 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JB LBB0_212 LONG $0x8a048d4a // lea rax, [rdx + 4*r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_798 LONG $0x09048d4a // lea rax, [rcx + r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_798 LBB0_212: WORD $0xf631 // xor esi, esi LBB0_1346: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1348 LBB0_1347: LONG $0xb204b60f // movzx eax, byte [rdx + 4*rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1347 LBB0_1348: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1349: LONG $0xb204b60f // movzx eax, byte [rdx + 4*rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0xb244b60f; BYTE $0x04 // movzx eax, byte [rdx + 4*rsi + 4] LONG $0x01314488 // mov byte [rcx + rsi + 1], al LONG $0xb244b60f; BYTE $0x08 // movzx eax, byte [rdx + 4*rsi + 8] LONG $0x02314488 // mov byte [rcx + rsi + 2], al LONG $0xb244b60f; BYTE $0x0c // movzx eax, byte [rdx + 4*rsi + 12] LONG $0x03314488 // mov byte [rcx + rsi + 3], al LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1349 JMP LBB0_1526 LBB0_213: WORD $0xfe83; BYTE $0x07 // cmp esi, 7 JE LBB0_413 WORD $0xfe83; BYTE $0x08 // cmp esi, 8 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JAE LBB0_549 WORD $0xf631 // xor esi, esi JMP LBB0_807 LBB0_218: WORD $0xfe83; BYTE $0x07 // cmp esi, 7 JE LBB0_416 WORD $0xfe83; BYTE $0x08 // cmp esi, 8 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0xff418d49 // lea rax, [r9 - 1] WORD $0x8945; BYTE $0xc8 // mov r8d, r9d LONG $0x03e08341 // and r8d, 3 QUAD $0x000000000000ba49; WORD $0x8000 // mov r10, -9223372036854775808 LONG $0x03f88348 // cmp rax, 3 JAE LBB0_551 WORD $0xc031 // xor eax, eax JMP LBB0_553 LBB0_223: WORD $0xfe83; BYTE $0x07 // cmp esi, 7 JE LBB0_419 WORD $0xfe83; BYTE $0x08 // cmp esi, 8 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JB LBB0_227 LONG $0x0a048d4a // lea rax, [rdx + r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_808 LONG $0xc9048d4a // lea rax, [rcx + 8*r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_808 LBB0_227: WORD $0xf631 // xor esi, esi LBB0_1154: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1156 LBB0_1155: LONG $0x04be0f48; BYTE $0x32 // movsx rax, byte [rdx + rsi] LONG $0xf1048948 // mov qword [rcx + 8*rsi], rax LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1155 LBB0_1156: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1157: LONG $0x04be0f48; BYTE $0x32 // movsx rax, byte [rdx + rsi] LONG $0xf1048948 // mov qword [rcx + 8*rsi], rax LONG $0x44be0f48; WORD $0x0132 // movsx rax, byte [rdx + rsi + 1] LONG $0xf1448948; BYTE $0x08 // mov qword [rcx + 8*rsi + 8], rax LONG $0x44be0f48; WORD $0x0232 // movsx rax, byte [rdx + rsi + 2] LONG $0xf1448948; BYTE $0x10 // mov qword [rcx + 8*rsi + 16], rax LONG $0x44be0f48; WORD $0x0332 // movsx rax, byte [rdx + rsi + 3] LONG $0xf1448948; BYTE $0x18 // mov qword [rcx + 8*rsi + 24], rax LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1157 JMP LBB0_1526 LBB0_228: WORD $0xfe83; BYTE $0x07 // cmp esi, 7 JE LBB0_422 WORD $0xfe83; BYTE $0x08 // cmp esi, 8 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JB LBB0_232 LONG $0xca048d4a // lea rax, [rdx + 8*r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_810 LONG $0xc9048d4a // lea rax, [rcx + 8*r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_810 LBB0_232: WORD $0xf631 // xor esi, esi LBB0_1164: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1166 LBB0_1165: LONG $0xf2048b48 // mov rax, qword [rdx + 8*rsi] LONG $0xf1048948 // mov qword [rcx + 8*rsi], rax LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1165 LBB0_1166: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1167: LONG $0xf2048b48 // mov rax, qword [rdx + 8*rsi] LONG $0xf1048948 // mov qword [rcx + 8*rsi], rax LONG $0xf2448b48; BYTE $0x08 // mov rax, qword [rdx + 8*rsi + 8] LONG $0xf1448948; BYTE $0x08 // mov qword [rcx + 8*rsi + 8], rax LONG $0xf2448b48; BYTE $0x10 // mov rax, qword [rdx + 8*rsi + 16] LONG $0xf1448948; BYTE $0x10 // mov qword [rcx + 8*rsi + 16], rax LONG $0xf2448b48; BYTE $0x18 // mov rax, qword [rdx + 8*rsi + 24] LONG $0xf1448948; BYTE $0x18 // mov qword [rcx + 8*rsi + 24], rax LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1167 JMP LBB0_1526 LBB0_233: WORD $0xfe83; BYTE $0x07 // cmp esi, 7 JE LBB0_425 WORD $0xfe83; BYTE $0x08 // cmp esi, 8 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JAE LBB0_562 WORD $0xf631 // xor esi, esi JMP LBB0_818 LBB0_238: WORD $0xfe83; BYTE $0x07 // cmp esi, 7 JE LBB0_428 WORD $0xfe83; BYTE $0x08 // cmp esi, 8 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JAE LBB0_564 WORD $0xf631 // xor esi, esi JMP LBB0_825 LBB0_243: WORD $0xfe83; BYTE $0x07 // cmp esi, 7 JE LBB0_431 WORD $0xfe83; BYTE $0x08 // cmp esi, 8 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JB LBB0_247 LONG $0xca048d4a // lea rax, [rdx + 8*r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_826 LONG $0xc9048d4a // lea rax, [rcx + 8*r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_826 LBB0_247: WORD $0xf631 // xor esi, esi LBB0_1174: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1176 LBB0_1175: LONG $0xf2048b48 // mov rax, qword [rdx + 8*rsi] LONG $0xf1048948 // mov qword [rcx + 8*rsi], rax LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1175 LBB0_1176: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1177: LONG $0xf2048b48 // mov rax, qword [rdx + 8*rsi] LONG $0xf1048948 // mov qword [rcx + 8*rsi], rax LONG $0xf2448b48; BYTE $0x08 // mov rax, qword [rdx + 8*rsi + 8] LONG $0xf1448948; BYTE $0x08 // mov qword [rcx + 8*rsi + 8], rax LONG $0xf2448b48; BYTE $0x10 // mov rax, qword [rdx + 8*rsi + 16] LONG $0xf1448948; BYTE $0x10 // mov qword [rcx + 8*rsi + 16], rax LONG $0xf2448b48; BYTE $0x18 // mov rax, qword [rdx + 8*rsi + 24] LONG $0xf1448948; BYTE $0x18 // mov qword [rcx + 8*rsi + 24], rax LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1177 JMP LBB0_1526 LBB0_248: WORD $0xfe83; BYTE $0x07 // cmp esi, 7 JE LBB0_434 WORD $0xfe83; BYTE $0x08 // cmp esi, 8 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0xff418d49 // lea rax, [r9 - 1] WORD $0x8945; BYTE $0xc8 // mov r8d, r9d LONG $0x03e08341 // and r8d, 3 LONG $0x03f88348 // cmp rax, 3 JAE LBB0_569 WORD $0xff31 // xor edi, edi JMP LBB0_571 LBB0_253: WORD $0xfe83; BYTE $0x07 // cmp esi, 7 JE LBB0_437 WORD $0xfe83; BYTE $0x08 // cmp esi, 8 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JB LBB0_257 LONG $0x0a048d4a // lea rax, [rdx + r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_828 LONG $0xc9048d4a // lea rax, [rcx + 8*r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_828 LBB0_257: WORD $0xf631 // xor esi, esi LBB0_1184: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1186 LBB0_1185: LONG $0x3204b60f // movzx eax, byte [rdx + rsi] LONG $0xf1048948 // mov qword [rcx + 8*rsi], rax LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1185 LBB0_1186: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1187: LONG $0x3204b60f // movzx eax, byte [rdx + rsi] LONG $0xf1048948 // mov qword [rcx + 8*rsi], rax LONG $0x3244b60f; BYTE $0x01 // movzx eax, byte [rdx + rsi + 1] LONG $0xf1448948; BYTE $0x08 // mov qword [rcx + 8*rsi + 8], rax LONG $0x3244b60f; BYTE $0x02 // movzx eax, byte [rdx + rsi + 2] LONG $0xf1448948; BYTE $0x10 // mov qword [rcx + 8*rsi + 16], rax LONG $0x3244b60f; BYTE $0x03 // movzx eax, byte [rdx + rsi + 3] LONG $0xf1448948; BYTE $0x18 // mov qword [rcx + 8*rsi + 24], rax LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1187 JMP LBB0_1526 LBB0_258: WORD $0xfe83; BYTE $0x07 // cmp esi, 7 JE LBB0_440 WORD $0xfe83; BYTE $0x08 // cmp esi, 8 JNE LBB0_1526 WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JAE LBB0_577 WORD $0xf631 // xor esi, esi JMP LBB0_836 LBB0_263: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JAE LBB0_579 WORD $0xf631 // xor esi, esi JMP LBB0_984 LBB0_266: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JAE LBB0_582 WORD $0xf631 // xor esi, esi JMP LBB0_989 LBB0_269: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JAE LBB0_585 WORD $0xf631 // xor esi, esi JMP LBB0_994 LBB0_272: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JAE LBB0_588 WORD $0xf631 // xor esi, esi JMP LBB0_999 LBB0_275: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x10f88341 // cmp r8d, 16 JB LBB0_277 LONG $0x0a048d4a // lea rax, [rdx + r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_837 LONG $0x49048d4a // lea rax, [rcx + 2*r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_837 LBB0_277: WORD $0xf631 // xor esi, esi LBB0_1354: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xc8 // mov rax, r9 LONG $0x03e08348 // and rax, 3 JE LBB0_1356 LBB0_1355: LONG $0x323cbe0f // movsx edi, byte [rdx + rsi] LONG $0x713c8966 // mov word [rcx + 2*rsi], di LONG $0x01c68348 // add rsi, 1 LONG $0xffc08348 // add rax, -1 JNE LBB0_1355 LBB0_1356: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1357: LONG $0x3204be0f // movsx eax, byte [rdx + rsi] LONG $0x71048966 // mov word [rcx + 2*rsi], ax LONG $0x3244be0f; BYTE $0x01 // movsx eax, byte [rdx + rsi + 1] LONG $0x71448966; BYTE $0x02 // mov word [rcx + 2*rsi + 2], ax LONG $0x3244be0f; BYTE $0x02 // movsx eax, byte [rdx + rsi + 2] LONG $0x71448966; BYTE $0x04 // mov word [rcx + 2*rsi + 4], ax LONG $0x3244be0f; BYTE $0x03 // movsx eax, byte [rdx + rsi + 3] LONG $0x71448966; BYTE $0x06 // mov word [rcx + 2*rsi + 6], ax LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1357 JMP LBB0_1526 LBB0_278: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x10f88341 // cmp r8d, 16 JB LBB0_280 LONG $0x0a048d4a // lea rax, [rdx + r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_840 LONG $0x49048d4a // lea rax, [rcx + 2*r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_840 LBB0_280: WORD $0xf631 // xor esi, esi LBB0_1362: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xc8 // mov rax, r9 LONG $0x03e08348 // and rax, 3 JE LBB0_1364 LBB0_1363: LONG $0x323cbe0f // movsx edi, byte [rdx + rsi] LONG $0x713c8966 // mov word [rcx + 2*rsi], di LONG $0x01c68348 // add rsi, 1 LONG $0xffc08348 // add rax, -1 JNE LBB0_1363 LBB0_1364: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1365: LONG $0x3204be0f // movsx eax, byte [rdx + rsi] LONG $0x71048966 // mov word [rcx + 2*rsi], ax LONG $0x3244be0f; BYTE $0x01 // movsx eax, byte [rdx + rsi + 1] LONG $0x71448966; BYTE $0x02 // mov word [rcx + 2*rsi + 2], ax LONG $0x3244be0f; BYTE $0x02 // movsx eax, byte [rdx + rsi + 2] LONG $0x71448966; BYTE $0x04 // mov word [rcx + 2*rsi + 4], ax LONG $0x3244be0f; BYTE $0x03 // movsx eax, byte [rdx + rsi + 3] LONG $0x71448966; BYTE $0x06 // mov word [rcx + 2*rsi + 6], ax LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1365 JMP LBB0_1526 LBB0_281: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JAE LBB0_597 WORD $0xf631 // xor esi, esi JMP LBB0_1004 LBB0_284: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JAE LBB0_600 WORD $0xf631 // xor esi, esi JMP LBB0_1009 LBB0_287: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x10f88341 // cmp r8d, 16 JB LBB0_289 LONG $0x4a048d4a // lea rax, [rdx + 2*r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_843 LONG $0x49048d4a // lea rax, [rcx + 2*r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_843 LBB0_289: WORD $0xf631 // xor esi, esi LBB0_1194: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1196 LBB0_1195: LONG $0x7204b70f // movzx eax, word [rdx + 2*rsi] LONG $0x71048966 // mov word [rcx + 2*rsi], ax LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1195 LBB0_1196: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1197: LONG $0x7204b70f // movzx eax, word [rdx + 2*rsi] LONG $0x71048966 // mov word [rcx + 2*rsi], ax LONG $0x7244b70f; BYTE $0x02 // movzx eax, word [rdx + 2*rsi + 2] LONG $0x71448966; BYTE $0x02 // mov word [rcx + 2*rsi + 2], ax LONG $0x7244b70f; BYTE $0x04 // movzx eax, word [rdx + 2*rsi + 4] LONG $0x71448966; BYTE $0x04 // mov word [rcx + 2*rsi + 4], ax LONG $0x7244b70f; BYTE $0x06 // movzx eax, word [rdx + 2*rsi + 6] LONG $0x71448966; BYTE $0x06 // mov word [rcx + 2*rsi + 6], ax LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1197 JMP LBB0_1526 LBB0_290: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x10f88341 // cmp r8d, 16 JB LBB0_292 LONG $0x4a048d4a // lea rax, [rdx + 2*r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_845 LONG $0x49048d4a // lea rax, [rcx + 2*r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_845 LBB0_292: WORD $0xf631 // xor esi, esi LBB0_1204: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1206 LBB0_1205: LONG $0x7204b70f // movzx eax, word [rdx + 2*rsi] LONG $0x71048966 // mov word [rcx + 2*rsi], ax LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1205 LBB0_1206: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1207: LONG $0x7204b70f // movzx eax, word [rdx + 2*rsi] LONG $0x71048966 // mov word [rcx + 2*rsi], ax LONG $0x7244b70f; BYTE $0x02 // movzx eax, word [rdx + 2*rsi + 2] LONG $0x71448966; BYTE $0x02 // mov word [rcx + 2*rsi + 2], ax LONG $0x7244b70f; BYTE $0x04 // movzx eax, word [rdx + 2*rsi + 4] LONG $0x71448966; BYTE $0x04 // mov word [rcx + 2*rsi + 4], ax LONG $0x7244b70f; BYTE $0x06 // movzx eax, word [rdx + 2*rsi + 6] LONG $0x71448966; BYTE $0x06 // mov word [rcx + 2*rsi + 6], ax LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1207 JMP LBB0_1526 LBB0_293: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x10f88341 // cmp r8d, 16 JB LBB0_295 LONG $0x4a048d4a // lea rax, [rdx + 2*r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_847 LONG $0x49048d4a // lea rax, [rcx + 2*r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_847 LBB0_295: WORD $0xf631 // xor esi, esi LBB0_1214: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1216 LBB0_1215: LONG $0x7204b70f // movzx eax, word [rdx + 2*rsi] LONG $0x71048966 // mov word [rcx + 2*rsi], ax LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1215 LBB0_1216: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1217: LONG $0x7204b70f // movzx eax, word [rdx + 2*rsi] LONG $0x71048966 // mov word [rcx + 2*rsi], ax LONG $0x7244b70f; BYTE $0x02 // movzx eax, word [rdx + 2*rsi + 2] LONG $0x71448966; BYTE $0x02 // mov word [rcx + 2*rsi + 2], ax LONG $0x7244b70f; BYTE $0x04 // movzx eax, word [rdx + 2*rsi + 4] LONG $0x71448966; BYTE $0x04 // mov word [rcx + 2*rsi + 4], ax LONG $0x7244b70f; BYTE $0x06 // movzx eax, word [rdx + 2*rsi + 6] LONG $0x71448966; BYTE $0x06 // mov word [rcx + 2*rsi + 6], ax LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1217 JMP LBB0_1526 LBB0_296: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x10f88341 // cmp r8d, 16 JB LBB0_298 LONG $0x4a048d4a // lea rax, [rdx + 2*r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_849 LONG $0x49048d4a // lea rax, [rcx + 2*r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_849 LBB0_298: WORD $0xf631 // xor esi, esi LBB0_1224: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1226 LBB0_1225: LONG $0x7204b70f // movzx eax, word [rdx + 2*rsi] LONG $0x71048966 // mov word [rcx + 2*rsi], ax LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1225 LBB0_1226: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1227: LONG $0x7204b70f // movzx eax, word [rdx + 2*rsi] LONG $0x71048966 // mov word [rcx + 2*rsi], ax LONG $0x7244b70f; BYTE $0x02 // movzx eax, word [rdx + 2*rsi + 2] LONG $0x71448966; BYTE $0x02 // mov word [rcx + 2*rsi + 2], ax LONG $0x7244b70f; BYTE $0x04 // movzx eax, word [rdx + 2*rsi + 4] LONG $0x71448966; BYTE $0x04 // mov word [rcx + 2*rsi + 4], ax LONG $0x7244b70f; BYTE $0x06 // movzx eax, word [rdx + 2*rsi + 6] LONG $0x71448966; BYTE $0x06 // mov word [rcx + 2*rsi + 6], ax LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1227 JMP LBB0_1526 LBB0_299: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JAE LBB0_615 WORD $0xf631 // xor esi, esi JMP LBB0_1014 LBB0_302: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JAE LBB0_618 WORD $0xf631 // xor esi, esi JMP LBB0_1019 LBB0_305: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JAE LBB0_621 WORD $0xf631 // xor esi, esi JMP LBB0_1024 LBB0_308: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JAE LBB0_624 WORD $0xf631 // xor esi, esi JMP LBB0_1029 LBB0_311: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x10f88341 // cmp r8d, 16 JB LBB0_313 LONG $0x0a048d4a // lea rax, [rdx + r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_851 LONG $0x49048d4a // lea rax, [rcx + 2*r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_851 LBB0_313: WORD $0xf631 // xor esi, esi LBB0_1370: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xc8 // mov rax, r9 LONG $0x03e08348 // and rax, 3 JE LBB0_1372 LBB0_1371: LONG $0x323cb60f // movzx edi, byte [rdx + rsi] LONG $0x713c8966 // mov word [rcx + 2*rsi], di LONG $0x01c68348 // add rsi, 1 LONG $0xffc08348 // add rax, -1 JNE LBB0_1371 LBB0_1372: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1373: LONG $0x3204b60f // movzx eax, byte [rdx + rsi] LONG $0x71048966 // mov word [rcx + 2*rsi], ax LONG $0x3244b60f; BYTE $0x01 // movzx eax, byte [rdx + rsi + 1] LONG $0x71448966; BYTE $0x02 // mov word [rcx + 2*rsi + 2], ax LONG $0x3244b60f; BYTE $0x02 // movzx eax, byte [rdx + rsi + 2] LONG $0x71448966; BYTE $0x04 // mov word [rcx + 2*rsi + 4], ax LONG $0x3244b60f; BYTE $0x03 // movzx eax, byte [rdx + rsi + 3] LONG $0x71448966; BYTE $0x06 // mov word [rcx + 2*rsi + 6], ax LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1373 JMP LBB0_1526 LBB0_314: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x10f88341 // cmp r8d, 16 JB LBB0_316 LONG $0x0a048d4a // lea rax, [rdx + r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_854 LONG $0x49048d4a // lea rax, [rcx + 2*r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_854 LBB0_316: WORD $0xf631 // xor esi, esi LBB0_1378: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xc8 // mov rax, r9 LONG $0x03e08348 // and rax, 3 JE LBB0_1380 LBB0_1379: LONG $0x323cb60f // movzx edi, byte [rdx + rsi] LONG $0x713c8966 // mov word [rcx + 2*rsi], di LONG $0x01c68348 // add rsi, 1 LONG $0xffc08348 // add rax, -1 JNE LBB0_1379 LBB0_1380: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1381: LONG $0x3204b60f // movzx eax, byte [rdx + rsi] LONG $0x71048966 // mov word [rcx + 2*rsi], ax LONG $0x3244b60f; BYTE $0x01 // movzx eax, byte [rdx + rsi + 1] LONG $0x71448966; BYTE $0x02 // mov word [rcx + 2*rsi + 2], ax LONG $0x3244b60f; BYTE $0x02 // movzx eax, byte [rdx + rsi + 2] LONG $0x71448966; BYTE $0x04 // mov word [rcx + 2*rsi + 4], ax LONG $0x3244b60f; BYTE $0x03 // movzx eax, byte [rdx + rsi + 3] LONG $0x71448966; BYTE $0x06 // mov word [rcx + 2*rsi + 6], ax LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1381 JMP LBB0_1526 LBB0_317: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JAE LBB0_633 WORD $0xf631 // xor esi, esi JMP LBB0_1034 LBB0_320: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JAE LBB0_636 WORD $0xf631 // xor esi, esi JMP LBB0_1039 LBB0_323: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JAE LBB0_639 WORD $0xf631 // xor esi, esi JMP LBB0_863 LBB0_326: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JAE LBB0_641 WORD $0xf631 // xor esi, esi JMP LBB0_1044 LBB0_329: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8944; BYTE $0xc6 // mov esi, r8d LONG $0xff7e8d48 // lea rdi, [rsi - 1] WORD $0x8941; BYTE $0xf0 // mov r8d, esi LONG $0x03e08341 // and r8d, 3 LONG $0x03ff8348 // cmp rdi, 3 JAE LBB0_644 WORD $0xff31 // xor edi, edi JMP LBB0_646 LBB0_332: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JAE LBB0_649 WORD $0xf631 // xor esi, esi JMP LBB0_1049 LBB0_335: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JB LBB0_337 LONG $0x0a048d4a // lea rax, [rdx + r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_864 LONG $0xc9048d4a // lea rax, [rcx + 8*r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_864 LBB0_337: WORD $0xf631 // xor esi, esi LBB0_1234: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1236 LBB0_1235: LONG $0x04be0f48; BYTE $0x32 // movsx rax, byte [rdx + rsi] LONG $0xf1048948 // mov qword [rcx + 8*rsi], rax LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1235 LBB0_1236: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1237: LONG $0x04be0f48; BYTE $0x32 // movsx rax, byte [rdx + rsi] LONG $0xf1048948 // mov qword [rcx + 8*rsi], rax LONG $0x44be0f48; WORD $0x0132 // movsx rax, byte [rdx + rsi + 1] LONG $0xf1448948; BYTE $0x08 // mov qword [rcx + 8*rsi + 8], rax LONG $0x44be0f48; WORD $0x0232 // movsx rax, byte [rdx + rsi + 2] LONG $0xf1448948; BYTE $0x10 // mov qword [rcx + 8*rsi + 16], rax LONG $0x44be0f48; WORD $0x0332 // movsx rax, byte [rdx + rsi + 3] LONG $0xf1448948; BYTE $0x18 // mov qword [rcx + 8*rsi + 24], rax LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1237 JMP LBB0_1526 LBB0_338: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JB LBB0_340 LONG $0x0a048d4a // lea rax, [rdx + r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_866 LONG $0x89048d4a // lea rax, [rcx + 4*r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_866 LBB0_340: WORD $0xf631 // xor esi, esi LBB0_1386: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1388 LBB0_1387: LONG $0x3204be0f // movsx eax, byte [rdx + rsi] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0xc02a0ff3 // cvtsi2ss xmm0, eax LONG $0x04110ff3; BYTE $0xb1 // movss dword [rcx + 4*rsi], xmm0 LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1387 LBB0_1388: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1389: LONG $0x3204be0f // movsx eax, byte [rdx + rsi] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0xc02a0ff3 // cvtsi2ss xmm0, eax LONG $0x04110ff3; BYTE $0xb1 // movss dword [rcx + 4*rsi], xmm0 LONG $0x3244be0f; BYTE $0x01 // movsx eax, byte [rdx + rsi + 1] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0xc02a0ff3 // cvtsi2ss xmm0, eax LONG $0x44110ff3; WORD $0x04b1 // movss dword [rcx + 4*rsi + 4], xmm0 LONG $0x3244be0f; BYTE $0x02 // movsx eax, byte [rdx + rsi + 2] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0xc02a0ff3 // cvtsi2ss xmm0, eax LONG $0x44110ff3; WORD $0x08b1 // movss dword [rcx + 4*rsi + 8], xmm0 LONG $0x3244be0f; BYTE $0x03 // movsx eax, byte [rdx + rsi + 3] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0xc02a0ff3 // cvtsi2ss xmm0, eax LONG $0x44110ff3; WORD $0x0cb1 // movss dword [rcx + 4*rsi + 12], xmm0 LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1389 JMP LBB0_1526 LBB0_341: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JB LBB0_343 LONG $0xca048d4a // lea rax, [rdx + 8*r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_869 LONG $0xc9048d4a // lea rax, [rcx + 8*r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_869 LBB0_343: WORD $0xf631 // xor esi, esi LBB0_1244: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1246 LBB0_1245: LONG $0xf2048b48 // mov rax, qword [rdx + 8*rsi] LONG $0xf1048948 // mov qword [rcx + 8*rsi], rax LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1245 LBB0_1246: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1247: LONG $0xf2048b48 // mov rax, qword [rdx + 8*rsi] LONG $0xf1048948 // mov qword [rcx + 8*rsi], rax LONG $0xf2448b48; BYTE $0x08 // mov rax, qword [rdx + 8*rsi + 8] LONG $0xf1448948; BYTE $0x08 // mov qword [rcx + 8*rsi + 8], rax LONG $0xf2448b48; BYTE $0x10 // mov rax, qword [rdx + 8*rsi + 16] LONG $0xf1448948; BYTE $0x10 // mov qword [rcx + 8*rsi + 16], rax LONG $0xf2448b48; BYTE $0x18 // mov rax, qword [rdx + 8*rsi + 24] LONG $0xf1448948; BYTE $0x18 // mov qword [rcx + 8*rsi + 24], rax LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1247 JMP LBB0_1526 LBB0_344: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JAE LBB0_661 WORD $0xf631 // xor esi, esi JMP LBB0_1056 LBB0_347: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JAE LBB0_664 WORD $0xf631 // xor esi, esi JMP LBB0_877 LBB0_350: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JAE LBB0_666 WORD $0xf631 // xor esi, esi JMP LBB0_1062 LBB0_353: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JAE LBB0_669 WORD $0xf631 // xor esi, esi JMP LBB0_884 LBB0_356: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JAE LBB0_671 WORD $0xf631 // xor esi, esi JMP LBB0_1067 LBB0_359: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JB LBB0_361 LONG $0xca048d4a // lea rax, [rdx + 8*r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_885 LONG $0xc9048d4a // lea rax, [rcx + 8*r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_885 LBB0_361: WORD $0xf631 // xor esi, esi LBB0_1254: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1256 LBB0_1255: LONG $0xf2048b48 // mov rax, qword [rdx + 8*rsi] LONG $0xf1048948 // mov qword [rcx + 8*rsi], rax LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1255 LBB0_1256: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1257: LONG $0xf2048b48 // mov rax, qword [rdx + 8*rsi] LONG $0xf1048948 // mov qword [rcx + 8*rsi], rax LONG $0xf2448b48; BYTE $0x08 // mov rax, qword [rdx + 8*rsi + 8] LONG $0xf1448948; BYTE $0x08 // mov qword [rcx + 8*rsi + 8], rax LONG $0xf2448b48; BYTE $0x10 // mov rax, qword [rdx + 8*rsi + 16] LONG $0xf1448948; BYTE $0x10 // mov qword [rcx + 8*rsi + 16], rax LONG $0xf2448b48; BYTE $0x18 // mov rax, qword [rdx + 8*rsi + 24] LONG $0xf1448948; BYTE $0x18 // mov qword [rcx + 8*rsi + 24], rax LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1257 JMP LBB0_1526 LBB0_362: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8944; BYTE $0xc6 // mov esi, r8d LONG $0xff7e8d48 // lea rdi, [rsi - 1] WORD $0xf089 // mov eax, esi WORD $0xe083; BYTE $0x03 // and eax, 3 LONG $0x03ff8348 // cmp rdi, 3 JAE LBB0_677 WORD $0xff31 // xor edi, edi JMP LBB0_679 LBB0_365: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8944; BYTE $0xc6 // mov esi, r8d LONG $0xff7e8d48 // lea rdi, [rsi - 1] WORD $0x8941; BYTE $0xf0 // mov r8d, esi LONG $0x03e08341 // and r8d, 3 LONG $0x03ff8348 // cmp rdi, 3 JAE LBB0_682 WORD $0xff31 // xor edi, edi JMP LBB0_684 LBB0_368: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JB LBB0_370 LONG $0x8a048d4a // lea rax, [rdx + 4*r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_887 LONG $0x89048d4a // lea rax, [rcx + 4*r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_887 LBB0_370: WORD $0xf631 // xor esi, esi LBB0_1264: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x07e78348 // and rdi, 7 JE LBB0_1266 LBB0_1265: WORD $0x048b; BYTE $0xb2 // mov eax, dword [rdx + 4*rsi] WORD $0x0489; BYTE $0xb1 // mov dword [rcx + 4*rsi], eax LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1265 LBB0_1266: LONG $0x07f88349 // cmp r8, 7 JB LBB0_1526 LBB0_1267: WORD $0x048b; BYTE $0xb2 // mov eax, dword [rdx + 4*rsi] WORD $0x0489; BYTE $0xb1 // mov dword [rcx + 4*rsi], eax LONG $0x04b2448b // mov eax, dword [rdx + 4*rsi + 4] LONG $0x04b14489 // mov dword [rcx + 4*rsi + 4], eax LONG $0x08b2448b // mov eax, dword [rdx + 4*rsi + 8] LONG $0x08b14489 // mov dword [rcx + 4*rsi + 8], eax LONG $0x0cb2448b // mov eax, dword [rdx + 4*rsi + 12] LONG $0x0cb14489 // mov dword [rcx + 4*rsi + 12], eax LONG $0x10b2448b // mov eax, dword [rdx + 4*rsi + 16] LONG $0x10b14489 // mov dword [rcx + 4*rsi + 16], eax LONG $0x14b2448b // mov eax, dword [rdx + 4*rsi + 20] LONG $0x14b14489 // mov dword [rcx + 4*rsi + 20], eax LONG $0x18b2448b // mov eax, dword [rdx + 4*rsi + 24] LONG $0x18b14489 // mov dword [rcx + 4*rsi + 24], eax LONG $0x1cb2448b // mov eax, dword [rdx + 4*rsi + 28] LONG $0x1cb14489 // mov dword [rcx + 4*rsi + 28], eax LONG $0x08c68348 // add rsi, 8 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1267 JMP LBB0_1526 LBB0_371: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JB LBB0_373 LONG $0x0a048d4a // lea rax, [rdx + r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_889 LONG $0xc9048d4a // lea rax, [rcx + 8*r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_889 LBB0_373: WORD $0xf631 // xor esi, esi LBB0_1274: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1276 LBB0_1275: LONG $0x3204b60f // movzx eax, byte [rdx + rsi] LONG $0xf1048948 // mov qword [rcx + 8*rsi], rax LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1275 LBB0_1276: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1277: LONG $0x3204b60f // movzx eax, byte [rdx + rsi] LONG $0xf1048948 // mov qword [rcx + 8*rsi], rax LONG $0x3244b60f; BYTE $0x01 // movzx eax, byte [rdx + rsi + 1] LONG $0xf1448948; BYTE $0x08 // mov qword [rcx + 8*rsi + 8], rax LONG $0x3244b60f; BYTE $0x02 // movzx eax, byte [rdx + rsi + 2] LONG $0xf1448948; BYTE $0x10 // mov qword [rcx + 8*rsi + 16], rax LONG $0x3244b60f; BYTE $0x03 // movzx eax, byte [rdx + rsi + 3] LONG $0xf1448948; BYTE $0x18 // mov qword [rcx + 8*rsi + 24], rax LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1277 JMP LBB0_1526 LBB0_374: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JB LBB0_376 LONG $0x0a048d4a // lea rax, [rdx + r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_891 LONG $0x89048d4a // lea rax, [rcx + 4*r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_891 LBB0_376: WORD $0xf631 // xor esi, esi LBB0_1394: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1396 LBB0_1395: LONG $0x3204b60f // movzx eax, byte [rdx + rsi] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0xc02a0ff3 // cvtsi2ss xmm0, eax LONG $0x04110ff3; BYTE $0xb1 // movss dword [rcx + 4*rsi], xmm0 LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1395 LBB0_1396: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1397: LONG $0x3204b60f // movzx eax, byte [rdx + rsi] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0xc02a0ff3 // cvtsi2ss xmm0, eax LONG $0x04110ff3; BYTE $0xb1 // movss dword [rcx + 4*rsi], xmm0 LONG $0x3244b60f; BYTE $0x01 // movzx eax, byte [rdx + rsi + 1] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0xc02a0ff3 // cvtsi2ss xmm0, eax LONG $0x44110ff3; WORD $0x04b1 // movss dword [rcx + 4*rsi + 4], xmm0 LONG $0x3244b60f; BYTE $0x02 // movzx eax, byte [rdx + rsi + 2] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0xc02a0ff3 // cvtsi2ss xmm0, eax LONG $0x44110ff3; WORD $0x08b1 // movss dword [rcx + 4*rsi + 8], xmm0 LONG $0x3244b60f; BYTE $0x03 // movzx eax, byte [rdx + rsi + 3] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0xc02a0ff3 // cvtsi2ss xmm0, eax LONG $0x44110ff3; WORD $0x0cb1 // movss dword [rcx + 4*rsi + 12], xmm0 LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1397 JMP LBB0_1526 LBB0_377: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JAE LBB0_696 WORD $0xf631 // xor esi, esi JMP LBB0_900 LBB0_380: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JAE LBB0_698 WORD $0xf631 // xor esi, esi JMP LBB0_1072 LBB0_383: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JB LBB0_385 LONG $0x8a048d4a // lea rax, [rdx + 4*r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_901 LONG $0x09048d4a // lea rax, [rcx + r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_901 LBB0_385: WORD $0xf631 // xor esi, esi LBB0_1402: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1404 LBB0_1403: LONG $0xb204b60f // movzx eax, byte [rdx + 4*rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1403 LBB0_1404: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1405: LONG $0xb204b60f // movzx eax, byte [rdx + 4*rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0xb244b60f; BYTE $0x04 // movzx eax, byte [rdx + 4*rsi + 4] LONG $0x01314488 // mov byte [rcx + rsi + 1], al LONG $0xb244b60f; BYTE $0x08 // movzx eax, byte [rdx + 4*rsi + 8] LONG $0x02314488 // mov byte [rcx + rsi + 2], al LONG $0xb244b60f; BYTE $0x0c // movzx eax, byte [rdx + 4*rsi + 12] LONG $0x03314488 // mov byte [rcx + rsi + 3], al LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1405 JMP LBB0_1526 LBB0_386: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JB LBB0_388 LONG $0xca048d4a // lea rax, [rdx + 8*r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_904 LONG $0x09048d4a // lea rax, [rcx + r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_904 LBB0_388: WORD $0xf631 // xor esi, esi LBB0_1410: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1412 LBB0_1411: LONG $0x042c0ff2; BYTE $0xf2 // cvttsd2si eax, qword [rdx + 8*rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1411 LBB0_1412: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1413: LONG $0x042c0ff2; BYTE $0xf2 // cvttsd2si eax, qword [rdx + 8*rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0x442c0ff2; WORD $0x08f2 // cvttsd2si eax, qword [rdx + 8*rsi + 8] LONG $0x01314488 // mov byte [rcx + rsi + 1], al LONG $0x442c0ff2; WORD $0x10f2 // cvttsd2si eax, qword [rdx + 8*rsi + 16] LONG $0x02314488 // mov byte [rcx + rsi + 2], al LONG $0x442c0ff2; WORD $0x18f2 // cvttsd2si eax, qword [rdx + 8*rsi + 24] LONG $0x03314488 // mov byte [rcx + rsi + 3], al LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1413 JMP LBB0_1526 LBB0_389: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x20f88341 // cmp r8d, 32 JB LBB0_391 LONG $0x0a048d4a // lea rax, [rdx + r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_907 LONG $0x09048d4a // lea rax, [rcx + r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_907 LBB0_391: WORD $0xf631 // xor esi, esi LBB0_1284: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1286 LBB0_1285: LONG $0x3204b60f // movzx eax, byte [rdx + rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1285 LBB0_1286: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1287: LONG $0x3204b60f // movzx eax, byte [rdx + rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0x3244b60f; BYTE $0x01 // movzx eax, byte [rdx + rsi + 1] LONG $0x01314488 // mov byte [rcx + rsi + 1], al LONG $0x3244b60f; BYTE $0x02 // movzx eax, byte [rdx + rsi + 2] LONG $0x02314488 // mov byte [rcx + rsi + 2], al LONG $0x3244b60f; BYTE $0x03 // movzx eax, byte [rdx + rsi + 3] LONG $0x03314488 // mov byte [rcx + rsi + 3], al LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1287 JMP LBB0_1526 LBB0_392: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JB LBB0_394 LONG $0xca048d4a // lea rax, [rdx + 8*r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_909 LONG $0x09048d4a // lea rax, [rcx + r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_909 LBB0_394: WORD $0xf631 // xor esi, esi LBB0_1418: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1420 LBB0_1419: LONG $0xf204b60f // movzx eax, byte [rdx + 8*rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1419 LBB0_1420: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1421: LONG $0xf204b60f // movzx eax, byte [rdx + 8*rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0xf244b60f; BYTE $0x08 // movzx eax, byte [rdx + 8*rsi + 8] LONG $0x01314488 // mov byte [rcx + rsi + 1], al LONG $0xf244b60f; BYTE $0x10 // movzx eax, byte [rdx + 8*rsi + 16] LONG $0x02314488 // mov byte [rcx + rsi + 2], al LONG $0xf244b60f; BYTE $0x18 // movzx eax, byte [rdx + 8*rsi + 24] LONG $0x03314488 // mov byte [rcx + rsi + 3], al LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1421 JMP LBB0_1526 LBB0_395: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x10f88341 // cmp r8d, 16 JB LBB0_397 LONG $0x4a048d4a // lea rax, [rdx + 2*r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_912 LONG $0x09048d4a // lea rax, [rcx + r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_912 LBB0_397: WORD $0xf631 // xor esi, esi LBB0_1426: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1428 LBB0_1427: LONG $0x7204b60f // movzx eax, byte [rdx + 2*rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1427 LBB0_1428: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1429: LONG $0x7204b60f // movzx eax, byte [rdx + 2*rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0x7244b60f; BYTE $0x02 // movzx eax, byte [rdx + 2*rsi + 2] LONG $0x01314488 // mov byte [rcx + rsi + 1], al LONG $0x7244b60f; BYTE $0x04 // movzx eax, byte [rdx + 2*rsi + 4] LONG $0x02314488 // mov byte [rcx + rsi + 2], al LONG $0x7244b60f; BYTE $0x06 // movzx eax, byte [rdx + 2*rsi + 6] LONG $0x03314488 // mov byte [rcx + rsi + 3], al LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1429 JMP LBB0_1526 LBB0_398: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x10f88341 // cmp r8d, 16 JB LBB0_400 LONG $0x4a048d4a // lea rax, [rdx + 2*r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_915 LONG $0x09048d4a // lea rax, [rcx + r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_915 LBB0_400: WORD $0xf631 // xor esi, esi LBB0_1434: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1436 LBB0_1435: LONG $0x7204b60f // movzx eax, byte [rdx + 2*rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1435 LBB0_1436: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1437: LONG $0x7204b60f // movzx eax, byte [rdx + 2*rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0x7244b60f; BYTE $0x02 // movzx eax, byte [rdx + 2*rsi + 2] LONG $0x01314488 // mov byte [rcx + rsi + 1], al LONG $0x7244b60f; BYTE $0x04 // movzx eax, byte [rdx + 2*rsi + 4] LONG $0x02314488 // mov byte [rcx + rsi + 2], al LONG $0x7244b60f; BYTE $0x06 // movzx eax, byte [rdx + 2*rsi + 6] LONG $0x03314488 // mov byte [rcx + rsi + 3], al LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1437 JMP LBB0_1526 LBB0_401: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JB LBB0_403 LONG $0xca048d4a // lea rax, [rdx + 8*r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_918 LONG $0x09048d4a // lea rax, [rcx + r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_918 LBB0_403: WORD $0xf631 // xor esi, esi LBB0_1442: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1444 LBB0_1443: LONG $0xf204b60f // movzx eax, byte [rdx + 8*rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1443 LBB0_1444: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1445: LONG $0xf204b60f // movzx eax, byte [rdx + 8*rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0xf244b60f; BYTE $0x08 // movzx eax, byte [rdx + 8*rsi + 8] LONG $0x01314488 // mov byte [rcx + rsi + 1], al LONG $0xf244b60f; BYTE $0x10 // movzx eax, byte [rdx + 8*rsi + 16] LONG $0x02314488 // mov byte [rcx + rsi + 2], al LONG $0xf244b60f; BYTE $0x18 // movzx eax, byte [rdx + 8*rsi + 24] LONG $0x03314488 // mov byte [rcx + rsi + 3], al LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1445 JMP LBB0_1526 LBB0_404: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JB LBB0_406 LONG $0x8a048d4a // lea rax, [rdx + 4*r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_921 LONG $0x09048d4a // lea rax, [rcx + r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_921 LBB0_406: WORD $0xf631 // xor esi, esi LBB0_1450: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1452 LBB0_1451: LONG $0x042c0ff3; BYTE $0xb2 // cvttss2si eax, dword [rdx + 4*rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1451 LBB0_1452: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1453: LONG $0x042c0ff3; BYTE $0xb2 // cvttss2si eax, dword [rdx + 4*rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0x442c0ff3; WORD $0x04b2 // cvttss2si eax, dword [rdx + 4*rsi + 4] LONG $0x01314488 // mov byte [rcx + rsi + 1], al LONG $0x442c0ff3; WORD $0x08b2 // cvttss2si eax, dword [rdx + 4*rsi + 8] LONG $0x02314488 // mov byte [rcx + rsi + 2], al LONG $0x442c0ff3; WORD $0x0cb2 // cvttss2si eax, dword [rdx + 4*rsi + 12] LONG $0x03314488 // mov byte [rcx + rsi + 3], al LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1453 JMP LBB0_1526 LBB0_407: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x20f88341 // cmp r8d, 32 JB LBB0_409 LONG $0x0a048d4a // lea rax, [rdx + r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_924 LONG $0x09048d4a // lea rax, [rcx + r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_924 LBB0_409: WORD $0xf631 // xor esi, esi LBB0_1294: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1296 LBB0_1295: LONG $0x3204b60f // movzx eax, byte [rdx + rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1295 LBB0_1296: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1297: LONG $0x3204b60f // movzx eax, byte [rdx + rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0x3244b60f; BYTE $0x01 // movzx eax, byte [rdx + rsi + 1] LONG $0x01314488 // mov byte [rcx + rsi + 1], al LONG $0x3244b60f; BYTE $0x02 // movzx eax, byte [rdx + rsi + 2] LONG $0x02314488 // mov byte [rcx + rsi + 2], al LONG $0x3244b60f; BYTE $0x03 // movzx eax, byte [rdx + rsi + 3] LONG $0x03314488 // mov byte [rcx + rsi + 3], al LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1297 JMP LBB0_1526 LBB0_410: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JB LBB0_412 LONG $0x8a048d4a // lea rax, [rdx + 4*r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_926 LONG $0x09048d4a // lea rax, [rcx + r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_926 LBB0_412: WORD $0xf631 // xor esi, esi LBB0_1458: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1460 LBB0_1459: LONG $0xb204b60f // movzx eax, byte [rdx + 4*rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1459 LBB0_1460: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1461: LONG $0xb204b60f // movzx eax, byte [rdx + 4*rsi] WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al LONG $0xb244b60f; BYTE $0x04 // movzx eax, byte [rdx + 4*rsi + 4] LONG $0x01314488 // mov byte [rcx + rsi + 1], al LONG $0xb244b60f; BYTE $0x08 // movzx eax, byte [rdx + 4*rsi + 8] LONG $0x02314488 // mov byte [rcx + rsi + 2], al LONG $0xb244b60f; BYTE $0x0c // movzx eax, byte [rdx + 4*rsi + 12] LONG $0x03314488 // mov byte [rcx + rsi + 3], al LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1461 JMP LBB0_1526 LBB0_413: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JB LBB0_415 LONG $0x8a048d4a // lea rax, [rdx + 4*r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_929 LONG $0x89048d4a // lea rax, [rcx + 4*r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_929 LBB0_415: WORD $0xf631 // xor esi, esi LBB0_1304: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1306 LBB0_1305: WORD $0x048b; BYTE $0xb2 // mov eax, dword [rdx + 4*rsi] WORD $0x0489; BYTE $0xb1 // mov dword [rcx + 4*rsi], eax LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1305 LBB0_1306: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1307: WORD $0x048b; BYTE $0xb2 // mov eax, dword [rdx + 4*rsi] WORD $0x0489; BYTE $0xb1 // mov dword [rcx + 4*rsi], eax LONG $0x04b2448b // mov eax, dword [rdx + 4*rsi + 4] LONG $0x04b14489 // mov dword [rcx + 4*rsi + 4], eax LONG $0x08b2448b // mov eax, dword [rdx + 4*rsi + 8] LONG $0x08b14489 // mov dword [rcx + 4*rsi + 8], eax LONG $0x0cb2448b // mov eax, dword [rdx + 4*rsi + 12] LONG $0x0cb14489 // mov dword [rcx + 4*rsi + 12], eax LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1307 JMP LBB0_1526 LBB0_416: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JAE LBB0_734 WORD $0xf631 // xor esi, esi JMP LBB0_1077 LBB0_419: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JB LBB0_421 LONG $0x0a048d4a // lea rax, [rdx + r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_931 LONG $0x89048d4a // lea rax, [rcx + 4*r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_931 LBB0_421: WORD $0xf631 // xor esi, esi LBB0_1466: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xc8 // mov rax, r9 LONG $0x03e08348 // and rax, 3 JE LBB0_1468 LBB0_1467: LONG $0x323cbe0f // movsx edi, byte [rdx + rsi] WORD $0x3c89; BYTE $0xb1 // mov dword [rcx + 4*rsi], edi LONG $0x01c68348 // add rsi, 1 LONG $0xffc08348 // add rax, -1 JNE LBB0_1467 LBB0_1468: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1469: LONG $0x3204be0f // movsx eax, byte [rdx + rsi] WORD $0x0489; BYTE $0xb1 // mov dword [rcx + 4*rsi], eax LONG $0x3244be0f; BYTE $0x01 // movsx eax, byte [rdx + rsi + 1] LONG $0x04b14489 // mov dword [rcx + 4*rsi + 4], eax LONG $0x3244be0f; BYTE $0x02 // movsx eax, byte [rdx + rsi + 2] LONG $0x08b14489 // mov dword [rcx + 4*rsi + 8], eax LONG $0x3244be0f; BYTE $0x03 // movsx eax, byte [rdx + rsi + 3] LONG $0x0cb14489 // mov dword [rcx + 4*rsi + 12], eax LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1469 JMP LBB0_1526 LBB0_422: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JAE LBB0_740 WORD $0xf631 // xor esi, esi JMP LBB0_943 LBB0_425: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JAE LBB0_743 WORD $0xf631 // xor esi, esi JMP LBB0_1082 LBB0_428: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JAE LBB0_746 WORD $0xf631 // xor esi, esi JMP LBB0_1087 LBB0_431: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x04f88341 // cmp r8d, 4 JAE LBB0_749 WORD $0xf631 // xor esi, esi JMP LBB0_1092 LBB0_434: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JAE LBB0_752 WORD $0xf631 // xor esi, esi JMP LBB0_1097 LBB0_437: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JB LBB0_439 LONG $0x0a048d4a // lea rax, [rdx + r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_934 LONG $0x89048d4a // lea rax, [rcx + 4*r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_934 LBB0_439: WORD $0xf631 // xor esi, esi LBB0_1474: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xc8 // mov rax, r9 LONG $0x03e08348 // and rax, 3 JE LBB0_1476 LBB0_1475: LONG $0x323cb60f // movzx edi, byte [rdx + rsi] WORD $0x3c89; BYTE $0xb1 // mov dword [rcx + 4*rsi], edi LONG $0x01c68348 // add rsi, 1 LONG $0xffc08348 // add rax, -1 JNE LBB0_1475 LBB0_1476: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1477: LONG $0x3204b60f // movzx eax, byte [rdx + rsi] WORD $0x0489; BYTE $0xb1 // mov dword [rcx + 4*rsi], eax LONG $0x3244b60f; BYTE $0x01 // movzx eax, byte [rdx + rsi + 1] LONG $0x04b14489 // mov dword [rcx + 4*rsi + 4], eax LONG $0x3244b60f; BYTE $0x02 // movzx eax, byte [rdx + rsi + 2] LONG $0x08b14489 // mov dword [rcx + 4*rsi + 8], eax LONG $0x3244b60f; BYTE $0x03 // movzx eax, byte [rdx + rsi + 3] LONG $0x0cb14489 // mov dword [rcx + 4*rsi + 12], eax LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1477 JMP LBB0_1526 LBB0_440: WORD $0x8545; BYTE $0xc0 // test r8d, r8d JLE LBB0_1526 WORD $0x8945; BYTE $0xc1 // mov r9d, r8d LONG $0x08f88341 // cmp r8d, 8 JB LBB0_442 LONG $0x8a048d4a // lea rax, [rdx + 4*r9] WORD $0x3948; BYTE $0xc8 // cmp rax, rcx JBE LBB0_937 LONG $0x89048d4a // lea rax, [rcx + 4*r9] WORD $0x3948; BYTE $0xd0 // cmp rax, rdx JBE LBB0_937 LBB0_442: WORD $0xf631 // xor esi, esi LBB0_1314: WORD $0x8949; BYTE $0xf0 // mov r8, rsi WORD $0xf749; BYTE $0xd0 // not r8 WORD $0x014d; BYTE $0xc8 // add r8, r9 WORD $0x894c; BYTE $0xcf // mov rdi, r9 LONG $0x03e78348 // and rdi, 3 JE LBB0_1316 LBB0_1315: WORD $0x048b; BYTE $0xb2 // mov eax, dword [rdx + 4*rsi] WORD $0x0489; BYTE $0xb1 // mov dword [rcx + 4*rsi], eax LONG $0x01c68348 // add rsi, 1 LONG $0xffc78348 // add rdi, -1 JNE LBB0_1315 LBB0_1316: LONG $0x03f88349 // cmp r8, 3 JB LBB0_1526 LBB0_1317: WORD $0x048b; BYTE $0xb2 // mov eax, dword [rdx + 4*rsi] WORD $0x0489; BYTE $0xb1 // mov dword [rcx + 4*rsi], eax LONG $0x04b2448b // mov eax, dword [rdx + 4*rsi + 4] LONG $0x04b14489 // mov dword [rcx + 4*rsi + 4], eax LONG $0x08b2448b // mov eax, dword [rdx + 4*rsi + 8] LONG $0x08b14489 // mov dword [rcx + 4*rsi + 8], eax LONG $0x0cb2448b // mov eax, dword [rdx + 4*rsi + 12] LONG $0x0cb14489 // mov dword [rcx + 4*rsi + 12], eax LONG $0x04c68348 // add rsi, 4 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1317 JMP LBB0_1526 LBB0_446: WORD $0xe683; BYTE $0xfc // and esi, -4 WORD $0xff31 // xor edi, edi LBB0_447: LONG $0x2c0f48f2; WORD $0xfa04 // cvttsd2si rax, qword [rdx + 8*rdi] WORD $0x0489; BYTE $0xb9 // mov dword [rcx + 4*rdi], eax LONG $0x2c0f48f2; WORD $0xfa44; BYTE $0x08 // cvttsd2si rax, qword [rdx + 8*rdi + 8] LONG $0x04b94489 // mov dword [rcx + 4*rdi + 4], eax LONG $0x2c0f48f2; WORD $0xfa44; BYTE $0x10 // cvttsd2si rax, qword [rdx + 8*rdi + 16] LONG $0x08b94489 // mov dword [rcx + 4*rdi + 8], eax LONG $0x2c0f48f2; WORD $0xfa44; BYTE $0x18 // cvttsd2si rax, qword [rdx + 8*rdi + 24] LONG $0x0cb94489 // mov dword [rcx + 4*rdi + 12], eax LONG $0x04c78348 // add rdi, 4 WORD $0x3948; BYTE $0xfe // cmp rsi, rdi JNE LBB0_447 LBB0_448: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_1526 LONG $0xb90c8d48 // lea rcx, [rcx + 4*rdi] LONG $0xfa148d48 // lea rdx, [rdx + 8*rdi] WORD $0xf631 // xor esi, esi LBB0_450: LONG $0x2c0f48f2; WORD $0xf204 // cvttsd2si rax, qword [rdx + 8*rsi] WORD $0x0489; BYTE $0xb1 // mov dword [rcx + 4*rsi], eax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf0 // cmp r8, rsi JNE LBB0_450 JMP LBB0_1526 LBB0_454: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x02e8c149 // shr r8, 2 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_944 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_456: LONG $0x046f0ff3; BYTE $0xfa // movdqu xmm0, oword [rdx + 8*rdi] LONG $0x4c6f0ff3; WORD $0x10fa // movdqu xmm1, oword [rdx + 8*rdi + 16] LONG $0xc0700f66; BYTE $0xe8 // pshufd xmm0, xmm0, 232 LONG $0xc9700f66; BYTE $0xe8 // pshufd xmm1, xmm1, 232 LONG $0xc16c0f66 // punpcklqdq xmm0, xmm1 LONG $0x047f0ff3; BYTE $0xb9 // movdqu oword [rcx + 4*rdi], xmm0 LONG $0x446f0ff3; WORD $0x20fa // movdqu xmm0, oword [rdx + 8*rdi + 32] LONG $0x4c6f0ff3; WORD $0x30fa // movdqu xmm1, oword [rdx + 8*rdi + 48] LONG $0xc0700f66; BYTE $0xe8 // pshufd xmm0, xmm0, 232 LONG $0xc9700f66; BYTE $0xe8 // pshufd xmm1, xmm1, 232 LONG $0xc16c0f66 // punpcklqdq xmm0, xmm1 LONG $0x447f0ff3; WORD $0x10b9 // movdqu oword [rcx + 4*rdi + 16], xmm0 LONG $0x08c78348 // add rdi, 8 LONG $0x02c08348 // add rax, 2 JNE LBB0_456 JMP LBB0_945 LBB0_457: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x03e8c149 // shr r8, 3 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_949 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_459: LONG $0x33380f66; WORD $0x7a04 // pmovzxwd xmm0, qword [rdx + 2*rdi] LONG $0x33380f66; WORD $0x7a4c; BYTE $0x08 // pmovzxwd xmm1, qword [rdx + 2*rdi + 8] LONG $0x047f0ff3; BYTE $0xb9 // movdqu oword [rcx + 4*rdi], xmm0 LONG $0x4c7f0ff3; WORD $0x10b9 // movdqu oword [rcx + 4*rdi + 16], xmm1 LONG $0x33380f66; WORD $0x7a44; BYTE $0x10 // pmovzxwd xmm0, qword [rdx + 2*rdi + 16] LONG $0x33380f66; WORD $0x7a4c; BYTE $0x18 // pmovzxwd xmm1, qword [rdx + 2*rdi + 24] LONG $0x447f0ff3; WORD $0x20b9 // movdqu oword [rcx + 4*rdi + 32], xmm0 LONG $0x4c7f0ff3; WORD $0x30b9 // movdqu oword [rcx + 4*rdi + 48], xmm1 LONG $0x10c78348 // add rdi, 16 LONG $0x02c08348 // add rax, 2 JNE LBB0_459 JMP LBB0_950 LBB0_460: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x03e8c149 // shr r8, 3 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_954 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_462: LONG $0x23380f66; WORD $0x7a04 // pmovsxwd xmm0, qword [rdx + 2*rdi] LONG $0x23380f66; WORD $0x7a4c; BYTE $0x08 // pmovsxwd xmm1, qword [rdx + 2*rdi + 8] LONG $0x047f0ff3; BYTE $0xb9 // movdqu oword [rcx + 4*rdi], xmm0 LONG $0x4c7f0ff3; WORD $0x10b9 // movdqu oword [rcx + 4*rdi + 16], xmm1 LONG $0x23380f66; WORD $0x7a44; BYTE $0x10 // pmovsxwd xmm0, qword [rdx + 2*rdi + 16] LONG $0x23380f66; WORD $0x7a4c; BYTE $0x18 // pmovsxwd xmm1, qword [rdx + 2*rdi + 24] LONG $0x447f0ff3; WORD $0x20b9 // movdqu oword [rcx + 4*rdi + 32], xmm0 LONG $0x4c7f0ff3; WORD $0x30b9 // movdqu oword [rcx + 4*rdi + 48], xmm1 LONG $0x10c78348 // add rdi, 16 LONG $0x02c08348 // add rax, 2 JNE LBB0_462 JMP LBB0_955 LBB0_463: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x02e8c149 // shr r8, 2 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_959 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_465: LONG $0x046f0ff3; BYTE $0xfa // movdqu xmm0, oword [rdx + 8*rdi] LONG $0x4c6f0ff3; WORD $0x10fa // movdqu xmm1, oword [rdx + 8*rdi + 16] LONG $0xc0700f66; BYTE $0xe8 // pshufd xmm0, xmm0, 232 LONG $0xc9700f66; BYTE $0xe8 // pshufd xmm1, xmm1, 232 LONG $0xc16c0f66 // punpcklqdq xmm0, xmm1 LONG $0x047f0ff3; BYTE $0xb9 // movdqu oword [rcx + 4*rdi], xmm0 LONG $0x446f0ff3; WORD $0x20fa // movdqu xmm0, oword [rdx + 8*rdi + 32] LONG $0x4c6f0ff3; WORD $0x30fa // movdqu xmm1, oword [rdx + 8*rdi + 48] LONG $0xc0700f66; BYTE $0xe8 // pshufd xmm0, xmm0, 232 LONG $0xc9700f66; BYTE $0xe8 // pshufd xmm1, xmm1, 232 LONG $0xc16c0f66 // punpcklqdq xmm0, xmm1 LONG $0x447f0ff3; WORD $0x10b9 // movdqu oword [rcx + 4*rdi + 16], xmm0 LONG $0x08c78348 // add rdi, 8 LONG $0x02c08348 // add rax, 2 JNE LBB0_465 JMP LBB0_960 LBB0_466: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x03e8c149 // shr r8, 3 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_964 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LONG $0x204d280f // movaps xmm1, oword 32[rbp] /* [rip + .LCPI0_3] */ LONG $0x3055280f // movaps xmm2, oword 48[rbp] /* [rip + .LCPI0_4] */ LBB0_468: LONG $0xba1c100f // movups xmm3, oword [rdx + 4*rdi] LONG $0xba64100f; BYTE $0x10 // movups xmm4, oword [rdx + 4*rdi + 16] WORD $0x280f; BYTE $0xc3 // movaps xmm0, xmm3 LONG $0x01c1c20f // cmpltps xmm0, xmm1 LONG $0xeb5b0ff3 // cvttps2dq xmm5, xmm3 WORD $0x5c0f; BYTE $0xd9 // subps xmm3, xmm1 LONG $0xdb5b0ff3 // cvttps2dq xmm3, xmm3 WORD $0x570f; BYTE $0xda // xorps xmm3, xmm2 LONG $0x14380f66; BYTE $0xdd // blendvps xmm3, xmm5, xmm0 WORD $0x280f; BYTE $0xc4 // movaps xmm0, xmm4 LONG $0x01c1c20f // cmpltps xmm0, xmm1 LONG $0xec5b0ff3 // cvttps2dq xmm5, xmm4 WORD $0x5c0f; BYTE $0xe1 // subps xmm4, xmm1 LONG $0xe45b0ff3 // cvttps2dq xmm4, xmm4 WORD $0x570f; BYTE $0xe2 // xorps xmm4, xmm2 LONG $0x14380f66; BYTE $0xe5 // blendvps xmm4, xmm5, xmm0 LONG $0xb91c110f // movups oword [rcx + 4*rdi], xmm3 LONG $0xb964110f; BYTE $0x10 // movups oword [rcx + 4*rdi + 16], xmm4 LONG $0xba5c100f; BYTE $0x20 // movups xmm3, oword [rdx + 4*rdi + 32] WORD $0x280f; BYTE $0xc3 // movaps xmm0, xmm3 LONG $0x01c1c20f // cmpltps xmm0, xmm1 LONG $0xe35b0ff3 // cvttps2dq xmm4, xmm3 WORD $0x5c0f; BYTE $0xd9 // subps xmm3, xmm1 LONG $0xdb5b0ff3 // cvttps2dq xmm3, xmm3 WORD $0x570f; BYTE $0xda // xorps xmm3, xmm2 LONG $0x14380f66; BYTE $0xdc // blendvps xmm3, xmm4, xmm0 LONG $0xba64100f; BYTE $0x30 // movups xmm4, oword [rdx + 4*rdi + 48] WORD $0x280f; BYTE $0xc4 // movaps xmm0, xmm4 LONG $0x01c1c20f // cmpltps xmm0, xmm1 LONG $0xec5b0ff3 // cvttps2dq xmm5, xmm4 WORD $0x5c0f; BYTE $0xe1 // subps xmm4, xmm1 LONG $0xe45b0ff3 // cvttps2dq xmm4, xmm4 WORD $0x570f; BYTE $0xe2 // xorps xmm4, xmm2 LONG $0x14380f66; BYTE $0xe5 // blendvps xmm4, xmm5, xmm0 LONG $0xb95c110f; BYTE $0x20 // movups oword [rcx + 4*rdi + 32], xmm3 LONG $0xb964110f; BYTE $0x30 // movups oword [rcx + 4*rdi + 48], xmm4 LONG $0x10c78348 // add rdi, 16 LONG $0x02c08348 // add rax, 2 JNE LBB0_468 JMP LBB0_965 LBB0_475: WORD $0xe683; BYTE $0xfc // and esi, -4 WORD $0xff31 // xor edi, edi LBB0_476: WORD $0x048b; BYTE $0xba // mov eax, dword [rdx + 4*rdi] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0x2a0f48f2; BYTE $0xc0 // cvtsi2sd xmm0, rax LONG $0x04110ff2; BYTE $0xf9 // movsd qword [rcx + 8*rdi], xmm0 LONG $0x04ba448b // mov eax, dword [rdx + 4*rdi + 4] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0x2a0f48f2; BYTE $0xc0 // cvtsi2sd xmm0, rax LONG $0x44110ff2; WORD $0x08f9 // movsd qword [rcx + 8*rdi + 8], xmm0 LONG $0x08ba448b // mov eax, dword [rdx + 4*rdi + 8] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0x2a0f48f2; BYTE $0xc0 // cvtsi2sd xmm0, rax LONG $0x44110ff2; WORD $0x10f9 // movsd qword [rcx + 8*rdi + 16], xmm0 LONG $0x0cba448b // mov eax, dword [rdx + 4*rdi + 12] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0x2a0f48f2; BYTE $0xc0 // cvtsi2sd xmm0, rax LONG $0x44110ff2; WORD $0x18f9 // movsd qword [rcx + 8*rdi + 24], xmm0 LONG $0x04c78348 // add rdi, 4 WORD $0x3948; BYTE $0xfe // cmp rsi, rdi JNE LBB0_476 LBB0_477: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_1526 LONG $0xf90c8d48 // lea rcx, [rcx + 8*rdi] LONG $0xba148d48 // lea rdx, [rdx + 4*rdi] WORD $0xf631 // xor esi, esi LBB0_479: WORD $0x048b; BYTE $0xb2 // mov eax, dword [rdx + 4*rsi] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0x2a0f48f2; BYTE $0xc0 // cvtsi2sd xmm0, rax LONG $0x04110ff2; BYTE $0xf1 // movsd qword [rcx + 8*rsi], xmm0 LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf0 // cmp r8, rsi JNE LBB0_479 JMP LBB0_1526 LBB0_483: WORD $0xe683; BYTE $0xfc // and esi, -4 WORD $0xff31 // xor edi, edi LBB0_484: LONG $0x3a04be0f // movsx eax, byte [rdx + rdi] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0xc02a0ff2 // cvtsi2sd xmm0, eax LONG $0x04110ff2; BYTE $0xf9 // movsd qword [rcx + 8*rdi], xmm0 LONG $0x3a44be0f; BYTE $0x01 // movsx eax, byte [rdx + rdi + 1] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0xc02a0ff2 // cvtsi2sd xmm0, eax LONG $0x44110ff2; WORD $0x08f9 // movsd qword [rcx + 8*rdi + 8], xmm0 LONG $0x3a44be0f; BYTE $0x02 // movsx eax, byte [rdx + rdi + 2] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0xc02a0ff2 // cvtsi2sd xmm0, eax LONG $0x44110ff2; WORD $0x10f9 // movsd qword [rcx + 8*rdi + 16], xmm0 LONG $0x3a44be0f; BYTE $0x03 // movsx eax, byte [rdx + rdi + 3] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0xc02a0ff2 // cvtsi2sd xmm0, eax LONG $0x44110ff2; WORD $0x18f9 // movsd qword [rcx + 8*rdi + 24], xmm0 LONG $0x04c78348 // add rdi, 4 WORD $0x3948; BYTE $0xfe // cmp rsi, rdi JNE LBB0_484 LBB0_485: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_1526 LONG $0xf90c8d48 // lea rcx, [rcx + 8*rdi] WORD $0x0148; BYTE $0xfa // add rdx, rdi WORD $0xf631 // xor esi, esi LBB0_487: LONG $0x3204be0f // movsx eax, byte [rdx + rsi] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0xc02a0ff2 // cvtsi2sd xmm0, eax LONG $0x04110ff2; BYTE $0xf1 // movsd qword [rcx + 8*rsi], xmm0 LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf0 // cmp r8, rsi JNE LBB0_487 JMP LBB0_1526 LBB0_488: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x02e8c149 // shr r8, 2 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_969 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LONG $0xc0ef0f66 // pxor xmm0, xmm0 LONG $0x4d6f0f66; BYTE $0x50 // movdqa xmm1, oword 80[rbp] /* [rip + .LCPI0_6] */ LONG $0x556f0f66; BYTE $0x60 // movdqa xmm2, oword 96[rbp] /* [rip + .LCPI0_7] */ LONG $0x5d280f66; BYTE $0x70 // movapd xmm3, oword 112[rbp] /* [rip + .LCPI0_8] */ LBB0_490: LONG $0x246f0ff3; BYTE $0xfa // movdqu xmm4, oword [rdx + 8*rdi] LONG $0x6c6f0ff3; WORD $0x10fa // movdqu xmm5, oword [rdx + 8*rdi + 16] LONG $0xf46f0f66 // movdqa xmm6, xmm4 LONG $0x0e3a0f66; WORD $0xccf0 // pblendw xmm6, xmm0, 204 LONG $0xf1eb0f66 // por xmm6, xmm1 LONG $0xd4730f66; BYTE $0x20 // psrlq xmm4, 32 LONG $0xe2eb0f66 // por xmm4, xmm2 LONG $0xe35c0f66 // subpd xmm4, xmm3 LONG $0xe6580f66 // addpd xmm4, xmm6 LONG $0xf56f0f66 // movdqa xmm6, xmm5 LONG $0x0e3a0f66; WORD $0xccf0 // pblendw xmm6, xmm0, 204 LONG $0xf1eb0f66 // por xmm6, xmm1 LONG $0xd5730f66; BYTE $0x20 // psrlq xmm5, 32 LONG $0xeaeb0f66 // por xmm5, xmm2 LONG $0xeb5c0f66 // subpd xmm5, xmm3 LONG $0xee580f66 // addpd xmm5, xmm6 LONG $0x24110f66; BYTE $0xf9 // movupd oword [rcx + 8*rdi], xmm4 LONG $0x6c110f66; WORD $0x10f9 // movupd oword [rcx + 8*rdi + 16], xmm5 LONG $0x646f0ff3; WORD $0x20fa // movdqu xmm4, oword [rdx + 8*rdi + 32] LONG $0x6c6f0ff3; WORD $0x30fa // movdqu xmm5, oword [rdx + 8*rdi + 48] LONG $0xf46f0f66 // movdqa xmm6, xmm4 LONG $0x0e3a0f66; WORD $0xccf0 // pblendw xmm6, xmm0, 204 LONG $0xf1eb0f66 // por xmm6, xmm1 LONG $0xd4730f66; BYTE $0x20 // psrlq xmm4, 32 LONG $0xe2eb0f66 // por xmm4, xmm2 LONG $0xe35c0f66 // subpd xmm4, xmm3 LONG $0xe6580f66 // addpd xmm4, xmm6 LONG $0xf56f0f66 // movdqa xmm6, xmm5 LONG $0x0e3a0f66; WORD $0xccf0 // pblendw xmm6, xmm0, 204 LONG $0xf1eb0f66 // por xmm6, xmm1 LONG $0xd5730f66; BYTE $0x20 // psrlq xmm5, 32 LONG $0xeaeb0f66 // por xmm5, xmm2 LONG $0xeb5c0f66 // subpd xmm5, xmm3 LONG $0xee580f66 // addpd xmm5, xmm6 LONG $0x64110f66; WORD $0x20f9 // movupd oword [rcx + 8*rdi + 32], xmm4 LONG $0x6c110f66; WORD $0x30f9 // movupd oword [rcx + 8*rdi + 48], xmm5 LONG $0x08c78348 // add rdi, 8 LONG $0x02c08348 // add rax, 2 JNE LBB0_490 JMP LBB0_970 LBB0_491: WORD $0xe683; BYTE $0xfc // and esi, -4 WORD $0xff31 // xor edi, edi LBB0_492: LONG $0x7a04b70f // movzx eax, word [rdx + 2*rdi] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0xc02a0ff2 // cvtsi2sd xmm0, eax LONG $0x04110ff2; BYTE $0xf9 // movsd qword [rcx + 8*rdi], xmm0 LONG $0x7a44b70f; BYTE $0x02 // movzx eax, word [rdx + 2*rdi + 2] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0xc02a0ff2 // cvtsi2sd xmm0, eax LONG $0x44110ff2; WORD $0x08f9 // movsd qword [rcx + 8*rdi + 8], xmm0 LONG $0x7a44b70f; BYTE $0x04 // movzx eax, word [rdx + 2*rdi + 4] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0xc02a0ff2 // cvtsi2sd xmm0, eax LONG $0x44110ff2; WORD $0x10f9 // movsd qword [rcx + 8*rdi + 16], xmm0 LONG $0x7a44b70f; BYTE $0x06 // movzx eax, word [rdx + 2*rdi + 6] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0xc02a0ff2 // cvtsi2sd xmm0, eax LONG $0x44110ff2; WORD $0x18f9 // movsd qword [rcx + 8*rdi + 24], xmm0 LONG $0x04c78348 // add rdi, 4 WORD $0x3948; BYTE $0xfe // cmp rsi, rdi JNE LBB0_492 LBB0_493: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_1526 LONG $0xf90c8d48 // lea rcx, [rcx + 8*rdi] LONG $0x7a148d48 // lea rdx, [rdx + 2*rdi] WORD $0xf631 // xor esi, esi LBB0_495: LONG $0x7204b70f // movzx eax, word [rdx + 2*rsi] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0xc02a0ff2 // cvtsi2sd xmm0, eax LONG $0x04110ff2; BYTE $0xf1 // movsd qword [rcx + 8*rsi], xmm0 LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf0 // cmp r8, rsi JNE LBB0_495 JMP LBB0_1526 LBB0_496: WORD $0xe683; BYTE $0xfc // and esi, -4 WORD $0xff31 // xor edi, edi LBB0_497: LONG $0x7a04bf0f // movsx eax, word [rdx + 2*rdi] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0xc02a0ff2 // cvtsi2sd xmm0, eax LONG $0x04110ff2; BYTE $0xf9 // movsd qword [rcx + 8*rdi], xmm0 LONG $0x7a44bf0f; BYTE $0x02 // movsx eax, word [rdx + 2*rdi + 2] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0xc02a0ff2 // cvtsi2sd xmm0, eax LONG $0x44110ff2; WORD $0x08f9 // movsd qword [rcx + 8*rdi + 8], xmm0 LONG $0x7a44bf0f; BYTE $0x04 // movsx eax, word [rdx + 2*rdi + 4] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0xc02a0ff2 // cvtsi2sd xmm0, eax LONG $0x44110ff2; WORD $0x10f9 // movsd qword [rcx + 8*rdi + 16], xmm0 LONG $0x7a44bf0f; BYTE $0x06 // movsx eax, word [rdx + 2*rdi + 6] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0xc02a0ff2 // cvtsi2sd xmm0, eax LONG $0x44110ff2; WORD $0x18f9 // movsd qword [rcx + 8*rdi + 24], xmm0 LONG $0x04c78348 // add rdi, 4 WORD $0x3948; BYTE $0xfe // cmp rsi, rdi JNE LBB0_497 LBB0_498: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_1526 LONG $0xf90c8d48 // lea rcx, [rcx + 8*rdi] LONG $0x7a148d48 // lea rdx, [rdx + 2*rdi] WORD $0xf631 // xor esi, esi LBB0_500: LONG $0x7204bf0f // movsx eax, word [rdx + 2*rsi] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0xc02a0ff2 // cvtsi2sd xmm0, eax LONG $0x04110ff2; BYTE $0xf1 // movsd qword [rcx + 8*rsi], xmm0 LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf0 // cmp r8, rsi JNE LBB0_500 JMP LBB0_1526 LBB0_501: WORD $0xe683; BYTE $0xfc // and esi, -4 WORD $0xff31 // xor edi, edi LBB0_502: WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0x2a0f48f2; WORD $0xfa04 // cvtsi2sd xmm0, qword [rdx + 8*rdi] LONG $0x04110ff2; BYTE $0xf9 // movsd qword [rcx + 8*rdi], xmm0 WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0x2a0f48f2; WORD $0xfa44; BYTE $0x08 // cvtsi2sd xmm0, qword [rdx + 8*rdi + 8] LONG $0x44110ff2; WORD $0x08f9 // movsd qword [rcx + 8*rdi + 8], xmm0 WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0x2a0f48f2; WORD $0xfa44; BYTE $0x10 // cvtsi2sd xmm0, qword [rdx + 8*rdi + 16] LONG $0x44110ff2; WORD $0x10f9 // movsd qword [rcx + 8*rdi + 16], xmm0 WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0x2a0f48f2; WORD $0xfa44; BYTE $0x18 // cvtsi2sd xmm0, qword [rdx + 8*rdi + 24] LONG $0x44110ff2; WORD $0x18f9 // movsd qword [rcx + 8*rdi + 24], xmm0 LONG $0x04c78348 // add rdi, 4 WORD $0x3948; BYTE $0xfe // cmp rsi, rdi JNE LBB0_502 LBB0_503: WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1526 LONG $0xf90c8d48 // lea rcx, [rcx + 8*rdi] LONG $0xfa148d48 // lea rdx, [rdx + 8*rdi] WORD $0xf631 // xor esi, esi LBB0_505: WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0x2a0f48f2; WORD $0xf204 // cvtsi2sd xmm0, qword [rdx + 8*rsi] LONG $0x04110ff2; BYTE $0xf1 // movsd qword [rcx + 8*rsi], xmm0 LONG $0x01c68348 // add rsi, 1 WORD $0x3948; BYTE $0xf0 // cmp rax, rsi JNE LBB0_505 JMP LBB0_1526 LBB0_506: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x02e8c149 // shr r8, 2 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_975 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_508: LONG $0xba045a0f // cvtps2pd xmm0, qword [rdx + 4*rdi] LONG $0xba4c5a0f; BYTE $0x08 // cvtps2pd xmm1, qword [rdx + 4*rdi + 8] LONG $0xf904110f // movups oword [rcx + 8*rdi], xmm0 LONG $0xf94c110f; BYTE $0x10 // movups oword [rcx + 8*rdi + 16], xmm1 LONG $0xba445a0f; BYTE $0x10 // cvtps2pd xmm0, qword [rdx + 4*rdi + 16] LONG $0xba4c5a0f; BYTE $0x18 // cvtps2pd xmm1, qword [rdx + 4*rdi + 24] LONG $0x44110f66; WORD $0x20f9 // movupd oword [rcx + 8*rdi + 32], xmm0 LONG $0x4c110f66; WORD $0x30f9 // movupd oword [rcx + 8*rdi + 48], xmm1 LONG $0x08c78348 // add rdi, 8 LONG $0x02c08348 // add rax, 2 JNE LBB0_508 JMP LBB0_976 LBB0_509: WORD $0xe683; BYTE $0xfc // and esi, -4 WORD $0xff31 // xor edi, edi LBB0_510: LONG $0x3a04b60f // movzx eax, byte [rdx + rdi] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0xc02a0ff2 // cvtsi2sd xmm0, eax LONG $0x04110ff2; BYTE $0xf9 // movsd qword [rcx + 8*rdi], xmm0 LONG $0x3a44b60f; BYTE $0x01 // movzx eax, byte [rdx + rdi + 1] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0xc02a0ff2 // cvtsi2sd xmm0, eax LONG $0x44110ff2; WORD $0x08f9 // movsd qword [rcx + 8*rdi + 8], xmm0 LONG $0x3a44b60f; BYTE $0x02 // movzx eax, byte [rdx + rdi + 2] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0xc02a0ff2 // cvtsi2sd xmm0, eax LONG $0x44110ff2; WORD $0x10f9 // movsd qword [rcx + 8*rdi + 16], xmm0 LONG $0x3a44b60f; BYTE $0x03 // movzx eax, byte [rdx + rdi + 3] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0xc02a0ff2 // cvtsi2sd xmm0, eax LONG $0x44110ff2; WORD $0x18f9 // movsd qword [rcx + 8*rdi + 24], xmm0 LONG $0x04c78348 // add rdi, 4 WORD $0x3948; BYTE $0xfe // cmp rsi, rdi JNE LBB0_510 LBB0_511: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_1526 LONG $0xf90c8d48 // lea rcx, [rcx + 8*rdi] WORD $0x0148; BYTE $0xfa // add rdx, rdi WORD $0xf631 // xor esi, esi LBB0_513: LONG $0x3204b60f // movzx eax, byte [rdx + rsi] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0xc02a0ff2 // cvtsi2sd xmm0, eax LONG $0x04110ff2; BYTE $0xf1 // movsd qword [rcx + 8*rsi], xmm0 LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf0 // cmp r8, rsi JNE LBB0_513 JMP LBB0_1526 LBB0_514: WORD $0xe683; BYTE $0xfc // and esi, -4 WORD $0xff31 // xor edi, edi LBB0_515: WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0x042a0ff2; BYTE $0xba // cvtsi2sd xmm0, dword [rdx + 4*rdi] LONG $0x04110ff2; BYTE $0xf9 // movsd qword [rcx + 8*rdi], xmm0 WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0x442a0ff2; WORD $0x04ba // cvtsi2sd xmm0, dword [rdx + 4*rdi + 4] LONG $0x44110ff2; WORD $0x08f9 // movsd qword [rcx + 8*rdi + 8], xmm0 WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0x442a0ff2; WORD $0x08ba // cvtsi2sd xmm0, dword [rdx + 4*rdi + 8] LONG $0x44110ff2; WORD $0x10f9 // movsd qword [rcx + 8*rdi + 16], xmm0 WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0x442a0ff2; WORD $0x0cba // cvtsi2sd xmm0, dword [rdx + 4*rdi + 12] LONG $0x44110ff2; WORD $0x18f9 // movsd qword [rcx + 8*rdi + 24], xmm0 LONG $0x04c78348 // add rdi, 4 WORD $0x3948; BYTE $0xfe // cmp rsi, rdi JNE LBB0_515 LBB0_516: WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1526 LONG $0xf90c8d48 // lea rcx, [rcx + 8*rdi] LONG $0xba148d48 // lea rdx, [rdx + 4*rdi] WORD $0xf631 // xor esi, esi LBB0_518: WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0x042a0ff2; BYTE $0xb2 // cvtsi2sd xmm0, dword [rdx + 4*rsi] LONG $0x04110ff2; BYTE $0xf1 // movsd qword [rcx + 8*rsi], xmm0 LONG $0x01c68348 // add rsi, 1 WORD $0x3948; BYTE $0xf0 // cmp rax, rsi JNE LBB0_518 JMP LBB0_1526 LBB0_549: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8948; BYTE $0xc7 // mov rdi, rax LONG $0x02efc148 // shr rdi, 2 LONG $0x01c78348 // add rdi, 1 WORD $0x8941; BYTE $0xf8 // mov r8d, edi LONG $0x03e08341 // and r8d, 3 LONG $0x0cf88348 // cmp rax, 12 JAE LBB0_801 WORD $0xc031 // xor eax, eax JMP LBB0_803 LBB0_551: LONG $0xfce18341 // and r9d, -4 WORD $0xc031 // xor eax, eax LONG $0x45100ff2; BYTE $0x00 // movsd xmm0, qword 0[rbp] /* [rip + .LCPI0_0] */ LBB0_552: LONG $0x0c100ff2; BYTE $0xc2 // movsd xmm1, qword [rdx + 8*rax] LONG $0xd1280f66 // movapd xmm2, xmm1 LONG $0xd05c0ff2 // subsd xmm2, xmm0 LONG $0x2c0f48f2; BYTE $0xfa // cvttsd2si rdi, xmm2 WORD $0x314c; BYTE $0xd7 // xor rdi, r10 LONG $0x2c0f48f2; BYTE $0xf1 // cvttsd2si rsi, xmm1 LONG $0xc12e0f66 // ucomisd xmm0, xmm1 LONG $0xf7460f48 // cmovbe rsi, rdi LONG $0xc1348948 // mov qword [rcx + 8*rax], rsi LONG $0x4c100ff2; WORD $0x08c2 // movsd xmm1, qword [rdx + 8*rax + 8] LONG $0xd1280f66 // movapd xmm2, xmm1 LONG $0xd05c0ff2 // subsd xmm2, xmm0 LONG $0x2c0f48f2; BYTE $0xf2 // cvttsd2si rsi, xmm2 WORD $0x314c; BYTE $0xd6 // xor rsi, r10 LONG $0x2c0f48f2; BYTE $0xf9 // cvttsd2si rdi, xmm1 LONG $0xc12e0f66 // ucomisd xmm0, xmm1 LONG $0xfe460f48 // cmovbe rdi, rsi LONG $0xc17c8948; BYTE $0x08 // mov qword [rcx + 8*rax + 8], rdi LONG $0x4c100ff2; WORD $0x10c2 // movsd xmm1, qword [rdx + 8*rax + 16] LONG $0xd1280f66 // movapd xmm2, xmm1 LONG $0xd05c0ff2 // subsd xmm2, xmm0 LONG $0x2c0f48f2; BYTE $0xf2 // cvttsd2si rsi, xmm2 WORD $0x314c; BYTE $0xd6 // xor rsi, r10 LONG $0x2c0f48f2; BYTE $0xf9 // cvttsd2si rdi, xmm1 LONG $0xc12e0f66 // ucomisd xmm0, xmm1 LONG $0xfe460f48 // cmovbe rdi, rsi LONG $0xc17c8948; BYTE $0x10 // mov qword [rcx + 8*rax + 16], rdi LONG $0x4c100ff2; WORD $0x18c2 // movsd xmm1, qword [rdx + 8*rax + 24] LONG $0xd1280f66 // movapd xmm2, xmm1 LONG $0xd05c0ff2 // subsd xmm2, xmm0 LONG $0x2c0f48f2; BYTE $0xf2 // cvttsd2si rsi, xmm2 WORD $0x314c; BYTE $0xd6 // xor rsi, r10 LONG $0x2c0f48f2; BYTE $0xf9 // cvttsd2si rdi, xmm1 LONG $0xc12e0f66 // ucomisd xmm0, xmm1 LONG $0xfe460f48 // cmovbe rdi, rsi LONG $0xc17c8948; BYTE $0x18 // mov qword [rcx + 8*rax + 24], rdi LONG $0x04c08348 // add rax, 4 WORD $0x3949; BYTE $0xc1 // cmp r9, rax JNE LBB0_552 LBB0_553: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_1526 LONG $0xc10c8d48 // lea rcx, [rcx + 8*rax] LONG $0xc2048d48 // lea rax, [rdx + 8*rax] WORD $0xd231 // xor edx, edx LONG $0x45100ff2; BYTE $0x00 // movsd xmm0, qword 0[rbp] /* [rip + .LCPI0_0] */ LBB0_555: LONG $0x0c100ff2; BYTE $0xd0 // movsd xmm1, qword [rax + 8*rdx] LONG $0xd1280f66 // movapd xmm2, xmm1 LONG $0xd05c0ff2 // subsd xmm2, xmm0 LONG $0x2c0f48f2; BYTE $0xf2 // cvttsd2si rsi, xmm2 WORD $0x314c; BYTE $0xd6 // xor rsi, r10 LONG $0x2c0f48f2; BYTE $0xf9 // cvttsd2si rdi, xmm1 LONG $0xc12e0f66 // ucomisd xmm0, xmm1 LONG $0xfe460f48 // cmovbe rdi, rsi LONG $0xd13c8948 // mov qword [rcx + 8*rdx], rdi LONG $0x01c28348 // add rdx, 1 WORD $0x3949; BYTE $0xd0 // cmp r8, rdx JNE LBB0_555 JMP LBB0_1526 LBB0_562: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8948; BYTE $0xc7 // mov rdi, rax LONG $0x02efc148 // shr rdi, 2 LONG $0x01c78348 // add rdi, 1 WORD $0x8941; BYTE $0xf8 // mov r8d, edi LONG $0x03e08341 // and r8d, 3 LONG $0x0cf88348 // cmp rax, 12 JAE LBB0_812 WORD $0xc031 // xor eax, eax JMP LBB0_814 LBB0_564: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8948; BYTE $0xc7 // mov rdi, rax LONG $0x02efc148 // shr rdi, 2 LONG $0x01c78348 // add rdi, 1 WORD $0x8941; BYTE $0xf8 // mov r8d, edi LONG $0x03e08341 // and r8d, 3 LONG $0x0cf88348 // cmp rax, 12 JAE LBB0_819 WORD $0xc031 // xor eax, eax JMP LBB0_821 LBB0_569: LONG $0xfce18341 // and r9d, -4 WORD $0xff31 // xor edi, edi QUAD $0x0000011085100ff3 // movss xmm0, dword 272[rbp] /* [rip + .LCPI0_2] */ QUAD $0x000000000000ba49; WORD $0x8000 // mov r10, -9223372036854775808 LBB0_570: LONG $0x0c100ff3; BYTE $0xba // movss xmm1, dword [rdx + 4*rdi] WORD $0x280f; BYTE $0xd1 // movaps xmm2, xmm1 LONG $0xd05c0ff3 // subss xmm2, xmm0 LONG $0x2c0f48f3; BYTE $0xf2 // cvttss2si rsi, xmm2 WORD $0x314c; BYTE $0xd6 // xor rsi, r10 LONG $0x2c0f48f3; BYTE $0xc1 // cvttss2si rax, xmm1 WORD $0x2e0f; BYTE $0xc1 // ucomiss xmm0, xmm1 LONG $0xc6460f48 // cmovbe rax, rsi LONG $0xf9048948 // mov qword [rcx + 8*rdi], rax LONG $0x4c100ff3; WORD $0x04ba // movss xmm1, dword [rdx + 4*rdi + 4] WORD $0x280f; BYTE $0xd1 // movaps xmm2, xmm1 LONG $0xd05c0ff3 // subss xmm2, xmm0 LONG $0x2c0f48f3; BYTE $0xc2 // cvttss2si rax, xmm2 WORD $0x314c; BYTE $0xd0 // xor rax, r10 LONG $0x2c0f48f3; BYTE $0xf1 // cvttss2si rsi, xmm1 WORD $0x2e0f; BYTE $0xc1 // ucomiss xmm0, xmm1 LONG $0xf0460f48 // cmovbe rsi, rax LONG $0xf9748948; BYTE $0x08 // mov qword [rcx + 8*rdi + 8], rsi LONG $0x4c100ff3; WORD $0x08ba // movss xmm1, dword [rdx + 4*rdi + 8] WORD $0x280f; BYTE $0xd1 // movaps xmm2, xmm1 LONG $0xd05c0ff3 // subss xmm2, xmm0 LONG $0x2c0f48f3; BYTE $0xc2 // cvttss2si rax, xmm2 WORD $0x314c; BYTE $0xd0 // xor rax, r10 LONG $0x2c0f48f3; BYTE $0xf1 // cvttss2si rsi, xmm1 WORD $0x2e0f; BYTE $0xc1 // ucomiss xmm0, xmm1 LONG $0xf0460f48 // cmovbe rsi, rax LONG $0xf9748948; BYTE $0x10 // mov qword [rcx + 8*rdi + 16], rsi LONG $0x4c100ff3; WORD $0x0cba // movss xmm1, dword [rdx + 4*rdi + 12] WORD $0x280f; BYTE $0xd1 // movaps xmm2, xmm1 LONG $0xd05c0ff3 // subss xmm2, xmm0 LONG $0x2c0f48f3; BYTE $0xc2 // cvttss2si rax, xmm2 WORD $0x314c; BYTE $0xd0 // xor rax, r10 LONG $0x2c0f48f3; BYTE $0xf1 // cvttss2si rsi, xmm1 WORD $0x2e0f; BYTE $0xc1 // ucomiss xmm0, xmm1 LONG $0xf0460f48 // cmovbe rsi, rax LONG $0xf9748948; BYTE $0x18 // mov qword [rcx + 8*rdi + 24], rsi LONG $0x04c78348 // add rdi, 4 WORD $0x3949; BYTE $0xf9 // cmp r9, rdi JNE LBB0_570 LBB0_571: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_1526 LONG $0xf9048d48 // lea rax, [rcx + 8*rdi] LONG $0xba0c8d48 // lea rcx, [rdx + 4*rdi] WORD $0xd231 // xor edx, edx QUAD $0x0000011085100ff3 // movss xmm0, dword 272[rbp] /* [rip + .LCPI0_2] */ QUAD $0x000000000000b949; WORD $0x8000 // mov r9, -9223372036854775808 LBB0_573: LONG $0x0c100ff3; BYTE $0x91 // movss xmm1, dword [rcx + 4*rdx] WORD $0x280f; BYTE $0xd1 // movaps xmm2, xmm1 LONG $0xd05c0ff3 // subss xmm2, xmm0 LONG $0x2c0f48f3; BYTE $0xfa // cvttss2si rdi, xmm2 WORD $0x314c; BYTE $0xcf // xor rdi, r9 LONG $0x2c0f48f3; BYTE $0xf1 // cvttss2si rsi, xmm1 WORD $0x2e0f; BYTE $0xc1 // ucomiss xmm0, xmm1 LONG $0xf7460f48 // cmovbe rsi, rdi LONG $0xd0348948 // mov qword [rax + 8*rdx], rsi LONG $0x01c28348 // add rdx, 1 WORD $0x3949; BYTE $0xd0 // cmp r8, rdx JNE LBB0_573 JMP LBB0_1526 LBB0_577: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8948; BYTE $0xc7 // mov rdi, rax LONG $0x02efc148 // shr rdi, 2 LONG $0x01c78348 // add rdi, 1 WORD $0x8941; BYTE $0xf8 // mov r8d, edi LONG $0x03e08341 // and r8d, 3 LONG $0x0cf88348 // cmp rax, 12 JAE LBB0_830 WORD $0xc031 // xor eax, eax JMP LBB0_832 LBB0_579: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x03e8c149 // shr r8, 3 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_980 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi QUAD $0x000000b0856f0f66 // movdqa xmm0, oword 176[rbp] /* [rip + .LCPI0_12] */ LBB0_581: LONG $0x0c6f0ff3; BYTE $0xba // movdqu xmm1, oword [rdx + 4*rdi] LONG $0x546f0ff3; WORD $0x10ba // movdqu xmm2, oword [rdx + 4*rdi + 16] LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 LONG $0xca6c0f66 // punpcklqdq xmm1, xmm2 LONG $0x0c7f0ff3; BYTE $0x79 // movdqu oword [rcx + 2*rdi], xmm1 LONG $0x4c6f0ff3; WORD $0x20ba // movdqu xmm1, oword [rdx + 4*rdi + 32] LONG $0x546f0ff3; WORD $0x30ba // movdqu xmm2, oword [rdx + 4*rdi + 48] LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 LONG $0xca6c0f66 // punpcklqdq xmm1, xmm2 LONG $0x4c7f0ff3; WORD $0x1079 // movdqu oword [rcx + 2*rdi + 16], xmm1 LONG $0x10c78348 // add rdi, 16 LONG $0x02c08348 // add rax, 2 JNE LBB0_581 JMP LBB0_981 LBB0_582: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x03e8c149 // shr r8, 3 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_985 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi QUAD $0x000000b0856f0f66 // movdqa xmm0, oword 176[rbp] /* [rip + .LCPI0_12] */ LBB0_584: LONG $0x0c6f0ff3; BYTE $0xba // movdqu xmm1, oword [rdx + 4*rdi] LONG $0x546f0ff3; WORD $0x10ba // movdqu xmm2, oword [rdx + 4*rdi + 16] LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 LONG $0xca6c0f66 // punpcklqdq xmm1, xmm2 LONG $0x0c7f0ff3; BYTE $0x79 // movdqu oword [rcx + 2*rdi], xmm1 LONG $0x4c6f0ff3; WORD $0x20ba // movdqu xmm1, oword [rdx + 4*rdi + 32] LONG $0x546f0ff3; WORD $0x30ba // movdqu xmm2, oword [rdx + 4*rdi + 48] LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 LONG $0xca6c0f66 // punpcklqdq xmm1, xmm2 LONG $0x4c7f0ff3; WORD $0x1079 // movdqu oword [rcx + 2*rdi + 16], xmm1 LONG $0x10c78348 // add rdi, 16 LONG $0x02c08348 // add rax, 2 JNE LBB0_584 JMP LBB0_986 LBB0_585: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x02e8c149 // shr r8, 2 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_990 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_587: LONG $0x04100f66; BYTE $0xfa // movupd xmm0, oword [rdx + 8*rdi] LONG $0x4c100f66; WORD $0x10fa // movupd xmm1, oword [rdx + 8*rdi + 16] LONG $0xc0e60f66 // cvttpd2dq xmm0, xmm0 LONG $0xc9e60f66 // cvttpd2dq xmm1, xmm1 LONG $0xc0700ff2; BYTE $0xe8 // pshuflw xmm0, xmm0, 232 LONG $0xc9700ff2; BYTE $0xe8 // pshuflw xmm1, xmm1, 232 LONG $0x047e0f66; BYTE $0x79 // movd dword [rcx + 2*rdi], xmm0 LONG $0x4c7e0f66; WORD $0x0479 // movd dword [rcx + 2*rdi + 4], xmm1 LONG $0x44100f66; WORD $0x20fa // movupd xmm0, oword [rdx + 8*rdi + 32] LONG $0x4c100f66; WORD $0x30fa // movupd xmm1, oword [rdx + 8*rdi + 48] LONG $0xc0e60f66 // cvttpd2dq xmm0, xmm0 LONG $0xc0700ff2; BYTE $0xe8 // pshuflw xmm0, xmm0, 232 LONG $0xc9e60f66 // cvttpd2dq xmm1, xmm1 LONG $0xc9700ff2; BYTE $0xe8 // pshuflw xmm1, xmm1, 232 LONG $0x447e0f66; WORD $0x0879 // movd dword [rcx + 2*rdi + 8], xmm0 LONG $0x4c7e0f66; WORD $0x0c79 // movd dword [rcx + 2*rdi + 12], xmm1 LONG $0x08c78348 // add rdi, 8 LONG $0x02c08348 // add rax, 2 JNE LBB0_587 JMP LBB0_991 LBB0_588: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x02e8c149 // shr r8, 2 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_995 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_590: LONG $0x04100f66; BYTE $0xfa // movupd xmm0, oword [rdx + 8*rdi] LONG $0x4c100f66; WORD $0x10fa // movupd xmm1, oword [rdx + 8*rdi + 16] LONG $0xc0e60f66 // cvttpd2dq xmm0, xmm0 LONG $0xc9e60f66 // cvttpd2dq xmm1, xmm1 LONG $0xc0700ff2; BYTE $0xe8 // pshuflw xmm0, xmm0, 232 LONG $0xc9700ff2; BYTE $0xe8 // pshuflw xmm1, xmm1, 232 LONG $0x047e0f66; BYTE $0x79 // movd dword [rcx + 2*rdi], xmm0 LONG $0x4c7e0f66; WORD $0x0479 // movd dword [rcx + 2*rdi + 4], xmm1 LONG $0x44100f66; WORD $0x20fa // movupd xmm0, oword [rdx + 8*rdi + 32] LONG $0x4c100f66; WORD $0x30fa // movupd xmm1, oword [rdx + 8*rdi + 48] LONG $0xc0e60f66 // cvttpd2dq xmm0, xmm0 LONG $0xc0700ff2; BYTE $0xe8 // pshuflw xmm0, xmm0, 232 LONG $0xc9e60f66 // cvttpd2dq xmm1, xmm1 LONG $0xc9700ff2; BYTE $0xe8 // pshuflw xmm1, xmm1, 232 LONG $0x447e0f66; WORD $0x0879 // movd dword [rcx + 2*rdi + 8], xmm0 LONG $0x4c7e0f66; WORD $0x0c79 // movd dword [rcx + 2*rdi + 12], xmm1 LONG $0x08c78348 // add rdi, 8 LONG $0x02c08348 // add rax, 2 JNE LBB0_590 JMP LBB0_996 LBB0_597: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x02e8c149 // shr r8, 2 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1000 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_599: LONG $0x046f0ff3; BYTE $0xfa // movdqu xmm0, oword [rdx + 8*rdi] LONG $0x4c6f0ff3; WORD $0x10fa // movdqu xmm1, oword [rdx + 8*rdi + 16] LONG $0xc0700f66; BYTE $0xe8 // pshufd xmm0, xmm0, 232 LONG $0xc0700ff2; BYTE $0xe8 // pshuflw xmm0, xmm0, 232 LONG $0xc9700f66; BYTE $0xe8 // pshufd xmm1, xmm1, 232 LONG $0xc9700ff2; BYTE $0xe8 // pshuflw xmm1, xmm1, 232 LONG $0x047e0f66; BYTE $0x79 // movd dword [rcx + 2*rdi], xmm0 LONG $0x4c7e0f66; WORD $0x0479 // movd dword [rcx + 2*rdi + 4], xmm1 LONG $0x446f0ff3; WORD $0x20fa // movdqu xmm0, oword [rdx + 8*rdi + 32] LONG $0x4c6f0ff3; WORD $0x30fa // movdqu xmm1, oword [rdx + 8*rdi + 48] LONG $0xc0700f66; BYTE $0xe8 // pshufd xmm0, xmm0, 232 LONG $0xc0700ff2; BYTE $0xe8 // pshuflw xmm0, xmm0, 232 LONG $0xc9700f66; BYTE $0xe8 // pshufd xmm1, xmm1, 232 LONG $0xc9700ff2; BYTE $0xe8 // pshuflw xmm1, xmm1, 232 LONG $0x447e0f66; WORD $0x0879 // movd dword [rcx + 2*rdi + 8], xmm0 LONG $0x4c7e0f66; WORD $0x0c79 // movd dword [rcx + 2*rdi + 12], xmm1 LONG $0x08c78348 // add rdi, 8 LONG $0x02c08348 // add rax, 2 JNE LBB0_599 JMP LBB0_1001 LBB0_600: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x02e8c149 // shr r8, 2 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1005 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_602: LONG $0x046f0ff3; BYTE $0xfa // movdqu xmm0, oword [rdx + 8*rdi] LONG $0x4c6f0ff3; WORD $0x10fa // movdqu xmm1, oword [rdx + 8*rdi + 16] LONG $0xc0700f66; BYTE $0xe8 // pshufd xmm0, xmm0, 232 LONG $0xc0700ff2; BYTE $0xe8 // pshuflw xmm0, xmm0, 232 LONG $0xc9700f66; BYTE $0xe8 // pshufd xmm1, xmm1, 232 LONG $0xc9700ff2; BYTE $0xe8 // pshuflw xmm1, xmm1, 232 LONG $0x047e0f66; BYTE $0x79 // movd dword [rcx + 2*rdi], xmm0 LONG $0x4c7e0f66; WORD $0x0479 // movd dword [rcx + 2*rdi + 4], xmm1 LONG $0x446f0ff3; WORD $0x20fa // movdqu xmm0, oword [rdx + 8*rdi + 32] LONG $0x4c6f0ff3; WORD $0x30fa // movdqu xmm1, oword [rdx + 8*rdi + 48] LONG $0xc0700f66; BYTE $0xe8 // pshufd xmm0, xmm0, 232 LONG $0xc0700ff2; BYTE $0xe8 // pshuflw xmm0, xmm0, 232 LONG $0xc9700f66; BYTE $0xe8 // pshufd xmm1, xmm1, 232 LONG $0xc9700ff2; BYTE $0xe8 // pshuflw xmm1, xmm1, 232 LONG $0x447e0f66; WORD $0x0879 // movd dword [rcx + 2*rdi + 8], xmm0 LONG $0x4c7e0f66; WORD $0x0c79 // movd dword [rcx + 2*rdi + 12], xmm1 LONG $0x08c78348 // add rdi, 8 LONG $0x02c08348 // add rax, 2 JNE LBB0_602 JMP LBB0_1006 LBB0_615: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x02e8c149 // shr r8, 2 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1010 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_617: LONG $0x046f0ff3; BYTE $0xfa // movdqu xmm0, oword [rdx + 8*rdi] LONG $0x4c6f0ff3; WORD $0x10fa // movdqu xmm1, oword [rdx + 8*rdi + 16] LONG $0xc0700f66; BYTE $0xe8 // pshufd xmm0, xmm0, 232 LONG $0xc0700ff2; BYTE $0xe8 // pshuflw xmm0, xmm0, 232 LONG $0xc9700f66; BYTE $0xe8 // pshufd xmm1, xmm1, 232 LONG $0xc9700ff2; BYTE $0xe8 // pshuflw xmm1, xmm1, 232 LONG $0x047e0f66; BYTE $0x79 // movd dword [rcx + 2*rdi], xmm0 LONG $0x4c7e0f66; WORD $0x0479 // movd dword [rcx + 2*rdi + 4], xmm1 LONG $0x446f0ff3; WORD $0x20fa // movdqu xmm0, oword [rdx + 8*rdi + 32] LONG $0x4c6f0ff3; WORD $0x30fa // movdqu xmm1, oword [rdx + 8*rdi + 48] LONG $0xc0700f66; BYTE $0xe8 // pshufd xmm0, xmm0, 232 LONG $0xc0700ff2; BYTE $0xe8 // pshuflw xmm0, xmm0, 232 LONG $0xc9700f66; BYTE $0xe8 // pshufd xmm1, xmm1, 232 LONG $0xc9700ff2; BYTE $0xe8 // pshuflw xmm1, xmm1, 232 LONG $0x447e0f66; WORD $0x0879 // movd dword [rcx + 2*rdi + 8], xmm0 LONG $0x4c7e0f66; WORD $0x0c79 // movd dword [rcx + 2*rdi + 12], xmm1 LONG $0x08c78348 // add rdi, 8 LONG $0x02c08348 // add rax, 2 JNE LBB0_617 JMP LBB0_1011 LBB0_618: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x02e8c149 // shr r8, 2 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1015 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_620: LONG $0x046f0ff3; BYTE $0xfa // movdqu xmm0, oword [rdx + 8*rdi] LONG $0x4c6f0ff3; WORD $0x10fa // movdqu xmm1, oword [rdx + 8*rdi + 16] LONG $0xc0700f66; BYTE $0xe8 // pshufd xmm0, xmm0, 232 LONG $0xc0700ff2; BYTE $0xe8 // pshuflw xmm0, xmm0, 232 LONG $0xc9700f66; BYTE $0xe8 // pshufd xmm1, xmm1, 232 LONG $0xc9700ff2; BYTE $0xe8 // pshuflw xmm1, xmm1, 232 LONG $0x047e0f66; BYTE $0x79 // movd dword [rcx + 2*rdi], xmm0 LONG $0x4c7e0f66; WORD $0x0479 // movd dword [rcx + 2*rdi + 4], xmm1 LONG $0x446f0ff3; WORD $0x20fa // movdqu xmm0, oword [rdx + 8*rdi + 32] LONG $0x4c6f0ff3; WORD $0x30fa // movdqu xmm1, oword [rdx + 8*rdi + 48] LONG $0xc0700f66; BYTE $0xe8 // pshufd xmm0, xmm0, 232 LONG $0xc0700ff2; BYTE $0xe8 // pshuflw xmm0, xmm0, 232 LONG $0xc9700f66; BYTE $0xe8 // pshufd xmm1, xmm1, 232 LONG $0xc9700ff2; BYTE $0xe8 // pshuflw xmm1, xmm1, 232 LONG $0x447e0f66; WORD $0x0879 // movd dword [rcx + 2*rdi + 8], xmm0 LONG $0x4c7e0f66; WORD $0x0c79 // movd dword [rcx + 2*rdi + 12], xmm1 LONG $0x08c78348 // add rdi, 8 LONG $0x02c08348 // add rax, 2 JNE LBB0_620 JMP LBB0_1016 LBB0_621: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x03e8c149 // shr r8, 3 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1020 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_623: LONG $0xba04100f // movups xmm0, oword [rdx + 4*rdi] LONG $0xba4c100f; BYTE $0x10 // movups xmm1, oword [rdx + 4*rdi + 16] LONG $0xc05b0ff3 // cvttps2dq xmm0, xmm0 LONG $0xc95b0ff3 // cvttps2dq xmm1, xmm1 LONG $0x2b380f66; BYTE $0xc1 // packusdw xmm0, xmm1 LONG $0x047f0ff3; BYTE $0x79 // movdqu oword [rcx + 2*rdi], xmm0 LONG $0xba44100f; BYTE $0x20 // movups xmm0, oword [rdx + 4*rdi + 32] LONG $0xba4c100f; BYTE $0x30 // movups xmm1, oword [rdx + 4*rdi + 48] LONG $0xc05b0ff3 // cvttps2dq xmm0, xmm0 LONG $0xc95b0ff3 // cvttps2dq xmm1, xmm1 LONG $0x2b380f66; BYTE $0xc1 // packusdw xmm0, xmm1 LONG $0x447f0ff3; WORD $0x1079 // movdqu oword [rcx + 2*rdi + 16], xmm0 LONG $0x10c78348 // add rdi, 16 LONG $0x02c08348 // add rax, 2 JNE LBB0_623 JMP LBB0_1021 LBB0_624: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x03e8c149 // shr r8, 3 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1025 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_626: LONG $0xba04100f // movups xmm0, oword [rdx + 4*rdi] LONG $0xba4c100f; BYTE $0x10 // movups xmm1, oword [rdx + 4*rdi + 16] LONG $0xc05b0ff3 // cvttps2dq xmm0, xmm0 LONG $0xc95b0ff3 // cvttps2dq xmm1, xmm1 LONG $0xc16b0f66 // packssdw xmm0, xmm1 LONG $0x047f0ff3; BYTE $0x79 // movdqu oword [rcx + 2*rdi], xmm0 LONG $0xba44100f; BYTE $0x20 // movups xmm0, oword [rdx + 4*rdi + 32] LONG $0xba4c100f; BYTE $0x30 // movups xmm1, oword [rdx + 4*rdi + 48] LONG $0xc05b0ff3 // cvttps2dq xmm0, xmm0 LONG $0xc95b0ff3 // cvttps2dq xmm1, xmm1 LONG $0xc16b0f66 // packssdw xmm0, xmm1 LONG $0x447f0ff3; WORD $0x1079 // movdqu oword [rcx + 2*rdi + 16], xmm0 LONG $0x10c78348 // add rdi, 16 LONG $0x02c08348 // add rax, 2 JNE LBB0_626 JMP LBB0_1026 LBB0_633: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x03e8c149 // shr r8, 3 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1030 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi QUAD $0x000000b0856f0f66 // movdqa xmm0, oword 176[rbp] /* [rip + .LCPI0_12] */ LBB0_635: LONG $0x0c6f0ff3; BYTE $0xba // movdqu xmm1, oword [rdx + 4*rdi] LONG $0x546f0ff3; WORD $0x10ba // movdqu xmm2, oword [rdx + 4*rdi + 16] LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 LONG $0xca6c0f66 // punpcklqdq xmm1, xmm2 LONG $0x0c7f0ff3; BYTE $0x79 // movdqu oword [rcx + 2*rdi], xmm1 LONG $0x4c6f0ff3; WORD $0x20ba // movdqu xmm1, oword [rdx + 4*rdi + 32] LONG $0x546f0ff3; WORD $0x30ba // movdqu xmm2, oword [rdx + 4*rdi + 48] LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 LONG $0xca6c0f66 // punpcklqdq xmm1, xmm2 LONG $0x4c7f0ff3; WORD $0x1079 // movdqu oword [rcx + 2*rdi + 16], xmm1 LONG $0x10c78348 // add rdi, 16 LONG $0x02c08348 // add rax, 2 JNE LBB0_635 JMP LBB0_1031 LBB0_636: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x03e8c149 // shr r8, 3 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1035 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi QUAD $0x000000b0856f0f66 // movdqa xmm0, oword 176[rbp] /* [rip + .LCPI0_12] */ LBB0_638: LONG $0x0c6f0ff3; BYTE $0xba // movdqu xmm1, oword [rdx + 4*rdi] LONG $0x546f0ff3; WORD $0x10ba // movdqu xmm2, oword [rdx + 4*rdi + 16] LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 LONG $0xca6c0f66 // punpcklqdq xmm1, xmm2 LONG $0x0c7f0ff3; BYTE $0x79 // movdqu oword [rcx + 2*rdi], xmm1 LONG $0x4c6f0ff3; WORD $0x20ba // movdqu xmm1, oword [rdx + 4*rdi + 32] LONG $0x546f0ff3; WORD $0x30ba // movdqu xmm2, oword [rdx + 4*rdi + 48] LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 LONG $0xca6c0f66 // punpcklqdq xmm1, xmm2 LONG $0x4c7f0ff3; WORD $0x1079 // movdqu oword [rcx + 2*rdi + 16], xmm1 LONG $0x10c78348 // add rdi, 16 LONG $0x02c08348 // add rax, 2 JNE LBB0_638 JMP LBB0_1036 LBB0_639: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8948; BYTE $0xc7 // mov rdi, rax LONG $0x02efc148 // shr rdi, 2 LONG $0x01c78348 // add rdi, 1 WORD $0x8941; BYTE $0xf8 // mov r8d, edi LONG $0x03e08341 // and r8d, 3 LONG $0x0cf88348 // cmp rax, 12 JAE LBB0_857 WORD $0xc031 // xor eax, eax JMP LBB0_859 LBB0_641: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x03e8c149 // shr r8, 3 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1040 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi QUAD $0x000000d0856f0f66 // movdqa xmm0, oword 208[rbp] /* [rip + .LCPI0_14] */ QUAD $0x000000e08d6f0f66 // movdqa xmm1, oword 224[rbp] /* [rip + .LCPI0_15] */ LONG $0xf095280f; WORD $0x0000; BYTE $0x00 // movaps xmm2, oword 240[rbp] /* [rip + .LCPI0_16] */ LBB0_643: LONG $0x1c6f0ff3; BYTE $0xba // movdqu xmm3, oword [rdx + 4*rdi] LONG $0x646f0ff3; WORD $0x10ba // movdqu xmm4, oword [rdx + 4*rdi + 16] LONG $0xeb6f0f66 // movdqa xmm5, xmm3 LONG $0x0e3a0f66; WORD $0xaae8 // pblendw xmm5, xmm0, 170 LONG $0xd3720f66; BYTE $0x10 // psrld xmm3, 16 LONG $0x0e3a0f66; WORD $0xaad9 // pblendw xmm3, xmm1, 170 WORD $0x5c0f; BYTE $0xda // subps xmm3, xmm2 WORD $0x580f; BYTE $0xdd // addps xmm3, xmm5 LONG $0xec6f0f66 // movdqa xmm5, xmm4 LONG $0x0e3a0f66; WORD $0xaae8 // pblendw xmm5, xmm0, 170 LONG $0xd4720f66; BYTE $0x10 // psrld xmm4, 16 LONG $0x0e3a0f66; WORD $0xaae1 // pblendw xmm4, xmm1, 170 WORD $0x5c0f; BYTE $0xe2 // subps xmm4, xmm2 WORD $0x580f; BYTE $0xe5 // addps xmm4, xmm5 LONG $0xb91c110f // movups oword [rcx + 4*rdi], xmm3 LONG $0xb964110f; BYTE $0x10 // movups oword [rcx + 4*rdi + 16], xmm4 LONG $0x5c6f0ff3; WORD $0x20ba // movdqu xmm3, oword [rdx + 4*rdi + 32] LONG $0x646f0ff3; WORD $0x30ba // movdqu xmm4, oword [rdx + 4*rdi + 48] LONG $0xeb6f0f66 // movdqa xmm5, xmm3 LONG $0x0e3a0f66; WORD $0xaae8 // pblendw xmm5, xmm0, 170 LONG $0xd3720f66; BYTE $0x10 // psrld xmm3, 16 LONG $0x0e3a0f66; WORD $0xaad9 // pblendw xmm3, xmm1, 170 WORD $0x5c0f; BYTE $0xda // subps xmm3, xmm2 WORD $0x580f; BYTE $0xdd // addps xmm3, xmm5 LONG $0xec6f0f66 // movdqa xmm5, xmm4 LONG $0x0e3a0f66; WORD $0xaae8 // pblendw xmm5, xmm0, 170 LONG $0xd4720f66; BYTE $0x10 // psrld xmm4, 16 LONG $0x0e3a0f66; WORD $0xaae1 // pblendw xmm4, xmm1, 170 WORD $0x5c0f; BYTE $0xe2 // subps xmm4, xmm2 WORD $0x580f; BYTE $0xe5 // addps xmm4, xmm5 LONG $0xb95c110f; BYTE $0x20 // movups oword [rcx + 4*rdi + 32], xmm3 LONG $0xb964110f; BYTE $0x30 // movups oword [rcx + 4*rdi + 48], xmm4 LONG $0x10c78348 // add rdi, 16 LONG $0x02c08348 // add rax, 2 JNE LBB0_643 JMP LBB0_1041 LBB0_644: WORD $0xe683; BYTE $0xfc // and esi, -4 WORD $0xff31 // xor edi, edi LBB0_645: LONG $0x2c0f48f2; WORD $0xfa04 // cvttsd2si rax, qword [rdx + 8*rdi] LONG $0xf9048948 // mov qword [rcx + 8*rdi], rax LONG $0x2c0f48f2; WORD $0xfa44; BYTE $0x08 // cvttsd2si rax, qword [rdx + 8*rdi + 8] LONG $0xf9448948; BYTE $0x08 // mov qword [rcx + 8*rdi + 8], rax LONG $0x2c0f48f2; WORD $0xfa44; BYTE $0x10 // cvttsd2si rax, qword [rdx + 8*rdi + 16] LONG $0xf9448948; BYTE $0x10 // mov qword [rcx + 8*rdi + 16], rax LONG $0x2c0f48f2; WORD $0xfa44; BYTE $0x18 // cvttsd2si rax, qword [rdx + 8*rdi + 24] LONG $0xf9448948; BYTE $0x18 // mov qword [rcx + 8*rdi + 24], rax LONG $0x04c78348 // add rdi, 4 WORD $0x3948; BYTE $0xfe // cmp rsi, rdi JNE LBB0_645 LBB0_646: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_1526 LONG $0xf90c8d48 // lea rcx, [rcx + 8*rdi] LONG $0xfa148d48 // lea rdx, [rdx + 8*rdi] WORD $0xf631 // xor esi, esi LBB0_648: LONG $0x2c0f48f2; WORD $0xf204 // cvttsd2si rax, qword [rdx + 8*rsi] LONG $0xf1048948 // mov qword [rcx + 8*rsi], rax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf0 // cmp r8, rsi JNE LBB0_648 JMP LBB0_1526 LBB0_649: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x02e8c149 // shr r8, 2 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1045 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_651: LONG $0x04100f66; BYTE $0xfa // movupd xmm0, oword [rdx + 8*rdi] LONG $0x4c100f66; WORD $0x10fa // movupd xmm1, oword [rdx + 8*rdi + 16] LONG $0xc05a0f66 // cvtpd2ps xmm0, xmm0 LONG $0xc95a0f66 // cvtpd2ps xmm1, xmm1 LONG $0xc1140f66 // unpcklpd xmm0, xmm1 LONG $0x04110f66; BYTE $0xb9 // movupd oword [rcx + 4*rdi], xmm0 LONG $0x44100f66; WORD $0x20fa // movupd xmm0, oword [rdx + 8*rdi + 32] LONG $0x4c100f66; WORD $0x30fa // movupd xmm1, oword [rdx + 8*rdi + 48] LONG $0xc05a0f66 // cvtpd2ps xmm0, xmm0 LONG $0xc95a0f66 // cvtpd2ps xmm1, xmm1 LONG $0xc1140f66 // unpcklpd xmm0, xmm1 LONG $0x44110f66; WORD $0x10b9 // movupd oword [rcx + 4*rdi + 16], xmm0 LONG $0x08c78348 // add rdi, 8 LONG $0x02c08348 // add rax, 2 JNE LBB0_651 JMP LBB0_1046 LBB0_661: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x02e8c149 // shr r8, 2 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1050 WORD $0x894d; BYTE $0xc2 // mov r10, r8 LONG $0xfee28349 // and r10, -2 WORD $0xf749; BYTE $0xda // neg r10 WORD $0xff31 // xor edi, edi QUAD $0x000000a0956f0f66 // movdqa xmm2, oword 160[rbp] /* [rip + .LCPI0_11] */ LBB0_663: LONG $0x046f0ff3; BYTE $0xfa // movdqu xmm0, oword [rdx + 8*rdi] LONG $0xc86f0f66 // movdqa xmm1, xmm0 LONG $0xcadb0f66 // pand xmm1, xmm2 LONG $0xd86f0f66 // movdqa xmm3, xmm0 LONG $0xd3730f66; BYTE $0x01 // psrlq xmm3, 1 LONG $0xd9eb0f66 // por xmm3, xmm1 LONG $0xe4ef0f66 // pxor xmm4, xmm4 LONG $0x37380f66; BYTE $0xe0 // pcmpgtq xmm4, xmm0 LONG $0x15380f66; BYTE $0xc3 // blendvpd xmm0, xmm3, xmm0 LONG $0x3a0f4866; WORD $0xc016; BYTE $0x01 // pextrq rax, xmm0, 1 WORD $0x570f; BYTE $0xed // xorps xmm5, xmm5 LONG $0x2a0f48f3; BYTE $0xe8 // cvtsi2ss xmm5, rax LONG $0x7e0f4866; BYTE $0xc0 // movq rax, xmm0 WORD $0x570f; BYTE $0xdb // xorps xmm3, xmm3 LONG $0x2a0f48f3; BYTE $0xd8 // cvtsi2ss xmm3, rax LONG $0x4c6f0ff3; WORD $0x10fa // movdqu xmm1, oword [rdx + 8*rdi + 16] LONG $0x213a0f66; WORD $0x1cdd // insertps xmm3, xmm5, 28 WORD $0x280f; BYTE $0xeb // movaps xmm5, xmm3 WORD $0x580f; BYTE $0xeb // addps xmm5, xmm3 LONG $0xc4700f66; BYTE $0xed // pshufd xmm0, xmm4, 237 LONG $0x14380f66; BYTE $0xdd // blendvps xmm3, xmm5, xmm0 LONG $0xc16f0f66 // movdqa xmm0, xmm1 LONG $0xc2db0f66 // pand xmm0, xmm2 LONG $0xe16f0f66 // movdqa xmm4, xmm1 LONG $0xd4730f66; BYTE $0x01 // psrlq xmm4, 1 LONG $0xe0eb0f66 // por xmm4, xmm0 WORD $0x570f; BYTE $0xed // xorps xmm5, xmm5 LONG $0x37380f66; BYTE $0xe9 // pcmpgtq xmm5, xmm1 LONG $0xc16f0f66 // movdqa xmm0, xmm1 LONG $0x15380f66; BYTE $0xcc // blendvpd xmm1, xmm4, xmm0 LONG $0x3a0f4866; WORD $0xc816; BYTE $0x01 // pextrq rax, xmm1, 1 WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0x2a0f48f3; BYTE $0xc0 // cvtsi2ss xmm0, rax LONG $0x7e0f4866; BYTE $0xc8 // movq rax, xmm1 WORD $0x570f; BYTE $0xc9 // xorps xmm1, xmm1 LONG $0x2a0f48f3; BYTE $0xc8 // cvtsi2ss xmm1, rax LONG $0x213a0f66; WORD $0x1cc8 // insertps xmm1, xmm0, 28 WORD $0x280f; BYTE $0xe1 // movaps xmm4, xmm1 WORD $0x580f; BYTE $0xe1 // addps xmm4, xmm1 LONG $0xc5700f66; BYTE $0xed // pshufd xmm0, xmm5, 237 LONG $0x14380f66; BYTE $0xcc // blendvps xmm1, xmm4, xmm0 WORD $0x160f; BYTE $0xd9 // movlhps xmm3, xmm1 LONG $0xb91c110f // movups oword [rcx + 4*rdi], xmm3 LONG $0x446f0ff3; WORD $0x20fa // movdqu xmm0, oword [rdx + 8*rdi + 32] LONG $0xc86f0f66 // movdqa xmm1, xmm0 LONG $0xcadb0f66 // pand xmm1, xmm2 LONG $0xd86f0f66 // movdqa xmm3, xmm0 LONG $0xd3730f66; BYTE $0x01 // psrlq xmm3, 1 LONG $0xd9eb0f66 // por xmm3, xmm1 WORD $0x570f; BYTE $0xe4 // xorps xmm4, xmm4 LONG $0x37380f66; BYTE $0xe0 // pcmpgtq xmm4, xmm0 LONG $0x15380f66; BYTE $0xc3 // blendvpd xmm0, xmm3, xmm0 LONG $0x3a0f4866; WORD $0xc016; BYTE $0x01 // pextrq rax, xmm0, 1 WORD $0x570f; BYTE $0xed // xorps xmm5, xmm5 LONG $0x2a0f48f3; BYTE $0xe8 // cvtsi2ss xmm5, rax LONG $0x7e0f4866; BYTE $0xc0 // movq rax, xmm0 WORD $0x570f; BYTE $0xdb // xorps xmm3, xmm3 LONG $0x2a0f48f3; BYTE $0xd8 // cvtsi2ss xmm3, rax LONG $0x4c6f0ff3; WORD $0x30fa // movdqu xmm1, oword [rdx + 8*rdi + 48] LONG $0x213a0f66; WORD $0x1cdd // insertps xmm3, xmm5, 28 WORD $0x280f; BYTE $0xeb // movaps xmm5, xmm3 WORD $0x580f; BYTE $0xeb // addps xmm5, xmm3 LONG $0xc4700f66; BYTE $0xed // pshufd xmm0, xmm4, 237 LONG $0x14380f66; BYTE $0xdd // blendvps xmm3, xmm5, xmm0 LONG $0xc16f0f66 // movdqa xmm0, xmm1 LONG $0xc2db0f66 // pand xmm0, xmm2 LONG $0xe16f0f66 // movdqa xmm4, xmm1 LONG $0xd4730f66; BYTE $0x01 // psrlq xmm4, 1 LONG $0xe0eb0f66 // por xmm4, xmm0 WORD $0x570f; BYTE $0xed // xorps xmm5, xmm5 LONG $0x37380f66; BYTE $0xe9 // pcmpgtq xmm5, xmm1 LONG $0xc16f0f66 // movdqa xmm0, xmm1 LONG $0x15380f66; BYTE $0xcc // blendvpd xmm1, xmm4, xmm0 LONG $0x3a0f4866; WORD $0xc816; BYTE $0x01 // pextrq rax, xmm1, 1 WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0x2a0f48f3; BYTE $0xc0 // cvtsi2ss xmm0, rax LONG $0x7e0f4866; BYTE $0xc8 // movq rax, xmm1 WORD $0x570f; BYTE $0xc9 // xorps xmm1, xmm1 LONG $0x2a0f48f3; BYTE $0xc8 // cvtsi2ss xmm1, rax LONG $0x213a0f66; WORD $0x1cc8 // insertps xmm1, xmm0, 28 WORD $0x280f; BYTE $0xe1 // movaps xmm4, xmm1 WORD $0x580f; BYTE $0xe1 // addps xmm4, xmm1 LONG $0xc5700f66; BYTE $0xed // pshufd xmm0, xmm5, 237 LONG $0x14380f66; BYTE $0xcc // blendvps xmm1, xmm4, xmm0 WORD $0x160f; BYTE $0xd9 // movlhps xmm3, xmm1 LONG $0xb95c110f; BYTE $0x10 // movups oword [rcx + 4*rdi + 16], xmm3 LONG $0x08c78348 // add rdi, 8 LONG $0x02c28349 // add r10, 2 JNE LBB0_663 JMP LBB0_1051 LBB0_664: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8948; BYTE $0xc7 // mov rdi, rax LONG $0x02efc148 // shr rdi, 2 LONG $0x01c78348 // add rdi, 1 WORD $0x8941; BYTE $0xf8 // mov r8d, edi LONG $0x03e08341 // and r8d, 3 LONG $0x0cf88348 // cmp rax, 12 JAE LBB0_871 WORD $0xc031 // xor eax, eax JMP LBB0_873 LBB0_666: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x03e8c149 // shr r8, 3 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1058 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_668: LONG $0x33380f66; WORD $0x7a04 // pmovzxwd xmm0, qword [rdx + 2*rdi] LONG $0x33380f66; WORD $0x7a4c; BYTE $0x08 // pmovzxwd xmm1, qword [rdx + 2*rdi + 8] WORD $0x5b0f; BYTE $0xc0 // cvtdq2ps xmm0, xmm0 WORD $0x5b0f; BYTE $0xc9 // cvtdq2ps xmm1, xmm1 LONG $0xb904110f // movups oword [rcx + 4*rdi], xmm0 LONG $0xb94c110f; BYTE $0x10 // movups oword [rcx + 4*rdi + 16], xmm1 LONG $0x33380f66; WORD $0x7a44; BYTE $0x10 // pmovzxwd xmm0, qword [rdx + 2*rdi + 16] LONG $0x33380f66; WORD $0x7a4c; BYTE $0x18 // pmovzxwd xmm1, qword [rdx + 2*rdi + 24] WORD $0x5b0f; BYTE $0xc0 // cvtdq2ps xmm0, xmm0 WORD $0x5b0f; BYTE $0xc9 // cvtdq2ps xmm1, xmm1 LONG $0xb944110f; BYTE $0x20 // movups oword [rcx + 4*rdi + 32], xmm0 LONG $0xb94c110f; BYTE $0x30 // movups oword [rcx + 4*rdi + 48], xmm1 LONG $0x10c78348 // add rdi, 16 LONG $0x02c08348 // add rax, 2 JNE LBB0_668 JMP LBB0_1059 LBB0_669: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8948; BYTE $0xc7 // mov rdi, rax LONG $0x02efc148 // shr rdi, 2 LONG $0x01c78348 // add rdi, 1 WORD $0x8941; BYTE $0xf8 // mov r8d, edi LONG $0x03e08341 // and r8d, 3 LONG $0x0cf88348 // cmp rax, 12 JAE LBB0_878 WORD $0xc031 // xor eax, eax JMP LBB0_880 LBB0_671: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x03e8c149 // shr r8, 3 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1063 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_673: LONG $0x23380f66; WORD $0x7a04 // pmovsxwd xmm0, qword [rdx + 2*rdi] LONG $0x23380f66; WORD $0x7a4c; BYTE $0x08 // pmovsxwd xmm1, qword [rdx + 2*rdi + 8] WORD $0x5b0f; BYTE $0xc0 // cvtdq2ps xmm0, xmm0 WORD $0x5b0f; BYTE $0xc9 // cvtdq2ps xmm1, xmm1 LONG $0xb904110f // movups oword [rcx + 4*rdi], xmm0 LONG $0xb94c110f; BYTE $0x10 // movups oword [rcx + 4*rdi + 16], xmm1 LONG $0x23380f66; WORD $0x7a44; BYTE $0x10 // pmovsxwd xmm0, qword [rdx + 2*rdi + 16] LONG $0x23380f66; WORD $0x7a4c; BYTE $0x18 // pmovsxwd xmm1, qword [rdx + 2*rdi + 24] WORD $0x5b0f; BYTE $0xc0 // cvtdq2ps xmm0, xmm0 WORD $0x5b0f; BYTE $0xc9 // cvtdq2ps xmm1, xmm1 LONG $0xb944110f; BYTE $0x20 // movups oword [rcx + 4*rdi + 32], xmm0 LONG $0xb94c110f; BYTE $0x30 // movups oword [rcx + 4*rdi + 48], xmm1 LONG $0x10c78348 // add rdi, 16 LONG $0x02c08348 // add rax, 2 JNE LBB0_673 JMP LBB0_1064 LBB0_677: WORD $0xe683; BYTE $0xfc // and esi, -4 WORD $0xff31 // xor edi, edi LBB0_678: WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0x2a0f48f3; WORD $0xfa04 // cvtsi2ss xmm0, qword [rdx + 8*rdi] LONG $0x04110ff3; BYTE $0xb9 // movss dword [rcx + 4*rdi], xmm0 WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0x2a0f48f3; WORD $0xfa44; BYTE $0x08 // cvtsi2ss xmm0, qword [rdx + 8*rdi + 8] LONG $0x44110ff3; WORD $0x04b9 // movss dword [rcx + 4*rdi + 4], xmm0 WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0x2a0f48f3; WORD $0xfa44; BYTE $0x10 // cvtsi2ss xmm0, qword [rdx + 8*rdi + 16] LONG $0x44110ff3; WORD $0x08b9 // movss dword [rcx + 4*rdi + 8], xmm0 WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0x2a0f48f3; WORD $0xfa44; BYTE $0x18 // cvtsi2ss xmm0, qword [rdx + 8*rdi + 24] LONG $0x44110ff3; WORD $0x0cb9 // movss dword [rcx + 4*rdi + 12], xmm0 LONG $0x04c78348 // add rdi, 4 WORD $0x3948; BYTE $0xfe // cmp rsi, rdi JNE LBB0_678 LBB0_679: WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1526 LONG $0xb90c8d48 // lea rcx, [rcx + 4*rdi] LONG $0xfa148d48 // lea rdx, [rdx + 8*rdi] WORD $0xf631 // xor esi, esi LBB0_681: WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0x2a0f48f3; WORD $0xf204 // cvtsi2ss xmm0, qword [rdx + 8*rsi] LONG $0x04110ff3; BYTE $0xb1 // movss dword [rcx + 4*rsi], xmm0 LONG $0x01c68348 // add rsi, 1 WORD $0x3948; BYTE $0xf0 // cmp rax, rsi JNE LBB0_681 JMP LBB0_1526 LBB0_682: WORD $0xe683; BYTE $0xfc // and esi, -4 WORD $0xff31 // xor edi, edi LBB0_683: LONG $0x2c0f48f3; WORD $0xba04 // cvttss2si rax, dword [rdx + 4*rdi] LONG $0xf9048948 // mov qword [rcx + 8*rdi], rax LONG $0x2c0f48f3; WORD $0xba44; BYTE $0x04 // cvttss2si rax, dword [rdx + 4*rdi + 4] LONG $0xf9448948; BYTE $0x08 // mov qword [rcx + 8*rdi + 8], rax LONG $0x2c0f48f3; WORD $0xba44; BYTE $0x08 // cvttss2si rax, dword [rdx + 4*rdi + 8] LONG $0xf9448948; BYTE $0x10 // mov qword [rcx + 8*rdi + 16], rax LONG $0x2c0f48f3; WORD $0xba44; BYTE $0x0c // cvttss2si rax, dword [rdx + 4*rdi + 12] LONG $0xf9448948; BYTE $0x18 // mov qword [rcx + 8*rdi + 24], rax LONG $0x04c78348 // add rdi, 4 WORD $0x3948; BYTE $0xfe // cmp rsi, rdi JNE LBB0_683 LBB0_684: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_1526 LONG $0xf90c8d48 // lea rcx, [rcx + 8*rdi] LONG $0xba148d48 // lea rdx, [rdx + 4*rdi] WORD $0xf631 // xor esi, esi LBB0_686: LONG $0x2c0f48f3; WORD $0xb204 // cvttss2si rax, dword [rdx + 4*rsi] LONG $0xf1048948 // mov qword [rcx + 8*rsi], rax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf0 // cmp r8, rsi JNE LBB0_686 JMP LBB0_1526 LBB0_696: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8948; BYTE $0xc7 // mov rdi, rax LONG $0x02efc148 // shr rdi, 2 LONG $0x01c78348 // add rdi, 1 WORD $0x8941; BYTE $0xf8 // mov r8d, edi LONG $0x03e08341 // and r8d, 3 LONG $0x0cf88348 // cmp rax, 12 JAE LBB0_894 WORD $0xc031 // xor eax, eax JMP LBB0_896 LBB0_698: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x03e8c149 // shr r8, 3 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1068 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_700: LONG $0xba04100f // movups xmm0, oword [rdx + 4*rdi] LONG $0xba4c100f; BYTE $0x10 // movups xmm1, oword [rdx + 4*rdi + 16] WORD $0x5b0f; BYTE $0xc0 // cvtdq2ps xmm0, xmm0 WORD $0x5b0f; BYTE $0xc9 // cvtdq2ps xmm1, xmm1 LONG $0xb904110f // movups oword [rcx + 4*rdi], xmm0 LONG $0xb94c110f; BYTE $0x10 // movups oword [rcx + 4*rdi + 16], xmm1 LONG $0xba44100f; BYTE $0x20 // movups xmm0, oword [rdx + 4*rdi + 32] LONG $0xba4c100f; BYTE $0x30 // movups xmm1, oword [rdx + 4*rdi + 48] WORD $0x5b0f; BYTE $0xc0 // cvtdq2ps xmm0, xmm0 WORD $0x5b0f; BYTE $0xc9 // cvtdq2ps xmm1, xmm1 LONG $0xb944110f; BYTE $0x20 // movups oword [rcx + 4*rdi + 32], xmm0 LONG $0xb94c110f; BYTE $0x30 // movups oword [rcx + 4*rdi + 48], xmm1 LONG $0x10c78348 // add rdi, 16 LONG $0x02c08348 // add rax, 2 JNE LBB0_700 JMP LBB0_1069 LBB0_734: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x02e8c149 // shr r8, 2 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1073 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_736: LONG $0x04100f66; BYTE $0xfa // movupd xmm0, oword [rdx + 8*rdi] LONG $0x4c100f66; WORD $0x10fa // movupd xmm1, oword [rdx + 8*rdi + 16] LONG $0xc0e60f66 // cvttpd2dq xmm0, xmm0 LONG $0xc9e60f66 // cvttpd2dq xmm1, xmm1 LONG $0xc1140f66 // unpcklpd xmm0, xmm1 LONG $0x04110f66; BYTE $0xb9 // movupd oword [rcx + 4*rdi], xmm0 LONG $0x44100f66; WORD $0x20fa // movupd xmm0, oword [rdx + 8*rdi + 32] LONG $0x4c100f66; WORD $0x30fa // movupd xmm1, oword [rdx + 8*rdi + 48] LONG $0xc0e60f66 // cvttpd2dq xmm0, xmm0 LONG $0xc9e60f66 // cvttpd2dq xmm1, xmm1 LONG $0xc1140f66 // unpcklpd xmm0, xmm1 LONG $0x44110f66; WORD $0x10b9 // movupd oword [rcx + 4*rdi + 16], xmm0 LONG $0x08c78348 // add rdi, 8 LONG $0x02c08348 // add rax, 2 JNE LBB0_736 JMP LBB0_1074 LBB0_740: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x02e8c149 // shr r8, 2 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_939 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_742: LONG $0x046f0ff3; BYTE $0xfa // movdqu xmm0, oword [rdx + 8*rdi] LONG $0x4c6f0ff3; WORD $0x10fa // movdqu xmm1, oword [rdx + 8*rdi + 16] LONG $0xc0700f66; BYTE $0xe8 // pshufd xmm0, xmm0, 232 LONG $0xc9700f66; BYTE $0xe8 // pshufd xmm1, xmm1, 232 LONG $0xc16c0f66 // punpcklqdq xmm0, xmm1 LONG $0x047f0ff3; BYTE $0xb9 // movdqu oword [rcx + 4*rdi], xmm0 LONG $0x446f0ff3; WORD $0x20fa // movdqu xmm0, oword [rdx + 8*rdi + 32] LONG $0x4c6f0ff3; WORD $0x30fa // movdqu xmm1, oword [rdx + 8*rdi + 48] LONG $0xc0700f66; BYTE $0xe8 // pshufd xmm0, xmm0, 232 LONG $0xc9700f66; BYTE $0xe8 // pshufd xmm1, xmm1, 232 LONG $0xc16c0f66 // punpcklqdq xmm0, xmm1 LONG $0x447f0ff3; WORD $0x10b9 // movdqu oword [rcx + 4*rdi + 16], xmm0 LONG $0x08c78348 // add rdi, 8 LONG $0x02c08348 // add rax, 2 JNE LBB0_742 JMP LBB0_940 LBB0_743: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x03e8c149 // shr r8, 3 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1078 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_745: LONG $0x33380f66; WORD $0x7a04 // pmovzxwd xmm0, qword [rdx + 2*rdi] LONG $0x33380f66; WORD $0x7a4c; BYTE $0x08 // pmovzxwd xmm1, qword [rdx + 2*rdi + 8] LONG $0x047f0ff3; BYTE $0xb9 // movdqu oword [rcx + 4*rdi], xmm0 LONG $0x4c7f0ff3; WORD $0x10b9 // movdqu oword [rcx + 4*rdi + 16], xmm1 LONG $0x33380f66; WORD $0x7a44; BYTE $0x10 // pmovzxwd xmm0, qword [rdx + 2*rdi + 16] LONG $0x33380f66; WORD $0x7a4c; BYTE $0x18 // pmovzxwd xmm1, qword [rdx + 2*rdi + 24] LONG $0x447f0ff3; WORD $0x20b9 // movdqu oword [rcx + 4*rdi + 32], xmm0 LONG $0x4c7f0ff3; WORD $0x30b9 // movdqu oword [rcx + 4*rdi + 48], xmm1 LONG $0x10c78348 // add rdi, 16 LONG $0x02c08348 // add rax, 2 JNE LBB0_745 JMP LBB0_1079 LBB0_746: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x03e8c149 // shr r8, 3 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1083 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_748: LONG $0x23380f66; WORD $0x7a04 // pmovsxwd xmm0, qword [rdx + 2*rdi] LONG $0x23380f66; WORD $0x7a4c; BYTE $0x08 // pmovsxwd xmm1, qword [rdx + 2*rdi + 8] LONG $0x047f0ff3; BYTE $0xb9 // movdqu oword [rcx + 4*rdi], xmm0 LONG $0x4c7f0ff3; WORD $0x10b9 // movdqu oword [rcx + 4*rdi + 16], xmm1 LONG $0x23380f66; WORD $0x7a44; BYTE $0x10 // pmovsxwd xmm0, qword [rdx + 2*rdi + 16] LONG $0x23380f66; WORD $0x7a4c; BYTE $0x18 // pmovsxwd xmm1, qword [rdx + 2*rdi + 24] LONG $0x447f0ff3; WORD $0x20b9 // movdqu oword [rcx + 4*rdi + 32], xmm0 LONG $0x4c7f0ff3; WORD $0x30b9 // movdqu oword [rcx + 4*rdi + 48], xmm1 LONG $0x10c78348 // add rdi, 16 LONG $0x02c08348 // add rax, 2 JNE LBB0_748 JMP LBB0_1084 LBB0_749: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x02e8c149 // shr r8, 2 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1088 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_751: LONG $0x046f0ff3; BYTE $0xfa // movdqu xmm0, oword [rdx + 8*rdi] LONG $0x4c6f0ff3; WORD $0x10fa // movdqu xmm1, oword [rdx + 8*rdi + 16] LONG $0xc0700f66; BYTE $0xe8 // pshufd xmm0, xmm0, 232 LONG $0xc9700f66; BYTE $0xe8 // pshufd xmm1, xmm1, 232 LONG $0xc16c0f66 // punpcklqdq xmm0, xmm1 LONG $0x047f0ff3; BYTE $0xb9 // movdqu oword [rcx + 4*rdi], xmm0 LONG $0x446f0ff3; WORD $0x20fa // movdqu xmm0, oword [rdx + 8*rdi + 32] LONG $0x4c6f0ff3; WORD $0x30fa // movdqu xmm1, oword [rdx + 8*rdi + 48] LONG $0xc0700f66; BYTE $0xe8 // pshufd xmm0, xmm0, 232 LONG $0xc9700f66; BYTE $0xe8 // pshufd xmm1, xmm1, 232 LONG $0xc16c0f66 // punpcklqdq xmm0, xmm1 LONG $0x447f0ff3; WORD $0x10b9 // movdqu oword [rcx + 4*rdi + 16], xmm0 LONG $0x08c78348 // add rdi, 8 LONG $0x02c08348 // add rax, 2 JNE LBB0_751 JMP LBB0_1089 LBB0_752: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x03e8c149 // shr r8, 3 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1093 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_754: LONG $0xba04100f // movups xmm0, oword [rdx + 4*rdi] LONG $0xba4c100f; BYTE $0x10 // movups xmm1, oword [rdx + 4*rdi + 16] LONG $0xc05b0ff3 // cvttps2dq xmm0, xmm0 LONG $0xc95b0ff3 // cvttps2dq xmm1, xmm1 LONG $0xb904110f // movups oword [rcx + 4*rdi], xmm0 LONG $0xb94c110f; BYTE $0x10 // movups oword [rcx + 4*rdi + 16], xmm1 LONG $0xba44100f; BYTE $0x20 // movups xmm0, oword [rdx + 4*rdi + 32] LONG $0xba4c100f; BYTE $0x30 // movups xmm1, oword [rdx + 4*rdi + 48] LONG $0xc05b0ff3 // cvttps2dq xmm0, xmm0 LONG $0xc95b0ff3 // cvttps2dq xmm1, xmm1 LONG $0x44110f66; WORD $0x20b9 // movupd oword [rcx + 4*rdi + 32], xmm0 LONG $0x4c110f66; WORD $0x30b9 // movupd oword [rcx + 4*rdi + 48], xmm1 LONG $0x10c78348 // add rdi, 16 LONG $0x02c08348 // add rax, 2 JNE LBB0_754 JMP LBB0_1094 LBB0_761: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8948; BYTE $0xc7 // mov rdi, rax LONG $0x03efc148 // shr rdi, 3 LONG $0x01c78348 // add rdi, 1 WORD $0x8941; BYTE $0xf8 // mov r8d, edi LONG $0x03e08341 // and r8d, 3 LONG $0x18f88348 // cmp rax, 24 JAE LBB0_1098 WORD $0xc031 // xor eax, eax JMP LBB0_1100 LBB0_763: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x03e8c149 // shr r8, 3 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1478 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_765: LONG $0x21380f66; WORD $0x3a04 // pmovsxbd xmm0, dword [rdx + rdi] LONG $0x21380f66; WORD $0x3a4c; BYTE $0x04 // pmovsxbd xmm1, dword [rdx + rdi + 4] LONG $0x047f0ff3; BYTE $0xb9 // movdqu oword [rcx + 4*rdi], xmm0 LONG $0x4c7f0ff3; WORD $0x10b9 // movdqu oword [rcx + 4*rdi + 16], xmm1 LONG $0x21380f66; WORD $0x3a44; BYTE $0x08 // pmovsxbd xmm0, dword [rdx + rdi + 8] LONG $0x21380f66; WORD $0x3a4c; BYTE $0x0c // pmovsxbd xmm1, dword [rdx + rdi + 12] LONG $0x447f0ff3; WORD $0x20b9 // movdqu oword [rcx + 4*rdi + 32], xmm0 LONG $0x4c7f0ff3; WORD $0x30b9 // movdqu oword [rcx + 4*rdi + 48], xmm1 LONG $0x10c78348 // add rdi, 16 LONG $0x02c08348 // add rax, 2 JNE LBB0_765 JMP LBB0_1479 LBB0_766: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x03e8c149 // shr r8, 3 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1486 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_768: LONG $0x31380f66; WORD $0x3a04 // pmovzxbd xmm0, dword [rdx + rdi] LONG $0x31380f66; WORD $0x3a4c; BYTE $0x04 // pmovzxbd xmm1, dword [rdx + rdi + 4] LONG $0x047f0ff3; BYTE $0xb9 // movdqu oword [rcx + 4*rdi], xmm0 LONG $0x4c7f0ff3; WORD $0x10b9 // movdqu oword [rcx + 4*rdi + 16], xmm1 LONG $0x31380f66; WORD $0x3a44; BYTE $0x08 // pmovzxbd xmm0, dword [rdx + rdi + 8] LONG $0x31380f66; WORD $0x3a4c; BYTE $0x0c // pmovzxbd xmm1, dword [rdx + rdi + 12] LONG $0x447f0ff3; WORD $0x20b9 // movdqu oword [rcx + 4*rdi + 32], xmm0 LONG $0x4c7f0ff3; WORD $0x30b9 // movdqu oword [rcx + 4*rdi + 48], xmm1 LONG $0x10c78348 // add rdi, 16 LONG $0x02c08348 // add rax, 2 JNE LBB0_768 JMP LBB0_1487 LBB0_769: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8948; BYTE $0xc7 // mov rdi, rax LONG $0x03efc148 // shr rdi, 3 LONG $0x01c78348 // add rdi, 1 WORD $0x8941; BYTE $0xf8 // mov r8d, edi LONG $0x03e08341 // and r8d, 3 LONG $0x18f88348 // cmp rax, 24 JAE LBB0_1108 WORD $0xc031 // xor eax, eax JMP LBB0_1110 LBB0_771: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8948; BYTE $0xc7 // mov rdi, rax LONG $0x02efc148 // shr rdi, 2 LONG $0x01c78348 // add rdi, 1 WORD $0x8941; BYTE $0xf8 // mov r8d, edi LONG $0x03e08341 // and r8d, 3 LONG $0x0cf88348 // cmp rax, 12 JAE LBB0_1118 WORD $0xc031 // xor eax, eax JMP LBB0_1120 LBB0_773: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x03e8c149 // shr r8, 3 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1494 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi QUAD $0x000000c0856f0f66 // movdqa xmm0, oword 192[rbp] /* [rip + .LCPI0_13] */ LBB0_775: LONG $0x0c6f0ff3; BYTE $0xba // movdqu xmm1, oword [rdx + 4*rdi] LONG $0x546f0ff3; WORD $0x10ba // movdqu xmm2, oword [rdx + 4*rdi + 16] LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 LONG $0x0c7e0f66; BYTE $0x39 // movd dword [rcx + rdi], xmm1 LONG $0x547e0f66; WORD $0x0439 // movd dword [rcx + rdi + 4], xmm2 LONG $0x4c6f0ff3; WORD $0x20ba // movdqu xmm1, oword [rdx + 4*rdi + 32] LONG $0x546f0ff3; WORD $0x30ba // movdqu xmm2, oword [rdx + 4*rdi + 48] LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 LONG $0x4c7e0f66; WORD $0x0839 // movd dword [rcx + rdi + 8], xmm1 LONG $0x547e0f66; WORD $0x0c39 // movd dword [rcx + rdi + 12], xmm2 LONG $0x10c78348 // add rdi, 16 LONG $0x02c08348 // add rax, 2 JNE LBB0_775 JMP LBB0_1495 LBB0_776: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x02e8c149 // shr r8, 2 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1502 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LONG $0x456f0f66; BYTE $0x10 // movdqa xmm0, oword 16[rbp] /* [rip + .LCPI0_1] */ LBB0_778: LONG $0x0c100f66; BYTE $0xfa // movupd xmm1, oword [rdx + 8*rdi] LONG $0x54100f66; WORD $0x10fa // movupd xmm2, oword [rdx + 8*rdi + 16] LONG $0xc9e60f66 // cvttpd2dq xmm1, xmm1 LONG $0xd2e60f66 // cvttpd2dq xmm2, xmm2 LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 LONG $0x153a0f66; WORD $0x390c; BYTE $0x00 // pextrw word [rcx + rdi], xmm1, 0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 QUAD $0x00023954153a0f66 // pextrw word [rcx + rdi + 2], xmm2, 0 LONG $0x4c100f66; WORD $0x20fa // movupd xmm1, oword [rdx + 8*rdi + 32] LONG $0x54100f66; WORD $0x30fa // movupd xmm2, oword [rdx + 8*rdi + 48] LONG $0xc9e60f66 // cvttpd2dq xmm1, xmm1 LONG $0xd2e60f66 // cvttpd2dq xmm2, xmm2 LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 QUAD $0x0004394c153a0f66 // pextrw word [rcx + rdi + 4], xmm1, 0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 QUAD $0x00063954153a0f66 // pextrw word [rcx + rdi + 6], xmm2, 0 LONG $0x08c78348 // add rdi, 8 LONG $0x02c08348 // add rax, 2 JNE LBB0_778 JMP LBB0_1503 LBB0_779: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xe0 // and esi, -32 LONG $0xe0468d48 // lea rax, [rsi - 32] WORD $0x8948; BYTE $0xc7 // mov rdi, rax LONG $0x05efc148 // shr rdi, 5 LONG $0x01c78348 // add rdi, 1 WORD $0x8941; BYTE $0xf8 // mov r8d, edi LONG $0x03e08341 // and r8d, 3 LONG $0x60f88348 // cmp rax, 96 JAE LBB0_1128 WORD $0xc031 // xor eax, eax JMP LBB0_1130 LBB0_781: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x02e8c149 // shr r8, 2 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1318 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LONG $0x456f0f66; BYTE $0x40 // movdqa xmm0, oword 64[rbp] /* [rip + .LCPI0_5] */ LBB0_783: LONG $0x0c6f0ff3; BYTE $0xfa // movdqu xmm1, oword [rdx + 8*rdi] LONG $0x546f0ff3; WORD $0x10fa // movdqu xmm2, oword [rdx + 8*rdi + 16] LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 LONG $0x153a0f66; WORD $0x390c; BYTE $0x00 // pextrw word [rcx + rdi], xmm1, 0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 QUAD $0x00023954153a0f66 // pextrw word [rcx + rdi + 2], xmm2, 0 LONG $0x4c6f0ff3; WORD $0x20fa // movdqu xmm1, oword [rdx + 8*rdi + 32] LONG $0x546f0ff3; WORD $0x30fa // movdqu xmm2, oword [rdx + 8*rdi + 48] LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 QUAD $0x0004394c153a0f66 // pextrw word [rcx + rdi + 4], xmm1, 0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 QUAD $0x00063954153a0f66 // pextrw word [rcx + rdi + 6], xmm2, 0 LONG $0x08c78348 // add rdi, 8 LONG $0x02c08348 // add rax, 2 JNE LBB0_783 JMP LBB0_1319 LBB0_784: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf0 // and esi, -16 LONG $0xf0468d48 // lea rax, [rsi - 16] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x04e8c149 // shr r8, 4 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1326 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi QUAD $0x00000100856f0f66 // movdqa xmm0, oword 256[rbp] /* [rip + .LCPI0_17] */ LBB0_786: LONG $0x0c6f0ff3; BYTE $0x7a // movdqu xmm1, oword [rdx + 2*rdi] LONG $0x546f0ff3; WORD $0x107a // movdqu xmm2, oword [rdx + 2*rdi + 16] LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 LONG $0xca6c0f66 // punpcklqdq xmm1, xmm2 LONG $0x0c7f0ff3; BYTE $0x39 // movdqu oword [rcx + rdi], xmm1 LONG $0x4c6f0ff3; WORD $0x207a // movdqu xmm1, oword [rdx + 2*rdi + 32] LONG $0x546f0ff3; WORD $0x307a // movdqu xmm2, oword [rdx + 2*rdi + 48] LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 LONG $0xca6c0f66 // punpcklqdq xmm1, xmm2 LONG $0x4c7f0ff3; WORD $0x1039 // movdqu oword [rcx + rdi + 16], xmm1 LONG $0x20c78348 // add rdi, 32 LONG $0x02c08348 // add rax, 2 JNE LBB0_786 JMP LBB0_1327 LBB0_787: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf0 // and esi, -16 LONG $0xf0468d48 // lea rax, [rsi - 16] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x04e8c149 // shr r8, 4 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1510 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi QUAD $0x00000100856f0f66 // movdqa xmm0, oword 256[rbp] /* [rip + .LCPI0_17] */ LBB0_789: LONG $0x0c6f0ff3; BYTE $0x7a // movdqu xmm1, oword [rdx + 2*rdi] LONG $0x546f0ff3; WORD $0x107a // movdqu xmm2, oword [rdx + 2*rdi + 16] LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 LONG $0xca6c0f66 // punpcklqdq xmm1, xmm2 LONG $0x0c7f0ff3; BYTE $0x39 // movdqu oword [rcx + rdi], xmm1 LONG $0x4c6f0ff3; WORD $0x207a // movdqu xmm1, oword [rdx + 2*rdi + 32] LONG $0x546f0ff3; WORD $0x307a // movdqu xmm2, oword [rdx + 2*rdi + 48] LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 LONG $0xca6c0f66 // punpcklqdq xmm1, xmm2 LONG $0x4c7f0ff3; WORD $0x1039 // movdqu oword [rcx + rdi + 16], xmm1 LONG $0x20c78348 // add rdi, 32 LONG $0x02c08348 // add rax, 2 JNE LBB0_789 JMP LBB0_1511 LBB0_790: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x02e8c149 // shr r8, 2 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1334 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LONG $0x456f0f66; BYTE $0x40 // movdqa xmm0, oword 64[rbp] /* [rip + .LCPI0_5] */ LBB0_792: LONG $0x0c6f0ff3; BYTE $0xfa // movdqu xmm1, oword [rdx + 8*rdi] LONG $0x546f0ff3; WORD $0x10fa // movdqu xmm2, oword [rdx + 8*rdi + 16] LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 LONG $0x153a0f66; WORD $0x390c; BYTE $0x00 // pextrw word [rcx + rdi], xmm1, 0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 QUAD $0x00023954153a0f66 // pextrw word [rcx + rdi + 2], xmm2, 0 LONG $0x4c6f0ff3; WORD $0x20fa // movdqu xmm1, oword [rdx + 8*rdi + 32] LONG $0x546f0ff3; WORD $0x30fa // movdqu xmm2, oword [rdx + 8*rdi + 48] LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 QUAD $0x0004394c153a0f66 // pextrw word [rcx + rdi + 4], xmm1, 0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 QUAD $0x00063954153a0f66 // pextrw word [rcx + rdi + 6], xmm2, 0 LONG $0x08c78348 // add rdi, 8 LONG $0x02c08348 // add rax, 2 JNE LBB0_792 JMP LBB0_1335 LBB0_793: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x03e8c149 // shr r8, 3 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1518 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_795: LONG $0xba04100f // movups xmm0, oword [rdx + 4*rdi] LONG $0xba4c100f; BYTE $0x10 // movups xmm1, oword [rdx + 4*rdi + 16] LONG $0xc05b0ff3 // cvttps2dq xmm0, xmm0 LONG $0xc06b0f66 // packssdw xmm0, xmm0 LONG $0xc0630f66 // packsswb xmm0, xmm0 LONG $0xc95b0ff3 // cvttps2dq xmm1, xmm1 LONG $0xc96b0f66 // packssdw xmm1, xmm1 LONG $0xc9630f66 // packsswb xmm1, xmm1 LONG $0x047e0f66; BYTE $0x39 // movd dword [rcx + rdi], xmm0 LONG $0x4c7e0f66; WORD $0x0439 // movd dword [rcx + rdi + 4], xmm1 LONG $0xba44100f; BYTE $0x20 // movups xmm0, oword [rdx + 4*rdi + 32] LONG $0xba4c100f; BYTE $0x30 // movups xmm1, oword [rdx + 4*rdi + 48] LONG $0xc05b0ff3 // cvttps2dq xmm0, xmm0 LONG $0xc06b0f66 // packssdw xmm0, xmm0 LONG $0xc0630f66 // packsswb xmm0, xmm0 LONG $0xc95b0ff3 // cvttps2dq xmm1, xmm1 LONG $0xc96b0f66 // packssdw xmm1, xmm1 LONG $0xc9630f66 // packsswb xmm1, xmm1 LONG $0x447e0f66; WORD $0x0839 // movd dword [rcx + rdi + 8], xmm0 LONG $0x4c7e0f66; WORD $0x0c39 // movd dword [rcx + rdi + 12], xmm1 LONG $0x10c78348 // add rdi, 16 LONG $0x02c08348 // add rax, 2 JNE LBB0_795 JMP LBB0_1519 LBB0_796: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xe0 // and esi, -32 LONG $0xe0468d48 // lea rax, [rsi - 32] WORD $0x8948; BYTE $0xc7 // mov rdi, rax LONG $0x05efc148 // shr rdi, 5 LONG $0x01c78348 // add rdi, 1 WORD $0x8941; BYTE $0xf8 // mov r8d, edi LONG $0x03e08341 // and r8d, 3 LONG $0x60f88348 // cmp rax, 96 JAE LBB0_1138 WORD $0xc031 // xor eax, eax JMP LBB0_1140 LBB0_798: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x03e8c149 // shr r8, 3 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1342 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi QUAD $0x000000c0856f0f66 // movdqa xmm0, oword 192[rbp] /* [rip + .LCPI0_13] */ LBB0_800: LONG $0x0c6f0ff3; BYTE $0xba // movdqu xmm1, oword [rdx + 4*rdi] LONG $0x546f0ff3; WORD $0x10ba // movdqu xmm2, oword [rdx + 4*rdi + 16] LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 LONG $0x0c7e0f66; BYTE $0x39 // movd dword [rcx + rdi], xmm1 LONG $0x547e0f66; WORD $0x0439 // movd dword [rcx + rdi + 4], xmm2 LONG $0x4c6f0ff3; WORD $0x20ba // movdqu xmm1, oword [rdx + 4*rdi + 32] LONG $0x546f0ff3; WORD $0x30ba // movdqu xmm2, oword [rdx + 4*rdi + 48] LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 LONG $0x4c7e0f66; WORD $0x0839 // movd dword [rcx + rdi + 8], xmm1 LONG $0x547e0f66; WORD $0x0c39 // movd dword [rcx + rdi + 12], xmm2 LONG $0x10c78348 // add rdi, 16 LONG $0x02c08348 // add rax, 2 JNE LBB0_800 JMP LBB0_1343 LBB0_808: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8948; BYTE $0xc7 // mov rdi, rax LONG $0x02efc148 // shr rdi, 2 LONG $0x01c78348 // add rdi, 1 WORD $0x8941; BYTE $0xf8 // mov r8d, edi LONG $0x03e08341 // and r8d, 3 LONG $0x0cf88348 // cmp rax, 12 JAE LBB0_1148 WORD $0xc031 // xor eax, eax JMP LBB0_1150 LBB0_810: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8948; BYTE $0xc7 // mov rdi, rax LONG $0x02efc148 // shr rdi, 2 LONG $0x01c78348 // add rdi, 1 WORD $0x8941; BYTE $0xf8 // mov r8d, edi LONG $0x03e08341 // and r8d, 3 LONG $0x0cf88348 // cmp rax, 12 JAE LBB0_1158 WORD $0xc031 // xor eax, eax JMP LBB0_1160 LBB0_826: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8948; BYTE $0xc7 // mov rdi, rax LONG $0x02efc148 // shr rdi, 2 LONG $0x01c78348 // add rdi, 1 WORD $0x8941; BYTE $0xf8 // mov r8d, edi LONG $0x03e08341 // and r8d, 3 LONG $0x0cf88348 // cmp rax, 12 JAE LBB0_1168 WORD $0xc031 // xor eax, eax JMP LBB0_1170 LBB0_828: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8948; BYTE $0xc7 // mov rdi, rax LONG $0x02efc148 // shr rdi, 2 LONG $0x01c78348 // add rdi, 1 WORD $0x8941; BYTE $0xf8 // mov r8d, edi LONG $0x03e08341 // and r8d, 3 LONG $0x0cf88348 // cmp rax, 12 JAE LBB0_1178 WORD $0xc031 // xor eax, eax JMP LBB0_1180 LBB0_837: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf0 // and esi, -16 LONG $0xf0468d48 // lea rax, [rsi - 16] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x04e8c149 // shr r8, 4 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1350 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_839: LONG $0x20380f66; WORD $0x3a04 // pmovsxbw xmm0, qword [rdx + rdi] LONG $0x20380f66; WORD $0x3a4c; BYTE $0x08 // pmovsxbw xmm1, qword [rdx + rdi + 8] LONG $0x047f0ff3; BYTE $0x79 // movdqu oword [rcx + 2*rdi], xmm0 LONG $0x4c7f0ff3; WORD $0x1079 // movdqu oword [rcx + 2*rdi + 16], xmm1 LONG $0x20380f66; WORD $0x3a44; BYTE $0x10 // pmovsxbw xmm0, qword [rdx + rdi + 16] LONG $0x20380f66; WORD $0x3a4c; BYTE $0x18 // pmovsxbw xmm1, qword [rdx + rdi + 24] LONG $0x447f0ff3; WORD $0x2079 // movdqu oword [rcx + 2*rdi + 32], xmm0 LONG $0x4c7f0ff3; WORD $0x3079 // movdqu oword [rcx + 2*rdi + 48], xmm1 LONG $0x20c78348 // add rdi, 32 LONG $0x02c08348 // add rax, 2 JNE LBB0_839 JMP LBB0_1351 LBB0_840: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf0 // and esi, -16 LONG $0xf0468d48 // lea rax, [rsi - 16] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x04e8c149 // shr r8, 4 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1358 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_842: LONG $0x20380f66; WORD $0x3a04 // pmovsxbw xmm0, qword [rdx + rdi] LONG $0x20380f66; WORD $0x3a4c; BYTE $0x08 // pmovsxbw xmm1, qword [rdx + rdi + 8] LONG $0x047f0ff3; BYTE $0x79 // movdqu oword [rcx + 2*rdi], xmm0 LONG $0x4c7f0ff3; WORD $0x1079 // movdqu oword [rcx + 2*rdi + 16], xmm1 LONG $0x20380f66; WORD $0x3a44; BYTE $0x10 // pmovsxbw xmm0, qword [rdx + rdi + 16] LONG $0x20380f66; WORD $0x3a4c; BYTE $0x18 // pmovsxbw xmm1, qword [rdx + rdi + 24] LONG $0x447f0ff3; WORD $0x2079 // movdqu oword [rcx + 2*rdi + 32], xmm0 LONG $0x4c7f0ff3; WORD $0x3079 // movdqu oword [rcx + 2*rdi + 48], xmm1 LONG $0x20c78348 // add rdi, 32 LONG $0x02c08348 // add rax, 2 JNE LBB0_842 JMP LBB0_1359 LBB0_843: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf0 // and esi, -16 LONG $0xf0468d48 // lea rax, [rsi - 16] WORD $0x8948; BYTE $0xc7 // mov rdi, rax LONG $0x04efc148 // shr rdi, 4 LONG $0x01c78348 // add rdi, 1 WORD $0x8941; BYTE $0xf8 // mov r8d, edi LONG $0x03e08341 // and r8d, 3 LONG $0x30f88348 // cmp rax, 48 JAE LBB0_1188 WORD $0xc031 // xor eax, eax JMP LBB0_1190 LBB0_845: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf0 // and esi, -16 LONG $0xf0468d48 // lea rax, [rsi - 16] WORD $0x8948; BYTE $0xc7 // mov rdi, rax LONG $0x04efc148 // shr rdi, 4 LONG $0x01c78348 // add rdi, 1 WORD $0x8941; BYTE $0xf8 // mov r8d, edi LONG $0x03e08341 // and r8d, 3 LONG $0x30f88348 // cmp rax, 48 JAE LBB0_1198 WORD $0xc031 // xor eax, eax JMP LBB0_1200 LBB0_847: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf0 // and esi, -16 LONG $0xf0468d48 // lea rax, [rsi - 16] WORD $0x8948; BYTE $0xc7 // mov rdi, rax LONG $0x04efc148 // shr rdi, 4 LONG $0x01c78348 // add rdi, 1 WORD $0x8941; BYTE $0xf8 // mov r8d, edi LONG $0x03e08341 // and r8d, 3 LONG $0x30f88348 // cmp rax, 48 JAE LBB0_1208 WORD $0xc031 // xor eax, eax JMP LBB0_1210 LBB0_849: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf0 // and esi, -16 LONG $0xf0468d48 // lea rax, [rsi - 16] WORD $0x8948; BYTE $0xc7 // mov rdi, rax LONG $0x04efc148 // shr rdi, 4 LONG $0x01c78348 // add rdi, 1 WORD $0x8941; BYTE $0xf8 // mov r8d, edi LONG $0x03e08341 // and r8d, 3 LONG $0x30f88348 // cmp rax, 48 JAE LBB0_1218 WORD $0xc031 // xor eax, eax JMP LBB0_1220 LBB0_851: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf0 // and esi, -16 LONG $0xf0468d48 // lea rax, [rsi - 16] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x04e8c149 // shr r8, 4 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1366 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_853: LONG $0x30380f66; WORD $0x3a04 // pmovzxbw xmm0, qword [rdx + rdi] LONG $0x30380f66; WORD $0x3a4c; BYTE $0x08 // pmovzxbw xmm1, qword [rdx + rdi + 8] LONG $0x047f0ff3; BYTE $0x79 // movdqu oword [rcx + 2*rdi], xmm0 LONG $0x4c7f0ff3; WORD $0x1079 // movdqu oword [rcx + 2*rdi + 16], xmm1 LONG $0x30380f66; WORD $0x3a44; BYTE $0x10 // pmovzxbw xmm0, qword [rdx + rdi + 16] LONG $0x30380f66; WORD $0x3a4c; BYTE $0x18 // pmovzxbw xmm1, qword [rdx + rdi + 24] LONG $0x447f0ff3; WORD $0x2079 // movdqu oword [rcx + 2*rdi + 32], xmm0 LONG $0x4c7f0ff3; WORD $0x3079 // movdqu oword [rcx + 2*rdi + 48], xmm1 LONG $0x20c78348 // add rdi, 32 LONG $0x02c08348 // add rax, 2 JNE LBB0_853 JMP LBB0_1367 LBB0_854: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf0 // and esi, -16 LONG $0xf0468d48 // lea rax, [rsi - 16] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x04e8c149 // shr r8, 4 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1374 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_856: LONG $0x30380f66; WORD $0x3a04 // pmovzxbw xmm0, qword [rdx + rdi] LONG $0x30380f66; WORD $0x3a4c; BYTE $0x08 // pmovzxbw xmm1, qword [rdx + rdi + 8] LONG $0x047f0ff3; BYTE $0x79 // movdqu oword [rcx + 2*rdi], xmm0 LONG $0x4c7f0ff3; WORD $0x1079 // movdqu oword [rcx + 2*rdi + 16], xmm1 LONG $0x30380f66; WORD $0x3a44; BYTE $0x10 // pmovzxbw xmm0, qword [rdx + rdi + 16] LONG $0x30380f66; WORD $0x3a4c; BYTE $0x18 // pmovzxbw xmm1, qword [rdx + rdi + 24] LONG $0x447f0ff3; WORD $0x2079 // movdqu oword [rcx + 2*rdi + 32], xmm0 LONG $0x4c7f0ff3; WORD $0x3079 // movdqu oword [rcx + 2*rdi + 48], xmm1 LONG $0x20c78348 // add rdi, 32 LONG $0x02c08348 // add rax, 2 JNE LBB0_856 JMP LBB0_1375 LBB0_864: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8948; BYTE $0xc7 // mov rdi, rax LONG $0x02efc148 // shr rdi, 2 LONG $0x01c78348 // add rdi, 1 WORD $0x8941; BYTE $0xf8 // mov r8d, edi LONG $0x03e08341 // and r8d, 3 LONG $0x0cf88348 // cmp rax, 12 JAE LBB0_1228 WORD $0xc031 // xor eax, eax JMP LBB0_1230 LBB0_866: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x03e8c149 // shr r8, 3 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1382 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_868: LONG $0x21380f66; WORD $0x3a04 // pmovsxbd xmm0, dword [rdx + rdi] LONG $0x21380f66; WORD $0x3a4c; BYTE $0x04 // pmovsxbd xmm1, dword [rdx + rdi + 4] WORD $0x5b0f; BYTE $0xc0 // cvtdq2ps xmm0, xmm0 WORD $0x5b0f; BYTE $0xc9 // cvtdq2ps xmm1, xmm1 LONG $0xb904110f // movups oword [rcx + 4*rdi], xmm0 LONG $0xb94c110f; BYTE $0x10 // movups oword [rcx + 4*rdi + 16], xmm1 LONG $0x21380f66; WORD $0x3a44; BYTE $0x08 // pmovsxbd xmm0, dword [rdx + rdi + 8] LONG $0x21380f66; WORD $0x3a4c; BYTE $0x0c // pmovsxbd xmm1, dword [rdx + rdi + 12] WORD $0x5b0f; BYTE $0xc0 // cvtdq2ps xmm0, xmm0 WORD $0x5b0f; BYTE $0xc9 // cvtdq2ps xmm1, xmm1 LONG $0xb944110f; BYTE $0x20 // movups oword [rcx + 4*rdi + 32], xmm0 LONG $0xb94c110f; BYTE $0x30 // movups oword [rcx + 4*rdi + 48], xmm1 LONG $0x10c78348 // add rdi, 16 LONG $0x02c08348 // add rax, 2 JNE LBB0_868 JMP LBB0_1383 LBB0_869: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8948; BYTE $0xc7 // mov rdi, rax LONG $0x02efc148 // shr rdi, 2 LONG $0x01c78348 // add rdi, 1 WORD $0x8941; BYTE $0xf8 // mov r8d, edi LONG $0x03e08341 // and r8d, 3 LONG $0x0cf88348 // cmp rax, 12 JAE LBB0_1238 WORD $0xc031 // xor eax, eax JMP LBB0_1240 LBB0_885: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8948; BYTE $0xc7 // mov rdi, rax LONG $0x02efc148 // shr rdi, 2 LONG $0x01c78348 // add rdi, 1 WORD $0x8941; BYTE $0xf8 // mov r8d, edi LONG $0x03e08341 // and r8d, 3 LONG $0x0cf88348 // cmp rax, 12 JAE LBB0_1248 WORD $0xc031 // xor eax, eax JMP LBB0_1250 LBB0_887: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8948; BYTE $0xc7 // mov rdi, rax LONG $0x03efc148 // shr rdi, 3 LONG $0x01c78348 // add rdi, 1 WORD $0x8941; BYTE $0xf8 // mov r8d, edi LONG $0x03e08341 // and r8d, 3 LONG $0x18f88348 // cmp rax, 24 JAE LBB0_1258 WORD $0xc031 // xor eax, eax JMP LBB0_1260 LBB0_889: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8948; BYTE $0xc7 // mov rdi, rax LONG $0x02efc148 // shr rdi, 2 LONG $0x01c78348 // add rdi, 1 WORD $0x8941; BYTE $0xf8 // mov r8d, edi LONG $0x03e08341 // and r8d, 3 LONG $0x0cf88348 // cmp rax, 12 JAE LBB0_1268 WORD $0xc031 // xor eax, eax JMP LBB0_1270 LBB0_891: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x03e8c149 // shr r8, 3 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1390 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_893: LONG $0x31380f66; WORD $0x3a04 // pmovzxbd xmm0, dword [rdx + rdi] LONG $0x31380f66; WORD $0x3a4c; BYTE $0x04 // pmovzxbd xmm1, dword [rdx + rdi + 4] WORD $0x5b0f; BYTE $0xc0 // cvtdq2ps xmm0, xmm0 WORD $0x5b0f; BYTE $0xc9 // cvtdq2ps xmm1, xmm1 LONG $0xb904110f // movups oword [rcx + 4*rdi], xmm0 LONG $0xb94c110f; BYTE $0x10 // movups oword [rcx + 4*rdi + 16], xmm1 LONG $0x31380f66; WORD $0x3a44; BYTE $0x08 // pmovzxbd xmm0, dword [rdx + rdi + 8] LONG $0x31380f66; WORD $0x3a4c; BYTE $0x0c // pmovzxbd xmm1, dword [rdx + rdi + 12] WORD $0x5b0f; BYTE $0xc0 // cvtdq2ps xmm0, xmm0 WORD $0x5b0f; BYTE $0xc9 // cvtdq2ps xmm1, xmm1 LONG $0xb944110f; BYTE $0x20 // movups oword [rcx + 4*rdi + 32], xmm0 LONG $0xb94c110f; BYTE $0x30 // movups oword [rcx + 4*rdi + 48], xmm1 LONG $0x10c78348 // add rdi, 16 LONG $0x02c08348 // add rax, 2 JNE LBB0_893 JMP LBB0_1391 LBB0_901: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x03e8c149 // shr r8, 3 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1398 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi QUAD $0x000000c0856f0f66 // movdqa xmm0, oword 192[rbp] /* [rip + .LCPI0_13] */ LBB0_903: LONG $0x0c6f0ff3; BYTE $0xba // movdqu xmm1, oword [rdx + 4*rdi] LONG $0x546f0ff3; WORD $0x10ba // movdqu xmm2, oword [rdx + 4*rdi + 16] LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 LONG $0x0c7e0f66; BYTE $0x39 // movd dword [rcx + rdi], xmm1 LONG $0x547e0f66; WORD $0x0439 // movd dword [rcx + rdi + 4], xmm2 LONG $0x4c6f0ff3; WORD $0x20ba // movdqu xmm1, oword [rdx + 4*rdi + 32] LONG $0x546f0ff3; WORD $0x30ba // movdqu xmm2, oword [rdx + 4*rdi + 48] LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 LONG $0x4c7e0f66; WORD $0x0839 // movd dword [rcx + rdi + 8], xmm1 LONG $0x547e0f66; WORD $0x0c39 // movd dword [rcx + rdi + 12], xmm2 LONG $0x10c78348 // add rdi, 16 LONG $0x02c08348 // add rax, 2 JNE LBB0_903 JMP LBB0_1399 LBB0_904: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x02e8c149 // shr r8, 2 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1406 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LONG $0x456f0f66; BYTE $0x10 // movdqa xmm0, oword 16[rbp] /* [rip + .LCPI0_1] */ LBB0_906: LONG $0x0c100f66; BYTE $0xfa // movupd xmm1, oword [rdx + 8*rdi] LONG $0x54100f66; WORD $0x10fa // movupd xmm2, oword [rdx + 8*rdi + 16] LONG $0xc9e60f66 // cvttpd2dq xmm1, xmm1 LONG $0xd2e60f66 // cvttpd2dq xmm2, xmm2 LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 LONG $0x153a0f66; WORD $0x390c; BYTE $0x00 // pextrw word [rcx + rdi], xmm1, 0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 QUAD $0x00023954153a0f66 // pextrw word [rcx + rdi + 2], xmm2, 0 LONG $0x4c100f66; WORD $0x20fa // movupd xmm1, oword [rdx + 8*rdi + 32] LONG $0x54100f66; WORD $0x30fa // movupd xmm2, oword [rdx + 8*rdi + 48] LONG $0xc9e60f66 // cvttpd2dq xmm1, xmm1 LONG $0xd2e60f66 // cvttpd2dq xmm2, xmm2 LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 QUAD $0x0004394c153a0f66 // pextrw word [rcx + rdi + 4], xmm1, 0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 QUAD $0x00063954153a0f66 // pextrw word [rcx + rdi + 6], xmm2, 0 LONG $0x08c78348 // add rdi, 8 LONG $0x02c08348 // add rax, 2 JNE LBB0_906 JMP LBB0_1407 LBB0_907: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xe0 // and esi, -32 LONG $0xe0468d48 // lea rax, [rsi - 32] WORD $0x8948; BYTE $0xc7 // mov rdi, rax LONG $0x05efc148 // shr rdi, 5 LONG $0x01c78348 // add rdi, 1 WORD $0x8941; BYTE $0xf8 // mov r8d, edi LONG $0x03e08341 // and r8d, 3 LONG $0x60f88348 // cmp rax, 96 JAE LBB0_1278 WORD $0xc031 // xor eax, eax JMP LBB0_1280 LBB0_909: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x02e8c149 // shr r8, 2 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1414 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LONG $0x456f0f66; BYTE $0x40 // movdqa xmm0, oword 64[rbp] /* [rip + .LCPI0_5] */ LBB0_911: LONG $0x0c6f0ff3; BYTE $0xfa // movdqu xmm1, oword [rdx + 8*rdi] LONG $0x546f0ff3; WORD $0x10fa // movdqu xmm2, oword [rdx + 8*rdi + 16] LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 LONG $0x153a0f66; WORD $0x390c; BYTE $0x00 // pextrw word [rcx + rdi], xmm1, 0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 QUAD $0x00023954153a0f66 // pextrw word [rcx + rdi + 2], xmm2, 0 LONG $0x4c6f0ff3; WORD $0x20fa // movdqu xmm1, oword [rdx + 8*rdi + 32] LONG $0x546f0ff3; WORD $0x30fa // movdqu xmm2, oword [rdx + 8*rdi + 48] LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 QUAD $0x0004394c153a0f66 // pextrw word [rcx + rdi + 4], xmm1, 0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 QUAD $0x00063954153a0f66 // pextrw word [rcx + rdi + 6], xmm2, 0 LONG $0x08c78348 // add rdi, 8 LONG $0x02c08348 // add rax, 2 JNE LBB0_911 JMP LBB0_1415 LBB0_912: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf0 // and esi, -16 LONG $0xf0468d48 // lea rax, [rsi - 16] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x04e8c149 // shr r8, 4 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1422 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi QUAD $0x00000100856f0f66 // movdqa xmm0, oword 256[rbp] /* [rip + .LCPI0_17] */ LBB0_914: LONG $0x0c6f0ff3; BYTE $0x7a // movdqu xmm1, oword [rdx + 2*rdi] LONG $0x546f0ff3; WORD $0x107a // movdqu xmm2, oword [rdx + 2*rdi + 16] LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 LONG $0xca6c0f66 // punpcklqdq xmm1, xmm2 LONG $0x0c7f0ff3; BYTE $0x39 // movdqu oword [rcx + rdi], xmm1 LONG $0x4c6f0ff3; WORD $0x207a // movdqu xmm1, oword [rdx + 2*rdi + 32] LONG $0x546f0ff3; WORD $0x307a // movdqu xmm2, oword [rdx + 2*rdi + 48] LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 LONG $0xca6c0f66 // punpcklqdq xmm1, xmm2 LONG $0x4c7f0ff3; WORD $0x1039 // movdqu oword [rcx + rdi + 16], xmm1 LONG $0x20c78348 // add rdi, 32 LONG $0x02c08348 // add rax, 2 JNE LBB0_914 JMP LBB0_1423 LBB0_915: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf0 // and esi, -16 LONG $0xf0468d48 // lea rax, [rsi - 16] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x04e8c149 // shr r8, 4 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1430 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi QUAD $0x00000100856f0f66 // movdqa xmm0, oword 256[rbp] /* [rip + .LCPI0_17] */ LBB0_917: LONG $0x0c6f0ff3; BYTE $0x7a // movdqu xmm1, oword [rdx + 2*rdi] LONG $0x546f0ff3; WORD $0x107a // movdqu xmm2, oword [rdx + 2*rdi + 16] LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 LONG $0xca6c0f66 // punpcklqdq xmm1, xmm2 LONG $0x0c7f0ff3; BYTE $0x39 // movdqu oword [rcx + rdi], xmm1 LONG $0x4c6f0ff3; WORD $0x207a // movdqu xmm1, oword [rdx + 2*rdi + 32] LONG $0x546f0ff3; WORD $0x307a // movdqu xmm2, oword [rdx + 2*rdi + 48] LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 LONG $0xca6c0f66 // punpcklqdq xmm1, xmm2 LONG $0x4c7f0ff3; WORD $0x1039 // movdqu oword [rcx + rdi + 16], xmm1 LONG $0x20c78348 // add rdi, 32 LONG $0x02c08348 // add rax, 2 JNE LBB0_917 JMP LBB0_1431 LBB0_918: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xfc // and esi, -4 LONG $0xfc468d48 // lea rax, [rsi - 4] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x02e8c149 // shr r8, 2 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1438 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LONG $0x456f0f66; BYTE $0x40 // movdqa xmm0, oword 64[rbp] /* [rip + .LCPI0_5] */ LBB0_920: LONG $0x0c6f0ff3; BYTE $0xfa // movdqu xmm1, oword [rdx + 8*rdi] LONG $0x546f0ff3; WORD $0x10fa // movdqu xmm2, oword [rdx + 8*rdi + 16] LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 LONG $0x153a0f66; WORD $0x390c; BYTE $0x00 // pextrw word [rcx + rdi], xmm1, 0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 QUAD $0x00023954153a0f66 // pextrw word [rcx + rdi + 2], xmm2, 0 LONG $0x4c6f0ff3; WORD $0x20fa // movdqu xmm1, oword [rdx + 8*rdi + 32] LONG $0x546f0ff3; WORD $0x30fa // movdqu xmm2, oword [rdx + 8*rdi + 48] LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 QUAD $0x0004394c153a0f66 // pextrw word [rcx + rdi + 4], xmm1, 0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 QUAD $0x00063954153a0f66 // pextrw word [rcx + rdi + 6], xmm2, 0 LONG $0x08c78348 // add rdi, 8 LONG $0x02c08348 // add rax, 2 JNE LBB0_920 JMP LBB0_1439 LBB0_921: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x03e8c149 // shr r8, 3 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1446 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_923: LONG $0xba04100f // movups xmm0, oword [rdx + 4*rdi] LONG $0xba4c100f; BYTE $0x10 // movups xmm1, oword [rdx + 4*rdi + 16] LONG $0xc05b0ff3 // cvttps2dq xmm0, xmm0 LONG $0x2b380f66; BYTE $0xc0 // packusdw xmm0, xmm0 LONG $0xc0670f66 // packuswb xmm0, xmm0 LONG $0xc95b0ff3 // cvttps2dq xmm1, xmm1 LONG $0x2b380f66; BYTE $0xc9 // packusdw xmm1, xmm1 LONG $0xc9670f66 // packuswb xmm1, xmm1 LONG $0x047e0f66; BYTE $0x39 // movd dword [rcx + rdi], xmm0 LONG $0x4c7e0f66; WORD $0x0439 // movd dword [rcx + rdi + 4], xmm1 LONG $0xba44100f; BYTE $0x20 // movups xmm0, oword [rdx + 4*rdi + 32] LONG $0xba4c100f; BYTE $0x30 // movups xmm1, oword [rdx + 4*rdi + 48] LONG $0xc05b0ff3 // cvttps2dq xmm0, xmm0 LONG $0x2b380f66; BYTE $0xc0 // packusdw xmm0, xmm0 LONG $0xc0670f66 // packuswb xmm0, xmm0 LONG $0xc95b0ff3 // cvttps2dq xmm1, xmm1 LONG $0x2b380f66; BYTE $0xc9 // packusdw xmm1, xmm1 LONG $0xc9670f66 // packuswb xmm1, xmm1 LONG $0x447e0f66; WORD $0x0839 // movd dword [rcx + rdi + 8], xmm0 LONG $0x4c7e0f66; WORD $0x0c39 // movd dword [rcx + rdi + 12], xmm1 LONG $0x10c78348 // add rdi, 16 LONG $0x02c08348 // add rax, 2 JNE LBB0_923 JMP LBB0_1447 LBB0_924: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xe0 // and esi, -32 LONG $0xe0468d48 // lea rax, [rsi - 32] WORD $0x8948; BYTE $0xc7 // mov rdi, rax LONG $0x05efc148 // shr rdi, 5 LONG $0x01c78348 // add rdi, 1 WORD $0x8941; BYTE $0xf8 // mov r8d, edi LONG $0x03e08341 // and r8d, 3 LONG $0x60f88348 // cmp rax, 96 JAE LBB0_1288 WORD $0xc031 // xor eax, eax JMP LBB0_1290 LBB0_926: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x03e8c149 // shr r8, 3 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1454 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi QUAD $0x000000c0856f0f66 // movdqa xmm0, oword 192[rbp] /* [rip + .LCPI0_13] */ LBB0_928: LONG $0x0c6f0ff3; BYTE $0xba // movdqu xmm1, oword [rdx + 4*rdi] LONG $0x546f0ff3; WORD $0x10ba // movdqu xmm2, oword [rdx + 4*rdi + 16] LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 LONG $0x0c7e0f66; BYTE $0x39 // movd dword [rcx + rdi], xmm1 LONG $0x547e0f66; WORD $0x0439 // movd dword [rcx + rdi + 4], xmm2 LONG $0x4c6f0ff3; WORD $0x20ba // movdqu xmm1, oword [rdx + 4*rdi + 32] LONG $0x546f0ff3; WORD $0x30ba // movdqu xmm2, oword [rdx + 4*rdi + 48] LONG $0x00380f66; BYTE $0xc8 // pshufb xmm1, xmm0 LONG $0x00380f66; BYTE $0xd0 // pshufb xmm2, xmm0 LONG $0x4c7e0f66; WORD $0x0839 // movd dword [rcx + rdi + 8], xmm1 LONG $0x547e0f66; WORD $0x0c39 // movd dword [rcx + rdi + 12], xmm2 LONG $0x10c78348 // add rdi, 16 LONG $0x02c08348 // add rax, 2 JNE LBB0_928 JMP LBB0_1455 LBB0_929: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8948; BYTE $0xc7 // mov rdi, rax LONG $0x03efc148 // shr rdi, 3 LONG $0x01c78348 // add rdi, 1 WORD $0x8941; BYTE $0xf8 // mov r8d, edi LONG $0x03e08341 // and r8d, 3 LONG $0x18f88348 // cmp rax, 24 JAE LBB0_1298 WORD $0xc031 // xor eax, eax JMP LBB0_1300 LBB0_931: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x03e8c149 // shr r8, 3 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1462 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_933: LONG $0x21380f66; WORD $0x3a04 // pmovsxbd xmm0, dword [rdx + rdi] LONG $0x21380f66; WORD $0x3a4c; BYTE $0x04 // pmovsxbd xmm1, dword [rdx + rdi + 4] LONG $0x047f0ff3; BYTE $0xb9 // movdqu oword [rcx + 4*rdi], xmm0 LONG $0x4c7f0ff3; WORD $0x10b9 // movdqu oword [rcx + 4*rdi + 16], xmm1 LONG $0x21380f66; WORD $0x3a44; BYTE $0x08 // pmovsxbd xmm0, dword [rdx + rdi + 8] LONG $0x21380f66; WORD $0x3a4c; BYTE $0x0c // pmovsxbd xmm1, dword [rdx + rdi + 12] LONG $0x447f0ff3; WORD $0x20b9 // movdqu oword [rcx + 4*rdi + 32], xmm0 LONG $0x4c7f0ff3; WORD $0x30b9 // movdqu oword [rcx + 4*rdi + 48], xmm1 LONG $0x10c78348 // add rdi, 16 LONG $0x02c08348 // add rax, 2 JNE LBB0_933 JMP LBB0_1463 LBB0_934: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8949; BYTE $0xc0 // mov r8, rax LONG $0x03e8c149 // shr r8, 3 LONG $0x01c08349 // add r8, 1 WORD $0x8548; BYTE $0xc0 // test rax, rax JE LBB0_1470 WORD $0x894c; BYTE $0xc0 // mov rax, r8 LONG $0xfee08348 // and rax, -2 WORD $0xf748; BYTE $0xd8 // neg rax WORD $0xff31 // xor edi, edi LBB0_936: LONG $0x31380f66; WORD $0x3a04 // pmovzxbd xmm0, dword [rdx + rdi] LONG $0x31380f66; WORD $0x3a4c; BYTE $0x04 // pmovzxbd xmm1, dword [rdx + rdi + 4] LONG $0x047f0ff3; BYTE $0xb9 // movdqu oword [rcx + 4*rdi], xmm0 LONG $0x4c7f0ff3; WORD $0x10b9 // movdqu oword [rcx + 4*rdi + 16], xmm1 LONG $0x31380f66; WORD $0x3a44; BYTE $0x08 // pmovzxbd xmm0, dword [rdx + rdi + 8] LONG $0x31380f66; WORD $0x3a4c; BYTE $0x0c // pmovzxbd xmm1, dword [rdx + rdi + 12] LONG $0x447f0ff3; WORD $0x20b9 // movdqu oword [rcx + 4*rdi + 32], xmm0 LONG $0x4c7f0ff3; WORD $0x30b9 // movdqu oword [rcx + 4*rdi + 48], xmm1 LONG $0x10c78348 // add rdi, 16 LONG $0x02c08348 // add rax, 2 JNE LBB0_936 JMP LBB0_1471 LBB0_937: WORD $0x8944; BYTE $0xce // mov esi, r9d WORD $0xe683; BYTE $0xf8 // and esi, -8 LONG $0xf8468d48 // lea rax, [rsi - 8] WORD $0x8948; BYTE $0xc7 // mov rdi, rax LONG $0x03efc148 // shr rdi, 3 LONG $0x01c78348 // add rdi, 1 WORD $0x8941; BYTE $0xf8 // mov r8d, edi LONG $0x03e08341 // and r8d, 3 LONG $0x18f88348 // cmp rax, 24 JAE LBB0_1308 WORD $0xc031 // xor eax, eax JMP LBB0_1310 LBB0_801: LONG $0xfce78348 // and rdi, -4 WORD $0xf748; BYTE $0xdf // neg rdi WORD $0xc031 // xor eax, eax LBB0_802: LONG $0x35380f66; WORD $0x8204 // pmovzxdq xmm0, qword [rdx + 4*rax] LONG $0x35380f66; WORD $0x824c; BYTE $0x08 // pmovzxdq xmm1, qword [rdx + 4*rax + 8] LONG $0x047f0ff3; BYTE $0xc1 // movdqu oword [rcx + 8*rax], xmm0 LONG $0x4c7f0ff3; WORD $0x10c1 // movdqu oword [rcx + 8*rax + 16], xmm1 LONG $0x35380f66; WORD $0x8244; BYTE $0x10 // pmovzxdq xmm0, qword [rdx + 4*rax + 16] LONG $0x35380f66; WORD $0x824c; BYTE $0x18 // pmovzxdq xmm1, qword [rdx + 4*rax + 24] LONG $0x447f0ff3; WORD $0x20c1 // movdqu oword [rcx + 8*rax + 32], xmm0 LONG $0x4c7f0ff3; WORD $0x30c1 // movdqu oword [rcx + 8*rax + 48], xmm1 LONG $0x35380f66; WORD $0x8244; BYTE $0x20 // pmovzxdq xmm0, qword [rdx + 4*rax + 32] LONG $0x35380f66; WORD $0x824c; BYTE $0x28 // pmovzxdq xmm1, qword [rdx + 4*rax + 40] LONG $0x447f0ff3; WORD $0x40c1 // movdqu oword [rcx + 8*rax + 64], xmm0 LONG $0x4c7f0ff3; WORD $0x50c1 // movdqu oword [rcx + 8*rax + 80], xmm1 LONG $0x35380f66; WORD $0x8244; BYTE $0x30 // pmovzxdq xmm0, qword [rdx + 4*rax + 48] LONG $0x35380f66; WORD $0x824c; BYTE $0x38 // pmovzxdq xmm1, qword [rdx + 4*rax + 56] LONG $0x447f0ff3; WORD $0x60c1 // movdqu oword [rcx + 8*rax + 96], xmm0 LONG $0x4c7f0ff3; WORD $0x70c1 // movdqu oword [rcx + 8*rax + 112], xmm1 LONG $0x10c08348 // add rax, 16 LONG $0x04c78348 // add rdi, 4 JNE LBB0_802 LBB0_803: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_806 QUAD $0x0000000885048d48 // lea rax, [4*rax + 8] WORD $0xf749; BYTE $0xd8 // neg r8 LBB0_805: LONG $0x35380f66; WORD $0x0244; BYTE $0xf8 // pmovzxdq xmm0, qword [rdx + rax - 8] LONG $0x35380f66; WORD $0x020c // pmovzxdq xmm1, qword [rdx + rax] LONG $0x447f0ff3; WORD $0xf041 // movdqu oword [rcx + 2*rax - 16], xmm0 LONG $0x0c7f0ff3; BYTE $0x41 // movdqu oword [rcx + 2*rax], xmm1 LONG $0x10c08348 // add rax, 16 WORD $0xff49; BYTE $0xc0 // inc r8 JNE LBB0_805 LBB0_806: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_807: WORD $0x048b; BYTE $0xb2 // mov eax, dword [rdx + 4*rsi] LONG $0xf1048948 // mov qword [rcx + 8*rsi], rax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_807 JMP LBB0_1526 LBB0_812: LONG $0xfce78348 // and rdi, -4 WORD $0xf748; BYTE $0xdf // neg rdi WORD $0xc031 // xor eax, eax LBB0_813: LONG $0x34380f66; WORD $0x4204 // pmovzxwq xmm0, dword [rdx + 2*rax] LONG $0x34380f66; WORD $0x424c; BYTE $0x04 // pmovzxwq xmm1, dword [rdx + 2*rax + 4] LONG $0x047f0ff3; BYTE $0xc1 // movdqu oword [rcx + 8*rax], xmm0 LONG $0x4c7f0ff3; WORD $0x10c1 // movdqu oword [rcx + 8*rax + 16], xmm1 LONG $0x34380f66; WORD $0x4244; BYTE $0x08 // pmovzxwq xmm0, dword [rdx + 2*rax + 8] LONG $0x34380f66; WORD $0x424c; BYTE $0x0c // pmovzxwq xmm1, dword [rdx + 2*rax + 12] LONG $0x447f0ff3; WORD $0x20c1 // movdqu oword [rcx + 8*rax + 32], xmm0 LONG $0x4c7f0ff3; WORD $0x30c1 // movdqu oword [rcx + 8*rax + 48], xmm1 LONG $0x34380f66; WORD $0x4244; BYTE $0x10 // pmovzxwq xmm0, dword [rdx + 2*rax + 16] LONG $0x34380f66; WORD $0x424c; BYTE $0x14 // pmovzxwq xmm1, dword [rdx + 2*rax + 20] LONG $0x447f0ff3; WORD $0x40c1 // movdqu oword [rcx + 8*rax + 64], xmm0 LONG $0x4c7f0ff3; WORD $0x50c1 // movdqu oword [rcx + 8*rax + 80], xmm1 LONG $0x34380f66; WORD $0x4244; BYTE $0x18 // pmovzxwq xmm0, dword [rdx + 2*rax + 24] LONG $0x34380f66; WORD $0x424c; BYTE $0x1c // pmovzxwq xmm1, dword [rdx + 2*rax + 28] LONG $0x447f0ff3; WORD $0x60c1 // movdqu oword [rcx + 8*rax + 96], xmm0 LONG $0x4c7f0ff3; WORD $0x70c1 // movdqu oword [rcx + 8*rax + 112], xmm1 LONG $0x10c08348 // add rax, 16 LONG $0x04c78348 // add rdi, 4 JNE LBB0_813 LBB0_814: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_817 LONG $0xc13c8d48 // lea rdi, [rcx + 8*rax] LONG $0x10c78348 // add rdi, 16 LONG $0x42148d4c // lea r10, [rdx + 2*rax] LONG $0x04c28349 // add r10, 4 WORD $0xc031 // xor eax, eax LBB0_816: QUAD $0xfcc24434380f4166 // pmovzxwq xmm0, dword [r10 + 8*rax - 4] LONG $0x380f4166; WORD $0x0c34; BYTE $0xc2 // pmovzxwq xmm1, dword [r10 + 8*rax] LONG $0x477f0ff3; BYTE $0xf0 // movdqu oword [rdi - 16], xmm0 LONG $0x0f7f0ff3 // movdqu oword [rdi], xmm1 LONG $0x20c78348 // add rdi, 32 LONG $0x01c08348 // add rax, 1 WORD $0x3949; BYTE $0xc0 // cmp r8, rax JNE LBB0_816 LBB0_817: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_818: LONG $0x7204b70f // movzx eax, word [rdx + 2*rsi] LONG $0xf1048948 // mov qword [rcx + 8*rsi], rax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_818 JMP LBB0_1526 LBB0_819: LONG $0xfce78348 // and rdi, -4 WORD $0xf748; BYTE $0xdf // neg rdi WORD $0xc031 // xor eax, eax LBB0_820: LONG $0x24380f66; WORD $0x4204 // pmovsxwq xmm0, dword [rdx + 2*rax] LONG $0x24380f66; WORD $0x424c; BYTE $0x04 // pmovsxwq xmm1, dword [rdx + 2*rax + 4] LONG $0x047f0ff3; BYTE $0xc1 // movdqu oword [rcx + 8*rax], xmm0 LONG $0x4c7f0ff3; WORD $0x10c1 // movdqu oword [rcx + 8*rax + 16], xmm1 LONG $0x24380f66; WORD $0x4244; BYTE $0x08 // pmovsxwq xmm0, dword [rdx + 2*rax + 8] LONG $0x24380f66; WORD $0x424c; BYTE $0x0c // pmovsxwq xmm1, dword [rdx + 2*rax + 12] LONG $0x447f0ff3; WORD $0x20c1 // movdqu oword [rcx + 8*rax + 32], xmm0 LONG $0x4c7f0ff3; WORD $0x30c1 // movdqu oword [rcx + 8*rax + 48], xmm1 LONG $0x24380f66; WORD $0x4244; BYTE $0x10 // pmovsxwq xmm0, dword [rdx + 2*rax + 16] LONG $0x24380f66; WORD $0x424c; BYTE $0x14 // pmovsxwq xmm1, dword [rdx + 2*rax + 20] LONG $0x447f0ff3; WORD $0x40c1 // movdqu oword [rcx + 8*rax + 64], xmm0 LONG $0x4c7f0ff3; WORD $0x50c1 // movdqu oword [rcx + 8*rax + 80], xmm1 LONG $0x24380f66; WORD $0x4244; BYTE $0x18 // pmovsxwq xmm0, dword [rdx + 2*rax + 24] LONG $0x24380f66; WORD $0x424c; BYTE $0x1c // pmovsxwq xmm1, dword [rdx + 2*rax + 28] LONG $0x447f0ff3; WORD $0x60c1 // movdqu oword [rcx + 8*rax + 96], xmm0 LONG $0x4c7f0ff3; WORD $0x70c1 // movdqu oword [rcx + 8*rax + 112], xmm1 LONG $0x10c08348 // add rax, 16 LONG $0x04c78348 // add rdi, 4 JNE LBB0_820 LBB0_821: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_824 LONG $0xc13c8d48 // lea rdi, [rcx + 8*rax] LONG $0x10c78348 // add rdi, 16 LONG $0x42148d4c // lea r10, [rdx + 2*rax] LONG $0x04c28349 // add r10, 4 WORD $0xc031 // xor eax, eax LBB0_823: QUAD $0xfcc24424380f4166 // pmovsxwq xmm0, dword [r10 + 8*rax - 4] LONG $0x380f4166; WORD $0x0c24; BYTE $0xc2 // pmovsxwq xmm1, dword [r10 + 8*rax] LONG $0x477f0ff3; BYTE $0xf0 // movdqu oword [rdi - 16], xmm0 LONG $0x0f7f0ff3 // movdqu oword [rdi], xmm1 LONG $0x20c78348 // add rdi, 32 LONG $0x01c08348 // add rax, 1 WORD $0x3949; BYTE $0xc0 // cmp r8, rax JNE LBB0_823 LBB0_824: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_825: LONG $0x04bf0f48; BYTE $0x72 // movsx rax, word [rdx + 2*rsi] LONG $0xf1048948 // mov qword [rcx + 8*rsi], rax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_825 JMP LBB0_1526 LBB0_830: LONG $0xfce78348 // and rdi, -4 WORD $0xf748; BYTE $0xdf // neg rdi WORD $0xc031 // xor eax, eax LBB0_831: LONG $0x25380f66; WORD $0x8204 // pmovsxdq xmm0, qword [rdx + 4*rax] LONG $0x25380f66; WORD $0x824c; BYTE $0x08 // pmovsxdq xmm1, qword [rdx + 4*rax + 8] LONG $0x047f0ff3; BYTE $0xc1 // movdqu oword [rcx + 8*rax], xmm0 LONG $0x4c7f0ff3; WORD $0x10c1 // movdqu oword [rcx + 8*rax + 16], xmm1 LONG $0x25380f66; WORD $0x8244; BYTE $0x10 // pmovsxdq xmm0, qword [rdx + 4*rax + 16] LONG $0x25380f66; WORD $0x824c; BYTE $0x18 // pmovsxdq xmm1, qword [rdx + 4*rax + 24] LONG $0x447f0ff3; WORD $0x20c1 // movdqu oword [rcx + 8*rax + 32], xmm0 LONG $0x4c7f0ff3; WORD $0x30c1 // movdqu oword [rcx + 8*rax + 48], xmm1 LONG $0x25380f66; WORD $0x8244; BYTE $0x20 // pmovsxdq xmm0, qword [rdx + 4*rax + 32] LONG $0x25380f66; WORD $0x824c; BYTE $0x28 // pmovsxdq xmm1, qword [rdx + 4*rax + 40] LONG $0x447f0ff3; WORD $0x40c1 // movdqu oword [rcx + 8*rax + 64], xmm0 LONG $0x4c7f0ff3; WORD $0x50c1 // movdqu oword [rcx + 8*rax + 80], xmm1 LONG $0x25380f66; WORD $0x8244; BYTE $0x30 // pmovsxdq xmm0, qword [rdx + 4*rax + 48] LONG $0x25380f66; WORD $0x824c; BYTE $0x38 // pmovsxdq xmm1, qword [rdx + 4*rax + 56] LONG $0x447f0ff3; WORD $0x60c1 // movdqu oword [rcx + 8*rax + 96], xmm0 LONG $0x4c7f0ff3; WORD $0x70c1 // movdqu oword [rcx + 8*rax + 112], xmm1 LONG $0x10c08348 // add rax, 16 LONG $0x04c78348 // add rdi, 4 JNE LBB0_831 LBB0_832: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_835 QUAD $0x0000000885048d48 // lea rax, [4*rax + 8] WORD $0xf749; BYTE $0xd8 // neg r8 LBB0_834: LONG $0x25380f66; WORD $0x0244; BYTE $0xf8 // pmovsxdq xmm0, qword [rdx + rax - 8] LONG $0x25380f66; WORD $0x020c // pmovsxdq xmm1, qword [rdx + rax] LONG $0x447f0ff3; WORD $0xf041 // movdqu oword [rcx + 2*rax - 16], xmm0 LONG $0x0c7f0ff3; BYTE $0x41 // movdqu oword [rcx + 2*rax], xmm1 LONG $0x10c08348 // add rax, 16 WORD $0xff49; BYTE $0xc0 // inc r8 JNE LBB0_834 LBB0_835: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_836: LONG $0xb2046348 // movsxd rax, dword [rdx + 4*rsi] LONG $0xf1048948 // mov qword [rcx + 8*rsi], rax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_836 JMP LBB0_1526 LBB0_857: LONG $0xfce78348 // and rdi, -4 WORD $0xf748; BYTE $0xdf // neg rdi WORD $0xc031 // xor eax, eax LBB0_858: LONG $0x35380f66; WORD $0x8204 // pmovzxdq xmm0, qword [rdx + 4*rax] LONG $0x35380f66; WORD $0x824c; BYTE $0x08 // pmovzxdq xmm1, qword [rdx + 4*rax + 8] LONG $0x047f0ff3; BYTE $0xc1 // movdqu oword [rcx + 8*rax], xmm0 LONG $0x4c7f0ff3; WORD $0x10c1 // movdqu oword [rcx + 8*rax + 16], xmm1 LONG $0x35380f66; WORD $0x8244; BYTE $0x10 // pmovzxdq xmm0, qword [rdx + 4*rax + 16] LONG $0x35380f66; WORD $0x824c; BYTE $0x18 // pmovzxdq xmm1, qword [rdx + 4*rax + 24] LONG $0x447f0ff3; WORD $0x20c1 // movdqu oword [rcx + 8*rax + 32], xmm0 LONG $0x4c7f0ff3; WORD $0x30c1 // movdqu oword [rcx + 8*rax + 48], xmm1 LONG $0x35380f66; WORD $0x8244; BYTE $0x20 // pmovzxdq xmm0, qword [rdx + 4*rax + 32] LONG $0x35380f66; WORD $0x824c; BYTE $0x28 // pmovzxdq xmm1, qword [rdx + 4*rax + 40] LONG $0x447f0ff3; WORD $0x40c1 // movdqu oword [rcx + 8*rax + 64], xmm0 LONG $0x4c7f0ff3; WORD $0x50c1 // movdqu oword [rcx + 8*rax + 80], xmm1 LONG $0x35380f66; WORD $0x8244; BYTE $0x30 // pmovzxdq xmm0, qword [rdx + 4*rax + 48] LONG $0x35380f66; WORD $0x824c; BYTE $0x38 // pmovzxdq xmm1, qword [rdx + 4*rax + 56] LONG $0x447f0ff3; WORD $0x60c1 // movdqu oword [rcx + 8*rax + 96], xmm0 LONG $0x4c7f0ff3; WORD $0x70c1 // movdqu oword [rcx + 8*rax + 112], xmm1 LONG $0x10c08348 // add rax, 16 LONG $0x04c78348 // add rdi, 4 JNE LBB0_858 LBB0_859: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_862 QUAD $0x0000000885048d48 // lea rax, [4*rax + 8] WORD $0xf749; BYTE $0xd8 // neg r8 LBB0_861: LONG $0x35380f66; WORD $0x0244; BYTE $0xf8 // pmovzxdq xmm0, qword [rdx + rax - 8] LONG $0x35380f66; WORD $0x020c // pmovzxdq xmm1, qword [rdx + rax] LONG $0x447f0ff3; WORD $0xf041 // movdqu oword [rcx + 2*rax - 16], xmm0 LONG $0x0c7f0ff3; BYTE $0x41 // movdqu oword [rcx + 2*rax], xmm1 LONG $0x10c08348 // add rax, 16 WORD $0xff49; BYTE $0xc0 // inc r8 JNE LBB0_861 LBB0_862: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_863: WORD $0x048b; BYTE $0xb2 // mov eax, dword [rdx + 4*rsi] LONG $0xf1048948 // mov qword [rcx + 8*rsi], rax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_863 JMP LBB0_1526 LBB0_871: LONG $0xfce78348 // and rdi, -4 WORD $0xf748; BYTE $0xdf // neg rdi WORD $0xc031 // xor eax, eax LBB0_872: LONG $0x34380f66; WORD $0x4204 // pmovzxwq xmm0, dword [rdx + 2*rax] LONG $0x34380f66; WORD $0x424c; BYTE $0x04 // pmovzxwq xmm1, dword [rdx + 2*rax + 4] LONG $0x047f0ff3; BYTE $0xc1 // movdqu oword [rcx + 8*rax], xmm0 LONG $0x4c7f0ff3; WORD $0x10c1 // movdqu oword [rcx + 8*rax + 16], xmm1 LONG $0x34380f66; WORD $0x4244; BYTE $0x08 // pmovzxwq xmm0, dword [rdx + 2*rax + 8] LONG $0x34380f66; WORD $0x424c; BYTE $0x0c // pmovzxwq xmm1, dword [rdx + 2*rax + 12] LONG $0x447f0ff3; WORD $0x20c1 // movdqu oword [rcx + 8*rax + 32], xmm0 LONG $0x4c7f0ff3; WORD $0x30c1 // movdqu oword [rcx + 8*rax + 48], xmm1 LONG $0x34380f66; WORD $0x4244; BYTE $0x10 // pmovzxwq xmm0, dword [rdx + 2*rax + 16] LONG $0x34380f66; WORD $0x424c; BYTE $0x14 // pmovzxwq xmm1, dword [rdx + 2*rax + 20] LONG $0x447f0ff3; WORD $0x40c1 // movdqu oword [rcx + 8*rax + 64], xmm0 LONG $0x4c7f0ff3; WORD $0x50c1 // movdqu oword [rcx + 8*rax + 80], xmm1 LONG $0x34380f66; WORD $0x4244; BYTE $0x18 // pmovzxwq xmm0, dword [rdx + 2*rax + 24] LONG $0x34380f66; WORD $0x424c; BYTE $0x1c // pmovzxwq xmm1, dword [rdx + 2*rax + 28] LONG $0x447f0ff3; WORD $0x60c1 // movdqu oword [rcx + 8*rax + 96], xmm0 LONG $0x4c7f0ff3; WORD $0x70c1 // movdqu oword [rcx + 8*rax + 112], xmm1 LONG $0x10c08348 // add rax, 16 LONG $0x04c78348 // add rdi, 4 JNE LBB0_872 LBB0_873: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_876 LONG $0xc13c8d48 // lea rdi, [rcx + 8*rax] LONG $0x10c78348 // add rdi, 16 LONG $0x42148d4c // lea r10, [rdx + 2*rax] LONG $0x04c28349 // add r10, 4 WORD $0xc031 // xor eax, eax LBB0_875: QUAD $0xfcc24434380f4166 // pmovzxwq xmm0, dword [r10 + 8*rax - 4] LONG $0x380f4166; WORD $0x0c34; BYTE $0xc2 // pmovzxwq xmm1, dword [r10 + 8*rax] LONG $0x477f0ff3; BYTE $0xf0 // movdqu oword [rdi - 16], xmm0 LONG $0x0f7f0ff3 // movdqu oword [rdi], xmm1 LONG $0x20c78348 // add rdi, 32 LONG $0x01c08348 // add rax, 1 WORD $0x3949; BYTE $0xc0 // cmp r8, rax JNE LBB0_875 LBB0_876: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_877: LONG $0x7204b70f // movzx eax, word [rdx + 2*rsi] LONG $0xf1048948 // mov qword [rcx + 8*rsi], rax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_877 JMP LBB0_1526 LBB0_878: LONG $0xfce78348 // and rdi, -4 WORD $0xf748; BYTE $0xdf // neg rdi WORD $0xc031 // xor eax, eax LBB0_879: LONG $0x24380f66; WORD $0x4204 // pmovsxwq xmm0, dword [rdx + 2*rax] LONG $0x24380f66; WORD $0x424c; BYTE $0x04 // pmovsxwq xmm1, dword [rdx + 2*rax + 4] LONG $0x047f0ff3; BYTE $0xc1 // movdqu oword [rcx + 8*rax], xmm0 LONG $0x4c7f0ff3; WORD $0x10c1 // movdqu oword [rcx + 8*rax + 16], xmm1 LONG $0x24380f66; WORD $0x4244; BYTE $0x08 // pmovsxwq xmm0, dword [rdx + 2*rax + 8] LONG $0x24380f66; WORD $0x424c; BYTE $0x0c // pmovsxwq xmm1, dword [rdx + 2*rax + 12] LONG $0x447f0ff3; WORD $0x20c1 // movdqu oword [rcx + 8*rax + 32], xmm0 LONG $0x4c7f0ff3; WORD $0x30c1 // movdqu oword [rcx + 8*rax + 48], xmm1 LONG $0x24380f66; WORD $0x4244; BYTE $0x10 // pmovsxwq xmm0, dword [rdx + 2*rax + 16] LONG $0x24380f66; WORD $0x424c; BYTE $0x14 // pmovsxwq xmm1, dword [rdx + 2*rax + 20] LONG $0x447f0ff3; WORD $0x40c1 // movdqu oword [rcx + 8*rax + 64], xmm0 LONG $0x4c7f0ff3; WORD $0x50c1 // movdqu oword [rcx + 8*rax + 80], xmm1 LONG $0x24380f66; WORD $0x4244; BYTE $0x18 // pmovsxwq xmm0, dword [rdx + 2*rax + 24] LONG $0x24380f66; WORD $0x424c; BYTE $0x1c // pmovsxwq xmm1, dword [rdx + 2*rax + 28] LONG $0x447f0ff3; WORD $0x60c1 // movdqu oword [rcx + 8*rax + 96], xmm0 LONG $0x4c7f0ff3; WORD $0x70c1 // movdqu oword [rcx + 8*rax + 112], xmm1 LONG $0x10c08348 // add rax, 16 LONG $0x04c78348 // add rdi, 4 JNE LBB0_879 LBB0_880: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_883 LONG $0xc13c8d48 // lea rdi, [rcx + 8*rax] LONG $0x10c78348 // add rdi, 16 LONG $0x42148d4c // lea r10, [rdx + 2*rax] LONG $0x04c28349 // add r10, 4 WORD $0xc031 // xor eax, eax LBB0_882: QUAD $0xfcc24424380f4166 // pmovsxwq xmm0, dword [r10 + 8*rax - 4] LONG $0x380f4166; WORD $0x0c24; BYTE $0xc2 // pmovsxwq xmm1, dword [r10 + 8*rax] LONG $0x477f0ff3; BYTE $0xf0 // movdqu oword [rdi - 16], xmm0 LONG $0x0f7f0ff3 // movdqu oword [rdi], xmm1 LONG $0x20c78348 // add rdi, 32 LONG $0x01c08348 // add rax, 1 WORD $0x3949; BYTE $0xc0 // cmp r8, rax JNE LBB0_882 LBB0_883: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_884: LONG $0x04bf0f48; BYTE $0x72 // movsx rax, word [rdx + 2*rsi] LONG $0xf1048948 // mov qword [rcx + 8*rsi], rax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_884 JMP LBB0_1526 LBB0_894: LONG $0xfce78348 // and rdi, -4 WORD $0xf748; BYTE $0xdf // neg rdi WORD $0xc031 // xor eax, eax LBB0_895: LONG $0x25380f66; WORD $0x8204 // pmovsxdq xmm0, qword [rdx + 4*rax] LONG $0x25380f66; WORD $0x824c; BYTE $0x08 // pmovsxdq xmm1, qword [rdx + 4*rax + 8] LONG $0x047f0ff3; BYTE $0xc1 // movdqu oword [rcx + 8*rax], xmm0 LONG $0x4c7f0ff3; WORD $0x10c1 // movdqu oword [rcx + 8*rax + 16], xmm1 LONG $0x25380f66; WORD $0x8244; BYTE $0x10 // pmovsxdq xmm0, qword [rdx + 4*rax + 16] LONG $0x25380f66; WORD $0x824c; BYTE $0x18 // pmovsxdq xmm1, qword [rdx + 4*rax + 24] LONG $0x447f0ff3; WORD $0x20c1 // movdqu oword [rcx + 8*rax + 32], xmm0 LONG $0x4c7f0ff3; WORD $0x30c1 // movdqu oword [rcx + 8*rax + 48], xmm1 LONG $0x25380f66; WORD $0x8244; BYTE $0x20 // pmovsxdq xmm0, qword [rdx + 4*rax + 32] LONG $0x25380f66; WORD $0x824c; BYTE $0x28 // pmovsxdq xmm1, qword [rdx + 4*rax + 40] LONG $0x447f0ff3; WORD $0x40c1 // movdqu oword [rcx + 8*rax + 64], xmm0 LONG $0x4c7f0ff3; WORD $0x50c1 // movdqu oword [rcx + 8*rax + 80], xmm1 LONG $0x25380f66; WORD $0x8244; BYTE $0x30 // pmovsxdq xmm0, qword [rdx + 4*rax + 48] LONG $0x25380f66; WORD $0x824c; BYTE $0x38 // pmovsxdq xmm1, qword [rdx + 4*rax + 56] LONG $0x447f0ff3; WORD $0x60c1 // movdqu oword [rcx + 8*rax + 96], xmm0 LONG $0x4c7f0ff3; WORD $0x70c1 // movdqu oword [rcx + 8*rax + 112], xmm1 LONG $0x10c08348 // add rax, 16 LONG $0x04c78348 // add rdi, 4 JNE LBB0_895 LBB0_896: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_899 QUAD $0x0000000885048d48 // lea rax, [4*rax + 8] WORD $0xf749; BYTE $0xd8 // neg r8 LBB0_898: LONG $0x25380f66; WORD $0x0244; BYTE $0xf8 // pmovsxdq xmm0, qword [rdx + rax - 8] LONG $0x25380f66; WORD $0x020c // pmovsxdq xmm1, qword [rdx + rax] LONG $0x447f0ff3; WORD $0xf041 // movdqu oword [rcx + 2*rax - 16], xmm0 LONG $0x0c7f0ff3; BYTE $0x41 // movdqu oword [rcx + 2*rax], xmm1 LONG $0x10c08348 // add rax, 16 WORD $0xff49; BYTE $0xc0 // inc r8 JNE LBB0_898 LBB0_899: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_900: LONG $0xb2046348 // movsxd rax, dword [rdx + 4*rsi] LONG $0xf1048948 // mov qword [rcx + 8*rsi], rax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_900 JMP LBB0_1526 LBB0_939: WORD $0xff31 // xor edi, edi LBB0_940: LONG $0x01c0f641 // test r8b, 1 JE LBB0_942 LONG $0x046f0ff3; BYTE $0xfa // movdqu xmm0, oword [rdx + 8*rdi] LONG $0x4c6f0ff3; WORD $0x10fa // movdqu xmm1, oword [rdx + 8*rdi + 16] LONG $0xc0700f66; BYTE $0xe8 // pshufd xmm0, xmm0, 232 LONG $0xc9700f66; BYTE $0xe8 // pshufd xmm1, xmm1, 232 LONG $0xc16c0f66 // punpcklqdq xmm0, xmm1 LONG $0x047f0ff3; BYTE $0xb9 // movdqu oword [rcx + 4*rdi], xmm0 LBB0_942: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_943: WORD $0x048b; BYTE $0xf2 // mov eax, dword [rdx + 8*rsi] WORD $0x0489; BYTE $0xb1 // mov dword [rcx + 4*rsi], eax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_943 JMP LBB0_1526 LBB0_944: WORD $0xff31 // xor edi, edi LBB0_945: LONG $0x01c0f641 // test r8b, 1 JE LBB0_947 LONG $0x046f0ff3; BYTE $0xfa // movdqu xmm0, oword [rdx + 8*rdi] LONG $0x4c6f0ff3; WORD $0x10fa // movdqu xmm1, oword [rdx + 8*rdi + 16] LONG $0xc0700f66; BYTE $0xe8 // pshufd xmm0, xmm0, 232 LONG $0xc9700f66; BYTE $0xe8 // pshufd xmm1, xmm1, 232 LONG $0xc16c0f66 // punpcklqdq xmm0, xmm1 LONG $0x047f0ff3; BYTE $0xb9 // movdqu oword [rcx + 4*rdi], xmm0 LBB0_947: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_948: WORD $0x048b; BYTE $0xf2 // mov eax, dword [rdx + 8*rsi] WORD $0x0489; BYTE $0xb1 // mov dword [rcx + 4*rsi], eax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_948 JMP LBB0_1526 LBB0_949: WORD $0xff31 // xor edi, edi LBB0_950: LONG $0x01c0f641 // test r8b, 1 JE LBB0_952 LONG $0x33380f66; WORD $0x7a04 // pmovzxwd xmm0, qword [rdx + 2*rdi] LONG $0x33380f66; WORD $0x7a4c; BYTE $0x08 // pmovzxwd xmm1, qword [rdx + 2*rdi + 8] LONG $0x047f0ff3; BYTE $0xb9 // movdqu oword [rcx + 4*rdi], xmm0 LONG $0x4c7f0ff3; WORD $0x10b9 // movdqu oword [rcx + 4*rdi + 16], xmm1 LBB0_952: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_953: LONG $0x7204b70f // movzx eax, word [rdx + 2*rsi] WORD $0x0489; BYTE $0xb1 // mov dword [rcx + 4*rsi], eax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_953 JMP LBB0_1526 LBB0_954: WORD $0xff31 // xor edi, edi LBB0_955: LONG $0x01c0f641 // test r8b, 1 JE LBB0_957 LONG $0x23380f66; WORD $0x7a04 // pmovsxwd xmm0, qword [rdx + 2*rdi] LONG $0x23380f66; WORD $0x7a4c; BYTE $0x08 // pmovsxwd xmm1, qword [rdx + 2*rdi + 8] LONG $0x047f0ff3; BYTE $0xb9 // movdqu oword [rcx + 4*rdi], xmm0 LONG $0x4c7f0ff3; WORD $0x10b9 // movdqu oword [rcx + 4*rdi + 16], xmm1 LBB0_957: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_958: LONG $0x7204bf0f // movsx eax, word [rdx + 2*rsi] WORD $0x0489; BYTE $0xb1 // mov dword [rcx + 4*rsi], eax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_958 JMP LBB0_1526 LBB0_959: WORD $0xff31 // xor edi, edi LBB0_960: LONG $0x01c0f641 // test r8b, 1 JE LBB0_962 LONG $0x046f0ff3; BYTE $0xfa // movdqu xmm0, oword [rdx + 8*rdi] LONG $0x4c6f0ff3; WORD $0x10fa // movdqu xmm1, oword [rdx + 8*rdi + 16] LONG $0xc0700f66; BYTE $0xe8 // pshufd xmm0, xmm0, 232 LONG $0xc9700f66; BYTE $0xe8 // pshufd xmm1, xmm1, 232 LONG $0xc16c0f66 // punpcklqdq xmm0, xmm1 LONG $0x047f0ff3; BYTE $0xb9 // movdqu oword [rcx + 4*rdi], xmm0 LBB0_962: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_963: WORD $0x048b; BYTE $0xf2 // mov eax, dword [rdx + 8*rsi] WORD $0x0489; BYTE $0xb1 // mov dword [rcx + 4*rsi], eax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_963 JMP LBB0_1526 LBB0_964: WORD $0xff31 // xor edi, edi LBB0_965: LONG $0x01c0f641 // test r8b, 1 JE LBB0_967 LONG $0xba0c100f // movups xmm1, oword [rdx + 4*rdi] LONG $0xba54100f; BYTE $0x10 // movups xmm2, oword [rdx + 4*rdi + 16] LONG $0x205d280f // movaps xmm3, oword 32[rbp] /* [rip + .LCPI0_3] */ WORD $0x280f; BYTE $0xc1 // movaps xmm0, xmm1 LONG $0x01c3c20f // cmpltps xmm0, xmm3 LONG $0xe15b0ff3 // cvttps2dq xmm4, xmm1 WORD $0x5c0f; BYTE $0xcb // subps xmm1, xmm3 LONG $0xc95b0ff3 // cvttps2dq xmm1, xmm1 LONG $0x306d280f // movaps xmm5, oword 48[rbp] /* [rip + .LCPI0_4] */ WORD $0x570f; BYTE $0xcd // xorps xmm1, xmm5 LONG $0x14380f66; BYTE $0xcc // blendvps xmm1, xmm4, xmm0 WORD $0x280f; BYTE $0xc2 // movaps xmm0, xmm2 LONG $0x01c3c20f // cmpltps xmm0, xmm3 LONG $0xe25b0ff3 // cvttps2dq xmm4, xmm2 WORD $0x5c0f; BYTE $0xd3 // subps xmm2, xmm3 LONG $0xd25b0ff3 // cvttps2dq xmm2, xmm2 WORD $0x570f; BYTE $0xd5 // xorps xmm2, xmm5 LONG $0x14380f66; BYTE $0xd4 // blendvps xmm2, xmm4, xmm0 LONG $0xb90c110f // movups oword [rcx + 4*rdi], xmm1 LONG $0xb954110f; BYTE $0x10 // movups oword [rcx + 4*rdi + 16], xmm2 LBB0_967: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_968: LONG $0x2c0f48f3; WORD $0xb204 // cvttss2si rax, dword [rdx + 4*rsi] WORD $0x0489; BYTE $0xb1 // mov dword [rcx + 4*rsi], eax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_968 JMP LBB0_1526 LBB0_969: WORD $0xff31 // xor edi, edi LBB0_970: LONG $0x01c0f641 // test r8b, 1 JE LBB0_972 LONG $0x046f0ff3; BYTE $0xfa // movdqu xmm0, oword [rdx + 8*rdi] LONG $0x4c6f0ff3; WORD $0x10fa // movdqu xmm1, oword [rdx + 8*rdi + 16] LONG $0xd2ef0f66 // pxor xmm2, xmm2 LONG $0xd86f0f66 // movdqa xmm3, xmm0 LONG $0x0e3a0f66; WORD $0xccda // pblendw xmm3, xmm2, 204 LONG $0x656f0f66; BYTE $0x50 // movdqa xmm4, oword 80[rbp] /* [rip + .LCPI0_6] */ LONG $0xdceb0f66 // por xmm3, xmm4 LONG $0xd0730f66; BYTE $0x20 // psrlq xmm0, 32 LONG $0x6d6f0f66; BYTE $0x60 // movdqa xmm5, oword 96[rbp] /* [rip + .LCPI0_7] */ LONG $0xc5eb0f66 // por xmm0, xmm5 LONG $0x75280f66; BYTE $0x70 // movapd xmm6, oword 112[rbp] /* [rip + .LCPI0_8] */ LONG $0xc65c0f66 // subpd xmm0, xmm6 LONG $0xc3580f66 // addpd xmm0, xmm3 LONG $0x0e3a0f66; WORD $0x33d1 // pblendw xmm2, xmm1, 51 LONG $0xd4eb0f66 // por xmm2, xmm4 LONG $0xd1730f66; BYTE $0x20 // psrlq xmm1, 32 LONG $0xcdeb0f66 // por xmm1, xmm5 LONG $0xce5c0f66 // subpd xmm1, xmm6 LONG $0xca580f66 // addpd xmm1, xmm2 LONG $0x04110f66; BYTE $0xf9 // movupd oword [rcx + 8*rdi], xmm0 LONG $0x4c110f66; WORD $0x10f9 // movupd oword [rcx + 8*rdi + 16], xmm1 LBB0_972: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_973: QUAD $0x0000008085280f66 // movapd xmm0, oword 128[rbp] /* [rip + .LCPI0_9] */ QUAD $0x000000908d280f66 // movapd xmm1, oword 144[rbp] /* [rip + .LCPI0_10] */ LBB0_974: LONG $0x14100ff2; BYTE $0xf2 // movsd xmm2, qword [rdx + 8*rsi] WORD $0x140f; BYTE $0xd0 // unpcklps xmm2, xmm0 LONG $0xd15c0f66 // subpd xmm2, xmm1 LONG $0xda280f66 // movapd xmm3, xmm2 LONG $0xda150f66 // unpckhpd xmm3, xmm2 LONG $0xda580ff2 // addsd xmm3, xmm2 LONG $0x1c110ff2; BYTE $0xf1 // movsd qword [rcx + 8*rsi], xmm3 LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_974 JMP LBB0_1526 LBB0_975: WORD $0xff31 // xor edi, edi LBB0_976: LONG $0x01c0f641 // test r8b, 1 JE LBB0_978 LONG $0xba045a0f // cvtps2pd xmm0, qword [rdx + 4*rdi] LONG $0xba4c5a0f; BYTE $0x08 // cvtps2pd xmm1, qword [rdx + 4*rdi + 8] LONG $0x04110f66; BYTE $0xf9 // movupd oword [rcx + 8*rdi], xmm0 LONG $0x4c110f66; WORD $0x10f9 // movupd oword [rcx + 8*rdi + 16], xmm1 LBB0_978: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_979: LONG $0x04100ff3; BYTE $0xb2 // movss xmm0, dword [rdx + 4*rsi] LONG $0xc05a0ff3 // cvtss2sd xmm0, xmm0 LONG $0x04110ff2; BYTE $0xf1 // movsd qword [rcx + 8*rsi], xmm0 LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_979 JMP LBB0_1526 LBB0_980: WORD $0xff31 // xor edi, edi LBB0_981: LONG $0x01c0f641 // test r8b, 1 JE LBB0_983 LONG $0x046f0ff3; BYTE $0xba // movdqu xmm0, oword [rdx + 4*rdi] LONG $0x4c6f0ff3; WORD $0x10ba // movdqu xmm1, oword [rdx + 4*rdi + 16] QUAD $0x000000b0956f0f66 // movdqa xmm2, oword 176[rbp] /* [rip + .LCPI0_12] */ LONG $0x00380f66; BYTE $0xc2 // pshufb xmm0, xmm2 LONG $0x00380f66; BYTE $0xca // pshufb xmm1, xmm2 LONG $0xc16c0f66 // punpcklqdq xmm0, xmm1 LONG $0x047f0ff3; BYTE $0x79 // movdqu oword [rcx + 2*rdi], xmm0 LBB0_983: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_984: LONG $0xb204b70f // movzx eax, word [rdx + 4*rsi] LONG $0x71048966 // mov word [rcx + 2*rsi], ax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_984 JMP LBB0_1526 LBB0_985: WORD $0xff31 // xor edi, edi LBB0_986: LONG $0x01c0f641 // test r8b, 1 JE LBB0_988 LONG $0x046f0ff3; BYTE $0xba // movdqu xmm0, oword [rdx + 4*rdi] LONG $0x4c6f0ff3; WORD $0x10ba // movdqu xmm1, oword [rdx + 4*rdi + 16] QUAD $0x000000b0956f0f66 // movdqa xmm2, oword 176[rbp] /* [rip + .LCPI0_12] */ LONG $0x00380f66; BYTE $0xc2 // pshufb xmm0, xmm2 LONG $0x00380f66; BYTE $0xca // pshufb xmm1, xmm2 LONG $0xc16c0f66 // punpcklqdq xmm0, xmm1 LONG $0x047f0ff3; BYTE $0x79 // movdqu oword [rcx + 2*rdi], xmm0 LBB0_988: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_989: LONG $0xb204b70f // movzx eax, word [rdx + 4*rsi] LONG $0x71048966 // mov word [rcx + 2*rsi], ax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_989 JMP LBB0_1526 LBB0_990: WORD $0xff31 // xor edi, edi LBB0_991: LONG $0x01c0f641 // test r8b, 1 JE LBB0_993 LONG $0x04100f66; BYTE $0xfa // movupd xmm0, oword [rdx + 8*rdi] LONG $0x4c100f66; WORD $0x10fa // movupd xmm1, oword [rdx + 8*rdi + 16] LONG $0xc0e60f66 // cvttpd2dq xmm0, xmm0 LONG $0xc9e60f66 // cvttpd2dq xmm1, xmm1 LONG $0xc0700ff2; BYTE $0xe8 // pshuflw xmm0, xmm0, 232 LONG $0xc9700ff2; BYTE $0xe8 // pshuflw xmm1, xmm1, 232 LONG $0x047e0f66; BYTE $0x79 // movd dword [rcx + 2*rdi], xmm0 LONG $0x4c7e0f66; WORD $0x0479 // movd dword [rcx + 2*rdi + 4], xmm1 LBB0_993: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_994: LONG $0x042c0ff2; BYTE $0xf2 // cvttsd2si eax, qword [rdx + 8*rsi] LONG $0x71048966 // mov word [rcx + 2*rsi], ax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_994 JMP LBB0_1526 LBB0_995: WORD $0xff31 // xor edi, edi LBB0_996: LONG $0x01c0f641 // test r8b, 1 JE LBB0_998 LONG $0x04100f66; BYTE $0xfa // movupd xmm0, oword [rdx + 8*rdi] LONG $0x4c100f66; WORD $0x10fa // movupd xmm1, oword [rdx + 8*rdi + 16] LONG $0xc0e60f66 // cvttpd2dq xmm0, xmm0 LONG $0xc9e60f66 // cvttpd2dq xmm1, xmm1 LONG $0xc0700ff2; BYTE $0xe8 // pshuflw xmm0, xmm0, 232 LONG $0xc9700ff2; BYTE $0xe8 // pshuflw xmm1, xmm1, 232 LONG $0x047e0f66; BYTE $0x79 // movd dword [rcx + 2*rdi], xmm0 LONG $0x4c7e0f66; WORD $0x0479 // movd dword [rcx + 2*rdi + 4], xmm1 LBB0_998: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_999: LONG $0x042c0ff2; BYTE $0xf2 // cvttsd2si eax, qword [rdx + 8*rsi] LONG $0x71048966 // mov word [rcx + 2*rsi], ax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_999 JMP LBB0_1526 LBB0_1000: WORD $0xff31 // xor edi, edi LBB0_1001: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1003 LONG $0x046f0ff3; BYTE $0xfa // movdqu xmm0, oword [rdx + 8*rdi] LONG $0x4c6f0ff3; WORD $0x10fa // movdqu xmm1, oword [rdx + 8*rdi + 16] LONG $0xc0700f66; BYTE $0xe8 // pshufd xmm0, xmm0, 232 LONG $0xc0700ff2; BYTE $0xe8 // pshuflw xmm0, xmm0, 232 LONG $0xc9700f66; BYTE $0xe8 // pshufd xmm1, xmm1, 232 LONG $0xc9700ff2; BYTE $0xe8 // pshuflw xmm1, xmm1, 232 LONG $0x047e0f66; BYTE $0x79 // movd dword [rcx + 2*rdi], xmm0 LONG $0x4c7e0f66; WORD $0x0479 // movd dword [rcx + 2*rdi + 4], xmm1 LBB0_1003: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_1004: LONG $0xf204b70f // movzx eax, word [rdx + 8*rsi] LONG $0x71048966 // mov word [rcx + 2*rsi], ax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1004 JMP LBB0_1526 LBB0_1005: WORD $0xff31 // xor edi, edi LBB0_1006: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1008 LONG $0x046f0ff3; BYTE $0xfa // movdqu xmm0, oword [rdx + 8*rdi] LONG $0x4c6f0ff3; WORD $0x10fa // movdqu xmm1, oword [rdx + 8*rdi + 16] LONG $0xc0700f66; BYTE $0xe8 // pshufd xmm0, xmm0, 232 LONG $0xc0700ff2; BYTE $0xe8 // pshuflw xmm0, xmm0, 232 LONG $0xc9700f66; BYTE $0xe8 // pshufd xmm1, xmm1, 232 LONG $0xc9700ff2; BYTE $0xe8 // pshuflw xmm1, xmm1, 232 LONG $0x047e0f66; BYTE $0x79 // movd dword [rcx + 2*rdi], xmm0 LONG $0x4c7e0f66; WORD $0x0479 // movd dword [rcx + 2*rdi + 4], xmm1 LBB0_1008: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_1009: LONG $0xf204b70f // movzx eax, word [rdx + 8*rsi] LONG $0x71048966 // mov word [rcx + 2*rsi], ax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1009 JMP LBB0_1526 LBB0_1010: WORD $0xff31 // xor edi, edi LBB0_1011: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1013 LONG $0x046f0ff3; BYTE $0xfa // movdqu xmm0, oword [rdx + 8*rdi] LONG $0x4c6f0ff3; WORD $0x10fa // movdqu xmm1, oword [rdx + 8*rdi + 16] LONG $0xc0700f66; BYTE $0xe8 // pshufd xmm0, xmm0, 232 LONG $0xc0700ff2; BYTE $0xe8 // pshuflw xmm0, xmm0, 232 LONG $0xc9700f66; BYTE $0xe8 // pshufd xmm1, xmm1, 232 LONG $0xc9700ff2; BYTE $0xe8 // pshuflw xmm1, xmm1, 232 LONG $0x047e0f66; BYTE $0x79 // movd dword [rcx + 2*rdi], xmm0 LONG $0x4c7e0f66; WORD $0x0479 // movd dword [rcx + 2*rdi + 4], xmm1 LBB0_1013: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_1014: LONG $0xf204b70f // movzx eax, word [rdx + 8*rsi] LONG $0x71048966 // mov word [rcx + 2*rsi], ax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1014 JMP LBB0_1526 LBB0_1015: WORD $0xff31 // xor edi, edi LBB0_1016: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1018 LONG $0x046f0ff3; BYTE $0xfa // movdqu xmm0, oword [rdx + 8*rdi] LONG $0x4c6f0ff3; WORD $0x10fa // movdqu xmm1, oword [rdx + 8*rdi + 16] LONG $0xc0700f66; BYTE $0xe8 // pshufd xmm0, xmm0, 232 LONG $0xc0700ff2; BYTE $0xe8 // pshuflw xmm0, xmm0, 232 LONG $0xc9700f66; BYTE $0xe8 // pshufd xmm1, xmm1, 232 LONG $0xc9700ff2; BYTE $0xe8 // pshuflw xmm1, xmm1, 232 LONG $0x047e0f66; BYTE $0x79 // movd dword [rcx + 2*rdi], xmm0 LONG $0x4c7e0f66; WORD $0x0479 // movd dword [rcx + 2*rdi + 4], xmm1 LBB0_1018: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_1019: LONG $0xf204b70f // movzx eax, word [rdx + 8*rsi] LONG $0x71048966 // mov word [rcx + 2*rsi], ax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1019 JMP LBB0_1526 LBB0_1020: WORD $0xff31 // xor edi, edi LBB0_1021: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1023 LONG $0xba04100f // movups xmm0, oword [rdx + 4*rdi] LONG $0xba4c100f; BYTE $0x10 // movups xmm1, oword [rdx + 4*rdi + 16] LONG $0xc05b0ff3 // cvttps2dq xmm0, xmm0 LONG $0xc95b0ff3 // cvttps2dq xmm1, xmm1 LONG $0x2b380f66; BYTE $0xc1 // packusdw xmm0, xmm1 LONG $0x047f0ff3; BYTE $0x79 // movdqu oword [rcx + 2*rdi], xmm0 LBB0_1023: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_1024: LONG $0x042c0ff3; BYTE $0xb2 // cvttss2si eax, dword [rdx + 4*rsi] LONG $0x71048966 // mov word [rcx + 2*rsi], ax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1024 JMP LBB0_1526 LBB0_1025: WORD $0xff31 // xor edi, edi LBB0_1026: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1028 LONG $0xba04100f // movups xmm0, oword [rdx + 4*rdi] LONG $0xba4c100f; BYTE $0x10 // movups xmm1, oword [rdx + 4*rdi + 16] LONG $0xc05b0ff3 // cvttps2dq xmm0, xmm0 LONG $0xc95b0ff3 // cvttps2dq xmm1, xmm1 LONG $0xc16b0f66 // packssdw xmm0, xmm1 LONG $0x047f0ff3; BYTE $0x79 // movdqu oword [rcx + 2*rdi], xmm0 LBB0_1028: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_1029: LONG $0x042c0ff3; BYTE $0xb2 // cvttss2si eax, dword [rdx + 4*rsi] LONG $0x71048966 // mov word [rcx + 2*rsi], ax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1029 JMP LBB0_1526 LBB0_1030: WORD $0xff31 // xor edi, edi LBB0_1031: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1033 LONG $0x046f0ff3; BYTE $0xba // movdqu xmm0, oword [rdx + 4*rdi] LONG $0x4c6f0ff3; WORD $0x10ba // movdqu xmm1, oword [rdx + 4*rdi + 16] QUAD $0x000000b0956f0f66 // movdqa xmm2, oword 176[rbp] /* [rip + .LCPI0_12] */ LONG $0x00380f66; BYTE $0xc2 // pshufb xmm0, xmm2 LONG $0x00380f66; BYTE $0xca // pshufb xmm1, xmm2 LONG $0xc16c0f66 // punpcklqdq xmm0, xmm1 LONG $0x047f0ff3; BYTE $0x79 // movdqu oword [rcx + 2*rdi], xmm0 LBB0_1033: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_1034: LONG $0xb204b70f // movzx eax, word [rdx + 4*rsi] LONG $0x71048966 // mov word [rcx + 2*rsi], ax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1034 JMP LBB0_1526 LBB0_1035: WORD $0xff31 // xor edi, edi LBB0_1036: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1038 LONG $0x046f0ff3; BYTE $0xba // movdqu xmm0, oword [rdx + 4*rdi] LONG $0x4c6f0ff3; WORD $0x10ba // movdqu xmm1, oword [rdx + 4*rdi + 16] QUAD $0x000000b0956f0f66 // movdqa xmm2, oword 176[rbp] /* [rip + .LCPI0_12] */ LONG $0x00380f66; BYTE $0xc2 // pshufb xmm0, xmm2 LONG $0x00380f66; BYTE $0xca // pshufb xmm1, xmm2 LONG $0xc16c0f66 // punpcklqdq xmm0, xmm1 LONG $0x047f0ff3; BYTE $0x79 // movdqu oword [rcx + 2*rdi], xmm0 LBB0_1038: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_1039: LONG $0xb204b70f // movzx eax, word [rdx + 4*rsi] LONG $0x71048966 // mov word [rcx + 2*rsi], ax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1039 JMP LBB0_1526 LBB0_1040: WORD $0xff31 // xor edi, edi LBB0_1041: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1043 LONG $0x046f0ff3; BYTE $0xba // movdqu xmm0, oword [rdx + 4*rdi] LONG $0x4c6f0ff3; WORD $0x10ba // movdqu xmm1, oword [rdx + 4*rdi + 16] QUAD $0x000000d0956f0f66 // movdqa xmm2, oword 208[rbp] /* [rip + .LCPI0_14] */ LONG $0xd86f0f66 // movdqa xmm3, xmm0 LONG $0x0e3a0f66; WORD $0xaada // pblendw xmm3, xmm2, 170 LONG $0xd0720f66; BYTE $0x10 // psrld xmm0, 16 QUAD $0x000000e0a56f0f66 // movdqa xmm4, oword 224[rbp] /* [rip + .LCPI0_15] */ LONG $0x0e3a0f66; WORD $0xaac4 // pblendw xmm0, xmm4, 170 LONG $0xf0ad280f; WORD $0x0000; BYTE $0x00 // movaps xmm5, oword 240[rbp] /* [rip + .LCPI0_16] */ WORD $0x5c0f; BYTE $0xc5 // subps xmm0, xmm5 WORD $0x580f; BYTE $0xc3 // addps xmm0, xmm3 LONG $0x0e3a0f66; WORD $0x55d1 // pblendw xmm2, xmm1, 85 LONG $0xd1720f66; BYTE $0x10 // psrld xmm1, 16 LONG $0x0e3a0f66; WORD $0xaacc // pblendw xmm1, xmm4, 170 WORD $0x5c0f; BYTE $0xcd // subps xmm1, xmm5 WORD $0x580f; BYTE $0xca // addps xmm1, xmm2 LONG $0xb904110f // movups oword [rcx + 4*rdi], xmm0 LONG $0xb94c110f; BYTE $0x10 // movups oword [rcx + 4*rdi + 16], xmm1 LBB0_1043: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_1044: WORD $0x048b; BYTE $0xb2 // mov eax, dword [rdx + 4*rsi] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0x2a0f48f3; BYTE $0xc0 // cvtsi2ss xmm0, rax LONG $0x04110ff3; BYTE $0xb1 // movss dword [rcx + 4*rsi], xmm0 LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1044 JMP LBB0_1526 LBB0_1045: WORD $0xff31 // xor edi, edi LBB0_1046: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1048 LONG $0x04100f66; BYTE $0xfa // movupd xmm0, oword [rdx + 8*rdi] LONG $0x4c100f66; WORD $0x10fa // movupd xmm1, oword [rdx + 8*rdi + 16] LONG $0xc05a0f66 // cvtpd2ps xmm0, xmm0 LONG $0xc95a0f66 // cvtpd2ps xmm1, xmm1 LONG $0xc1140f66 // unpcklpd xmm0, xmm1 LONG $0x04110f66; BYTE $0xb9 // movupd oword [rcx + 4*rdi], xmm0 LBB0_1048: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_1049: LONG $0x04100ff2; BYTE $0xf2 // movsd xmm0, qword [rdx + 8*rsi] LONG $0xc05a0ff2 // cvtsd2ss xmm0, xmm0 LONG $0x04110ff3; BYTE $0xb1 // movss dword [rcx + 4*rsi], xmm0 LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1049 JMP LBB0_1526 LBB0_1050: WORD $0xff31 // xor edi, edi LBB0_1051: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1053 LONG $0x046f0ff3; BYTE $0xfa // movdqu xmm0, oword [rdx + 8*rdi] QUAD $0x000000a09d6f0f66 // movdqa xmm3, oword 160[rbp] /* [rip + .LCPI0_11] */ LONG $0xc86f0f66 // movdqa xmm1, xmm0 LONG $0xd06f0f66 // movdqa xmm2, xmm0 LONG $0xe06f0f66 // movdqa xmm4, xmm0 LONG $0xe3db0f66 // pand xmm4, xmm3 LONG $0xd1730f66; BYTE $0x01 // psrlq xmm1, 1 LONG $0xcceb0f66 // por xmm1, xmm4 LONG $0x15380f66; BYTE $0xd1 // blendvpd xmm2, xmm1, xmm0 LONG $0x3a0f4866; WORD $0xd016; BYTE $0x01 // pextrq rax, xmm2, 1 WORD $0x570f; BYTE $0xe4 // xorps xmm4, xmm4 LONG $0x2a0f48f3; BYTE $0xe0 // cvtsi2ss xmm4, rax LONG $0x7e0f4866; BYTE $0xd0 // movq rax, xmm2 WORD $0x570f; BYTE $0xd2 // xorps xmm2, xmm2 LONG $0x2a0f48f3; BYTE $0xd0 // cvtsi2ss xmm2, rax LONG $0xedef0f66 // pxor xmm5, xmm5 LONG $0x37380f66; BYTE $0xe8 // pcmpgtq xmm5, xmm0 LONG $0x4c6f0ff3; WORD $0x10fa // movdqu xmm1, oword [rdx + 8*rdi + 16] LONG $0x213a0f66; WORD $0x1cd4 // insertps xmm2, xmm4, 28 WORD $0x280f; BYTE $0xe2 // movaps xmm4, xmm2 WORD $0x580f; BYTE $0xe2 // addps xmm4, xmm2 LONG $0xf6ef0f66 // pxor xmm6, xmm6 LONG $0xc5700f66; BYTE $0xed // pshufd xmm0, xmm5, 237 LONG $0x14380f66; BYTE $0xd4 // blendvps xmm2, xmm4, xmm0 LONG $0xd9db0f66 // pand xmm3, xmm1 LONG $0xe16f0f66 // movdqa xmm4, xmm1 LONG $0xd4730f66; BYTE $0x01 // psrlq xmm4, 1 LONG $0xe3eb0f66 // por xmm4, xmm3 LONG $0x37380f66; BYTE $0xf1 // pcmpgtq xmm6, xmm1 LONG $0xc16f0f66 // movdqa xmm0, xmm1 LONG $0x15380f66; BYTE $0xcc // blendvpd xmm1, xmm4, xmm0 LONG $0x3a0f4866; WORD $0xc816; BYTE $0x01 // pextrq rax, xmm1, 1 WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0x2a0f48f3; BYTE $0xc0 // cvtsi2ss xmm0, rax LONG $0x7e0f4866; BYTE $0xc8 // movq rax, xmm1 WORD $0x570f; BYTE $0xc9 // xorps xmm1, xmm1 LONG $0x2a0f48f3; BYTE $0xc8 // cvtsi2ss xmm1, rax LONG $0x213a0f66; WORD $0x1cc8 // insertps xmm1, xmm0, 28 WORD $0x280f; BYTE $0xd9 // movaps xmm3, xmm1 WORD $0x580f; BYTE $0xd9 // addps xmm3, xmm1 LONG $0xc6700f66; BYTE $0xed // pshufd xmm0, xmm6, 237 LONG $0x14380f66; BYTE $0xcb // blendvps xmm1, xmm3, xmm0 WORD $0x160f; BYTE $0xd1 // movlhps xmm2, xmm1 LONG $0xb914110f // movups oword [rcx + 4*rdi], xmm2 LBB0_1053: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JNE LBB0_1056 JMP LBB0_1526 LBB0_1054: WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0x2a0f48f3; BYTE $0xc0 // cvtsi2ss xmm0, rax LONG $0x04110ff3; BYTE $0xb1 // movss dword [rcx + 4*rsi], xmm0 LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JE LBB0_1526 LBB0_1056: LONG $0xf2048b48 // mov rax, qword [rdx + 8*rsi] WORD $0x8548; BYTE $0xc0 // test rax, rax JNS LBB0_1054 WORD $0x8948; BYTE $0xc7 // mov rdi, rax WORD $0xd148; BYTE $0xef // shr rdi, 1 WORD $0xe083; BYTE $0x01 // and eax, 1 WORD $0x0948; BYTE $0xf8 // or rax, rdi WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0x2a0f48f3; BYTE $0xc0 // cvtsi2ss xmm0, rax LONG $0xc0580ff3 // addss xmm0, xmm0 LONG $0x04110ff3; BYTE $0xb1 // movss dword [rcx + 4*rsi], xmm0 LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1056 JMP LBB0_1526 LBB0_1058: WORD $0xff31 // xor edi, edi LBB0_1059: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1061 LONG $0x33380f66; WORD $0x7a04 // pmovzxwd xmm0, qword [rdx + 2*rdi] LONG $0x33380f66; WORD $0x7a4c; BYTE $0x08 // pmovzxwd xmm1, qword [rdx + 2*rdi + 8] WORD $0x5b0f; BYTE $0xc0 // cvtdq2ps xmm0, xmm0 WORD $0x5b0f; BYTE $0xc9 // cvtdq2ps xmm1, xmm1 LONG $0xb904110f // movups oword [rcx + 4*rdi], xmm0 LONG $0xb94c110f; BYTE $0x10 // movups oword [rcx + 4*rdi + 16], xmm1 LBB0_1061: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_1062: LONG $0x7204b70f // movzx eax, word [rdx + 2*rsi] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0xc02a0ff3 // cvtsi2ss xmm0, eax LONG $0x04110ff3; BYTE $0xb1 // movss dword [rcx + 4*rsi], xmm0 LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1062 JMP LBB0_1526 LBB0_1063: WORD $0xff31 // xor edi, edi LBB0_1064: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1066 LONG $0x23380f66; WORD $0x7a04 // pmovsxwd xmm0, qword [rdx + 2*rdi] LONG $0x23380f66; WORD $0x7a4c; BYTE $0x08 // pmovsxwd xmm1, qword [rdx + 2*rdi + 8] WORD $0x5b0f; BYTE $0xc0 // cvtdq2ps xmm0, xmm0 WORD $0x5b0f; BYTE $0xc9 // cvtdq2ps xmm1, xmm1 LONG $0xb904110f // movups oword [rcx + 4*rdi], xmm0 LONG $0xb94c110f; BYTE $0x10 // movups oword [rcx + 4*rdi + 16], xmm1 LBB0_1066: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_1067: LONG $0x7204bf0f // movsx eax, word [rdx + 2*rsi] WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0xc02a0ff3 // cvtsi2ss xmm0, eax LONG $0x04110ff3; BYTE $0xb1 // movss dword [rcx + 4*rsi], xmm0 LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1067 JMP LBB0_1526 LBB0_1068: WORD $0xff31 // xor edi, edi LBB0_1069: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1071 LONG $0xba04100f // movups xmm0, oword [rdx + 4*rdi] LONG $0xba4c100f; BYTE $0x10 // movups xmm1, oword [rdx + 4*rdi + 16] WORD $0x5b0f; BYTE $0xc0 // cvtdq2ps xmm0, xmm0 WORD $0x5b0f; BYTE $0xc9 // cvtdq2ps xmm1, xmm1 LONG $0xb904110f // movups oword [rcx + 4*rdi], xmm0 LONG $0xb94c110f; BYTE $0x10 // movups oword [rcx + 4*rdi + 16], xmm1 LBB0_1071: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_1072: WORD $0x570f; BYTE $0xc0 // xorps xmm0, xmm0 LONG $0x042a0ff3; BYTE $0xb2 // cvtsi2ss xmm0, dword [rdx + 4*rsi] LONG $0x04110ff3; BYTE $0xb1 // movss dword [rcx + 4*rsi], xmm0 LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1072 JMP LBB0_1526 LBB0_1073: WORD $0xff31 // xor edi, edi LBB0_1074: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1076 LONG $0x04100f66; BYTE $0xfa // movupd xmm0, oword [rdx + 8*rdi] LONG $0x4c100f66; WORD $0x10fa // movupd xmm1, oword [rdx + 8*rdi + 16] LONG $0xc0e60f66 // cvttpd2dq xmm0, xmm0 LONG $0xc9e60f66 // cvttpd2dq xmm1, xmm1 LONG $0xc1140f66 // unpcklpd xmm0, xmm1 LONG $0x04110f66; BYTE $0xb9 // movupd oword [rcx + 4*rdi], xmm0 LBB0_1076: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_1077: LONG $0x042c0ff2; BYTE $0xf2 // cvttsd2si eax, qword [rdx + 8*rsi] WORD $0x0489; BYTE $0xb1 // mov dword [rcx + 4*rsi], eax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1077 JMP LBB0_1526 LBB0_1078: WORD $0xff31 // xor edi, edi LBB0_1079: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1081 LONG $0x33380f66; WORD $0x7a04 // pmovzxwd xmm0, qword [rdx + 2*rdi] LONG $0x33380f66; WORD $0x7a4c; BYTE $0x08 // pmovzxwd xmm1, qword [rdx + 2*rdi + 8] LONG $0x047f0ff3; BYTE $0xb9 // movdqu oword [rcx + 4*rdi], xmm0 LONG $0x4c7f0ff3; WORD $0x10b9 // movdqu oword [rcx + 4*rdi + 16], xmm1 LBB0_1081: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_1082: LONG $0x7204b70f // movzx eax, word [rdx + 2*rsi] WORD $0x0489; BYTE $0xb1 // mov dword [rcx + 4*rsi], eax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1082 JMP LBB0_1526 LBB0_1083: WORD $0xff31 // xor edi, edi LBB0_1084: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1086 LONG $0x23380f66; WORD $0x7a04 // pmovsxwd xmm0, qword [rdx + 2*rdi] LONG $0x23380f66; WORD $0x7a4c; BYTE $0x08 // pmovsxwd xmm1, qword [rdx + 2*rdi + 8] LONG $0x047f0ff3; BYTE $0xb9 // movdqu oword [rcx + 4*rdi], xmm0 LONG $0x4c7f0ff3; WORD $0x10b9 // movdqu oword [rcx + 4*rdi + 16], xmm1 LBB0_1086: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_1087: LONG $0x7204bf0f // movsx eax, word [rdx + 2*rsi] WORD $0x0489; BYTE $0xb1 // mov dword [rcx + 4*rsi], eax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1087 JMP LBB0_1526 LBB0_1088: WORD $0xff31 // xor edi, edi LBB0_1089: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1091 LONG $0x046f0ff3; BYTE $0xfa // movdqu xmm0, oword [rdx + 8*rdi] LONG $0x4c6f0ff3; WORD $0x10fa // movdqu xmm1, oword [rdx + 8*rdi + 16] LONG $0xc0700f66; BYTE $0xe8 // pshufd xmm0, xmm0, 232 LONG $0xc9700f66; BYTE $0xe8 // pshufd xmm1, xmm1, 232 LONG $0xc16c0f66 // punpcklqdq xmm0, xmm1 LONG $0x047f0ff3; BYTE $0xb9 // movdqu oword [rcx + 4*rdi], xmm0 LBB0_1091: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_1092: WORD $0x048b; BYTE $0xf2 // mov eax, dword [rdx + 8*rsi] WORD $0x0489; BYTE $0xb1 // mov dword [rcx + 4*rsi], eax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1092 JMP LBB0_1526 LBB0_1093: WORD $0xff31 // xor edi, edi LBB0_1094: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1096 LONG $0xba04100f // movups xmm0, oword [rdx + 4*rdi] LONG $0xba4c100f; BYTE $0x10 // movups xmm1, oword [rdx + 4*rdi + 16] LONG $0xc05b0ff3 // cvttps2dq xmm0, xmm0 LONG $0xc95b0ff3 // cvttps2dq xmm1, xmm1 LONG $0x04110f66; BYTE $0xb9 // movupd oword [rcx + 4*rdi], xmm0 LONG $0x4c110f66; WORD $0x10b9 // movupd oword [rcx + 4*rdi + 16], xmm1 LBB0_1096: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 LBB0_1097: LONG $0x042c0ff3; BYTE $0xb2 // cvttss2si eax, dword [rdx + 4*rsi] WORD $0x0489; BYTE $0xb1 // mov dword [rcx + 4*rsi], eax LONG $0x01c68348 // add rsi, 1 WORD $0x3949; BYTE $0xf1 // cmp r9, rsi JNE LBB0_1097 LBB0_1526: RET LBB0_1098: LONG $0xfce78348 // and rdi, -4 WORD $0xf748; BYTE $0xdf // neg rdi WORD $0xc031 // xor eax, eax LBB0_1099: LONG $0x8204100f // movups xmm0, oword [rdx + 4*rax] LONG $0x824c100f; BYTE $0x10 // movups xmm1, oword [rdx + 4*rax + 16] LONG $0x8104110f // movups oword [rcx + 4*rax], xmm0 LONG $0x814c110f; BYTE $0x10 // movups oword [rcx + 4*rax + 16], xmm1 LONG $0x8244100f; BYTE $0x20 // movups xmm0, oword [rdx + 4*rax + 32] LONG $0x824c100f; BYTE $0x30 // movups xmm1, oword [rdx + 4*rax + 48] LONG $0x8144110f; BYTE $0x20 // movups oword [rcx + 4*rax + 32], xmm0 LONG $0x814c110f; BYTE $0x30 // movups oword [rcx + 4*rax + 48], xmm1 LONG $0x8244100f; BYTE $0x40 // movups xmm0, oword [rdx + 4*rax + 64] LONG $0x824c100f; BYTE $0x50 // movups xmm1, oword [rdx + 4*rax + 80] LONG $0x8144110f; BYTE $0x40 // movups oword [rcx + 4*rax + 64], xmm0 LONG $0x814c110f; BYTE $0x50 // movups oword [rcx + 4*rax + 80], xmm1 LONG $0x44100f66; WORD $0x6082 // movupd xmm0, oword [rdx + 4*rax + 96] LONG $0x4c100f66; WORD $0x7082 // movupd xmm1, oword [rdx + 4*rax + 112] LONG $0x44110f66; WORD $0x6081 // movupd oword [rcx + 4*rax + 96], xmm0 LONG $0x4c110f66; WORD $0x7081 // movupd oword [rcx + 4*rax + 112], xmm1 LONG $0x20c08348 // add rax, 32 LONG $0x04c78348 // add rdi, 4 JNE LBB0_1099 LBB0_1100: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_1103 QUAD $0x0000001085048d48 // lea rax, [4*rax + 16] WORD $0xf749; BYTE $0xd8 // neg r8 LBB0_1102: LONG $0x44100f66; WORD $0xf002 // movupd xmm0, oword [rdx + rax - 16] LONG $0x0c100f66; BYTE $0x02 // movupd xmm1, oword [rdx + rax] LONG $0x44110f66; WORD $0xf001 // movupd oword [rcx + rax - 16], xmm0 LONG $0x0c110f66; BYTE $0x01 // movupd oword [rcx + rax], xmm1 LONG $0x20c08348 // add rax, 32 WORD $0xff49; BYTE $0xc0 // inc r8 JNE LBB0_1102 LBB0_1103: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1104 LBB0_1108: LONG $0xfce78348 // and rdi, -4 WORD $0xf748; BYTE $0xdf // neg rdi WORD $0xc031 // xor eax, eax LBB0_1109: LONG $0x8204100f // movups xmm0, oword [rdx + 4*rax] LONG $0x824c100f; BYTE $0x10 // movups xmm1, oword [rdx + 4*rax + 16] LONG $0x8104110f // movups oword [rcx + 4*rax], xmm0 LONG $0x814c110f; BYTE $0x10 // movups oword [rcx + 4*rax + 16], xmm1 LONG $0x8244100f; BYTE $0x20 // movups xmm0, oword [rdx + 4*rax + 32] LONG $0x824c100f; BYTE $0x30 // movups xmm1, oword [rdx + 4*rax + 48] LONG $0x8144110f; BYTE $0x20 // movups oword [rcx + 4*rax + 32], xmm0 LONG $0x814c110f; BYTE $0x30 // movups oword [rcx + 4*rax + 48], xmm1 LONG $0x8244100f; BYTE $0x40 // movups xmm0, oword [rdx + 4*rax + 64] LONG $0x824c100f; BYTE $0x50 // movups xmm1, oword [rdx + 4*rax + 80] LONG $0x8144110f; BYTE $0x40 // movups oword [rcx + 4*rax + 64], xmm0 LONG $0x814c110f; BYTE $0x50 // movups oword [rcx + 4*rax + 80], xmm1 LONG $0x44100f66; WORD $0x6082 // movupd xmm0, oword [rdx + 4*rax + 96] LONG $0x4c100f66; WORD $0x7082 // movupd xmm1, oword [rdx + 4*rax + 112] LONG $0x44110f66; WORD $0x6081 // movupd oword [rcx + 4*rax + 96], xmm0 LONG $0x4c110f66; WORD $0x7081 // movupd oword [rcx + 4*rax + 112], xmm1 LONG $0x20c08348 // add rax, 32 LONG $0x04c78348 // add rdi, 4 JNE LBB0_1109 LBB0_1110: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_1113 QUAD $0x0000001085048d48 // lea rax, [4*rax + 16] WORD $0xf749; BYTE $0xd8 // neg r8 LBB0_1112: LONG $0x44100f66; WORD $0xf002 // movupd xmm0, oword [rdx + rax - 16] LONG $0x0c100f66; BYTE $0x02 // movupd xmm1, oword [rdx + rax] LONG $0x44110f66; WORD $0xf001 // movupd oword [rcx + rax - 16], xmm0 LONG $0x0c110f66; BYTE $0x01 // movupd oword [rcx + rax], xmm1 LONG $0x20c08348 // add rax, 32 WORD $0xff49; BYTE $0xc0 // inc r8 JNE LBB0_1112 LBB0_1113: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1114 LBB0_1118: LONG $0xfce78348 // and rdi, -4 WORD $0xf748; BYTE $0xdf // neg rdi WORD $0xc031 // xor eax, eax LBB0_1119: LONG $0xc204100f // movups xmm0, oword [rdx + 8*rax] LONG $0xc24c100f; BYTE $0x10 // movups xmm1, oword [rdx + 8*rax + 16] LONG $0xc104110f // movups oword [rcx + 8*rax], xmm0 LONG $0xc14c110f; BYTE $0x10 // movups oword [rcx + 8*rax + 16], xmm1 LONG $0xc244100f; BYTE $0x20 // movups xmm0, oword [rdx + 8*rax + 32] LONG $0xc24c100f; BYTE $0x30 // movups xmm1, oword [rdx + 8*rax + 48] LONG $0xc144110f; BYTE $0x20 // movups oword [rcx + 8*rax + 32], xmm0 LONG $0xc14c110f; BYTE $0x30 // movups oword [rcx + 8*rax + 48], xmm1 LONG $0xc244100f; BYTE $0x40 // movups xmm0, oword [rdx + 8*rax + 64] LONG $0xc24c100f; BYTE $0x50 // movups xmm1, oword [rdx + 8*rax + 80] LONG $0xc144110f; BYTE $0x40 // movups oword [rcx + 8*rax + 64], xmm0 LONG $0xc14c110f; BYTE $0x50 // movups oword [rcx + 8*rax + 80], xmm1 LONG $0x44100f66; WORD $0x60c2 // movupd xmm0, oword [rdx + 8*rax + 96] LONG $0x4c100f66; WORD $0x70c2 // movupd xmm1, oword [rdx + 8*rax + 112] LONG $0x44110f66; WORD $0x60c1 // movupd oword [rcx + 8*rax + 96], xmm0 LONG $0x4c110f66; WORD $0x70c1 // movupd oword [rcx + 8*rax + 112], xmm1 LONG $0x10c08348 // add rax, 16 LONG $0x04c78348 // add rdi, 4 JNE LBB0_1119 LBB0_1120: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_1123 QUAD $0x00000010c5048d48 // lea rax, [8*rax + 16] WORD $0xf749; BYTE $0xd8 // neg r8 LBB0_1122: LONG $0x44100f66; WORD $0xf002 // movupd xmm0, oword [rdx + rax - 16] LONG $0x0c100f66; BYTE $0x02 // movupd xmm1, oword [rdx + rax] LONG $0x44110f66; WORD $0xf001 // movupd oword [rcx + rax - 16], xmm0 LONG $0x0c110f66; BYTE $0x01 // movupd oword [rcx + rax], xmm1 LONG $0x20c08348 // add rax, 32 WORD $0xff49; BYTE $0xc0 // inc r8 JNE LBB0_1122 LBB0_1123: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1124 LBB0_1128: LONG $0xfce78348 // and rdi, -4 WORD $0xf748; BYTE $0xdf // neg rdi WORD $0xc031 // xor eax, eax LBB0_1129: LONG $0x0204100f // movups xmm0, oword [rdx + rax] LONG $0x024c100f; BYTE $0x10 // movups xmm1, oword [rdx + rax + 16] LONG $0x0104110f // movups oword [rcx + rax], xmm0 LONG $0x014c110f; BYTE $0x10 // movups oword [rcx + rax + 16], xmm1 LONG $0x0244100f; BYTE $0x20 // movups xmm0, oword [rdx + rax + 32] LONG $0x024c100f; BYTE $0x30 // movups xmm1, oword [rdx + rax + 48] LONG $0x0144110f; BYTE $0x20 // movups oword [rcx + rax + 32], xmm0 LONG $0x014c110f; BYTE $0x30 // movups oword [rcx + rax + 48], xmm1 LONG $0x0244100f; BYTE $0x40 // movups xmm0, oword [rdx + rax + 64] LONG $0x024c100f; BYTE $0x50 // movups xmm1, oword [rdx + rax + 80] LONG $0x0144110f; BYTE $0x40 // movups oword [rcx + rax + 64], xmm0 LONG $0x014c110f; BYTE $0x50 // movups oword [rcx + rax + 80], xmm1 LONG $0x44100f66; WORD $0x6002 // movupd xmm0, oword [rdx + rax + 96] LONG $0x4c100f66; WORD $0x7002 // movupd xmm1, oword [rdx + rax + 112] LONG $0x44110f66; WORD $0x6001 // movupd oword [rcx + rax + 96], xmm0 LONG $0x4c110f66; WORD $0x7001 // movupd oword [rcx + rax + 112], xmm1 LONG $0x80e88348 // sub rax, -128 LONG $0x04c78348 // add rdi, 4 JNE LBB0_1129 LBB0_1130: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_1133 LONG $0x10c08348 // add rax, 16 WORD $0xf749; BYTE $0xd8 // neg r8 LBB0_1132: LONG $0x44100f66; WORD $0xf002 // movupd xmm0, oword [rdx + rax - 16] LONG $0x0c100f66; BYTE $0x02 // movupd xmm1, oword [rdx + rax] LONG $0x44110f66; WORD $0xf001 // movupd oword [rcx + rax - 16], xmm0 LONG $0x0c110f66; BYTE $0x01 // movupd oword [rcx + rax], xmm1 LONG $0x20c08348 // add rax, 32 WORD $0xff49; BYTE $0xc0 // inc r8 JNE LBB0_1132 LBB0_1133: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1134 LBB0_1138: LONG $0xfce78348 // and rdi, -4 WORD $0xf748; BYTE $0xdf // neg rdi WORD $0xc031 // xor eax, eax LBB0_1139: LONG $0x0204100f // movups xmm0, oword [rdx + rax] LONG $0x024c100f; BYTE $0x10 // movups xmm1, oword [rdx + rax + 16] LONG $0x0104110f // movups oword [rcx + rax], xmm0 LONG $0x014c110f; BYTE $0x10 // movups oword [rcx + rax + 16], xmm1 LONG $0x0244100f; BYTE $0x20 // movups xmm0, oword [rdx + rax + 32] LONG $0x024c100f; BYTE $0x30 // movups xmm1, oword [rdx + rax + 48] LONG $0x0144110f; BYTE $0x20 // movups oword [rcx + rax + 32], xmm0 LONG $0x014c110f; BYTE $0x30 // movups oword [rcx + rax + 48], xmm1 LONG $0x0244100f; BYTE $0x40 // movups xmm0, oword [rdx + rax + 64] LONG $0x024c100f; BYTE $0x50 // movups xmm1, oword [rdx + rax + 80] LONG $0x0144110f; BYTE $0x40 // movups oword [rcx + rax + 64], xmm0 LONG $0x014c110f; BYTE $0x50 // movups oword [rcx + rax + 80], xmm1 LONG $0x44100f66; WORD $0x6002 // movupd xmm0, oword [rdx + rax + 96] LONG $0x4c100f66; WORD $0x7002 // movupd xmm1, oword [rdx + rax + 112] LONG $0x44110f66; WORD $0x6001 // movupd oword [rcx + rax + 96], xmm0 LONG $0x4c110f66; WORD $0x7001 // movupd oword [rcx + rax + 112], xmm1 LONG $0x80e88348 // sub rax, -128 LONG $0x04c78348 // add rdi, 4 JNE LBB0_1139 LBB0_1140: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_1143 LONG $0x10c08348 // add rax, 16 WORD $0xf749; BYTE $0xd8 // neg r8 LBB0_1142: LONG $0x44100f66; WORD $0xf002 // movupd xmm0, oword [rdx + rax - 16] LONG $0x0c100f66; BYTE $0x02 // movupd xmm1, oword [rdx + rax] LONG $0x44110f66; WORD $0xf001 // movupd oword [rcx + rax - 16], xmm0 LONG $0x0c110f66; BYTE $0x01 // movupd oword [rcx + rax], xmm1 LONG $0x20c08348 // add rax, 32 WORD $0xff49; BYTE $0xc0 // inc r8 JNE LBB0_1142 LBB0_1143: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1144 LBB0_1148: LONG $0xfce78348 // and rdi, -4 WORD $0xf748; BYTE $0xdf // neg rdi WORD $0xc031 // xor eax, eax LBB0_1149: LONG $0x22380f66; WORD $0x0204 // pmovsxbq xmm0, word [rdx + rax] LONG $0x22380f66; WORD $0x024c; BYTE $0x02 // pmovsxbq xmm1, word [rdx + rax + 2] LONG $0x047f0ff3; BYTE $0xc1 // movdqu oword [rcx + 8*rax], xmm0 LONG $0x4c7f0ff3; WORD $0x10c1 // movdqu oword [rcx + 8*rax + 16], xmm1 LONG $0x22380f66; WORD $0x0244; BYTE $0x04 // pmovsxbq xmm0, word [rdx + rax + 4] LONG $0x22380f66; WORD $0x024c; BYTE $0x06 // pmovsxbq xmm1, word [rdx + rax + 6] LONG $0x447f0ff3; WORD $0x20c1 // movdqu oword [rcx + 8*rax + 32], xmm0 LONG $0x4c7f0ff3; WORD $0x30c1 // movdqu oword [rcx + 8*rax + 48], xmm1 LONG $0x22380f66; WORD $0x0244; BYTE $0x08 // pmovsxbq xmm0, word [rdx + rax + 8] LONG $0x22380f66; WORD $0x024c; BYTE $0x0a // pmovsxbq xmm1, word [rdx + rax + 10] LONG $0x447f0ff3; WORD $0x40c1 // movdqu oword [rcx + 8*rax + 64], xmm0 LONG $0x4c7f0ff3; WORD $0x50c1 // movdqu oword [rcx + 8*rax + 80], xmm1 LONG $0x22380f66; WORD $0x0244; BYTE $0x0c // pmovsxbq xmm0, word [rdx + rax + 12] LONG $0x22380f66; WORD $0x024c; BYTE $0x0e // pmovsxbq xmm1, word [rdx + rax + 14] LONG $0x447f0ff3; WORD $0x60c1 // movdqu oword [rcx + 8*rax + 96], xmm0 LONG $0x4c7f0ff3; WORD $0x70c1 // movdqu oword [rcx + 8*rax + 112], xmm1 LONG $0x10c08348 // add rax, 16 LONG $0x04c78348 // add rdi, 4 JNE LBB0_1149 LBB0_1150: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_1153 LONG $0xc13c8d48 // lea rdi, [rcx + 8*rax] LONG $0x10c78348 // add rdi, 16 LONG $0x10148d4c // lea r10, [rax + rdx] LONG $0x02c28349 // add r10, 2 WORD $0xc031 // xor eax, eax LBB0_1152: QUAD $0xfe824422380f4166 // pmovsxbq xmm0, word [r10 + 4*rax - 2] LONG $0x380f4166; WORD $0x0c22; BYTE $0x82 // pmovsxbq xmm1, word [r10 + 4*rax] LONG $0x477f0ff3; BYTE $0xf0 // movdqu oword [rdi - 16], xmm0 LONG $0x0f7f0ff3 // movdqu oword [rdi], xmm1 LONG $0x20c78348 // add rdi, 32 LONG $0x01c08348 // add rax, 1 WORD $0x3949; BYTE $0xc0 // cmp r8, rax JNE LBB0_1152 LBB0_1153: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1154 LBB0_1158: LONG $0xfce78348 // and rdi, -4 WORD $0xf748; BYTE $0xdf // neg rdi WORD $0xc031 // xor eax, eax LBB0_1159: LONG $0xc204100f // movups xmm0, oword [rdx + 8*rax] LONG $0xc24c100f; BYTE $0x10 // movups xmm1, oword [rdx + 8*rax + 16] LONG $0xc104110f // movups oword [rcx + 8*rax], xmm0 LONG $0xc14c110f; BYTE $0x10 // movups oword [rcx + 8*rax + 16], xmm1 LONG $0xc244100f; BYTE $0x20 // movups xmm0, oword [rdx + 8*rax + 32] LONG $0xc24c100f; BYTE $0x30 // movups xmm1, oword [rdx + 8*rax + 48] LONG $0xc144110f; BYTE $0x20 // movups oword [rcx + 8*rax + 32], xmm0 LONG $0xc14c110f; BYTE $0x30 // movups oword [rcx + 8*rax + 48], xmm1 LONG $0xc244100f; BYTE $0x40 // movups xmm0, oword [rdx + 8*rax + 64] LONG $0xc24c100f; BYTE $0x50 // movups xmm1, oword [rdx + 8*rax + 80] LONG $0xc144110f; BYTE $0x40 // movups oword [rcx + 8*rax + 64], xmm0 LONG $0xc14c110f; BYTE $0x50 // movups oword [rcx + 8*rax + 80], xmm1 LONG $0x44100f66; WORD $0x60c2 // movupd xmm0, oword [rdx + 8*rax + 96] LONG $0x4c100f66; WORD $0x70c2 // movupd xmm1, oword [rdx + 8*rax + 112] LONG $0x44110f66; WORD $0x60c1 // movupd oword [rcx + 8*rax + 96], xmm0 LONG $0x4c110f66; WORD $0x70c1 // movupd oword [rcx + 8*rax + 112], xmm1 LONG $0x10c08348 // add rax, 16 LONG $0x04c78348 // add rdi, 4 JNE LBB0_1159 LBB0_1160: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_1163 QUAD $0x00000010c5048d48 // lea rax, [8*rax + 16] WORD $0xf749; BYTE $0xd8 // neg r8 LBB0_1162: LONG $0x44100f66; WORD $0xf002 // movupd xmm0, oword [rdx + rax - 16] LONG $0x0c100f66; BYTE $0x02 // movupd xmm1, oword [rdx + rax] LONG $0x44110f66; WORD $0xf001 // movupd oword [rcx + rax - 16], xmm0 LONG $0x0c110f66; BYTE $0x01 // movupd oword [rcx + rax], xmm1 LONG $0x20c08348 // add rax, 32 WORD $0xff49; BYTE $0xc0 // inc r8 JNE LBB0_1162 LBB0_1163: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1164 LBB0_1168: LONG $0xfce78348 // and rdi, -4 WORD $0xf748; BYTE $0xdf // neg rdi WORD $0xc031 // xor eax, eax LBB0_1169: LONG $0xc204100f // movups xmm0, oword [rdx + 8*rax] LONG $0xc24c100f; BYTE $0x10 // movups xmm1, oword [rdx + 8*rax + 16] LONG $0xc104110f // movups oword [rcx + 8*rax], xmm0 LONG $0xc14c110f; BYTE $0x10 // movups oword [rcx + 8*rax + 16], xmm1 LONG $0xc244100f; BYTE $0x20 // movups xmm0, oword [rdx + 8*rax + 32] LONG $0xc24c100f; BYTE $0x30 // movups xmm1, oword [rdx + 8*rax + 48] LONG $0xc144110f; BYTE $0x20 // movups oword [rcx + 8*rax + 32], xmm0 LONG $0xc14c110f; BYTE $0x30 // movups oword [rcx + 8*rax + 48], xmm1 LONG $0xc244100f; BYTE $0x40 // movups xmm0, oword [rdx + 8*rax + 64] LONG $0xc24c100f; BYTE $0x50 // movups xmm1, oword [rdx + 8*rax + 80] LONG $0xc144110f; BYTE $0x40 // movups oword [rcx + 8*rax + 64], xmm0 LONG $0xc14c110f; BYTE $0x50 // movups oword [rcx + 8*rax + 80], xmm1 LONG $0x44100f66; WORD $0x60c2 // movupd xmm0, oword [rdx + 8*rax + 96] LONG $0x4c100f66; WORD $0x70c2 // movupd xmm1, oword [rdx + 8*rax + 112] LONG $0x44110f66; WORD $0x60c1 // movupd oword [rcx + 8*rax + 96], xmm0 LONG $0x4c110f66; WORD $0x70c1 // movupd oword [rcx + 8*rax + 112], xmm1 LONG $0x10c08348 // add rax, 16 LONG $0x04c78348 // add rdi, 4 JNE LBB0_1169 LBB0_1170: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_1173 QUAD $0x00000010c5048d48 // lea rax, [8*rax + 16] WORD $0xf749; BYTE $0xd8 // neg r8 LBB0_1172: LONG $0x44100f66; WORD $0xf002 // movupd xmm0, oword [rdx + rax - 16] LONG $0x0c100f66; BYTE $0x02 // movupd xmm1, oword [rdx + rax] LONG $0x44110f66; WORD $0xf001 // movupd oword [rcx + rax - 16], xmm0 LONG $0x0c110f66; BYTE $0x01 // movupd oword [rcx + rax], xmm1 LONG $0x20c08348 // add rax, 32 WORD $0xff49; BYTE $0xc0 // inc r8 JNE LBB0_1172 LBB0_1173: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1174 LBB0_1178: LONG $0xfce78348 // and rdi, -4 WORD $0xf748; BYTE $0xdf // neg rdi WORD $0xc031 // xor eax, eax LBB0_1179: LONG $0x32380f66; WORD $0x0204 // pmovzxbq xmm0, word [rdx + rax] LONG $0x32380f66; WORD $0x024c; BYTE $0x02 // pmovzxbq xmm1, word [rdx + rax + 2] LONG $0x047f0ff3; BYTE $0xc1 // movdqu oword [rcx + 8*rax], xmm0 LONG $0x4c7f0ff3; WORD $0x10c1 // movdqu oword [rcx + 8*rax + 16], xmm1 LONG $0x32380f66; WORD $0x0244; BYTE $0x04 // pmovzxbq xmm0, word [rdx + rax + 4] LONG $0x32380f66; WORD $0x024c; BYTE $0x06 // pmovzxbq xmm1, word [rdx + rax + 6] LONG $0x447f0ff3; WORD $0x20c1 // movdqu oword [rcx + 8*rax + 32], xmm0 LONG $0x4c7f0ff3; WORD $0x30c1 // movdqu oword [rcx + 8*rax + 48], xmm1 LONG $0x32380f66; WORD $0x0244; BYTE $0x08 // pmovzxbq xmm0, word [rdx + rax + 8] LONG $0x32380f66; WORD $0x024c; BYTE $0x0a // pmovzxbq xmm1, word [rdx + rax + 10] LONG $0x447f0ff3; WORD $0x40c1 // movdqu oword [rcx + 8*rax + 64], xmm0 LONG $0x4c7f0ff3; WORD $0x50c1 // movdqu oword [rcx + 8*rax + 80], xmm1 LONG $0x32380f66; WORD $0x0244; BYTE $0x0c // pmovzxbq xmm0, word [rdx + rax + 12] LONG $0x32380f66; WORD $0x024c; BYTE $0x0e // pmovzxbq xmm1, word [rdx + rax + 14] LONG $0x447f0ff3; WORD $0x60c1 // movdqu oword [rcx + 8*rax + 96], xmm0 LONG $0x4c7f0ff3; WORD $0x70c1 // movdqu oword [rcx + 8*rax + 112], xmm1 LONG $0x10c08348 // add rax, 16 LONG $0x04c78348 // add rdi, 4 JNE LBB0_1179 LBB0_1180: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_1183 LONG $0xc13c8d48 // lea rdi, [rcx + 8*rax] LONG $0x10c78348 // add rdi, 16 LONG $0x10148d4c // lea r10, [rax + rdx] LONG $0x02c28349 // add r10, 2 WORD $0xc031 // xor eax, eax LBB0_1182: QUAD $0xfe824432380f4166 // pmovzxbq xmm0, word [r10 + 4*rax - 2] LONG $0x380f4166; WORD $0x0c32; BYTE $0x82 // pmovzxbq xmm1, word [r10 + 4*rax] LONG $0x477f0ff3; BYTE $0xf0 // movdqu oword [rdi - 16], xmm0 LONG $0x0f7f0ff3 // movdqu oword [rdi], xmm1 LONG $0x20c78348 // add rdi, 32 LONG $0x01c08348 // add rax, 1 WORD $0x3949; BYTE $0xc0 // cmp r8, rax JNE LBB0_1182 LBB0_1183: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1184 LBB0_1188: LONG $0xfce78348 // and rdi, -4 WORD $0xf748; BYTE $0xdf // neg rdi WORD $0xc031 // xor eax, eax LBB0_1189: LONG $0x4204100f // movups xmm0, oword [rdx + 2*rax] LONG $0x424c100f; BYTE $0x10 // movups xmm1, oword [rdx + 2*rax + 16] LONG $0x4104110f // movups oword [rcx + 2*rax], xmm0 LONG $0x414c110f; BYTE $0x10 // movups oword [rcx + 2*rax + 16], xmm1 LONG $0x4244100f; BYTE $0x20 // movups xmm0, oword [rdx + 2*rax + 32] LONG $0x424c100f; BYTE $0x30 // movups xmm1, oword [rdx + 2*rax + 48] LONG $0x4144110f; BYTE $0x20 // movups oword [rcx + 2*rax + 32], xmm0 LONG $0x414c110f; BYTE $0x30 // movups oword [rcx + 2*rax + 48], xmm1 LONG $0x4244100f; BYTE $0x40 // movups xmm0, oword [rdx + 2*rax + 64] LONG $0x424c100f; BYTE $0x50 // movups xmm1, oword [rdx + 2*rax + 80] LONG $0x4144110f; BYTE $0x40 // movups oword [rcx + 2*rax + 64], xmm0 LONG $0x414c110f; BYTE $0x50 // movups oword [rcx + 2*rax + 80], xmm1 LONG $0x44100f66; WORD $0x6042 // movupd xmm0, oword [rdx + 2*rax + 96] LONG $0x4c100f66; WORD $0x7042 // movupd xmm1, oword [rdx + 2*rax + 112] LONG $0x44110f66; WORD $0x6041 // movupd oword [rcx + 2*rax + 96], xmm0 LONG $0x4c110f66; WORD $0x7041 // movupd oword [rcx + 2*rax + 112], xmm1 LONG $0x40c08348 // add rax, 64 LONG $0x04c78348 // add rdi, 4 JNE LBB0_1189 LBB0_1190: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_1193 WORD $0x0148; BYTE $0xc0 // add rax, rax LONG $0x10c08348 // add rax, 16 WORD $0xf749; BYTE $0xd8 // neg r8 LBB0_1192: LONG $0x44100f66; WORD $0xf002 // movupd xmm0, oword [rdx + rax - 16] LONG $0x0c100f66; BYTE $0x02 // movupd xmm1, oword [rdx + rax] LONG $0x44110f66; WORD $0xf001 // movupd oword [rcx + rax - 16], xmm0 LONG $0x0c110f66; BYTE $0x01 // movupd oword [rcx + rax], xmm1 LONG $0x20c08348 // add rax, 32 WORD $0xff49; BYTE $0xc0 // inc r8 JNE LBB0_1192 LBB0_1193: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1194 LBB0_1198: LONG $0xfce78348 // and rdi, -4 WORD $0xf748; BYTE $0xdf // neg rdi WORD $0xc031 // xor eax, eax LBB0_1199: LONG $0x4204100f // movups xmm0, oword [rdx + 2*rax] LONG $0x424c100f; BYTE $0x10 // movups xmm1, oword [rdx + 2*rax + 16] LONG $0x4104110f // movups oword [rcx + 2*rax], xmm0 LONG $0x414c110f; BYTE $0x10 // movups oword [rcx + 2*rax + 16], xmm1 LONG $0x4244100f; BYTE $0x20 // movups xmm0, oword [rdx + 2*rax + 32] LONG $0x424c100f; BYTE $0x30 // movups xmm1, oword [rdx + 2*rax + 48] LONG $0x4144110f; BYTE $0x20 // movups oword [rcx + 2*rax + 32], xmm0 LONG $0x414c110f; BYTE $0x30 // movups oword [rcx + 2*rax + 48], xmm1 LONG $0x4244100f; BYTE $0x40 // movups xmm0, oword [rdx + 2*rax + 64] LONG $0x424c100f; BYTE $0x50 // movups xmm1, oword [rdx + 2*rax + 80] LONG $0x4144110f; BYTE $0x40 // movups oword [rcx + 2*rax + 64], xmm0 LONG $0x414c110f; BYTE $0x50 // movups oword [rcx + 2*rax + 80], xmm1 LONG $0x44100f66; WORD $0x6042 // movupd xmm0, oword [rdx + 2*rax + 96] LONG $0x4c100f66; WORD $0x7042 // movupd xmm1, oword [rdx + 2*rax + 112] LONG $0x44110f66; WORD $0x6041 // movupd oword [rcx + 2*rax + 96], xmm0 LONG $0x4c110f66; WORD $0x7041 // movupd oword [rcx + 2*rax + 112], xmm1 LONG $0x40c08348 // add rax, 64 LONG $0x04c78348 // add rdi, 4 JNE LBB0_1199 LBB0_1200: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_1203 WORD $0x0148; BYTE $0xc0 // add rax, rax LONG $0x10c08348 // add rax, 16 WORD $0xf749; BYTE $0xd8 // neg r8 LBB0_1202: LONG $0x44100f66; WORD $0xf002 // movupd xmm0, oword [rdx + rax - 16] LONG $0x0c100f66; BYTE $0x02 // movupd xmm1, oword [rdx + rax] LONG $0x44110f66; WORD $0xf001 // movupd oword [rcx + rax - 16], xmm0 LONG $0x0c110f66; BYTE $0x01 // movupd oword [rcx + rax], xmm1 LONG $0x20c08348 // add rax, 32 WORD $0xff49; BYTE $0xc0 // inc r8 JNE LBB0_1202 LBB0_1203: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1204 LBB0_1208: LONG $0xfce78348 // and rdi, -4 WORD $0xf748; BYTE $0xdf // neg rdi WORD $0xc031 // xor eax, eax LBB0_1209: LONG $0x4204100f // movups xmm0, oword [rdx + 2*rax] LONG $0x424c100f; BYTE $0x10 // movups xmm1, oword [rdx + 2*rax + 16] LONG $0x4104110f // movups oword [rcx + 2*rax], xmm0 LONG $0x414c110f; BYTE $0x10 // movups oword [rcx + 2*rax + 16], xmm1 LONG $0x4244100f; BYTE $0x20 // movups xmm0, oword [rdx + 2*rax + 32] LONG $0x424c100f; BYTE $0x30 // movups xmm1, oword [rdx + 2*rax + 48] LONG $0x4144110f; BYTE $0x20 // movups oword [rcx + 2*rax + 32], xmm0 LONG $0x414c110f; BYTE $0x30 // movups oword [rcx + 2*rax + 48], xmm1 LONG $0x4244100f; BYTE $0x40 // movups xmm0, oword [rdx + 2*rax + 64] LONG $0x424c100f; BYTE $0x50 // movups xmm1, oword [rdx + 2*rax + 80] LONG $0x4144110f; BYTE $0x40 // movups oword [rcx + 2*rax + 64], xmm0 LONG $0x414c110f; BYTE $0x50 // movups oword [rcx + 2*rax + 80], xmm1 LONG $0x44100f66; WORD $0x6042 // movupd xmm0, oword [rdx + 2*rax + 96] LONG $0x4c100f66; WORD $0x7042 // movupd xmm1, oword [rdx + 2*rax + 112] LONG $0x44110f66; WORD $0x6041 // movupd oword [rcx + 2*rax + 96], xmm0 LONG $0x4c110f66; WORD $0x7041 // movupd oword [rcx + 2*rax + 112], xmm1 LONG $0x40c08348 // add rax, 64 LONG $0x04c78348 // add rdi, 4 JNE LBB0_1209 LBB0_1210: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_1213 WORD $0x0148; BYTE $0xc0 // add rax, rax LONG $0x10c08348 // add rax, 16 WORD $0xf749; BYTE $0xd8 // neg r8 LBB0_1212: LONG $0x44100f66; WORD $0xf002 // movupd xmm0, oword [rdx + rax - 16] LONG $0x0c100f66; BYTE $0x02 // movupd xmm1, oword [rdx + rax] LONG $0x44110f66; WORD $0xf001 // movupd oword [rcx + rax - 16], xmm0 LONG $0x0c110f66; BYTE $0x01 // movupd oword [rcx + rax], xmm1 LONG $0x20c08348 // add rax, 32 WORD $0xff49; BYTE $0xc0 // inc r8 JNE LBB0_1212 LBB0_1213: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1214 LBB0_1218: LONG $0xfce78348 // and rdi, -4 WORD $0xf748; BYTE $0xdf // neg rdi WORD $0xc031 // xor eax, eax LBB0_1219: LONG $0x4204100f // movups xmm0, oword [rdx + 2*rax] LONG $0x424c100f; BYTE $0x10 // movups xmm1, oword [rdx + 2*rax + 16] LONG $0x4104110f // movups oword [rcx + 2*rax], xmm0 LONG $0x414c110f; BYTE $0x10 // movups oword [rcx + 2*rax + 16], xmm1 LONG $0x4244100f; BYTE $0x20 // movups xmm0, oword [rdx + 2*rax + 32] LONG $0x424c100f; BYTE $0x30 // movups xmm1, oword [rdx + 2*rax + 48] LONG $0x4144110f; BYTE $0x20 // movups oword [rcx + 2*rax + 32], xmm0 LONG $0x414c110f; BYTE $0x30 // movups oword [rcx + 2*rax + 48], xmm1 LONG $0x4244100f; BYTE $0x40 // movups xmm0, oword [rdx + 2*rax + 64] LONG $0x424c100f; BYTE $0x50 // movups xmm1, oword [rdx + 2*rax + 80] LONG $0x4144110f; BYTE $0x40 // movups oword [rcx + 2*rax + 64], xmm0 LONG $0x414c110f; BYTE $0x50 // movups oword [rcx + 2*rax + 80], xmm1 LONG $0x44100f66; WORD $0x6042 // movupd xmm0, oword [rdx + 2*rax + 96] LONG $0x4c100f66; WORD $0x7042 // movupd xmm1, oword [rdx + 2*rax + 112] LONG $0x44110f66; WORD $0x6041 // movupd oword [rcx + 2*rax + 96], xmm0 LONG $0x4c110f66; WORD $0x7041 // movupd oword [rcx + 2*rax + 112], xmm1 LONG $0x40c08348 // add rax, 64 LONG $0x04c78348 // add rdi, 4 JNE LBB0_1219 LBB0_1220: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_1223 WORD $0x0148; BYTE $0xc0 // add rax, rax LONG $0x10c08348 // add rax, 16 WORD $0xf749; BYTE $0xd8 // neg r8 LBB0_1222: LONG $0x44100f66; WORD $0xf002 // movupd xmm0, oword [rdx + rax - 16] LONG $0x0c100f66; BYTE $0x02 // movupd xmm1, oword [rdx + rax] LONG $0x44110f66; WORD $0xf001 // movupd oword [rcx + rax - 16], xmm0 LONG $0x0c110f66; BYTE $0x01 // movupd oword [rcx + rax], xmm1 LONG $0x20c08348 // add rax, 32 WORD $0xff49; BYTE $0xc0 // inc r8 JNE LBB0_1222 LBB0_1223: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1224 LBB0_1228: LONG $0xfce78348 // and rdi, -4 WORD $0xf748; BYTE $0xdf // neg rdi WORD $0xc031 // xor eax, eax LBB0_1229: LONG $0x22380f66; WORD $0x0204 // pmovsxbq xmm0, word [rdx + rax] LONG $0x22380f66; WORD $0x024c; BYTE $0x02 // pmovsxbq xmm1, word [rdx + rax + 2] LONG $0x047f0ff3; BYTE $0xc1 // movdqu oword [rcx + 8*rax], xmm0 LONG $0x4c7f0ff3; WORD $0x10c1 // movdqu oword [rcx + 8*rax + 16], xmm1 LONG $0x22380f66; WORD $0x0244; BYTE $0x04 // pmovsxbq xmm0, word [rdx + rax + 4] LONG $0x22380f66; WORD $0x024c; BYTE $0x06 // pmovsxbq xmm1, word [rdx + rax + 6] LONG $0x447f0ff3; WORD $0x20c1 // movdqu oword [rcx + 8*rax + 32], xmm0 LONG $0x4c7f0ff3; WORD $0x30c1 // movdqu oword [rcx + 8*rax + 48], xmm1 LONG $0x22380f66; WORD $0x0244; BYTE $0x08 // pmovsxbq xmm0, word [rdx + rax + 8] LONG $0x22380f66; WORD $0x024c; BYTE $0x0a // pmovsxbq xmm1, word [rdx + rax + 10] LONG $0x447f0ff3; WORD $0x40c1 // movdqu oword [rcx + 8*rax + 64], xmm0 LONG $0x4c7f0ff3; WORD $0x50c1 // movdqu oword [rcx + 8*rax + 80], xmm1 LONG $0x22380f66; WORD $0x0244; BYTE $0x0c // pmovsxbq xmm0, word [rdx + rax + 12] LONG $0x22380f66; WORD $0x024c; BYTE $0x0e // pmovsxbq xmm1, word [rdx + rax + 14] LONG $0x447f0ff3; WORD $0x60c1 // movdqu oword [rcx + 8*rax + 96], xmm0 LONG $0x4c7f0ff3; WORD $0x70c1 // movdqu oword [rcx + 8*rax + 112], xmm1 LONG $0x10c08348 // add rax, 16 LONG $0x04c78348 // add rdi, 4 JNE LBB0_1229 LBB0_1230: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_1233 LONG $0xc13c8d48 // lea rdi, [rcx + 8*rax] LONG $0x10c78348 // add rdi, 16 LONG $0x10148d4c // lea r10, [rax + rdx] LONG $0x02c28349 // add r10, 2 WORD $0xc031 // xor eax, eax LBB0_1232: QUAD $0xfe824422380f4166 // pmovsxbq xmm0, word [r10 + 4*rax - 2] LONG $0x380f4166; WORD $0x0c22; BYTE $0x82 // pmovsxbq xmm1, word [r10 + 4*rax] LONG $0x477f0ff3; BYTE $0xf0 // movdqu oword [rdi - 16], xmm0 LONG $0x0f7f0ff3 // movdqu oword [rdi], xmm1 LONG $0x20c78348 // add rdi, 32 LONG $0x01c08348 // add rax, 1 WORD $0x3949; BYTE $0xc0 // cmp r8, rax JNE LBB0_1232 LBB0_1233: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1234 LBB0_1238: LONG $0xfce78348 // and rdi, -4 WORD $0xf748; BYTE $0xdf // neg rdi WORD $0xc031 // xor eax, eax LBB0_1239: LONG $0xc204100f // movups xmm0, oword [rdx + 8*rax] LONG $0xc24c100f; BYTE $0x10 // movups xmm1, oword [rdx + 8*rax + 16] LONG $0xc104110f // movups oword [rcx + 8*rax], xmm0 LONG $0xc14c110f; BYTE $0x10 // movups oword [rcx + 8*rax + 16], xmm1 LONG $0xc244100f; BYTE $0x20 // movups xmm0, oword [rdx + 8*rax + 32] LONG $0xc24c100f; BYTE $0x30 // movups xmm1, oword [rdx + 8*rax + 48] LONG $0xc144110f; BYTE $0x20 // movups oword [rcx + 8*rax + 32], xmm0 LONG $0xc14c110f; BYTE $0x30 // movups oword [rcx + 8*rax + 48], xmm1 LONG $0xc244100f; BYTE $0x40 // movups xmm0, oword [rdx + 8*rax + 64] LONG $0xc24c100f; BYTE $0x50 // movups xmm1, oword [rdx + 8*rax + 80] LONG $0xc144110f; BYTE $0x40 // movups oword [rcx + 8*rax + 64], xmm0 LONG $0xc14c110f; BYTE $0x50 // movups oword [rcx + 8*rax + 80], xmm1 LONG $0x44100f66; WORD $0x60c2 // movupd xmm0, oword [rdx + 8*rax + 96] LONG $0x4c100f66; WORD $0x70c2 // movupd xmm1, oword [rdx + 8*rax + 112] LONG $0x44110f66; WORD $0x60c1 // movupd oword [rcx + 8*rax + 96], xmm0 LONG $0x4c110f66; WORD $0x70c1 // movupd oword [rcx + 8*rax + 112], xmm1 LONG $0x10c08348 // add rax, 16 LONG $0x04c78348 // add rdi, 4 JNE LBB0_1239 LBB0_1240: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_1243 QUAD $0x00000010c5048d48 // lea rax, [8*rax + 16] WORD $0xf749; BYTE $0xd8 // neg r8 LBB0_1242: LONG $0x44100f66; WORD $0xf002 // movupd xmm0, oword [rdx + rax - 16] LONG $0x0c100f66; BYTE $0x02 // movupd xmm1, oword [rdx + rax] LONG $0x44110f66; WORD $0xf001 // movupd oword [rcx + rax - 16], xmm0 LONG $0x0c110f66; BYTE $0x01 // movupd oword [rcx + rax], xmm1 LONG $0x20c08348 // add rax, 32 WORD $0xff49; BYTE $0xc0 // inc r8 JNE LBB0_1242 LBB0_1243: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1244 LBB0_1248: LONG $0xfce78348 // and rdi, -4 WORD $0xf748; BYTE $0xdf // neg rdi WORD $0xc031 // xor eax, eax LBB0_1249: LONG $0xc204100f // movups xmm0, oword [rdx + 8*rax] LONG $0xc24c100f; BYTE $0x10 // movups xmm1, oword [rdx + 8*rax + 16] LONG $0xc104110f // movups oword [rcx + 8*rax], xmm0 LONG $0xc14c110f; BYTE $0x10 // movups oword [rcx + 8*rax + 16], xmm1 LONG $0xc244100f; BYTE $0x20 // movups xmm0, oword [rdx + 8*rax + 32] LONG $0xc24c100f; BYTE $0x30 // movups xmm1, oword [rdx + 8*rax + 48] LONG $0xc144110f; BYTE $0x20 // movups oword [rcx + 8*rax + 32], xmm0 LONG $0xc14c110f; BYTE $0x30 // movups oword [rcx + 8*rax + 48], xmm1 LONG $0xc244100f; BYTE $0x40 // movups xmm0, oword [rdx + 8*rax + 64] LONG $0xc24c100f; BYTE $0x50 // movups xmm1, oword [rdx + 8*rax + 80] LONG $0xc144110f; BYTE $0x40 // movups oword [rcx + 8*rax + 64], xmm0 LONG $0xc14c110f; BYTE $0x50 // movups oword [rcx + 8*rax + 80], xmm1 LONG $0x44100f66; WORD $0x60c2 // movupd xmm0, oword [rdx + 8*rax + 96] LONG $0x4c100f66; WORD $0x70c2 // movupd xmm1, oword [rdx + 8*rax + 112] LONG $0x44110f66; WORD $0x60c1 // movupd oword [rcx + 8*rax + 96], xmm0 LONG $0x4c110f66; WORD $0x70c1 // movupd oword [rcx + 8*rax + 112], xmm1 LONG $0x10c08348 // add rax, 16 LONG $0x04c78348 // add rdi, 4 JNE LBB0_1249 LBB0_1250: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_1253 QUAD $0x00000010c5048d48 // lea rax, [8*rax + 16] WORD $0xf749; BYTE $0xd8 // neg r8 LBB0_1252: LONG $0x44100f66; WORD $0xf002 // movupd xmm0, oword [rdx + rax - 16] LONG $0x0c100f66; BYTE $0x02 // movupd xmm1, oword [rdx + rax] LONG $0x44110f66; WORD $0xf001 // movupd oword [rcx + rax - 16], xmm0 LONG $0x0c110f66; BYTE $0x01 // movupd oword [rcx + rax], xmm1 LONG $0x20c08348 // add rax, 32 WORD $0xff49; BYTE $0xc0 // inc r8 JNE LBB0_1252 LBB0_1253: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1254 LBB0_1258: LONG $0xfce78348 // and rdi, -4 WORD $0xf748; BYTE $0xdf // neg rdi WORD $0xc031 // xor eax, eax LBB0_1259: LONG $0x8204100f // movups xmm0, oword [rdx + 4*rax] LONG $0x824c100f; BYTE $0x10 // movups xmm1, oword [rdx + 4*rax + 16] LONG $0x8104110f // movups oword [rcx + 4*rax], xmm0 LONG $0x814c110f; BYTE $0x10 // movups oword [rcx + 4*rax + 16], xmm1 LONG $0x8244100f; BYTE $0x20 // movups xmm0, oword [rdx + 4*rax + 32] LONG $0x824c100f; BYTE $0x30 // movups xmm1, oword [rdx + 4*rax + 48] LONG $0x8144110f; BYTE $0x20 // movups oword [rcx + 4*rax + 32], xmm0 LONG $0x814c110f; BYTE $0x30 // movups oword [rcx + 4*rax + 48], xmm1 LONG $0x8244100f; BYTE $0x40 // movups xmm0, oword [rdx + 4*rax + 64] LONG $0x824c100f; BYTE $0x50 // movups xmm1, oword [rdx + 4*rax + 80] LONG $0x8144110f; BYTE $0x40 // movups oword [rcx + 4*rax + 64], xmm0 LONG $0x814c110f; BYTE $0x50 // movups oword [rcx + 4*rax + 80], xmm1 LONG $0x44100f66; WORD $0x6082 // movupd xmm0, oword [rdx + 4*rax + 96] LONG $0x4c100f66; WORD $0x7082 // movupd xmm1, oword [rdx + 4*rax + 112] LONG $0x44110f66; WORD $0x6081 // movupd oword [rcx + 4*rax + 96], xmm0 LONG $0x4c110f66; WORD $0x7081 // movupd oword [rcx + 4*rax + 112], xmm1 LONG $0x20c08348 // add rax, 32 LONG $0x04c78348 // add rdi, 4 JNE LBB0_1259 LBB0_1260: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_1263 QUAD $0x0000001085048d48 // lea rax, [4*rax + 16] WORD $0xf749; BYTE $0xd8 // neg r8 LBB0_1262: LONG $0x44100f66; WORD $0xf002 // movupd xmm0, oword [rdx + rax - 16] LONG $0x0c100f66; BYTE $0x02 // movupd xmm1, oword [rdx + rax] LONG $0x44110f66; WORD $0xf001 // movupd oword [rcx + rax - 16], xmm0 LONG $0x0c110f66; BYTE $0x01 // movupd oword [rcx + rax], xmm1 LONG $0x20c08348 // add rax, 32 WORD $0xff49; BYTE $0xc0 // inc r8 JNE LBB0_1262 LBB0_1263: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1264 LBB0_1268: LONG $0xfce78348 // and rdi, -4 WORD $0xf748; BYTE $0xdf // neg rdi WORD $0xc031 // xor eax, eax LBB0_1269: LONG $0x32380f66; WORD $0x0204 // pmovzxbq xmm0, word [rdx + rax] LONG $0x32380f66; WORD $0x024c; BYTE $0x02 // pmovzxbq xmm1, word [rdx + rax + 2] LONG $0x047f0ff3; BYTE $0xc1 // movdqu oword [rcx + 8*rax], xmm0 LONG $0x4c7f0ff3; WORD $0x10c1 // movdqu oword [rcx + 8*rax + 16], xmm1 LONG $0x32380f66; WORD $0x0244; BYTE $0x04 // pmovzxbq xmm0, word [rdx + rax + 4] LONG $0x32380f66; WORD $0x024c; BYTE $0x06 // pmovzxbq xmm1, word [rdx + rax + 6] LONG $0x447f0ff3; WORD $0x20c1 // movdqu oword [rcx + 8*rax + 32], xmm0 LONG $0x4c7f0ff3; WORD $0x30c1 // movdqu oword [rcx + 8*rax + 48], xmm1 LONG $0x32380f66; WORD $0x0244; BYTE $0x08 // pmovzxbq xmm0, word [rdx + rax + 8] LONG $0x32380f66; WORD $0x024c; BYTE $0x0a // pmovzxbq xmm1, word [rdx + rax + 10] LONG $0x447f0ff3; WORD $0x40c1 // movdqu oword [rcx + 8*rax + 64], xmm0 LONG $0x4c7f0ff3; WORD $0x50c1 // movdqu oword [rcx + 8*rax + 80], xmm1 LONG $0x32380f66; WORD $0x0244; BYTE $0x0c // pmovzxbq xmm0, word [rdx + rax + 12] LONG $0x32380f66; WORD $0x024c; BYTE $0x0e // pmovzxbq xmm1, word [rdx + rax + 14] LONG $0x447f0ff3; WORD $0x60c1 // movdqu oword [rcx + 8*rax + 96], xmm0 LONG $0x4c7f0ff3; WORD $0x70c1 // movdqu oword [rcx + 8*rax + 112], xmm1 LONG $0x10c08348 // add rax, 16 LONG $0x04c78348 // add rdi, 4 JNE LBB0_1269 LBB0_1270: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_1273 LONG $0xc13c8d48 // lea rdi, [rcx + 8*rax] LONG $0x10c78348 // add rdi, 16 LONG $0x10148d4c // lea r10, [rax + rdx] LONG $0x02c28349 // add r10, 2 WORD $0xc031 // xor eax, eax LBB0_1272: QUAD $0xfe824432380f4166 // pmovzxbq xmm0, word [r10 + 4*rax - 2] LONG $0x380f4166; WORD $0x0c32; BYTE $0x82 // pmovzxbq xmm1, word [r10 + 4*rax] LONG $0x477f0ff3; BYTE $0xf0 // movdqu oword [rdi - 16], xmm0 LONG $0x0f7f0ff3 // movdqu oword [rdi], xmm1 LONG $0x20c78348 // add rdi, 32 LONG $0x01c08348 // add rax, 1 WORD $0x3949; BYTE $0xc0 // cmp r8, rax JNE LBB0_1272 LBB0_1273: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1274 LBB0_1278: LONG $0xfce78348 // and rdi, -4 WORD $0xf748; BYTE $0xdf // neg rdi WORD $0xc031 // xor eax, eax LBB0_1279: LONG $0x0204100f // movups xmm0, oword [rdx + rax] LONG $0x024c100f; BYTE $0x10 // movups xmm1, oword [rdx + rax + 16] LONG $0x0104110f // movups oword [rcx + rax], xmm0 LONG $0x014c110f; BYTE $0x10 // movups oword [rcx + rax + 16], xmm1 LONG $0x0244100f; BYTE $0x20 // movups xmm0, oword [rdx + rax + 32] LONG $0x024c100f; BYTE $0x30 // movups xmm1, oword [rdx + rax + 48] LONG $0x0144110f; BYTE $0x20 // movups oword [rcx + rax + 32], xmm0 LONG $0x014c110f; BYTE $0x30 // movups oword [rcx + rax + 48], xmm1 LONG $0x0244100f; BYTE $0x40 // movups xmm0, oword [rdx + rax + 64] LONG $0x024c100f; BYTE $0x50 // movups xmm1, oword [rdx + rax + 80] LONG $0x0144110f; BYTE $0x40 // movups oword [rcx + rax + 64], xmm0 LONG $0x014c110f; BYTE $0x50 // movups oword [rcx + rax + 80], xmm1 LONG $0x44100f66; WORD $0x6002 // movupd xmm0, oword [rdx + rax + 96] LONG $0x4c100f66; WORD $0x7002 // movupd xmm1, oword [rdx + rax + 112] LONG $0x44110f66; WORD $0x6001 // movupd oword [rcx + rax + 96], xmm0 LONG $0x4c110f66; WORD $0x7001 // movupd oword [rcx + rax + 112], xmm1 LONG $0x80e88348 // sub rax, -128 LONG $0x04c78348 // add rdi, 4 JNE LBB0_1279 LBB0_1280: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_1283 LONG $0x10c08348 // add rax, 16 WORD $0xf749; BYTE $0xd8 // neg r8 LBB0_1282: LONG $0x44100f66; WORD $0xf002 // movupd xmm0, oword [rdx + rax - 16] LONG $0x0c100f66; BYTE $0x02 // movupd xmm1, oword [rdx + rax] LONG $0x44110f66; WORD $0xf001 // movupd oword [rcx + rax - 16], xmm0 LONG $0x0c110f66; BYTE $0x01 // movupd oword [rcx + rax], xmm1 LONG $0x20c08348 // add rax, 32 WORD $0xff49; BYTE $0xc0 // inc r8 JNE LBB0_1282 LBB0_1283: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1284 LBB0_1288: LONG $0xfce78348 // and rdi, -4 WORD $0xf748; BYTE $0xdf // neg rdi WORD $0xc031 // xor eax, eax LBB0_1289: LONG $0x0204100f // movups xmm0, oword [rdx + rax] LONG $0x024c100f; BYTE $0x10 // movups xmm1, oword [rdx + rax + 16] LONG $0x0104110f // movups oword [rcx + rax], xmm0 LONG $0x014c110f; BYTE $0x10 // movups oword [rcx + rax + 16], xmm1 LONG $0x0244100f; BYTE $0x20 // movups xmm0, oword [rdx + rax + 32] LONG $0x024c100f; BYTE $0x30 // movups xmm1, oword [rdx + rax + 48] LONG $0x0144110f; BYTE $0x20 // movups oword [rcx + rax + 32], xmm0 LONG $0x014c110f; BYTE $0x30 // movups oword [rcx + rax + 48], xmm1 LONG $0x0244100f; BYTE $0x40 // movups xmm0, oword [rdx + rax + 64] LONG $0x024c100f; BYTE $0x50 // movups xmm1, oword [rdx + rax + 80] LONG $0x0144110f; BYTE $0x40 // movups oword [rcx + rax + 64], xmm0 LONG $0x014c110f; BYTE $0x50 // movups oword [rcx + rax + 80], xmm1 LONG $0x44100f66; WORD $0x6002 // movupd xmm0, oword [rdx + rax + 96] LONG $0x4c100f66; WORD $0x7002 // movupd xmm1, oword [rdx + rax + 112] LONG $0x44110f66; WORD $0x6001 // movupd oword [rcx + rax + 96], xmm0 LONG $0x4c110f66; WORD $0x7001 // movupd oword [rcx + rax + 112], xmm1 LONG $0x80e88348 // sub rax, -128 LONG $0x04c78348 // add rdi, 4 JNE LBB0_1289 LBB0_1290: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_1293 LONG $0x10c08348 // add rax, 16 WORD $0xf749; BYTE $0xd8 // neg r8 LBB0_1292: LONG $0x44100f66; WORD $0xf002 // movupd xmm0, oword [rdx + rax - 16] LONG $0x0c100f66; BYTE $0x02 // movupd xmm1, oword [rdx + rax] LONG $0x44110f66; WORD $0xf001 // movupd oword [rcx + rax - 16], xmm0 LONG $0x0c110f66; BYTE $0x01 // movupd oword [rcx + rax], xmm1 LONG $0x20c08348 // add rax, 32 WORD $0xff49; BYTE $0xc0 // inc r8 JNE LBB0_1292 LBB0_1293: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1294 LBB0_1298: LONG $0xfce78348 // and rdi, -4 WORD $0xf748; BYTE $0xdf // neg rdi WORD $0xc031 // xor eax, eax LBB0_1299: LONG $0x8204100f // movups xmm0, oword [rdx + 4*rax] LONG $0x824c100f; BYTE $0x10 // movups xmm1, oword [rdx + 4*rax + 16] LONG $0x8104110f // movups oword [rcx + 4*rax], xmm0 LONG $0x814c110f; BYTE $0x10 // movups oword [rcx + 4*rax + 16], xmm1 LONG $0x8244100f; BYTE $0x20 // movups xmm0, oword [rdx + 4*rax + 32] LONG $0x824c100f; BYTE $0x30 // movups xmm1, oword [rdx + 4*rax + 48] LONG $0x8144110f; BYTE $0x20 // movups oword [rcx + 4*rax + 32], xmm0 LONG $0x814c110f; BYTE $0x30 // movups oword [rcx + 4*rax + 48], xmm1 LONG $0x8244100f; BYTE $0x40 // movups xmm0, oword [rdx + 4*rax + 64] LONG $0x824c100f; BYTE $0x50 // movups xmm1, oword [rdx + 4*rax + 80] LONG $0x8144110f; BYTE $0x40 // movups oword [rcx + 4*rax + 64], xmm0 LONG $0x814c110f; BYTE $0x50 // movups oword [rcx + 4*rax + 80], xmm1 LONG $0x44100f66; WORD $0x6082 // movupd xmm0, oword [rdx + 4*rax + 96] LONG $0x4c100f66; WORD $0x7082 // movupd xmm1, oword [rdx + 4*rax + 112] LONG $0x44110f66; WORD $0x6081 // movupd oword [rcx + 4*rax + 96], xmm0 LONG $0x4c110f66; WORD $0x7081 // movupd oword [rcx + 4*rax + 112], xmm1 LONG $0x20c08348 // add rax, 32 LONG $0x04c78348 // add rdi, 4 JNE LBB0_1299 LBB0_1300: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_1303 QUAD $0x0000001085048d48 // lea rax, [4*rax + 16] WORD $0xf749; BYTE $0xd8 // neg r8 LBB0_1302: LONG $0x44100f66; WORD $0xf002 // movupd xmm0, oword [rdx + rax - 16] LONG $0x0c100f66; BYTE $0x02 // movupd xmm1, oword [rdx + rax] LONG $0x44110f66; WORD $0xf001 // movupd oword [rcx + rax - 16], xmm0 LONG $0x0c110f66; BYTE $0x01 // movupd oword [rcx + rax], xmm1 LONG $0x20c08348 // add rax, 32 WORD $0xff49; BYTE $0xc0 // inc r8 JNE LBB0_1302 LBB0_1303: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1304 LBB0_1308: LONG $0xfce78348 // and rdi, -4 WORD $0xf748; BYTE $0xdf // neg rdi WORD $0xc031 // xor eax, eax LBB0_1309: LONG $0x8204100f // movups xmm0, oword [rdx + 4*rax] LONG $0x824c100f; BYTE $0x10 // movups xmm1, oword [rdx + 4*rax + 16] LONG $0x8104110f // movups oword [rcx + 4*rax], xmm0 LONG $0x814c110f; BYTE $0x10 // movups oword [rcx + 4*rax + 16], xmm1 LONG $0x8244100f; BYTE $0x20 // movups xmm0, oword [rdx + 4*rax + 32] LONG $0x824c100f; BYTE $0x30 // movups xmm1, oword [rdx + 4*rax + 48] LONG $0x8144110f; BYTE $0x20 // movups oword [rcx + 4*rax + 32], xmm0 LONG $0x814c110f; BYTE $0x30 // movups oword [rcx + 4*rax + 48], xmm1 LONG $0x8244100f; BYTE $0x40 // movups xmm0, oword [rdx + 4*rax + 64] LONG $0x824c100f; BYTE $0x50 // movups xmm1, oword [rdx + 4*rax + 80] LONG $0x8144110f; BYTE $0x40 // movups oword [rcx + 4*rax + 64], xmm0 LONG $0x814c110f; BYTE $0x50 // movups oword [rcx + 4*rax + 80], xmm1 LONG $0x44100f66; WORD $0x6082 // movupd xmm0, oword [rdx + 4*rax + 96] LONG $0x4c100f66; WORD $0x7082 // movupd xmm1, oword [rdx + 4*rax + 112] LONG $0x44110f66; WORD $0x6081 // movupd oword [rcx + 4*rax + 96], xmm0 LONG $0x4c110f66; WORD $0x7081 // movupd oword [rcx + 4*rax + 112], xmm1 LONG $0x20c08348 // add rax, 32 LONG $0x04c78348 // add rdi, 4 JNE LBB0_1309 LBB0_1310: WORD $0x854d; BYTE $0xc0 // test r8, r8 JE LBB0_1313 QUAD $0x0000001085048d48 // lea rax, [4*rax + 16] WORD $0xf749; BYTE $0xd8 // neg r8 LBB0_1312: LONG $0x44100f66; WORD $0xf002 // movupd xmm0, oword [rdx + rax - 16] LONG $0x0c100f66; BYTE $0x02 // movupd xmm1, oword [rdx + rax] LONG $0x44110f66; WORD $0xf001 // movupd oword [rcx + rax - 16], xmm0 LONG $0x0c110f66; BYTE $0x01 // movupd oword [rcx + rax], xmm1 LONG $0x20c08348 // add rax, 32 WORD $0xff49; BYTE $0xc0 // inc r8 JNE LBB0_1312 LBB0_1313: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1314 LBB0_1318: WORD $0xff31 // xor edi, edi LBB0_1319: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1321 LONG $0x046f0ff3; BYTE $0xfa // movdqu xmm0, oword [rdx + 8*rdi] LONG $0x4c6f0ff3; WORD $0x10fa // movdqu xmm1, oword [rdx + 8*rdi + 16] LONG $0x556f0f66; BYTE $0x40 // movdqa xmm2, oword 64[rbp] /* [rip + .LCPI0_5] */ LONG $0x00380f66; BYTE $0xc2 // pshufb xmm0, xmm2 LONG $0x153a0f66; WORD $0x3904; BYTE $0x00 // pextrw word [rcx + rdi], xmm0, 0 LONG $0x00380f66; BYTE $0xca // pshufb xmm1, xmm2 QUAD $0x0002394c153a0f66 // pextrw word [rcx + rdi + 2], xmm1, 0 LBB0_1321: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1322 LBB0_1326: WORD $0xff31 // xor edi, edi LBB0_1327: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1329 LONG $0x046f0ff3; BYTE $0x7a // movdqu xmm0, oword [rdx + 2*rdi] LONG $0x4c6f0ff3; WORD $0x107a // movdqu xmm1, oword [rdx + 2*rdi + 16] QUAD $0x00000100956f0f66 // movdqa xmm2, oword 256[rbp] /* [rip + .LCPI0_17] */ LONG $0x00380f66; BYTE $0xc2 // pshufb xmm0, xmm2 LONG $0x00380f66; BYTE $0xca // pshufb xmm1, xmm2 LONG $0xc16c0f66 // punpcklqdq xmm0, xmm1 LONG $0x047f0ff3; BYTE $0x39 // movdqu oword [rcx + rdi], xmm0 LBB0_1329: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1330 LBB0_1334: WORD $0xff31 // xor edi, edi LBB0_1335: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1337 LONG $0x046f0ff3; BYTE $0xfa // movdqu xmm0, oword [rdx + 8*rdi] LONG $0x4c6f0ff3; WORD $0x10fa // movdqu xmm1, oword [rdx + 8*rdi + 16] LONG $0x556f0f66; BYTE $0x40 // movdqa xmm2, oword 64[rbp] /* [rip + .LCPI0_5] */ LONG $0x00380f66; BYTE $0xc2 // pshufb xmm0, xmm2 LONG $0x153a0f66; WORD $0x3904; BYTE $0x00 // pextrw word [rcx + rdi], xmm0, 0 LONG $0x00380f66; BYTE $0xca // pshufb xmm1, xmm2 QUAD $0x0002394c153a0f66 // pextrw word [rcx + rdi + 2], xmm1, 0 LBB0_1337: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1338 LBB0_1342: WORD $0xff31 // xor edi, edi LBB0_1343: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1345 LONG $0x046f0ff3; BYTE $0xba // movdqu xmm0, oword [rdx + 4*rdi] LONG $0x4c6f0ff3; WORD $0x10ba // movdqu xmm1, oword [rdx + 4*rdi + 16] QUAD $0x000000c0956f0f66 // movdqa xmm2, oword 192[rbp] /* [rip + .LCPI0_13] */ LONG $0x00380f66; BYTE $0xc2 // pshufb xmm0, xmm2 LONG $0x00380f66; BYTE $0xca // pshufb xmm1, xmm2 LONG $0x047e0f66; BYTE $0x39 // movd dword [rcx + rdi], xmm0 LONG $0x4c7e0f66; WORD $0x0439 // movd dword [rcx + rdi + 4], xmm1 LBB0_1345: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1346 LBB0_1350: WORD $0xff31 // xor edi, edi LBB0_1351: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1353 LONG $0x20380f66; WORD $0x3a04 // pmovsxbw xmm0, qword [rdx + rdi] LONG $0x20380f66; WORD $0x3a4c; BYTE $0x08 // pmovsxbw xmm1, qword [rdx + rdi + 8] LONG $0x047f0ff3; BYTE $0x79 // movdqu oword [rcx + 2*rdi], xmm0 LONG $0x4c7f0ff3; WORD $0x1079 // movdqu oword [rcx + 2*rdi + 16], xmm1 LBB0_1353: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1354 LBB0_1358: WORD $0xff31 // xor edi, edi LBB0_1359: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1361 LONG $0x20380f66; WORD $0x3a04 // pmovsxbw xmm0, qword [rdx + rdi] LONG $0x20380f66; WORD $0x3a4c; BYTE $0x08 // pmovsxbw xmm1, qword [rdx + rdi + 8] LONG $0x047f0ff3; BYTE $0x79 // movdqu oword [rcx + 2*rdi], xmm0 LONG $0x4c7f0ff3; WORD $0x1079 // movdqu oword [rcx + 2*rdi + 16], xmm1 LBB0_1361: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1362 LBB0_1366: WORD $0xff31 // xor edi, edi LBB0_1367: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1369 LONG $0x30380f66; WORD $0x3a04 // pmovzxbw xmm0, qword [rdx + rdi] LONG $0x30380f66; WORD $0x3a4c; BYTE $0x08 // pmovzxbw xmm1, qword [rdx + rdi + 8] LONG $0x047f0ff3; BYTE $0x79 // movdqu oword [rcx + 2*rdi], xmm0 LONG $0x4c7f0ff3; WORD $0x1079 // movdqu oword [rcx + 2*rdi + 16], xmm1 LBB0_1369: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1370 LBB0_1374: WORD $0xff31 // xor edi, edi LBB0_1375: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1377 LONG $0x30380f66; WORD $0x3a04 // pmovzxbw xmm0, qword [rdx + rdi] LONG $0x30380f66; WORD $0x3a4c; BYTE $0x08 // pmovzxbw xmm1, qword [rdx + rdi + 8] LONG $0x047f0ff3; BYTE $0x79 // movdqu oword [rcx + 2*rdi], xmm0 LONG $0x4c7f0ff3; WORD $0x1079 // movdqu oword [rcx + 2*rdi + 16], xmm1 LBB0_1377: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1378 LBB0_1382: WORD $0xff31 // xor edi, edi LBB0_1383: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1385 LONG $0x21380f66; WORD $0x3a04 // pmovsxbd xmm0, dword [rdx + rdi] LONG $0x21380f66; WORD $0x3a4c; BYTE $0x04 // pmovsxbd xmm1, dword [rdx + rdi + 4] WORD $0x5b0f; BYTE $0xc0 // cvtdq2ps xmm0, xmm0 WORD $0x5b0f; BYTE $0xc9 // cvtdq2ps xmm1, xmm1 LONG $0xb904110f // movups oword [rcx + 4*rdi], xmm0 LONG $0xb94c110f; BYTE $0x10 // movups oword [rcx + 4*rdi + 16], xmm1 LBB0_1385: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1386 LBB0_1390: WORD $0xff31 // xor edi, edi LBB0_1391: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1393 LONG $0x31380f66; WORD $0x3a04 // pmovzxbd xmm0, dword [rdx + rdi] LONG $0x31380f66; WORD $0x3a4c; BYTE $0x04 // pmovzxbd xmm1, dword [rdx + rdi + 4] WORD $0x5b0f; BYTE $0xc0 // cvtdq2ps xmm0, xmm0 WORD $0x5b0f; BYTE $0xc9 // cvtdq2ps xmm1, xmm1 LONG $0xb904110f // movups oword [rcx + 4*rdi], xmm0 LONG $0xb94c110f; BYTE $0x10 // movups oword [rcx + 4*rdi + 16], xmm1 LBB0_1393: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1394 LBB0_1398: WORD $0xff31 // xor edi, edi LBB0_1399: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1401 LONG $0x046f0ff3; BYTE $0xba // movdqu xmm0, oword [rdx + 4*rdi] LONG $0x4c6f0ff3; WORD $0x10ba // movdqu xmm1, oword [rdx + 4*rdi + 16] QUAD $0x000000c0956f0f66 // movdqa xmm2, oword 192[rbp] /* [rip + .LCPI0_13] */ LONG $0x00380f66; BYTE $0xc2 // pshufb xmm0, xmm2 LONG $0x00380f66; BYTE $0xca // pshufb xmm1, xmm2 LONG $0x047e0f66; BYTE $0x39 // movd dword [rcx + rdi], xmm0 LONG $0x4c7e0f66; WORD $0x0439 // movd dword [rcx + rdi + 4], xmm1 LBB0_1401: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1402 LBB0_1406: WORD $0xff31 // xor edi, edi LBB0_1407: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1409 LONG $0x04100f66; BYTE $0xfa // movupd xmm0, oword [rdx + 8*rdi] LONG $0xc0e60f66 // cvttpd2dq xmm0, xmm0 LONG $0x4c100f66; WORD $0x10fa // movupd xmm1, oword [rdx + 8*rdi + 16] LONG $0x556f0f66; BYTE $0x10 // movdqa xmm2, oword 16[rbp] /* [rip + .LCPI0_1] */ LONG $0xc9e60f66 // cvttpd2dq xmm1, xmm1 LONG $0x00380f66; BYTE $0xc2 // pshufb xmm0, xmm2 LONG $0x153a0f66; WORD $0x3904; BYTE $0x00 // pextrw word [rcx + rdi], xmm0, 0 LONG $0x00380f66; BYTE $0xca // pshufb xmm1, xmm2 QUAD $0x0002394c153a0f66 // pextrw word [rcx + rdi + 2], xmm1, 0 LBB0_1409: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1410 LBB0_1414: WORD $0xff31 // xor edi, edi LBB0_1415: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1417 LONG $0x046f0ff3; BYTE $0xfa // movdqu xmm0, oword [rdx + 8*rdi] LONG $0x4c6f0ff3; WORD $0x10fa // movdqu xmm1, oword [rdx + 8*rdi + 16] LONG $0x556f0f66; BYTE $0x40 // movdqa xmm2, oword 64[rbp] /* [rip + .LCPI0_5] */ LONG $0x00380f66; BYTE $0xc2 // pshufb xmm0, xmm2 LONG $0x153a0f66; WORD $0x3904; BYTE $0x00 // pextrw word [rcx + rdi], xmm0, 0 LONG $0x00380f66; BYTE $0xca // pshufb xmm1, xmm2 QUAD $0x0002394c153a0f66 // pextrw word [rcx + rdi + 2], xmm1, 0 LBB0_1417: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1418 LBB0_1422: WORD $0xff31 // xor edi, edi LBB0_1423: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1425 LONG $0x046f0ff3; BYTE $0x7a // movdqu xmm0, oword [rdx + 2*rdi] LONG $0x4c6f0ff3; WORD $0x107a // movdqu xmm1, oword [rdx + 2*rdi + 16] QUAD $0x00000100956f0f66 // movdqa xmm2, oword 256[rbp] /* [rip + .LCPI0_17] */ LONG $0x00380f66; BYTE $0xc2 // pshufb xmm0, xmm2 LONG $0x00380f66; BYTE $0xca // pshufb xmm1, xmm2 LONG $0xc16c0f66 // punpcklqdq xmm0, xmm1 LONG $0x047f0ff3; BYTE $0x39 // movdqu oword [rcx + rdi], xmm0 LBB0_1425: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1426 LBB0_1430: WORD $0xff31 // xor edi, edi LBB0_1431: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1433 LONG $0x046f0ff3; BYTE $0x7a // movdqu xmm0, oword [rdx + 2*rdi] LONG $0x4c6f0ff3; WORD $0x107a // movdqu xmm1, oword [rdx + 2*rdi + 16] QUAD $0x00000100956f0f66 // movdqa xmm2, oword 256[rbp] /* [rip + .LCPI0_17] */ LONG $0x00380f66; BYTE $0xc2 // pshufb xmm0, xmm2 LONG $0x00380f66; BYTE $0xca // pshufb xmm1, xmm2 LONG $0xc16c0f66 // punpcklqdq xmm0, xmm1 LONG $0x047f0ff3; BYTE $0x39 // movdqu oword [rcx + rdi], xmm0 LBB0_1433: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1434 LBB0_1438: WORD $0xff31 // xor edi, edi LBB0_1439: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1441 LONG $0x046f0ff3; BYTE $0xfa // movdqu xmm0, oword [rdx + 8*rdi] LONG $0x4c6f0ff3; WORD $0x10fa // movdqu xmm1, oword [rdx + 8*rdi + 16] LONG $0x556f0f66; BYTE $0x40 // movdqa xmm2, oword 64[rbp] /* [rip + .LCPI0_5] */ LONG $0x00380f66; BYTE $0xc2 // pshufb xmm0, xmm2 LONG $0x153a0f66; WORD $0x3904; BYTE $0x00 // pextrw word [rcx + rdi], xmm0, 0 LONG $0x00380f66; BYTE $0xca // pshufb xmm1, xmm2 QUAD $0x0002394c153a0f66 // pextrw word [rcx + rdi + 2], xmm1, 0 LBB0_1441: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1442 LBB0_1446: WORD $0xff31 // xor edi, edi LBB0_1447: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1449 LONG $0xba04100f // movups xmm0, oword [rdx + 4*rdi] LONG $0xba4c100f; BYTE $0x10 // movups xmm1, oword [rdx + 4*rdi + 16] LONG $0xc05b0ff3 // cvttps2dq xmm0, xmm0 LONG $0x2b380f66; BYTE $0xc0 // packusdw xmm0, xmm0 LONG $0xc0670f66 // packuswb xmm0, xmm0 LONG $0xc95b0ff3 // cvttps2dq xmm1, xmm1 LONG $0x2b380f66; BYTE $0xc9 // packusdw xmm1, xmm1 LONG $0xc9670f66 // packuswb xmm1, xmm1 LONG $0x047e0f66; BYTE $0x39 // movd dword [rcx + rdi], xmm0 LONG $0x4c7e0f66; WORD $0x0439 // movd dword [rcx + rdi + 4], xmm1 LBB0_1449: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1450 LBB0_1454: WORD $0xff31 // xor edi, edi LBB0_1455: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1457 LONG $0x046f0ff3; BYTE $0xba // movdqu xmm0, oword [rdx + 4*rdi] LONG $0x4c6f0ff3; WORD $0x10ba // movdqu xmm1, oword [rdx + 4*rdi + 16] QUAD $0x000000c0956f0f66 // movdqa xmm2, oword 192[rbp] /* [rip + .LCPI0_13] */ LONG $0x00380f66; BYTE $0xc2 // pshufb xmm0, xmm2 LONG $0x00380f66; BYTE $0xca // pshufb xmm1, xmm2 LONG $0x047e0f66; BYTE $0x39 // movd dword [rcx + rdi], xmm0 LONG $0x4c7e0f66; WORD $0x0439 // movd dword [rcx + rdi + 4], xmm1 LBB0_1457: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1458 LBB0_1462: WORD $0xff31 // xor edi, edi LBB0_1463: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1465 LONG $0x21380f66; WORD $0x3a04 // pmovsxbd xmm0, dword [rdx + rdi] LONG $0x21380f66; WORD $0x3a4c; BYTE $0x04 // pmovsxbd xmm1, dword [rdx + rdi + 4] LONG $0x047f0ff3; BYTE $0xb9 // movdqu oword [rcx + 4*rdi], xmm0 LONG $0x4c7f0ff3; WORD $0x10b9 // movdqu oword [rcx + 4*rdi + 16], xmm1 LBB0_1465: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1466 LBB0_1470: WORD $0xff31 // xor edi, edi LBB0_1471: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1473 LONG $0x31380f66; WORD $0x3a04 // pmovzxbd xmm0, dword [rdx + rdi] LONG $0x31380f66; WORD $0x3a4c; BYTE $0x04 // pmovzxbd xmm1, dword [rdx + rdi + 4] LONG $0x047f0ff3; BYTE $0xb9 // movdqu oword [rcx + 4*rdi], xmm0 LONG $0x4c7f0ff3; WORD $0x10b9 // movdqu oword [rcx + 4*rdi + 16], xmm1 LBB0_1473: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1474 LBB0_1478: WORD $0xff31 // xor edi, edi LBB0_1479: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1481 LONG $0x21380f66; WORD $0x3a04 // pmovsxbd xmm0, dword [rdx + rdi] LONG $0x21380f66; WORD $0x3a4c; BYTE $0x04 // pmovsxbd xmm1, dword [rdx + rdi + 4] LONG $0x047f0ff3; BYTE $0xb9 // movdqu oword [rcx + 4*rdi], xmm0 LONG $0x4c7f0ff3; WORD $0x10b9 // movdqu oword [rcx + 4*rdi + 16], xmm1 LBB0_1481: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1482 LBB0_1486: WORD $0xff31 // xor edi, edi LBB0_1487: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1489 LONG $0x31380f66; WORD $0x3a04 // pmovzxbd xmm0, dword [rdx + rdi] LONG $0x31380f66; WORD $0x3a4c; BYTE $0x04 // pmovzxbd xmm1, dword [rdx + rdi + 4] LONG $0x047f0ff3; BYTE $0xb9 // movdqu oword [rcx + 4*rdi], xmm0 LONG $0x4c7f0ff3; WORD $0x10b9 // movdqu oword [rcx + 4*rdi + 16], xmm1 LBB0_1489: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1490 LBB0_1494: WORD $0xff31 // xor edi, edi LBB0_1495: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1497 LONG $0x046f0ff3; BYTE $0xba // movdqu xmm0, oword [rdx + 4*rdi] LONG $0x4c6f0ff3; WORD $0x10ba // movdqu xmm1, oword [rdx + 4*rdi + 16] QUAD $0x000000c0956f0f66 // movdqa xmm2, oword 192[rbp] /* [rip + .LCPI0_13] */ LONG $0x00380f66; BYTE $0xc2 // pshufb xmm0, xmm2 LONG $0x00380f66; BYTE $0xca // pshufb xmm1, xmm2 LONG $0x047e0f66; BYTE $0x39 // movd dword [rcx + rdi], xmm0 LONG $0x4c7e0f66; WORD $0x0439 // movd dword [rcx + rdi + 4], xmm1 LBB0_1497: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1498 LBB0_1502: WORD $0xff31 // xor edi, edi LBB0_1503: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1505 LONG $0x04100f66; BYTE $0xfa // movupd xmm0, oword [rdx + 8*rdi] LONG $0xc0e60f66 // cvttpd2dq xmm0, xmm0 LONG $0x4c100f66; WORD $0x10fa // movupd xmm1, oword [rdx + 8*rdi + 16] LONG $0x556f0f66; BYTE $0x10 // movdqa xmm2, oword 16[rbp] /* [rip + .LCPI0_1] */ LONG $0xc9e60f66 // cvttpd2dq xmm1, xmm1 LONG $0x00380f66; BYTE $0xc2 // pshufb xmm0, xmm2 LONG $0x153a0f66; WORD $0x3904; BYTE $0x00 // pextrw word [rcx + rdi], xmm0, 0 LONG $0x00380f66; BYTE $0xca // pshufb xmm1, xmm2 QUAD $0x0002394c153a0f66 // pextrw word [rcx + rdi + 2], xmm1, 0 LBB0_1505: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1506 LBB0_1510: WORD $0xff31 // xor edi, edi LBB0_1511: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1513 LONG $0x046f0ff3; BYTE $0x7a // movdqu xmm0, oword [rdx + 2*rdi] LONG $0x4c6f0ff3; WORD $0x107a // movdqu xmm1, oword [rdx + 2*rdi + 16] QUAD $0x00000100956f0f66 // movdqa xmm2, oword 256[rbp] /* [rip + .LCPI0_17] */ LONG $0x00380f66; BYTE $0xc2 // pshufb xmm0, xmm2 LONG $0x00380f66; BYTE $0xca // pshufb xmm1, xmm2 LONG $0xc16c0f66 // punpcklqdq xmm0, xmm1 LONG $0x047f0ff3; BYTE $0x39 // movdqu oword [rcx + rdi], xmm0 LBB0_1513: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1514 LBB0_1518: WORD $0xff31 // xor edi, edi LBB0_1519: LONG $0x01c0f641 // test r8b, 1 JE LBB0_1521 LONG $0xba04100f // movups xmm0, oword [rdx + 4*rdi] LONG $0xba4c100f; BYTE $0x10 // movups xmm1, oword [rdx + 4*rdi + 16] LONG $0xc05b0ff3 // cvttps2dq xmm0, xmm0 LONG $0xc06b0f66 // packssdw xmm0, xmm0 LONG $0xc0630f66 // packsswb xmm0, xmm0 LONG $0xc95b0ff3 // cvttps2dq xmm1, xmm1 LONG $0xc96b0f66 // packssdw xmm1, xmm1 LONG $0xc9630f66 // packsswb xmm1, xmm1 LONG $0x047e0f66; BYTE $0x39 // movd dword [rcx + rdi], xmm0 LONG $0x4c7e0f66; WORD $0x0439 // movd dword [rcx + rdi + 4], xmm1 LBB0_1521: WORD $0x394c; BYTE $0xce // cmp rsi, r9 JE LBB0_1526 JMP LBB0_1522