//go:build !noasm && !appengine && go1.18
// AUTO-GENERATED BY C2GOASM -- DO NOT EDIT
DATA LCDATA1<>+0x000(SB)/8, $0x43e0000000000000
DATA LCDATA1<>+0x008(SB)/8, $0x4330000000000000
DATA LCDATA1<>+0x010(SB)/8, $0x4530000000000000
DATA LCDATA1<>+0x018(SB)/8, $0x4530000000100000
DATA LCDATA1<>+0x020(SB)/8, $0x0000000000000001
DATA LCDATA1<>+0x028(SB)/8, $0x4f0000005f000000
DATA LCDATA1<>+0x030(SB)/8, $0x4b00000080000000
DATA LCDATA1<>+0x038(SB)/8, $0x5300008053000000
DATA LCDATA1<>+0x040(SB)/8, $0x0000000000000800
DATA LCDATA1<>+0x048(SB)/8, $0x0000000000000000
DATA LCDATA1<>+0x050(SB)/8, $0x4530000043300000
DATA LCDATA1<>+0x058(SB)/8, $0x0000000000000000
DATA LCDATA1<>+0x060(SB)/8, $0x4330000000000000
DATA LCDATA1<>+0x068(SB)/8, $0x4530000000000000
DATA LCDATA1<>+0x070(SB)/8, $0x000000000c080400
DATA LCDATA1<>+0x078(SB)/8, $0x0000000000000000
DATA LCDATA1<>+0x080(SB)/8, $0x0d0c090805040100
DATA LCDATA1<>+0x088(SB)/8, $0x0f0e0d0c0d0c0908
DATA LCDATA1<>+0x090(SB)/8, $0x1d1c191815141110
DATA LCDATA1<>+0x098(SB)/8, $0x1f1e1d1c1d1c1918
DATA LCDATA1<>+0x0a0(SB)/8, $0x00ff00ff00ff00ff
DATA LCDATA1<>+0x0a8(SB)/8, $0x00ff00ff00ff00ff
DATA LCDATA1<>+0x0b0(SB)/8, $0x00ff00ff00ff00ff
DATA LCDATA1<>+0x0b8(SB)/8, $0x00ff00ff00ff00ff
GLOBL LCDATA1<>(SB), 8, $192
TEXT ยท_cast_type_numeric_avx2(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_1553
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_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JB LBB0_12
LONG $0x8a048d4a // lea rax, [rdx + 4*r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_742
LONG $0x89048d4a // lea rax, [rcx + 4*r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_742
LBB0_12:
WORD $0xf631 // xor esi, esi
LBB0_1189:
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_1191
LBB0_1190:
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_1190
LBB0_1191:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1192:
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_1192
JMP LBB0_1553
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_1553
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_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
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_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_1553
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_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JB LBB0_34
LONG $0x0a048d4a // lea rax, [rdx + r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_745
LONG $0x89048d4a // lea rax, [rcx + 4*r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_745
LBB0_34:
WORD $0xf631 // xor esi, esi
LBB0_1197:
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_1199
LBB0_1198:
LONG $0x3204be0f // movsx eax, byte [rdx + rsi]
WORD $0x0489; BYTE $0xb1 // mov dword [rcx + 4*rsi], eax
LONG $0x01c68348 // add rsi, 1
LONG $0xffc78348 // add rdi, -1
JNE LBB0_1198
LBB0_1199:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1200:
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_1200
JMP LBB0_1553
LBB0_35:
WORD $0xff83; BYTE $0x07 // cmp edi, 7
JE LBB0_85
WORD $0xff83; BYTE $0x08 // cmp edi, 8
JNE LBB0_1553
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_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JAE LBB0_454
WORD $0xf631 // xor esi, esi
JMP LBB0_918
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_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JAE LBB0_457
WORD $0xf631 // xor esi, esi
JMP LBB0_1024
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_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JAE LBB0_460
WORD $0xf631 // xor esi, esi
JMP LBB0_1029
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_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JAE LBB0_463
WORD $0xf631 // xor esi, esi
JMP LBB0_1034
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_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JAE LBB0_466
WORD $0xf631 // xor esi, esi
JMP LBB0_1039
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_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JB LBB0_84
LONG $0x0a048d4a // lea rax, [rdx + r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_748
LONG $0x89048d4a // lea rax, [rcx + 4*r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_748
LBB0_84:
WORD $0xf631 // xor esi, esi
LBB0_1205:
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_1207
LBB0_1206:
LONG $0x3204b60f // movzx eax, byte [rdx + rsi]
WORD $0x0489; BYTE $0xb1 // mov dword [rcx + 4*rsi], eax
LONG $0x01c68348 // add rsi, 1
LONG $0xffc78348 // add rdi, -1
JNE LBB0_1206
LBB0_1207:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1208:
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_1208
JMP LBB0_1553
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_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JB LBB0_92
LONG $0x8a048d4a // lea rax, [rdx + 4*r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_751
LONG $0x89048d4a // lea rax, [rcx + 4*r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_751
LBB0_92:
WORD $0xf631 // xor esi, esi
LBB0_1213:
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_1215
LBB0_1214:
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_1214
LBB0_1215:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1216:
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_1216
JMP LBB0_1553
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_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JAE LBB0_475
WORD $0xf631 // xor esi, esi
JMP LBB0_1044
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_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JB LBB0_106
LONG $0xca048d4a // lea rax, [rdx + 8*r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_754
LONG $0xc9048d4a // lea rax, [rcx + 8*r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_754
LBB0_106:
WORD $0xf631 // xor esi, esi
LBB0_1221:
WORD $0x8948; BYTE $0xf0 // mov rax, rsi
WORD $0xf748; BYTE $0xd0 // not rax
WORD $0x014c; BYTE $0xc8 // add rax, r9
WORD $0x894c; BYTE $0xcf // mov rdi, r9
LONG $0x07e78348 // and rdi, 7
JE LBB0_1223
LBB0_1222:
LONG $0xf21c8b48 // mov rbx, qword [rdx + 8*rsi]
LONG $0xf11c8948 // mov qword [rcx + 8*rsi], rbx
LONG $0x01c68348 // add rsi, 1
LONG $0xffc78348 // add rdi, -1
JNE LBB0_1222
LBB0_1223:
LONG $0x07f88348 // cmp rax, 7
JB LBB0_1553
LBB0_1224:
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_1224
JMP LBB0_1553
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_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JB LBB0_113
LONG $0x0a048d4a // lea rax, [rdx + r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_757
LONG $0xc9048d4a // lea rax, [rcx + 8*r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_757
LBB0_113:
WORD $0xf631 // xor esi, esi
LBB0_1229:
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_1231
LBB0_1230:
LONG $0x3204be0f // movsx eax, byte [rdx + rsi]
LONG $0xc02adbc5 // vcvtsi2sd xmm0, xmm4, eax
LONG $0x0411fbc5; BYTE $0xf1 // vmovsd qword [rcx + 8*rsi], xmm0
LONG $0x01c68348 // add rsi, 1
LONG $0xffc78348 // add rdi, -1
JNE LBB0_1230
LBB0_1231:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1232:
LONG $0x3204be0f // movsx eax, byte [rdx + rsi]
LONG $0xc02adbc5 // vcvtsi2sd xmm0, xmm4, eax
LONG $0x0411fbc5; BYTE $0xf1 // vmovsd qword [rcx + 8*rsi], xmm0
LONG $0x3244be0f; BYTE $0x01 // movsx eax, byte [rdx + rsi + 1]
LONG $0xc02adbc5 // vcvtsi2sd xmm0, xmm4, eax
LONG $0x4411fbc5; WORD $0x08f1 // vmovsd qword [rcx + 8*rsi + 8], xmm0
LONG $0x3244be0f; BYTE $0x02 // movsx eax, byte [rdx + rsi + 2]
LONG $0xc02adbc5 // vcvtsi2sd xmm0, xmm4, eax
LONG $0x4411fbc5; WORD $0x10f1 // vmovsd qword [rcx + 8*rsi + 16], xmm0
LONG $0x3244be0f; BYTE $0x03 // movsx eax, byte [rdx + rsi + 3]
LONG $0xc02adbc5 // vcvtsi2sd xmm0, xmm4, eax
LONG $0x4411fbc5; WORD $0x18f1 // vmovsd qword [rcx + 8*rsi + 24], xmm0
LONG $0x04c68348 // add rsi, 4
WORD $0x3949; BYTE $0xf1 // cmp r9, rsi
JNE LBB0_1232
JMP LBB0_1553
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_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JAE LBB0_484
WORD $0xf631 // xor esi, esi
JMP LBB0_923
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_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JAE LBB0_487
WORD $0xf631 // xor esi, esi
JMP LBB0_1049
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_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JAE LBB0_490
WORD $0xf631 // xor esi, esi
JMP LBB0_1054
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_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JAE LBB0_493
WORD $0xf631 // xor esi, esi
JMP LBB0_1059
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_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JAE LBB0_496
WORD $0xf631 // xor esi, esi
JMP LBB0_1064
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_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JB LBB0_155
LONG $0x0a048d4a // lea rax, [rdx + r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_760
LONG $0xc9048d4a // lea rax, [rcx + 8*r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_760
LBB0_155:
WORD $0xf631 // xor esi, esi
LBB0_1237:
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_1239
LBB0_1238:
LONG $0x3204b60f // movzx eax, byte [rdx + rsi]
LONG $0xc02adbc5 // vcvtsi2sd xmm0, xmm4, eax
LONG $0x0411fbc5; BYTE $0xf1 // vmovsd qword [rcx + 8*rsi], xmm0
LONG $0x01c68348 // add rsi, 1
LONG $0xffc78348 // add rdi, -1
JNE LBB0_1238
LBB0_1239:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1240:
LONG $0x3204b60f // movzx eax, byte [rdx + rsi]
LONG $0xc02adbc5 // vcvtsi2sd xmm0, xmm4, eax
LONG $0x0411fbc5; BYTE $0xf1 // vmovsd qword [rcx + 8*rsi], xmm0
LONG $0x3244b60f; BYTE $0x01 // movzx eax, byte [rdx + rsi + 1]
LONG $0xc02adbc5 // vcvtsi2sd xmm0, xmm4, eax
LONG $0x4411fbc5; WORD $0x08f1 // vmovsd qword [rcx + 8*rsi + 8], xmm0
LONG $0x3244b60f; BYTE $0x02 // movzx eax, byte [rdx + rsi + 2]
LONG $0xc02adbc5 // vcvtsi2sd xmm0, xmm4, eax
LONG $0x4411fbc5; WORD $0x10f1 // vmovsd qword [rcx + 8*rsi + 16], xmm0
LONG $0x3244b60f; BYTE $0x03 // movzx eax, byte [rdx + rsi + 3]
LONG $0xc02adbc5 // vcvtsi2sd xmm0, xmm4, eax
LONG $0x4411fbc5; WORD $0x18f1 // vmovsd qword [rcx + 8*rsi + 24], xmm0
LONG $0x04c68348 // add rsi, 4
WORD $0x3949; BYTE $0xf1 // cmp r9, rsi
JNE LBB0_1240
JMP LBB0_1553
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_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JAE LBB0_502
WORD $0xf631 // xor esi, esi
JMP LBB0_929
LBB0_163:
WORD $0xfe83; BYTE $0x02 // cmp esi, 2
JE LBB0_383
WORD $0xfe83; BYTE $0x03 // cmp esi, 3
JNE LBB0_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JB LBB0_167
LONG $0x8a048d4a // lea rax, [rdx + 4*r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_763
LONG $0x09048d4a // lea rax, [rcx + r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_763
LBB0_167:
WORD $0xf631 // xor esi, esi
LBB0_1245:
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_1247
LBB0_1246:
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_1246
LBB0_1247:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1248:
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_1248
JMP LBB0_1553
LBB0_168:
WORD $0xfe83; BYTE $0x02 // cmp esi, 2
JE LBB0_386
WORD $0xfe83; BYTE $0x03 // cmp esi, 3
JNE LBB0_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JB LBB0_172
LONG $0xca048d4a // lea rax, [rdx + 8*r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_766
LONG $0x09048d4a // lea rax, [rcx + r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_766
LBB0_172:
WORD $0xf631 // xor esi, esi
LBB0_1253:
WORD $0x8948; BYTE $0xf0 // mov rax, rsi
WORD $0xf748; BYTE $0xd0 // not rax
WORD $0x014c; BYTE $0xc8 // add rax, r9
WORD $0x894c; BYTE $0xcf // mov rdi, r9
LONG $0x03e78348 // and rdi, 3
JE LBB0_1255
LBB0_1254:
LONG $0x1c2cfbc5; BYTE $0xf2 // vcvttsd2si ebx, qword [rdx + 8*rsi]
WORD $0x1c88; BYTE $0x31 // mov byte [rcx + rsi], bl
LONG $0x01c68348 // add rsi, 1
LONG $0xffc78348 // add rdi, -1
JNE LBB0_1254
LBB0_1255:
LONG $0x03f88348 // cmp rax, 3
JB LBB0_1553
LBB0_1256:
LONG $0x042cfbc5; BYTE $0xf2 // vcvttsd2si eax, qword [rdx + 8*rsi]
WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al
LONG $0x442cfbc5; WORD $0x08f2 // vcvttsd2si eax, qword [rdx + 8*rsi + 8]
LONG $0x01314488 // mov byte [rcx + rsi + 1], al
LONG $0x442cfbc5; WORD $0x10f2 // vcvttsd2si eax, qword [rdx + 8*rsi + 16]
LONG $0x02314488 // mov byte [rcx + rsi + 2], al
LONG $0x442cfbc5; WORD $0x18f2 // vcvttsd2si 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_1256
JMP LBB0_1553
LBB0_173:
WORD $0xfe83; BYTE $0x02 // cmp esi, 2
JE LBB0_389
WORD $0xfe83; BYTE $0x03 // cmp esi, 3
JNE LBB0_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x80f88141; WORD $0x0000; BYTE $0x00 // cmp r8d, 128
JB LBB0_177
LONG $0x0a048d4a // lea rax, [rdx + r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_769
LONG $0x09048d4a // lea rax, [rcx + r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_769
LBB0_177:
WORD $0xf631 // xor esi, esi
LBB0_1261:
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_1263
LBB0_1262:
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_1262
LBB0_1263:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1264:
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_1264
JMP LBB0_1553
LBB0_178:
WORD $0xfe83; BYTE $0x02 // cmp esi, 2
JE LBB0_392
WORD $0xfe83; BYTE $0x03 // cmp esi, 3
JNE LBB0_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JB LBB0_182
LONG $0xca048d4a // lea rax, [rdx + 8*r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_772
LONG $0x09048d4a // lea rax, [rcx + r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_772
LBB0_182:
WORD $0xf631 // xor esi, esi
LBB0_1269:
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_1271
LBB0_1270:
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_1270
LBB0_1271:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1272:
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_1272
JMP LBB0_1553
LBB0_183:
WORD $0xfe83; BYTE $0x02 // cmp esi, 2
JE LBB0_395
WORD $0xfe83; BYTE $0x03 // cmp esi, 3
JNE LBB0_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x40f88341 // cmp r8d, 64
JB LBB0_187
LONG $0x4a048d4a // lea rax, [rdx + 2*r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_775
LONG $0x09048d4a // lea rax, [rcx + r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_775
LBB0_187:
WORD $0xf631 // xor esi, esi
LBB0_1277:
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_1279
LBB0_1278:
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_1278
LBB0_1279:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1280:
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_1280
JMP LBB0_1553
LBB0_188:
WORD $0xfe83; BYTE $0x02 // cmp esi, 2
JE LBB0_398
WORD $0xfe83; BYTE $0x03 // cmp esi, 3
JNE LBB0_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x40f88341 // cmp r8d, 64
JB LBB0_192
LONG $0x4a048d4a // lea rax, [rdx + 2*r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_778
LONG $0x09048d4a // lea rax, [rcx + r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_778
LBB0_192:
WORD $0xf631 // xor esi, esi
LBB0_1285:
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_1287
LBB0_1286:
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_1286
LBB0_1287:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1288:
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_1288
JMP LBB0_1553
LBB0_193:
WORD $0xfe83; BYTE $0x02 // cmp esi, 2
JE LBB0_401
WORD $0xfe83; BYTE $0x03 // cmp esi, 3
JNE LBB0_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JB LBB0_197
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_197:
WORD $0xf631 // xor esi, esi
LBB0_1293:
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_1295
LBB0_1294:
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_1294
LBB0_1295:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1296:
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_1296
JMP LBB0_1553
LBB0_198:
WORD $0xfe83; BYTE $0x02 // cmp esi, 2
JE LBB0_404
WORD $0xfe83; BYTE $0x03 // cmp esi, 3
JNE LBB0_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JB LBB0_202
LONG $0x8a048d4a // lea rax, [rdx + 4*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_202:
WORD $0xf631 // xor esi, esi
LBB0_1301:
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_1303
LBB0_1302:
LONG $0x042cfac5; BYTE $0xb2 // vcvttss2si 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_1302
LBB0_1303:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1304:
LONG $0x042cfac5; BYTE $0xb2 // vcvttss2si eax, dword [rdx + 4*rsi]
WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al
LONG $0x442cfac5; WORD $0x04b2 // vcvttss2si eax, dword [rdx + 4*rsi + 4]
LONG $0x01314488 // mov byte [rcx + rsi + 1], al
LONG $0x442cfac5; WORD $0x08b2 // vcvttss2si eax, dword [rdx + 4*rsi + 8]
LONG $0x02314488 // mov byte [rcx + rsi + 2], al
LONG $0x442cfac5; WORD $0x0cb2 // vcvttss2si 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_1304
JMP LBB0_1553
LBB0_203:
WORD $0xfe83; BYTE $0x02 // cmp esi, 2
JE LBB0_407
WORD $0xfe83; BYTE $0x03 // cmp esi, 3
JNE LBB0_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x80f88141; WORD $0x0000; BYTE $0x00 // cmp r8d, 128
JB LBB0_207
LONG $0x0a048d4a // lea rax, [rdx + 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_207:
WORD $0xf631 // xor esi, esi
LBB0_1309:
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_1311
LBB0_1310:
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_1310
LBB0_1311:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1312:
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_1312
JMP LBB0_1553
LBB0_208:
WORD $0xfe83; BYTE $0x02 // cmp esi, 2
JE LBB0_410
WORD $0xfe83; BYTE $0x03 // cmp esi, 3
JNE LBB0_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JB LBB0_212
LONG $0x8a048d4a // lea rax, [rdx + 4*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_212:
WORD $0xf631 // xor esi, esi
LBB0_1317:
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_1319
LBB0_1318:
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_1318
LBB0_1319:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1320:
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_1320
JMP LBB0_1553
LBB0_213:
WORD $0xfe83; BYTE $0x07 // cmp esi, 7
JE LBB0_413
WORD $0xfe83; BYTE $0x08 // cmp esi, 8
JNE LBB0_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JAE LBB0_535
WORD $0xf631 // xor esi, esi
JMP LBB0_934
LBB0_218:
WORD $0xfe83; BYTE $0x07 // cmp esi, 7
JE LBB0_416
WORD $0xfe83; BYTE $0x08 // cmp esi, 8
JNE LBB0_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
QUAD $0x000000000000bb49; WORD $0x8000 // mov r11, -9223372036854775808
LONG $0x04f88341 // cmp r8d, 4
JAE LBB0_538
WORD $0x3145; BYTE $0xf6 // xor r14d, r14d
JMP LBB0_799
LBB0_223:
WORD $0xfe83; BYTE $0x07 // cmp esi, 7
JE LBB0_419
WORD $0xfe83; BYTE $0x08 // cmp esi, 8
JNE LBB0_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JB LBB0_227
LONG $0x0a048d4a // lea rax, [rdx + r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_801
LONG $0xc9048d4a // lea rax, [rcx + 8*r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_801
LBB0_227:
WORD $0xf631 // xor esi, esi
LBB0_1325:
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_1327
LBB0_1326:
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_1326
LBB0_1327:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1328:
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_1328
JMP LBB0_1553
LBB0_228:
WORD $0xfe83; BYTE $0x07 // cmp esi, 7
JE LBB0_422
WORD $0xfe83; BYTE $0x08 // cmp esi, 8
JNE LBB0_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JB LBB0_232
LONG $0xca048d4a // lea rax, [rdx + 8*r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_804
LONG $0xc9048d4a // lea rax, [rcx + 8*r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_804
LBB0_232:
WORD $0xf631 // xor esi, esi
LBB0_1333:
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_1335
LBB0_1334:
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_1334
LBB0_1335:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1336:
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_1336
JMP LBB0_1553
LBB0_233:
WORD $0xfe83; BYTE $0x07 // cmp esi, 7
JE LBB0_425
WORD $0xfe83; BYTE $0x08 // cmp esi, 8
JNE LBB0_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JAE LBB0_546
WORD $0xf631 // xor esi, esi
JMP LBB0_939
LBB0_238:
WORD $0xfe83; BYTE $0x07 // cmp esi, 7
JE LBB0_428
WORD $0xfe83; BYTE $0x08 // cmp esi, 8
JNE LBB0_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JAE LBB0_549
WORD $0xf631 // xor esi, esi
JMP LBB0_944
LBB0_243:
WORD $0xfe83; BYTE $0x07 // cmp esi, 7
JE LBB0_431
WORD $0xfe83; BYTE $0x08 // cmp esi, 8
JNE LBB0_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JB LBB0_247
LONG $0xca048d4a // lea rax, [rdx + 8*r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_807
LONG $0xc9048d4a // lea rax, [rcx + 8*r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_807
LBB0_247:
WORD $0xf631 // xor esi, esi
LBB0_1341:
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_1343
LBB0_1342:
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_1342
LBB0_1343:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1344:
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_1344
JMP LBB0_1553
LBB0_248:
WORD $0xfe83; BYTE $0x07 // cmp esi, 7
JE LBB0_434
WORD $0xfe83; BYTE $0x08 // cmp esi, 8
JNE LBB0_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x04f88341 // cmp r8d, 4
JAE LBB0_555
WORD $0x3145; BYTE $0xf6 // xor r14d, r14d
JMP LBB0_816
LBB0_253:
WORD $0xfe83; BYTE $0x07 // cmp esi, 7
JE LBB0_437
WORD $0xfe83; BYTE $0x08 // cmp esi, 8
JNE LBB0_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JB LBB0_257
LONG $0x0a048d4a // lea rax, [rdx + r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_818
LONG $0xc9048d4a // lea rax, [rcx + 8*r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_818
LBB0_257:
WORD $0xf631 // xor esi, esi
LBB0_1349:
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_1351
LBB0_1350:
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_1350
LBB0_1351:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1352:
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_1352
JMP LBB0_1553
LBB0_258:
WORD $0xfe83; BYTE $0x07 // cmp esi, 7
JE LBB0_440
WORD $0xfe83; BYTE $0x08 // cmp esi, 8
JNE LBB0_1553
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JAE LBB0_560
WORD $0xf631 // xor esi, esi
JMP LBB0_949
LBB0_263:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JAE LBB0_563
WORD $0xf631 // xor esi, esi
JMP LBB0_1069
LBB0_266:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JAE LBB0_566
WORD $0xf631 // xor esi, esi
JMP LBB0_1074
LBB0_269:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JAE LBB0_569
WORD $0xf631 // xor esi, esi
JMP LBB0_1079
LBB0_272:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JAE LBB0_572
WORD $0xf631 // xor esi, esi
JMP LBB0_1084
LBB0_275:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x40f88341 // cmp r8d, 64
JB LBB0_277
LONG $0x0a048d4a // lea rax, [rdx + r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_821
LONG $0x49048d4a // lea rax, [rcx + 2*r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_821
LBB0_277:
WORD $0xf631 // xor esi, esi
LBB0_1357:
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_1359
LBB0_1358:
LONG $0x3204be0f // movsx eax, byte [rdx + rsi]
LONG $0x71048966 // mov word [rcx + 2*rsi], ax
LONG $0x01c68348 // add rsi, 1
LONG $0xffc78348 // add rdi, -1
JNE LBB0_1358
LBB0_1359:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1360:
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_1360
JMP LBB0_1553
LBB0_278:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x40f88341 // cmp r8d, 64
JB LBB0_280
LONG $0x0a048d4a // lea rax, [rdx + r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_824
LONG $0x49048d4a // lea rax, [rcx + 2*r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_824
LBB0_280:
WORD $0xf631 // xor esi, esi
LBB0_1365:
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_1367
LBB0_1366:
LONG $0x3204be0f // movsx eax, byte [rdx + rsi]
LONG $0x71048966 // mov word [rcx + 2*rsi], ax
LONG $0x01c68348 // add rsi, 1
LONG $0xffc78348 // add rdi, -1
JNE LBB0_1366
LBB0_1367:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1368:
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_1368
JMP LBB0_1553
LBB0_281:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JAE LBB0_581
WORD $0xf631 // xor esi, esi
JMP LBB0_954
LBB0_284:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JAE LBB0_584
WORD $0xf631 // xor esi, esi
JMP LBB0_959
LBB0_287:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JB LBB0_289
LONG $0x4a048d4a // lea rax, [rdx + 2*r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_827
LONG $0x49048d4a // lea rax, [rcx + 2*r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_827
LBB0_289:
WORD $0xf631 // xor esi, esi
LBB0_1151:
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_1153
LBB0_1152:
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_1152
LBB0_1153:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1154:
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_1154
JMP LBB0_1553
LBB0_290:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JB LBB0_292
LONG $0x4a048d4a // lea rax, [rdx + 2*r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_829
LONG $0x49048d4a // lea rax, [rcx + 2*r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_829
LBB0_292:
WORD $0xf631 // xor esi, esi
LBB0_1161:
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_1163
LBB0_1162:
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_1162
LBB0_1163:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1164:
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_1164
JMP LBB0_1553
LBB0_293:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JB LBB0_295
LONG $0x4a048d4a // lea rax, [rdx + 2*r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_831
LONG $0x49048d4a // lea rax, [rcx + 2*r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_831
LBB0_295:
WORD $0xf631 // xor esi, esi
LBB0_1171:
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_1173
LBB0_1172:
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_1172
LBB0_1173:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1174:
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_1174
JMP LBB0_1553
LBB0_296:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JB LBB0_298
LONG $0x4a048d4a // lea rax, [rdx + 2*r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_833
LONG $0x49048d4a // lea rax, [rcx + 2*r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_833
LBB0_298:
WORD $0xf631 // xor esi, esi
LBB0_1181:
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_1183
LBB0_1182:
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_1182
LBB0_1183:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1184:
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_1184
JMP LBB0_1553
LBB0_299:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JAE LBB0_599
WORD $0xf631 // xor esi, esi
JMP LBB0_964
LBB0_302:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JAE LBB0_602
WORD $0xf631 // xor esi, esi
JMP LBB0_1089
LBB0_305:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JAE LBB0_605
WORD $0xf631 // xor esi, esi
JMP LBB0_1094
LBB0_308:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JAE LBB0_608
WORD $0xf631 // xor esi, esi
JMP LBB0_1099
LBB0_311:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x40f88341 // cmp r8d, 64
JB LBB0_313
LONG $0x0a048d4a // lea rax, [rdx + r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_835
LONG $0x49048d4a // lea rax, [rcx + 2*r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_835
LBB0_313:
WORD $0xf631 // xor esi, esi
LBB0_1373:
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_1375
LBB0_1374:
LONG $0x3204b60f // movzx eax, byte [rdx + rsi]
LONG $0x71048966 // mov word [rcx + 2*rsi], ax
LONG $0x01c68348 // add rsi, 1
LONG $0xffc78348 // add rdi, -1
JNE LBB0_1374
LBB0_1375:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1376:
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_1376
JMP LBB0_1553
LBB0_314:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x40f88341 // cmp r8d, 64
JB LBB0_316
LONG $0x0a048d4a // lea rax, [rdx + r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_838
LONG $0x49048d4a // lea rax, [rcx + 2*r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_838
LBB0_316:
WORD $0xf631 // xor esi, esi
LBB0_1381:
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_1383
LBB0_1382:
LONG $0x3204b60f // movzx eax, byte [rdx + rsi]
LONG $0x71048966 // mov word [rcx + 2*rsi], ax
LONG $0x01c68348 // add rsi, 1
LONG $0xffc78348 // add rdi, -1
JNE LBB0_1382
LBB0_1383:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1384:
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_1384
JMP LBB0_1553
LBB0_317:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JAE LBB0_617
WORD $0xf631 // xor esi, esi
JMP LBB0_969
LBB0_320:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JAE LBB0_620
WORD $0xf631 // xor esi, esi
JMP LBB0_974
LBB0_323:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JAE LBB0_623
WORD $0xf631 // xor esi, esi
JMP LBB0_1104
LBB0_326:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JAE LBB0_626
WORD $0xf631 // xor esi, esi
JMP LBB0_1109
LBB0_329:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JAE LBB0_629
WORD $0xf631 // xor esi, esi
JMP LBB0_1114
LBB0_332:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JAE LBB0_632
WORD $0xf631 // xor esi, esi
JMP LBB0_1119
LBB0_335:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JB LBB0_337
LONG $0x0a048d4a // lea rax, [rdx + r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_841
LONG $0xc9048d4a // lea rax, [rcx + 8*r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_841
LBB0_337:
WORD $0xf631 // xor esi, esi
LBB0_1389:
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_1391
LBB0_1390:
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_1390
LBB0_1391:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1392:
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_1392
JMP LBB0_1553
LBB0_338:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JB LBB0_340
LONG $0x0a048d4a // lea rax, [rdx + r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_844
LONG $0x89048d4a // lea rax, [rcx + 4*r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_844
LBB0_340:
WORD $0xf631 // xor esi, esi
LBB0_1397:
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_1399
LBB0_1398:
LONG $0x3204be0f // movsx eax, byte [rdx + rsi]
LONG $0xc02adac5 // vcvtsi2ss xmm0, xmm4, eax
LONG $0x0411fac5; BYTE $0xb1 // vmovss dword [rcx + 4*rsi], xmm0
LONG $0x01c68348 // add rsi, 1
LONG $0xffc78348 // add rdi, -1
JNE LBB0_1398
LBB0_1399:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1400:
LONG $0x3204be0f // movsx eax, byte [rdx + rsi]
LONG $0xc02adac5 // vcvtsi2ss xmm0, xmm4, eax
LONG $0x0411fac5; BYTE $0xb1 // vmovss dword [rcx + 4*rsi], xmm0
LONG $0x3244be0f; BYTE $0x01 // movsx eax, byte [rdx + rsi + 1]
LONG $0xc02adac5 // vcvtsi2ss xmm0, xmm4, eax
LONG $0x4411fac5; WORD $0x04b1 // vmovss dword [rcx + 4*rsi + 4], xmm0
LONG $0x3244be0f; BYTE $0x02 // movsx eax, byte [rdx + rsi + 2]
LONG $0xc02adac5 // vcvtsi2ss xmm0, xmm4, eax
LONG $0x4411fac5; WORD $0x08b1 // vmovss dword [rcx + 4*rsi + 8], xmm0
LONG $0x3244be0f; BYTE $0x03 // movsx eax, byte [rdx + rsi + 3]
LONG $0xc02adac5 // vcvtsi2ss xmm0, xmm4, eax
LONG $0x4411fac5; WORD $0x0cb1 // vmovss dword [rcx + 4*rsi + 12], xmm0
LONG $0x04c68348 // add rsi, 4
WORD $0x3949; BYTE $0xf1 // cmp r9, rsi
JNE LBB0_1400
JMP LBB0_1553
LBB0_341:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JB LBB0_343
LONG $0xca048d4a // lea rax, [rdx + 8*r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_847
LONG $0xc9048d4a // lea rax, [rcx + 8*r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_847
LBB0_343:
WORD $0xf631 // xor esi, esi
LBB0_1405:
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_1407
LBB0_1406:
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_1406
LBB0_1407:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1408:
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_1408
JMP LBB0_1553
LBB0_344:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x04f88341 // cmp r8d, 4
JAE LBB0_644
WORD $0xf631 // xor esi, esi
JMP LBB0_858
LBB0_347:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JAE LBB0_646
WORD $0xf631 // xor esi, esi
JMP LBB0_979
LBB0_350:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JAE LBB0_649
WORD $0xf631 // xor esi, esi
JMP LBB0_1124
LBB0_353:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JAE LBB0_652
WORD $0xf631 // xor esi, esi
JMP LBB0_1129
LBB0_356:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JAE LBB0_655
WORD $0xf631 // xor esi, esi
JMP LBB0_1134
LBB0_359:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JB LBB0_361
LONG $0xca048d4a // lea rax, [rdx + 8*r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_860
LONG $0xc9048d4a // lea rax, [rcx + 8*r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_860
LBB0_361:
WORD $0xf631 // xor esi, esi
LBB0_1413:
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_1415
LBB0_1414:
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_1414
LBB0_1415:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1416:
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_1416
JMP LBB0_1553
LBB0_362:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JAE LBB0_661
WORD $0xf631 // xor esi, esi
JMP LBB0_1139
LBB0_365:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JAE LBB0_664
WORD $0xf631 // xor esi, esi
JMP LBB0_1144
LBB0_368:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JB LBB0_370
LONG $0x8a048d4a // lea rax, [rdx + 4*r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_863
LONG $0x89048d4a // lea rax, [rcx + 4*r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_863
LBB0_370:
WORD $0xf631 // xor esi, esi
LBB0_1421:
WORD $0x8948; BYTE $0xf0 // mov rax, rsi
WORD $0xf748; BYTE $0xd0 // not rax
WORD $0x014c; BYTE $0xc8 // add rax, r9
WORD $0x894c; BYTE $0xcf // mov rdi, r9
LONG $0x07e78348 // and rdi, 7
JE LBB0_1423
LBB0_1422:
WORD $0x1c8b; BYTE $0xb2 // mov ebx, dword [rdx + 4*rsi]
WORD $0x1c89; BYTE $0xb1 // mov dword [rcx + 4*rsi], ebx
LONG $0x01c68348 // add rsi, 1
LONG $0xffc78348 // add rdi, -1
JNE LBB0_1422
LBB0_1423:
LONG $0x07f88348 // cmp rax, 7
JB LBB0_1553
LBB0_1424:
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_1424
JMP LBB0_1553
LBB0_371:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JB LBB0_373
LONG $0x0a048d4a // lea rax, [rdx + r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_866
LONG $0xc9048d4a // lea rax, [rcx + 8*r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_866
LBB0_373:
WORD $0xf631 // xor esi, esi
LBB0_1429:
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_1431
LBB0_1430:
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_1430
LBB0_1431:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1432:
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_1432
JMP LBB0_1553
LBB0_374:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JB LBB0_376
LONG $0x0a048d4a // lea rax, [rdx + r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_869
LONG $0x89048d4a // lea rax, [rcx + 4*r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_869
LBB0_376:
WORD $0xf631 // xor esi, esi
LBB0_1437:
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_1439
LBB0_1438:
LONG $0x3204b60f // movzx eax, byte [rdx + rsi]
LONG $0xc02adac5 // vcvtsi2ss xmm0, xmm4, eax
LONG $0x0411fac5; BYTE $0xb1 // vmovss dword [rcx + 4*rsi], xmm0
LONG $0x01c68348 // add rsi, 1
LONG $0xffc78348 // add rdi, -1
JNE LBB0_1438
LBB0_1439:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1440:
LONG $0x3204b60f // movzx eax, byte [rdx + rsi]
LONG $0xc02adac5 // vcvtsi2ss xmm0, xmm4, eax
LONG $0x0411fac5; BYTE $0xb1 // vmovss dword [rcx + 4*rsi], xmm0
LONG $0x3244b60f; BYTE $0x01 // movzx eax, byte [rdx + rsi + 1]
LONG $0xc02adac5 // vcvtsi2ss xmm0, xmm4, eax
LONG $0x4411fac5; WORD $0x04b1 // vmovss dword [rcx + 4*rsi + 4], xmm0
LONG $0x3244b60f; BYTE $0x02 // movzx eax, byte [rdx + rsi + 2]
LONG $0xc02adac5 // vcvtsi2ss xmm0, xmm4, eax
LONG $0x4411fac5; WORD $0x08b1 // vmovss dword [rcx + 4*rsi + 8], xmm0
LONG $0x3244b60f; BYTE $0x03 // movzx eax, byte [rdx + rsi + 3]
LONG $0xc02adac5 // vcvtsi2ss xmm0, xmm4, eax
LONG $0x4411fac5; WORD $0x0cb1 // vmovss dword [rcx + 4*rsi + 12], xmm0
LONG $0x04c68348 // add rsi, 4
WORD $0x3949; BYTE $0xf1 // cmp r9, rsi
JNE LBB0_1440
JMP LBB0_1553
LBB0_377:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JAE LBB0_676
WORD $0xf631 // xor esi, esi
JMP LBB0_984
LBB0_380:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JAE LBB0_679
WORD $0xf631 // xor esi, esi
JMP LBB0_989
LBB0_383:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JB LBB0_385
LONG $0x8a048d4a // lea rax, [rdx + 4*r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_872
LONG $0x09048d4a // lea rax, [rcx + r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_872
LBB0_385:
WORD $0xf631 // xor esi, esi
LBB0_1445:
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_1447
LBB0_1446:
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_1446
LBB0_1447:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1448:
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_1448
JMP LBB0_1553
LBB0_386:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JB LBB0_388
LONG $0xca048d4a // lea rax, [rdx + 8*r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_875
LONG $0x09048d4a // lea rax, [rcx + r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_875
LBB0_388:
WORD $0xf631 // xor esi, esi
LBB0_1453:
WORD $0x8948; BYTE $0xf0 // mov rax, rsi
WORD $0xf748; BYTE $0xd0 // not rax
WORD $0x014c; BYTE $0xc8 // add rax, r9
WORD $0x894c; BYTE $0xcf // mov rdi, r9
LONG $0x03e78348 // and rdi, 3
JE LBB0_1455
LBB0_1454:
LONG $0x1c2cfbc5; BYTE $0xf2 // vcvttsd2si ebx, qword [rdx + 8*rsi]
WORD $0x1c88; BYTE $0x31 // mov byte [rcx + rsi], bl
LONG $0x01c68348 // add rsi, 1
LONG $0xffc78348 // add rdi, -1
JNE LBB0_1454
LBB0_1455:
LONG $0x03f88348 // cmp rax, 3
JB LBB0_1553
LBB0_1456:
LONG $0x042cfbc5; BYTE $0xf2 // vcvttsd2si eax, qword [rdx + 8*rsi]
WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al
LONG $0x442cfbc5; WORD $0x08f2 // vcvttsd2si eax, qword [rdx + 8*rsi + 8]
LONG $0x01314488 // mov byte [rcx + rsi + 1], al
LONG $0x442cfbc5; WORD $0x10f2 // vcvttsd2si eax, qword [rdx + 8*rsi + 16]
LONG $0x02314488 // mov byte [rcx + rsi + 2], al
LONG $0x442cfbc5; WORD $0x18f2 // vcvttsd2si 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_1456
JMP LBB0_1553
LBB0_389:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x80f88141; WORD $0x0000; BYTE $0x00 // cmp r8d, 128
JB LBB0_391
LONG $0x0a048d4a // lea rax, [rdx + r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_878
LONG $0x09048d4a // lea rax, [rcx + r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_878
LBB0_391:
WORD $0xf631 // xor esi, esi
LBB0_1461:
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_1463
LBB0_1462:
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_1462
LBB0_1463:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1464:
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_1464
JMP LBB0_1553
LBB0_392:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JB LBB0_394
LONG $0xca048d4a // lea rax, [rdx + 8*r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_881
LONG $0x09048d4a // lea rax, [rcx + r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_881
LBB0_394:
WORD $0xf631 // xor esi, esi
LBB0_1469:
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_1471
LBB0_1470:
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_1470
LBB0_1471:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1472:
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_1472
JMP LBB0_1553
LBB0_395:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x40f88341 // cmp r8d, 64
JB LBB0_397
LONG $0x4a048d4a // lea rax, [rdx + 2*r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_884
LONG $0x09048d4a // lea rax, [rcx + r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_884
LBB0_397:
WORD $0xf631 // xor esi, esi
LBB0_1477:
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_1479
LBB0_1478:
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_1478
LBB0_1479:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1480:
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_1480
JMP LBB0_1553
LBB0_398:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x40f88341 // cmp r8d, 64
JB LBB0_400
LONG $0x4a048d4a // lea rax, [rdx + 2*r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_887
LONG $0x09048d4a // lea rax, [rcx + r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_887
LBB0_400:
WORD $0xf631 // xor esi, esi
LBB0_1485:
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_1487
LBB0_1486:
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_1486
LBB0_1487:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1488:
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_1488
JMP LBB0_1553
LBB0_401:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JB LBB0_403
LONG $0xca048d4a // lea rax, [rdx + 8*r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_890
LONG $0x09048d4a // lea rax, [rcx + r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_890
LBB0_403:
WORD $0xf631 // xor esi, esi
LBB0_1493:
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_1495
LBB0_1494:
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_1494
LBB0_1495:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1496:
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_1496
JMP LBB0_1553
LBB0_404:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JB LBB0_406
LONG $0x8a048d4a // lea rax, [rdx + 4*r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_893
LONG $0x09048d4a // lea rax, [rcx + r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_893
LBB0_406:
WORD $0xf631 // xor esi, esi
LBB0_1501:
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_1503
LBB0_1502:
LONG $0x042cfac5; BYTE $0xb2 // vcvttss2si 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_1502
LBB0_1503:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1504:
LONG $0x042cfac5; BYTE $0xb2 // vcvttss2si eax, dword [rdx + 4*rsi]
WORD $0x0488; BYTE $0x31 // mov byte [rcx + rsi], al
LONG $0x442cfac5; WORD $0x04b2 // vcvttss2si eax, dword [rdx + 4*rsi + 4]
LONG $0x01314488 // mov byte [rcx + rsi + 1], al
LONG $0x442cfac5; WORD $0x08b2 // vcvttss2si eax, dword [rdx + 4*rsi + 8]
LONG $0x02314488 // mov byte [rcx + rsi + 2], al
LONG $0x442cfac5; WORD $0x0cb2 // vcvttss2si 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_1504
JMP LBB0_1553
LBB0_407:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x80f88141; WORD $0x0000; BYTE $0x00 // cmp r8d, 128
JB LBB0_409
LONG $0x0a048d4a // lea rax, [rdx + r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_896
LONG $0x09048d4a // lea rax, [rcx + r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_896
LBB0_409:
WORD $0xf631 // xor esi, esi
LBB0_1509:
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_1511
LBB0_1510:
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_1510
LBB0_1511:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1512:
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_1512
JMP LBB0_1553
LBB0_410:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JB LBB0_412
LONG $0x8a048d4a // lea rax, [rdx + 4*r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_899
LONG $0x09048d4a // lea rax, [rcx + r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_899
LBB0_412:
WORD $0xf631 // xor esi, esi
LBB0_1517:
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_1519
LBB0_1518:
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_1518
LBB0_1519:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1520:
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_1520
JMP LBB0_1553
LBB0_413:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JB LBB0_415
LONG $0x8a048d4a // lea rax, [rdx + 4*r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_902
LONG $0x89048d4a // lea rax, [rcx + 4*r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_902
LBB0_415:
WORD $0xf631 // xor esi, esi
LBB0_1525:
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_1527
LBB0_1526:
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_1526
LBB0_1527:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1528:
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_1528
JMP LBB0_1553
LBB0_416:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JAE LBB0_715
WORD $0xf631 // xor esi, esi
JMP LBB0_994
LBB0_419:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JB LBB0_421
LONG $0x0a048d4a // lea rax, [rdx + r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_905
LONG $0x89048d4a // lea rax, [rcx + 4*r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_905
LBB0_421:
WORD $0xf631 // xor esi, esi
LBB0_1533:
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_1535
LBB0_1534:
LONG $0x3204be0f // movsx eax, byte [rdx + rsi]
WORD $0x0489; BYTE $0xb1 // mov dword [rcx + 4*rsi], eax
LONG $0x01c68348 // add rsi, 1
LONG $0xffc78348 // add rdi, -1
JNE LBB0_1534
LBB0_1535:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1536:
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_1536
JMP LBB0_1553
LBB0_422:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JAE LBB0_721
WORD $0xf631 // xor esi, esi
JMP LBB0_999
LBB0_425:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JAE LBB0_724
WORD $0xf631 // xor esi, esi
JMP LBB0_1004
LBB0_428:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JAE LBB0_727
WORD $0xf631 // xor esi, esi
JMP LBB0_1009
LBB0_431:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x10f88341 // cmp r8d, 16
JAE LBB0_730
WORD $0xf631 // xor esi, esi
JMP LBB0_1014
LBB0_434:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JAE LBB0_733
WORD $0xf631 // xor esi, esi
JMP LBB0_1019
LBB0_437:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JB LBB0_439
LONG $0x0a048d4a // lea rax, [rdx + r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_908
LONG $0x89048d4a // lea rax, [rcx + 4*r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_908
LBB0_439:
WORD $0xf631 // xor esi, esi
LBB0_1541:
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_1543
LBB0_1542:
LONG $0x3204b60f // movzx eax, byte [rdx + rsi]
WORD $0x0489; BYTE $0xb1 // mov dword [rcx + 4*rsi], eax
LONG $0x01c68348 // add rsi, 1
LONG $0xffc78348 // add rdi, -1
JNE LBB0_1542
LBB0_1543:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1544:
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_1544
JMP LBB0_1553
LBB0_440:
WORD $0x8545; BYTE $0xc0 // test r8d, r8d
JLE LBB0_1553
WORD $0x8945; BYTE $0xc1 // mov r9d, r8d
LONG $0x20f88341 // cmp r8d, 32
JB LBB0_442
LONG $0x8a048d4a // lea rax, [rdx + 4*r9]
WORD $0x3948; BYTE $0xc8 // cmp rax, rcx
JBE LBB0_911
LONG $0x89048d4a // lea rax, [rcx + 4*r9]
WORD $0x3948; BYTE $0xd0 // cmp rax, rdx
JBE LBB0_911
LBB0_442:
WORD $0xf631 // xor esi, esi
LBB0_1549:
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_1551
LBB0_1550:
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_1550
LBB0_1551:
LONG $0x03f88349 // cmp r8, 3
JB LBB0_1553
LBB0_1552:
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_1552
JMP LBB0_1553
LBB0_446:
WORD $0xe683; BYTE $0xfc // and esi, -4
WORD $0xff31 // xor edi, edi
LBB0_447:
LONG $0x2cfbe1c4; WORD $0xfa1c // vcvttsd2si rbx, qword [rdx + 8*rdi]
WORD $0x1c89; BYTE $0xb9 // mov dword [rcx + 4*rdi], ebx
LONG $0x2cfbe1c4; WORD $0xfa5c; BYTE $0x08 // vcvttsd2si rbx, qword [rdx + 8*rdi + 8]
LONG $0x04b95c89 // mov dword [rcx + 4*rdi + 4], ebx
LONG $0x2cfbe1c4; WORD $0xfa5c; BYTE $0x10 // vcvttsd2si rbx, qword [rdx + 8*rdi + 16]
LONG $0x08b95c89 // mov dword [rcx + 4*rdi + 8], ebx
LONG $0x2cfbe1c4; WORD $0xfa5c; BYTE $0x18 // vcvttsd2si rbx, qword [rdx + 8*rdi + 24]
LONG $0x0cb95c89 // mov dword [rcx + 4*rdi + 12], ebx
LONG $0x04c78348 // add rdi, 4
WORD $0x3948; BYTE $0xfe // cmp rsi, rdi
JNE LBB0_447
LBB0_448:
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1553
LONG $0xb90c8d48 // lea rcx, [rcx + 4*rdi]
LONG $0xfa148d48 // lea rdx, [rdx + 8*rdi]
WORD $0xf631 // xor esi, esi
LBB0_450:
LONG $0x2cfbe1c4; WORD $0xf23c // vcvttsd2si rdi, qword [rdx + 8*rsi]
WORD $0x3c89; BYTE $0xb1 // mov dword [rcx + 4*rsi], edi
LONG $0x01c68348 // add rsi, 1
WORD $0x3948; BYTE $0xf0 // cmp rax, rsi
JNE LBB0_450
JMP LBB0_1553
LBB0_454:
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_914
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 $0x0410f8c5; BYTE $0xfa // vmovups xmm0, oword [rdx + 8*rdi]
LONG $0x4c10f8c5; WORD $0x20fa // vmovups xmm1, oword [rdx + 8*rdi + 32]
LONG $0x5410f8c5; WORD $0x40fa // vmovups xmm2, oword [rdx + 8*rdi + 64]
LONG $0x5c10f8c5; WORD $0x60fa // vmovups xmm3, oword [rdx + 8*rdi + 96]
LONG $0x44c6f8c5; WORD $0x10fa; BYTE $0x88 // vshufps xmm0, xmm0, oword [rdx + 8*rdi + 16], 136
LONG $0x4cc6f0c5; WORD $0x30fa; BYTE $0x88 // vshufps xmm1, xmm1, oword [rdx + 8*rdi + 48], 136
LONG $0x54c6e8c5; WORD $0x50fa; BYTE $0x88 // vshufps xmm2, xmm2, oword [rdx + 8*rdi + 80], 136
LONG $0x5cc6e0c5; WORD $0x70fa; BYTE $0x88 // vshufps xmm3, xmm3, oword [rdx + 8*rdi + 112], 136
LONG $0x0411f8c5; BYTE $0xb9 // vmovups oword [rcx + 4*rdi], xmm0
LONG $0x4c11f8c5; WORD $0x10b9 // vmovups oword [rcx + 4*rdi + 16], xmm1
LONG $0x5411f8c5; WORD $0x20b9 // vmovups oword [rcx + 4*rdi + 32], xmm2
LONG $0x5c11f8c5; WORD $0x30b9 // vmovups oword [rcx + 4*rdi + 48], xmm3
QUAD $0x000080fa8410f8c5; BYTE $0x00 // vmovups xmm0, oword [rdx + 8*rdi + 128]
QUAD $0x0000a0fa8c10f8c5; BYTE $0x00 // vmovups xmm1, oword [rdx + 8*rdi + 160]
QUAD $0x0000c0fa9410f8c5; BYTE $0x00 // vmovups xmm2, oword [rdx + 8*rdi + 192]
QUAD $0x0000e0fa9c10f8c5; BYTE $0x00 // vmovups xmm3, oword [rdx + 8*rdi + 224]
QUAD $0x000090fa84c6f8c5; WORD $0x8800 // vshufps xmm0, xmm0, oword [rdx + 8*rdi + 144], 136
QUAD $0x0000b0fa8cc6f0c5; WORD $0x8800 // vshufps xmm1, xmm1, oword [rdx + 8*rdi + 176], 136
QUAD $0x0000d0fa94c6e8c5; WORD $0x8800 // vshufps xmm2, xmm2, oword [rdx + 8*rdi + 208], 136
QUAD $0x0000f0fa9cc6e0c5; WORD $0x8800 // vshufps xmm3, xmm3, oword [rdx + 8*rdi + 240], 136
LONG $0x4411f8c5; WORD $0x40b9 // vmovups oword [rcx + 4*rdi + 64], xmm0
LONG $0x4c11f8c5; WORD $0x50b9 // vmovups oword [rcx + 4*rdi + 80], xmm1
LONG $0x5411f8c5; WORD $0x60b9 // vmovups oword [rcx + 4*rdi + 96], xmm2
LONG $0x5c11f8c5; WORD $0x70b9 // vmovups oword [rcx + 4*rdi + 112], xmm3
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_456
JMP LBB0_915
LBB0_457:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xe0 // and esi, -32
LONG $0xe0468d48 // lea rax, [rsi - 32]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x05e8c149 // shr r8, 5
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_459:
LONG $0x337de2c4; WORD $0x7a04 // vpmovzxwd ymm0, oword [rdx + 2*rdi]
LONG $0x337de2c4; WORD $0x7a4c; BYTE $0x10 // vpmovzxwd ymm1, oword [rdx + 2*rdi + 16]
LONG $0x337de2c4; WORD $0x7a54; BYTE $0x20 // vpmovzxwd ymm2, oword [rdx + 2*rdi + 32]
LONG $0x337de2c4; WORD $0x7a5c; BYTE $0x30 // vpmovzxwd ymm3, oword [rdx + 2*rdi + 48]
LONG $0x047ffec5; BYTE $0xb9 // vmovdqu yword [rcx + 4*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20b9 // vmovdqu yword [rcx + 4*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40b9 // vmovdqu yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60b9 // vmovdqu yword [rcx + 4*rdi + 96], ymm3
LONG $0x337de2c4; WORD $0x7a44; BYTE $0x40 // vpmovzxwd ymm0, oword [rdx + 2*rdi + 64]
LONG $0x337de2c4; WORD $0x7a4c; BYTE $0x50 // vpmovzxwd ymm1, oword [rdx + 2*rdi + 80]
LONG $0x337de2c4; WORD $0x7a54; BYTE $0x60 // vpmovzxwd ymm2, oword [rdx + 2*rdi + 96]
LONG $0x337de2c4; WORD $0x7a5c; BYTE $0x70 // vpmovzxwd ymm3, oword [rdx + 2*rdi + 112]
QUAD $0x000080b9847ffec5; BYTE $0x00 // vmovdqu yword [rcx + 4*rdi + 128], ymm0
QUAD $0x0000a0b98c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 4*rdi + 160], ymm1
QUAD $0x0000c0b9947ffec5; BYTE $0x00 // vmovdqu yword [rcx + 4*rdi + 192], ymm2
QUAD $0x0000e0b99c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 4*rdi + 224], ymm3
LONG $0x40c78348 // add rdi, 64
LONG $0x02c08348 // add rax, 2
JNE LBB0_459
JMP LBB0_1021
LBB0_460:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xe0 // and esi, -32
LONG $0xe0468d48 // lea rax, [rsi - 32]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x05e8c149 // shr r8, 5
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_462:
LONG $0x237de2c4; WORD $0x7a04 // vpmovsxwd ymm0, oword [rdx + 2*rdi]
LONG $0x237de2c4; WORD $0x7a4c; BYTE $0x10 // vpmovsxwd ymm1, oword [rdx + 2*rdi + 16]
LONG $0x237de2c4; WORD $0x7a54; BYTE $0x20 // vpmovsxwd ymm2, oword [rdx + 2*rdi + 32]
LONG $0x237de2c4; WORD $0x7a5c; BYTE $0x30 // vpmovsxwd ymm3, oword [rdx + 2*rdi + 48]
LONG $0x047ffec5; BYTE $0xb9 // vmovdqu yword [rcx + 4*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20b9 // vmovdqu yword [rcx + 4*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40b9 // vmovdqu yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60b9 // vmovdqu yword [rcx + 4*rdi + 96], ymm3
LONG $0x237de2c4; WORD $0x7a44; BYTE $0x40 // vpmovsxwd ymm0, oword [rdx + 2*rdi + 64]
LONG $0x237de2c4; WORD $0x7a4c; BYTE $0x50 // vpmovsxwd ymm1, oword [rdx + 2*rdi + 80]
LONG $0x237de2c4; WORD $0x7a54; BYTE $0x60 // vpmovsxwd ymm2, oword [rdx + 2*rdi + 96]
LONG $0x237de2c4; WORD $0x7a5c; BYTE $0x70 // vpmovsxwd ymm3, oword [rdx + 2*rdi + 112]
QUAD $0x000080b9847ffec5; BYTE $0x00 // vmovdqu yword [rcx + 4*rdi + 128], ymm0
QUAD $0x0000a0b98c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 4*rdi + 160], ymm1
QUAD $0x0000c0b9947ffec5; BYTE $0x00 // vmovdqu yword [rcx + 4*rdi + 192], ymm2
QUAD $0x0000e0b99c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 4*rdi + 224], ymm3
LONG $0x40c78348 // add rdi, 64
LONG $0x02c08348 // add rax, 2
JNE LBB0_462
JMP LBB0_1026
LBB0_463:
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_1030
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 $0x0410f8c5; BYTE $0xfa // vmovups xmm0, oword [rdx + 8*rdi]
LONG $0x4c10f8c5; WORD $0x20fa // vmovups xmm1, oword [rdx + 8*rdi + 32]
LONG $0x5410f8c5; WORD $0x40fa // vmovups xmm2, oword [rdx + 8*rdi + 64]
LONG $0x5c10f8c5; WORD $0x60fa // vmovups xmm3, oword [rdx + 8*rdi + 96]
LONG $0x44c6f8c5; WORD $0x10fa; BYTE $0x88 // vshufps xmm0, xmm0, oword [rdx + 8*rdi + 16], 136
LONG $0x4cc6f0c5; WORD $0x30fa; BYTE $0x88 // vshufps xmm1, xmm1, oword [rdx + 8*rdi + 48], 136
LONG $0x54c6e8c5; WORD $0x50fa; BYTE $0x88 // vshufps xmm2, xmm2, oword [rdx + 8*rdi + 80], 136
LONG $0x5cc6e0c5; WORD $0x70fa; BYTE $0x88 // vshufps xmm3, xmm3, oword [rdx + 8*rdi + 112], 136
LONG $0x0411f8c5; BYTE $0xb9 // vmovups oword [rcx + 4*rdi], xmm0
LONG $0x4c11f8c5; WORD $0x10b9 // vmovups oword [rcx + 4*rdi + 16], xmm1
LONG $0x5411f8c5; WORD $0x20b9 // vmovups oword [rcx + 4*rdi + 32], xmm2
LONG $0x5c11f8c5; WORD $0x30b9 // vmovups oword [rcx + 4*rdi + 48], xmm3
QUAD $0x000080fa8410f8c5; BYTE $0x00 // vmovups xmm0, oword [rdx + 8*rdi + 128]
QUAD $0x0000a0fa8c10f8c5; BYTE $0x00 // vmovups xmm1, oword [rdx + 8*rdi + 160]
QUAD $0x0000c0fa9410f8c5; BYTE $0x00 // vmovups xmm2, oword [rdx + 8*rdi + 192]
QUAD $0x0000e0fa9c10f8c5; BYTE $0x00 // vmovups xmm3, oword [rdx + 8*rdi + 224]
QUAD $0x000090fa84c6f8c5; WORD $0x8800 // vshufps xmm0, xmm0, oword [rdx + 8*rdi + 144], 136
QUAD $0x0000b0fa8cc6f0c5; WORD $0x8800 // vshufps xmm1, xmm1, oword [rdx + 8*rdi + 176], 136
QUAD $0x0000d0fa94c6e8c5; WORD $0x8800 // vshufps xmm2, xmm2, oword [rdx + 8*rdi + 208], 136
QUAD $0x0000f0fa9cc6e0c5; WORD $0x8800 // vshufps xmm3, xmm3, oword [rdx + 8*rdi + 240], 136
LONG $0x4411f8c5; WORD $0x40b9 // vmovups oword [rcx + 4*rdi + 64], xmm0
LONG $0x4c11f8c5; WORD $0x50b9 // vmovups oword [rcx + 4*rdi + 80], xmm1
LONG $0x5411f8c5; WORD $0x60b9 // vmovups oword [rcx + 4*rdi + 96], xmm2
LONG $0x5c11f8c5; WORD $0x70b9 // vmovups oword [rcx + 4*rdi + 112], xmm3
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_465
JMP LBB0_1031
LBB0_466:
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_1035
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LONG $0x1879e2c4; WORD $0x2c45 // vbroadcastss xmm0, dword 44[rbp] /* [rip + .LCPI0_2] */
LONG $0x1879e2c4; WORD $0x304d // vbroadcastss xmm1, dword 48[rbp] /* [rip + .LCPI0_3] */
LBB0_468:
LONG $0x1410f8c5; BYTE $0xba // vmovups xmm2, oword [rdx + 4*rdi]
LONG $0x5c10f8c5; WORD $0x10ba // vmovups xmm3, oword [rdx + 4*rdi + 16]
LONG $0x6410f8c5; WORD $0x20ba // vmovups xmm4, oword [rdx + 4*rdi + 32]
LONG $0xe8c2e8c5; BYTE $0x01 // vcmpltps xmm5, xmm2, xmm0
LONG $0xf05ce8c5 // vsubps xmm6, xmm2, xmm0
LONG $0xf65bfac5 // vcvttps2dq xmm6, xmm6
LONG $0xf157c8c5 // vxorps xmm6, xmm6, xmm1
LONG $0xd25bfac5 // vcvttps2dq xmm2, xmm2
LONG $0x4a49e3c4; WORD $0x50d2 // vblendvps xmm2, xmm6, xmm2, xmm5
LONG $0x6c10f8c5; WORD $0x30ba // vmovups xmm5, oword [rdx + 4*rdi + 48]
LONG $0xf0c2e0c5; BYTE $0x01 // vcmpltps xmm6, xmm3, xmm0
LONG $0xf85ce0c5 // vsubps xmm7, xmm3, xmm0
LONG $0xff5bfac5 // vcvttps2dq xmm7, xmm7
LONG $0xf957c0c5 // vxorps xmm7, xmm7, xmm1
LONG $0xdb5bfac5 // vcvttps2dq xmm3, xmm3
LONG $0x4a41e3c4; WORD $0x60db // vblendvps xmm3, xmm7, xmm3, xmm6
LONG $0xf0c2d8c5; BYTE $0x01 // vcmpltps xmm6, xmm4, xmm0
LONG $0xf85cd8c5 // vsubps xmm7, xmm4, xmm0
LONG $0xff5bfac5 // vcvttps2dq xmm7, xmm7
LONG $0xf957c0c5 // vxorps xmm7, xmm7, xmm1
LONG $0xe45bfac5 // vcvttps2dq xmm4, xmm4
LONG $0x4a41e3c4; WORD $0x60e4 // vblendvps xmm4, xmm7, xmm4, xmm6
LONG $0xf0c2d0c5; BYTE $0x01 // vcmpltps xmm6, xmm5, xmm0
LONG $0xf85cd0c5 // vsubps xmm7, xmm5, xmm0
LONG $0xff5bfac5 // vcvttps2dq xmm7, xmm7
LONG $0xf957c0c5 // vxorps xmm7, xmm7, xmm1
LONG $0xed5bfac5 // vcvttps2dq xmm5, xmm5
LONG $0x4a41e3c4; WORD $0x60ed // vblendvps xmm5, xmm7, xmm5, xmm6
LONG $0x1411f8c5; BYTE $0xb9 // vmovups oword [rcx + 4*rdi], xmm2
LONG $0x5c11f8c5; WORD $0x10b9 // vmovups oword [rcx + 4*rdi + 16], xmm3
LONG $0x6411f8c5; WORD $0x20b9 // vmovups oword [rcx + 4*rdi + 32], xmm4
LONG $0x6c11f8c5; WORD $0x30b9 // vmovups oword [rcx + 4*rdi + 48], xmm5
LONG $0x5410f8c5; WORD $0x40ba // vmovups xmm2, oword [rdx + 4*rdi + 64]
LONG $0x5c10f8c5; WORD $0x50ba // vmovups xmm3, oword [rdx + 4*rdi + 80]
LONG $0x6410f8c5; WORD $0x60ba // vmovups xmm4, oword [rdx + 4*rdi + 96]
LONG $0xe8c2e8c5; BYTE $0x01 // vcmpltps xmm5, xmm2, xmm0
LONG $0xf05ce8c5 // vsubps xmm6, xmm2, xmm0
LONG $0xf65bfac5 // vcvttps2dq xmm6, xmm6
LONG $0xf157c8c5 // vxorps xmm6, xmm6, xmm1
LONG $0xd25bfac5 // vcvttps2dq xmm2, xmm2
LONG $0x4a49e3c4; WORD $0x50d2 // vblendvps xmm2, xmm6, xmm2, xmm5
LONG $0x6c10f8c5; WORD $0x70ba // vmovups xmm5, oword [rdx + 4*rdi + 112]
LONG $0xf0c2e0c5; BYTE $0x01 // vcmpltps xmm6, xmm3, xmm0
LONG $0xf85ce0c5 // vsubps xmm7, xmm3, xmm0
LONG $0xff5bfac5 // vcvttps2dq xmm7, xmm7
LONG $0xf957c0c5 // vxorps xmm7, xmm7, xmm1
LONG $0xdb5bfac5 // vcvttps2dq xmm3, xmm3
LONG $0x4a41e3c4; WORD $0x60db // vblendvps xmm3, xmm7, xmm3, xmm6
LONG $0xf0c2d8c5; BYTE $0x01 // vcmpltps xmm6, xmm4, xmm0
LONG $0xf85cd8c5 // vsubps xmm7, xmm4, xmm0
LONG $0xff5bfac5 // vcvttps2dq xmm7, xmm7
LONG $0xf957c0c5 // vxorps xmm7, xmm7, xmm1
LONG $0xe45bfac5 // vcvttps2dq xmm4, xmm4
LONG $0x4a41e3c4; WORD $0x60e4 // vblendvps xmm4, xmm7, xmm4, xmm6
LONG $0xf0c2d0c5; BYTE $0x01 // vcmpltps xmm6, xmm5, xmm0
LONG $0xf85cd0c5 // vsubps xmm7, xmm5, xmm0
LONG $0xff5bfac5 // vcvttps2dq xmm7, xmm7
LONG $0xf957c0c5 // vxorps xmm7, xmm7, xmm1
LONG $0xed5bfac5 // vcvttps2dq xmm5, xmm5
LONG $0x4a41e3c4; WORD $0x60ed // vblendvps xmm5, xmm7, xmm5, xmm6
LONG $0x5411f8c5; WORD $0x40b9 // vmovups oword [rcx + 4*rdi + 64], xmm2
LONG $0x5c11f8c5; WORD $0x50b9 // vmovups oword [rcx + 4*rdi + 80], xmm3
LONG $0x6411f8c5; WORD $0x60b9 // vmovups oword [rcx + 4*rdi + 96], xmm4
LONG $0x6c11f8c5; WORD $0x70b9 // vmovups oword [rcx + 4*rdi + 112], xmm5
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_468
JMP LBB0_1036
LBB0_475:
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_1040
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LONG $0x597de2c4; WORD $0x0845 // vpbroadcastq ymm0, qword 8[rbp] /* [rip + .LCPI0_5] */
LBB0_477:
LONG $0x357de2c4; WORD $0xba0c // vpmovzxdq ymm1, oword [rdx + 4*rdi]
LONG $0x357de2c4; WORD $0xba54; BYTE $0x10 // vpmovzxdq ymm2, oword [rdx + 4*rdi + 16]
LONG $0x357de2c4; WORD $0xba5c; BYTE $0x20 // vpmovzxdq ymm3, oword [rdx + 4*rdi + 32]
LONG $0x357de2c4; WORD $0xba64; BYTE $0x30 // vpmovzxdq ymm4, oword [rdx + 4*rdi + 48]
LONG $0xc8ebf5c5 // vpor ymm1, ymm1, ymm0
LONG $0xc85cf5c5 // vsubpd ymm1, ymm1, ymm0
LONG $0xd0ebedc5 // vpor ymm2, ymm2, ymm0
LONG $0xd05cedc5 // vsubpd ymm2, ymm2, ymm0
LONG $0xd8ebe5c5 // vpor ymm3, ymm3, ymm0
LONG $0xd85ce5c5 // vsubpd ymm3, ymm3, ymm0
LONG $0xe0ebddc5 // vpor ymm4, ymm4, ymm0
LONG $0xe05cddc5 // vsubpd ymm4, ymm4, ymm0
LONG $0x0c11fdc5; BYTE $0xf9 // vmovupd yword [rcx + 8*rdi], ymm1
LONG $0x5411fdc5; WORD $0x20f9 // vmovupd yword [rcx + 8*rdi + 32], ymm2
LONG $0x5c11fdc5; WORD $0x40f9 // vmovupd yword [rcx + 8*rdi + 64], ymm3
LONG $0x6411fdc5; WORD $0x60f9 // vmovupd yword [rcx + 8*rdi + 96], ymm4
LONG $0x357de2c4; WORD $0xba4c; BYTE $0x40 // vpmovzxdq ymm1, oword [rdx + 4*rdi + 64]
LONG $0x357de2c4; WORD $0xba54; BYTE $0x50 // vpmovzxdq ymm2, oword [rdx + 4*rdi + 80]
LONG $0x357de2c4; WORD $0xba5c; BYTE $0x60 // vpmovzxdq ymm3, oword [rdx + 4*rdi + 96]
LONG $0x357de2c4; WORD $0xba64; BYTE $0x70 // vpmovzxdq ymm4, oword [rdx + 4*rdi + 112]
LONG $0xc8ebf5c5 // vpor ymm1, ymm1, ymm0
LONG $0xc85cf5c5 // vsubpd ymm1, ymm1, ymm0
LONG $0xd0ebedc5 // vpor ymm2, ymm2, ymm0
LONG $0xd05cedc5 // vsubpd ymm2, ymm2, ymm0
LONG $0xd8ebe5c5 // vpor ymm3, ymm3, ymm0
LONG $0xd85ce5c5 // vsubpd ymm3, ymm3, ymm0
LONG $0xe0ebddc5 // vpor ymm4, ymm4, ymm0
LONG $0xe05cddc5 // vsubpd ymm4, ymm4, ymm0
QUAD $0x000080f98c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 128], ymm1
QUAD $0x0000a0f99411fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 160], ymm2
QUAD $0x0000c0f99c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 192], ymm3
QUAD $0x0000e0f9a411fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 224], ymm4
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_477
JMP LBB0_1041
LBB0_484:
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_919
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LONG $0x597de2c4; WORD $0x0845 // vpbroadcastq ymm0, qword 8[rbp] /* [rip + .LCPI0_5] */
LONG $0xc9eff1c5 // vpxor xmm1, xmm1, xmm1
LONG $0x597de2c4; WORD $0x1055 // vpbroadcastq ymm2, qword 16[rbp] /* [rip + .LCPI0_6] */
LONG $0x197de2c4; WORD $0x185d // vbroadcastsd ymm3, qword 24[rbp] /* [rip + .LCPI0_7] */
LBB0_486:
LONG $0x246ffec5; BYTE $0xfa // vmovdqu ymm4, yword [rdx + 8*rdi]
LONG $0x6c6ffec5; WORD $0x20fa // vmovdqu ymm5, yword [rdx + 8*rdi + 32]
LONG $0x746ffec5; WORD $0x40fa // vmovdqu ymm6, yword [rdx + 8*rdi + 64]
LONG $0x7c6ffec5; WORD $0x60fa // vmovdqu ymm7, yword [rdx + 8*rdi + 96]
LONG $0x025d63c4; WORD $0xaac1 // vpblendd ymm8, ymm4, ymm1, 170
LONG $0xc0eb3dc5 // vpor ymm8, ymm8, ymm0
LONG $0xd473ddc5; BYTE $0x20 // vpsrlq ymm4, ymm4, 32
LONG $0xe2ebddc5 // vpor ymm4, ymm4, ymm2
LONG $0xe35cddc5 // vsubpd ymm4, ymm4, ymm3
LONG $0xe458bdc5 // vaddpd ymm4, ymm8, ymm4
LONG $0x025563c4; WORD $0xaac1 // vpblendd ymm8, ymm5, ymm1, 170
LONG $0xc0eb3dc5 // vpor ymm8, ymm8, ymm0
LONG $0xd573d5c5; BYTE $0x20 // vpsrlq ymm5, ymm5, 32
LONG $0xeaebd5c5 // vpor ymm5, ymm5, ymm2
LONG $0xeb5cd5c5 // vsubpd ymm5, ymm5, ymm3
LONG $0xed58bdc5 // vaddpd ymm5, ymm8, ymm5
LONG $0x024d63c4; WORD $0xaac1 // vpblendd ymm8, ymm6, ymm1, 170
LONG $0xc0eb3dc5 // vpor ymm8, ymm8, ymm0
LONG $0xd673cdc5; BYTE $0x20 // vpsrlq ymm6, ymm6, 32
LONG $0xf2ebcdc5 // vpor ymm6, ymm6, ymm2
LONG $0xf35ccdc5 // vsubpd ymm6, ymm6, ymm3
LONG $0xf658bdc5 // vaddpd ymm6, ymm8, ymm6
LONG $0x024563c4; WORD $0xaac1 // vpblendd ymm8, ymm7, ymm1, 170
LONG $0xc0eb3dc5 // vpor ymm8, ymm8, ymm0
LONG $0xd773c5c5; BYTE $0x20 // vpsrlq ymm7, ymm7, 32
LONG $0xfaebc5c5 // vpor ymm7, ymm7, ymm2
LONG $0xfb5cc5c5 // vsubpd ymm7, ymm7, ymm3
LONG $0xff58bdc5 // vaddpd ymm7, ymm8, ymm7
LONG $0x2411fdc5; BYTE $0xf9 // vmovupd yword [rcx + 8*rdi], ymm4
LONG $0x6c11fdc5; WORD $0x20f9 // vmovupd yword [rcx + 8*rdi + 32], ymm5
LONG $0x7411fdc5; WORD $0x40f9 // vmovupd yword [rcx + 8*rdi + 64], ymm6
LONG $0x7c11fdc5; WORD $0x60f9 // vmovupd yword [rcx + 8*rdi + 96], ymm7
QUAD $0x000080faa46ffec5; BYTE $0x00 // vmovdqu ymm4, yword [rdx + 8*rdi + 128]
QUAD $0x0000a0faac6ffec5; BYTE $0x00 // vmovdqu ymm5, yword [rdx + 8*rdi + 160]
QUAD $0x0000c0fab46ffec5; BYTE $0x00 // vmovdqu ymm6, yword [rdx + 8*rdi + 192]
QUAD $0x0000e0fabc6ffec5; BYTE $0x00 // vmovdqu ymm7, yword [rdx + 8*rdi + 224]
LONG $0x025d63c4; WORD $0xaac1 // vpblendd ymm8, ymm4, ymm1, 170
LONG $0xc0eb3dc5 // vpor ymm8, ymm8, ymm0
LONG $0xd473ddc5; BYTE $0x20 // vpsrlq ymm4, ymm4, 32
LONG $0xe2ebddc5 // vpor ymm4, ymm4, ymm2
LONG $0xe35cddc5 // vsubpd ymm4, ymm4, ymm3
LONG $0xe458bdc5 // vaddpd ymm4, ymm8, ymm4
LONG $0x025563c4; WORD $0xaac1 // vpblendd ymm8, ymm5, ymm1, 170
LONG $0xc0eb3dc5 // vpor ymm8, ymm8, ymm0
LONG $0xd573d5c5; BYTE $0x20 // vpsrlq ymm5, ymm5, 32
LONG $0xeaebd5c5 // vpor ymm5, ymm5, ymm2
LONG $0xeb5cd5c5 // vsubpd ymm5, ymm5, ymm3
LONG $0xed58bdc5 // vaddpd ymm5, ymm8, ymm5
LONG $0x024d63c4; WORD $0xaac1 // vpblendd ymm8, ymm6, ymm1, 170
LONG $0xc0eb3dc5 // vpor ymm8, ymm8, ymm0
LONG $0xd673cdc5; BYTE $0x20 // vpsrlq ymm6, ymm6, 32
LONG $0xf2ebcdc5 // vpor ymm6, ymm6, ymm2
LONG $0xf35ccdc5 // vsubpd ymm6, ymm6, ymm3
LONG $0xf658bdc5 // vaddpd ymm6, ymm8, ymm6
LONG $0x024563c4; WORD $0xaac1 // vpblendd ymm8, ymm7, ymm1, 170
LONG $0xc0eb3dc5 // vpor ymm8, ymm8, ymm0
LONG $0xd773c5c5; BYTE $0x20 // vpsrlq ymm7, ymm7, 32
LONG $0xfaebc5c5 // vpor ymm7, ymm7, ymm2
LONG $0xfb5cc5c5 // vsubpd ymm7, ymm7, ymm3
LONG $0xff58bdc5 // vaddpd ymm7, ymm8, ymm7
QUAD $0x000080f9a411fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 128], ymm4
QUAD $0x0000a0f9ac11fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 160], ymm5
QUAD $0x0000c0f9b411fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 192], ymm6
QUAD $0x0000e0f9bc11fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 224], ymm7
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_486
JMP LBB0_920
LBB0_487:
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_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_489:
LONG $0x3379e2c4; WORD $0x7a04 // vpmovzxwd xmm0, qword [rdx + 2*rdi]
LONG $0x3379e2c4; WORD $0x7a4c; BYTE $0x08 // vpmovzxwd xmm1, qword [rdx + 2*rdi + 8]
LONG $0x3379e2c4; WORD $0x7a54; BYTE $0x10 // vpmovzxwd xmm2, qword [rdx + 2*rdi + 16]
LONG $0x3379e2c4; WORD $0x7a5c; BYTE $0x18 // vpmovzxwd xmm3, qword [rdx + 2*rdi + 24]
LONG $0xc0e6fec5 // vcvtdq2pd ymm0, xmm0
LONG $0xc9e6fec5 // vcvtdq2pd ymm1, xmm1
LONG $0xd2e6fec5 // vcvtdq2pd ymm2, xmm2
LONG $0xdbe6fec5 // vcvtdq2pd ymm3, xmm3
LONG $0x0411fcc5; BYTE $0xf9 // vmovups yword [rcx + 8*rdi], ymm0
LONG $0x4c11fcc5; WORD $0x20f9 // vmovups yword [rcx + 8*rdi + 32], ymm1
LONG $0x5411fcc5; WORD $0x40f9 // vmovups yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c11fcc5; WORD $0x60f9 // vmovups yword [rcx + 8*rdi + 96], ymm3
LONG $0x3379e2c4; WORD $0x7a44; BYTE $0x20 // vpmovzxwd xmm0, qword [rdx + 2*rdi + 32]
LONG $0x3379e2c4; WORD $0x7a4c; BYTE $0x28 // vpmovzxwd xmm1, qword [rdx + 2*rdi + 40]
LONG $0x3379e2c4; WORD $0x7a54; BYTE $0x30 // vpmovzxwd xmm2, qword [rdx + 2*rdi + 48]
LONG $0x3379e2c4; WORD $0x7a5c; BYTE $0x38 // vpmovzxwd xmm3, qword [rdx + 2*rdi + 56]
LONG $0xc0e6fec5 // vcvtdq2pd ymm0, xmm0
LONG $0xc9e6fec5 // vcvtdq2pd ymm1, xmm1
LONG $0xd2e6fec5 // vcvtdq2pd ymm2, xmm2
LONG $0xdbe6fec5 // vcvtdq2pd ymm3, xmm3
QUAD $0x000080f98411fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 128], ymm0
QUAD $0x0000a0f98c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 160], ymm1
QUAD $0x0000c0f99411fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 192], ymm2
QUAD $0x0000e0f99c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 224], ymm3
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_489
JMP LBB0_1046
LBB0_490:
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_1050
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_492:
LONG $0x2379e2c4; WORD $0x7a04 // vpmovsxwd xmm0, qword [rdx + 2*rdi]
LONG $0x2379e2c4; WORD $0x7a4c; BYTE $0x08 // vpmovsxwd xmm1, qword [rdx + 2*rdi + 8]
LONG $0x2379e2c4; WORD $0x7a54; BYTE $0x10 // vpmovsxwd xmm2, qword [rdx + 2*rdi + 16]
LONG $0x2379e2c4; WORD $0x7a5c; BYTE $0x18 // vpmovsxwd xmm3, qword [rdx + 2*rdi + 24]
LONG $0xc0e6fec5 // vcvtdq2pd ymm0, xmm0
LONG $0xc9e6fec5 // vcvtdq2pd ymm1, xmm1
LONG $0xd2e6fec5 // vcvtdq2pd ymm2, xmm2
LONG $0xdbe6fec5 // vcvtdq2pd ymm3, xmm3
LONG $0x0411fcc5; BYTE $0xf9 // vmovups yword [rcx + 8*rdi], ymm0
LONG $0x4c11fcc5; WORD $0x20f9 // vmovups yword [rcx + 8*rdi + 32], ymm1
LONG $0x5411fcc5; WORD $0x40f9 // vmovups yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c11fcc5; WORD $0x60f9 // vmovups yword [rcx + 8*rdi + 96], ymm3
LONG $0x2379e2c4; WORD $0x7a44; BYTE $0x20 // vpmovsxwd xmm0, qword [rdx + 2*rdi + 32]
LONG $0x2379e2c4; WORD $0x7a4c; BYTE $0x28 // vpmovsxwd xmm1, qword [rdx + 2*rdi + 40]
LONG $0x2379e2c4; WORD $0x7a54; BYTE $0x30 // vpmovsxwd xmm2, qword [rdx + 2*rdi + 48]
LONG $0x2379e2c4; WORD $0x7a5c; BYTE $0x38 // vpmovsxwd xmm3, qword [rdx + 2*rdi + 56]
LONG $0xc0e6fec5 // vcvtdq2pd ymm0, xmm0
LONG $0xc9e6fec5 // vcvtdq2pd ymm1, xmm1
LONG $0xd2e6fec5 // vcvtdq2pd ymm2, xmm2
LONG $0xdbe6fec5 // vcvtdq2pd ymm3, xmm3
QUAD $0x000080f98411fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 128], ymm0
QUAD $0x0000a0f98c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 160], ymm1
QUAD $0x0000c0f99411fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 192], ymm2
QUAD $0x0000e0f99c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 224], ymm3
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_492
JMP LBB0_1051
LBB0_493:
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_1055
WORD $0x894d; BYTE $0xc2 // mov r10, r8
LONG $0xfee28349 // and r10, -2
WORD $0xf749; BYTE $0xda // neg r10
WORD $0xff31 // xor edi, edi
LBB0_495:
LONG $0x046ffac5; BYTE $0xfa // vmovdqu xmm0, oword [rdx + 8*rdi]
LONG $0x4c6ffac5; WORD $0x10fa // vmovdqu xmm1, oword [rdx + 8*rdi + 16]
LONG $0x16f9e3c4; WORD $0x01c0 // vpextrq rax, xmm0, 1
LONG $0x2aa3e1c4; BYTE $0xd0 // vcvtsi2sd xmm2, xmm11, rax
LONG $0x5c6ffac5; WORD $0x20fa // vmovdqu xmm3, oword [rdx + 8*rdi + 32]
LONG $0x7ef9e1c4; BYTE $0xc0 // vmovq rax, xmm0
LONG $0x2aa3e1c4; BYTE $0xc0 // vcvtsi2sd xmm0, xmm11, rax
LONG $0x16f9e3c4; WORD $0x01c8 // vpextrq rax, xmm1, 1
LONG $0x2aa3e1c4; BYTE $0xe0 // vcvtsi2sd xmm4, xmm11, rax
LONG $0x6c6ffac5; WORD $0x30fa // vmovdqu xmm5, oword [rdx + 8*rdi + 48]
LONG $0x7ef9e1c4; BYTE $0xc8 // vmovq rax, xmm1
LONG $0x2aa3e1c4; BYTE $0xc8 // vcvtsi2sd xmm1, xmm11, rax
LONG $0x16f9e3c4; WORD $0x01e8 // vpextrq rax, xmm5, 1
LONG $0x2aa3e1c4; BYTE $0xf0 // vcvtsi2sd xmm6, xmm11, rax
LONG $0xc21479c5 // vunpcklpd xmm8, xmm0, xmm2
LONG $0x7ef9e1c4; BYTE $0xe8 // vmovq rax, xmm5
LONG $0x2aa3e1c4; BYTE $0xd0 // vcvtsi2sd xmm2, xmm11, rax
LONG $0x16f9e3c4; WORD $0x01d8 // vpextrq rax, xmm3, 1
LONG $0x2aa3e1c4; BYTE $0xe8 // vcvtsi2sd xmm5, xmm11, rax
LONG $0xd41471c5 // vunpcklpd xmm10, xmm1, xmm4
LONG $0x7ef9e1c4; BYTE $0xd8 // vmovq rax, xmm3
LONG $0x2aa3e1c4; BYTE $0xd8 // vcvtsi2sd xmm3, xmm11, rax
LONG $0xce1469c5 // vunpcklpd xmm9, xmm2, xmm6
LONG $0x646ffac5; WORD $0x50fa // vmovdqu xmm4, oword [rdx + 8*rdi + 80]
LONG $0x16f9e3c4; WORD $0x01e0 // vpextrq rax, xmm4, 1
LONG $0xdd14e1c5 // vunpcklpd xmm3, xmm3, xmm5
LONG $0x2aa3e1c4; BYTE $0xe8 // vcvtsi2sd xmm5, xmm11, rax
LONG $0x7ef9e1c4; BYTE $0xe0 // vmovq rax, xmm4
LONG $0x2aa3e1c4; BYTE $0xe0 // vcvtsi2sd xmm4, xmm11, rax
LONG $0xe514d9c5 // vunpcklpd xmm4, xmm4, xmm5
LONG $0x6c6ffac5; WORD $0x40fa // vmovdqu xmm5, oword [rdx + 8*rdi + 64]
LONG $0x16f9e3c4; WORD $0x01e8 // vpextrq rax, xmm5, 1
LONG $0x2aa3e1c4; BYTE $0xf0 // vcvtsi2sd xmm6, xmm11, rax
LONG $0x7ef9e1c4; BYTE $0xe8 // vmovq rax, xmm5
LONG $0x2aa3e1c4; BYTE $0xe8 // vcvtsi2sd xmm5, xmm11, rax
LONG $0x7c6ffac5; WORD $0x70fa // vmovdqu xmm7, oword [rdx + 8*rdi + 112]
LONG $0x16f9e3c4; WORD $0x01f8 // vpextrq rax, xmm7, 1
LONG $0x2aa3e1c4; BYTE $0xc0 // vcvtsi2sd xmm0, xmm11, rax
LONG $0x7ef9e1c4; BYTE $0xf8 // vmovq rax, xmm7
LONG $0x2aa3e1c4; BYTE $0xf8 // vcvtsi2sd xmm7, xmm11, rax
LONG $0x546ffac5; WORD $0x60fa // vmovdqu xmm2, oword [rdx + 8*rdi + 96]
LONG $0x16f9e3c4; WORD $0x01d0 // vpextrq rax, xmm2, 1
LONG $0x2aa3e1c4; BYTE $0xc8 // vcvtsi2sd xmm1, xmm11, rax
LONG $0xee14d1c5 // vunpcklpd xmm5, xmm5, xmm6
LONG $0x7ef9e1c4; BYTE $0xd0 // vmovq rax, xmm2
LONG $0x2aa3e1c4; BYTE $0xd0 // vcvtsi2sd xmm2, xmm11, rax
LONG $0xc014c1c5 // vunpcklpd xmm0, xmm7, xmm0
LONG $0xc914e9c5 // vunpcklpd xmm1, xmm2, xmm1
LONG $0x541179c5; WORD $0x10f9 // vmovupd oword [rcx + 8*rdi + 16], xmm10
LONG $0x041179c5; BYTE $0xf9 // vmovupd oword [rcx + 8*rdi], xmm8
LONG $0x5c11f9c5; WORD $0x20f9 // vmovupd oword [rcx + 8*rdi + 32], xmm3
LONG $0x4c1179c5; WORD $0x30f9 // vmovupd oword [rcx + 8*rdi + 48], xmm9
LONG $0x6c11f9c5; WORD $0x40f9 // vmovupd oword [rcx + 8*rdi + 64], xmm5
LONG $0x6411f9c5; WORD $0x50f9 // vmovupd oword [rcx + 8*rdi + 80], xmm4
LONG $0x4c11f9c5; WORD $0x60f9 // vmovupd oword [rcx + 8*rdi + 96], xmm1
LONG $0x4411f9c5; WORD $0x70f9 // vmovupd oword [rcx + 8*rdi + 112], xmm0
QUAD $0x000080fa846ffac5; BYTE $0x00 // vmovdqu xmm0, oword [rdx + 8*rdi + 128]
QUAD $0x000090fa8c6ffac5; BYTE $0x00 // vmovdqu xmm1, oword [rdx + 8*rdi + 144]
LONG $0x16f9e3c4; WORD $0x01c0 // vpextrq rax, xmm0, 1
LONG $0x2aa3e1c4; BYTE $0xd0 // vcvtsi2sd xmm2, xmm11, rax
QUAD $0x0000a0fa9c6ffac5; BYTE $0x00 // vmovdqu xmm3, oword [rdx + 8*rdi + 160]
LONG $0x7ef9e1c4; BYTE $0xc0 // vmovq rax, xmm0
LONG $0x2aa3e1c4; BYTE $0xc0 // vcvtsi2sd xmm0, xmm11, rax
LONG $0x16f9e3c4; WORD $0x01c8 // vpextrq rax, xmm1, 1
LONG $0x2aa3e1c4; BYTE $0xe0 // vcvtsi2sd xmm4, xmm11, rax
QUAD $0x0000b0faac6ffac5; BYTE $0x00 // vmovdqu xmm5, oword [rdx + 8*rdi + 176]
LONG $0x7ef9e1c4; BYTE $0xc8 // vmovq rax, xmm1
LONG $0x2aa3e1c4; BYTE $0xc8 // vcvtsi2sd xmm1, xmm11, rax
LONG $0x16f9e3c4; WORD $0x01e8 // vpextrq rax, xmm5, 1
LONG $0x2aa3e1c4; BYTE $0xf0 // vcvtsi2sd xmm6, xmm11, rax
LONG $0xc21479c5 // vunpcklpd xmm8, xmm0, xmm2
LONG $0x7ef9e1c4; BYTE $0xe8 // vmovq rax, xmm5
LONG $0x2aa3e1c4; BYTE $0xd0 // vcvtsi2sd xmm2, xmm11, rax
LONG $0x16f9e3c4; WORD $0x01d8 // vpextrq rax, xmm3, 1
LONG $0x2aa3e1c4; BYTE $0xe8 // vcvtsi2sd xmm5, xmm11, rax
LONG $0xd41471c5 // vunpcklpd xmm10, xmm1, xmm4
LONG $0x7ef9e1c4; BYTE $0xd8 // vmovq rax, xmm3
LONG $0x2aa3e1c4; BYTE $0xd8 // vcvtsi2sd xmm3, xmm11, rax
LONG $0xce1469c5 // vunpcklpd xmm9, xmm2, xmm6
QUAD $0x0000d0faa46ffac5; BYTE $0x00 // vmovdqu xmm4, oword [rdx + 8*rdi + 208]
LONG $0x16f9e3c4; WORD $0x01e0 // vpextrq rax, xmm4, 1
LONG $0xdd14e1c5 // vunpcklpd xmm3, xmm3, xmm5
LONG $0x2aa3e1c4; BYTE $0xe8 // vcvtsi2sd xmm5, xmm11, rax
LONG $0x7ef9e1c4; BYTE $0xe0 // vmovq rax, xmm4
LONG $0x2aa3e1c4; BYTE $0xe0 // vcvtsi2sd xmm4, xmm11, rax
LONG $0xe514d9c5 // vunpcklpd xmm4, xmm4, xmm5
QUAD $0x0000c0faac6ffac5; BYTE $0x00 // vmovdqu xmm5, oword [rdx + 8*rdi + 192]
LONG $0x16f9e3c4; WORD $0x01e8 // vpextrq rax, xmm5, 1
LONG $0x2aa3e1c4; BYTE $0xf0 // vcvtsi2sd xmm6, xmm11, rax
LONG $0x7ef9e1c4; BYTE $0xe8 // vmovq rax, xmm5
LONG $0x2aa3e1c4; BYTE $0xe8 // vcvtsi2sd xmm5, xmm11, rax
QUAD $0x0000f0fabc6ffac5; BYTE $0x00 // vmovdqu xmm7, oword [rdx + 8*rdi + 240]
LONG $0x16f9e3c4; WORD $0x01f8 // vpextrq rax, xmm7, 1
LONG $0x2aa3e1c4; BYTE $0xc0 // vcvtsi2sd xmm0, xmm11, rax
LONG $0x7ef9e1c4; BYTE $0xf8 // vmovq rax, xmm7
LONG $0x2aa3e1c4; BYTE $0xf8 // vcvtsi2sd xmm7, xmm11, rax
QUAD $0x0000e0fa946ffac5; BYTE $0x00 // vmovdqu xmm2, oword [rdx + 8*rdi + 224]
LONG $0x16f9e3c4; WORD $0x01d0 // vpextrq rax, xmm2, 1
LONG $0x2aa3e1c4; BYTE $0xc8 // vcvtsi2sd xmm1, xmm11, rax
LONG $0xee14d1c5 // vunpcklpd xmm5, xmm5, xmm6
LONG $0x7ef9e1c4; BYTE $0xd0 // vmovq rax, xmm2
LONG $0x2aa3e1c4; BYTE $0xd0 // vcvtsi2sd xmm2, xmm11, rax
LONG $0xc014c1c5 // vunpcklpd xmm0, xmm7, xmm0
LONG $0xc914e9c5 // vunpcklpd xmm1, xmm2, xmm1
QUAD $0x000090f9941179c5; BYTE $0x00 // vmovupd oword [rcx + 8*rdi + 144], xmm10
QUAD $0x000080f9841179c5; BYTE $0x00 // vmovupd oword [rcx + 8*rdi + 128], xmm8
QUAD $0x0000a0f99c11f9c5; BYTE $0x00 // vmovupd oword [rcx + 8*rdi + 160], xmm3
QUAD $0x0000b0f98c1179c5; BYTE $0x00 // vmovupd oword [rcx + 8*rdi + 176], xmm9
QUAD $0x0000c0f9ac11f9c5; BYTE $0x00 // vmovupd oword [rcx + 8*rdi + 192], xmm5
QUAD $0x0000d0f9a411f9c5; BYTE $0x00 // vmovupd oword [rcx + 8*rdi + 208], xmm4
QUAD $0x0000e0f98c11f9c5; BYTE $0x00 // vmovupd oword [rcx + 8*rdi + 224], xmm1
QUAD $0x0000f0f98411f9c5; BYTE $0x00 // vmovupd oword [rcx + 8*rdi + 240], xmm0
LONG $0x20c78348 // add rdi, 32
LONG $0x02c28349 // add r10, 2
JNE LBB0_495
JMP LBB0_1056
LBB0_496:
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_1060
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_498:
LONG $0x045afcc5; BYTE $0xba // vcvtps2pd ymm0, oword [rdx + 4*rdi]
LONG $0x4c5afcc5; WORD $0x10ba // vcvtps2pd ymm1, oword [rdx + 4*rdi + 16]
LONG $0x545afcc5; WORD $0x20ba // vcvtps2pd ymm2, oword [rdx + 4*rdi + 32]
LONG $0x5c5afcc5; WORD $0x30ba // vcvtps2pd ymm3, oword [rdx + 4*rdi + 48]
LONG $0x0411fcc5; BYTE $0xf9 // vmovups yword [rcx + 8*rdi], ymm0
LONG $0x4c11fcc5; WORD $0x20f9 // vmovups yword [rcx + 8*rdi + 32], ymm1
LONG $0x5411fcc5; WORD $0x40f9 // vmovups yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c11fcc5; WORD $0x60f9 // vmovups yword [rcx + 8*rdi + 96], ymm3
LONG $0x445afcc5; WORD $0x40ba // vcvtps2pd ymm0, oword [rdx + 4*rdi + 64]
LONG $0x4c5afcc5; WORD $0x50ba // vcvtps2pd ymm1, oword [rdx + 4*rdi + 80]
LONG $0x545afcc5; WORD $0x60ba // vcvtps2pd ymm2, oword [rdx + 4*rdi + 96]
LONG $0x5c5afcc5; WORD $0x70ba // vcvtps2pd ymm3, oword [rdx + 4*rdi + 112]
QUAD $0x000080f98411fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 128], ymm0
QUAD $0x0000a0f98c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 160], ymm1
QUAD $0x0000c0f99411fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 192], ymm2
QUAD $0x0000e0f99c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 224], ymm3
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_498
JMP LBB0_1061
LBB0_502:
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_925
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_504:
LONG $0x04e6fec5; BYTE $0xba // vcvtdq2pd ymm0, oword [rdx + 4*rdi]
LONG $0x4ce6fec5; WORD $0x10ba // vcvtdq2pd ymm1, oword [rdx + 4*rdi + 16]
LONG $0x54e6fec5; WORD $0x20ba // vcvtdq2pd ymm2, oword [rdx + 4*rdi + 32]
LONG $0x5ce6fec5; WORD $0x30ba // vcvtdq2pd ymm3, oword [rdx + 4*rdi + 48]
LONG $0x0411fcc5; BYTE $0xf9 // vmovups yword [rcx + 8*rdi], ymm0
LONG $0x4c11fcc5; WORD $0x20f9 // vmovups yword [rcx + 8*rdi + 32], ymm1
LONG $0x5411fcc5; WORD $0x40f9 // vmovups yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c11fcc5; WORD $0x60f9 // vmovups yword [rcx + 8*rdi + 96], ymm3
LONG $0x44e6fec5; WORD $0x40ba // vcvtdq2pd ymm0, oword [rdx + 4*rdi + 64]
LONG $0x4ce6fec5; WORD $0x50ba // vcvtdq2pd ymm1, oword [rdx + 4*rdi + 80]
LONG $0x54e6fec5; WORD $0x60ba // vcvtdq2pd ymm2, oword [rdx + 4*rdi + 96]
LONG $0x5ce6fec5; WORD $0x70ba // vcvtdq2pd ymm3, oword [rdx + 4*rdi + 112]
QUAD $0x000080f98411fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 128], ymm0
QUAD $0x0000a0f98c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 160], ymm1
QUAD $0x0000c0f99411fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 192], ymm2
QUAD $0x0000e0f99c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 224], ymm3
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_504
JMP LBB0_926
LBB0_535:
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_930
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_537:
LONG $0x357de2c4; WORD $0xba04 // vpmovzxdq ymm0, oword [rdx + 4*rdi]
LONG $0x357de2c4; WORD $0xba4c; BYTE $0x10 // vpmovzxdq ymm1, oword [rdx + 4*rdi + 16]
LONG $0x357de2c4; WORD $0xba54; BYTE $0x20 // vpmovzxdq ymm2, oword [rdx + 4*rdi + 32]
LONG $0x357de2c4; WORD $0xba5c; BYTE $0x30 // vpmovzxdq ymm3, oword [rdx + 4*rdi + 48]
LONG $0x047ffec5; BYTE $0xf9 // vmovdqu yword [rcx + 8*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20f9 // vmovdqu yword [rcx + 8*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40f9 // vmovdqu yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60f9 // vmovdqu yword [rcx + 8*rdi + 96], ymm3
LONG $0x357de2c4; WORD $0xba44; BYTE $0x40 // vpmovzxdq ymm0, oword [rdx + 4*rdi + 64]
LONG $0x357de2c4; WORD $0xba4c; BYTE $0x50 // vpmovzxdq ymm1, oword [rdx + 4*rdi + 80]
LONG $0x357de2c4; WORD $0xba54; BYTE $0x60 // vpmovzxdq ymm2, oword [rdx + 4*rdi + 96]
LONG $0x357de2c4; WORD $0xba5c; BYTE $0x70 // vpmovzxdq ymm3, oword [rdx + 4*rdi + 112]
QUAD $0x000080f9847ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 128], ymm0
QUAD $0x0000a0f98c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 160], ymm1
QUAD $0x0000c0f9947ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 192], ymm2
QUAD $0x0000e0f99c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 224], ymm3
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_537
JMP LBB0_931
LBB0_538:
WORD $0x8945; BYTE $0xce // mov r14d, r9d
LONG $0xfce68341 // and r14d, -4
LONG $0xfc468d49 // lea rax, [r14 - 4]
WORD $0x8949; BYTE $0xc2 // mov r10, rax
LONG $0x02eac149 // shr r10, 2
LONG $0x01c28349 // add r10, 1
WORD $0x8945; BYTE $0xd0 // mov r8d, r10d
LONG $0x03e08341 // and r8d, 3
LONG $0x0cf88348 // cmp rax, 12
JAE LBB0_793
WORD $0xc031 // xor eax, eax
JMP LBB0_795
LBB0_546:
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_935
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_548:
LONG $0x347de2c4; WORD $0x7a04 // vpmovzxwq ymm0, qword [rdx + 2*rdi]
LONG $0x347de2c4; WORD $0x7a4c; BYTE $0x08 // vpmovzxwq ymm1, qword [rdx + 2*rdi + 8]
LONG $0x347de2c4; WORD $0x7a54; BYTE $0x10 // vpmovzxwq ymm2, qword [rdx + 2*rdi + 16]
LONG $0x347de2c4; WORD $0x7a5c; BYTE $0x18 // vpmovzxwq ymm3, qword [rdx + 2*rdi + 24]
LONG $0x047ffec5; BYTE $0xf9 // vmovdqu yword [rcx + 8*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20f9 // vmovdqu yword [rcx + 8*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40f9 // vmovdqu yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60f9 // vmovdqu yword [rcx + 8*rdi + 96], ymm3
LONG $0x347de2c4; WORD $0x7a44; BYTE $0x20 // vpmovzxwq ymm0, qword [rdx + 2*rdi + 32]
LONG $0x347de2c4; WORD $0x7a4c; BYTE $0x28 // vpmovzxwq ymm1, qword [rdx + 2*rdi + 40]
LONG $0x347de2c4; WORD $0x7a54; BYTE $0x30 // vpmovzxwq ymm2, qword [rdx + 2*rdi + 48]
LONG $0x347de2c4; WORD $0x7a5c; BYTE $0x38 // vpmovzxwq ymm3, qword [rdx + 2*rdi + 56]
QUAD $0x000080f9847ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 128], ymm0
QUAD $0x0000a0f98c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 160], ymm1
QUAD $0x0000c0f9947ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 192], ymm2
QUAD $0x0000e0f99c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 224], ymm3
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_548
JMP LBB0_936
LBB0_549:
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_940
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_551:
LONG $0x247de2c4; WORD $0x7a04 // vpmovsxwq ymm0, qword [rdx + 2*rdi]
LONG $0x247de2c4; WORD $0x7a4c; BYTE $0x08 // vpmovsxwq ymm1, qword [rdx + 2*rdi + 8]
LONG $0x247de2c4; WORD $0x7a54; BYTE $0x10 // vpmovsxwq ymm2, qword [rdx + 2*rdi + 16]
LONG $0x247de2c4; WORD $0x7a5c; BYTE $0x18 // vpmovsxwq ymm3, qword [rdx + 2*rdi + 24]
LONG $0x047ffec5; BYTE $0xf9 // vmovdqu yword [rcx + 8*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20f9 // vmovdqu yword [rcx + 8*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40f9 // vmovdqu yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60f9 // vmovdqu yword [rcx + 8*rdi + 96], ymm3
LONG $0x247de2c4; WORD $0x7a44; BYTE $0x20 // vpmovsxwq ymm0, qword [rdx + 2*rdi + 32]
LONG $0x247de2c4; WORD $0x7a4c; BYTE $0x28 // vpmovsxwq ymm1, qword [rdx + 2*rdi + 40]
LONG $0x247de2c4; WORD $0x7a54; BYTE $0x30 // vpmovsxwq ymm2, qword [rdx + 2*rdi + 48]
LONG $0x247de2c4; WORD $0x7a5c; BYTE $0x38 // vpmovsxwq ymm3, qword [rdx + 2*rdi + 56]
QUAD $0x000080f9847ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 128], ymm0
QUAD $0x0000a0f98c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 160], ymm1
QUAD $0x0000c0f9947ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 192], ymm2
QUAD $0x0000e0f99c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 224], ymm3
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_551
JMP LBB0_941
LBB0_555:
WORD $0x8945; BYTE $0xce // mov r14d, r9d
LONG $0xfce68341 // and r14d, -4
LONG $0xfc468d49 // lea rax, [r14 - 4]
WORD $0x8949; BYTE $0xc2 // mov r10, rax
LONG $0x02eac149 // shr r10, 2
LONG $0x01c28349 // add r10, 1
WORD $0x8945; BYTE $0xd0 // mov r8d, r10d
LONG $0x03e08341 // and r8d, 3
LONG $0x0cf88348 // cmp rax, 12
JAE LBB0_810
WORD $0xc031 // xor eax, eax
JMP LBB0_812
LBB0_560:
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_945
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_562:
LONG $0x257de2c4; WORD $0xba04 // vpmovsxdq ymm0, oword [rdx + 4*rdi]
LONG $0x257de2c4; WORD $0xba4c; BYTE $0x10 // vpmovsxdq ymm1, oword [rdx + 4*rdi + 16]
LONG $0x257de2c4; WORD $0xba54; BYTE $0x20 // vpmovsxdq ymm2, oword [rdx + 4*rdi + 32]
LONG $0x257de2c4; WORD $0xba5c; BYTE $0x30 // vpmovsxdq ymm3, oword [rdx + 4*rdi + 48]
LONG $0x047ffec5; BYTE $0xf9 // vmovdqu yword [rcx + 8*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20f9 // vmovdqu yword [rcx + 8*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40f9 // vmovdqu yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60f9 // vmovdqu yword [rcx + 8*rdi + 96], ymm3
LONG $0x257de2c4; WORD $0xba44; BYTE $0x40 // vpmovsxdq ymm0, oword [rdx + 4*rdi + 64]
LONG $0x257de2c4; WORD $0xba4c; BYTE $0x50 // vpmovsxdq ymm1, oword [rdx + 4*rdi + 80]
LONG $0x257de2c4; WORD $0xba54; BYTE $0x60 // vpmovsxdq ymm2, oword [rdx + 4*rdi + 96]
LONG $0x257de2c4; WORD $0xba5c; BYTE $0x70 // vpmovsxdq ymm3, oword [rdx + 4*rdi + 112]
QUAD $0x000080f9847ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 128], ymm0
QUAD $0x0000a0f98c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 160], ymm1
QUAD $0x0000c0f9947ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 192], ymm2
QUAD $0x0000e0f99c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 224], ymm3
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_562
JMP LBB0_946
LBB0_563:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xe0 // and esi, -32
LONG $0xe0468d48 // lea rax, [rsi - 32]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x05e8c149 // shr r8, 5
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1065
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
QUAD $0x00000080856ffdc5 // vmovdqa ymm0, yword 128[rbp] /* [rip + .LCPI0_11] */
LBB0_565:
LONG $0x0c6ffec5; BYTE $0xba // vmovdqu ymm1, yword [rdx + 4*rdi]
LONG $0x546ffec5; WORD $0x20ba // vmovdqu ymm2, yword [rdx + 4*rdi + 32]
LONG $0x5c6ffec5; WORD $0x40ba // vmovdqu ymm3, yword [rdx + 4*rdi + 64]
LONG $0x646ffec5; WORD $0x60ba // vmovdqu ymm4, yword [rdx + 4*rdi + 96]
LONG $0x0075e2c4; BYTE $0xc8 // vpshufb ymm1, ymm1, ymm0
LONG $0x00fde3c4; WORD $0xe8c9 // vpermq ymm1, ymm1, 232
LONG $0x006de2c4; BYTE $0xd0 // vpshufb ymm2, ymm2, ymm0
LONG $0x00fde3c4; WORD $0xe8d2 // vpermq ymm2, ymm2, 232
LONG $0x0065e2c4; BYTE $0xd8 // vpshufb ymm3, ymm3, ymm0
LONG $0x00fde3c4; WORD $0xe8db // vpermq ymm3, ymm3, 232
LONG $0x005de2c4; BYTE $0xe0 // vpshufb ymm4, ymm4, ymm0
LONG $0x00fde3c4; WORD $0xe8e4 // vpermq ymm4, ymm4, 232
LONG $0x0c7ffac5; BYTE $0x79 // vmovdqu oword [rcx + 2*rdi], xmm1
LONG $0x547ffac5; WORD $0x1079 // vmovdqu oword [rcx + 2*rdi + 16], xmm2
LONG $0x5c7ffac5; WORD $0x2079 // vmovdqu oword [rcx + 2*rdi + 32], xmm3
LONG $0x647ffac5; WORD $0x3079 // vmovdqu oword [rcx + 2*rdi + 48], xmm4
QUAD $0x000080ba8c6ffec5; BYTE $0x00 // vmovdqu ymm1, yword [rdx + 4*rdi + 128]
QUAD $0x0000a0ba946ffec5; BYTE $0x00 // vmovdqu ymm2, yword [rdx + 4*rdi + 160]
QUAD $0x0000c0ba9c6ffec5; BYTE $0x00 // vmovdqu ymm3, yword [rdx + 4*rdi + 192]
QUAD $0x0000e0baa46ffec5; BYTE $0x00 // vmovdqu ymm4, yword [rdx + 4*rdi + 224]
LONG $0x0075e2c4; BYTE $0xc8 // vpshufb ymm1, ymm1, ymm0
LONG $0x00fde3c4; WORD $0xe8c9 // vpermq ymm1, ymm1, 232
LONG $0x006de2c4; BYTE $0xd0 // vpshufb ymm2, ymm2, ymm0
LONG $0x00fde3c4; WORD $0xe8d2 // vpermq ymm2, ymm2, 232
LONG $0x0065e2c4; BYTE $0xd8 // vpshufb ymm3, ymm3, ymm0
LONG $0x00fde3c4; WORD $0xe8db // vpermq ymm3, ymm3, 232
LONG $0x005de2c4; BYTE $0xe0 // vpshufb ymm4, ymm4, ymm0
LONG $0x00fde3c4; WORD $0xe8e4 // vpermq ymm4, ymm4, 232
LONG $0x4c7ffac5; WORD $0x4079 // vmovdqu oword [rcx + 2*rdi + 64], xmm1
LONG $0x547ffac5; WORD $0x5079 // vmovdqu oword [rcx + 2*rdi + 80], xmm2
LONG $0x5c7ffac5; WORD $0x6079 // vmovdqu oword [rcx + 2*rdi + 96], xmm3
LONG $0x647ffac5; WORD $0x7079 // vmovdqu oword [rcx + 2*rdi + 112], xmm4
LONG $0x40c78348 // add rdi, 64
LONG $0x02c08348 // add rax, 2
JNE LBB0_565
JMP LBB0_1066
LBB0_566:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xe0 // and esi, -32
LONG $0xe0468d48 // lea rax, [rsi - 32]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x05e8c149 // shr r8, 5
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1070
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
QUAD $0x00000080856ffdc5 // vmovdqa ymm0, yword 128[rbp] /* [rip + .LCPI0_11] */
LBB0_568:
LONG $0x0c6ffec5; BYTE $0xba // vmovdqu ymm1, yword [rdx + 4*rdi]
LONG $0x546ffec5; WORD $0x20ba // vmovdqu ymm2, yword [rdx + 4*rdi + 32]
LONG $0x5c6ffec5; WORD $0x40ba // vmovdqu ymm3, yword [rdx + 4*rdi + 64]
LONG $0x646ffec5; WORD $0x60ba // vmovdqu ymm4, yword [rdx + 4*rdi + 96]
LONG $0x0075e2c4; BYTE $0xc8 // vpshufb ymm1, ymm1, ymm0
LONG $0x00fde3c4; WORD $0xe8c9 // vpermq ymm1, ymm1, 232
LONG $0x006de2c4; BYTE $0xd0 // vpshufb ymm2, ymm2, ymm0
LONG $0x00fde3c4; WORD $0xe8d2 // vpermq ymm2, ymm2, 232
LONG $0x0065e2c4; BYTE $0xd8 // vpshufb ymm3, ymm3, ymm0
LONG $0x00fde3c4; WORD $0xe8db // vpermq ymm3, ymm3, 232
LONG $0x005de2c4; BYTE $0xe0 // vpshufb ymm4, ymm4, ymm0
LONG $0x00fde3c4; WORD $0xe8e4 // vpermq ymm4, ymm4, 232
LONG $0x0c7ffac5; BYTE $0x79 // vmovdqu oword [rcx + 2*rdi], xmm1
LONG $0x547ffac5; WORD $0x1079 // vmovdqu oword [rcx + 2*rdi + 16], xmm2
LONG $0x5c7ffac5; WORD $0x2079 // vmovdqu oword [rcx + 2*rdi + 32], xmm3
LONG $0x647ffac5; WORD $0x3079 // vmovdqu oword [rcx + 2*rdi + 48], xmm4
QUAD $0x000080ba8c6ffec5; BYTE $0x00 // vmovdqu ymm1, yword [rdx + 4*rdi + 128]
QUAD $0x0000a0ba946ffec5; BYTE $0x00 // vmovdqu ymm2, yword [rdx + 4*rdi + 160]
QUAD $0x0000c0ba9c6ffec5; BYTE $0x00 // vmovdqu ymm3, yword [rdx + 4*rdi + 192]
QUAD $0x0000e0baa46ffec5; BYTE $0x00 // vmovdqu ymm4, yword [rdx + 4*rdi + 224]
LONG $0x0075e2c4; BYTE $0xc8 // vpshufb ymm1, ymm1, ymm0
LONG $0x00fde3c4; WORD $0xe8c9 // vpermq ymm1, ymm1, 232
LONG $0x006de2c4; BYTE $0xd0 // vpshufb ymm2, ymm2, ymm0
LONG $0x00fde3c4; WORD $0xe8d2 // vpermq ymm2, ymm2, 232
LONG $0x0065e2c4; BYTE $0xd8 // vpshufb ymm3, ymm3, ymm0
LONG $0x00fde3c4; WORD $0xe8db // vpermq ymm3, ymm3, 232
LONG $0x005de2c4; BYTE $0xe0 // vpshufb ymm4, ymm4, ymm0
LONG $0x00fde3c4; WORD $0xe8e4 // vpermq ymm4, ymm4, 232
LONG $0x4c7ffac5; WORD $0x4079 // vmovdqu oword [rcx + 2*rdi + 64], xmm1
LONG $0x547ffac5; WORD $0x5079 // vmovdqu oword [rcx + 2*rdi + 80], xmm2
LONG $0x5c7ffac5; WORD $0x6079 // vmovdqu oword [rcx + 2*rdi + 96], xmm3
LONG $0x647ffac5; WORD $0x7079 // vmovdqu oword [rcx + 2*rdi + 112], xmm4
LONG $0x40c78348 // add rdi, 64
LONG $0x02c08348 // add rax, 2
JNE LBB0_568
JMP LBB0_1071
LBB0_569:
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_1075
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_571:
LONG $0x04e6fdc5; BYTE $0xfa // vcvttpd2dq xmm0, yword [rdx + 8*rdi]
LONG $0x4ce6fdc5; WORD $0x20fa // vcvttpd2dq xmm1, yword [rdx + 8*rdi + 32]
LONG $0x54e6fdc5; WORD $0x40fa // vcvttpd2dq xmm2, yword [rdx + 8*rdi + 64]
LONG $0x5ce6fdc5; WORD $0x60fa // vcvttpd2dq xmm3, yword [rdx + 8*rdi + 96]
LONG $0x186de3c4; WORD $0x01d3 // vinsertf128 ymm2, ymm2, xmm3, 1
LONG $0x2b6de2c4; BYTE $0xd0 // vpackusdw ymm2, ymm2, ymm0
LONG $0x187de3c4; WORD $0x01c1 // vinsertf128 ymm0, ymm0, xmm1, 1
LONG $0x2b7de2c4; BYTE $0xc0 // vpackusdw ymm0, ymm0, ymm0
LONG $0xc26cfdc5 // vpunpcklqdq ymm0, ymm0, ymm2
LONG $0x00fde3c4; WORD $0xd8c0 // vpermq ymm0, ymm0, 216
LONG $0x047ffec5; BYTE $0x79 // vmovdqu yword [rcx + 2*rdi], ymm0
QUAD $0x000080fa84e6fdc5; BYTE $0x00 // vcvttpd2dq xmm0, yword [rdx + 8*rdi + 128]
QUAD $0x0000a0fa8ce6fdc5; BYTE $0x00 // vcvttpd2dq xmm1, yword [rdx + 8*rdi + 160]
QUAD $0x0000c0fa94e6fdc5; BYTE $0x00 // vcvttpd2dq xmm2, yword [rdx + 8*rdi + 192]
QUAD $0x0000e0fa9ce6fdc5; BYTE $0x00 // vcvttpd2dq xmm3, yword [rdx + 8*rdi + 224]
LONG $0x186de3c4; WORD $0x01d3 // vinsertf128 ymm2, ymm2, xmm3, 1
LONG $0x2b6de2c4; BYTE $0xd0 // vpackusdw ymm2, ymm2, ymm0
LONG $0x187de3c4; WORD $0x01c1 // vinsertf128 ymm0, ymm0, xmm1, 1
LONG $0x2b7de2c4; BYTE $0xc0 // vpackusdw ymm0, ymm0, ymm0
LONG $0xc26cfdc5 // vpunpcklqdq ymm0, ymm0, ymm2
LONG $0x00fde3c4; WORD $0xd8c0 // vpermq ymm0, ymm0, 216
LONG $0x447ffec5; WORD $0x2079 // vmovdqu yword [rcx + 2*rdi + 32], ymm0
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_571
JMP LBB0_1076
LBB0_572:
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_1080
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_574:
LONG $0x04e6fdc5; BYTE $0xfa // vcvttpd2dq xmm0, yword [rdx + 8*rdi]
LONG $0x4ce6fdc5; WORD $0x20fa // vcvttpd2dq xmm1, yword [rdx + 8*rdi + 32]
LONG $0x54e6fdc5; WORD $0x40fa // vcvttpd2dq xmm2, yword [rdx + 8*rdi + 64]
LONG $0x5ce6fdc5; WORD $0x60fa // vcvttpd2dq xmm3, yword [rdx + 8*rdi + 96]
LONG $0x186de3c4; WORD $0x01d3 // vinsertf128 ymm2, ymm2, xmm3, 1
LONG $0xd06bedc5 // vpackssdw ymm2, ymm2, ymm0
LONG $0x187de3c4; WORD $0x01c1 // vinsertf128 ymm0, ymm0, xmm1, 1
LONG $0xc06bfdc5 // vpackssdw ymm0, ymm0, ymm0
LONG $0xc26cfdc5 // vpunpcklqdq ymm0, ymm0, ymm2
LONG $0x00fde3c4; WORD $0xd8c0 // vpermq ymm0, ymm0, 216
LONG $0x047ffec5; BYTE $0x79 // vmovdqu yword [rcx + 2*rdi], ymm0
QUAD $0x000080fa84e6fdc5; BYTE $0x00 // vcvttpd2dq xmm0, yword [rdx + 8*rdi + 128]
QUAD $0x0000a0fa8ce6fdc5; BYTE $0x00 // vcvttpd2dq xmm1, yword [rdx + 8*rdi + 160]
QUAD $0x0000c0fa94e6fdc5; BYTE $0x00 // vcvttpd2dq xmm2, yword [rdx + 8*rdi + 192]
QUAD $0x0000e0fa9ce6fdc5; BYTE $0x00 // vcvttpd2dq xmm3, yword [rdx + 8*rdi + 224]
LONG $0x186de3c4; WORD $0x01d3 // vinsertf128 ymm2, ymm2, xmm3, 1
LONG $0xd06bedc5 // vpackssdw ymm2, ymm2, ymm0
LONG $0x187de3c4; WORD $0x01c1 // vinsertf128 ymm0, ymm0, xmm1, 1
LONG $0xc06bfdc5 // vpackssdw ymm0, ymm0, ymm0
LONG $0xc26cfdc5 // vpunpcklqdq ymm0, ymm0, ymm2
LONG $0x00fde3c4; WORD $0xd8c0 // vpermq ymm0, ymm0, 216
LONG $0x447ffec5; WORD $0x2079 // vmovdqu yword [rcx + 2*rdi + 32], ymm0
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_574
JMP LBB0_1081
LBB0_581:
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_950
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LONG $0xc0eff9c5 // vpxor xmm0, xmm0, xmm0
LBB0_583:
LONG $0x0e7963c4; WORD $0xfa04; BYTE $0x11 // vpblendw xmm8, xmm0, oword [rdx + 8*rdi], 17
QUAD $0x1110fa540e79e3c4 // vpblendw xmm2, xmm0, oword [rdx + 8*rdi + 16], 17
QUAD $0x1120fa5c0e79e3c4 // vpblendw xmm3, xmm0, oword [rdx + 8*rdi + 32], 17
QUAD $0x1130fa640e79e3c4 // vpblendw xmm4, xmm0, oword [rdx + 8*rdi + 48], 17
QUAD $0x1140fa6c0e79e3c4 // vpblendw xmm5, xmm0, oword [rdx + 8*rdi + 64], 17
QUAD $0x1150fa740e79e3c4 // vpblendw xmm6, xmm0, oword [rdx + 8*rdi + 80], 17
QUAD $0x1160fa7c0e79e3c4 // vpblendw xmm7, xmm0, oword [rdx + 8*rdi + 96], 17
QUAD $0x1170fa4c0e79e3c4 // vpblendw xmm1, xmm0, oword [rdx + 8*rdi + 112], 17
LONG $0x384de3c4; WORD $0x01c9 // vinserti128 ymm1, ymm6, xmm1, 1
LONG $0x3855e3c4; WORD $0x01ef // vinserti128 ymm5, ymm5, xmm7, 1
LONG $0x2b55e2c4; BYTE $0xc9 // vpackusdw ymm1, ymm5, ymm1
LONG $0x2b75e2c4; BYTE $0xc8 // vpackusdw ymm1, ymm1, ymm0
LONG $0x386de3c4; WORD $0x01d4 // vinserti128 ymm2, ymm2, xmm4, 1
LONG $0x383de3c4; WORD $0x01db // vinserti128 ymm3, ymm8, xmm3, 1
LONG $0x2b65e2c4; BYTE $0xd2 // vpackusdw ymm2, ymm3, ymm2
LONG $0x2b6de2c4; BYTE $0xd0 // vpackusdw ymm2, ymm2, ymm0
LONG $0xc96cedc5 // vpunpcklqdq ymm1, ymm2, ymm1
LONG $0x00fde3c4; WORD $0xd8c9 // vpermq ymm1, ymm1, 216
LONG $0x0c7ffec5; BYTE $0x79 // vmovdqu yword [rcx + 2*rdi], ymm1
QUAD $0x0080fa840e7963c4; WORD $0x0000; BYTE $0x11 // vpblendw xmm8, xmm0, oword [rdx + 8*rdi + 128], 17
QUAD $0x0090fa940e79e3c4; WORD $0x0000; BYTE $0x11 // vpblendw xmm2, xmm0, oword [rdx + 8*rdi + 144], 17
QUAD $0x00a0fa9c0e79e3c4; WORD $0x0000; BYTE $0x11 // vpblendw xmm3, xmm0, oword [rdx + 8*rdi + 160], 17
QUAD $0x00b0faa40e79e3c4; WORD $0x0000; BYTE $0x11 // vpblendw xmm4, xmm0, oword [rdx + 8*rdi + 176], 17
QUAD $0x00c0faac0e79e3c4; WORD $0x0000; BYTE $0x11 // vpblendw xmm5, xmm0, oword [rdx + 8*rdi + 192], 17
QUAD $0x00d0fab40e79e3c4; WORD $0x0000; BYTE $0x11 // vpblendw xmm6, xmm0, oword [rdx + 8*rdi + 208], 17
QUAD $0x00e0fabc0e79e3c4; WORD $0x0000; BYTE $0x11 // vpblendw xmm7, xmm0, oword [rdx + 8*rdi + 224], 17
QUAD $0x00f0fa8c0e79e3c4; WORD $0x0000; BYTE $0x11 // vpblendw xmm1, xmm0, oword [rdx + 8*rdi + 240], 17
LONG $0x384de3c4; WORD $0x01c9 // vinserti128 ymm1, ymm6, xmm1, 1
LONG $0x3855e3c4; WORD $0x01ef // vinserti128 ymm5, ymm5, xmm7, 1
LONG $0x2b55e2c4; BYTE $0xc9 // vpackusdw ymm1, ymm5, ymm1
LONG $0x2b75e2c4; BYTE $0xc8 // vpackusdw ymm1, ymm1, ymm0
LONG $0x386de3c4; WORD $0x01d4 // vinserti128 ymm2, ymm2, xmm4, 1
LONG $0x383de3c4; WORD $0x01db // vinserti128 ymm3, ymm8, xmm3, 1
LONG $0x2b65e2c4; BYTE $0xd2 // vpackusdw ymm2, ymm3, ymm2
LONG $0x2b6de2c4; BYTE $0xd0 // vpackusdw ymm2, ymm2, ymm0
LONG $0xc96cedc5 // vpunpcklqdq ymm1, ymm2, ymm1
LONG $0x00fde3c4; WORD $0xd8c9 // vpermq ymm1, ymm1, 216
LONG $0x4c7ffec5; WORD $0x2079 // vmovdqu yword [rcx + 2*rdi + 32], ymm1
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_583
JMP LBB0_951
LBB0_584:
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_955
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LONG $0xc0eff9c5 // vpxor xmm0, xmm0, xmm0
LBB0_586:
LONG $0x0e7963c4; WORD $0xfa04; BYTE $0x11 // vpblendw xmm8, xmm0, oword [rdx + 8*rdi], 17
QUAD $0x1110fa540e79e3c4 // vpblendw xmm2, xmm0, oword [rdx + 8*rdi + 16], 17
QUAD $0x1120fa5c0e79e3c4 // vpblendw xmm3, xmm0, oword [rdx + 8*rdi + 32], 17
QUAD $0x1130fa640e79e3c4 // vpblendw xmm4, xmm0, oword [rdx + 8*rdi + 48], 17
QUAD $0x1140fa6c0e79e3c4 // vpblendw xmm5, xmm0, oword [rdx + 8*rdi + 64], 17
QUAD $0x1150fa740e79e3c4 // vpblendw xmm6, xmm0, oword [rdx + 8*rdi + 80], 17
QUAD $0x1160fa7c0e79e3c4 // vpblendw xmm7, xmm0, oword [rdx + 8*rdi + 96], 17
QUAD $0x1170fa4c0e79e3c4 // vpblendw xmm1, xmm0, oword [rdx + 8*rdi + 112], 17
LONG $0x384de3c4; WORD $0x01c9 // vinserti128 ymm1, ymm6, xmm1, 1
LONG $0x3855e3c4; WORD $0x01ef // vinserti128 ymm5, ymm5, xmm7, 1
LONG $0x2b55e2c4; BYTE $0xc9 // vpackusdw ymm1, ymm5, ymm1
LONG $0x2b75e2c4; BYTE $0xc8 // vpackusdw ymm1, ymm1, ymm0
LONG $0x386de3c4; WORD $0x01d4 // vinserti128 ymm2, ymm2, xmm4, 1
LONG $0x383de3c4; WORD $0x01db // vinserti128 ymm3, ymm8, xmm3, 1
LONG $0x2b65e2c4; BYTE $0xd2 // vpackusdw ymm2, ymm3, ymm2
LONG $0x2b6de2c4; BYTE $0xd0 // vpackusdw ymm2, ymm2, ymm0
LONG $0xc96cedc5 // vpunpcklqdq ymm1, ymm2, ymm1
LONG $0x00fde3c4; WORD $0xd8c9 // vpermq ymm1, ymm1, 216
LONG $0x0c7ffec5; BYTE $0x79 // vmovdqu yword [rcx + 2*rdi], ymm1
QUAD $0x0080fa840e7963c4; WORD $0x0000; BYTE $0x11 // vpblendw xmm8, xmm0, oword [rdx + 8*rdi + 128], 17
QUAD $0x0090fa940e79e3c4; WORD $0x0000; BYTE $0x11 // vpblendw xmm2, xmm0, oword [rdx + 8*rdi + 144], 17
QUAD $0x00a0fa9c0e79e3c4; WORD $0x0000; BYTE $0x11 // vpblendw xmm3, xmm0, oword [rdx + 8*rdi + 160], 17
QUAD $0x00b0faa40e79e3c4; WORD $0x0000; BYTE $0x11 // vpblendw xmm4, xmm0, oword [rdx + 8*rdi + 176], 17
QUAD $0x00c0faac0e79e3c4; WORD $0x0000; BYTE $0x11 // vpblendw xmm5, xmm0, oword [rdx + 8*rdi + 192], 17
QUAD $0x00d0fab40e79e3c4; WORD $0x0000; BYTE $0x11 // vpblendw xmm6, xmm0, oword [rdx + 8*rdi + 208], 17
QUAD $0x00e0fabc0e79e3c4; WORD $0x0000; BYTE $0x11 // vpblendw xmm7, xmm0, oword [rdx + 8*rdi + 224], 17
QUAD $0x00f0fa8c0e79e3c4; WORD $0x0000; BYTE $0x11 // vpblendw xmm1, xmm0, oword [rdx + 8*rdi + 240], 17
LONG $0x384de3c4; WORD $0x01c9 // vinserti128 ymm1, ymm6, xmm1, 1
LONG $0x3855e3c4; WORD $0x01ef // vinserti128 ymm5, ymm5, xmm7, 1
LONG $0x2b55e2c4; BYTE $0xc9 // vpackusdw ymm1, ymm5, ymm1
LONG $0x2b75e2c4; BYTE $0xc8 // vpackusdw ymm1, ymm1, ymm0
LONG $0x386de3c4; WORD $0x01d4 // vinserti128 ymm2, ymm2, xmm4, 1
LONG $0x383de3c4; WORD $0x01db // vinserti128 ymm3, ymm8, xmm3, 1
LONG $0x2b65e2c4; BYTE $0xd2 // vpackusdw ymm2, ymm3, ymm2
LONG $0x2b6de2c4; BYTE $0xd0 // vpackusdw ymm2, ymm2, ymm0
LONG $0xc96cedc5 // vpunpcklqdq ymm1, ymm2, ymm1
LONG $0x00fde3c4; WORD $0xd8c9 // vpermq ymm1, ymm1, 216
LONG $0x4c7ffec5; WORD $0x2079 // vmovdqu yword [rcx + 2*rdi + 32], ymm1
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_586
JMP LBB0_956
LBB0_599:
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_960
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LONG $0xc0eff9c5 // vpxor xmm0, xmm0, xmm0
LBB0_601:
LONG $0x0e7963c4; WORD $0xfa04; BYTE $0x11 // vpblendw xmm8, xmm0, oword [rdx + 8*rdi], 17
QUAD $0x1110fa540e79e3c4 // vpblendw xmm2, xmm0, oword [rdx + 8*rdi + 16], 17
QUAD $0x1120fa5c0e79e3c4 // vpblendw xmm3, xmm0, oword [rdx + 8*rdi + 32], 17
QUAD $0x1130fa640e79e3c4 // vpblendw xmm4, xmm0, oword [rdx + 8*rdi + 48], 17
QUAD $0x1140fa6c0e79e3c4 // vpblendw xmm5, xmm0, oword [rdx + 8*rdi + 64], 17
QUAD $0x1150fa740e79e3c4 // vpblendw xmm6, xmm0, oword [rdx + 8*rdi + 80], 17
QUAD $0x1160fa7c0e79e3c4 // vpblendw xmm7, xmm0, oword [rdx + 8*rdi + 96], 17
QUAD $0x1170fa4c0e79e3c4 // vpblendw xmm1, xmm0, oword [rdx + 8*rdi + 112], 17
LONG $0x384de3c4; WORD $0x01c9 // vinserti128 ymm1, ymm6, xmm1, 1
LONG $0x3855e3c4; WORD $0x01ef // vinserti128 ymm5, ymm5, xmm7, 1
LONG $0x2b55e2c4; BYTE $0xc9 // vpackusdw ymm1, ymm5, ymm1
LONG $0x2b75e2c4; BYTE $0xc8 // vpackusdw ymm1, ymm1, ymm0
LONG $0x386de3c4; WORD $0x01d4 // vinserti128 ymm2, ymm2, xmm4, 1
LONG $0x383de3c4; WORD $0x01db // vinserti128 ymm3, ymm8, xmm3, 1
LONG $0x2b65e2c4; BYTE $0xd2 // vpackusdw ymm2, ymm3, ymm2
LONG $0x2b6de2c4; BYTE $0xd0 // vpackusdw ymm2, ymm2, ymm0
LONG $0xc96cedc5 // vpunpcklqdq ymm1, ymm2, ymm1
LONG $0x00fde3c4; WORD $0xd8c9 // vpermq ymm1, ymm1, 216
LONG $0x0c7ffec5; BYTE $0x79 // vmovdqu yword [rcx + 2*rdi], ymm1
QUAD $0x0080fa840e7963c4; WORD $0x0000; BYTE $0x11 // vpblendw xmm8, xmm0, oword [rdx + 8*rdi + 128], 17
QUAD $0x0090fa940e79e3c4; WORD $0x0000; BYTE $0x11 // vpblendw xmm2, xmm0, oword [rdx + 8*rdi + 144], 17
QUAD $0x00a0fa9c0e79e3c4; WORD $0x0000; BYTE $0x11 // vpblendw xmm3, xmm0, oword [rdx + 8*rdi + 160], 17
QUAD $0x00b0faa40e79e3c4; WORD $0x0000; BYTE $0x11 // vpblendw xmm4, xmm0, oword [rdx + 8*rdi + 176], 17
QUAD $0x00c0faac0e79e3c4; WORD $0x0000; BYTE $0x11 // vpblendw xmm5, xmm0, oword [rdx + 8*rdi + 192], 17
QUAD $0x00d0fab40e79e3c4; WORD $0x0000; BYTE $0x11 // vpblendw xmm6, xmm0, oword [rdx + 8*rdi + 208], 17
QUAD $0x00e0fabc0e79e3c4; WORD $0x0000; BYTE $0x11 // vpblendw xmm7, xmm0, oword [rdx + 8*rdi + 224], 17
QUAD $0x00f0fa8c0e79e3c4; WORD $0x0000; BYTE $0x11 // vpblendw xmm1, xmm0, oword [rdx + 8*rdi + 240], 17
LONG $0x384de3c4; WORD $0x01c9 // vinserti128 ymm1, ymm6, xmm1, 1
LONG $0x3855e3c4; WORD $0x01ef // vinserti128 ymm5, ymm5, xmm7, 1
LONG $0x2b55e2c4; BYTE $0xc9 // vpackusdw ymm1, ymm5, ymm1
LONG $0x2b75e2c4; BYTE $0xc8 // vpackusdw ymm1, ymm1, ymm0
LONG $0x386de3c4; WORD $0x01d4 // vinserti128 ymm2, ymm2, xmm4, 1
LONG $0x383de3c4; WORD $0x01db // vinserti128 ymm3, ymm8, xmm3, 1
LONG $0x2b65e2c4; BYTE $0xd2 // vpackusdw ymm2, ymm3, ymm2
LONG $0x2b6de2c4; BYTE $0xd0 // vpackusdw ymm2, ymm2, ymm0
LONG $0xc96cedc5 // vpunpcklqdq ymm1, ymm2, ymm1
LONG $0x00fde3c4; WORD $0xd8c9 // vpermq ymm1, ymm1, 216
LONG $0x4c7ffec5; WORD $0x2079 // vmovdqu yword [rcx + 2*rdi + 32], ymm1
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_601
JMP LBB0_961
LBB0_602:
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_1085
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LONG $0xc0eff9c5 // vpxor xmm0, xmm0, xmm0
LBB0_604:
LONG $0x0e7963c4; WORD $0xfa04; BYTE $0x11 // vpblendw xmm8, xmm0, oword [rdx + 8*rdi], 17
QUAD $0x1110fa540e79e3c4 // vpblendw xmm2, xmm0, oword [rdx + 8*rdi + 16], 17
QUAD $0x1120fa5c0e79e3c4 // vpblendw xmm3, xmm0, oword [rdx + 8*rdi + 32], 17
QUAD $0x1130fa640e79e3c4 // vpblendw xmm4, xmm0, oword [rdx + 8*rdi + 48], 17
QUAD $0x1140fa6c0e79e3c4 // vpblendw xmm5, xmm0, oword [rdx + 8*rdi + 64], 17
QUAD $0x1150fa740e79e3c4 // vpblendw xmm6, xmm0, oword [rdx + 8*rdi + 80], 17
QUAD $0x1160fa7c0e79e3c4 // vpblendw xmm7, xmm0, oword [rdx + 8*rdi + 96], 17
QUAD $0x1170fa4c0e79e3c4 // vpblendw xmm1, xmm0, oword [rdx + 8*rdi + 112], 17
LONG $0x384de3c4; WORD $0x01c9 // vinserti128 ymm1, ymm6, xmm1, 1
LONG $0x3855e3c4; WORD $0x01ef // vinserti128 ymm5, ymm5, xmm7, 1
LONG $0x2b55e2c4; BYTE $0xc9 // vpackusdw ymm1, ymm5, ymm1
LONG $0x2b75e2c4; BYTE $0xc8 // vpackusdw ymm1, ymm1, ymm0
LONG $0x386de3c4; WORD $0x01d4 // vinserti128 ymm2, ymm2, xmm4, 1
LONG $0x383de3c4; WORD $0x01db // vinserti128 ymm3, ymm8, xmm3, 1
LONG $0x2b65e2c4; BYTE $0xd2 // vpackusdw ymm2, ymm3, ymm2
LONG $0x2b6de2c4; BYTE $0xd0 // vpackusdw ymm2, ymm2, ymm0
LONG $0xc96cedc5 // vpunpcklqdq ymm1, ymm2, ymm1
LONG $0x00fde3c4; WORD $0xd8c9 // vpermq ymm1, ymm1, 216
LONG $0x0c7ffec5; BYTE $0x79 // vmovdqu yword [rcx + 2*rdi], ymm1
QUAD $0x0080fa840e7963c4; WORD $0x0000; BYTE $0x11 // vpblendw xmm8, xmm0, oword [rdx + 8*rdi + 128], 17
QUAD $0x0090fa940e79e3c4; WORD $0x0000; BYTE $0x11 // vpblendw xmm2, xmm0, oword [rdx + 8*rdi + 144], 17
QUAD $0x00a0fa9c0e79e3c4; WORD $0x0000; BYTE $0x11 // vpblendw xmm3, xmm0, oword [rdx + 8*rdi + 160], 17
QUAD $0x00b0faa40e79e3c4; WORD $0x0000; BYTE $0x11 // vpblendw xmm4, xmm0, oword [rdx + 8*rdi + 176], 17
QUAD $0x00c0faac0e79e3c4; WORD $0x0000; BYTE $0x11 // vpblendw xmm5, xmm0, oword [rdx + 8*rdi + 192], 17
QUAD $0x00d0fab40e79e3c4; WORD $0x0000; BYTE $0x11 // vpblendw xmm6, xmm0, oword [rdx + 8*rdi + 208], 17
QUAD $0x00e0fabc0e79e3c4; WORD $0x0000; BYTE $0x11 // vpblendw xmm7, xmm0, oword [rdx + 8*rdi + 224], 17
QUAD $0x00f0fa8c0e79e3c4; WORD $0x0000; BYTE $0x11 // vpblendw xmm1, xmm0, oword [rdx + 8*rdi + 240], 17
LONG $0x384de3c4; WORD $0x01c9 // vinserti128 ymm1, ymm6, xmm1, 1
LONG $0x3855e3c4; WORD $0x01ef // vinserti128 ymm5, ymm5, xmm7, 1
LONG $0x2b55e2c4; BYTE $0xc9 // vpackusdw ymm1, ymm5, ymm1
LONG $0x2b75e2c4; BYTE $0xc8 // vpackusdw ymm1, ymm1, ymm0
LONG $0x386de3c4; WORD $0x01d4 // vinserti128 ymm2, ymm2, xmm4, 1
LONG $0x383de3c4; WORD $0x01db // vinserti128 ymm3, ymm8, xmm3, 1
LONG $0x2b65e2c4; BYTE $0xd2 // vpackusdw ymm2, ymm3, ymm2
LONG $0x2b6de2c4; BYTE $0xd0 // vpackusdw ymm2, ymm2, ymm0
LONG $0xc96cedc5 // vpunpcklqdq ymm1, ymm2, ymm1
LONG $0x00fde3c4; WORD $0xd8c9 // vpermq ymm1, ymm1, 216
LONG $0x4c7ffec5; WORD $0x2079 // vmovdqu yword [rcx + 2*rdi + 32], ymm1
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_604
JMP LBB0_1086
LBB0_605:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xe0 // and esi, -32
LONG $0xe0468d48 // lea rax, [rsi - 32]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x05e8c149 // shr r8, 5
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1090
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_607:
LONG $0x045bfec5; BYTE $0xba // vcvttps2dq ymm0, yword [rdx + 4*rdi]
LONG $0x397de3c4; WORD $0x01c1 // vextracti128 xmm1, ymm0, 1
LONG $0x2b79e2c4; BYTE $0xc1 // vpackusdw xmm0, xmm0, xmm1
LONG $0x4c5bfec5; WORD $0x20ba // vcvttps2dq ymm1, yword [rdx + 4*rdi + 32]
LONG $0x397de3c4; WORD $0x01ca // vextracti128 xmm2, ymm1, 1
LONG $0x2b71e2c4; BYTE $0xca // vpackusdw xmm1, xmm1, xmm2
LONG $0x545bfec5; WORD $0x40ba // vcvttps2dq ymm2, yword [rdx + 4*rdi + 64]
LONG $0x397de3c4; WORD $0x01d3 // vextracti128 xmm3, ymm2, 1
LONG $0x2b69e2c4; BYTE $0xd3 // vpackusdw xmm2, xmm2, xmm3
LONG $0x5c5bfec5; WORD $0x60ba // vcvttps2dq ymm3, yword [rdx + 4*rdi + 96]
LONG $0x397de3c4; WORD $0x01dc // vextracti128 xmm4, ymm3, 1
LONG $0x2b61e2c4; BYTE $0xdc // vpackusdw xmm3, xmm3, xmm4
LONG $0x047ffac5; BYTE $0x79 // vmovdqu oword [rcx + 2*rdi], xmm0
LONG $0x4c7ffac5; WORD $0x1079 // vmovdqu oword [rcx + 2*rdi + 16], xmm1
LONG $0x547ffac5; WORD $0x2079 // vmovdqu oword [rcx + 2*rdi + 32], xmm2
LONG $0x5c7ffac5; WORD $0x3079 // vmovdqu oword [rcx + 2*rdi + 48], xmm3
QUAD $0x000080ba845bfec5; BYTE $0x00 // vcvttps2dq ymm0, yword [rdx + 4*rdi + 128]
LONG $0x397de3c4; WORD $0x01c1 // vextracti128 xmm1, ymm0, 1
LONG $0x2b79e2c4; BYTE $0xc1 // vpackusdw xmm0, xmm0, xmm1
QUAD $0x0000a0ba8c5bfec5; BYTE $0x00 // vcvttps2dq ymm1, yword [rdx + 4*rdi + 160]
LONG $0x397de3c4; WORD $0x01ca // vextracti128 xmm2, ymm1, 1
LONG $0x2b71e2c4; BYTE $0xca // vpackusdw xmm1, xmm1, xmm2
QUAD $0x0000c0ba945bfec5; BYTE $0x00 // vcvttps2dq ymm2, yword [rdx + 4*rdi + 192]
LONG $0x397de3c4; WORD $0x01d3 // vextracti128 xmm3, ymm2, 1
LONG $0x2b69e2c4; BYTE $0xd3 // vpackusdw xmm2, xmm2, xmm3
QUAD $0x0000e0ba9c5bfec5; BYTE $0x00 // vcvttps2dq ymm3, yword [rdx + 4*rdi + 224]
LONG $0x397de3c4; WORD $0x01dc // vextracti128 xmm4, ymm3, 1
LONG $0x2b61e2c4; BYTE $0xdc // vpackusdw xmm3, xmm3, xmm4
LONG $0x447ffac5; WORD $0x4079 // vmovdqu oword [rcx + 2*rdi + 64], xmm0
LONG $0x4c7ffac5; WORD $0x5079 // vmovdqu oword [rcx + 2*rdi + 80], xmm1
LONG $0x547ffac5; WORD $0x6079 // vmovdqu oword [rcx + 2*rdi + 96], xmm2
LONG $0x5c7ffac5; WORD $0x7079 // vmovdqu oword [rcx + 2*rdi + 112], xmm3
LONG $0x40c78348 // add rdi, 64
LONG $0x02c08348 // add rax, 2
JNE LBB0_607
JMP LBB0_1091
LBB0_608:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xe0 // and esi, -32
LONG $0xe0468d48 // lea rax, [rsi - 32]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x05e8c149 // shr r8, 5
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1095
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_610:
LONG $0x045bfec5; BYTE $0xba // vcvttps2dq ymm0, yword [rdx + 4*rdi]
LONG $0x397de3c4; WORD $0x01c1 // vextracti128 xmm1, ymm0, 1
LONG $0xc16bf9c5 // vpackssdw xmm0, xmm0, xmm1
LONG $0x4c5bfec5; WORD $0x20ba // vcvttps2dq ymm1, yword [rdx + 4*rdi + 32]
LONG $0x397de3c4; WORD $0x01ca // vextracti128 xmm2, ymm1, 1
LONG $0xca6bf1c5 // vpackssdw xmm1, xmm1, xmm2
LONG $0x545bfec5; WORD $0x40ba // vcvttps2dq ymm2, yword [rdx + 4*rdi + 64]
LONG $0x397de3c4; WORD $0x01d3 // vextracti128 xmm3, ymm2, 1
LONG $0xd36be9c5 // vpackssdw xmm2, xmm2, xmm3
LONG $0x5c5bfec5; WORD $0x60ba // vcvttps2dq ymm3, yword [rdx + 4*rdi + 96]
LONG $0x397de3c4; WORD $0x01dc // vextracti128 xmm4, ymm3, 1
LONG $0xdc6be1c5 // vpackssdw xmm3, xmm3, xmm4
LONG $0x047ffac5; BYTE $0x79 // vmovdqu oword [rcx + 2*rdi], xmm0
LONG $0x4c7ffac5; WORD $0x1079 // vmovdqu oword [rcx + 2*rdi + 16], xmm1
LONG $0x547ffac5; WORD $0x2079 // vmovdqu oword [rcx + 2*rdi + 32], xmm2
LONG $0x5c7ffac5; WORD $0x3079 // vmovdqu oword [rcx + 2*rdi + 48], xmm3
QUAD $0x000080ba845bfec5; BYTE $0x00 // vcvttps2dq ymm0, yword [rdx + 4*rdi + 128]
LONG $0x397de3c4; WORD $0x01c1 // vextracti128 xmm1, ymm0, 1
LONG $0xc16bf9c5 // vpackssdw xmm0, xmm0, xmm1
QUAD $0x0000a0ba8c5bfec5; BYTE $0x00 // vcvttps2dq ymm1, yword [rdx + 4*rdi + 160]
LONG $0x397de3c4; WORD $0x01ca // vextracti128 xmm2, ymm1, 1
LONG $0xca6bf1c5 // vpackssdw xmm1, xmm1, xmm2
QUAD $0x0000c0ba945bfec5; BYTE $0x00 // vcvttps2dq ymm2, yword [rdx + 4*rdi + 192]
LONG $0x397de3c4; WORD $0x01d3 // vextracti128 xmm3, ymm2, 1
LONG $0xd36be9c5 // vpackssdw xmm2, xmm2, xmm3
QUAD $0x0000e0ba9c5bfec5; BYTE $0x00 // vcvttps2dq ymm3, yword [rdx + 4*rdi + 224]
LONG $0x397de3c4; WORD $0x01dc // vextracti128 xmm4, ymm3, 1
LONG $0xdc6be1c5 // vpackssdw xmm3, xmm3, xmm4
LONG $0x447ffac5; WORD $0x4079 // vmovdqu oword [rcx + 2*rdi + 64], xmm0
LONG $0x4c7ffac5; WORD $0x5079 // vmovdqu oword [rcx + 2*rdi + 80], xmm1
LONG $0x547ffac5; WORD $0x6079 // vmovdqu oword [rcx + 2*rdi + 96], xmm2
LONG $0x5c7ffac5; WORD $0x7079 // vmovdqu oword [rcx + 2*rdi + 112], xmm3
LONG $0x40c78348 // add rdi, 64
LONG $0x02c08348 // add rax, 2
JNE LBB0_610
JMP LBB0_1096
LBB0_617:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xe0 // and esi, -32
LONG $0xe0468d48 // lea rax, [rsi - 32]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x05e8c149 // shr r8, 5
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_965
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
QUAD $0x00000080856ffdc5 // vmovdqa ymm0, yword 128[rbp] /* [rip + .LCPI0_11] */
LBB0_619:
LONG $0x0c6ffec5; BYTE $0xba // vmovdqu ymm1, yword [rdx + 4*rdi]
LONG $0x546ffec5; WORD $0x20ba // vmovdqu ymm2, yword [rdx + 4*rdi + 32]
LONG $0x5c6ffec5; WORD $0x40ba // vmovdqu ymm3, yword [rdx + 4*rdi + 64]
LONG $0x646ffec5; WORD $0x60ba // vmovdqu ymm4, yword [rdx + 4*rdi + 96]
LONG $0x0075e2c4; BYTE $0xc8 // vpshufb ymm1, ymm1, ymm0
LONG $0x00fde3c4; WORD $0xe8c9 // vpermq ymm1, ymm1, 232
LONG $0x006de2c4; BYTE $0xd0 // vpshufb ymm2, ymm2, ymm0
LONG $0x00fde3c4; WORD $0xe8d2 // vpermq ymm2, ymm2, 232
LONG $0x0065e2c4; BYTE $0xd8 // vpshufb ymm3, ymm3, ymm0
LONG $0x00fde3c4; WORD $0xe8db // vpermq ymm3, ymm3, 232
LONG $0x005de2c4; BYTE $0xe0 // vpshufb ymm4, ymm4, ymm0
LONG $0x00fde3c4; WORD $0xe8e4 // vpermq ymm4, ymm4, 232
LONG $0x0c7ffac5; BYTE $0x79 // vmovdqu oword [rcx + 2*rdi], xmm1
LONG $0x547ffac5; WORD $0x1079 // vmovdqu oword [rcx + 2*rdi + 16], xmm2
LONG $0x5c7ffac5; WORD $0x2079 // vmovdqu oword [rcx + 2*rdi + 32], xmm3
LONG $0x647ffac5; WORD $0x3079 // vmovdqu oword [rcx + 2*rdi + 48], xmm4
QUAD $0x000080ba8c6ffec5; BYTE $0x00 // vmovdqu ymm1, yword [rdx + 4*rdi + 128]
QUAD $0x0000a0ba946ffec5; BYTE $0x00 // vmovdqu ymm2, yword [rdx + 4*rdi + 160]
QUAD $0x0000c0ba9c6ffec5; BYTE $0x00 // vmovdqu ymm3, yword [rdx + 4*rdi + 192]
QUAD $0x0000e0baa46ffec5; BYTE $0x00 // vmovdqu ymm4, yword [rdx + 4*rdi + 224]
LONG $0x0075e2c4; BYTE $0xc8 // vpshufb ymm1, ymm1, ymm0
LONG $0x00fde3c4; WORD $0xe8c9 // vpermq ymm1, ymm1, 232
LONG $0x006de2c4; BYTE $0xd0 // vpshufb ymm2, ymm2, ymm0
LONG $0x00fde3c4; WORD $0xe8d2 // vpermq ymm2, ymm2, 232
LONG $0x0065e2c4; BYTE $0xd8 // vpshufb ymm3, ymm3, ymm0
LONG $0x00fde3c4; WORD $0xe8db // vpermq ymm3, ymm3, 232
LONG $0x005de2c4; BYTE $0xe0 // vpshufb ymm4, ymm4, ymm0
LONG $0x00fde3c4; WORD $0xe8e4 // vpermq ymm4, ymm4, 232
LONG $0x4c7ffac5; WORD $0x4079 // vmovdqu oword [rcx + 2*rdi + 64], xmm1
LONG $0x547ffac5; WORD $0x5079 // vmovdqu oword [rcx + 2*rdi + 80], xmm2
LONG $0x5c7ffac5; WORD $0x6079 // vmovdqu oword [rcx + 2*rdi + 96], xmm3
LONG $0x647ffac5; WORD $0x7079 // vmovdqu oword [rcx + 2*rdi + 112], xmm4
LONG $0x40c78348 // add rdi, 64
LONG $0x02c08348 // add rax, 2
JNE LBB0_619
JMP LBB0_966
LBB0_620:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xe0 // and esi, -32
LONG $0xe0468d48 // lea rax, [rsi - 32]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x05e8c149 // shr r8, 5
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_970
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
QUAD $0x00000080856ffdc5 // vmovdqa ymm0, yword 128[rbp] /* [rip + .LCPI0_11] */
LBB0_622:
LONG $0x0c6ffec5; BYTE $0xba // vmovdqu ymm1, yword [rdx + 4*rdi]
LONG $0x546ffec5; WORD $0x20ba // vmovdqu ymm2, yword [rdx + 4*rdi + 32]
LONG $0x5c6ffec5; WORD $0x40ba // vmovdqu ymm3, yword [rdx + 4*rdi + 64]
LONG $0x646ffec5; WORD $0x60ba // vmovdqu ymm4, yword [rdx + 4*rdi + 96]
LONG $0x0075e2c4; BYTE $0xc8 // vpshufb ymm1, ymm1, ymm0
LONG $0x00fde3c4; WORD $0xe8c9 // vpermq ymm1, ymm1, 232
LONG $0x006de2c4; BYTE $0xd0 // vpshufb ymm2, ymm2, ymm0
LONG $0x00fde3c4; WORD $0xe8d2 // vpermq ymm2, ymm2, 232
LONG $0x0065e2c4; BYTE $0xd8 // vpshufb ymm3, ymm3, ymm0
LONG $0x00fde3c4; WORD $0xe8db // vpermq ymm3, ymm3, 232
LONG $0x005de2c4; BYTE $0xe0 // vpshufb ymm4, ymm4, ymm0
LONG $0x00fde3c4; WORD $0xe8e4 // vpermq ymm4, ymm4, 232
LONG $0x0c7ffac5; BYTE $0x79 // vmovdqu oword [rcx + 2*rdi], xmm1
LONG $0x547ffac5; WORD $0x1079 // vmovdqu oword [rcx + 2*rdi + 16], xmm2
LONG $0x5c7ffac5; WORD $0x2079 // vmovdqu oword [rcx + 2*rdi + 32], xmm3
LONG $0x647ffac5; WORD $0x3079 // vmovdqu oword [rcx + 2*rdi + 48], xmm4
QUAD $0x000080ba8c6ffec5; BYTE $0x00 // vmovdqu ymm1, yword [rdx + 4*rdi + 128]
QUAD $0x0000a0ba946ffec5; BYTE $0x00 // vmovdqu ymm2, yword [rdx + 4*rdi + 160]
QUAD $0x0000c0ba9c6ffec5; BYTE $0x00 // vmovdqu ymm3, yword [rdx + 4*rdi + 192]
QUAD $0x0000e0baa46ffec5; BYTE $0x00 // vmovdqu ymm4, yword [rdx + 4*rdi + 224]
LONG $0x0075e2c4; BYTE $0xc8 // vpshufb ymm1, ymm1, ymm0
LONG $0x00fde3c4; WORD $0xe8c9 // vpermq ymm1, ymm1, 232
LONG $0x006de2c4; BYTE $0xd0 // vpshufb ymm2, ymm2, ymm0
LONG $0x00fde3c4; WORD $0xe8d2 // vpermq ymm2, ymm2, 232
LONG $0x0065e2c4; BYTE $0xd8 // vpshufb ymm3, ymm3, ymm0
LONG $0x00fde3c4; WORD $0xe8db // vpermq ymm3, ymm3, 232
LONG $0x005de2c4; BYTE $0xe0 // vpshufb ymm4, ymm4, ymm0
LONG $0x00fde3c4; WORD $0xe8e4 // vpermq ymm4, ymm4, 232
LONG $0x4c7ffac5; WORD $0x4079 // vmovdqu oword [rcx + 2*rdi + 64], xmm1
LONG $0x547ffac5; WORD $0x5079 // vmovdqu oword [rcx + 2*rdi + 80], xmm2
LONG $0x5c7ffac5; WORD $0x6079 // vmovdqu oword [rcx + 2*rdi + 96], xmm3
LONG $0x647ffac5; WORD $0x7079 // vmovdqu oword [rcx + 2*rdi + 112], xmm4
LONG $0x40c78348 // add rdi, 64
LONG $0x02c08348 // add rax, 2
JNE LBB0_622
JMP LBB0_971
LBB0_623:
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_1100
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_625:
LONG $0x357de2c4; WORD $0xba04 // vpmovzxdq ymm0, oword [rdx + 4*rdi]
LONG $0x357de2c4; WORD $0xba4c; BYTE $0x10 // vpmovzxdq ymm1, oword [rdx + 4*rdi + 16]
LONG $0x357de2c4; WORD $0xba54; BYTE $0x20 // vpmovzxdq ymm2, oword [rdx + 4*rdi + 32]
LONG $0x357de2c4; WORD $0xba5c; BYTE $0x30 // vpmovzxdq ymm3, oword [rdx + 4*rdi + 48]
LONG $0x047ffec5; BYTE $0xf9 // vmovdqu yword [rcx + 8*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20f9 // vmovdqu yword [rcx + 8*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40f9 // vmovdqu yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60f9 // vmovdqu yword [rcx + 8*rdi + 96], ymm3
LONG $0x357de2c4; WORD $0xba44; BYTE $0x40 // vpmovzxdq ymm0, oword [rdx + 4*rdi + 64]
LONG $0x357de2c4; WORD $0xba4c; BYTE $0x50 // vpmovzxdq ymm1, oword [rdx + 4*rdi + 80]
LONG $0x357de2c4; WORD $0xba54; BYTE $0x60 // vpmovzxdq ymm2, oword [rdx + 4*rdi + 96]
LONG $0x357de2c4; WORD $0xba5c; BYTE $0x70 // vpmovzxdq ymm3, oword [rdx + 4*rdi + 112]
QUAD $0x000080f9847ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 128], ymm0
QUAD $0x0000a0f98c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 160], ymm1
QUAD $0x0000c0f9947ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 192], ymm2
QUAD $0x0000e0f99c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 224], ymm3
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_625
JMP LBB0_1101
LBB0_626:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xe0 // and esi, -32
LONG $0xe0468d48 // lea rax, [rsi - 32]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x05e8c149 // shr r8, 5
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1105
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
LONG $0x587de2c4; WORD $0x3445 // vpbroadcastd ymm0, dword 52[rbp] /* [rip + .LCPI0_13] */
WORD $0xff31 // xor edi, edi
LONG $0x587de2c4; WORD $0x384d // vpbroadcastd ymm1, dword 56[rbp] /* [rip + .LCPI0_14] */
LONG $0x187de2c4; WORD $0x3c55 // vbroadcastss ymm2, dword 60[rbp] /* [rip + .LCPI0_15] */
LBB0_628:
LONG $0x1c6ffec5; BYTE $0xba // vmovdqu ymm3, yword [rdx + 4*rdi]
LONG $0x646ffec5; WORD $0x20ba // vmovdqu ymm4, yword [rdx + 4*rdi + 32]
LONG $0x6c6ffec5; WORD $0x40ba // vmovdqu ymm5, yword [rdx + 4*rdi + 64]
LONG $0x746ffec5; WORD $0x60ba // vmovdqu ymm6, yword [rdx + 4*rdi + 96]
LONG $0x0e65e3c4; WORD $0xaaf8 // vpblendw ymm7, ymm3, ymm0, 170
LONG $0xd372e5c5; BYTE $0x10 // vpsrld ymm3, ymm3, 16
LONG $0x0e65e3c4; WORD $0xaad9 // vpblendw ymm3, ymm3, ymm1, 170
LONG $0xda5ce4c5 // vsubps ymm3, ymm3, ymm2
LONG $0xdb58c4c5 // vaddps ymm3, ymm7, ymm3
LONG $0x0e5de3c4; WORD $0xaaf8 // vpblendw ymm7, ymm4, ymm0, 170
LONG $0xd472ddc5; BYTE $0x10 // vpsrld ymm4, ymm4, 16
LONG $0x0e5de3c4; WORD $0xaae1 // vpblendw ymm4, ymm4, ymm1, 170
LONG $0xe25cdcc5 // vsubps ymm4, ymm4, ymm2
LONG $0xe458c4c5 // vaddps ymm4, ymm7, ymm4
LONG $0x0e55e3c4; WORD $0xaaf8 // vpblendw ymm7, ymm5, ymm0, 170
LONG $0xd572d5c5; BYTE $0x10 // vpsrld ymm5, ymm5, 16
LONG $0x0e55e3c4; WORD $0xaae9 // vpblendw ymm5, ymm5, ymm1, 170
LONG $0xea5cd4c5 // vsubps ymm5, ymm5, ymm2
LONG $0xed58c4c5 // vaddps ymm5, ymm7, ymm5
LONG $0x0e4de3c4; WORD $0xaaf8 // vpblendw ymm7, ymm6, ymm0, 170
LONG $0xd672cdc5; BYTE $0x10 // vpsrld ymm6, ymm6, 16
LONG $0x0e4de3c4; WORD $0xaaf1 // vpblendw ymm6, ymm6, ymm1, 170
LONG $0xf25cccc5 // vsubps ymm6, ymm6, ymm2
LONG $0xf658c4c5 // vaddps ymm6, ymm7, ymm6
LONG $0x1c11fcc5; BYTE $0xb9 // vmovups yword [rcx + 4*rdi], ymm3
LONG $0x6411fcc5; WORD $0x20b9 // vmovups yword [rcx + 4*rdi + 32], ymm4
LONG $0x6c11fcc5; WORD $0x40b9 // vmovups yword [rcx + 4*rdi + 64], ymm5
LONG $0x7411fcc5; WORD $0x60b9 // vmovups yword [rcx + 4*rdi + 96], ymm6
QUAD $0x000080ba9c6ffec5; BYTE $0x00 // vmovdqu ymm3, yword [rdx + 4*rdi + 128]
QUAD $0x0000a0baa46ffec5; BYTE $0x00 // vmovdqu ymm4, yword [rdx + 4*rdi + 160]
QUAD $0x0000c0baac6ffec5; BYTE $0x00 // vmovdqu ymm5, yword [rdx + 4*rdi + 192]
QUAD $0x0000e0bab46ffec5; BYTE $0x00 // vmovdqu ymm6, yword [rdx + 4*rdi + 224]
LONG $0x0e65e3c4; WORD $0xaaf8 // vpblendw ymm7, ymm3, ymm0, 170
LONG $0xd372e5c5; BYTE $0x10 // vpsrld ymm3, ymm3, 16
LONG $0x0e65e3c4; WORD $0xaad9 // vpblendw ymm3, ymm3, ymm1, 170
LONG $0xda5ce4c5 // vsubps ymm3, ymm3, ymm2
LONG $0xdb58c4c5 // vaddps ymm3, ymm7, ymm3
LONG $0x0e5de3c4; WORD $0xaaf8 // vpblendw ymm7, ymm4, ymm0, 170
LONG $0xd472ddc5; BYTE $0x10 // vpsrld ymm4, ymm4, 16
LONG $0x0e5de3c4; WORD $0xaae1 // vpblendw ymm4, ymm4, ymm1, 170
LONG $0xe25cdcc5 // vsubps ymm4, ymm4, ymm2
LONG $0xe458c4c5 // vaddps ymm4, ymm7, ymm4
LONG $0x0e55e3c4; WORD $0xaaf8 // vpblendw ymm7, ymm5, ymm0, 170
LONG $0xd572d5c5; BYTE $0x10 // vpsrld ymm5, ymm5, 16
LONG $0x0e55e3c4; WORD $0xaae9 // vpblendw ymm5, ymm5, ymm1, 170
LONG $0xea5cd4c5 // vsubps ymm5, ymm5, ymm2
LONG $0xed58c4c5 // vaddps ymm5, ymm7, ymm5
LONG $0x0e4de3c4; WORD $0xaaf8 // vpblendw ymm7, ymm6, ymm0, 170
LONG $0xd672cdc5; BYTE $0x10 // vpsrld ymm6, ymm6, 16
LONG $0x0e4de3c4; WORD $0xaaf1 // vpblendw ymm6, ymm6, ymm1, 170
LONG $0xf25cccc5 // vsubps ymm6, ymm6, ymm2
LONG $0xf658c4c5 // vaddps ymm6, ymm7, ymm6
QUAD $0x000080b99c11fcc5; BYTE $0x00 // vmovups yword [rcx + 4*rdi + 128], ymm3
QUAD $0x0000a0b9a411fcc5; BYTE $0x00 // vmovups yword [rcx + 4*rdi + 160], ymm4
QUAD $0x0000c0b9ac11fcc5; BYTE $0x00 // vmovups yword [rcx + 4*rdi + 192], ymm5
QUAD $0x0000e0b9b411fcc5; BYTE $0x00 // vmovups yword [rcx + 4*rdi + 224], ymm6
LONG $0x40c78348 // add rdi, 64
LONG $0x02c08348 // add rax, 2
JNE LBB0_628
JMP LBB0_1106
LBB0_629:
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_1110
WORD $0x894d; BYTE $0xc2 // mov r10, r8
LONG $0xfee28349 // and r10, -2
WORD $0xf749; BYTE $0xda // neg r10
WORD $0xff31 // xor edi, edi
LBB0_631:
LONG $0x2cfbe1c4; WORD $0xfa5c; BYTE $0x08 // vcvttsd2si rbx, qword [rdx + 8*rdi + 8]
LONG $0x6ef9e1c4; BYTE $0xc3 // vmovq xmm0, rbx
LONG $0x2cfbe1c4; WORD $0xfa1c // vcvttsd2si rbx, qword [rdx + 8*rdi]
LONG $0x6ef9e1c4; BYTE $0xcb // vmovq xmm1, rbx
LONG $0x2cfbe1c4; WORD $0xfa5c; BYTE $0x18 // vcvttsd2si rbx, qword [rdx + 8*rdi + 24]
LONG $0xc06c71c5 // vpunpcklqdq xmm8, xmm1, xmm0
LONG $0x2cfbe1c4; WORD $0xfa44; BYTE $0x10 // vcvttsd2si rax, qword [rdx + 8*rdi + 16]
LONG $0x6ef9e1c4; BYTE $0xcb // vmovq xmm1, rbx
LONG $0x2cfbe1c4; WORD $0xfa5c; BYTE $0x38 // vcvttsd2si rbx, qword [rdx + 8*rdi + 56]
LONG $0x6ef9e1c4; BYTE $0xd0 // vmovq xmm2, rax
LONG $0x2cfbe1c4; WORD $0xfa44; BYTE $0x30 // vcvttsd2si rax, qword [rdx + 8*rdi + 48]
LONG $0xc96ce9c5 // vpunpcklqdq xmm1, xmm2, xmm1
LONG $0x6ef9e1c4; BYTE $0xd3 // vmovq xmm2, rbx
LONG $0x6ef9e1c4; BYTE $0xd8 // vmovq xmm3, rax
LONG $0xd26ce1c5 // vpunpcklqdq xmm2, xmm3, xmm2
LONG $0x2cfbe1c4; WORD $0xfa44; BYTE $0x28 // vcvttsd2si rax, qword [rdx + 8*rdi + 40]
LONG $0x6ef9e1c4; BYTE $0xd8 // vmovq xmm3, rax
LONG $0x2cfbe1c4; WORD $0xfa44; BYTE $0x20 // vcvttsd2si rax, qword [rdx + 8*rdi + 32]
LONG $0x6ef9e1c4; BYTE $0xe0 // vmovq xmm4, rax
LONG $0xdb6cd9c5 // vpunpcklqdq xmm3, xmm4, xmm3
LONG $0x2cfbe1c4; WORD $0xfa44; BYTE $0x58 // vcvttsd2si rax, qword [rdx + 8*rdi + 88]
LONG $0x6ef9e1c4; BYTE $0xe0 // vmovq xmm4, rax
LONG $0x2cfbe1c4; WORD $0xfa44; BYTE $0x50 // vcvttsd2si rax, qword [rdx + 8*rdi + 80]
LONG $0x6ef9e1c4; BYTE $0xe8 // vmovq xmm5, rax
LONG $0x2cfbe1c4; WORD $0xfa44; BYTE $0x48 // vcvttsd2si rax, qword [rdx + 8*rdi + 72]
LONG $0xe46cd1c5 // vpunpcklqdq xmm4, xmm5, xmm4
LONG $0x2cfbe1c4; WORD $0xfa5c; BYTE $0x40 // vcvttsd2si rbx, qword [rdx + 8*rdi + 64]
LONG $0x6ef9e1c4; BYTE $0xe8 // vmovq xmm5, rax
LONG $0x2cfbe1c4; WORD $0xfa44; BYTE $0x78 // vcvttsd2si rax, qword [rdx + 8*rdi + 120]
LONG $0x6ef9e1c4; BYTE $0xf3 // vmovq xmm6, rbx
LONG $0x2cfbe1c4; WORD $0xfa5c; BYTE $0x70 // vcvttsd2si rbx, qword [rdx + 8*rdi + 112]
LONG $0xed6cc9c5 // vpunpcklqdq xmm5, xmm6, xmm5
LONG $0x6ef9e1c4; BYTE $0xf0 // vmovq xmm6, rax
LONG $0x6ef9e1c4; BYTE $0xfb // vmovq xmm7, rbx
LONG $0xf66cc1c5 // vpunpcklqdq xmm6, xmm7, xmm6
LONG $0x2cfbe1c4; WORD $0xfa44; BYTE $0x68 // vcvttsd2si rax, qword [rdx + 8*rdi + 104]
LONG $0x6ef9e1c4; BYTE $0xf8 // vmovq xmm7, rax
LONG $0x2cfbe1c4; WORD $0xfa44; BYTE $0x60 // vcvttsd2si rax, qword [rdx + 8*rdi + 96]
LONG $0x6ef9e1c4; BYTE $0xc0 // vmovq xmm0, rax
LONG $0xc76cf9c5 // vpunpcklqdq xmm0, xmm0, xmm7
LONG $0x4c7ffac5; WORD $0x10f9 // vmovdqu oword [rcx + 8*rdi + 16], xmm1
LONG $0x047f7ac5; BYTE $0xf9 // vmovdqu oword [rcx + 8*rdi], xmm8
LONG $0x5c7ffac5; WORD $0x20f9 // vmovdqu oword [rcx + 8*rdi + 32], xmm3
LONG $0x547ffac5; WORD $0x30f9 // vmovdqu oword [rcx + 8*rdi + 48], xmm2
LONG $0x6c7ffac5; WORD $0x40f9 // vmovdqu oword [rcx + 8*rdi + 64], xmm5
LONG $0x647ffac5; WORD $0x50f9 // vmovdqu oword [rcx + 8*rdi + 80], xmm4
LONG $0x447ffac5; WORD $0x60f9 // vmovdqu oword [rcx + 8*rdi + 96], xmm0
LONG $0x747ffac5; WORD $0x70f9 // vmovdqu oword [rcx + 8*rdi + 112], xmm6
QUAD $0x0088fa842cfbe1c4; WORD $0x0000 // vcvttsd2si rax, qword [rdx + 8*rdi + 136]
QUAD $0x0080fa9c2cfbe1c4; WORD $0x0000 // vcvttsd2si rbx, qword [rdx + 8*rdi + 128]
LONG $0x6ef9e1c4; BYTE $0xc0 // vmovq xmm0, rax
QUAD $0x0098fa842cfbe1c4; WORD $0x0000 // vcvttsd2si rax, qword [rdx + 8*rdi + 152]
LONG $0x6ef9e1c4; BYTE $0xcb // vmovq xmm1, rbx
QUAD $0x0090fa9c2cfbe1c4; WORD $0x0000 // vcvttsd2si rbx, qword [rdx + 8*rdi + 144]
LONG $0x6ef9e1c4; BYTE $0xd0 // vmovq xmm2, rax
LONG $0xc06c71c5 // vpunpcklqdq xmm8, xmm1, xmm0
LONG $0x6ef9e1c4; BYTE $0xcb // vmovq xmm1, rbx
LONG $0xca6cf1c5 // vpunpcklqdq xmm1, xmm1, xmm2
QUAD $0x00b8fa842cfbe1c4; WORD $0x0000 // vcvttsd2si rax, qword [rdx + 8*rdi + 184]
LONG $0x6ef9e1c4; BYTE $0xd0 // vmovq xmm2, rax
QUAD $0x00b0fa842cfbe1c4; WORD $0x0000 // vcvttsd2si rax, qword [rdx + 8*rdi + 176]
LONG $0x6ef9e1c4; BYTE $0xd8 // vmovq xmm3, rax
LONG $0xd26ce1c5 // vpunpcklqdq xmm2, xmm3, xmm2
QUAD $0x00a8fa842cfbe1c4; WORD $0x0000 // vcvttsd2si rax, qword [rdx + 8*rdi + 168]
LONG $0x6ef9e1c4; BYTE $0xd8 // vmovq xmm3, rax
QUAD $0x00a0fa842cfbe1c4; WORD $0x0000 // vcvttsd2si rax, qword [rdx + 8*rdi + 160]
LONG $0x6ef9e1c4; BYTE $0xe0 // vmovq xmm4, rax
QUAD $0x00d8fa842cfbe1c4; WORD $0x0000 // vcvttsd2si rax, qword [rdx + 8*rdi + 216]
LONG $0x6ef9e1c4; BYTE $0xe8 // vmovq xmm5, rax
QUAD $0x00d0fa842cfbe1c4; WORD $0x0000 // vcvttsd2si rax, qword [rdx + 8*rdi + 208]
LONG $0x6ef9e1c4; BYTE $0xf0 // vmovq xmm6, rax
QUAD $0x00c8fa842cfbe1c4; WORD $0x0000 // vcvttsd2si rax, qword [rdx + 8*rdi + 200]
LONG $0x6ef9e1c4; BYTE $0xf8 // vmovq xmm7, rax
QUAD $0x00c0fa842cfbe1c4; WORD $0x0000 // vcvttsd2si rax, qword [rdx + 8*rdi + 192]
LONG $0xdb6cd9c5 // vpunpcklqdq xmm3, xmm4, xmm3
LONG $0xe56cc9c5 // vpunpcklqdq xmm4, xmm6, xmm5
LONG $0x6ef9e1c4; BYTE $0xe8 // vmovq xmm5, rax
LONG $0xef6cd1c5 // vpunpcklqdq xmm5, xmm5, xmm7
QUAD $0x00f8fa842cfbe1c4; WORD $0x0000 // vcvttsd2si rax, qword [rdx + 8*rdi + 248]
LONG $0x6ef9e1c4; BYTE $0xf0 // vmovq xmm6, rax
QUAD $0x00f0fa842cfbe1c4; WORD $0x0000 // vcvttsd2si rax, qword [rdx + 8*rdi + 240]
LONG $0x6ef9e1c4; BYTE $0xf8 // vmovq xmm7, rax
LONG $0xf66cc1c5 // vpunpcklqdq xmm6, xmm7, xmm6
QUAD $0x00e8fa842cfbe1c4; WORD $0x0000 // vcvttsd2si rax, qword [rdx + 8*rdi + 232]
LONG $0x6ef9e1c4; BYTE $0xf8 // vmovq xmm7, rax
QUAD $0x00e0fa842cfbe1c4; WORD $0x0000 // vcvttsd2si rax, qword [rdx + 8*rdi + 224]
LONG $0x6ef9e1c4; BYTE $0xc0 // vmovq xmm0, rax
LONG $0xc76cf9c5 // vpunpcklqdq xmm0, xmm0, xmm7
QUAD $0x000090f98c7ffac5; BYTE $0x00 // vmovdqu oword [rcx + 8*rdi + 144], xmm1
QUAD $0x000080f9847f7ac5; BYTE $0x00 // vmovdqu oword [rcx + 8*rdi + 128], xmm8
QUAD $0x0000a0f99c7ffac5; BYTE $0x00 // vmovdqu oword [rcx + 8*rdi + 160], xmm3
QUAD $0x0000b0f9947ffac5; BYTE $0x00 // vmovdqu oword [rcx + 8*rdi + 176], xmm2
QUAD $0x0000c0f9ac7ffac5; BYTE $0x00 // vmovdqu oword [rcx + 8*rdi + 192], xmm5
QUAD $0x0000d0f9a47ffac5; BYTE $0x00 // vmovdqu oword [rcx + 8*rdi + 208], xmm4
QUAD $0x0000e0f9847ffac5; BYTE $0x00 // vmovdqu oword [rcx + 8*rdi + 224], xmm0
QUAD $0x0000f0f9b47ffac5; BYTE $0x00 // vmovdqu oword [rcx + 8*rdi + 240], xmm6
LONG $0x20c78348 // add rdi, 32
LONG $0x02c28349 // add r10, 2
JNE LBB0_631
JMP LBB0_1111
LBB0_632:
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_1115
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_634:
LONG $0x045afdc5; BYTE $0xfa // vcvtpd2ps xmm0, yword [rdx + 8*rdi]
LONG $0x4c5afdc5; WORD $0x20fa // vcvtpd2ps xmm1, yword [rdx + 8*rdi + 32]
LONG $0x545afdc5; WORD $0x40fa // vcvtpd2ps xmm2, yword [rdx + 8*rdi + 64]
LONG $0x5c5afdc5; WORD $0x60fa // vcvtpd2ps xmm3, yword [rdx + 8*rdi + 96]
LONG $0x0411f9c5; BYTE $0xb9 // vmovupd oword [rcx + 4*rdi], xmm0
LONG $0x4c11f9c5; WORD $0x10b9 // vmovupd oword [rcx + 4*rdi + 16], xmm1
LONG $0x5411f9c5; WORD $0x20b9 // vmovupd oword [rcx + 4*rdi + 32], xmm2
LONG $0x5c11f9c5; WORD $0x30b9 // vmovupd oword [rcx + 4*rdi + 48], xmm3
QUAD $0x000080fa845afdc5; BYTE $0x00 // vcvtpd2ps xmm0, yword [rdx + 8*rdi + 128]
QUAD $0x0000a0fa8c5afdc5; BYTE $0x00 // vcvtpd2ps xmm1, yword [rdx + 8*rdi + 160]
QUAD $0x0000c0fa945afdc5; BYTE $0x00 // vcvtpd2ps xmm2, yword [rdx + 8*rdi + 192]
QUAD $0x0000e0fa9c5afdc5; BYTE $0x00 // vcvtpd2ps xmm3, yword [rdx + 8*rdi + 224]
LONG $0x4411f9c5; WORD $0x40b9 // vmovupd oword [rcx + 4*rdi + 64], xmm0
LONG $0x4c11f9c5; WORD $0x50b9 // vmovupd oword [rcx + 4*rdi + 80], xmm1
LONG $0x5411f9c5; WORD $0x60b9 // vmovupd oword [rcx + 4*rdi + 96], xmm2
LONG $0x5c11f9c5; WORD $0x70b9 // vmovupd oword [rcx + 4*rdi + 112], xmm3
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_634
JMP LBB0_1116
LBB0_644:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xfc // and esi, -4
LONG $0xfc468d48 // lea rax, [rsi - 4]
WORD $0x8949; BYTE $0xc2 // mov r10, rax
LONG $0x02eac149 // shr r10, 2
LONG $0x01c28349 // add r10, 1
WORD $0x8945; BYTE $0xd0 // mov r8d, r10d
LONG $0x03e08341 // and r8d, 3
LONG $0x0cf88348 // cmp rax, 12
JAE LBB0_850
WORD $0xc031 // xor eax, eax
JMP LBB0_852
LBB0_646:
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_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_648:
LONG $0x347de2c4; WORD $0x7a04 // vpmovzxwq ymm0, qword [rdx + 2*rdi]
LONG $0x347de2c4; WORD $0x7a4c; BYTE $0x08 // vpmovzxwq ymm1, qword [rdx + 2*rdi + 8]
LONG $0x347de2c4; WORD $0x7a54; BYTE $0x10 // vpmovzxwq ymm2, qword [rdx + 2*rdi + 16]
LONG $0x347de2c4; WORD $0x7a5c; BYTE $0x18 // vpmovzxwq ymm3, qword [rdx + 2*rdi + 24]
LONG $0x047ffec5; BYTE $0xf9 // vmovdqu yword [rcx + 8*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20f9 // vmovdqu yword [rcx + 8*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40f9 // vmovdqu yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60f9 // vmovdqu yword [rcx + 8*rdi + 96], ymm3
LONG $0x347de2c4; WORD $0x7a44; BYTE $0x20 // vpmovzxwq ymm0, qword [rdx + 2*rdi + 32]
LONG $0x347de2c4; WORD $0x7a4c; BYTE $0x28 // vpmovzxwq ymm1, qword [rdx + 2*rdi + 40]
LONG $0x347de2c4; WORD $0x7a54; BYTE $0x30 // vpmovzxwq ymm2, qword [rdx + 2*rdi + 48]
LONG $0x347de2c4; WORD $0x7a5c; BYTE $0x38 // vpmovzxwq ymm3, qword [rdx + 2*rdi + 56]
QUAD $0x000080f9847ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 128], ymm0
QUAD $0x0000a0f98c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 160], ymm1
QUAD $0x0000c0f9947ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 192], ymm2
QUAD $0x0000e0f99c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 224], ymm3
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_648
JMP LBB0_976
LBB0_649:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xe0 // and esi, -32
LONG $0xe0468d48 // lea rax, [rsi - 32]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x05e8c149 // shr r8, 5
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1120
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 $0x337de2c4; WORD $0x7a04 // vpmovzxwd ymm0, oword [rdx + 2*rdi]
LONG $0x337de2c4; WORD $0x7a4c; BYTE $0x10 // vpmovzxwd ymm1, oword [rdx + 2*rdi + 16]
LONG $0x337de2c4; WORD $0x7a54; BYTE $0x20 // vpmovzxwd ymm2, oword [rdx + 2*rdi + 32]
LONG $0x337de2c4; WORD $0x7a5c; BYTE $0x30 // vpmovzxwd ymm3, oword [rdx + 2*rdi + 48]
LONG $0xc05bfcc5 // vcvtdq2ps ymm0, ymm0
LONG $0xc95bfcc5 // vcvtdq2ps ymm1, ymm1
LONG $0xd25bfcc5 // vcvtdq2ps ymm2, ymm2
LONG $0xdb5bfcc5 // vcvtdq2ps ymm3, ymm3
LONG $0x0411fcc5; BYTE $0xb9 // vmovups yword [rcx + 4*rdi], ymm0
LONG $0x4c11fcc5; WORD $0x20b9 // vmovups yword [rcx + 4*rdi + 32], ymm1
LONG $0x5411fcc5; WORD $0x40b9 // vmovups yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c11fcc5; WORD $0x60b9 // vmovups yword [rcx + 4*rdi + 96], ymm3
LONG $0x337de2c4; WORD $0x7a44; BYTE $0x40 // vpmovzxwd ymm0, oword [rdx + 2*rdi + 64]
LONG $0x337de2c4; WORD $0x7a4c; BYTE $0x50 // vpmovzxwd ymm1, oword [rdx + 2*rdi + 80]
LONG $0x337de2c4; WORD $0x7a54; BYTE $0x60 // vpmovzxwd ymm2, oword [rdx + 2*rdi + 96]
LONG $0x337de2c4; WORD $0x7a5c; BYTE $0x70 // vpmovzxwd ymm3, oword [rdx + 2*rdi + 112]
LONG $0xc05bfcc5 // vcvtdq2ps ymm0, ymm0
LONG $0xc95bfcc5 // vcvtdq2ps ymm1, ymm1
LONG $0xd25bfcc5 // vcvtdq2ps ymm2, ymm2
LONG $0xdb5bfcc5 // vcvtdq2ps ymm3, ymm3
QUAD $0x000080b98411fcc5; BYTE $0x00 // vmovups yword [rcx + 4*rdi + 128], ymm0
QUAD $0x0000a0b98c11fcc5; BYTE $0x00 // vmovups yword [rcx + 4*rdi + 160], ymm1
QUAD $0x0000c0b99411fcc5; BYTE $0x00 // vmovups yword [rcx + 4*rdi + 192], ymm2
QUAD $0x0000e0b99c11fcc5; BYTE $0x00 // vmovups yword [rcx + 4*rdi + 224], ymm3
LONG $0x40c78348 // add rdi, 64
LONG $0x02c08348 // add rax, 2
JNE LBB0_651
JMP LBB0_1121
LBB0_652:
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_1125
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_654:
LONG $0x247de2c4; WORD $0x7a04 // vpmovsxwq ymm0, qword [rdx + 2*rdi]
LONG $0x247de2c4; WORD $0x7a4c; BYTE $0x08 // vpmovsxwq ymm1, qword [rdx + 2*rdi + 8]
LONG $0x247de2c4; WORD $0x7a54; BYTE $0x10 // vpmovsxwq ymm2, qword [rdx + 2*rdi + 16]
LONG $0x247de2c4; WORD $0x7a5c; BYTE $0x18 // vpmovsxwq ymm3, qword [rdx + 2*rdi + 24]
LONG $0x047ffec5; BYTE $0xf9 // vmovdqu yword [rcx + 8*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20f9 // vmovdqu yword [rcx + 8*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40f9 // vmovdqu yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60f9 // vmovdqu yword [rcx + 8*rdi + 96], ymm3
LONG $0x247de2c4; WORD $0x7a44; BYTE $0x20 // vpmovsxwq ymm0, qword [rdx + 2*rdi + 32]
LONG $0x247de2c4; WORD $0x7a4c; BYTE $0x28 // vpmovsxwq ymm1, qword [rdx + 2*rdi + 40]
LONG $0x247de2c4; WORD $0x7a54; BYTE $0x30 // vpmovsxwq ymm2, qword [rdx + 2*rdi + 48]
LONG $0x247de2c4; WORD $0x7a5c; BYTE $0x38 // vpmovsxwq ymm3, qword [rdx + 2*rdi + 56]
QUAD $0x000080f9847ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 128], ymm0
QUAD $0x0000a0f98c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 160], ymm1
QUAD $0x0000c0f9947ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 192], ymm2
QUAD $0x0000e0f99c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 224], ymm3
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_654
JMP LBB0_1126
LBB0_655:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xe0 // and esi, -32
LONG $0xe0468d48 // lea rax, [rsi - 32]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x05e8c149 // shr r8, 5
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1130
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_657:
LONG $0x237de2c4; WORD $0x7a04 // vpmovsxwd ymm0, oword [rdx + 2*rdi]
LONG $0x237de2c4; WORD $0x7a4c; BYTE $0x10 // vpmovsxwd ymm1, oword [rdx + 2*rdi + 16]
LONG $0x237de2c4; WORD $0x7a54; BYTE $0x20 // vpmovsxwd ymm2, oword [rdx + 2*rdi + 32]
LONG $0x237de2c4; WORD $0x7a5c; BYTE $0x30 // vpmovsxwd ymm3, oword [rdx + 2*rdi + 48]
LONG $0xc05bfcc5 // vcvtdq2ps ymm0, ymm0
LONG $0xc95bfcc5 // vcvtdq2ps ymm1, ymm1
LONG $0xd25bfcc5 // vcvtdq2ps ymm2, ymm2
LONG $0xdb5bfcc5 // vcvtdq2ps ymm3, ymm3
LONG $0x0411fcc5; BYTE $0xb9 // vmovups yword [rcx + 4*rdi], ymm0
LONG $0x4c11fcc5; WORD $0x20b9 // vmovups yword [rcx + 4*rdi + 32], ymm1
LONG $0x5411fcc5; WORD $0x40b9 // vmovups yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c11fcc5; WORD $0x60b9 // vmovups yword [rcx + 4*rdi + 96], ymm3
LONG $0x237de2c4; WORD $0x7a44; BYTE $0x40 // vpmovsxwd ymm0, oword [rdx + 2*rdi + 64]
LONG $0x237de2c4; WORD $0x7a4c; BYTE $0x50 // vpmovsxwd ymm1, oword [rdx + 2*rdi + 80]
LONG $0x237de2c4; WORD $0x7a54; BYTE $0x60 // vpmovsxwd ymm2, oword [rdx + 2*rdi + 96]
LONG $0x237de2c4; WORD $0x7a5c; BYTE $0x70 // vpmovsxwd ymm3, oword [rdx + 2*rdi + 112]
LONG $0xc05bfcc5 // vcvtdq2ps ymm0, ymm0
LONG $0xc95bfcc5 // vcvtdq2ps ymm1, ymm1
LONG $0xd25bfcc5 // vcvtdq2ps ymm2, ymm2
LONG $0xdb5bfcc5 // vcvtdq2ps ymm3, ymm3
QUAD $0x000080b98411fcc5; BYTE $0x00 // vmovups yword [rcx + 4*rdi + 128], ymm0
QUAD $0x0000a0b98c11fcc5; BYTE $0x00 // vmovups yword [rcx + 4*rdi + 160], ymm1
QUAD $0x0000c0b99411fcc5; BYTE $0x00 // vmovups yword [rcx + 4*rdi + 192], ymm2
QUAD $0x0000e0b99c11fcc5; BYTE $0x00 // vmovups yword [rcx + 4*rdi + 224], ymm3
LONG $0x40c78348 // add rdi, 64
LONG $0x02c08348 // add rax, 2
JNE LBB0_657
JMP LBB0_1131
LBB0_661:
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_1135
WORD $0x894d; BYTE $0xc2 // mov r10, r8
LONG $0xfee28349 // and r10, -2
WORD $0xf749; BYTE $0xda // neg r10
WORD $0xff31 // xor edi, edi
LBB0_663:
LONG $0x046ffac5; BYTE $0xfa // vmovdqu xmm0, oword [rdx + 8*rdi]
LONG $0x16f9e3c4; WORD $0x01c0 // vpextrq rax, xmm0, 1
LONG $0x4c6ffac5; WORD $0x10fa // vmovdqu xmm1, oword [rdx + 8*rdi + 16]
LONG $0x2abae1c4; BYTE $0xd0 // vcvtsi2ss xmm2, xmm8, rax
LONG $0x7ef9e1c4; BYTE $0xc0 // vmovq rax, xmm0
LONG $0x2abae1c4; BYTE $0xc0 // vcvtsi2ss xmm0, xmm8, rax
LONG $0x7ef9e1c4; BYTE $0xc8 // vmovq rax, xmm1
LONG $0x2abae1c4; BYTE $0xd8 // vcvtsi2ss xmm3, xmm8, rax
LONG $0x16f9e3c4; WORD $0x01c8 // vpextrq rax, xmm1, 1
LONG $0x2abae1c4; BYTE $0xc8 // vcvtsi2ss xmm1, xmm8, rax
LONG $0x646ffac5; WORD $0x20fa // vmovdqu xmm4, oword [rdx + 8*rdi + 32]
LONG $0x16f9e3c4; WORD $0x01e0 // vpextrq rax, xmm4, 1
LONG $0x6c6ffac5; WORD $0x30fa // vmovdqu xmm5, oword [rdx + 8*rdi + 48]
LONG $0x2abae1c4; BYTE $0xf0 // vcvtsi2ss xmm6, xmm8, rax
LONG $0x7ef9e1c4; BYTE $0xe0 // vmovq rax, xmm4
LONG $0x2abae1c4; BYTE $0xe0 // vcvtsi2ss xmm4, xmm8, rax
LONG $0x7ef9e1c4; BYTE $0xe8 // vmovq rax, xmm5
LONG $0x2abae1c4; BYTE $0xf8 // vcvtsi2ss xmm7, xmm8, rax
LONG $0x2179e3c4; WORD $0x10c2 // vinsertps xmm0, xmm0, xmm2, 16
LONG $0x2179e3c4; WORD $0x20c3 // vinsertps xmm0, xmm0, xmm3, 32
LONG $0x16f9e3c4; WORD $0x01e8 // vpextrq rax, xmm5, 1
LONG $0x2179e3c4; WORD $0x30c1 // vinsertps xmm0, xmm0, xmm1, 48
LONG $0x2abae1c4; BYTE $0xc8 // vcvtsi2ss xmm1, xmm8, rax
LONG $0x2159e3c4; WORD $0x10d6 // vinsertps xmm2, xmm4, xmm6, 16
LONG $0x5c6ffac5; WORD $0x40fa // vmovdqu xmm3, oword [rdx + 8*rdi + 64]
LONG $0x16f9e3c4; WORD $0x01d8 // vpextrq rax, xmm3, 1
LONG $0x2abae1c4; BYTE $0xe0 // vcvtsi2ss xmm4, xmm8, rax
LONG $0x7ef9e1c4; BYTE $0xd8 // vmovq rax, xmm3
LONG $0x2abae1c4; BYTE $0xd8 // vcvtsi2ss xmm3, xmm8, rax
LONG $0x6c6ffac5; WORD $0x50fa // vmovdqu xmm5, oword [rdx + 8*rdi + 80]
LONG $0x7ef9e1c4; BYTE $0xe8 // vmovq rax, xmm5
LONG $0x2abae1c4; BYTE $0xf0 // vcvtsi2ss xmm6, xmm8, rax
LONG $0x2169e3c4; WORD $0x20d7 // vinsertps xmm2, xmm2, xmm7, 32
LONG $0x2169e3c4; WORD $0x30c9 // vinsertps xmm1, xmm2, xmm1, 48
LONG $0x16f9e3c4; WORD $0x01e8 // vpextrq rax, xmm5, 1
LONG $0x2161e3c4; WORD $0x10d4 // vinsertps xmm2, xmm3, xmm4, 16
LONG $0x2abae1c4; BYTE $0xd8 // vcvtsi2ss xmm3, xmm8, rax
LONG $0x2169e3c4; WORD $0x20d6 // vinsertps xmm2, xmm2, xmm6, 32
LONG $0x646ffac5; WORD $0x60fa // vmovdqu xmm4, oword [rdx + 8*rdi + 96]
LONG $0x16f9e3c4; WORD $0x01e0 // vpextrq rax, xmm4, 1
LONG $0x2abae1c4; BYTE $0xe8 // vcvtsi2ss xmm5, xmm8, rax
LONG $0x7ef9e1c4; BYTE $0xe0 // vmovq rax, xmm4
LONG $0x2abae1c4; BYTE $0xe0 // vcvtsi2ss xmm4, xmm8, rax
LONG $0x746ffac5; WORD $0x70fa // vmovdqu xmm6, oword [rdx + 8*rdi + 112]
LONG $0x7ef9e1c4; BYTE $0xf0 // vmovq rax, xmm6
LONG $0x2abae1c4; BYTE $0xf8 // vcvtsi2ss xmm7, xmm8, rax
LONG $0x2169e3c4; WORD $0x30d3 // vinsertps xmm2, xmm2, xmm3, 48
LONG $0x2159e3c4; WORD $0x10dd // vinsertps xmm3, xmm4, xmm5, 16
LONG $0x16f9e3c4; WORD $0x01f0 // vpextrq rax, xmm6, 1
LONG $0x2161e3c4; WORD $0x20df // vinsertps xmm3, xmm3, xmm7, 32
LONG $0x2abae1c4; BYTE $0xe0 // vcvtsi2ss xmm4, xmm8, rax
LONG $0x2161e3c4; WORD $0x30dc // vinsertps xmm3, xmm3, xmm4, 48
LONG $0x0411f8c5; BYTE $0xb9 // vmovups oword [rcx + 4*rdi], xmm0
LONG $0x4c11f8c5; WORD $0x10b9 // vmovups oword [rcx + 4*rdi + 16], xmm1
LONG $0x5411f8c5; WORD $0x20b9 // vmovups oword [rcx + 4*rdi + 32], xmm2
LONG $0x5c11f8c5; WORD $0x30b9 // vmovups oword [rcx + 4*rdi + 48], xmm3
QUAD $0x000080fa846ffac5; BYTE $0x00 // vmovdqu xmm0, oword [rdx + 8*rdi + 128]
LONG $0x16f9e3c4; WORD $0x01c0 // vpextrq rax, xmm0, 1
QUAD $0x000090fa8c6ffac5; BYTE $0x00 // vmovdqu xmm1, oword [rdx + 8*rdi + 144]
LONG $0x2abae1c4; BYTE $0xd0 // vcvtsi2ss xmm2, xmm8, rax
LONG $0x7ef9e1c4; BYTE $0xc0 // vmovq rax, xmm0
LONG $0x2abae1c4; BYTE $0xc0 // vcvtsi2ss xmm0, xmm8, rax
LONG $0x7ef9e1c4; BYTE $0xc8 // vmovq rax, xmm1
LONG $0x2abae1c4; BYTE $0xd8 // vcvtsi2ss xmm3, xmm8, rax
LONG $0x16f9e3c4; WORD $0x01c8 // vpextrq rax, xmm1, 1
LONG $0x2abae1c4; BYTE $0xc8 // vcvtsi2ss xmm1, xmm8, rax
QUAD $0x0000a0faa46ffac5; BYTE $0x00 // vmovdqu xmm4, oword [rdx + 8*rdi + 160]
LONG $0x16f9e3c4; WORD $0x01e0 // vpextrq rax, xmm4, 1
LONG $0x2abae1c4; BYTE $0xe8 // vcvtsi2ss xmm5, xmm8, rax
LONG $0x7ef9e1c4; BYTE $0xe0 // vmovq rax, xmm4
LONG $0x2abae1c4; BYTE $0xe0 // vcvtsi2ss xmm4, xmm8, rax
LONG $0x2179e3c4; WORD $0x10c2 // vinsertps xmm0, xmm0, xmm2, 16
QUAD $0x0000b0fa946ffac5; BYTE $0x00 // vmovdqu xmm2, oword [rdx + 8*rdi + 176]
LONG $0x16f9c3c4; WORD $0x01d3 // vpextrq r11, xmm2, 1
LONG $0x7ef9e1c4; BYTE $0xd0 // vmovq rax, xmm2
LONG $0x2abae1c4; BYTE $0xd0 // vcvtsi2ss xmm2, xmm8, rax
LONG $0x2179e3c4; WORD $0x20c3 // vinsertps xmm0, xmm0, xmm3, 32
LONG $0x2abac1c4; BYTE $0xdb // vcvtsi2ss xmm3, xmm8, r11
LONG $0x2179e3c4; WORD $0x30c1 // vinsertps xmm0, xmm0, xmm1, 48
QUAD $0x0000c0fa8c6ffac5; BYTE $0x00 // vmovdqu xmm1, oword [rdx + 8*rdi + 192]
LONG $0x16f9e3c4; WORD $0x01c8 // vpextrq rax, xmm1, 1
LONG $0x2159e3c4; WORD $0x10e5 // vinsertps xmm4, xmm4, xmm5, 16
LONG $0x2abae1c4; BYTE $0xe8 // vcvtsi2ss xmm5, xmm8, rax
LONG $0x7ef9e1c4; BYTE $0xc8 // vmovq rax, xmm1
LONG $0x2abae1c4; BYTE $0xc8 // vcvtsi2ss xmm1, xmm8, rax
LONG $0x2159e3c4; WORD $0x20d2 // vinsertps xmm2, xmm4, xmm2, 32
QUAD $0x0000d0faa46ffac5; BYTE $0x00 // vmovdqu xmm4, oword [rdx + 8*rdi + 208]
LONG $0x16f9c3c4; WORD $0x01e3 // vpextrq r11, xmm4, 1
LONG $0x7ef9e1c4; BYTE $0xe0 // vmovq rax, xmm4
LONG $0x2abae1c4; BYTE $0xe0 // vcvtsi2ss xmm4, xmm8, rax
LONG $0x2169e3c4; WORD $0x30d3 // vinsertps xmm2, xmm2, xmm3, 48
LONG $0x2abac1c4; BYTE $0xdb // vcvtsi2ss xmm3, xmm8, r11
LONG $0x2171e3c4; WORD $0x10cd // vinsertps xmm1, xmm1, xmm5, 16
QUAD $0x0000e0faac6ffac5; BYTE $0x00 // vmovdqu xmm5, oword [rdx + 8*rdi + 224]
LONG $0x16f9e3c4; WORD $0x01e8 // vpextrq rax, xmm5, 1
LONG $0x2171e3c4; WORD $0x20cc // vinsertps xmm1, xmm1, xmm4, 32
LONG $0x2abae1c4; BYTE $0xe0 // vcvtsi2ss xmm4, xmm8, rax
LONG $0x7ef9e1c4; BYTE $0xe8 // vmovq rax, xmm5
LONG $0x2abae1c4; BYTE $0xe8 // vcvtsi2ss xmm5, xmm8, rax
LONG $0x2171e3c4; WORD $0x30cb // vinsertps xmm1, xmm1, xmm3, 48
QUAD $0x0000f0fa9c6ffac5; BYTE $0x00 // vmovdqu xmm3, oword [rdx + 8*rdi + 240]
LONG $0x16f9c3c4; WORD $0x01db // vpextrq r11, xmm3, 1
LONG $0x7ef9e1c4; BYTE $0xd8 // vmovq rax, xmm3
LONG $0x2abae1c4; BYTE $0xd8 // vcvtsi2ss xmm3, xmm8, rax
LONG $0x2151e3c4; WORD $0x10e4 // vinsertps xmm4, xmm5, xmm4, 16
LONG $0x2abac1c4; BYTE $0xeb // vcvtsi2ss xmm5, xmm8, r11
LONG $0x2159e3c4; WORD $0x20db // vinsertps xmm3, xmm4, xmm3, 32
LONG $0x2161e3c4; WORD $0x30dd // vinsertps xmm3, xmm3, xmm5, 48
LONG $0x4411f8c5; WORD $0x40b9 // vmovups oword [rcx + 4*rdi + 64], xmm0
LONG $0x5411f8c5; WORD $0x50b9 // vmovups oword [rcx + 4*rdi + 80], xmm2
LONG $0x4c11f8c5; WORD $0x60b9 // vmovups oword [rcx + 4*rdi + 96], xmm1
LONG $0x5c11f8c5; WORD $0x70b9 // vmovups oword [rcx + 4*rdi + 112], xmm3
LONG $0x20c78348 // add rdi, 32
LONG $0x02c28349 // add r10, 2
JNE LBB0_663
JMP LBB0_1136
LBB0_664:
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_1140
WORD $0x894d; BYTE $0xc2 // mov r10, r8
LONG $0xfee28349 // and r10, -2
WORD $0xf749; BYTE $0xda // neg r10
WORD $0xff31 // xor edi, edi
LBB0_666:
LONG $0x2cfae1c4; WORD $0xba5c; BYTE $0x04 // vcvttss2si rbx, dword [rdx + 4*rdi + 4]
LONG $0x6ef9e1c4; BYTE $0xc3 // vmovq xmm0, rbx
LONG $0x2cfae1c4; WORD $0xba1c // vcvttss2si rbx, dword [rdx + 4*rdi]
LONG $0x6ef9e1c4; BYTE $0xcb // vmovq xmm1, rbx
LONG $0x2cfae1c4; WORD $0xba5c; BYTE $0x0c // vcvttss2si rbx, dword [rdx + 4*rdi + 12]
LONG $0xc06c71c5 // vpunpcklqdq xmm8, xmm1, xmm0
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x08 // vcvttss2si rax, dword [rdx + 4*rdi + 8]
LONG $0x6ef9e1c4; BYTE $0xcb // vmovq xmm1, rbx
LONG $0x2cfae1c4; WORD $0xba5c; BYTE $0x1c // vcvttss2si rbx, dword [rdx + 4*rdi + 28]
LONG $0x6ef9e1c4; BYTE $0xd0 // vmovq xmm2, rax
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x18 // vcvttss2si rax, dword [rdx + 4*rdi + 24]
LONG $0xc96ce9c5 // vpunpcklqdq xmm1, xmm2, xmm1
LONG $0x6ef9e1c4; BYTE $0xd3 // vmovq xmm2, rbx
LONG $0x6ef9e1c4; BYTE $0xd8 // vmovq xmm3, rax
LONG $0xd26ce1c5 // vpunpcklqdq xmm2, xmm3, xmm2
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x14 // vcvttss2si rax, dword [rdx + 4*rdi + 20]
LONG $0x6ef9e1c4; BYTE $0xd8 // vmovq xmm3, rax
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x10 // vcvttss2si rax, dword [rdx + 4*rdi + 16]
LONG $0x6ef9e1c4; BYTE $0xe0 // vmovq xmm4, rax
LONG $0xdb6cd9c5 // vpunpcklqdq xmm3, xmm4, xmm3
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x2c // vcvttss2si rax, dword [rdx + 4*rdi + 44]
LONG $0x6ef9e1c4; BYTE $0xe0 // vmovq xmm4, rax
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x28 // vcvttss2si rax, dword [rdx + 4*rdi + 40]
LONG $0x6ef9e1c4; BYTE $0xe8 // vmovq xmm5, rax
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x24 // vcvttss2si rax, dword [rdx + 4*rdi + 36]
LONG $0xe46cd1c5 // vpunpcklqdq xmm4, xmm5, xmm4
LONG $0x2cfae1c4; WORD $0xba5c; BYTE $0x20 // vcvttss2si rbx, dword [rdx + 4*rdi + 32]
LONG $0x6ef9e1c4; BYTE $0xe8 // vmovq xmm5, rax
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x3c // vcvttss2si rax, dword [rdx + 4*rdi + 60]
LONG $0x6ef9e1c4; BYTE $0xf3 // vmovq xmm6, rbx
LONG $0x2cfae1c4; WORD $0xba5c; BYTE $0x38 // vcvttss2si rbx, dword [rdx + 4*rdi + 56]
LONG $0xed6cc9c5 // vpunpcklqdq xmm5, xmm6, xmm5
LONG $0x6ef9e1c4; BYTE $0xf0 // vmovq xmm6, rax
LONG $0x6ef9e1c4; BYTE $0xfb // vmovq xmm7, rbx
LONG $0xf66cc1c5 // vpunpcklqdq xmm6, xmm7, xmm6
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x34 // vcvttss2si rax, dword [rdx + 4*rdi + 52]
LONG $0x6ef9e1c4; BYTE $0xf8 // vmovq xmm7, rax
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x30 // vcvttss2si rax, dword [rdx + 4*rdi + 48]
LONG $0x6ef9e1c4; BYTE $0xc0 // vmovq xmm0, rax
LONG $0xc76cf9c5 // vpunpcklqdq xmm0, xmm0, xmm7
LONG $0x4c7ffac5; WORD $0x10f9 // vmovdqu oword [rcx + 8*rdi + 16], xmm1
LONG $0x047f7ac5; BYTE $0xf9 // vmovdqu oword [rcx + 8*rdi], xmm8
LONG $0x5c7ffac5; WORD $0x20f9 // vmovdqu oword [rcx + 8*rdi + 32], xmm3
LONG $0x547ffac5; WORD $0x30f9 // vmovdqu oword [rcx + 8*rdi + 48], xmm2
LONG $0x6c7ffac5; WORD $0x40f9 // vmovdqu oword [rcx + 8*rdi + 64], xmm5
LONG $0x647ffac5; WORD $0x50f9 // vmovdqu oword [rcx + 8*rdi + 80], xmm4
LONG $0x447ffac5; WORD $0x60f9 // vmovdqu oword [rcx + 8*rdi + 96], xmm0
LONG $0x747ffac5; WORD $0x70f9 // vmovdqu oword [rcx + 8*rdi + 112], xmm6
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x44 // vcvttss2si rax, dword [rdx + 4*rdi + 68]
LONG $0x2cfae1c4; WORD $0xba5c; BYTE $0x40 // vcvttss2si rbx, dword [rdx + 4*rdi + 64]
LONG $0x6ef9e1c4; BYTE $0xc0 // vmovq xmm0, rax
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x4c // vcvttss2si rax, dword [rdx + 4*rdi + 76]
LONG $0x6ef9e1c4; BYTE $0xcb // vmovq xmm1, rbx
LONG $0x2cfae1c4; WORD $0xba5c; BYTE $0x48 // vcvttss2si rbx, dword [rdx + 4*rdi + 72]
LONG $0x6ef9e1c4; BYTE $0xd0 // vmovq xmm2, rax
LONG $0xc06c71c5 // vpunpcklqdq xmm8, xmm1, xmm0
LONG $0x6ef9e1c4; BYTE $0xcb // vmovq xmm1, rbx
LONG $0xca6cf1c5 // vpunpcklqdq xmm1, xmm1, xmm2
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x5c // vcvttss2si rax, dword [rdx + 4*rdi + 92]
LONG $0x6ef9e1c4; BYTE $0xd0 // vmovq xmm2, rax
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x58 // vcvttss2si rax, dword [rdx + 4*rdi + 88]
LONG $0x6ef9e1c4; BYTE $0xd8 // vmovq xmm3, rax
LONG $0xd26ce1c5 // vpunpcklqdq xmm2, xmm3, xmm2
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x54 // vcvttss2si rax, dword [rdx + 4*rdi + 84]
LONG $0x6ef9e1c4; BYTE $0xd8 // vmovq xmm3, rax
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x50 // vcvttss2si rax, dword [rdx + 4*rdi + 80]
LONG $0x6ef9e1c4; BYTE $0xe0 // vmovq xmm4, rax
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x6c // vcvttss2si rax, dword [rdx + 4*rdi + 108]
LONG $0x6ef9e1c4; BYTE $0xe8 // vmovq xmm5, rax
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x68 // vcvttss2si rax, dword [rdx + 4*rdi + 104]
LONG $0x6ef9e1c4; BYTE $0xf0 // vmovq xmm6, rax
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x64 // vcvttss2si rax, dword [rdx + 4*rdi + 100]
LONG $0x6ef9e1c4; BYTE $0xf8 // vmovq xmm7, rax
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x60 // vcvttss2si rax, dword [rdx + 4*rdi + 96]
LONG $0xdb6cd9c5 // vpunpcklqdq xmm3, xmm4, xmm3
LONG $0xe56cc9c5 // vpunpcklqdq xmm4, xmm6, xmm5
LONG $0x6ef9e1c4; BYTE $0xe8 // vmovq xmm5, rax
LONG $0xef6cd1c5 // vpunpcklqdq xmm5, xmm5, xmm7
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x7c // vcvttss2si rax, dword [rdx + 4*rdi + 124]
LONG $0x6ef9e1c4; BYTE $0xf0 // vmovq xmm6, rax
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x78 // vcvttss2si rax, dword [rdx + 4*rdi + 120]
LONG $0x6ef9e1c4; BYTE $0xf8 // vmovq xmm7, rax
LONG $0xf66cc1c5 // vpunpcklqdq xmm6, xmm7, xmm6
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x74 // vcvttss2si rax, dword [rdx + 4*rdi + 116]
LONG $0x6ef9e1c4; BYTE $0xf8 // vmovq xmm7, rax
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x70 // vcvttss2si rax, dword [rdx + 4*rdi + 112]
LONG $0x6ef9e1c4; BYTE $0xc0 // vmovq xmm0, rax
LONG $0xc76cf9c5 // vpunpcklqdq xmm0, xmm0, xmm7
QUAD $0x000090f98c7ffac5; BYTE $0x00 // vmovdqu oword [rcx + 8*rdi + 144], xmm1
QUAD $0x000080f9847f7ac5; BYTE $0x00 // vmovdqu oword [rcx + 8*rdi + 128], xmm8
QUAD $0x0000a0f99c7ffac5; BYTE $0x00 // vmovdqu oword [rcx + 8*rdi + 160], xmm3
QUAD $0x0000b0f9947ffac5; BYTE $0x00 // vmovdqu oword [rcx + 8*rdi + 176], xmm2
QUAD $0x0000c0f9ac7ffac5; BYTE $0x00 // vmovdqu oword [rcx + 8*rdi + 192], xmm5
QUAD $0x0000d0f9a47ffac5; BYTE $0x00 // vmovdqu oword [rcx + 8*rdi + 208], xmm4
QUAD $0x0000e0f9847ffac5; BYTE $0x00 // vmovdqu oword [rcx + 8*rdi + 224], xmm0
QUAD $0x0000f0f9b47ffac5; BYTE $0x00 // vmovdqu oword [rcx + 8*rdi + 240], xmm6
LONG $0x20c78348 // add rdi, 32
LONG $0x02c28349 // add r10, 2
JNE LBB0_666
JMP LBB0_1141
LBB0_676:
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_980
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_678:
LONG $0x257de2c4; WORD $0xba04 // vpmovsxdq ymm0, oword [rdx + 4*rdi]
LONG $0x257de2c4; WORD $0xba4c; BYTE $0x10 // vpmovsxdq ymm1, oword [rdx + 4*rdi + 16]
LONG $0x257de2c4; WORD $0xba54; BYTE $0x20 // vpmovsxdq ymm2, oword [rdx + 4*rdi + 32]
LONG $0x257de2c4; WORD $0xba5c; BYTE $0x30 // vpmovsxdq ymm3, oword [rdx + 4*rdi + 48]
LONG $0x047ffec5; BYTE $0xf9 // vmovdqu yword [rcx + 8*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20f9 // vmovdqu yword [rcx + 8*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40f9 // vmovdqu yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60f9 // vmovdqu yword [rcx + 8*rdi + 96], ymm3
LONG $0x257de2c4; WORD $0xba44; BYTE $0x40 // vpmovsxdq ymm0, oword [rdx + 4*rdi + 64]
LONG $0x257de2c4; WORD $0xba4c; BYTE $0x50 // vpmovsxdq ymm1, oword [rdx + 4*rdi + 80]
LONG $0x257de2c4; WORD $0xba54; BYTE $0x60 // vpmovsxdq ymm2, oword [rdx + 4*rdi + 96]
LONG $0x257de2c4; WORD $0xba5c; BYTE $0x70 // vpmovsxdq ymm3, oword [rdx + 4*rdi + 112]
QUAD $0x000080f9847ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 128], ymm0
QUAD $0x0000a0f98c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 160], ymm1
QUAD $0x0000c0f9947ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 192], ymm2
QUAD $0x0000e0f99c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 224], ymm3
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_678
JMP LBB0_981
LBB0_679:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xe0 // and esi, -32
LONG $0xe0468d48 // lea rax, [rsi - 32]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x05e8c149 // shr r8, 5
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
LBB0_681:
LONG $0x045bfcc5; BYTE $0xba // vcvtdq2ps ymm0, yword [rdx + 4*rdi]
LONG $0x4c5bfcc5; WORD $0x20ba // vcvtdq2ps ymm1, yword [rdx + 4*rdi + 32]
LONG $0x545bfcc5; WORD $0x40ba // vcvtdq2ps ymm2, yword [rdx + 4*rdi + 64]
LONG $0x5c5bfcc5; WORD $0x60ba // vcvtdq2ps ymm3, yword [rdx + 4*rdi + 96]
LONG $0x0411fcc5; BYTE $0xb9 // vmovups yword [rcx + 4*rdi], ymm0
LONG $0x4c11fcc5; WORD $0x20b9 // vmovups yword [rcx + 4*rdi + 32], ymm1
LONG $0x5411fcc5; WORD $0x40b9 // vmovups yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c11fcc5; WORD $0x60b9 // vmovups yword [rcx + 4*rdi + 96], ymm3
QUAD $0x000080ba845bfcc5; BYTE $0x00 // vcvtdq2ps ymm0, yword [rdx + 4*rdi + 128]
QUAD $0x0000a0ba8c5bfcc5; BYTE $0x00 // vcvtdq2ps ymm1, yword [rdx + 4*rdi + 160]
QUAD $0x0000c0ba945bfcc5; BYTE $0x00 // vcvtdq2ps ymm2, yword [rdx + 4*rdi + 192]
QUAD $0x0000e0ba9c5bfcc5; BYTE $0x00 // vcvtdq2ps ymm3, yword [rdx + 4*rdi + 224]
QUAD $0x000080b98411fcc5; BYTE $0x00 // vmovups yword [rcx + 4*rdi + 128], ymm0
QUAD $0x0000a0b98c11fcc5; BYTE $0x00 // vmovups yword [rcx + 4*rdi + 160], ymm1
QUAD $0x0000c0b99411fcc5; BYTE $0x00 // vmovups yword [rcx + 4*rdi + 192], ymm2
QUAD $0x0000e0b99c11fcc5; BYTE $0x00 // vmovups yword [rcx + 4*rdi + 224], ymm3
LONG $0x40c78348 // add rdi, 64
LONG $0x02c08348 // add rax, 2
JNE LBB0_681
JMP LBB0_986
LBB0_715:
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_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_717:
LONG $0x04e6fdc5; BYTE $0xfa // vcvttpd2dq xmm0, yword [rdx + 8*rdi]
LONG $0x4ce6fdc5; WORD $0x20fa // vcvttpd2dq xmm1, yword [rdx + 8*rdi + 32]
LONG $0x54e6fdc5; WORD $0x40fa // vcvttpd2dq xmm2, yword [rdx + 8*rdi + 64]
LONG $0x5ce6fdc5; WORD $0x60fa // vcvttpd2dq xmm3, yword [rdx + 8*rdi + 96]
LONG $0x0411f9c5; BYTE $0xb9 // vmovupd oword [rcx + 4*rdi], xmm0
LONG $0x4c11f9c5; WORD $0x10b9 // vmovupd oword [rcx + 4*rdi + 16], xmm1
LONG $0x5411f9c5; WORD $0x20b9 // vmovupd oword [rcx + 4*rdi + 32], xmm2
LONG $0x5c11f9c5; WORD $0x30b9 // vmovupd oword [rcx + 4*rdi + 48], xmm3
QUAD $0x000080fa84e6fdc5; BYTE $0x00 // vcvttpd2dq xmm0, yword [rdx + 8*rdi + 128]
QUAD $0x0000a0fa8ce6fdc5; BYTE $0x00 // vcvttpd2dq xmm1, yword [rdx + 8*rdi + 160]
QUAD $0x0000c0fa94e6fdc5; BYTE $0x00 // vcvttpd2dq xmm2, yword [rdx + 8*rdi + 192]
QUAD $0x0000e0fa9ce6fdc5; BYTE $0x00 // vcvttpd2dq xmm3, yword [rdx + 8*rdi + 224]
LONG $0x4411f9c5; WORD $0x40b9 // vmovupd oword [rcx + 4*rdi + 64], xmm0
LONG $0x4c11f9c5; WORD $0x50b9 // vmovupd oword [rcx + 4*rdi + 80], xmm1
LONG $0x5411f9c5; WORD $0x60b9 // vmovupd oword [rcx + 4*rdi + 96], xmm2
LONG $0x5c11f9c5; WORD $0x70b9 // vmovupd oword [rcx + 4*rdi + 112], xmm3
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_717
JMP LBB0_991
LBB0_721:
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_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_723:
LONG $0x0410f8c5; BYTE $0xfa // vmovups xmm0, oword [rdx + 8*rdi]
LONG $0x4c10f8c5; WORD $0x20fa // vmovups xmm1, oword [rdx + 8*rdi + 32]
LONG $0x5410f8c5; WORD $0x40fa // vmovups xmm2, oword [rdx + 8*rdi + 64]
LONG $0x5c10f8c5; WORD $0x60fa // vmovups xmm3, oword [rdx + 8*rdi + 96]
LONG $0x44c6f8c5; WORD $0x10fa; BYTE $0x88 // vshufps xmm0, xmm0, oword [rdx + 8*rdi + 16], 136
LONG $0x4cc6f0c5; WORD $0x30fa; BYTE $0x88 // vshufps xmm1, xmm1, oword [rdx + 8*rdi + 48], 136
LONG $0x54c6e8c5; WORD $0x50fa; BYTE $0x88 // vshufps xmm2, xmm2, oword [rdx + 8*rdi + 80], 136
LONG $0x5cc6e0c5; WORD $0x70fa; BYTE $0x88 // vshufps xmm3, xmm3, oword [rdx + 8*rdi + 112], 136
LONG $0x0411f8c5; BYTE $0xb9 // vmovups oword [rcx + 4*rdi], xmm0
LONG $0x4c11f8c5; WORD $0x10b9 // vmovups oword [rcx + 4*rdi + 16], xmm1
LONG $0x5411f8c5; WORD $0x20b9 // vmovups oword [rcx + 4*rdi + 32], xmm2
LONG $0x5c11f8c5; WORD $0x30b9 // vmovups oword [rcx + 4*rdi + 48], xmm3
QUAD $0x000080fa8410f8c5; BYTE $0x00 // vmovups xmm0, oword [rdx + 8*rdi + 128]
QUAD $0x0000a0fa8c10f8c5; BYTE $0x00 // vmovups xmm1, oword [rdx + 8*rdi + 160]
QUAD $0x0000c0fa9410f8c5; BYTE $0x00 // vmovups xmm2, oword [rdx + 8*rdi + 192]
QUAD $0x0000e0fa9c10f8c5; BYTE $0x00 // vmovups xmm3, oword [rdx + 8*rdi + 224]
QUAD $0x000090fa84c6f8c5; WORD $0x8800 // vshufps xmm0, xmm0, oword [rdx + 8*rdi + 144], 136
QUAD $0x0000b0fa8cc6f0c5; WORD $0x8800 // vshufps xmm1, xmm1, oword [rdx + 8*rdi + 176], 136
QUAD $0x0000d0fa94c6e8c5; WORD $0x8800 // vshufps xmm2, xmm2, oword [rdx + 8*rdi + 208], 136
QUAD $0x0000f0fa9cc6e0c5; WORD $0x8800 // vshufps xmm3, xmm3, oword [rdx + 8*rdi + 240], 136
LONG $0x4411f8c5; WORD $0x40b9 // vmovups oword [rcx + 4*rdi + 64], xmm0
LONG $0x4c11f8c5; WORD $0x50b9 // vmovups oword [rcx + 4*rdi + 80], xmm1
LONG $0x5411f8c5; WORD $0x60b9 // vmovups oword [rcx + 4*rdi + 96], xmm2
LONG $0x5c11f8c5; WORD $0x70b9 // vmovups oword [rcx + 4*rdi + 112], xmm3
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_723
JMP LBB0_996
LBB0_724:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xe0 // and esi, -32
LONG $0xe0468d48 // lea rax, [rsi - 32]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x05e8c149 // shr r8, 5
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_726:
LONG $0x337de2c4; WORD $0x7a04 // vpmovzxwd ymm0, oword [rdx + 2*rdi]
LONG $0x337de2c4; WORD $0x7a4c; BYTE $0x10 // vpmovzxwd ymm1, oword [rdx + 2*rdi + 16]
LONG $0x337de2c4; WORD $0x7a54; BYTE $0x20 // vpmovzxwd ymm2, oword [rdx + 2*rdi + 32]
LONG $0x337de2c4; WORD $0x7a5c; BYTE $0x30 // vpmovzxwd ymm3, oword [rdx + 2*rdi + 48]
LONG $0x047ffec5; BYTE $0xb9 // vmovdqu yword [rcx + 4*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20b9 // vmovdqu yword [rcx + 4*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40b9 // vmovdqu yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60b9 // vmovdqu yword [rcx + 4*rdi + 96], ymm3
LONG $0x337de2c4; WORD $0x7a44; BYTE $0x40 // vpmovzxwd ymm0, oword [rdx + 2*rdi + 64]
LONG $0x337de2c4; WORD $0x7a4c; BYTE $0x50 // vpmovzxwd ymm1, oword [rdx + 2*rdi + 80]
LONG $0x337de2c4; WORD $0x7a54; BYTE $0x60 // vpmovzxwd ymm2, oword [rdx + 2*rdi + 96]
LONG $0x337de2c4; WORD $0x7a5c; BYTE $0x70 // vpmovzxwd ymm3, oword [rdx + 2*rdi + 112]
QUAD $0x000080b9847ffec5; BYTE $0x00 // vmovdqu yword [rcx + 4*rdi + 128], ymm0
QUAD $0x0000a0b98c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 4*rdi + 160], ymm1
QUAD $0x0000c0b9947ffec5; BYTE $0x00 // vmovdqu yword [rcx + 4*rdi + 192], ymm2
QUAD $0x0000e0b99c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 4*rdi + 224], ymm3
LONG $0x40c78348 // add rdi, 64
LONG $0x02c08348 // add rax, 2
JNE LBB0_726
JMP LBB0_1001
LBB0_727:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xe0 // and esi, -32
LONG $0xe0468d48 // lea rax, [rsi - 32]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x05e8c149 // shr r8, 5
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_729:
LONG $0x237de2c4; WORD $0x7a04 // vpmovsxwd ymm0, oword [rdx + 2*rdi]
LONG $0x237de2c4; WORD $0x7a4c; BYTE $0x10 // vpmovsxwd ymm1, oword [rdx + 2*rdi + 16]
LONG $0x237de2c4; WORD $0x7a54; BYTE $0x20 // vpmovsxwd ymm2, oword [rdx + 2*rdi + 32]
LONG $0x237de2c4; WORD $0x7a5c; BYTE $0x30 // vpmovsxwd ymm3, oword [rdx + 2*rdi + 48]
LONG $0x047ffec5; BYTE $0xb9 // vmovdqu yword [rcx + 4*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20b9 // vmovdqu yword [rcx + 4*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40b9 // vmovdqu yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60b9 // vmovdqu yword [rcx + 4*rdi + 96], ymm3
LONG $0x237de2c4; WORD $0x7a44; BYTE $0x40 // vpmovsxwd ymm0, oword [rdx + 2*rdi + 64]
LONG $0x237de2c4; WORD $0x7a4c; BYTE $0x50 // vpmovsxwd ymm1, oword [rdx + 2*rdi + 80]
LONG $0x237de2c4; WORD $0x7a54; BYTE $0x60 // vpmovsxwd ymm2, oword [rdx + 2*rdi + 96]
LONG $0x237de2c4; WORD $0x7a5c; BYTE $0x70 // vpmovsxwd ymm3, oword [rdx + 2*rdi + 112]
QUAD $0x000080b9847ffec5; BYTE $0x00 // vmovdqu yword [rcx + 4*rdi + 128], ymm0
QUAD $0x0000a0b98c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 4*rdi + 160], ymm1
QUAD $0x0000c0b9947ffec5; BYTE $0x00 // vmovdqu yword [rcx + 4*rdi + 192], ymm2
QUAD $0x0000e0b99c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 4*rdi + 224], ymm3
LONG $0x40c78348 // add rdi, 64
LONG $0x02c08348 // add rax, 2
JNE LBB0_729
JMP LBB0_1006
LBB0_730:
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_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_732:
LONG $0x0410f8c5; BYTE $0xfa // vmovups xmm0, oword [rdx + 8*rdi]
LONG $0x4c10f8c5; WORD $0x20fa // vmovups xmm1, oword [rdx + 8*rdi + 32]
LONG $0x5410f8c5; WORD $0x40fa // vmovups xmm2, oword [rdx + 8*rdi + 64]
LONG $0x5c10f8c5; WORD $0x60fa // vmovups xmm3, oword [rdx + 8*rdi + 96]
LONG $0x44c6f8c5; WORD $0x10fa; BYTE $0x88 // vshufps xmm0, xmm0, oword [rdx + 8*rdi + 16], 136
LONG $0x4cc6f0c5; WORD $0x30fa; BYTE $0x88 // vshufps xmm1, xmm1, oword [rdx + 8*rdi + 48], 136
LONG $0x54c6e8c5; WORD $0x50fa; BYTE $0x88 // vshufps xmm2, xmm2, oword [rdx + 8*rdi + 80], 136
LONG $0x5cc6e0c5; WORD $0x70fa; BYTE $0x88 // vshufps xmm3, xmm3, oword [rdx + 8*rdi + 112], 136
LONG $0x0411f8c5; BYTE $0xb9 // vmovups oword [rcx + 4*rdi], xmm0
LONG $0x4c11f8c5; WORD $0x10b9 // vmovups oword [rcx + 4*rdi + 16], xmm1
LONG $0x5411f8c5; WORD $0x20b9 // vmovups oword [rcx + 4*rdi + 32], xmm2
LONG $0x5c11f8c5; WORD $0x30b9 // vmovups oword [rcx + 4*rdi + 48], xmm3
QUAD $0x000080fa8410f8c5; BYTE $0x00 // vmovups xmm0, oword [rdx + 8*rdi + 128]
QUAD $0x0000a0fa8c10f8c5; BYTE $0x00 // vmovups xmm1, oword [rdx + 8*rdi + 160]
QUAD $0x0000c0fa9410f8c5; BYTE $0x00 // vmovups xmm2, oword [rdx + 8*rdi + 192]
QUAD $0x0000e0fa9c10f8c5; BYTE $0x00 // vmovups xmm3, oword [rdx + 8*rdi + 224]
QUAD $0x000090fa84c6f8c5; WORD $0x8800 // vshufps xmm0, xmm0, oword [rdx + 8*rdi + 144], 136
QUAD $0x0000b0fa8cc6f0c5; WORD $0x8800 // vshufps xmm1, xmm1, oword [rdx + 8*rdi + 176], 136
QUAD $0x0000d0fa94c6e8c5; WORD $0x8800 // vshufps xmm2, xmm2, oword [rdx + 8*rdi + 208], 136
QUAD $0x0000f0fa9cc6e0c5; WORD $0x8800 // vshufps xmm3, xmm3, oword [rdx + 8*rdi + 240], 136
LONG $0x4411f8c5; WORD $0x40b9 // vmovups oword [rcx + 4*rdi + 64], xmm0
LONG $0x4c11f8c5; WORD $0x50b9 // vmovups oword [rcx + 4*rdi + 80], xmm1
LONG $0x5411f8c5; WORD $0x60b9 // vmovups oword [rcx + 4*rdi + 96], xmm2
LONG $0x5c11f8c5; WORD $0x70b9 // vmovups oword [rcx + 4*rdi + 112], xmm3
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_732
JMP LBB0_1011
LBB0_733:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xe0 // and esi, -32
LONG $0xe0468d48 // lea rax, [rsi - 32]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x05e8c149 // shr r8, 5
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_735:
LONG $0x045bfec5; BYTE $0xba // vcvttps2dq ymm0, yword [rdx + 4*rdi]
LONG $0x4c5bfec5; WORD $0x20ba // vcvttps2dq ymm1, yword [rdx + 4*rdi + 32]
LONG $0x545bfec5; WORD $0x40ba // vcvttps2dq ymm2, yword [rdx + 4*rdi + 64]
LONG $0x5c5bfec5; WORD $0x60ba // vcvttps2dq ymm3, yword [rdx + 4*rdi + 96]
LONG $0x0411fcc5; BYTE $0xb9 // vmovups yword [rcx + 4*rdi], ymm0
LONG $0x4c11fcc5; WORD $0x20b9 // vmovups yword [rcx + 4*rdi + 32], ymm1
LONG $0x5411fcc5; WORD $0x40b9 // vmovups yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c11fcc5; WORD $0x60b9 // vmovups yword [rcx + 4*rdi + 96], ymm3
QUAD $0x000080ba845bfec5; BYTE $0x00 // vcvttps2dq ymm0, yword [rdx + 4*rdi + 128]
QUAD $0x0000a0ba8c5bfec5; BYTE $0x00 // vcvttps2dq ymm1, yword [rdx + 4*rdi + 160]
QUAD $0x0000c0ba945bfec5; BYTE $0x00 // vcvttps2dq ymm2, yword [rdx + 4*rdi + 192]
QUAD $0x0000e0ba9c5bfec5; BYTE $0x00 // vcvttps2dq ymm3, yword [rdx + 4*rdi + 224]
QUAD $0x000080b98411fdc5; BYTE $0x00 // vmovupd yword [rcx + 4*rdi + 128], ymm0
QUAD $0x0000a0b98c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 4*rdi + 160], ymm1
QUAD $0x0000c0b99411fdc5; BYTE $0x00 // vmovupd yword [rcx + 4*rdi + 192], ymm2
QUAD $0x0000e0b99c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 4*rdi + 224], ymm3
LONG $0x40c78348 // add rdi, 64
LONG $0x02c08348 // add rax, 2
JNE LBB0_735
JMP LBB0_1016
LBB0_742:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xe0 // and esi, -32
LONG $0xe0468d48 // lea rax, [rsi - 32]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x05e8c149 // shr r8, 5
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1185
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_744:
LONG $0x0410fcc5; BYTE $0xba // vmovups ymm0, yword [rdx + 4*rdi]
LONG $0x4c10fcc5; WORD $0x20ba // vmovups ymm1, yword [rdx + 4*rdi + 32]
LONG $0x5410fcc5; WORD $0x40ba // vmovups ymm2, yword [rdx + 4*rdi + 64]
LONG $0x5c10fcc5; WORD $0x60ba // vmovups ymm3, yword [rdx + 4*rdi + 96]
LONG $0x0411fcc5; BYTE $0xb9 // vmovups yword [rcx + 4*rdi], ymm0
LONG $0x4c11fcc5; WORD $0x20b9 // vmovups yword [rcx + 4*rdi + 32], ymm1
LONG $0x5411fcc5; WORD $0x40b9 // vmovups yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c11fcc5; WORD $0x60b9 // vmovups yword [rcx + 4*rdi + 96], ymm3
QUAD $0x000080ba8410fdc5; BYTE $0x00 // vmovupd ymm0, yword [rdx + 4*rdi + 128]
QUAD $0x0000a0ba8c10fdc5; BYTE $0x00 // vmovupd ymm1, yword [rdx + 4*rdi + 160]
QUAD $0x0000c0ba9410fdc5; BYTE $0x00 // vmovupd ymm2, yword [rdx + 4*rdi + 192]
QUAD $0x0000e0ba9c10fdc5; BYTE $0x00 // vmovupd ymm3, yword [rdx + 4*rdi + 224]
QUAD $0x000080b98411fdc5; BYTE $0x00 // vmovupd yword [rcx + 4*rdi + 128], ymm0
QUAD $0x0000a0b98c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 4*rdi + 160], ymm1
QUAD $0x0000c0b99411fdc5; BYTE $0x00 // vmovupd yword [rcx + 4*rdi + 192], ymm2
QUAD $0x0000e0b99c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 4*rdi + 224], ymm3
LONG $0x40c78348 // add rdi, 64
LONG $0x02c08348 // add rax, 2
JNE LBB0_744
JMP LBB0_1186
LBB0_745:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xe0 // and esi, -32
LONG $0xe0468d48 // lea rax, [rsi - 32]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x05e8c149 // shr r8, 5
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1193
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_747:
LONG $0x217de2c4; WORD $0x3a04 // vpmovsxbd ymm0, qword [rdx + rdi]
LONG $0x217de2c4; WORD $0x3a4c; BYTE $0x08 // vpmovsxbd ymm1, qword [rdx + rdi + 8]
LONG $0x217de2c4; WORD $0x3a54; BYTE $0x10 // vpmovsxbd ymm2, qword [rdx + rdi + 16]
LONG $0x217de2c4; WORD $0x3a5c; BYTE $0x18 // vpmovsxbd ymm3, qword [rdx + rdi + 24]
LONG $0x047ffec5; BYTE $0xb9 // vmovdqu yword [rcx + 4*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20b9 // vmovdqu yword [rcx + 4*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40b9 // vmovdqu yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60b9 // vmovdqu yword [rcx + 4*rdi + 96], ymm3
LONG $0x217de2c4; WORD $0x3a44; BYTE $0x20 // vpmovsxbd ymm0, qword [rdx + rdi + 32]
LONG $0x217de2c4; WORD $0x3a4c; BYTE $0x28 // vpmovsxbd ymm1, qword [rdx + rdi + 40]
LONG $0x217de2c4; WORD $0x3a54; BYTE $0x30 // vpmovsxbd ymm2, qword [rdx + rdi + 48]
LONG $0x217de2c4; WORD $0x3a5c; BYTE $0x38 // vpmovsxbd ymm3, qword [rdx + rdi + 56]
QUAD $0x000080b9847ffec5; BYTE $0x00 // vmovdqu yword [rcx + 4*rdi + 128], ymm0
QUAD $0x0000a0b98c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 4*rdi + 160], ymm1
QUAD $0x0000c0b9947ffec5; BYTE $0x00 // vmovdqu yword [rcx + 4*rdi + 192], ymm2
QUAD $0x0000e0b99c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 4*rdi + 224], ymm3
LONG $0x40c78348 // add rdi, 64
LONG $0x02c08348 // add rax, 2
JNE LBB0_747
JMP LBB0_1194
LBB0_748:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xe0 // and esi, -32
LONG $0xe0468d48 // lea rax, [rsi - 32]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x05e8c149 // shr r8, 5
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1201
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_750:
LONG $0x317de2c4; WORD $0x3a04 // vpmovzxbd ymm0, qword [rdx + rdi]
LONG $0x317de2c4; WORD $0x3a4c; BYTE $0x08 // vpmovzxbd ymm1, qword [rdx + rdi + 8]
LONG $0x317de2c4; WORD $0x3a54; BYTE $0x10 // vpmovzxbd ymm2, qword [rdx + rdi + 16]
LONG $0x317de2c4; WORD $0x3a5c; BYTE $0x18 // vpmovzxbd ymm3, qword [rdx + rdi + 24]
LONG $0x047ffec5; BYTE $0xb9 // vmovdqu yword [rcx + 4*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20b9 // vmovdqu yword [rcx + 4*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40b9 // vmovdqu yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60b9 // vmovdqu yword [rcx + 4*rdi + 96], ymm3
LONG $0x317de2c4; WORD $0x3a44; BYTE $0x20 // vpmovzxbd ymm0, qword [rdx + rdi + 32]
LONG $0x317de2c4; WORD $0x3a4c; BYTE $0x28 // vpmovzxbd ymm1, qword [rdx + rdi + 40]
LONG $0x317de2c4; WORD $0x3a54; BYTE $0x30 // vpmovzxbd ymm2, qword [rdx + rdi + 48]
LONG $0x317de2c4; WORD $0x3a5c; BYTE $0x38 // vpmovzxbd ymm3, qword [rdx + rdi + 56]
QUAD $0x000080b9847ffec5; BYTE $0x00 // vmovdqu yword [rcx + 4*rdi + 128], ymm0
QUAD $0x0000a0b98c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 4*rdi + 160], ymm1
QUAD $0x0000c0b9947ffec5; BYTE $0x00 // vmovdqu yword [rcx + 4*rdi + 192], ymm2
QUAD $0x0000e0b99c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 4*rdi + 224], ymm3
LONG $0x40c78348 // add rdi, 64
LONG $0x02c08348 // add rax, 2
JNE LBB0_750
JMP LBB0_1202
LBB0_751:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xe0 // and esi, -32
LONG $0xe0468d48 // lea rax, [rsi - 32]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x05e8c149 // shr r8, 5
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1209
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_753:
LONG $0x0410fcc5; BYTE $0xba // vmovups ymm0, yword [rdx + 4*rdi]
LONG $0x4c10fcc5; WORD $0x20ba // vmovups ymm1, yword [rdx + 4*rdi + 32]
LONG $0x5410fcc5; WORD $0x40ba // vmovups ymm2, yword [rdx + 4*rdi + 64]
LONG $0x5c10fcc5; WORD $0x60ba // vmovups ymm3, yword [rdx + 4*rdi + 96]
LONG $0x0411fcc5; BYTE $0xb9 // vmovups yword [rcx + 4*rdi], ymm0
LONG $0x4c11fcc5; WORD $0x20b9 // vmovups yword [rcx + 4*rdi + 32], ymm1
LONG $0x5411fcc5; WORD $0x40b9 // vmovups yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c11fcc5; WORD $0x60b9 // vmovups yword [rcx + 4*rdi + 96], ymm3
QUAD $0x000080ba8410fdc5; BYTE $0x00 // vmovupd ymm0, yword [rdx + 4*rdi + 128]
QUAD $0x0000a0ba8c10fdc5; BYTE $0x00 // vmovupd ymm1, yword [rdx + 4*rdi + 160]
QUAD $0x0000c0ba9410fdc5; BYTE $0x00 // vmovupd ymm2, yword [rdx + 4*rdi + 192]
QUAD $0x0000e0ba9c10fdc5; BYTE $0x00 // vmovupd ymm3, yword [rdx + 4*rdi + 224]
QUAD $0x000080b98411fdc5; BYTE $0x00 // vmovupd yword [rcx + 4*rdi + 128], ymm0
QUAD $0x0000a0b98c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 4*rdi + 160], ymm1
QUAD $0x0000c0b99411fdc5; BYTE $0x00 // vmovupd yword [rcx + 4*rdi + 192], ymm2
QUAD $0x0000e0b99c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 4*rdi + 224], ymm3
LONG $0x40c78348 // add rdi, 64
LONG $0x02c08348 // add rax, 2
JNE LBB0_753
JMP LBB0_1210
LBB0_754:
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_1217
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_756:
LONG $0x0410fcc5; BYTE $0xfa // vmovups ymm0, yword [rdx + 8*rdi]
LONG $0x4c10fcc5; WORD $0x20fa // vmovups ymm1, yword [rdx + 8*rdi + 32]
LONG $0x5410fcc5; WORD $0x40fa // vmovups ymm2, yword [rdx + 8*rdi + 64]
LONG $0x5c10fcc5; WORD $0x60fa // vmovups ymm3, yword [rdx + 8*rdi + 96]
LONG $0x0411fcc5; BYTE $0xf9 // vmovups yword [rcx + 8*rdi], ymm0
LONG $0x4c11fcc5; WORD $0x20f9 // vmovups yword [rcx + 8*rdi + 32], ymm1
LONG $0x5411fcc5; WORD $0x40f9 // vmovups yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c11fcc5; WORD $0x60f9 // vmovups yword [rcx + 8*rdi + 96], ymm3
QUAD $0x000080fa8410fdc5; BYTE $0x00 // vmovupd ymm0, yword [rdx + 8*rdi + 128]
QUAD $0x0000a0fa8c10fdc5; BYTE $0x00 // vmovupd ymm1, yword [rdx + 8*rdi + 160]
QUAD $0x0000c0fa9410fdc5; BYTE $0x00 // vmovupd ymm2, yword [rdx + 8*rdi + 192]
QUAD $0x0000e0fa9c10fdc5; BYTE $0x00 // vmovupd ymm3, yword [rdx + 8*rdi + 224]
QUAD $0x000080f98411fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 128], ymm0
QUAD $0x0000a0f98c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 160], ymm1
QUAD $0x0000c0f99411fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 192], ymm2
QUAD $0x0000e0f99c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 224], ymm3
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_756
JMP LBB0_1218
LBB0_757:
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_1225
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_759:
LONG $0x2179e2c4; WORD $0x3a04 // vpmovsxbd xmm0, dword [rdx + rdi]
LONG $0x2179e2c4; WORD $0x3a4c; BYTE $0x04 // vpmovsxbd xmm1, dword [rdx + rdi + 4]
LONG $0x2179e2c4; WORD $0x3a54; BYTE $0x08 // vpmovsxbd xmm2, dword [rdx + rdi + 8]
LONG $0x2179e2c4; WORD $0x3a5c; BYTE $0x0c // vpmovsxbd xmm3, dword [rdx + rdi + 12]
LONG $0xc0e6fec5 // vcvtdq2pd ymm0, xmm0
LONG $0xc9e6fec5 // vcvtdq2pd ymm1, xmm1
LONG $0xd2e6fec5 // vcvtdq2pd ymm2, xmm2
LONG $0xdbe6fec5 // vcvtdq2pd ymm3, xmm3
LONG $0x0411fcc5; BYTE $0xf9 // vmovups yword [rcx + 8*rdi], ymm0
LONG $0x4c11fcc5; WORD $0x20f9 // vmovups yword [rcx + 8*rdi + 32], ymm1
LONG $0x5411fcc5; WORD $0x40f9 // vmovups yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c11fcc5; WORD $0x60f9 // vmovups yword [rcx + 8*rdi + 96], ymm3
LONG $0x2179e2c4; WORD $0x3a44; BYTE $0x10 // vpmovsxbd xmm0, dword [rdx + rdi + 16]
LONG $0x2179e2c4; WORD $0x3a4c; BYTE $0x14 // vpmovsxbd xmm1, dword [rdx + rdi + 20]
LONG $0x2179e2c4; WORD $0x3a54; BYTE $0x18 // vpmovsxbd xmm2, dword [rdx + rdi + 24]
LONG $0x2179e2c4; WORD $0x3a5c; BYTE $0x1c // vpmovsxbd xmm3, dword [rdx + rdi + 28]
LONG $0xc0e6fec5 // vcvtdq2pd ymm0, xmm0
LONG $0xc9e6fec5 // vcvtdq2pd ymm1, xmm1
LONG $0xd2e6fec5 // vcvtdq2pd ymm2, xmm2
LONG $0xdbe6fec5 // vcvtdq2pd ymm3, xmm3
QUAD $0x000080f98411fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 128], ymm0
QUAD $0x0000a0f98c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 160], ymm1
QUAD $0x0000c0f99411fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 192], ymm2
QUAD $0x0000e0f99c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 224], ymm3
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_759
JMP LBB0_1226
LBB0_760:
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_1233
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_762:
LONG $0x3179e2c4; WORD $0x3a04 // vpmovzxbd xmm0, dword [rdx + rdi]
LONG $0x3179e2c4; WORD $0x3a4c; BYTE $0x04 // vpmovzxbd xmm1, dword [rdx + rdi + 4]
LONG $0x3179e2c4; WORD $0x3a54; BYTE $0x08 // vpmovzxbd xmm2, dword [rdx + rdi + 8]
LONG $0x3179e2c4; WORD $0x3a5c; BYTE $0x0c // vpmovzxbd xmm3, dword [rdx + rdi + 12]
LONG $0xc0e6fec5 // vcvtdq2pd ymm0, xmm0
LONG $0xc9e6fec5 // vcvtdq2pd ymm1, xmm1
LONG $0xd2e6fec5 // vcvtdq2pd ymm2, xmm2
LONG $0xdbe6fec5 // vcvtdq2pd ymm3, xmm3
LONG $0x0411fcc5; BYTE $0xf9 // vmovups yword [rcx + 8*rdi], ymm0
LONG $0x4c11fcc5; WORD $0x20f9 // vmovups yword [rcx + 8*rdi + 32], ymm1
LONG $0x5411fcc5; WORD $0x40f9 // vmovups yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c11fcc5; WORD $0x60f9 // vmovups yword [rcx + 8*rdi + 96], ymm3
LONG $0x3179e2c4; WORD $0x3a44; BYTE $0x10 // vpmovzxbd xmm0, dword [rdx + rdi + 16]
LONG $0x3179e2c4; WORD $0x3a4c; BYTE $0x14 // vpmovzxbd xmm1, dword [rdx + rdi + 20]
LONG $0x3179e2c4; WORD $0x3a54; BYTE $0x18 // vpmovzxbd xmm2, dword [rdx + rdi + 24]
LONG $0x3179e2c4; WORD $0x3a5c; BYTE $0x1c // vpmovzxbd xmm3, dword [rdx + rdi + 28]
LONG $0xc0e6fec5 // vcvtdq2pd ymm0, xmm0
LONG $0xc9e6fec5 // vcvtdq2pd ymm1, xmm1
LONG $0xd2e6fec5 // vcvtdq2pd ymm2, xmm2
LONG $0xdbe6fec5 // vcvtdq2pd ymm3, xmm3
QUAD $0x000080f98411fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 128], ymm0
QUAD $0x0000a0f98c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 160], ymm1
QUAD $0x0000c0f99411fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 192], ymm2
QUAD $0x0000e0f99c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 224], ymm3
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_762
JMP LBB0_1234
LBB0_763:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xe0 // and esi, -32
LONG $0xe0468d48 // lea rax, [rsi - 32]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x05e8c149 // shr r8, 5
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1241
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LONG $0x456ff9c5; BYTE $0x70 // vmovdqa xmm0, oword 112[rbp] /* [rip + .LCPI0_12] */
LBB0_765:
LONG $0x0c6ffac5; BYTE $0xba // vmovdqu xmm1, oword [rdx + 4*rdi]
LONG $0x546ffac5; WORD $0x10ba // vmovdqu xmm2, oword [rdx + 4*rdi + 16]
LONG $0x5c6ffac5; WORD $0x20ba // vmovdqu xmm3, oword [rdx + 4*rdi + 32]
LONG $0x646ffac5; WORD $0x30ba // vmovdqu xmm4, oword [rdx + 4*rdi + 48]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
LONG $0x0071e2c4; BYTE $0xc8 // vpshufb xmm1, xmm1, xmm0
LONG $0xca62f1c5 // vpunpckldq xmm1, xmm1, xmm2
LONG $0x0059e2c4; BYTE $0xd0 // vpshufb xmm2, xmm4, xmm0
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd262e1c5 // vpunpckldq xmm2, xmm3, xmm2
LONG $0x5c6ffac5; WORD $0x50ba // vmovdqu xmm3, oword [rdx + 4*rdi + 80]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0x646ffac5; WORD $0x40ba // vmovdqu xmm4, oword [rdx + 4*rdi + 64]
LONG $0x0059e2c4; BYTE $0xe0 // vpshufb xmm4, xmm4, xmm0
LONG $0xdb62d9c5 // vpunpckldq xmm3, xmm4, xmm3
LONG $0x646ffac5; WORD $0x70ba // vmovdqu xmm4, oword [rdx + 4*rdi + 112]
LONG $0x0059e2c4; BYTE $0xe0 // vpshufb xmm4, xmm4, xmm0
LONG $0x6c6ffac5; WORD $0x60ba // vmovdqu xmm5, oword [rdx + 4*rdi + 96]
LONG $0x0051e2c4; BYTE $0xe8 // vpshufb xmm5, xmm5, xmm0
LONG $0xe462d1c5 // vpunpckldq xmm4, xmm5, xmm4
LONG $0x3865e3c4; WORD $0x01dc // vinserti128 ymm3, ymm3, xmm4, 1
LONG $0x3875e3c4; WORD $0x01ca // vinserti128 ymm1, ymm1, xmm2, 1
LONG $0xcb6cf5c5 // vpunpcklqdq ymm1, ymm1, ymm3
LONG $0x00fde3c4; WORD $0xd8c9 // vpermq ymm1, ymm1, 216
LONG $0x0c7ffec5; BYTE $0x39 // vmovdqu yword [rcx + rdi], ymm1
QUAD $0x000080ba8c6ffac5; BYTE $0x00 // vmovdqu xmm1, oword [rdx + 4*rdi + 128]
QUAD $0x000090ba946ffac5; BYTE $0x00 // vmovdqu xmm2, oword [rdx + 4*rdi + 144]
QUAD $0x0000a0ba9c6ffac5; BYTE $0x00 // vmovdqu xmm3, oword [rdx + 4*rdi + 160]
QUAD $0x0000b0baa46ffac5; BYTE $0x00 // vmovdqu xmm4, oword [rdx + 4*rdi + 176]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
LONG $0x0071e2c4; BYTE $0xc8 // vpshufb xmm1, xmm1, xmm0
LONG $0xca62f1c5 // vpunpckldq xmm1, xmm1, xmm2
LONG $0x0059e2c4; BYTE $0xd0 // vpshufb xmm2, xmm4, xmm0
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd262e1c5 // vpunpckldq xmm2, xmm3, xmm2
QUAD $0x0000d0ba9c6ffac5; BYTE $0x00 // vmovdqu xmm3, oword [rdx + 4*rdi + 208]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
QUAD $0x0000c0baa46ffac5; BYTE $0x00 // vmovdqu xmm4, oword [rdx + 4*rdi + 192]
LONG $0x0059e2c4; BYTE $0xe0 // vpshufb xmm4, xmm4, xmm0
LONG $0xdb62d9c5 // vpunpckldq xmm3, xmm4, xmm3
QUAD $0x0000f0baa46ffac5; BYTE $0x00 // vmovdqu xmm4, oword [rdx + 4*rdi + 240]
LONG $0x0059e2c4; BYTE $0xe0 // vpshufb xmm4, xmm4, xmm0
QUAD $0x0000e0baac6ffac5; BYTE $0x00 // vmovdqu xmm5, oword [rdx + 4*rdi + 224]
LONG $0x0051e2c4; BYTE $0xe8 // vpshufb xmm5, xmm5, xmm0
LONG $0xe462d1c5 // vpunpckldq xmm4, xmm5, xmm4
LONG $0x3865e3c4; WORD $0x01dc // vinserti128 ymm3, ymm3, xmm4, 1
LONG $0x3875e3c4; WORD $0x01ca // vinserti128 ymm1, ymm1, xmm2, 1
LONG $0xcb6cf5c5 // vpunpcklqdq ymm1, ymm1, ymm3
LONG $0x00fde3c4; WORD $0xd8c9 // vpermq ymm1, ymm1, 216
LONG $0x4c7ffec5; WORD $0x2039 // vmovdqu yword [rcx + rdi + 32], ymm1
LONG $0x40c78348 // add rdi, 64
LONG $0x02c08348 // add rax, 2
JNE LBB0_765
JMP LBB0_1242
LBB0_766:
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_1249
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 $0x04e6fdc5; BYTE $0xfa // vcvttpd2dq xmm0, yword [rdx + 8*rdi]
LONG $0xc06bf9c5 // vpackssdw xmm0, xmm0, xmm0
LONG $0x4ce6fdc5; WORD $0x20fa // vcvttpd2dq xmm1, yword [rdx + 8*rdi + 32]
LONG $0xc063f9c5 // vpacksswb xmm0, xmm0, xmm0
LONG $0xc96bf1c5 // vpackssdw xmm1, xmm1, xmm1
LONG $0xc963f1c5 // vpacksswb xmm1, xmm1, xmm1
LONG $0xc162f9c5 // vpunpckldq xmm0, xmm0, xmm1
LONG $0x4ce6fdc5; WORD $0x40fa // vcvttpd2dq xmm1, yword [rdx + 8*rdi + 64]
LONG $0xc96bf1c5 // vpackssdw xmm1, xmm1, xmm1
LONG $0xc963f1c5 // vpacksswb xmm1, xmm1, xmm1
LONG $0x54e6fdc5; WORD $0x60fa // vcvttpd2dq xmm2, yword [rdx + 8*rdi + 96]
LONG $0xd26be9c5 // vpackssdw xmm2, xmm2, xmm2
LONG $0xd263e9c5 // vpacksswb xmm2, xmm2, xmm2
LONG $0xca62f1c5 // vpunpckldq xmm1, xmm1, xmm2
LONG $0xc16cf9c5 // vpunpcklqdq xmm0, xmm0, xmm1
LONG $0x047ffac5; BYTE $0x39 // vmovdqu oword [rcx + rdi], xmm0
QUAD $0x000080fa84e6fdc5; BYTE $0x00 // vcvttpd2dq xmm0, yword [rdx + 8*rdi + 128]
QUAD $0x0000a0fa8ce6fdc5; BYTE $0x00 // vcvttpd2dq xmm1, yword [rdx + 8*rdi + 160]
LONG $0xc06bf9c5 // vpackssdw xmm0, xmm0, xmm0
LONG $0xc063f9c5 // vpacksswb xmm0, xmm0, xmm0
LONG $0xc96bf1c5 // vpackssdw xmm1, xmm1, xmm1
LONG $0xc963f1c5 // vpacksswb xmm1, xmm1, xmm1
LONG $0xc162f9c5 // vpunpckldq xmm0, xmm0, xmm1
QUAD $0x0000c0fa8ce6fdc5; BYTE $0x00 // vcvttpd2dq xmm1, yword [rdx + 8*rdi + 192]
LONG $0xc96bf1c5 // vpackssdw xmm1, xmm1, xmm1
QUAD $0x0000e0fa94e6fdc5; BYTE $0x00 // vcvttpd2dq xmm2, yword [rdx + 8*rdi + 224]
LONG $0xc963f1c5 // vpacksswb xmm1, xmm1, xmm1
LONG $0xd26be9c5 // vpackssdw xmm2, xmm2, xmm2
LONG $0xd263e9c5 // vpacksswb xmm2, xmm2, xmm2
LONG $0xca62f1c5 // vpunpckldq xmm1, xmm1, xmm2
LONG $0xc16cf9c5 // vpunpcklqdq xmm0, xmm0, xmm1
LONG $0x447ffac5; WORD $0x1039 // vmovdqu oword [rcx + rdi + 16], xmm0
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_768
JMP LBB0_1250
LBB0_769:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0x80 // and esi, -128
LONG $0x80468d48 // lea rax, [rsi - 128]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x07e8c149 // shr r8, 7
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1257
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_771:
LONG $0x0410fcc5; BYTE $0x3a // vmovups ymm0, yword [rdx + rdi]
LONG $0x4c10fcc5; WORD $0x203a // vmovups ymm1, yword [rdx + rdi + 32]
LONG $0x5410fcc5; WORD $0x403a // vmovups ymm2, yword [rdx + rdi + 64]
LONG $0x5c10fcc5; WORD $0x603a // vmovups ymm3, yword [rdx + rdi + 96]
LONG $0x0411fcc5; BYTE $0x39 // vmovups yword [rcx + rdi], ymm0
LONG $0x4c11fcc5; WORD $0x2039 // vmovups yword [rcx + rdi + 32], ymm1
LONG $0x5411fcc5; WORD $0x4039 // vmovups yword [rcx + rdi + 64], ymm2
LONG $0x5c11fcc5; WORD $0x6039 // vmovups yword [rcx + rdi + 96], ymm3
QUAD $0x0000803a8410fdc5; BYTE $0x00 // vmovupd ymm0, yword [rdx + rdi + 128]
QUAD $0x0000a03a8c10fdc5; BYTE $0x00 // vmovupd ymm1, yword [rdx + rdi + 160]
QUAD $0x0000c03a9410fdc5; BYTE $0x00 // vmovupd ymm2, yword [rdx + rdi + 192]
QUAD $0x0000e03a9c10fdc5; BYTE $0x00 // vmovupd ymm3, yword [rdx + rdi + 224]
QUAD $0x000080398411fdc5; BYTE $0x00 // vmovupd yword [rcx + rdi + 128], ymm0
QUAD $0x0000a0398c11fdc5; BYTE $0x00 // vmovupd yword [rcx + rdi + 160], ymm1
QUAD $0x0000c0399411fdc5; BYTE $0x00 // vmovupd yword [rcx + rdi + 192], ymm2
QUAD $0x0000e0399c11fdc5; BYTE $0x00 // vmovupd yword [rcx + rdi + 224], ymm3
LONG $0x00c78148; WORD $0x0001; BYTE $0x00 // add rdi, 256
LONG $0x02c08348 // add rax, 2
JNE LBB0_771
JMP LBB0_1258
LBB0_772:
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_1265
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LONG $0x456ff9c5; BYTE $0x40 // vmovdqa xmm0, oword 64[rbp] /* [rip + .LCPI0_4] */
LBB0_774:
LONG $0x0c6ffac5; BYTE $0xfa // vmovdqu xmm1, oword [rdx + 8*rdi]
LONG $0x546ffac5; WORD $0x10fa // vmovdqu xmm2, oword [rdx + 8*rdi + 16]
LONG $0x5c6ffac5; WORD $0x20fa // vmovdqu xmm3, oword [rdx + 8*rdi + 32]
LONG $0x646ffac5; WORD $0x30fa // vmovdqu xmm4, oword [rdx + 8*rdi + 48]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
LONG $0x0071e2c4; BYTE $0xc8 // vpshufb xmm1, xmm1, xmm0
LONG $0xca61f1c5 // vpunpcklwd xmm1, xmm1, xmm2
LONG $0x0059e2c4; BYTE $0xd0 // vpshufb xmm2, xmm4, xmm0
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd261e1c5 // vpunpcklwd xmm2, xmm3, xmm2
LONG $0xca62f1c5 // vpunpckldq xmm1, xmm1, xmm2
LONG $0x546ffac5; WORD $0x50fa // vmovdqu xmm2, oword [rdx + 8*rdi + 80]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
LONG $0x5c6ffac5; WORD $0x40fa // vmovdqu xmm3, oword [rdx + 8*rdi + 64]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd261e1c5 // vpunpcklwd xmm2, xmm3, xmm2
LONG $0x5c6ffac5; WORD $0x70fa // vmovdqu xmm3, oword [rdx + 8*rdi + 112]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0x646ffac5; WORD $0x60fa // vmovdqu xmm4, oword [rdx + 8*rdi + 96]
LONG $0x0059e2c4; BYTE $0xe0 // vpshufb xmm4, xmm4, xmm0
LONG $0xdb61d9c5 // vpunpcklwd xmm3, xmm4, xmm3
LONG $0xd362e9c5 // vpunpckldq xmm2, xmm2, xmm3
LONG $0xca6cf1c5 // vpunpcklqdq xmm1, xmm1, xmm2
LONG $0x0c7ffac5; BYTE $0x39 // vmovdqu oword [rcx + rdi], xmm1
QUAD $0x000080fa8c6ffac5; BYTE $0x00 // vmovdqu xmm1, oword [rdx + 8*rdi + 128]
QUAD $0x000090fa946ffac5; BYTE $0x00 // vmovdqu xmm2, oword [rdx + 8*rdi + 144]
QUAD $0x0000a0fa9c6ffac5; BYTE $0x00 // vmovdqu xmm3, oword [rdx + 8*rdi + 160]
QUAD $0x0000b0faa46ffac5; BYTE $0x00 // vmovdqu xmm4, oword [rdx + 8*rdi + 176]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
LONG $0x0071e2c4; BYTE $0xc8 // vpshufb xmm1, xmm1, xmm0
LONG $0xca61f1c5 // vpunpcklwd xmm1, xmm1, xmm2
LONG $0x0059e2c4; BYTE $0xd0 // vpshufb xmm2, xmm4, xmm0
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd261e1c5 // vpunpcklwd xmm2, xmm3, xmm2
LONG $0xca62f1c5 // vpunpckldq xmm1, xmm1, xmm2
QUAD $0x0000d0fa946ffac5; BYTE $0x00 // vmovdqu xmm2, oword [rdx + 8*rdi + 208]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
QUAD $0x0000c0fa9c6ffac5; BYTE $0x00 // vmovdqu xmm3, oword [rdx + 8*rdi + 192]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd261e1c5 // vpunpcklwd xmm2, xmm3, xmm2
QUAD $0x0000f0fa9c6ffac5; BYTE $0x00 // vmovdqu xmm3, oword [rdx + 8*rdi + 240]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
QUAD $0x0000e0faa46ffac5; BYTE $0x00 // vmovdqu xmm4, oword [rdx + 8*rdi + 224]
LONG $0x0059e2c4; BYTE $0xe0 // vpshufb xmm4, xmm4, xmm0
LONG $0xdb61d9c5 // vpunpcklwd xmm3, xmm4, xmm3
LONG $0xd362e9c5 // vpunpckldq xmm2, xmm2, xmm3
LONG $0xca6cf1c5 // vpunpcklqdq xmm1, xmm1, xmm2
LONG $0x4c7ffac5; WORD $0x1039 // vmovdqu oword [rcx + rdi + 16], xmm1
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_774
JMP LBB0_1266
LBB0_775:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xc0 // and esi, -64
LONG $0xc0468d48 // lea rax, [rsi - 64]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x06e8c149 // shr r8, 6
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1273
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
QUAD $0x000000a0856ffdc5 // vmovdqa ymm0, yword 160[rbp] /* [rip + .LCPI0_16] */
LBB0_777:
LONG $0x0cdbfdc5; BYTE $0x7a // vpand ymm1, ymm0, yword [rdx + 2*rdi]
LONG $0x397de3c4; WORD $0x01ca // vextracti128 xmm2, ymm1, 1
LONG $0xca67f1c5 // vpackuswb xmm1, xmm1, xmm2
LONG $0x54dbfdc5; WORD $0x207a // vpand ymm2, ymm0, yword [rdx + 2*rdi + 32]
LONG $0x397de3c4; WORD $0x01d3 // vextracti128 xmm3, ymm2, 1
LONG $0xd367e9c5 // vpackuswb xmm2, xmm2, xmm3
LONG $0x5cdbfdc5; WORD $0x407a // vpand ymm3, ymm0, yword [rdx + 2*rdi + 64]
LONG $0x397de3c4; WORD $0x01dc // vextracti128 xmm4, ymm3, 1
LONG $0xdc67e1c5 // vpackuswb xmm3, xmm3, xmm4
LONG $0x64dbfdc5; WORD $0x607a // vpand ymm4, ymm0, yword [rdx + 2*rdi + 96]
LONG $0x397de3c4; WORD $0x01e5 // vextracti128 xmm5, ymm4, 1
LONG $0xe567d9c5 // vpackuswb xmm4, xmm4, xmm5
LONG $0x0c7ffac5; BYTE $0x39 // vmovdqu oword [rcx + rdi], xmm1
LONG $0x547ffac5; WORD $0x1039 // vmovdqu oword [rcx + rdi + 16], xmm2
LONG $0x5c7ffac5; WORD $0x2039 // vmovdqu oword [rcx + rdi + 32], xmm3
LONG $0x647ffac5; WORD $0x3039 // vmovdqu oword [rcx + rdi + 48], xmm4
QUAD $0x0000807a8cdbfdc5; BYTE $0x00 // vpand ymm1, ymm0, yword [rdx + 2*rdi + 128]
LONG $0x397de3c4; WORD $0x01ca // vextracti128 xmm2, ymm1, 1
LONG $0xca67f1c5 // vpackuswb xmm1, xmm1, xmm2
QUAD $0x0000a07a94dbfdc5; BYTE $0x00 // vpand ymm2, ymm0, yword [rdx + 2*rdi + 160]
LONG $0x397de3c4; WORD $0x01d3 // vextracti128 xmm3, ymm2, 1
LONG $0xd367e9c5 // vpackuswb xmm2, xmm2, xmm3
QUAD $0x0000c07a9cdbfdc5; BYTE $0x00 // vpand ymm3, ymm0, yword [rdx + 2*rdi + 192]
LONG $0x397de3c4; WORD $0x01dc // vextracti128 xmm4, ymm3, 1
LONG $0xdc67e1c5 // vpackuswb xmm3, xmm3, xmm4
QUAD $0x0000e07aa4dbfdc5; BYTE $0x00 // vpand ymm4, ymm0, yword [rdx + 2*rdi + 224]
LONG $0x397de3c4; WORD $0x01e5 // vextracti128 xmm5, ymm4, 1
LONG $0xe567d9c5 // vpackuswb xmm4, xmm4, xmm5
LONG $0x4c7ffac5; WORD $0x4039 // vmovdqu oword [rcx + rdi + 64], xmm1
LONG $0x547ffac5; WORD $0x5039 // vmovdqu oword [rcx + rdi + 80], xmm2
LONG $0x5c7ffac5; WORD $0x6039 // vmovdqu oword [rcx + rdi + 96], xmm3
LONG $0x647ffac5; WORD $0x7039 // vmovdqu oword [rcx + rdi + 112], xmm4
LONG $0x80ef8348 // sub rdi, -128
LONG $0x02c08348 // add rax, 2
JNE LBB0_777
JMP LBB0_1274
LBB0_778:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xc0 // and esi, -64
LONG $0xc0468d48 // lea rax, [rsi - 64]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x06e8c149 // shr r8, 6
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1281
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
QUAD $0x000000a0856ffdc5 // vmovdqa ymm0, yword 160[rbp] /* [rip + .LCPI0_16] */
LBB0_780:
LONG $0x0cdbfdc5; BYTE $0x7a // vpand ymm1, ymm0, yword [rdx + 2*rdi]
LONG $0x397de3c4; WORD $0x01ca // vextracti128 xmm2, ymm1, 1
LONG $0xca67f1c5 // vpackuswb xmm1, xmm1, xmm2
LONG $0x54dbfdc5; WORD $0x207a // vpand ymm2, ymm0, yword [rdx + 2*rdi + 32]
LONG $0x397de3c4; WORD $0x01d3 // vextracti128 xmm3, ymm2, 1
LONG $0xd367e9c5 // vpackuswb xmm2, xmm2, xmm3
LONG $0x5cdbfdc5; WORD $0x407a // vpand ymm3, ymm0, yword [rdx + 2*rdi + 64]
LONG $0x397de3c4; WORD $0x01dc // vextracti128 xmm4, ymm3, 1
LONG $0xdc67e1c5 // vpackuswb xmm3, xmm3, xmm4
LONG $0x64dbfdc5; WORD $0x607a // vpand ymm4, ymm0, yword [rdx + 2*rdi + 96]
LONG $0x397de3c4; WORD $0x01e5 // vextracti128 xmm5, ymm4, 1
LONG $0xe567d9c5 // vpackuswb xmm4, xmm4, xmm5
LONG $0x0c7ffac5; BYTE $0x39 // vmovdqu oword [rcx + rdi], xmm1
LONG $0x547ffac5; WORD $0x1039 // vmovdqu oword [rcx + rdi + 16], xmm2
LONG $0x5c7ffac5; WORD $0x2039 // vmovdqu oword [rcx + rdi + 32], xmm3
LONG $0x647ffac5; WORD $0x3039 // vmovdqu oword [rcx + rdi + 48], xmm4
QUAD $0x0000807a8cdbfdc5; BYTE $0x00 // vpand ymm1, ymm0, yword [rdx + 2*rdi + 128]
LONG $0x397de3c4; WORD $0x01ca // vextracti128 xmm2, ymm1, 1
LONG $0xca67f1c5 // vpackuswb xmm1, xmm1, xmm2
QUAD $0x0000a07a94dbfdc5; BYTE $0x00 // vpand ymm2, ymm0, yword [rdx + 2*rdi + 160]
LONG $0x397de3c4; WORD $0x01d3 // vextracti128 xmm3, ymm2, 1
LONG $0xd367e9c5 // vpackuswb xmm2, xmm2, xmm3
QUAD $0x0000c07a9cdbfdc5; BYTE $0x00 // vpand ymm3, ymm0, yword [rdx + 2*rdi + 192]
LONG $0x397de3c4; WORD $0x01dc // vextracti128 xmm4, ymm3, 1
LONG $0xdc67e1c5 // vpackuswb xmm3, xmm3, xmm4
QUAD $0x0000e07aa4dbfdc5; BYTE $0x00 // vpand ymm4, ymm0, yword [rdx + 2*rdi + 224]
LONG $0x397de3c4; WORD $0x01e5 // vextracti128 xmm5, ymm4, 1
LONG $0xe567d9c5 // vpackuswb xmm4, xmm4, xmm5
LONG $0x4c7ffac5; WORD $0x4039 // vmovdqu oword [rcx + rdi + 64], xmm1
LONG $0x547ffac5; WORD $0x5039 // vmovdqu oword [rcx + rdi + 80], xmm2
LONG $0x5c7ffac5; WORD $0x6039 // vmovdqu oword [rcx + rdi + 96], xmm3
LONG $0x647ffac5; WORD $0x7039 // vmovdqu oword [rcx + rdi + 112], xmm4
LONG $0x80ef8348 // sub rdi, -128
LONG $0x02c08348 // add rax, 2
JNE LBB0_780
JMP LBB0_1282
LBB0_781:
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_1289
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LONG $0x456ff9c5; BYTE $0x40 // vmovdqa xmm0, oword 64[rbp] /* [rip + .LCPI0_4] */
LBB0_783:
LONG $0x0c6ffac5; BYTE $0xfa // vmovdqu xmm1, oword [rdx + 8*rdi]
LONG $0x546ffac5; WORD $0x10fa // vmovdqu xmm2, oword [rdx + 8*rdi + 16]
LONG $0x5c6ffac5; WORD $0x20fa // vmovdqu xmm3, oword [rdx + 8*rdi + 32]
LONG $0x646ffac5; WORD $0x30fa // vmovdqu xmm4, oword [rdx + 8*rdi + 48]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
LONG $0x0071e2c4; BYTE $0xc8 // vpshufb xmm1, xmm1, xmm0
LONG $0xca61f1c5 // vpunpcklwd xmm1, xmm1, xmm2
LONG $0x0059e2c4; BYTE $0xd0 // vpshufb xmm2, xmm4, xmm0
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd261e1c5 // vpunpcklwd xmm2, xmm3, xmm2
LONG $0xca62f1c5 // vpunpckldq xmm1, xmm1, xmm2
LONG $0x546ffac5; WORD $0x50fa // vmovdqu xmm2, oword [rdx + 8*rdi + 80]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
LONG $0x5c6ffac5; WORD $0x40fa // vmovdqu xmm3, oword [rdx + 8*rdi + 64]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd261e1c5 // vpunpcklwd xmm2, xmm3, xmm2
LONG $0x5c6ffac5; WORD $0x70fa // vmovdqu xmm3, oword [rdx + 8*rdi + 112]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0x646ffac5; WORD $0x60fa // vmovdqu xmm4, oword [rdx + 8*rdi + 96]
LONG $0x0059e2c4; BYTE $0xe0 // vpshufb xmm4, xmm4, xmm0
LONG $0xdb61d9c5 // vpunpcklwd xmm3, xmm4, xmm3
LONG $0xd362e9c5 // vpunpckldq xmm2, xmm2, xmm3
LONG $0xca6cf1c5 // vpunpcklqdq xmm1, xmm1, xmm2
LONG $0x0c7ffac5; BYTE $0x39 // vmovdqu oword [rcx + rdi], xmm1
QUAD $0x000080fa8c6ffac5; BYTE $0x00 // vmovdqu xmm1, oword [rdx + 8*rdi + 128]
QUAD $0x000090fa946ffac5; BYTE $0x00 // vmovdqu xmm2, oword [rdx + 8*rdi + 144]
QUAD $0x0000a0fa9c6ffac5; BYTE $0x00 // vmovdqu xmm3, oword [rdx + 8*rdi + 160]
QUAD $0x0000b0faa46ffac5; BYTE $0x00 // vmovdqu xmm4, oword [rdx + 8*rdi + 176]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
LONG $0x0071e2c4; BYTE $0xc8 // vpshufb xmm1, xmm1, xmm0
LONG $0xca61f1c5 // vpunpcklwd xmm1, xmm1, xmm2
LONG $0x0059e2c4; BYTE $0xd0 // vpshufb xmm2, xmm4, xmm0
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd261e1c5 // vpunpcklwd xmm2, xmm3, xmm2
LONG $0xca62f1c5 // vpunpckldq xmm1, xmm1, xmm2
QUAD $0x0000d0fa946ffac5; BYTE $0x00 // vmovdqu xmm2, oword [rdx + 8*rdi + 208]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
QUAD $0x0000c0fa9c6ffac5; BYTE $0x00 // vmovdqu xmm3, oword [rdx + 8*rdi + 192]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd261e1c5 // vpunpcklwd xmm2, xmm3, xmm2
QUAD $0x0000f0fa9c6ffac5; BYTE $0x00 // vmovdqu xmm3, oword [rdx + 8*rdi + 240]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
QUAD $0x0000e0faa46ffac5; BYTE $0x00 // vmovdqu xmm4, oword [rdx + 8*rdi + 224]
LONG $0x0059e2c4; BYTE $0xe0 // vpshufb xmm4, xmm4, xmm0
LONG $0xdb61d9c5 // vpunpcklwd xmm3, xmm4, xmm3
LONG $0xd362e9c5 // vpunpckldq xmm2, xmm2, xmm3
LONG $0xca6cf1c5 // vpunpcklqdq xmm1, xmm1, xmm2
LONG $0x4c7ffac5; WORD $0x1039 // vmovdqu oword [rcx + rdi + 16], xmm1
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_783
JMP LBB0_1290
LBB0_784:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xe0 // and esi, -32
LONG $0xe0468d48 // lea rax, [rsi - 32]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x05e8c149 // shr r8, 5
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1297
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_786:
LONG $0x045bfec5; BYTE $0xba // vcvttps2dq ymm0, yword [rdx + 4*rdi]
LONG $0x397de3c4; WORD $0x01c1 // vextracti128 xmm1, ymm0, 1
LONG $0x545bfec5; WORD $0x20ba // vcvttps2dq ymm2, yword [rdx + 4*rdi + 32]
LONG $0xc16bf9c5 // vpackssdw xmm0, xmm0, xmm1
LONG $0x397de3c4; WORD $0x01d1 // vextracti128 xmm1, ymm2, 1
LONG $0x5c5bfec5; WORD $0x40ba // vcvttps2dq ymm3, yword [rdx + 4*rdi + 64]
LONG $0xc96be9c5 // vpackssdw xmm1, xmm2, xmm1
LONG $0x397de3c4; WORD $0x01da // vextracti128 xmm2, ymm3, 1
LONG $0x645bfec5; WORD $0x60ba // vcvttps2dq ymm4, yword [rdx + 4*rdi + 96]
LONG $0xd26be1c5 // vpackssdw xmm2, xmm3, xmm2
LONG $0x397de3c4; WORD $0x01e3 // vextracti128 xmm3, ymm4, 1
LONG $0xdb6bd9c5 // vpackssdw xmm3, xmm4, xmm3
LONG $0x386de3c4; WORD $0x01d3 // vinserti128 ymm2, ymm2, xmm3, 1
LONG $0xd063edc5 // vpacksswb ymm2, ymm2, ymm0
LONG $0x387de3c4; WORD $0x01c1 // vinserti128 ymm0, ymm0, xmm1, 1
LONG $0xc063fdc5 // vpacksswb ymm0, ymm0, ymm0
LONG $0xc26cfdc5 // vpunpcklqdq ymm0, ymm0, ymm2
LONG $0x00fde3c4; WORD $0xd8c0 // vpermq ymm0, ymm0, 216
LONG $0x047ffec5; BYTE $0x39 // vmovdqu yword [rcx + rdi], ymm0
QUAD $0x000080ba845bfec5; BYTE $0x00 // vcvttps2dq ymm0, yword [rdx + 4*rdi + 128]
LONG $0x397de3c4; WORD $0x01c1 // vextracti128 xmm1, ymm0, 1
QUAD $0x0000a0ba945bfec5; BYTE $0x00 // vcvttps2dq ymm2, yword [rdx + 4*rdi + 160]
LONG $0xc16bf9c5 // vpackssdw xmm0, xmm0, xmm1
LONG $0x397de3c4; WORD $0x01d1 // vextracti128 xmm1, ymm2, 1
QUAD $0x0000c0ba9c5bfec5; BYTE $0x00 // vcvttps2dq ymm3, yword [rdx + 4*rdi + 192]
LONG $0xc96be9c5 // vpackssdw xmm1, xmm2, xmm1
LONG $0x397de3c4; WORD $0x01da // vextracti128 xmm2, ymm3, 1
QUAD $0x0000e0baa45bfec5; BYTE $0x00 // vcvttps2dq ymm4, yword [rdx + 4*rdi + 224]
LONG $0xd26be1c5 // vpackssdw xmm2, xmm3, xmm2
LONG $0x397de3c4; WORD $0x01e3 // vextracti128 xmm3, ymm4, 1
LONG $0xdb6bd9c5 // vpackssdw xmm3, xmm4, xmm3
LONG $0x386de3c4; WORD $0x01d3 // vinserti128 ymm2, ymm2, xmm3, 1
LONG $0xd063edc5 // vpacksswb ymm2, ymm2, ymm0
LONG $0x387de3c4; WORD $0x01c1 // vinserti128 ymm0, ymm0, xmm1, 1
LONG $0xc063fdc5 // vpacksswb ymm0, ymm0, ymm0
LONG $0xc26cfdc5 // vpunpcklqdq ymm0, ymm0, ymm2
LONG $0x00fde3c4; WORD $0xd8c0 // vpermq ymm0, ymm0, 216
LONG $0x447ffec5; WORD $0x2039 // vmovdqu yword [rcx + rdi + 32], ymm0
LONG $0x40c78348 // add rdi, 64
LONG $0x02c08348 // add rax, 2
JNE LBB0_786
JMP LBB0_1298
LBB0_787:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0x80 // and esi, -128
LONG $0x80468d48 // lea rax, [rsi - 128]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x07e8c149 // shr r8, 7
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1305
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_789:
LONG $0x0410fcc5; BYTE $0x3a // vmovups ymm0, yword [rdx + rdi]
LONG $0x4c10fcc5; WORD $0x203a // vmovups ymm1, yword [rdx + rdi + 32]
LONG $0x5410fcc5; WORD $0x403a // vmovups ymm2, yword [rdx + rdi + 64]
LONG $0x5c10fcc5; WORD $0x603a // vmovups ymm3, yword [rdx + rdi + 96]
LONG $0x0411fcc5; BYTE $0x39 // vmovups yword [rcx + rdi], ymm0
LONG $0x4c11fcc5; WORD $0x2039 // vmovups yword [rcx + rdi + 32], ymm1
LONG $0x5411fcc5; WORD $0x4039 // vmovups yword [rcx + rdi + 64], ymm2
LONG $0x5c11fcc5; WORD $0x6039 // vmovups yword [rcx + rdi + 96], ymm3
QUAD $0x0000803a8410fdc5; BYTE $0x00 // vmovupd ymm0, yword [rdx + rdi + 128]
QUAD $0x0000a03a8c10fdc5; BYTE $0x00 // vmovupd ymm1, yword [rdx + rdi + 160]
QUAD $0x0000c03a9410fdc5; BYTE $0x00 // vmovupd ymm2, yword [rdx + rdi + 192]
QUAD $0x0000e03a9c10fdc5; BYTE $0x00 // vmovupd ymm3, yword [rdx + rdi + 224]
QUAD $0x000080398411fdc5; BYTE $0x00 // vmovupd yword [rcx + rdi + 128], ymm0
QUAD $0x0000a0398c11fdc5; BYTE $0x00 // vmovupd yword [rcx + rdi + 160], ymm1
QUAD $0x0000c0399411fdc5; BYTE $0x00 // vmovupd yword [rcx + rdi + 192], ymm2
QUAD $0x0000e0399c11fdc5; BYTE $0x00 // vmovupd yword [rcx + rdi + 224], ymm3
LONG $0x00c78148; WORD $0x0001; BYTE $0x00 // add rdi, 256
LONG $0x02c08348 // add rax, 2
JNE LBB0_789
JMP LBB0_1306
LBB0_790:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xe0 // and esi, -32
LONG $0xe0468d48 // lea rax, [rsi - 32]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x05e8c149 // shr r8, 5
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1313
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LONG $0x456ff9c5; BYTE $0x70 // vmovdqa xmm0, oword 112[rbp] /* [rip + .LCPI0_12] */
LBB0_792:
LONG $0x0c6ffac5; BYTE $0xba // vmovdqu xmm1, oword [rdx + 4*rdi]
LONG $0x546ffac5; WORD $0x10ba // vmovdqu xmm2, oword [rdx + 4*rdi + 16]
LONG $0x5c6ffac5; WORD $0x20ba // vmovdqu xmm3, oword [rdx + 4*rdi + 32]
LONG $0x646ffac5; WORD $0x30ba // vmovdqu xmm4, oword [rdx + 4*rdi + 48]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
LONG $0x0071e2c4; BYTE $0xc8 // vpshufb xmm1, xmm1, xmm0
LONG $0xca62f1c5 // vpunpckldq xmm1, xmm1, xmm2
LONG $0x0059e2c4; BYTE $0xd0 // vpshufb xmm2, xmm4, xmm0
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd262e1c5 // vpunpckldq xmm2, xmm3, xmm2
LONG $0x5c6ffac5; WORD $0x50ba // vmovdqu xmm3, oword [rdx + 4*rdi + 80]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0x646ffac5; WORD $0x40ba // vmovdqu xmm4, oword [rdx + 4*rdi + 64]
LONG $0x0059e2c4; BYTE $0xe0 // vpshufb xmm4, xmm4, xmm0
LONG $0xdb62d9c5 // vpunpckldq xmm3, xmm4, xmm3
LONG $0x646ffac5; WORD $0x70ba // vmovdqu xmm4, oword [rdx + 4*rdi + 112]
LONG $0x0059e2c4; BYTE $0xe0 // vpshufb xmm4, xmm4, xmm0
LONG $0x6c6ffac5; WORD $0x60ba // vmovdqu xmm5, oword [rdx + 4*rdi + 96]
LONG $0x0051e2c4; BYTE $0xe8 // vpshufb xmm5, xmm5, xmm0
LONG $0xe462d1c5 // vpunpckldq xmm4, xmm5, xmm4
LONG $0x3865e3c4; WORD $0x01dc // vinserti128 ymm3, ymm3, xmm4, 1
LONG $0x3875e3c4; WORD $0x01ca // vinserti128 ymm1, ymm1, xmm2, 1
LONG $0xcb6cf5c5 // vpunpcklqdq ymm1, ymm1, ymm3
LONG $0x00fde3c4; WORD $0xd8c9 // vpermq ymm1, ymm1, 216
LONG $0x0c7ffec5; BYTE $0x39 // vmovdqu yword [rcx + rdi], ymm1
QUAD $0x000080ba8c6ffac5; BYTE $0x00 // vmovdqu xmm1, oword [rdx + 4*rdi + 128]
QUAD $0x000090ba946ffac5; BYTE $0x00 // vmovdqu xmm2, oword [rdx + 4*rdi + 144]
QUAD $0x0000a0ba9c6ffac5; BYTE $0x00 // vmovdqu xmm3, oword [rdx + 4*rdi + 160]
QUAD $0x0000b0baa46ffac5; BYTE $0x00 // vmovdqu xmm4, oword [rdx + 4*rdi + 176]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
LONG $0x0071e2c4; BYTE $0xc8 // vpshufb xmm1, xmm1, xmm0
LONG $0xca62f1c5 // vpunpckldq xmm1, xmm1, xmm2
LONG $0x0059e2c4; BYTE $0xd0 // vpshufb xmm2, xmm4, xmm0
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd262e1c5 // vpunpckldq xmm2, xmm3, xmm2
QUAD $0x0000d0ba9c6ffac5; BYTE $0x00 // vmovdqu xmm3, oword [rdx + 4*rdi + 208]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
QUAD $0x0000c0baa46ffac5; BYTE $0x00 // vmovdqu xmm4, oword [rdx + 4*rdi + 192]
LONG $0x0059e2c4; BYTE $0xe0 // vpshufb xmm4, xmm4, xmm0
LONG $0xdb62d9c5 // vpunpckldq xmm3, xmm4, xmm3
QUAD $0x0000f0baa46ffac5; BYTE $0x00 // vmovdqu xmm4, oword [rdx + 4*rdi + 240]
LONG $0x0059e2c4; BYTE $0xe0 // vpshufb xmm4, xmm4, xmm0
QUAD $0x0000e0baac6ffac5; BYTE $0x00 // vmovdqu xmm5, oword [rdx + 4*rdi + 224]
LONG $0x0051e2c4; BYTE $0xe8 // vpshufb xmm5, xmm5, xmm0
LONG $0xe462d1c5 // vpunpckldq xmm4, xmm5, xmm4
LONG $0x3865e3c4; WORD $0x01dc // vinserti128 ymm3, ymm3, xmm4, 1
LONG $0x3875e3c4; WORD $0x01ca // vinserti128 ymm1, ymm1, xmm2, 1
LONG $0xcb6cf5c5 // vpunpcklqdq ymm1, ymm1, ymm3
LONG $0x00fde3c4; WORD $0xd8c9 // vpermq ymm1, ymm1, 216
LONG $0x4c7ffec5; WORD $0x2039 // vmovdqu yword [rcx + rdi + 32], ymm1
LONG $0x40c78348 // add rdi, 64
LONG $0x02c08348 // add rax, 2
JNE LBB0_792
JMP LBB0_1314
LBB0_801:
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_1321
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_803:
LONG $0x227de2c4; WORD $0x3a04 // vpmovsxbq ymm0, dword [rdx + rdi]
LONG $0x227de2c4; WORD $0x3a4c; BYTE $0x04 // vpmovsxbq ymm1, dword [rdx + rdi + 4]
LONG $0x227de2c4; WORD $0x3a54; BYTE $0x08 // vpmovsxbq ymm2, dword [rdx + rdi + 8]
LONG $0x227de2c4; WORD $0x3a5c; BYTE $0x0c // vpmovsxbq ymm3, dword [rdx + rdi + 12]
LONG $0x047ffec5; BYTE $0xf9 // vmovdqu yword [rcx + 8*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20f9 // vmovdqu yword [rcx + 8*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40f9 // vmovdqu yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60f9 // vmovdqu yword [rcx + 8*rdi + 96], ymm3
LONG $0x227de2c4; WORD $0x3a44; BYTE $0x10 // vpmovsxbq ymm0, dword [rdx + rdi + 16]
LONG $0x227de2c4; WORD $0x3a4c; BYTE $0x14 // vpmovsxbq ymm1, dword [rdx + rdi + 20]
LONG $0x227de2c4; WORD $0x3a54; BYTE $0x18 // vpmovsxbq ymm2, dword [rdx + rdi + 24]
LONG $0x227de2c4; WORD $0x3a5c; BYTE $0x1c // vpmovsxbq ymm3, dword [rdx + rdi + 28]
QUAD $0x000080f9847ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 128], ymm0
QUAD $0x0000a0f98c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 160], ymm1
QUAD $0x0000c0f9947ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 192], ymm2
QUAD $0x0000e0f99c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 224], ymm3
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_803
JMP LBB0_1322
LBB0_804:
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_1329
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_806:
LONG $0x0410fcc5; BYTE $0xfa // vmovups ymm0, yword [rdx + 8*rdi]
LONG $0x4c10fcc5; WORD $0x20fa // vmovups ymm1, yword [rdx + 8*rdi + 32]
LONG $0x5410fcc5; WORD $0x40fa // vmovups ymm2, yword [rdx + 8*rdi + 64]
LONG $0x5c10fcc5; WORD $0x60fa // vmovups ymm3, yword [rdx + 8*rdi + 96]
LONG $0x0411fcc5; BYTE $0xf9 // vmovups yword [rcx + 8*rdi], ymm0
LONG $0x4c11fcc5; WORD $0x20f9 // vmovups yword [rcx + 8*rdi + 32], ymm1
LONG $0x5411fcc5; WORD $0x40f9 // vmovups yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c11fcc5; WORD $0x60f9 // vmovups yword [rcx + 8*rdi + 96], ymm3
QUAD $0x000080fa8410fdc5; BYTE $0x00 // vmovupd ymm0, yword [rdx + 8*rdi + 128]
QUAD $0x0000a0fa8c10fdc5; BYTE $0x00 // vmovupd ymm1, yword [rdx + 8*rdi + 160]
QUAD $0x0000c0fa9410fdc5; BYTE $0x00 // vmovupd ymm2, yword [rdx + 8*rdi + 192]
QUAD $0x0000e0fa9c10fdc5; BYTE $0x00 // vmovupd ymm3, yword [rdx + 8*rdi + 224]
QUAD $0x000080f98411fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 128], ymm0
QUAD $0x0000a0f98c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 160], ymm1
QUAD $0x0000c0f99411fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 192], ymm2
QUAD $0x0000e0f99c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 224], ymm3
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_806
JMP LBB0_1330
LBB0_807:
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_1337
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_809:
LONG $0x0410fcc5; BYTE $0xfa // vmovups ymm0, yword [rdx + 8*rdi]
LONG $0x4c10fcc5; WORD $0x20fa // vmovups ymm1, yword [rdx + 8*rdi + 32]
LONG $0x5410fcc5; WORD $0x40fa // vmovups ymm2, yword [rdx + 8*rdi + 64]
LONG $0x5c10fcc5; WORD $0x60fa // vmovups ymm3, yword [rdx + 8*rdi + 96]
LONG $0x0411fcc5; BYTE $0xf9 // vmovups yword [rcx + 8*rdi], ymm0
LONG $0x4c11fcc5; WORD $0x20f9 // vmovups yword [rcx + 8*rdi + 32], ymm1
LONG $0x5411fcc5; WORD $0x40f9 // vmovups yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c11fcc5; WORD $0x60f9 // vmovups yword [rcx + 8*rdi + 96], ymm3
QUAD $0x000080fa8410fdc5; BYTE $0x00 // vmovupd ymm0, yword [rdx + 8*rdi + 128]
QUAD $0x0000a0fa8c10fdc5; BYTE $0x00 // vmovupd ymm1, yword [rdx + 8*rdi + 160]
QUAD $0x0000c0fa9410fdc5; BYTE $0x00 // vmovupd ymm2, yword [rdx + 8*rdi + 192]
QUAD $0x0000e0fa9c10fdc5; BYTE $0x00 // vmovupd ymm3, yword [rdx + 8*rdi + 224]
QUAD $0x000080f98411fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 128], ymm0
QUAD $0x0000a0f98c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 160], ymm1
QUAD $0x0000c0f99411fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 192], ymm2
QUAD $0x0000e0f99c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 224], ymm3
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_809
JMP LBB0_1338
LBB0_818:
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_1345
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_820:
LONG $0x327de2c4; WORD $0x3a04 // vpmovzxbq ymm0, dword [rdx + rdi]
LONG $0x327de2c4; WORD $0x3a4c; BYTE $0x04 // vpmovzxbq ymm1, dword [rdx + rdi + 4]
LONG $0x327de2c4; WORD $0x3a54; BYTE $0x08 // vpmovzxbq ymm2, dword [rdx + rdi + 8]
LONG $0x327de2c4; WORD $0x3a5c; BYTE $0x0c // vpmovzxbq ymm3, dword [rdx + rdi + 12]
LONG $0x047ffec5; BYTE $0xf9 // vmovdqu yword [rcx + 8*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20f9 // vmovdqu yword [rcx + 8*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40f9 // vmovdqu yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60f9 // vmovdqu yword [rcx + 8*rdi + 96], ymm3
LONG $0x327de2c4; WORD $0x3a44; BYTE $0x10 // vpmovzxbq ymm0, dword [rdx + rdi + 16]
LONG $0x327de2c4; WORD $0x3a4c; BYTE $0x14 // vpmovzxbq ymm1, dword [rdx + rdi + 20]
LONG $0x327de2c4; WORD $0x3a54; BYTE $0x18 // vpmovzxbq ymm2, dword [rdx + rdi + 24]
LONG $0x327de2c4; WORD $0x3a5c; BYTE $0x1c // vpmovzxbq ymm3, dword [rdx + rdi + 28]
QUAD $0x000080f9847ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 128], ymm0
QUAD $0x0000a0f98c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 160], ymm1
QUAD $0x0000c0f9947ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 192], ymm2
QUAD $0x0000e0f99c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 224], ymm3
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_820
JMP LBB0_1346
LBB0_821:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xc0 // and esi, -64
LONG $0xc0468d48 // lea rax, [rsi - 64]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x06e8c149 // shr r8, 6
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1353
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_823:
LONG $0x207de2c4; WORD $0x3a04 // vpmovsxbw ymm0, oword [rdx + rdi]
LONG $0x207de2c4; WORD $0x3a4c; BYTE $0x10 // vpmovsxbw ymm1, oword [rdx + rdi + 16]
LONG $0x207de2c4; WORD $0x3a54; BYTE $0x20 // vpmovsxbw ymm2, oword [rdx + rdi + 32]
LONG $0x207de2c4; WORD $0x3a5c; BYTE $0x30 // vpmovsxbw ymm3, oword [rdx + rdi + 48]
LONG $0x047ffec5; BYTE $0x79 // vmovdqu yword [rcx + 2*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x2079 // vmovdqu yword [rcx + 2*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x4079 // vmovdqu yword [rcx + 2*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x6079 // vmovdqu yword [rcx + 2*rdi + 96], ymm3
LONG $0x207de2c4; WORD $0x3a44; BYTE $0x40 // vpmovsxbw ymm0, oword [rdx + rdi + 64]
LONG $0x207de2c4; WORD $0x3a4c; BYTE $0x50 // vpmovsxbw ymm1, oword [rdx + rdi + 80]
LONG $0x207de2c4; WORD $0x3a54; BYTE $0x60 // vpmovsxbw ymm2, oword [rdx + rdi + 96]
LONG $0x207de2c4; WORD $0x3a5c; BYTE $0x70 // vpmovsxbw ymm3, oword [rdx + rdi + 112]
QUAD $0x00008079847ffec5; BYTE $0x00 // vmovdqu yword [rcx + 2*rdi + 128], ymm0
QUAD $0x0000a0798c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 2*rdi + 160], ymm1
QUAD $0x0000c079947ffec5; BYTE $0x00 // vmovdqu yword [rcx + 2*rdi + 192], ymm2
QUAD $0x0000e0799c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 2*rdi + 224], ymm3
LONG $0x80ef8348 // sub rdi, -128
LONG $0x02c08348 // add rax, 2
JNE LBB0_823
JMP LBB0_1354
LBB0_824:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xc0 // and esi, -64
LONG $0xc0468d48 // lea rax, [rsi - 64]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x06e8c149 // shr r8, 6
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1361
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_826:
LONG $0x207de2c4; WORD $0x3a04 // vpmovsxbw ymm0, oword [rdx + rdi]
LONG $0x207de2c4; WORD $0x3a4c; BYTE $0x10 // vpmovsxbw ymm1, oword [rdx + rdi + 16]
LONG $0x207de2c4; WORD $0x3a54; BYTE $0x20 // vpmovsxbw ymm2, oword [rdx + rdi + 32]
LONG $0x207de2c4; WORD $0x3a5c; BYTE $0x30 // vpmovsxbw ymm3, oword [rdx + rdi + 48]
LONG $0x047ffec5; BYTE $0x79 // vmovdqu yword [rcx + 2*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x2079 // vmovdqu yword [rcx + 2*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x4079 // vmovdqu yword [rcx + 2*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x6079 // vmovdqu yword [rcx + 2*rdi + 96], ymm3
LONG $0x207de2c4; WORD $0x3a44; BYTE $0x40 // vpmovsxbw ymm0, oword [rdx + rdi + 64]
LONG $0x207de2c4; WORD $0x3a4c; BYTE $0x50 // vpmovsxbw ymm1, oword [rdx + rdi + 80]
LONG $0x207de2c4; WORD $0x3a54; BYTE $0x60 // vpmovsxbw ymm2, oword [rdx + rdi + 96]
LONG $0x207de2c4; WORD $0x3a5c; BYTE $0x70 // vpmovsxbw ymm3, oword [rdx + rdi + 112]
QUAD $0x00008079847ffec5; BYTE $0x00 // vmovdqu yword [rcx + 2*rdi + 128], ymm0
QUAD $0x0000a0798c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 2*rdi + 160], ymm1
QUAD $0x0000c079947ffec5; BYTE $0x00 // vmovdqu yword [rcx + 2*rdi + 192], ymm2
QUAD $0x0000e0799c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 2*rdi + 224], ymm3
LONG $0x80ef8348 // sub rdi, -128
LONG $0x02c08348 // add rax, 2
JNE LBB0_826
JMP LBB0_1362
LBB0_827:
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_1145
WORD $0xc031 // xor eax, eax
JMP LBB0_1147
LBB0_829:
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_1155
WORD $0xc031 // xor eax, eax
JMP LBB0_1157
LBB0_831:
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_1165
WORD $0xc031 // xor eax, eax
JMP LBB0_1167
LBB0_833:
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_1175
WORD $0xc031 // xor eax, eax
JMP LBB0_1177
LBB0_835:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xc0 // and esi, -64
LONG $0xc0468d48 // lea rax, [rsi - 64]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x06e8c149 // shr r8, 6
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1369
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_837:
LONG $0x307de2c4; WORD $0x3a04 // vpmovzxbw ymm0, oword [rdx + rdi]
LONG $0x307de2c4; WORD $0x3a4c; BYTE $0x10 // vpmovzxbw ymm1, oword [rdx + rdi + 16]
LONG $0x307de2c4; WORD $0x3a54; BYTE $0x20 // vpmovzxbw ymm2, oword [rdx + rdi + 32]
LONG $0x307de2c4; WORD $0x3a5c; BYTE $0x30 // vpmovzxbw ymm3, oword [rdx + rdi + 48]
LONG $0x047ffec5; BYTE $0x79 // vmovdqu yword [rcx + 2*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x2079 // vmovdqu yword [rcx + 2*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x4079 // vmovdqu yword [rcx + 2*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x6079 // vmovdqu yword [rcx + 2*rdi + 96], ymm3
LONG $0x307de2c4; WORD $0x3a44; BYTE $0x40 // vpmovzxbw ymm0, oword [rdx + rdi + 64]
LONG $0x307de2c4; WORD $0x3a4c; BYTE $0x50 // vpmovzxbw ymm1, oword [rdx + rdi + 80]
LONG $0x307de2c4; WORD $0x3a54; BYTE $0x60 // vpmovzxbw ymm2, oword [rdx + rdi + 96]
LONG $0x307de2c4; WORD $0x3a5c; BYTE $0x70 // vpmovzxbw ymm3, oword [rdx + rdi + 112]
QUAD $0x00008079847ffec5; BYTE $0x00 // vmovdqu yword [rcx + 2*rdi + 128], ymm0
QUAD $0x0000a0798c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 2*rdi + 160], ymm1
QUAD $0x0000c079947ffec5; BYTE $0x00 // vmovdqu yword [rcx + 2*rdi + 192], ymm2
QUAD $0x0000e0799c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 2*rdi + 224], ymm3
LONG $0x80ef8348 // sub rdi, -128
LONG $0x02c08348 // add rax, 2
JNE LBB0_837
JMP LBB0_1370
LBB0_838:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xc0 // and esi, -64
LONG $0xc0468d48 // lea rax, [rsi - 64]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x06e8c149 // shr r8, 6
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1377
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_840:
LONG $0x307de2c4; WORD $0x3a04 // vpmovzxbw ymm0, oword [rdx + rdi]
LONG $0x307de2c4; WORD $0x3a4c; BYTE $0x10 // vpmovzxbw ymm1, oword [rdx + rdi + 16]
LONG $0x307de2c4; WORD $0x3a54; BYTE $0x20 // vpmovzxbw ymm2, oword [rdx + rdi + 32]
LONG $0x307de2c4; WORD $0x3a5c; BYTE $0x30 // vpmovzxbw ymm3, oword [rdx + rdi + 48]
LONG $0x047ffec5; BYTE $0x79 // vmovdqu yword [rcx + 2*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x2079 // vmovdqu yword [rcx + 2*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x4079 // vmovdqu yword [rcx + 2*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x6079 // vmovdqu yword [rcx + 2*rdi + 96], ymm3
LONG $0x307de2c4; WORD $0x3a44; BYTE $0x40 // vpmovzxbw ymm0, oword [rdx + rdi + 64]
LONG $0x307de2c4; WORD $0x3a4c; BYTE $0x50 // vpmovzxbw ymm1, oword [rdx + rdi + 80]
LONG $0x307de2c4; WORD $0x3a54; BYTE $0x60 // vpmovzxbw ymm2, oword [rdx + rdi + 96]
LONG $0x307de2c4; WORD $0x3a5c; BYTE $0x70 // vpmovzxbw ymm3, oword [rdx + rdi + 112]
QUAD $0x00008079847ffec5; BYTE $0x00 // vmovdqu yword [rcx + 2*rdi + 128], ymm0
QUAD $0x0000a0798c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 2*rdi + 160], ymm1
QUAD $0x0000c079947ffec5; BYTE $0x00 // vmovdqu yword [rcx + 2*rdi + 192], ymm2
QUAD $0x0000e0799c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 2*rdi + 224], ymm3
LONG $0x80ef8348 // sub rdi, -128
LONG $0x02c08348 // add rax, 2
JNE LBB0_840
JMP LBB0_1378
LBB0_841:
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_1385
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_843:
LONG $0x227de2c4; WORD $0x3a04 // vpmovsxbq ymm0, dword [rdx + rdi]
LONG $0x227de2c4; WORD $0x3a4c; BYTE $0x04 // vpmovsxbq ymm1, dword [rdx + rdi + 4]
LONG $0x227de2c4; WORD $0x3a54; BYTE $0x08 // vpmovsxbq ymm2, dword [rdx + rdi + 8]
LONG $0x227de2c4; WORD $0x3a5c; BYTE $0x0c // vpmovsxbq ymm3, dword [rdx + rdi + 12]
LONG $0x047ffec5; BYTE $0xf9 // vmovdqu yword [rcx + 8*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20f9 // vmovdqu yword [rcx + 8*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40f9 // vmovdqu yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60f9 // vmovdqu yword [rcx + 8*rdi + 96], ymm3
LONG $0x227de2c4; WORD $0x3a44; BYTE $0x10 // vpmovsxbq ymm0, dword [rdx + rdi + 16]
LONG $0x227de2c4; WORD $0x3a4c; BYTE $0x14 // vpmovsxbq ymm1, dword [rdx + rdi + 20]
LONG $0x227de2c4; WORD $0x3a54; BYTE $0x18 // vpmovsxbq ymm2, dword [rdx + rdi + 24]
LONG $0x227de2c4; WORD $0x3a5c; BYTE $0x1c // vpmovsxbq ymm3, dword [rdx + rdi + 28]
QUAD $0x000080f9847ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 128], ymm0
QUAD $0x0000a0f98c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 160], ymm1
QUAD $0x0000c0f9947ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 192], ymm2
QUAD $0x0000e0f99c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 224], ymm3
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_843
JMP LBB0_1386
LBB0_844:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xe0 // and esi, -32
LONG $0xe0468d48 // lea rax, [rsi - 32]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x05e8c149 // shr r8, 5
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1393
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_846:
LONG $0x217de2c4; WORD $0x3a04 // vpmovsxbd ymm0, qword [rdx + rdi]
LONG $0x217de2c4; WORD $0x3a4c; BYTE $0x08 // vpmovsxbd ymm1, qword [rdx + rdi + 8]
LONG $0x217de2c4; WORD $0x3a54; BYTE $0x10 // vpmovsxbd ymm2, qword [rdx + rdi + 16]
LONG $0x217de2c4; WORD $0x3a5c; BYTE $0x18 // vpmovsxbd ymm3, qword [rdx + rdi + 24]
LONG $0xc05bfcc5 // vcvtdq2ps ymm0, ymm0
LONG $0xc95bfcc5 // vcvtdq2ps ymm1, ymm1
LONG $0xd25bfcc5 // vcvtdq2ps ymm2, ymm2
LONG $0xdb5bfcc5 // vcvtdq2ps ymm3, ymm3
LONG $0x0411fcc5; BYTE $0xb9 // vmovups yword [rcx + 4*rdi], ymm0
LONG $0x4c11fcc5; WORD $0x20b9 // vmovups yword [rcx + 4*rdi + 32], ymm1
LONG $0x5411fcc5; WORD $0x40b9 // vmovups yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c11fcc5; WORD $0x60b9 // vmovups yword [rcx + 4*rdi + 96], ymm3
LONG $0x217de2c4; WORD $0x3a44; BYTE $0x20 // vpmovsxbd ymm0, qword [rdx + rdi + 32]
LONG $0x217de2c4; WORD $0x3a4c; BYTE $0x28 // vpmovsxbd ymm1, qword [rdx + rdi + 40]
LONG $0x217de2c4; WORD $0x3a54; BYTE $0x30 // vpmovsxbd ymm2, qword [rdx + rdi + 48]
LONG $0x217de2c4; WORD $0x3a5c; BYTE $0x38 // vpmovsxbd ymm3, qword [rdx + rdi + 56]
LONG $0xc05bfcc5 // vcvtdq2ps ymm0, ymm0
LONG $0xc95bfcc5 // vcvtdq2ps ymm1, ymm1
LONG $0xd25bfcc5 // vcvtdq2ps ymm2, ymm2
LONG $0xdb5bfcc5 // vcvtdq2ps ymm3, ymm3
QUAD $0x000080b98411fcc5; BYTE $0x00 // vmovups yword [rcx + 4*rdi + 128], ymm0
QUAD $0x0000a0b98c11fcc5; BYTE $0x00 // vmovups yword [rcx + 4*rdi + 160], ymm1
QUAD $0x0000c0b99411fcc5; BYTE $0x00 // vmovups yword [rcx + 4*rdi + 192], ymm2
QUAD $0x0000e0b99c11fcc5; BYTE $0x00 // vmovups yword [rcx + 4*rdi + 224], ymm3
LONG $0x40c78348 // add rdi, 64
LONG $0x02c08348 // add rax, 2
JNE LBB0_846
JMP LBB0_1394
LBB0_847:
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_1401
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_849:
LONG $0x0410fcc5; BYTE $0xfa // vmovups ymm0, yword [rdx + 8*rdi]
LONG $0x4c10fcc5; WORD $0x20fa // vmovups ymm1, yword [rdx + 8*rdi + 32]
LONG $0x5410fcc5; WORD $0x40fa // vmovups ymm2, yword [rdx + 8*rdi + 64]
LONG $0x5c10fcc5; WORD $0x60fa // vmovups ymm3, yword [rdx + 8*rdi + 96]
LONG $0x0411fcc5; BYTE $0xf9 // vmovups yword [rcx + 8*rdi], ymm0
LONG $0x4c11fcc5; WORD $0x20f9 // vmovups yword [rcx + 8*rdi + 32], ymm1
LONG $0x5411fcc5; WORD $0x40f9 // vmovups yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c11fcc5; WORD $0x60f9 // vmovups yword [rcx + 8*rdi + 96], ymm3
QUAD $0x000080fa8410fdc5; BYTE $0x00 // vmovupd ymm0, yword [rdx + 8*rdi + 128]
QUAD $0x0000a0fa8c10fdc5; BYTE $0x00 // vmovupd ymm1, yword [rdx + 8*rdi + 160]
QUAD $0x0000c0fa9410fdc5; BYTE $0x00 // vmovupd ymm2, yword [rdx + 8*rdi + 192]
QUAD $0x0000e0fa9c10fdc5; BYTE $0x00 // vmovupd ymm3, yword [rdx + 8*rdi + 224]
QUAD $0x000080f98411fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 128], ymm0
QUAD $0x0000a0f98c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 160], ymm1
QUAD $0x0000c0f99411fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 192], ymm2
QUAD $0x0000e0f99c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 224], ymm3
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_849
JMP LBB0_1402
LBB0_860:
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_1409
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_862:
LONG $0x0410fcc5; BYTE $0xfa // vmovups ymm0, yword [rdx + 8*rdi]
LONG $0x4c10fcc5; WORD $0x20fa // vmovups ymm1, yword [rdx + 8*rdi + 32]
LONG $0x5410fcc5; WORD $0x40fa // vmovups ymm2, yword [rdx + 8*rdi + 64]
LONG $0x5c10fcc5; WORD $0x60fa // vmovups ymm3, yword [rdx + 8*rdi + 96]
LONG $0x0411fcc5; BYTE $0xf9 // vmovups yword [rcx + 8*rdi], ymm0
LONG $0x4c11fcc5; WORD $0x20f9 // vmovups yword [rcx + 8*rdi + 32], ymm1
LONG $0x5411fcc5; WORD $0x40f9 // vmovups yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c11fcc5; WORD $0x60f9 // vmovups yword [rcx + 8*rdi + 96], ymm3
QUAD $0x000080fa8410fdc5; BYTE $0x00 // vmovupd ymm0, yword [rdx + 8*rdi + 128]
QUAD $0x0000a0fa8c10fdc5; BYTE $0x00 // vmovupd ymm1, yword [rdx + 8*rdi + 160]
QUAD $0x0000c0fa9410fdc5; BYTE $0x00 // vmovupd ymm2, yword [rdx + 8*rdi + 192]
QUAD $0x0000e0fa9c10fdc5; BYTE $0x00 // vmovupd ymm3, yword [rdx + 8*rdi + 224]
QUAD $0x000080f98411fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 128], ymm0
QUAD $0x0000a0f98c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 160], ymm1
QUAD $0x0000c0f99411fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 192], ymm2
QUAD $0x0000e0f99c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 8*rdi + 224], ymm3
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_862
JMP LBB0_1410
LBB0_863:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xe0 // and esi, -32
LONG $0xe0468d48 // lea rax, [rsi - 32]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x05e8c149 // shr r8, 5
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1417
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_865:
LONG $0x0410fcc5; BYTE $0xba // vmovups ymm0, yword [rdx + 4*rdi]
LONG $0x4c10fcc5; WORD $0x20ba // vmovups ymm1, yword [rdx + 4*rdi + 32]
LONG $0x5410fcc5; WORD $0x40ba // vmovups ymm2, yword [rdx + 4*rdi + 64]
LONG $0x5c10fcc5; WORD $0x60ba // vmovups ymm3, yword [rdx + 4*rdi + 96]
LONG $0x0411fcc5; BYTE $0xb9 // vmovups yword [rcx + 4*rdi], ymm0
LONG $0x4c11fcc5; WORD $0x20b9 // vmovups yword [rcx + 4*rdi + 32], ymm1
LONG $0x5411fcc5; WORD $0x40b9 // vmovups yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c11fcc5; WORD $0x60b9 // vmovups yword [rcx + 4*rdi + 96], ymm3
QUAD $0x000080ba8410fdc5; BYTE $0x00 // vmovupd ymm0, yword [rdx + 4*rdi + 128]
QUAD $0x0000a0ba8c10fdc5; BYTE $0x00 // vmovupd ymm1, yword [rdx + 4*rdi + 160]
QUAD $0x0000c0ba9410fdc5; BYTE $0x00 // vmovupd ymm2, yword [rdx + 4*rdi + 192]
QUAD $0x0000e0ba9c10fdc5; BYTE $0x00 // vmovupd ymm3, yword [rdx + 4*rdi + 224]
QUAD $0x000080b98411fdc5; BYTE $0x00 // vmovupd yword [rcx + 4*rdi + 128], ymm0
QUAD $0x0000a0b98c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 4*rdi + 160], ymm1
QUAD $0x0000c0b99411fdc5; BYTE $0x00 // vmovupd yword [rcx + 4*rdi + 192], ymm2
QUAD $0x0000e0b99c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 4*rdi + 224], ymm3
LONG $0x40c78348 // add rdi, 64
LONG $0x02c08348 // add rax, 2
JNE LBB0_865
JMP LBB0_1418
LBB0_866:
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_1425
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 $0x327de2c4; WORD $0x3a04 // vpmovzxbq ymm0, dword [rdx + rdi]
LONG $0x327de2c4; WORD $0x3a4c; BYTE $0x04 // vpmovzxbq ymm1, dword [rdx + rdi + 4]
LONG $0x327de2c4; WORD $0x3a54; BYTE $0x08 // vpmovzxbq ymm2, dword [rdx + rdi + 8]
LONG $0x327de2c4; WORD $0x3a5c; BYTE $0x0c // vpmovzxbq ymm3, dword [rdx + rdi + 12]
LONG $0x047ffec5; BYTE $0xf9 // vmovdqu yword [rcx + 8*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20f9 // vmovdqu yword [rcx + 8*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40f9 // vmovdqu yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60f9 // vmovdqu yword [rcx + 8*rdi + 96], ymm3
LONG $0x327de2c4; WORD $0x3a44; BYTE $0x10 // vpmovzxbq ymm0, dword [rdx + rdi + 16]
LONG $0x327de2c4; WORD $0x3a4c; BYTE $0x14 // vpmovzxbq ymm1, dword [rdx + rdi + 20]
LONG $0x327de2c4; WORD $0x3a54; BYTE $0x18 // vpmovzxbq ymm2, dword [rdx + rdi + 24]
LONG $0x327de2c4; WORD $0x3a5c; BYTE $0x1c // vpmovzxbq ymm3, dword [rdx + rdi + 28]
QUAD $0x000080f9847ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 128], ymm0
QUAD $0x0000a0f98c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 160], ymm1
QUAD $0x0000c0f9947ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 192], ymm2
QUAD $0x0000e0f99c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 8*rdi + 224], ymm3
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_868
JMP LBB0_1426
LBB0_869:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xe0 // and esi, -32
LONG $0xe0468d48 // lea rax, [rsi - 32]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x05e8c149 // shr r8, 5
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1433
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_871:
LONG $0x317de2c4; WORD $0x3a04 // vpmovzxbd ymm0, qword [rdx + rdi]
LONG $0x317de2c4; WORD $0x3a4c; BYTE $0x08 // vpmovzxbd ymm1, qword [rdx + rdi + 8]
LONG $0x317de2c4; WORD $0x3a54; BYTE $0x10 // vpmovzxbd ymm2, qword [rdx + rdi + 16]
LONG $0x317de2c4; WORD $0x3a5c; BYTE $0x18 // vpmovzxbd ymm3, qword [rdx + rdi + 24]
LONG $0xc05bfcc5 // vcvtdq2ps ymm0, ymm0
LONG $0xc95bfcc5 // vcvtdq2ps ymm1, ymm1
LONG $0xd25bfcc5 // vcvtdq2ps ymm2, ymm2
LONG $0xdb5bfcc5 // vcvtdq2ps ymm3, ymm3
LONG $0x0411fcc5; BYTE $0xb9 // vmovups yword [rcx + 4*rdi], ymm0
LONG $0x4c11fcc5; WORD $0x20b9 // vmovups yword [rcx + 4*rdi + 32], ymm1
LONG $0x5411fcc5; WORD $0x40b9 // vmovups yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c11fcc5; WORD $0x60b9 // vmovups yword [rcx + 4*rdi + 96], ymm3
LONG $0x317de2c4; WORD $0x3a44; BYTE $0x20 // vpmovzxbd ymm0, qword [rdx + rdi + 32]
LONG $0x317de2c4; WORD $0x3a4c; BYTE $0x28 // vpmovzxbd ymm1, qword [rdx + rdi + 40]
LONG $0x317de2c4; WORD $0x3a54; BYTE $0x30 // vpmovzxbd ymm2, qword [rdx + rdi + 48]
LONG $0x317de2c4; WORD $0x3a5c; BYTE $0x38 // vpmovzxbd ymm3, qword [rdx + rdi + 56]
LONG $0xc05bfcc5 // vcvtdq2ps ymm0, ymm0
LONG $0xc95bfcc5 // vcvtdq2ps ymm1, ymm1
LONG $0xd25bfcc5 // vcvtdq2ps ymm2, ymm2
LONG $0xdb5bfcc5 // vcvtdq2ps ymm3, ymm3
QUAD $0x000080b98411fcc5; BYTE $0x00 // vmovups yword [rcx + 4*rdi + 128], ymm0
QUAD $0x0000a0b98c11fcc5; BYTE $0x00 // vmovups yword [rcx + 4*rdi + 160], ymm1
QUAD $0x0000c0b99411fcc5; BYTE $0x00 // vmovups yword [rcx + 4*rdi + 192], ymm2
QUAD $0x0000e0b99c11fcc5; BYTE $0x00 // vmovups yword [rcx + 4*rdi + 224], ymm3
LONG $0x40c78348 // add rdi, 64
LONG $0x02c08348 // add rax, 2
JNE LBB0_871
JMP LBB0_1434
LBB0_872:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xe0 // and esi, -32
LONG $0xe0468d48 // lea rax, [rsi - 32]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x05e8c149 // shr r8, 5
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1441
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LONG $0x456ff9c5; BYTE $0x70 // vmovdqa xmm0, oword 112[rbp] /* [rip + .LCPI0_12] */
LBB0_874:
LONG $0x0c6ffac5; BYTE $0xba // vmovdqu xmm1, oword [rdx + 4*rdi]
LONG $0x546ffac5; WORD $0x10ba // vmovdqu xmm2, oword [rdx + 4*rdi + 16]
LONG $0x5c6ffac5; WORD $0x20ba // vmovdqu xmm3, oword [rdx + 4*rdi + 32]
LONG $0x646ffac5; WORD $0x30ba // vmovdqu xmm4, oword [rdx + 4*rdi + 48]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
LONG $0x0071e2c4; BYTE $0xc8 // vpshufb xmm1, xmm1, xmm0
LONG $0xca62f1c5 // vpunpckldq xmm1, xmm1, xmm2
LONG $0x0059e2c4; BYTE $0xd0 // vpshufb xmm2, xmm4, xmm0
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd262e1c5 // vpunpckldq xmm2, xmm3, xmm2
LONG $0x5c6ffac5; WORD $0x50ba // vmovdqu xmm3, oword [rdx + 4*rdi + 80]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0x646ffac5; WORD $0x40ba // vmovdqu xmm4, oword [rdx + 4*rdi + 64]
LONG $0x0059e2c4; BYTE $0xe0 // vpshufb xmm4, xmm4, xmm0
LONG $0xdb62d9c5 // vpunpckldq xmm3, xmm4, xmm3
LONG $0x646ffac5; WORD $0x70ba // vmovdqu xmm4, oword [rdx + 4*rdi + 112]
LONG $0x0059e2c4; BYTE $0xe0 // vpshufb xmm4, xmm4, xmm0
LONG $0x6c6ffac5; WORD $0x60ba // vmovdqu xmm5, oword [rdx + 4*rdi + 96]
LONG $0x0051e2c4; BYTE $0xe8 // vpshufb xmm5, xmm5, xmm0
LONG $0xe462d1c5 // vpunpckldq xmm4, xmm5, xmm4
LONG $0x3865e3c4; WORD $0x01dc // vinserti128 ymm3, ymm3, xmm4, 1
LONG $0x3875e3c4; WORD $0x01ca // vinserti128 ymm1, ymm1, xmm2, 1
LONG $0xcb6cf5c5 // vpunpcklqdq ymm1, ymm1, ymm3
LONG $0x00fde3c4; WORD $0xd8c9 // vpermq ymm1, ymm1, 216
LONG $0x0c7ffec5; BYTE $0x39 // vmovdqu yword [rcx + rdi], ymm1
QUAD $0x000080ba8c6ffac5; BYTE $0x00 // vmovdqu xmm1, oword [rdx + 4*rdi + 128]
QUAD $0x000090ba946ffac5; BYTE $0x00 // vmovdqu xmm2, oword [rdx + 4*rdi + 144]
QUAD $0x0000a0ba9c6ffac5; BYTE $0x00 // vmovdqu xmm3, oword [rdx + 4*rdi + 160]
QUAD $0x0000b0baa46ffac5; BYTE $0x00 // vmovdqu xmm4, oword [rdx + 4*rdi + 176]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
LONG $0x0071e2c4; BYTE $0xc8 // vpshufb xmm1, xmm1, xmm0
LONG $0xca62f1c5 // vpunpckldq xmm1, xmm1, xmm2
LONG $0x0059e2c4; BYTE $0xd0 // vpshufb xmm2, xmm4, xmm0
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd262e1c5 // vpunpckldq xmm2, xmm3, xmm2
QUAD $0x0000d0ba9c6ffac5; BYTE $0x00 // vmovdqu xmm3, oword [rdx + 4*rdi + 208]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
QUAD $0x0000c0baa46ffac5; BYTE $0x00 // vmovdqu xmm4, oword [rdx + 4*rdi + 192]
LONG $0x0059e2c4; BYTE $0xe0 // vpshufb xmm4, xmm4, xmm0
LONG $0xdb62d9c5 // vpunpckldq xmm3, xmm4, xmm3
QUAD $0x0000f0baa46ffac5; BYTE $0x00 // vmovdqu xmm4, oword [rdx + 4*rdi + 240]
LONG $0x0059e2c4; BYTE $0xe0 // vpshufb xmm4, xmm4, xmm0
QUAD $0x0000e0baac6ffac5; BYTE $0x00 // vmovdqu xmm5, oword [rdx + 4*rdi + 224]
LONG $0x0051e2c4; BYTE $0xe8 // vpshufb xmm5, xmm5, xmm0
LONG $0xe462d1c5 // vpunpckldq xmm4, xmm5, xmm4
LONG $0x3865e3c4; WORD $0x01dc // vinserti128 ymm3, ymm3, xmm4, 1
LONG $0x3875e3c4; WORD $0x01ca // vinserti128 ymm1, ymm1, xmm2, 1
LONG $0xcb6cf5c5 // vpunpcklqdq ymm1, ymm1, ymm3
LONG $0x00fde3c4; WORD $0xd8c9 // vpermq ymm1, ymm1, 216
LONG $0x4c7ffec5; WORD $0x2039 // vmovdqu yword [rcx + rdi + 32], ymm1
LONG $0x40c78348 // add rdi, 64
LONG $0x02c08348 // add rax, 2
JNE LBB0_874
JMP LBB0_1442
LBB0_875:
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_1449
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_877:
LONG $0x04e6fdc5; BYTE $0xfa // vcvttpd2dq xmm0, yword [rdx + 8*rdi]
LONG $0x2b79e2c4; BYTE $0xc0 // vpackusdw xmm0, xmm0, xmm0
LONG $0x4ce6fdc5; WORD $0x20fa // vcvttpd2dq xmm1, yword [rdx + 8*rdi + 32]
LONG $0xc067f9c5 // vpackuswb xmm0, xmm0, xmm0
LONG $0x2b71e2c4; BYTE $0xc9 // vpackusdw xmm1, xmm1, xmm1
LONG $0xc967f1c5 // vpackuswb xmm1, xmm1, xmm1
LONG $0xc162f9c5 // vpunpckldq xmm0, xmm0, xmm1
LONG $0x4ce6fdc5; WORD $0x40fa // vcvttpd2dq xmm1, yword [rdx + 8*rdi + 64]
LONG $0x2b71e2c4; BYTE $0xc9 // vpackusdw xmm1, xmm1, xmm1
LONG $0xc967f1c5 // vpackuswb xmm1, xmm1, xmm1
LONG $0x54e6fdc5; WORD $0x60fa // vcvttpd2dq xmm2, yword [rdx + 8*rdi + 96]
LONG $0x2b69e2c4; BYTE $0xd2 // vpackusdw xmm2, xmm2, xmm2
LONG $0xd267e9c5 // vpackuswb xmm2, xmm2, xmm2
LONG $0xca62f1c5 // vpunpckldq xmm1, xmm1, xmm2
LONG $0xc16cf9c5 // vpunpcklqdq xmm0, xmm0, xmm1
LONG $0x047ffac5; BYTE $0x39 // vmovdqu oword [rcx + rdi], xmm0
QUAD $0x000080fa84e6fdc5; BYTE $0x00 // vcvttpd2dq xmm0, yword [rdx + 8*rdi + 128]
QUAD $0x0000a0fa8ce6fdc5; BYTE $0x00 // vcvttpd2dq xmm1, yword [rdx + 8*rdi + 160]
LONG $0x2b79e2c4; BYTE $0xc0 // vpackusdw xmm0, xmm0, xmm0
LONG $0xc067f9c5 // vpackuswb xmm0, xmm0, xmm0
LONG $0x2b71e2c4; BYTE $0xc9 // vpackusdw xmm1, xmm1, xmm1
LONG $0xc967f1c5 // vpackuswb xmm1, xmm1, xmm1
LONG $0xc162f9c5 // vpunpckldq xmm0, xmm0, xmm1
QUAD $0x0000c0fa8ce6fdc5; BYTE $0x00 // vcvttpd2dq xmm1, yword [rdx + 8*rdi + 192]
LONG $0x2b71e2c4; BYTE $0xc9 // vpackusdw xmm1, xmm1, xmm1
QUAD $0x0000e0fa94e6fdc5; BYTE $0x00 // vcvttpd2dq xmm2, yword [rdx + 8*rdi + 224]
LONG $0xc967f1c5 // vpackuswb xmm1, xmm1, xmm1
LONG $0x2b69e2c4; BYTE $0xd2 // vpackusdw xmm2, xmm2, xmm2
LONG $0xd267e9c5 // vpackuswb xmm2, xmm2, xmm2
LONG $0xca62f1c5 // vpunpckldq xmm1, xmm1, xmm2
LONG $0xc16cf9c5 // vpunpcklqdq xmm0, xmm0, xmm1
LONG $0x447ffac5; WORD $0x1039 // vmovdqu oword [rcx + rdi + 16], xmm0
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_877
JMP LBB0_1450
LBB0_878:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0x80 // and esi, -128
LONG $0x80468d48 // lea rax, [rsi - 128]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x07e8c149 // shr r8, 7
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1457
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_880:
LONG $0x0410fcc5; BYTE $0x3a // vmovups ymm0, yword [rdx + rdi]
LONG $0x4c10fcc5; WORD $0x203a // vmovups ymm1, yword [rdx + rdi + 32]
LONG $0x5410fcc5; WORD $0x403a // vmovups ymm2, yword [rdx + rdi + 64]
LONG $0x5c10fcc5; WORD $0x603a // vmovups ymm3, yword [rdx + rdi + 96]
LONG $0x0411fcc5; BYTE $0x39 // vmovups yword [rcx + rdi], ymm0
LONG $0x4c11fcc5; WORD $0x2039 // vmovups yword [rcx + rdi + 32], ymm1
LONG $0x5411fcc5; WORD $0x4039 // vmovups yword [rcx + rdi + 64], ymm2
LONG $0x5c11fcc5; WORD $0x6039 // vmovups yword [rcx + rdi + 96], ymm3
QUAD $0x0000803a8410fdc5; BYTE $0x00 // vmovupd ymm0, yword [rdx + rdi + 128]
QUAD $0x0000a03a8c10fdc5; BYTE $0x00 // vmovupd ymm1, yword [rdx + rdi + 160]
QUAD $0x0000c03a9410fdc5; BYTE $0x00 // vmovupd ymm2, yword [rdx + rdi + 192]
QUAD $0x0000e03a9c10fdc5; BYTE $0x00 // vmovupd ymm3, yword [rdx + rdi + 224]
QUAD $0x000080398411fdc5; BYTE $0x00 // vmovupd yword [rcx + rdi + 128], ymm0
QUAD $0x0000a0398c11fdc5; BYTE $0x00 // vmovupd yword [rcx + rdi + 160], ymm1
QUAD $0x0000c0399411fdc5; BYTE $0x00 // vmovupd yword [rcx + rdi + 192], ymm2
QUAD $0x0000e0399c11fdc5; BYTE $0x00 // vmovupd yword [rcx + rdi + 224], ymm3
LONG $0x00c78148; WORD $0x0001; BYTE $0x00 // add rdi, 256
LONG $0x02c08348 // add rax, 2
JNE LBB0_880
JMP LBB0_1458
LBB0_881:
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_1465
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LONG $0x456ff9c5; BYTE $0x40 // vmovdqa xmm0, oword 64[rbp] /* [rip + .LCPI0_4] */
LBB0_883:
LONG $0x0c6ffac5; BYTE $0xfa // vmovdqu xmm1, oword [rdx + 8*rdi]
LONG $0x546ffac5; WORD $0x10fa // vmovdqu xmm2, oword [rdx + 8*rdi + 16]
LONG $0x5c6ffac5; WORD $0x20fa // vmovdqu xmm3, oword [rdx + 8*rdi + 32]
LONG $0x646ffac5; WORD $0x30fa // vmovdqu xmm4, oword [rdx + 8*rdi + 48]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
LONG $0x0071e2c4; BYTE $0xc8 // vpshufb xmm1, xmm1, xmm0
LONG $0xca61f1c5 // vpunpcklwd xmm1, xmm1, xmm2
LONG $0x0059e2c4; BYTE $0xd0 // vpshufb xmm2, xmm4, xmm0
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd261e1c5 // vpunpcklwd xmm2, xmm3, xmm2
LONG $0xca62f1c5 // vpunpckldq xmm1, xmm1, xmm2
LONG $0x546ffac5; WORD $0x50fa // vmovdqu xmm2, oword [rdx + 8*rdi + 80]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
LONG $0x5c6ffac5; WORD $0x40fa // vmovdqu xmm3, oword [rdx + 8*rdi + 64]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd261e1c5 // vpunpcklwd xmm2, xmm3, xmm2
LONG $0x5c6ffac5; WORD $0x70fa // vmovdqu xmm3, oword [rdx + 8*rdi + 112]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0x646ffac5; WORD $0x60fa // vmovdqu xmm4, oword [rdx + 8*rdi + 96]
LONG $0x0059e2c4; BYTE $0xe0 // vpshufb xmm4, xmm4, xmm0
LONG $0xdb61d9c5 // vpunpcklwd xmm3, xmm4, xmm3
LONG $0xd362e9c5 // vpunpckldq xmm2, xmm2, xmm3
LONG $0xca6cf1c5 // vpunpcklqdq xmm1, xmm1, xmm2
LONG $0x0c7ffac5; BYTE $0x39 // vmovdqu oword [rcx + rdi], xmm1
QUAD $0x000080fa8c6ffac5; BYTE $0x00 // vmovdqu xmm1, oword [rdx + 8*rdi + 128]
QUAD $0x000090fa946ffac5; BYTE $0x00 // vmovdqu xmm2, oword [rdx + 8*rdi + 144]
QUAD $0x0000a0fa9c6ffac5; BYTE $0x00 // vmovdqu xmm3, oword [rdx + 8*rdi + 160]
QUAD $0x0000b0faa46ffac5; BYTE $0x00 // vmovdqu xmm4, oword [rdx + 8*rdi + 176]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
LONG $0x0071e2c4; BYTE $0xc8 // vpshufb xmm1, xmm1, xmm0
LONG $0xca61f1c5 // vpunpcklwd xmm1, xmm1, xmm2
LONG $0x0059e2c4; BYTE $0xd0 // vpshufb xmm2, xmm4, xmm0
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd261e1c5 // vpunpcklwd xmm2, xmm3, xmm2
LONG $0xca62f1c5 // vpunpckldq xmm1, xmm1, xmm2
QUAD $0x0000d0fa946ffac5; BYTE $0x00 // vmovdqu xmm2, oword [rdx + 8*rdi + 208]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
QUAD $0x0000c0fa9c6ffac5; BYTE $0x00 // vmovdqu xmm3, oword [rdx + 8*rdi + 192]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd261e1c5 // vpunpcklwd xmm2, xmm3, xmm2
QUAD $0x0000f0fa9c6ffac5; BYTE $0x00 // vmovdqu xmm3, oword [rdx + 8*rdi + 240]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
QUAD $0x0000e0faa46ffac5; BYTE $0x00 // vmovdqu xmm4, oword [rdx + 8*rdi + 224]
LONG $0x0059e2c4; BYTE $0xe0 // vpshufb xmm4, xmm4, xmm0
LONG $0xdb61d9c5 // vpunpcklwd xmm3, xmm4, xmm3
LONG $0xd362e9c5 // vpunpckldq xmm2, xmm2, xmm3
LONG $0xca6cf1c5 // vpunpcklqdq xmm1, xmm1, xmm2
LONG $0x4c7ffac5; WORD $0x1039 // vmovdqu oword [rcx + rdi + 16], xmm1
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_883
JMP LBB0_1466
LBB0_884:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xc0 // and esi, -64
LONG $0xc0468d48 // lea rax, [rsi - 64]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x06e8c149 // shr r8, 6
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1473
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
QUAD $0x000000a0856ffdc5 // vmovdqa ymm0, yword 160[rbp] /* [rip + .LCPI0_16] */
LBB0_886:
LONG $0x0cdbfdc5; BYTE $0x7a // vpand ymm1, ymm0, yword [rdx + 2*rdi]
LONG $0x397de3c4; WORD $0x01ca // vextracti128 xmm2, ymm1, 1
LONG $0xca67f1c5 // vpackuswb xmm1, xmm1, xmm2
LONG $0x54dbfdc5; WORD $0x207a // vpand ymm2, ymm0, yword [rdx + 2*rdi + 32]
LONG $0x397de3c4; WORD $0x01d3 // vextracti128 xmm3, ymm2, 1
LONG $0xd367e9c5 // vpackuswb xmm2, xmm2, xmm3
LONG $0x5cdbfdc5; WORD $0x407a // vpand ymm3, ymm0, yword [rdx + 2*rdi + 64]
LONG $0x397de3c4; WORD $0x01dc // vextracti128 xmm4, ymm3, 1
LONG $0xdc67e1c5 // vpackuswb xmm3, xmm3, xmm4
LONG $0x64dbfdc5; WORD $0x607a // vpand ymm4, ymm0, yword [rdx + 2*rdi + 96]
LONG $0x397de3c4; WORD $0x01e5 // vextracti128 xmm5, ymm4, 1
LONG $0xe567d9c5 // vpackuswb xmm4, xmm4, xmm5
LONG $0x0c7ffac5; BYTE $0x39 // vmovdqu oword [rcx + rdi], xmm1
LONG $0x547ffac5; WORD $0x1039 // vmovdqu oword [rcx + rdi + 16], xmm2
LONG $0x5c7ffac5; WORD $0x2039 // vmovdqu oword [rcx + rdi + 32], xmm3
LONG $0x647ffac5; WORD $0x3039 // vmovdqu oword [rcx + rdi + 48], xmm4
QUAD $0x0000807a8cdbfdc5; BYTE $0x00 // vpand ymm1, ymm0, yword [rdx + 2*rdi + 128]
LONG $0x397de3c4; WORD $0x01ca // vextracti128 xmm2, ymm1, 1
LONG $0xca67f1c5 // vpackuswb xmm1, xmm1, xmm2
QUAD $0x0000a07a94dbfdc5; BYTE $0x00 // vpand ymm2, ymm0, yword [rdx + 2*rdi + 160]
LONG $0x397de3c4; WORD $0x01d3 // vextracti128 xmm3, ymm2, 1
LONG $0xd367e9c5 // vpackuswb xmm2, xmm2, xmm3
QUAD $0x0000c07a9cdbfdc5; BYTE $0x00 // vpand ymm3, ymm0, yword [rdx + 2*rdi + 192]
LONG $0x397de3c4; WORD $0x01dc // vextracti128 xmm4, ymm3, 1
LONG $0xdc67e1c5 // vpackuswb xmm3, xmm3, xmm4
QUAD $0x0000e07aa4dbfdc5; BYTE $0x00 // vpand ymm4, ymm0, yword [rdx + 2*rdi + 224]
LONG $0x397de3c4; WORD $0x01e5 // vextracti128 xmm5, ymm4, 1
LONG $0xe567d9c5 // vpackuswb xmm4, xmm4, xmm5
LONG $0x4c7ffac5; WORD $0x4039 // vmovdqu oword [rcx + rdi + 64], xmm1
LONG $0x547ffac5; WORD $0x5039 // vmovdqu oword [rcx + rdi + 80], xmm2
LONG $0x5c7ffac5; WORD $0x6039 // vmovdqu oword [rcx + rdi + 96], xmm3
LONG $0x647ffac5; WORD $0x7039 // vmovdqu oword [rcx + rdi + 112], xmm4
LONG $0x80ef8348 // sub rdi, -128
LONG $0x02c08348 // add rax, 2
JNE LBB0_886
JMP LBB0_1474
LBB0_887:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xc0 // and esi, -64
LONG $0xc0468d48 // lea rax, [rsi - 64]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x06e8c149 // shr r8, 6
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1481
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
QUAD $0x000000a0856ffdc5 // vmovdqa ymm0, yword 160[rbp] /* [rip + .LCPI0_16] */
LBB0_889:
LONG $0x0cdbfdc5; BYTE $0x7a // vpand ymm1, ymm0, yword [rdx + 2*rdi]
LONG $0x397de3c4; WORD $0x01ca // vextracti128 xmm2, ymm1, 1
LONG $0xca67f1c5 // vpackuswb xmm1, xmm1, xmm2
LONG $0x54dbfdc5; WORD $0x207a // vpand ymm2, ymm0, yword [rdx + 2*rdi + 32]
LONG $0x397de3c4; WORD $0x01d3 // vextracti128 xmm3, ymm2, 1
LONG $0xd367e9c5 // vpackuswb xmm2, xmm2, xmm3
LONG $0x5cdbfdc5; WORD $0x407a // vpand ymm3, ymm0, yword [rdx + 2*rdi + 64]
LONG $0x397de3c4; WORD $0x01dc // vextracti128 xmm4, ymm3, 1
LONG $0xdc67e1c5 // vpackuswb xmm3, xmm3, xmm4
LONG $0x64dbfdc5; WORD $0x607a // vpand ymm4, ymm0, yword [rdx + 2*rdi + 96]
LONG $0x397de3c4; WORD $0x01e5 // vextracti128 xmm5, ymm4, 1
LONG $0xe567d9c5 // vpackuswb xmm4, xmm4, xmm5
LONG $0x0c7ffac5; BYTE $0x39 // vmovdqu oword [rcx + rdi], xmm1
LONG $0x547ffac5; WORD $0x1039 // vmovdqu oword [rcx + rdi + 16], xmm2
LONG $0x5c7ffac5; WORD $0x2039 // vmovdqu oword [rcx + rdi + 32], xmm3
LONG $0x647ffac5; WORD $0x3039 // vmovdqu oword [rcx + rdi + 48], xmm4
QUAD $0x0000807a8cdbfdc5; BYTE $0x00 // vpand ymm1, ymm0, yword [rdx + 2*rdi + 128]
LONG $0x397de3c4; WORD $0x01ca // vextracti128 xmm2, ymm1, 1
LONG $0xca67f1c5 // vpackuswb xmm1, xmm1, xmm2
QUAD $0x0000a07a94dbfdc5; BYTE $0x00 // vpand ymm2, ymm0, yword [rdx + 2*rdi + 160]
LONG $0x397de3c4; WORD $0x01d3 // vextracti128 xmm3, ymm2, 1
LONG $0xd367e9c5 // vpackuswb xmm2, xmm2, xmm3
QUAD $0x0000c07a9cdbfdc5; BYTE $0x00 // vpand ymm3, ymm0, yword [rdx + 2*rdi + 192]
LONG $0x397de3c4; WORD $0x01dc // vextracti128 xmm4, ymm3, 1
LONG $0xdc67e1c5 // vpackuswb xmm3, xmm3, xmm4
QUAD $0x0000e07aa4dbfdc5; BYTE $0x00 // vpand ymm4, ymm0, yword [rdx + 2*rdi + 224]
LONG $0x397de3c4; WORD $0x01e5 // vextracti128 xmm5, ymm4, 1
LONG $0xe567d9c5 // vpackuswb xmm4, xmm4, xmm5
LONG $0x4c7ffac5; WORD $0x4039 // vmovdqu oword [rcx + rdi + 64], xmm1
LONG $0x547ffac5; WORD $0x5039 // vmovdqu oword [rcx + rdi + 80], xmm2
LONG $0x5c7ffac5; WORD $0x6039 // vmovdqu oword [rcx + rdi + 96], xmm3
LONG $0x647ffac5; WORD $0x7039 // vmovdqu oword [rcx + rdi + 112], xmm4
LONG $0x80ef8348 // sub rdi, -128
LONG $0x02c08348 // add rax, 2
JNE LBB0_889
JMP LBB0_1482
LBB0_890:
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_1489
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LONG $0x456ff9c5; BYTE $0x40 // vmovdqa xmm0, oword 64[rbp] /* [rip + .LCPI0_4] */
LBB0_892:
LONG $0x0c6ffac5; BYTE $0xfa // vmovdqu xmm1, oword [rdx + 8*rdi]
LONG $0x546ffac5; WORD $0x10fa // vmovdqu xmm2, oword [rdx + 8*rdi + 16]
LONG $0x5c6ffac5; WORD $0x20fa // vmovdqu xmm3, oword [rdx + 8*rdi + 32]
LONG $0x646ffac5; WORD $0x30fa // vmovdqu xmm4, oword [rdx + 8*rdi + 48]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
LONG $0x0071e2c4; BYTE $0xc8 // vpshufb xmm1, xmm1, xmm0
LONG $0xca61f1c5 // vpunpcklwd xmm1, xmm1, xmm2
LONG $0x0059e2c4; BYTE $0xd0 // vpshufb xmm2, xmm4, xmm0
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd261e1c5 // vpunpcklwd xmm2, xmm3, xmm2
LONG $0xca62f1c5 // vpunpckldq xmm1, xmm1, xmm2
LONG $0x546ffac5; WORD $0x50fa // vmovdqu xmm2, oword [rdx + 8*rdi + 80]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
LONG $0x5c6ffac5; WORD $0x40fa // vmovdqu xmm3, oword [rdx + 8*rdi + 64]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd261e1c5 // vpunpcklwd xmm2, xmm3, xmm2
LONG $0x5c6ffac5; WORD $0x70fa // vmovdqu xmm3, oword [rdx + 8*rdi + 112]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0x646ffac5; WORD $0x60fa // vmovdqu xmm4, oword [rdx + 8*rdi + 96]
LONG $0x0059e2c4; BYTE $0xe0 // vpshufb xmm4, xmm4, xmm0
LONG $0xdb61d9c5 // vpunpcklwd xmm3, xmm4, xmm3
LONG $0xd362e9c5 // vpunpckldq xmm2, xmm2, xmm3
LONG $0xca6cf1c5 // vpunpcklqdq xmm1, xmm1, xmm2
LONG $0x0c7ffac5; BYTE $0x39 // vmovdqu oword [rcx + rdi], xmm1
QUAD $0x000080fa8c6ffac5; BYTE $0x00 // vmovdqu xmm1, oword [rdx + 8*rdi + 128]
QUAD $0x000090fa946ffac5; BYTE $0x00 // vmovdqu xmm2, oword [rdx + 8*rdi + 144]
QUAD $0x0000a0fa9c6ffac5; BYTE $0x00 // vmovdqu xmm3, oword [rdx + 8*rdi + 160]
QUAD $0x0000b0faa46ffac5; BYTE $0x00 // vmovdqu xmm4, oword [rdx + 8*rdi + 176]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
LONG $0x0071e2c4; BYTE $0xc8 // vpshufb xmm1, xmm1, xmm0
LONG $0xca61f1c5 // vpunpcklwd xmm1, xmm1, xmm2
LONG $0x0059e2c4; BYTE $0xd0 // vpshufb xmm2, xmm4, xmm0
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd261e1c5 // vpunpcklwd xmm2, xmm3, xmm2
LONG $0xca62f1c5 // vpunpckldq xmm1, xmm1, xmm2
QUAD $0x0000d0fa946ffac5; BYTE $0x00 // vmovdqu xmm2, oword [rdx + 8*rdi + 208]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
QUAD $0x0000c0fa9c6ffac5; BYTE $0x00 // vmovdqu xmm3, oword [rdx + 8*rdi + 192]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd261e1c5 // vpunpcklwd xmm2, xmm3, xmm2
QUAD $0x0000f0fa9c6ffac5; BYTE $0x00 // vmovdqu xmm3, oword [rdx + 8*rdi + 240]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
QUAD $0x0000e0faa46ffac5; BYTE $0x00 // vmovdqu xmm4, oword [rdx + 8*rdi + 224]
LONG $0x0059e2c4; BYTE $0xe0 // vpshufb xmm4, xmm4, xmm0
LONG $0xdb61d9c5 // vpunpcklwd xmm3, xmm4, xmm3
LONG $0xd362e9c5 // vpunpckldq xmm2, xmm2, xmm3
LONG $0xca6cf1c5 // vpunpcklqdq xmm1, xmm1, xmm2
LONG $0x4c7ffac5; WORD $0x1039 // vmovdqu oword [rcx + rdi + 16], xmm1
LONG $0x20c78348 // add rdi, 32
LONG $0x02c08348 // add rax, 2
JNE LBB0_892
JMP LBB0_1490
LBB0_893:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xe0 // and esi, -32
LONG $0xe0468d48 // lea rax, [rsi - 32]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x05e8c149 // shr r8, 5
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1497
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_895:
LONG $0x045bfec5; BYTE $0xba // vcvttps2dq ymm0, yword [rdx + 4*rdi]
LONG $0x397de3c4; WORD $0x01c1 // vextracti128 xmm1, ymm0, 1
LONG $0x545bfec5; WORD $0x20ba // vcvttps2dq ymm2, yword [rdx + 4*rdi + 32]
LONG $0xc16bf9c5 // vpackssdw xmm0, xmm0, xmm1
LONG $0x397de3c4; WORD $0x01d1 // vextracti128 xmm1, ymm2, 1
LONG $0x5c5bfec5; WORD $0x40ba // vcvttps2dq ymm3, yword [rdx + 4*rdi + 64]
LONG $0xc96be9c5 // vpackssdw xmm1, xmm2, xmm1
LONG $0x397de3c4; WORD $0x01da // vextracti128 xmm2, ymm3, 1
LONG $0x645bfec5; WORD $0x60ba // vcvttps2dq ymm4, yword [rdx + 4*rdi + 96]
LONG $0xd26be1c5 // vpackssdw xmm2, xmm3, xmm2
LONG $0x397de3c4; WORD $0x01e3 // vextracti128 xmm3, ymm4, 1
LONG $0xdb6bd9c5 // vpackssdw xmm3, xmm4, xmm3
LONG $0x386de3c4; WORD $0x01d3 // vinserti128 ymm2, ymm2, xmm3, 1
LONG $0xd067edc5 // vpackuswb ymm2, ymm2, ymm0
LONG $0x387de3c4; WORD $0x01c1 // vinserti128 ymm0, ymm0, xmm1, 1
LONG $0xc067fdc5 // vpackuswb ymm0, ymm0, ymm0
LONG $0xc26cfdc5 // vpunpcklqdq ymm0, ymm0, ymm2
LONG $0x00fde3c4; WORD $0xd8c0 // vpermq ymm0, ymm0, 216
LONG $0x047ffec5; BYTE $0x39 // vmovdqu yword [rcx + rdi], ymm0
QUAD $0x000080ba845bfec5; BYTE $0x00 // vcvttps2dq ymm0, yword [rdx + 4*rdi + 128]
LONG $0x397de3c4; WORD $0x01c1 // vextracti128 xmm1, ymm0, 1
QUAD $0x0000a0ba945bfec5; BYTE $0x00 // vcvttps2dq ymm2, yword [rdx + 4*rdi + 160]
LONG $0xc16bf9c5 // vpackssdw xmm0, xmm0, xmm1
LONG $0x397de3c4; WORD $0x01d1 // vextracti128 xmm1, ymm2, 1
QUAD $0x0000c0ba9c5bfec5; BYTE $0x00 // vcvttps2dq ymm3, yword [rdx + 4*rdi + 192]
LONG $0xc96be9c5 // vpackssdw xmm1, xmm2, xmm1
LONG $0x397de3c4; WORD $0x01da // vextracti128 xmm2, ymm3, 1
QUAD $0x0000e0baa45bfec5; BYTE $0x00 // vcvttps2dq ymm4, yword [rdx + 4*rdi + 224]
LONG $0xd26be1c5 // vpackssdw xmm2, xmm3, xmm2
LONG $0x397de3c4; WORD $0x01e3 // vextracti128 xmm3, ymm4, 1
LONG $0xdb6bd9c5 // vpackssdw xmm3, xmm4, xmm3
LONG $0x386de3c4; WORD $0x01d3 // vinserti128 ymm2, ymm2, xmm3, 1
LONG $0xd067edc5 // vpackuswb ymm2, ymm2, ymm0
LONG $0x387de3c4; WORD $0x01c1 // vinserti128 ymm0, ymm0, xmm1, 1
LONG $0xc067fdc5 // vpackuswb ymm0, ymm0, ymm0
LONG $0xc26cfdc5 // vpunpcklqdq ymm0, ymm0, ymm2
LONG $0x00fde3c4; WORD $0xd8c0 // vpermq ymm0, ymm0, 216
LONG $0x447ffec5; WORD $0x2039 // vmovdqu yword [rcx + rdi + 32], ymm0
LONG $0x40c78348 // add rdi, 64
LONG $0x02c08348 // add rax, 2
JNE LBB0_895
JMP LBB0_1498
LBB0_896:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0x80 // and esi, -128
LONG $0x80468d48 // lea rax, [rsi - 128]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x07e8c149 // shr r8, 7
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1505
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_898:
LONG $0x0410fcc5; BYTE $0x3a // vmovups ymm0, yword [rdx + rdi]
LONG $0x4c10fcc5; WORD $0x203a // vmovups ymm1, yword [rdx + rdi + 32]
LONG $0x5410fcc5; WORD $0x403a // vmovups ymm2, yword [rdx + rdi + 64]
LONG $0x5c10fcc5; WORD $0x603a // vmovups ymm3, yword [rdx + rdi + 96]
LONG $0x0411fcc5; BYTE $0x39 // vmovups yword [rcx + rdi], ymm0
LONG $0x4c11fcc5; WORD $0x2039 // vmovups yword [rcx + rdi + 32], ymm1
LONG $0x5411fcc5; WORD $0x4039 // vmovups yword [rcx + rdi + 64], ymm2
LONG $0x5c11fcc5; WORD $0x6039 // vmovups yword [rcx + rdi + 96], ymm3
QUAD $0x0000803a8410fdc5; BYTE $0x00 // vmovupd ymm0, yword [rdx + rdi + 128]
QUAD $0x0000a03a8c10fdc5; BYTE $0x00 // vmovupd ymm1, yword [rdx + rdi + 160]
QUAD $0x0000c03a9410fdc5; BYTE $0x00 // vmovupd ymm2, yword [rdx + rdi + 192]
QUAD $0x0000e03a9c10fdc5; BYTE $0x00 // vmovupd ymm3, yword [rdx + rdi + 224]
QUAD $0x000080398411fdc5; BYTE $0x00 // vmovupd yword [rcx + rdi + 128], ymm0
QUAD $0x0000a0398c11fdc5; BYTE $0x00 // vmovupd yword [rcx + rdi + 160], ymm1
QUAD $0x0000c0399411fdc5; BYTE $0x00 // vmovupd yword [rcx + rdi + 192], ymm2
QUAD $0x0000e0399c11fdc5; BYTE $0x00 // vmovupd yword [rcx + rdi + 224], ymm3
LONG $0x00c78148; WORD $0x0001; BYTE $0x00 // add rdi, 256
LONG $0x02c08348 // add rax, 2
JNE LBB0_898
JMP LBB0_1506
LBB0_899:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xe0 // and esi, -32
LONG $0xe0468d48 // lea rax, [rsi - 32]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x05e8c149 // shr r8, 5
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1513
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LONG $0x456ff9c5; BYTE $0x70 // vmovdqa xmm0, oword 112[rbp] /* [rip + .LCPI0_12] */
LBB0_901:
LONG $0x0c6ffac5; BYTE $0xba // vmovdqu xmm1, oword [rdx + 4*rdi]
LONG $0x546ffac5; WORD $0x10ba // vmovdqu xmm2, oword [rdx + 4*rdi + 16]
LONG $0x5c6ffac5; WORD $0x20ba // vmovdqu xmm3, oword [rdx + 4*rdi + 32]
LONG $0x646ffac5; WORD $0x30ba // vmovdqu xmm4, oword [rdx + 4*rdi + 48]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
LONG $0x0071e2c4; BYTE $0xc8 // vpshufb xmm1, xmm1, xmm0
LONG $0xca62f1c5 // vpunpckldq xmm1, xmm1, xmm2
LONG $0x0059e2c4; BYTE $0xd0 // vpshufb xmm2, xmm4, xmm0
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd262e1c5 // vpunpckldq xmm2, xmm3, xmm2
LONG $0x5c6ffac5; WORD $0x50ba // vmovdqu xmm3, oword [rdx + 4*rdi + 80]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0x646ffac5; WORD $0x40ba // vmovdqu xmm4, oword [rdx + 4*rdi + 64]
LONG $0x0059e2c4; BYTE $0xe0 // vpshufb xmm4, xmm4, xmm0
LONG $0xdb62d9c5 // vpunpckldq xmm3, xmm4, xmm3
LONG $0x646ffac5; WORD $0x70ba // vmovdqu xmm4, oword [rdx + 4*rdi + 112]
LONG $0x0059e2c4; BYTE $0xe0 // vpshufb xmm4, xmm4, xmm0
LONG $0x6c6ffac5; WORD $0x60ba // vmovdqu xmm5, oword [rdx + 4*rdi + 96]
LONG $0x0051e2c4; BYTE $0xe8 // vpshufb xmm5, xmm5, xmm0
LONG $0xe462d1c5 // vpunpckldq xmm4, xmm5, xmm4
LONG $0x3865e3c4; WORD $0x01dc // vinserti128 ymm3, ymm3, xmm4, 1
LONG $0x3875e3c4; WORD $0x01ca // vinserti128 ymm1, ymm1, xmm2, 1
LONG $0xcb6cf5c5 // vpunpcklqdq ymm1, ymm1, ymm3
LONG $0x00fde3c4; WORD $0xd8c9 // vpermq ymm1, ymm1, 216
LONG $0x0c7ffec5; BYTE $0x39 // vmovdqu yword [rcx + rdi], ymm1
QUAD $0x000080ba8c6ffac5; BYTE $0x00 // vmovdqu xmm1, oword [rdx + 4*rdi + 128]
QUAD $0x000090ba946ffac5; BYTE $0x00 // vmovdqu xmm2, oword [rdx + 4*rdi + 144]
QUAD $0x0000a0ba9c6ffac5; BYTE $0x00 // vmovdqu xmm3, oword [rdx + 4*rdi + 160]
QUAD $0x0000b0baa46ffac5; BYTE $0x00 // vmovdqu xmm4, oword [rdx + 4*rdi + 176]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
LONG $0x0071e2c4; BYTE $0xc8 // vpshufb xmm1, xmm1, xmm0
LONG $0xca62f1c5 // vpunpckldq xmm1, xmm1, xmm2
LONG $0x0059e2c4; BYTE $0xd0 // vpshufb xmm2, xmm4, xmm0
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd262e1c5 // vpunpckldq xmm2, xmm3, xmm2
QUAD $0x0000d0ba9c6ffac5; BYTE $0x00 // vmovdqu xmm3, oword [rdx + 4*rdi + 208]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
QUAD $0x0000c0baa46ffac5; BYTE $0x00 // vmovdqu xmm4, oword [rdx + 4*rdi + 192]
LONG $0x0059e2c4; BYTE $0xe0 // vpshufb xmm4, xmm4, xmm0
LONG $0xdb62d9c5 // vpunpckldq xmm3, xmm4, xmm3
QUAD $0x0000f0baa46ffac5; BYTE $0x00 // vmovdqu xmm4, oword [rdx + 4*rdi + 240]
LONG $0x0059e2c4; BYTE $0xe0 // vpshufb xmm4, xmm4, xmm0
QUAD $0x0000e0baac6ffac5; BYTE $0x00 // vmovdqu xmm5, oword [rdx + 4*rdi + 224]
LONG $0x0051e2c4; BYTE $0xe8 // vpshufb xmm5, xmm5, xmm0
LONG $0xe462d1c5 // vpunpckldq xmm4, xmm5, xmm4
LONG $0x3865e3c4; WORD $0x01dc // vinserti128 ymm3, ymm3, xmm4, 1
LONG $0x3875e3c4; WORD $0x01ca // vinserti128 ymm1, ymm1, xmm2, 1
LONG $0xcb6cf5c5 // vpunpcklqdq ymm1, ymm1, ymm3
LONG $0x00fde3c4; WORD $0xd8c9 // vpermq ymm1, ymm1, 216
LONG $0x4c7ffec5; WORD $0x2039 // vmovdqu yword [rcx + rdi + 32], ymm1
LONG $0x40c78348 // add rdi, 64
LONG $0x02c08348 // add rax, 2
JNE LBB0_901
JMP LBB0_1514
LBB0_902:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xe0 // and esi, -32
LONG $0xe0468d48 // lea rax, [rsi - 32]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x05e8c149 // shr r8, 5
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1521
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_904:
LONG $0x0410fcc5; BYTE $0xba // vmovups ymm0, yword [rdx + 4*rdi]
LONG $0x4c10fcc5; WORD $0x20ba // vmovups ymm1, yword [rdx + 4*rdi + 32]
LONG $0x5410fcc5; WORD $0x40ba // vmovups ymm2, yword [rdx + 4*rdi + 64]
LONG $0x5c10fcc5; WORD $0x60ba // vmovups ymm3, yword [rdx + 4*rdi + 96]
LONG $0x0411fcc5; BYTE $0xb9 // vmovups yword [rcx + 4*rdi], ymm0
LONG $0x4c11fcc5; WORD $0x20b9 // vmovups yword [rcx + 4*rdi + 32], ymm1
LONG $0x5411fcc5; WORD $0x40b9 // vmovups yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c11fcc5; WORD $0x60b9 // vmovups yword [rcx + 4*rdi + 96], ymm3
QUAD $0x000080ba8410fdc5; BYTE $0x00 // vmovupd ymm0, yword [rdx + 4*rdi + 128]
QUAD $0x0000a0ba8c10fdc5; BYTE $0x00 // vmovupd ymm1, yword [rdx + 4*rdi + 160]
QUAD $0x0000c0ba9410fdc5; BYTE $0x00 // vmovupd ymm2, yword [rdx + 4*rdi + 192]
QUAD $0x0000e0ba9c10fdc5; BYTE $0x00 // vmovupd ymm3, yword [rdx + 4*rdi + 224]
QUAD $0x000080b98411fdc5; BYTE $0x00 // vmovupd yword [rcx + 4*rdi + 128], ymm0
QUAD $0x0000a0b98c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 4*rdi + 160], ymm1
QUAD $0x0000c0b99411fdc5; BYTE $0x00 // vmovupd yword [rcx + 4*rdi + 192], ymm2
QUAD $0x0000e0b99c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 4*rdi + 224], ymm3
LONG $0x40c78348 // add rdi, 64
LONG $0x02c08348 // add rax, 2
JNE LBB0_904
JMP LBB0_1522
LBB0_905:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xe0 // and esi, -32
LONG $0xe0468d48 // lea rax, [rsi - 32]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x05e8c149 // shr r8, 5
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1529
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_907:
LONG $0x217de2c4; WORD $0x3a04 // vpmovsxbd ymm0, qword [rdx + rdi]
LONG $0x217de2c4; WORD $0x3a4c; BYTE $0x08 // vpmovsxbd ymm1, qword [rdx + rdi + 8]
LONG $0x217de2c4; WORD $0x3a54; BYTE $0x10 // vpmovsxbd ymm2, qword [rdx + rdi + 16]
LONG $0x217de2c4; WORD $0x3a5c; BYTE $0x18 // vpmovsxbd ymm3, qword [rdx + rdi + 24]
LONG $0x047ffec5; BYTE $0xb9 // vmovdqu yword [rcx + 4*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20b9 // vmovdqu yword [rcx + 4*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40b9 // vmovdqu yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60b9 // vmovdqu yword [rcx + 4*rdi + 96], ymm3
LONG $0x217de2c4; WORD $0x3a44; BYTE $0x20 // vpmovsxbd ymm0, qword [rdx + rdi + 32]
LONG $0x217de2c4; WORD $0x3a4c; BYTE $0x28 // vpmovsxbd ymm1, qword [rdx + rdi + 40]
LONG $0x217de2c4; WORD $0x3a54; BYTE $0x30 // vpmovsxbd ymm2, qword [rdx + rdi + 48]
LONG $0x217de2c4; WORD $0x3a5c; BYTE $0x38 // vpmovsxbd ymm3, qword [rdx + rdi + 56]
QUAD $0x000080b9847ffec5; BYTE $0x00 // vmovdqu yword [rcx + 4*rdi + 128], ymm0
QUAD $0x0000a0b98c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 4*rdi + 160], ymm1
QUAD $0x0000c0b9947ffec5; BYTE $0x00 // vmovdqu yword [rcx + 4*rdi + 192], ymm2
QUAD $0x0000e0b99c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 4*rdi + 224], ymm3
LONG $0x40c78348 // add rdi, 64
LONG $0x02c08348 // add rax, 2
JNE LBB0_907
JMP LBB0_1530
LBB0_908:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xe0 // and esi, -32
LONG $0xe0468d48 // lea rax, [rsi - 32]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x05e8c149 // shr r8, 5
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1537
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_910:
LONG $0x317de2c4; WORD $0x3a04 // vpmovzxbd ymm0, qword [rdx + rdi]
LONG $0x317de2c4; WORD $0x3a4c; BYTE $0x08 // vpmovzxbd ymm1, qword [rdx + rdi + 8]
LONG $0x317de2c4; WORD $0x3a54; BYTE $0x10 // vpmovzxbd ymm2, qword [rdx + rdi + 16]
LONG $0x317de2c4; WORD $0x3a5c; BYTE $0x18 // vpmovzxbd ymm3, qword [rdx + rdi + 24]
LONG $0x047ffec5; BYTE $0xb9 // vmovdqu yword [rcx + 4*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20b9 // vmovdqu yword [rcx + 4*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40b9 // vmovdqu yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60b9 // vmovdqu yword [rcx + 4*rdi + 96], ymm3
LONG $0x317de2c4; WORD $0x3a44; BYTE $0x20 // vpmovzxbd ymm0, qword [rdx + rdi + 32]
LONG $0x317de2c4; WORD $0x3a4c; BYTE $0x28 // vpmovzxbd ymm1, qword [rdx + rdi + 40]
LONG $0x317de2c4; WORD $0x3a54; BYTE $0x30 // vpmovzxbd ymm2, qword [rdx + rdi + 48]
LONG $0x317de2c4; WORD $0x3a5c; BYTE $0x38 // vpmovzxbd ymm3, qword [rdx + rdi + 56]
QUAD $0x000080b9847ffec5; BYTE $0x00 // vmovdqu yword [rcx + 4*rdi + 128], ymm0
QUAD $0x0000a0b98c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 4*rdi + 160], ymm1
QUAD $0x0000c0b9947ffec5; BYTE $0x00 // vmovdqu yword [rcx + 4*rdi + 192], ymm2
QUAD $0x0000e0b99c7ffec5; BYTE $0x00 // vmovdqu yword [rcx + 4*rdi + 224], ymm3
LONG $0x40c78348 // add rdi, 64
LONG $0x02c08348 // add rax, 2
JNE LBB0_910
JMP LBB0_1538
LBB0_911:
WORD $0x8944; BYTE $0xce // mov esi, r9d
WORD $0xe683; BYTE $0xe0 // and esi, -32
LONG $0xe0468d48 // lea rax, [rsi - 32]
WORD $0x8949; BYTE $0xc0 // mov r8, rax
LONG $0x05e8c149 // shr r8, 5
LONG $0x01c08349 // add r8, 1
WORD $0x8548; BYTE $0xc0 // test rax, rax
JE LBB0_1545
WORD $0x894c; BYTE $0xc0 // mov rax, r8
LONG $0xfee08348 // and rax, -2
WORD $0xf748; BYTE $0xd8 // neg rax
WORD $0xff31 // xor edi, edi
LBB0_913:
LONG $0x0410fcc5; BYTE $0xba // vmovups ymm0, yword [rdx + 4*rdi]
LONG $0x4c10fcc5; WORD $0x20ba // vmovups ymm1, yword [rdx + 4*rdi + 32]
LONG $0x5410fcc5; WORD $0x40ba // vmovups ymm2, yword [rdx + 4*rdi + 64]
LONG $0x5c10fcc5; WORD $0x60ba // vmovups ymm3, yword [rdx + 4*rdi + 96]
LONG $0x0411fcc5; BYTE $0xb9 // vmovups yword [rcx + 4*rdi], ymm0
LONG $0x4c11fcc5; WORD $0x20b9 // vmovups yword [rcx + 4*rdi + 32], ymm1
LONG $0x5411fcc5; WORD $0x40b9 // vmovups yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c11fcc5; WORD $0x60b9 // vmovups yword [rcx + 4*rdi + 96], ymm3
QUAD $0x000080ba8410fdc5; BYTE $0x00 // vmovupd ymm0, yword [rdx + 4*rdi + 128]
QUAD $0x0000a0ba8c10fdc5; BYTE $0x00 // vmovupd ymm1, yword [rdx + 4*rdi + 160]
QUAD $0x0000c0ba9410fdc5; BYTE $0x00 // vmovupd ymm2, yword [rdx + 4*rdi + 192]
QUAD $0x0000e0ba9c10fdc5; BYTE $0x00 // vmovupd ymm3, yword [rdx + 4*rdi + 224]
QUAD $0x000080b98411fdc5; BYTE $0x00 // vmovupd yword [rcx + 4*rdi + 128], ymm0
QUAD $0x0000a0b98c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 4*rdi + 160], ymm1
QUAD $0x0000c0b99411fdc5; BYTE $0x00 // vmovupd yword [rcx + 4*rdi + 192], ymm2
QUAD $0x0000e0b99c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 4*rdi + 224], ymm3
LONG $0x40c78348 // add rdi, 64
LONG $0x02c08348 // add rax, 2
JNE LBB0_913
JMP LBB0_1546
LBB0_793:
LONG $0xfce28349 // and r10, -4
WORD $0xf749; BYTE $0xda // neg r10
WORD $0xc031 // xor eax, eax
LONG $0x4510fbc5; BYTE $0x00 // vmovsd xmm0, qword 0[rbp] /* [rip + .LCPI0_0] */
LBB0_794:
LONG $0x4c10fbc5; WORD $0x08c2 // vmovsd xmm1, qword [rdx + 8*rax + 8]
LONG $0xd05cf3c5 // vsubsd xmm2, xmm1, xmm0
LONG $0x2cfbe1c4; BYTE $0xda // vcvttsd2si rbx, xmm2
LONG $0x1410fbc5; BYTE $0xc2 // vmovsd xmm2, qword [rdx + 8*rax]
WORD $0x314c; BYTE $0xdb // xor rbx, r11
LONG $0x2cfbe1c4; BYTE $0xf1 // vcvttsd2si rsi, xmm1
LONG $0xc82ef9c5 // vucomisd xmm1, xmm0
LONG $0xf3430f48 // cmovae rsi, rbx
LONG $0xc85cebc5 // vsubsd xmm1, xmm2, xmm0
LONG $0x2cfbe1c4; BYTE $0xd9 // vcvttsd2si rbx, xmm1
WORD $0x314c; BYTE $0xdb // xor rbx, r11
LONG $0x2cfbe1c4; BYTE $0xfa // vcvttsd2si rdi, xmm2
LONG $0xd02ef9c5 // vucomisd xmm2, xmm0
LONG $0x6ef9e1c4; BYTE $0xce // vmovq xmm1, rsi
LONG $0xfb430f48 // cmovae rdi, rbx
LONG $0x6ef9e1c4; BYTE $0xd7 // vmovq xmm2, rdi
LONG $0x5c10fbc5; WORD $0x18c2 // vmovsd xmm3, qword [rdx + 8*rax + 24]
LONG $0xe05ce3c5 // vsubsd xmm4, xmm3, xmm0
LONG $0x2cfbe1c4; BYTE $0xf4 // vcvttsd2si rsi, xmm4
LONG $0xc96ce9c5 // vpunpcklqdq xmm1, xmm2, xmm1
WORD $0x314c; BYTE $0xde // xor rsi, r11
LONG $0x2cfbe1c4; BYTE $0xfb // vcvttsd2si rdi, xmm3
LONG $0xd82ef9c5 // vucomisd xmm3, xmm0
LONG $0xfe430f48 // cmovae rdi, rsi
LONG $0x5410fbc5; WORD $0x10c2 // vmovsd xmm2, qword [rdx + 8*rax + 16]
LONG $0xd85cebc5 // vsubsd xmm3, xmm2, xmm0
LONG $0x2cfbe1c4; BYTE $0xf3 // vcvttsd2si rsi, xmm3
LONG $0x6ef9e1c4; BYTE $0xdf // vmovq xmm3, rdi
WORD $0x314c; BYTE $0xde // xor rsi, r11
LONG $0x2cfbe1c4; BYTE $0xfa // vcvttsd2si rdi, xmm2
LONG $0xd02ef9c5 // vucomisd xmm2, xmm0
LONG $0xfe430f48 // cmovae rdi, rsi
LONG $0x6ef9e1c4; BYTE $0xd7 // vmovq xmm2, rdi
LONG $0xd36ce9c5 // vpunpcklqdq xmm2, xmm2, xmm3
LONG $0x547ffac5; WORD $0x10c1 // vmovdqu oword [rcx + 8*rax + 16], xmm2
LONG $0x0c7ffac5; BYTE $0xc1 // vmovdqu oword [rcx + 8*rax], xmm1
LONG $0x4c10fbc5; WORD $0x28c2 // vmovsd xmm1, qword [rdx + 8*rax + 40]
LONG $0xd05cf3c5 // vsubsd xmm2, xmm1, xmm0
LONG $0x2cfbe1c4; BYTE $0xf2 // vcvttsd2si rsi, xmm2
LONG $0x5410fbc5; WORD $0x20c2 // vmovsd xmm2, qword [rdx + 8*rax + 32]
WORD $0x314c; BYTE $0xde // xor rsi, r11
LONG $0x2cfbe1c4; BYTE $0xf9 // vcvttsd2si rdi, xmm1
LONG $0xc82ef9c5 // vucomisd xmm1, xmm0
LONG $0xfe430f48 // cmovae rdi, rsi
LONG $0xc85cebc5 // vsubsd xmm1, xmm2, xmm0
LONG $0x2cfbe1c4; BYTE $0xf1 // vcvttsd2si rsi, xmm1
WORD $0x314c; BYTE $0xde // xor rsi, r11
LONG $0x2cfbe1c4; BYTE $0xda // vcvttsd2si rbx, xmm2
LONG $0xd02ef9c5 // vucomisd xmm2, xmm0
LONG $0x6ef9e1c4; BYTE $0xcf // vmovq xmm1, rdi
LONG $0xde430f48 // cmovae rbx, rsi
LONG $0x6ef9e1c4; BYTE $0xd3 // vmovq xmm2, rbx
LONG $0x5c10fbc5; WORD $0x38c2 // vmovsd xmm3, qword [rdx + 8*rax + 56]
LONG $0xe05ce3c5 // vsubsd xmm4, xmm3, xmm0
LONG $0x2cfbe1c4; BYTE $0xf4 // vcvttsd2si rsi, xmm4
LONG $0xc96ce9c5 // vpunpcklqdq xmm1, xmm2, xmm1
WORD $0x314c; BYTE $0xde // xor rsi, r11
LONG $0x2cfbe1c4; BYTE $0xfb // vcvttsd2si rdi, xmm3
LONG $0xd82ef9c5 // vucomisd xmm3, xmm0
LONG $0xfe430f48 // cmovae rdi, rsi
LONG $0x5410fbc5; WORD $0x30c2 // vmovsd xmm2, qword [rdx + 8*rax + 48]
LONG $0xd85cebc5 // vsubsd xmm3, xmm2, xmm0
LONG $0x2cfbe1c4; BYTE $0xf3 // vcvttsd2si rsi, xmm3
LONG $0x6ef9e1c4; BYTE $0xdf // vmovq xmm3, rdi
WORD $0x314c; BYTE $0xde // xor rsi, r11
LONG $0x2cfbe1c4; BYTE $0xfa // vcvttsd2si rdi, xmm2
LONG $0xd02ef9c5 // vucomisd xmm2, xmm0
LONG $0xfe430f48 // cmovae rdi, rsi
LONG $0x6ef9e1c4; BYTE $0xd7 // vmovq xmm2, rdi
LONG $0xd36ce9c5 // vpunpcklqdq xmm2, xmm2, xmm3
LONG $0x547ffac5; WORD $0x30c1 // vmovdqu oword [rcx + 8*rax + 48], xmm2
LONG $0x4c7ffac5; WORD $0x20c1 // vmovdqu oword [rcx + 8*rax + 32], xmm1
LONG $0x4c10fbc5; WORD $0x48c2 // vmovsd xmm1, qword [rdx + 8*rax + 72]
LONG $0xd05cf3c5 // vsubsd xmm2, xmm1, xmm0
LONG $0x2cfbe1c4; BYTE $0xf2 // vcvttsd2si rsi, xmm2
LONG $0x5410fbc5; WORD $0x40c2 // vmovsd xmm2, qword [rdx + 8*rax + 64]
WORD $0x314c; BYTE $0xde // xor rsi, r11
LONG $0x2cfbe1c4; BYTE $0xf9 // vcvttsd2si rdi, xmm1
LONG $0xc82ef9c5 // vucomisd xmm1, xmm0
LONG $0xfe430f48 // cmovae rdi, rsi
LONG $0xc85cebc5 // vsubsd xmm1, xmm2, xmm0
LONG $0x2cfbe1c4; BYTE $0xf1 // vcvttsd2si rsi, xmm1
WORD $0x314c; BYTE $0xde // xor rsi, r11
LONG $0x2cfbe1c4; BYTE $0xda // vcvttsd2si rbx, xmm2
LONG $0xd02ef9c5 // vucomisd xmm2, xmm0
LONG $0x6ef9e1c4; BYTE $0xcf // vmovq xmm1, rdi
LONG $0xde430f48 // cmovae rbx, rsi
LONG $0x6ef9e1c4; BYTE $0xd3 // vmovq xmm2, rbx
LONG $0x5c10fbc5; WORD $0x58c2 // vmovsd xmm3, qword [rdx + 8*rax + 88]
LONG $0xe05ce3c5 // vsubsd xmm4, xmm3, xmm0
LONG $0x2cfbe1c4; BYTE $0xf4 // vcvttsd2si rsi, xmm4
LONG $0xc96ce9c5 // vpunpcklqdq xmm1, xmm2, xmm1
WORD $0x314c; BYTE $0xde // xor rsi, r11
LONG $0x2cfbe1c4; BYTE $0xfb // vcvttsd2si rdi, xmm3
LONG $0xd82ef9c5 // vucomisd xmm3, xmm0
LONG $0xfe430f48 // cmovae rdi, rsi
LONG $0x5410fbc5; WORD $0x50c2 // vmovsd xmm2, qword [rdx + 8*rax + 80]
LONG $0xd85cebc5 // vsubsd xmm3, xmm2, xmm0
LONG $0x2cfbe1c4; BYTE $0xf3 // vcvttsd2si rsi, xmm3
LONG $0x6ef9e1c4; BYTE $0xdf // vmovq xmm3, rdi
WORD $0x314c; BYTE $0xde // xor rsi, r11
LONG $0x2cfbe1c4; BYTE $0xfa // vcvttsd2si rdi, xmm2
LONG $0xd02ef9c5 // vucomisd xmm2, xmm0
LONG $0xfe430f48 // cmovae rdi, rsi
LONG $0x6ef9e1c4; BYTE $0xd7 // vmovq xmm2, rdi
LONG $0xd36ce9c5 // vpunpcklqdq xmm2, xmm2, xmm3
LONG $0x547ffac5; WORD $0x50c1 // vmovdqu oword [rcx + 8*rax + 80], xmm2
LONG $0x4c7ffac5; WORD $0x40c1 // vmovdqu oword [rcx + 8*rax + 64], xmm1
LONG $0x4c10fbc5; WORD $0x68c2 // vmovsd xmm1, qword [rdx + 8*rax + 104]
LONG $0xd05cf3c5 // vsubsd xmm2, xmm1, xmm0
LONG $0x2cfbe1c4; BYTE $0xf2 // vcvttsd2si rsi, xmm2
WORD $0x314c; BYTE $0xde // xor rsi, r11
LONG $0x2cfbe1c4; BYTE $0xf9 // vcvttsd2si rdi, xmm1
LONG $0xc82ef9c5 // vucomisd xmm1, xmm0
LONG $0xfe430f48 // cmovae rdi, rsi
LONG $0x4c10fbc5; WORD $0x60c2 // vmovsd xmm1, qword [rdx + 8*rax + 96]
LONG $0xd05cf3c5 // vsubsd xmm2, xmm1, xmm0
LONG $0x2cfbe1c4; BYTE $0xf2 // vcvttsd2si rsi, xmm2
WORD $0x314c; BYTE $0xde // xor rsi, r11
LONG $0x2cfbe1c4; BYTE $0xd9 // vcvttsd2si rbx, xmm1
LONG $0xc82ef9c5 // vucomisd xmm1, xmm0
LONG $0xde430f48 // cmovae rbx, rsi
LONG $0x6ef9e1c4; BYTE $0xcf // vmovq xmm1, rdi
LONG $0x6ef9e1c4; BYTE $0xd3 // vmovq xmm2, rbx
LONG $0xc96ce9c5 // vpunpcklqdq xmm1, xmm2, xmm1
LONG $0x5410fbc5; WORD $0x78c2 // vmovsd xmm2, qword [rdx + 8*rax + 120]
LONG $0xd85cebc5 // vsubsd xmm3, xmm2, xmm0
LONG $0x2cfbe1c4; BYTE $0xf3 // vcvttsd2si rsi, xmm3
WORD $0x314c; BYTE $0xde // xor rsi, r11
LONG $0x2cfbe1c4; BYTE $0xfa // vcvttsd2si rdi, xmm2
LONG $0xd02ef9c5 // vucomisd xmm2, xmm0
LONG $0xfe430f48 // cmovae rdi, rsi
LONG $0x6ef9e1c4; BYTE $0xd7 // vmovq xmm2, rdi
LONG $0x5c10fbc5; WORD $0x70c2 // vmovsd xmm3, qword [rdx + 8*rax + 112]
LONG $0xe05ce3c5 // vsubsd xmm4, xmm3, xmm0
LONG $0x2cfbe1c4; BYTE $0xf4 // vcvttsd2si rsi, xmm4
WORD $0x314c; BYTE $0xde // xor rsi, r11
LONG $0x2cfbe1c4; BYTE $0xfb // vcvttsd2si rdi, xmm3
LONG $0xd82ef9c5 // vucomisd xmm3, xmm0
LONG $0xfe430f48 // cmovae rdi, rsi
LONG $0x6ef9e1c4; BYTE $0xdf // vmovq xmm3, rdi
LONG $0xd26ce1c5 // vpunpcklqdq xmm2, xmm3, xmm2
LONG $0x547ffac5; WORD $0x70c1 // vmovdqu oword [rcx + 8*rax + 112], xmm2
LONG $0x4c7ffac5; WORD $0x60c1 // vmovdqu oword [rcx + 8*rax + 96], xmm1
LONG $0x10c08348 // add rax, 16
LONG $0x04c28349 // add r10, 4
JNE LBB0_794
LBB0_795:
WORD $0x854d; BYTE $0xc0 // test r8, r8
JE LBB0_798
LONG $0x03e0c148 // shl rax, 3
WORD $0xf749; BYTE $0xd8 // neg r8
LONG $0x4510fbc5; BYTE $0x00 // vmovsd xmm0, qword 0[rbp] /* [rip + .LCPI0_0] */
LBB0_797:
LONG $0x4c10fbc5; WORD $0x0802 // vmovsd xmm1, qword [rdx + rax + 8]
LONG $0xd05cf3c5 // vsubsd xmm2, xmm1, xmm0
LONG $0x2cfbe1c4; BYTE $0xf2 // vcvttsd2si rsi, xmm2
WORD $0x314c; BYTE $0xde // xor rsi, r11
LONG $0x2cfbe1c4; BYTE $0xf9 // vcvttsd2si rdi, xmm1
LONG $0xc82ef9c5 // vucomisd xmm1, xmm0
LONG $0xfe430f48 // cmovae rdi, rsi
LONG $0x0c10fbc5; BYTE $0x02 // vmovsd xmm1, qword [rdx + rax]
LONG $0xd05cf3c5 // vsubsd xmm2, xmm1, xmm0
LONG $0x2cfbe1c4; BYTE $0xf2 // vcvttsd2si rsi, xmm2
WORD $0x314c; BYTE $0xde // xor rsi, r11
LONG $0x2cfbe1c4; BYTE $0xd9 // vcvttsd2si rbx, xmm1
LONG $0xc82ef9c5 // vucomisd xmm1, xmm0
LONG $0xde430f48 // cmovae rbx, rsi
LONG $0x6ef9e1c4; BYTE $0xcf // vmovq xmm1, rdi
LONG $0x6ef9e1c4; BYTE $0xd3 // vmovq xmm2, rbx
LONG $0xc96ce9c5 // vpunpcklqdq xmm1, xmm2, xmm1
LONG $0x5410fbc5; WORD $0x1802 // vmovsd xmm2, qword [rdx + rax + 24]
LONG $0xd85cebc5 // vsubsd xmm3, xmm2, xmm0
LONG $0x2cfbe1c4; BYTE $0xf3 // vcvttsd2si rsi, xmm3
WORD $0x314c; BYTE $0xde // xor rsi, r11
LONG $0x2cfbe1c4; BYTE $0xfa // vcvttsd2si rdi, xmm2
LONG $0xd02ef9c5 // vucomisd xmm2, xmm0
LONG $0xfe430f48 // cmovae rdi, rsi
LONG $0x6ef9e1c4; BYTE $0xd7 // vmovq xmm2, rdi
LONG $0x5c10fbc5; WORD $0x1002 // vmovsd xmm3, qword [rdx + rax + 16]
LONG $0xe05ce3c5 // vsubsd xmm4, xmm3, xmm0
LONG $0x2cfbe1c4; BYTE $0xf4 // vcvttsd2si rsi, xmm4
WORD $0x314c; BYTE $0xde // xor rsi, r11
LONG $0x2cfbe1c4; BYTE $0xfb // vcvttsd2si rdi, xmm3
LONG $0xd82ef9c5 // vucomisd xmm3, xmm0
LONG $0xfe430f48 // cmovae rdi, rsi
LONG $0x6ef9e1c4; BYTE $0xdf // vmovq xmm3, rdi
LONG $0xd26ce1c5 // vpunpcklqdq xmm2, xmm3, xmm2
LONG $0x547ffac5; WORD $0x1001 // vmovdqu oword [rcx + rax + 16], xmm2
LONG $0x0c7ffac5; BYTE $0x01 // vmovdqu oword [rcx + rax], xmm1
LONG $0x20c08348 // add rax, 32
WORD $0xff49; BYTE $0xc0 // inc r8
JNE LBB0_797
LBB0_798:
WORD $0x394d; BYTE $0xce // cmp r14, r9
JE LBB0_1553
LBB0_799:
LONG $0x4510fbc5; BYTE $0x00 // vmovsd xmm0, qword 0[rbp] /* [rip + .LCPI0_0] */
LBB0_800:
LONG $0x107ba1c4; WORD $0xf20c // vmovsd xmm1, qword [rdx + 8*r14]
LONG $0xd05cf3c5 // vsubsd xmm2, xmm1, xmm0
LONG $0x2cfbe1c4; BYTE $0xc2 // vcvttsd2si rax, xmm2
WORD $0x314c; BYTE $0xd8 // xor rax, r11
LONG $0x2cfbe1c4; BYTE $0xf1 // vcvttsd2si rsi, xmm1
LONG $0xc12ef9c5 // vucomisd xmm0, xmm1
LONG $0xf0460f48 // cmovbe rsi, rax
LONG $0xf134894a // mov qword [rcx + 8*r14], rsi
LONG $0x01c68349 // add r14, 1
WORD $0x394d; BYTE $0xf1 // cmp r9, r14
JNE LBB0_800
JMP LBB0_1553
LBB0_810:
LONG $0xfce28349 // and r10, -4
WORD $0xf749; BYTE $0xda // neg r10
WORD $0xc031 // xor eax, eax
LONG $0x4510fac5; BYTE $0x28 // vmovss xmm0, dword 40[rbp] /* [rip + .LCPI0_1] */
QUAD $0x000000000000bb49; WORD $0x8000 // mov r11, -9223372036854775808
LBB0_811:
LONG $0x4c10fac5; WORD $0x0482 // vmovss xmm1, dword [rdx + 4*rax + 4]
LONG $0xd05cf2c5 // vsubss xmm2, xmm1, xmm0
LONG $0x2cfae1c4; BYTE $0xfa // vcvttss2si rdi, xmm2
LONG $0x1410fac5; BYTE $0x82 // vmovss xmm2, dword [rdx + 4*rax]
WORD $0x314c; BYTE $0xdf // xor rdi, r11
LONG $0x2cfae1c4; BYTE $0xd9 // vcvttss2si rbx, xmm1
LONG $0xc82ef8c5 // vucomiss xmm1, xmm0
LONG $0xdf430f48 // cmovae rbx, rdi
LONG $0xc85ceac5 // vsubss xmm1, xmm2, xmm0
LONG $0x2cfae1c4; BYTE $0xf9 // vcvttss2si rdi, xmm1
WORD $0x314c; BYTE $0xdf // xor rdi, r11
LONG $0x2cfae1c4; BYTE $0xf2 // vcvttss2si rsi, xmm2
LONG $0xd02ef8c5 // vucomiss xmm2, xmm0
LONG $0x6ef9e1c4; BYTE $0xcb // vmovq xmm1, rbx
LONG $0xf7430f48 // cmovae rsi, rdi
LONG $0x6ef9e1c4; BYTE $0xd6 // vmovq xmm2, rsi
LONG $0x5c10fac5; WORD $0x0c82 // vmovss xmm3, dword [rdx + 4*rax + 12]
LONG $0xe05ce2c5 // vsubss xmm4, xmm3, xmm0
LONG $0x2cfae1c4; BYTE $0xf4 // vcvttss2si rsi, xmm4
LONG $0xc96ce9c5 // vpunpcklqdq xmm1, xmm2, xmm1
WORD $0x314c; BYTE $0xde // xor rsi, r11
LONG $0x2cfae1c4; BYTE $0xfb // vcvttss2si rdi, xmm3
LONG $0xd82ef8c5 // vucomiss xmm3, xmm0
LONG $0xfe430f48 // cmovae rdi, rsi
LONG $0x5410fac5; WORD $0x0882 // vmovss xmm2, dword [rdx + 4*rax + 8]
LONG $0xd85ceac5 // vsubss xmm3, xmm2, xmm0
LONG $0x2cfae1c4; BYTE $0xf3 // vcvttss2si rsi, xmm3
LONG $0x6ef9e1c4; BYTE $0xdf // vmovq xmm3, rdi
WORD $0x314c; BYTE $0xde // xor rsi, r11
LONG $0x2cfae1c4; BYTE $0xfa // vcvttss2si rdi, xmm2
LONG $0xd02ef8c5 // vucomiss xmm2, xmm0
LONG $0xfe430f48 // cmovae rdi, rsi
LONG $0x6ef9e1c4; BYTE $0xd7 // vmovq xmm2, rdi
LONG $0xd36ce9c5 // vpunpcklqdq xmm2, xmm2, xmm3
LONG $0x547ffac5; WORD $0x10c1 // vmovdqu oword [rcx + 8*rax + 16], xmm2
LONG $0x0c7ffac5; BYTE $0xc1 // vmovdqu oword [rcx + 8*rax], xmm1
LONG $0x4c10fac5; WORD $0x1482 // vmovss xmm1, dword [rdx + 4*rax + 20]
LONG $0xd05cf2c5 // vsubss xmm2, xmm1, xmm0
LONG $0x2cfae1c4; BYTE $0xf2 // vcvttss2si rsi, xmm2
LONG $0x5410fac5; WORD $0x1082 // vmovss xmm2, dword [rdx + 4*rax + 16]
WORD $0x314c; BYTE $0xde // xor rsi, r11
LONG $0x2cfae1c4; BYTE $0xf9 // vcvttss2si rdi, xmm1
LONG $0xc82ef8c5 // vucomiss xmm1, xmm0
LONG $0xfe430f48 // cmovae rdi, rsi
LONG $0xc85ceac5 // vsubss xmm1, xmm2, xmm0
LONG $0x2cfae1c4; BYTE $0xf1 // vcvttss2si rsi, xmm1
WORD $0x314c; BYTE $0xde // xor rsi, r11
LONG $0x2cfae1c4; BYTE $0xda // vcvttss2si rbx, xmm2
LONG $0xd02ef8c5 // vucomiss xmm2, xmm0
LONG $0x6ef9e1c4; BYTE $0xcf // vmovq xmm1, rdi
LONG $0xde430f48 // cmovae rbx, rsi
LONG $0x6ef9e1c4; BYTE $0xd3 // vmovq xmm2, rbx
LONG $0x5c10fac5; WORD $0x1c82 // vmovss xmm3, dword [rdx + 4*rax + 28]
LONG $0xe05ce2c5 // vsubss xmm4, xmm3, xmm0
LONG $0x2cfae1c4; BYTE $0xf4 // vcvttss2si rsi, xmm4
LONG $0xc96ce9c5 // vpunpcklqdq xmm1, xmm2, xmm1
WORD $0x314c; BYTE $0xde // xor rsi, r11
LONG $0x2cfae1c4; BYTE $0xfb // vcvttss2si rdi, xmm3
LONG $0xd82ef8c5 // vucomiss xmm3, xmm0
LONG $0xfe430f48 // cmovae rdi, rsi
LONG $0x5410fac5; WORD $0x1882 // vmovss xmm2, dword [rdx + 4*rax + 24]
LONG $0xd85ceac5 // vsubss xmm3, xmm2, xmm0
LONG $0x2cfae1c4; BYTE $0xf3 // vcvttss2si rsi, xmm3
LONG $0x6ef9e1c4; BYTE $0xdf // vmovq xmm3, rdi
WORD $0x314c; BYTE $0xde // xor rsi, r11
LONG $0x2cfae1c4; BYTE $0xfa // vcvttss2si rdi, xmm2
LONG $0xd02ef8c5 // vucomiss xmm2, xmm0
LONG $0xfe430f48 // cmovae rdi, rsi
LONG $0x6ef9e1c4; BYTE $0xd7 // vmovq xmm2, rdi
LONG $0xd36ce9c5 // vpunpcklqdq xmm2, xmm2, xmm3
LONG $0x547ffac5; WORD $0x30c1 // vmovdqu oword [rcx + 8*rax + 48], xmm2
LONG $0x4c7ffac5; WORD $0x20c1 // vmovdqu oword [rcx + 8*rax + 32], xmm1
LONG $0x4c10fac5; WORD $0x2482 // vmovss xmm1, dword [rdx + 4*rax + 36]
LONG $0xd05cf2c5 // vsubss xmm2, xmm1, xmm0
LONG $0x2cfae1c4; BYTE $0xf2 // vcvttss2si rsi, xmm2
LONG $0x5410fac5; WORD $0x2082 // vmovss xmm2, dword [rdx + 4*rax + 32]
WORD $0x314c; BYTE $0xde // xor rsi, r11
LONG $0x2cfae1c4; BYTE $0xf9 // vcvttss2si rdi, xmm1
LONG $0xc82ef8c5 // vucomiss xmm1, xmm0
LONG $0xfe430f48 // cmovae rdi, rsi
LONG $0xc85ceac5 // vsubss xmm1, xmm2, xmm0
LONG $0x2cfae1c4; BYTE $0xf1 // vcvttss2si rsi, xmm1
WORD $0x314c; BYTE $0xde // xor rsi, r11
LONG $0x2cfae1c4; BYTE $0xda // vcvttss2si rbx, xmm2
LONG $0xd02ef8c5 // vucomiss xmm2, xmm0
LONG $0x6ef9e1c4; BYTE $0xcf // vmovq xmm1, rdi
LONG $0xde430f48 // cmovae rbx, rsi
LONG $0x6ef9e1c4; BYTE $0xd3 // vmovq xmm2, rbx
LONG $0x5c10fac5; WORD $0x2c82 // vmovss xmm3, dword [rdx + 4*rax + 44]
LONG $0xe05ce2c5 // vsubss xmm4, xmm3, xmm0
LONG $0x2cfae1c4; BYTE $0xf4 // vcvttss2si rsi, xmm4
LONG $0xc96ce9c5 // vpunpcklqdq xmm1, xmm2, xmm1
WORD $0x314c; BYTE $0xde // xor rsi, r11
LONG $0x2cfae1c4; BYTE $0xfb // vcvttss2si rdi, xmm3
LONG $0xd82ef8c5 // vucomiss xmm3, xmm0
LONG $0xfe430f48 // cmovae rdi, rsi
LONG $0x5410fac5; WORD $0x2882 // vmovss xmm2, dword [rdx + 4*rax + 40]
LONG $0xd85ceac5 // vsubss xmm3, xmm2, xmm0
LONG $0x2cfae1c4; BYTE $0xf3 // vcvttss2si rsi, xmm3
LONG $0x6ef9e1c4; BYTE $0xdf // vmovq xmm3, rdi
WORD $0x314c; BYTE $0xde // xor rsi, r11
LONG $0x2cfae1c4; BYTE $0xfa // vcvttss2si rdi, xmm2
LONG $0xd02ef8c5 // vucomiss xmm2, xmm0
LONG $0xfe430f48 // cmovae rdi, rsi
LONG $0x6ef9e1c4; BYTE $0xd7 // vmovq xmm2, rdi
LONG $0xd36ce9c5 // vpunpcklqdq xmm2, xmm2, xmm3
LONG $0x547ffac5; WORD $0x50c1 // vmovdqu oword [rcx + 8*rax + 80], xmm2
LONG $0x4c7ffac5; WORD $0x40c1 // vmovdqu oword [rcx + 8*rax + 64], xmm1
LONG $0x4c10fac5; WORD $0x3482 // vmovss xmm1, dword [rdx + 4*rax + 52]
LONG $0xd05cf2c5 // vsubss xmm2, xmm1, xmm0
LONG $0x2cfae1c4; BYTE $0xf2 // vcvttss2si rsi, xmm2
WORD $0x314c; BYTE $0xde // xor rsi, r11
LONG $0x2cfae1c4; BYTE $0xf9 // vcvttss2si rdi, xmm1
LONG $0xc82ef8c5 // vucomiss xmm1, xmm0
LONG $0xfe430f48 // cmovae rdi, rsi
LONG $0x4c10fac5; WORD $0x3082 // vmovss xmm1, dword [rdx + 4*rax + 48]
LONG $0xd05cf2c5 // vsubss xmm2, xmm1, xmm0
LONG $0x2cfae1c4; BYTE $0xf2 // vcvttss2si rsi, xmm2
WORD $0x314c; BYTE $0xde // xor rsi, r11
LONG $0x2cfae1c4; BYTE $0xd9 // vcvttss2si rbx, xmm1
LONG $0xc82ef8c5 // vucomiss xmm1, xmm0
LONG $0xde430f48 // cmovae rbx, rsi
LONG $0x6ef9e1c4; BYTE $0xcf // vmovq xmm1, rdi
LONG $0x6ef9e1c4; BYTE $0xd3 // vmovq xmm2, rbx
LONG $0xc96ce9c5 // vpunpcklqdq xmm1, xmm2, xmm1
LONG $0x5410fac5; WORD $0x3c82 // vmovss xmm2, dword [rdx + 4*rax + 60]
LONG $0xd85ceac5 // vsubss xmm3, xmm2, xmm0
LONG $0x2cfae1c4; BYTE $0xf3 // vcvttss2si rsi, xmm3
WORD $0x314c; BYTE $0xde // xor rsi, r11
LONG $0x2cfae1c4; BYTE $0xfa // vcvttss2si rdi, xmm2
LONG $0xd02ef8c5 // vucomiss xmm2, xmm0
LONG $0xfe430f48 // cmovae rdi, rsi
LONG $0x6ef9e1c4; BYTE $0xd7 // vmovq xmm2, rdi
LONG $0x5c10fac5; WORD $0x3882 // vmovss xmm3, dword [rdx + 4*rax + 56]
LONG $0xe05ce2c5 // vsubss xmm4, xmm3, xmm0
LONG $0x2cfae1c4; BYTE $0xf4 // vcvttss2si rsi, xmm4
WORD $0x314c; BYTE $0xde // xor rsi, r11
LONG $0x2cfae1c4; BYTE $0xfb // vcvttss2si rdi, xmm3
LONG $0xd82ef8c5 // vucomiss xmm3, xmm0
LONG $0xfe430f48 // cmovae rdi, rsi
LONG $0x6ef9e1c4; BYTE $0xdf // vmovq xmm3, rdi
LONG $0xd26ce1c5 // vpunpcklqdq xmm2, xmm3, xmm2
LONG $0x547ffac5; WORD $0x70c1 // vmovdqu oword [rcx + 8*rax + 112], xmm2
LONG $0x4c7ffac5; WORD $0x60c1 // vmovdqu oword [rcx + 8*rax + 96], xmm1
LONG $0x10c08348 // add rax, 16
LONG $0x04c28349 // add r10, 4
JNE LBB0_811
LBB0_812:
WORD $0x854d; BYTE $0xc0 // test r8, r8
JE LBB0_815
LONG $0x02e0c148 // shl rax, 2
WORD $0xf749; BYTE $0xd8 // neg r8
LONG $0x4510fac5; BYTE $0x28 // vmovss xmm0, dword 40[rbp] /* [rip + .LCPI0_1] */
QUAD $0x000000000000ba49; WORD $0x8000 // mov r10, -9223372036854775808
LBB0_814:
LONG $0x4c10fac5; WORD $0x0402 // vmovss xmm1, dword [rdx + rax + 4]
LONG $0xd05cf2c5 // vsubss xmm2, xmm1, xmm0
LONG $0x2cfae1c4; BYTE $0xf2 // vcvttss2si rsi, xmm2
WORD $0x314c; BYTE $0xd6 // xor rsi, r10
LONG $0x2cfae1c4; BYTE $0xd9 // vcvttss2si rbx, xmm1
LONG $0xc82ef8c5 // vucomiss xmm1, xmm0
LONG $0xde430f48 // cmovae rbx, rsi
LONG $0x0c10fac5; BYTE $0x02 // vmovss xmm1, dword [rdx + rax]
LONG $0xd05cf2c5 // vsubss xmm2, xmm1, xmm0
LONG $0x2cfae1c4; BYTE $0xf2 // vcvttss2si rsi, xmm2
WORD $0x314c; BYTE $0xd6 // xor rsi, r10
LONG $0x2cfae1c4; BYTE $0xf9 // vcvttss2si rdi, xmm1
LONG $0xc82ef8c5 // vucomiss xmm1, xmm0
LONG $0xfe430f48 // cmovae rdi, rsi
LONG $0x6ef9e1c4; BYTE $0xcb // vmovq xmm1, rbx
LONG $0x6ef9e1c4; BYTE $0xd7 // vmovq xmm2, rdi
LONG $0xc96ce9c5 // vpunpcklqdq xmm1, xmm2, xmm1
LONG $0x5410fac5; WORD $0x0c02 // vmovss xmm2, dword [rdx + rax + 12]
LONG $0xd85ceac5 // vsubss xmm3, xmm2, xmm0
LONG $0x2cfae1c4; BYTE $0xf3 // vcvttss2si rsi, xmm3
WORD $0x314c; BYTE $0xd6 // xor rsi, r10
LONG $0x2cfae1c4; BYTE $0xfa // vcvttss2si rdi, xmm2
LONG $0xd02ef8c5 // vucomiss xmm2, xmm0
LONG $0xfe430f48 // cmovae rdi, rsi
LONG $0x6ef9e1c4; BYTE $0xd7 // vmovq xmm2, rdi
LONG $0x5c10fac5; WORD $0x0802 // vmovss xmm3, dword [rdx + rax + 8]
LONG $0xe05ce2c5 // vsubss xmm4, xmm3, xmm0
LONG $0x2cfae1c4; BYTE $0xf4 // vcvttss2si rsi, xmm4
WORD $0x314c; BYTE $0xd6 // xor rsi, r10
LONG $0x2cfae1c4; BYTE $0xfb // vcvttss2si rdi, xmm3
LONG $0xd82ef8c5 // vucomiss xmm3, xmm0
LONG $0xfe430f48 // cmovae rdi, rsi
LONG $0x6ef9e1c4; BYTE $0xdf // vmovq xmm3, rdi
LONG $0xd26ce1c5 // vpunpcklqdq xmm2, xmm3, xmm2
LONG $0x547ffac5; WORD $0x1041 // vmovdqu oword [rcx + 2*rax + 16], xmm2
LONG $0x0c7ffac5; BYTE $0x41 // vmovdqu oword [rcx + 2*rax], xmm1
LONG $0x10c08348 // add rax, 16
WORD $0xff49; BYTE $0xc0 // inc r8
JNE LBB0_814
LBB0_815:
WORD $0x394d; BYTE $0xce // cmp r14, r9
JE LBB0_1553
LBB0_816:
LONG $0x4510fac5; BYTE $0x28 // vmovss xmm0, dword 40[rbp] /* [rip + .LCPI0_1] */
QUAD $0x000000000000b848; WORD $0x8000 // mov rax, -9223372036854775808
LBB0_817:
LONG $0x107aa1c4; WORD $0xb20c // vmovss xmm1, dword [rdx + 4*r14]
LONG $0xd05cf2c5 // vsubss xmm2, xmm1, xmm0
LONG $0x2cfae1c4; BYTE $0xf2 // vcvttss2si rsi, xmm2
WORD $0x3148; BYTE $0xc6 // xor rsi, rax
LONG $0x2cfae1c4; BYTE $0xf9 // vcvttss2si rdi, xmm1
LONG $0xc12ef8c5 // vucomiss xmm0, xmm1
LONG $0xfe460f48 // cmovbe rdi, rsi
LONG $0xf13c894a // mov qword [rcx + 8*r14], rdi
LONG $0x01c68349 // add r14, 1
WORD $0x394d; BYTE $0xf1 // cmp r9, r14
JNE LBB0_817
JMP LBB0_1553
LBB0_850:
LONG $0xfce28349 // and r10, -4
WORD $0xf749; BYTE $0xda // neg r10
WORD $0xc031 // xor eax, eax
LONG $0x597de2c4; WORD $0x2045 // vpbroadcastq ymm0, qword 32[rbp] /* [rip + .LCPI0_10] */
LBB0_851:
LONG $0x0c6ffec5; BYTE $0xc2 // vmovdqu ymm1, yword [rdx + 8*rax]
LONG $0xd0dbf5c5 // vpand ymm2, ymm1, ymm0
LONG $0xd173e5c5; BYTE $0x01 // vpsrlq ymm3, ymm1, 1
LONG $0xd2ebe5c5 // vpor ymm2, ymm3, ymm2
LONG $0x4b75e3c4; WORD $0x10ca // vblendvpd ymm1, ymm1, ymm2, ymm1
LONG $0x16f9e3c4; WORD $0x01cf // vpextrq rdi, xmm1, 1
LONG $0x2ad2e1c4; BYTE $0xd7 // vcvtsi2ss xmm2, xmm5, rdi
LONG $0x7ef9e1c4; BYTE $0xcf // vmovq rdi, xmm1
LONG $0x2ad2e1c4; BYTE $0xdf // vcvtsi2ss xmm3, xmm5, rdi
LONG $0x397de3c4; WORD $0x01c9 // vextracti128 xmm1, ymm1, 1
LONG $0x7ef9e1c4; BYTE $0xcf // vmovq rdi, xmm1
LONG $0x2ad2e1c4; BYTE $0xe7 // vcvtsi2ss xmm4, xmm5, rdi
LONG $0x2161e3c4; WORD $0x10d2 // vinsertps xmm2, xmm3, xmm2, 16
LONG $0x16f9e3c4; WORD $0x01cf // vpextrq rdi, xmm1, 1
LONG $0x2169e3c4; WORD $0x20cc // vinsertps xmm1, xmm2, xmm4, 32
LONG $0x2ad2e1c4; BYTE $0xd7 // vcvtsi2ss xmm2, xmm5, rdi
LONG $0x2171e3c4; WORD $0x30ca // vinsertps xmm1, xmm1, xmm2, 48
LONG $0x146ffac5; BYTE $0xc2 // vmovdqu xmm2, oword [rdx + 8*rax]
LONG $0x546be9c5; WORD $0x10c2 // vpackssdw xmm2, xmm2, oword [rdx + 8*rax + 16]
LONG $0xd958f0c5 // vaddps xmm3, xmm1, xmm1
LONG $0x4a71e3c4; WORD $0x20cb // vblendvps xmm1, xmm1, xmm3, xmm2
LONG $0x0c11f8c5; BYTE $0x81 // vmovups oword [rcx + 4*rax], xmm1
LONG $0x4c6ffec5; WORD $0x20c2 // vmovdqu ymm1, yword [rdx + 8*rax + 32]
LONG $0xd0dbf5c5 // vpand ymm2, ymm1, ymm0
LONG $0xd173e5c5; BYTE $0x01 // vpsrlq ymm3, ymm1, 1
LONG $0xd2ebe5c5 // vpor ymm2, ymm3, ymm2
LONG $0x4b75e3c4; WORD $0x10ca // vblendvpd ymm1, ymm1, ymm2, ymm1
LONG $0x16f9e3c4; WORD $0x01cf // vpextrq rdi, xmm1, 1
LONG $0x2ad2e1c4; BYTE $0xd7 // vcvtsi2ss xmm2, xmm5, rdi
LONG $0x7ef9e1c4; BYTE $0xcf // vmovq rdi, xmm1
LONG $0x2ad2e1c4; BYTE $0xdf // vcvtsi2ss xmm3, xmm5, rdi
LONG $0x397de3c4; WORD $0x01c9 // vextracti128 xmm1, ymm1, 1
LONG $0x7ef9e1c4; BYTE $0xcf // vmovq rdi, xmm1
LONG $0x2ad2e1c4; BYTE $0xe7 // vcvtsi2ss xmm4, xmm5, rdi
LONG $0x2161e3c4; WORD $0x10d2 // vinsertps xmm2, xmm3, xmm2, 16
LONG $0x16f9e3c4; WORD $0x01cf // vpextrq rdi, xmm1, 1
LONG $0x2169e3c4; WORD $0x20cc // vinsertps xmm1, xmm2, xmm4, 32
LONG $0x2ad2e1c4; BYTE $0xd7 // vcvtsi2ss xmm2, xmm5, rdi
LONG $0x2171e3c4; WORD $0x30ca // vinsertps xmm1, xmm1, xmm2, 48
LONG $0x546ffac5; WORD $0x20c2 // vmovdqu xmm2, oword [rdx + 8*rax + 32]
LONG $0x546be9c5; WORD $0x30c2 // vpackssdw xmm2, xmm2, oword [rdx + 8*rax + 48]
LONG $0xd958f0c5 // vaddps xmm3, xmm1, xmm1
LONG $0x4a71e3c4; WORD $0x20cb // vblendvps xmm1, xmm1, xmm3, xmm2
LONG $0x4c11f8c5; WORD $0x1081 // vmovups oword [rcx + 4*rax + 16], xmm1
LONG $0x4c6ffec5; WORD $0x40c2 // vmovdqu ymm1, yword [rdx + 8*rax + 64]
LONG $0xd0dbf5c5 // vpand ymm2, ymm1, ymm0
LONG $0xd173e5c5; BYTE $0x01 // vpsrlq ymm3, ymm1, 1
LONG $0xd2ebe5c5 // vpor ymm2, ymm3, ymm2
LONG $0x4b75e3c4; WORD $0x10ca // vblendvpd ymm1, ymm1, ymm2, ymm1
LONG $0x16f9e3c4; WORD $0x01cf // vpextrq rdi, xmm1, 1
LONG $0x2ad2e1c4; BYTE $0xd7 // vcvtsi2ss xmm2, xmm5, rdi
LONG $0x7ef9e1c4; BYTE $0xcf // vmovq rdi, xmm1
LONG $0x2ad2e1c4; BYTE $0xdf // vcvtsi2ss xmm3, xmm5, rdi
LONG $0x397de3c4; WORD $0x01c9 // vextracti128 xmm1, ymm1, 1
LONG $0x7ef9e1c4; BYTE $0xcf // vmovq rdi, xmm1
LONG $0x2ad2e1c4; BYTE $0xe7 // vcvtsi2ss xmm4, xmm5, rdi
LONG $0x2161e3c4; WORD $0x10d2 // vinsertps xmm2, xmm3, xmm2, 16
LONG $0x16f9e3c4; WORD $0x01cf // vpextrq rdi, xmm1, 1
LONG $0x2169e3c4; WORD $0x20cc // vinsertps xmm1, xmm2, xmm4, 32
LONG $0x2ad2e1c4; BYTE $0xd7 // vcvtsi2ss xmm2, xmm5, rdi
LONG $0x2171e3c4; WORD $0x30ca // vinsertps xmm1, xmm1, xmm2, 48
LONG $0x546ffac5; WORD $0x40c2 // vmovdqu xmm2, oword [rdx + 8*rax + 64]
LONG $0x546be9c5; WORD $0x50c2 // vpackssdw xmm2, xmm2, oword [rdx + 8*rax + 80]
LONG $0xd958f0c5 // vaddps xmm3, xmm1, xmm1
LONG $0x4a71e3c4; WORD $0x20cb // vblendvps xmm1, xmm1, xmm3, xmm2
LONG $0x4c11f8c5; WORD $0x2081 // vmovups oword [rcx + 4*rax + 32], xmm1
LONG $0x4c6ffec5; WORD $0x60c2 // vmovdqu ymm1, yword [rdx + 8*rax + 96]
LONG $0xd0dbf5c5 // vpand ymm2, ymm1, ymm0
LONG $0xd173e5c5; BYTE $0x01 // vpsrlq ymm3, ymm1, 1
LONG $0xd2ebe5c5 // vpor ymm2, ymm3, ymm2
LONG $0x4b75e3c4; WORD $0x10ca // vblendvpd ymm1, ymm1, ymm2, ymm1
LONG $0x16f9e3c4; WORD $0x01cf // vpextrq rdi, xmm1, 1
LONG $0x2ad2e1c4; BYTE $0xd7 // vcvtsi2ss xmm2, xmm5, rdi
LONG $0x7ef9e1c4; BYTE $0xcf // vmovq rdi, xmm1
LONG $0x2ad2e1c4; BYTE $0xdf // vcvtsi2ss xmm3, xmm5, rdi
LONG $0x397de3c4; WORD $0x01c9 // vextracti128 xmm1, ymm1, 1
LONG $0x16f9c3c4; WORD $0x01cb // vpextrq r11, xmm1, 1
LONG $0x7ef9e1c4; BYTE $0xcf // vmovq rdi, xmm1
LONG $0x2ad2e1c4; BYTE $0xcf // vcvtsi2ss xmm1, xmm5, rdi
LONG $0x2161e3c4; WORD $0x10d2 // vinsertps xmm2, xmm3, xmm2, 16
LONG $0x2ad2c1c4; BYTE $0xdb // vcvtsi2ss xmm3, xmm5, r11
LONG $0x2169e3c4; WORD $0x20c9 // vinsertps xmm1, xmm2, xmm1, 32
LONG $0x2171e3c4; WORD $0x30cb // vinsertps xmm1, xmm1, xmm3, 48
LONG $0xd158f0c5 // vaddps xmm2, xmm1, xmm1
LONG $0x5c6ffac5; WORD $0x60c2 // vmovdqu xmm3, oword [rdx + 8*rax + 96]
LONG $0x5c6be1c5; WORD $0x70c2 // vpackssdw xmm3, xmm3, oword [rdx + 8*rax + 112]
LONG $0x4a71e3c4; WORD $0x30ca // vblendvps xmm1, xmm1, xmm2, xmm3
LONG $0x4c11f8c5; WORD $0x3081 // vmovups oword [rcx + 4*rax + 48], xmm1
LONG $0x10c08348 // add rax, 16
LONG $0x04c28349 // add r10, 4
JNE LBB0_851
LBB0_852:
WORD $0x854d; BYTE $0xc0 // test r8, r8
JE LBB0_855
LONG $0x02e0c148 // shl rax, 2
WORD $0xf749; BYTE $0xd8 // neg r8
LONG $0x597de2c4; WORD $0x2045 // vpbroadcastq ymm0, qword 32[rbp] /* [rip + .LCPI0_10] */
LBB0_854:
LONG $0x0c6ffec5; BYTE $0x42 // vmovdqu ymm1, yword [rdx + 2*rax]
LONG $0xd0dbf5c5 // vpand ymm2, ymm1, ymm0
LONG $0xd173e5c5; BYTE $0x01 // vpsrlq ymm3, ymm1, 1
LONG $0xd2ebe5c5 // vpor ymm2, ymm3, ymm2
LONG $0x4b75e3c4; WORD $0x10ca // vblendvpd ymm1, ymm1, ymm2, ymm1
LONG $0x16f9e3c4; WORD $0x01cf // vpextrq rdi, xmm1, 1
LONG $0x2ad2e1c4; BYTE $0xd7 // vcvtsi2ss xmm2, xmm5, rdi
LONG $0x7ef9e1c4; BYTE $0xcf // vmovq rdi, xmm1
LONG $0x2ad2e1c4; BYTE $0xdf // vcvtsi2ss xmm3, xmm5, rdi
LONG $0x397de3c4; WORD $0x01c9 // vextracti128 xmm1, ymm1, 1
LONG $0x16f9c3c4; WORD $0x01ca // vpextrq r10, xmm1, 1
LONG $0x7ef9e1c4; BYTE $0xcf // vmovq rdi, xmm1
LONG $0x2ad2e1c4; BYTE $0xcf // vcvtsi2ss xmm1, xmm5, rdi
LONG $0x2161e3c4; WORD $0x10d2 // vinsertps xmm2, xmm3, xmm2, 16
LONG $0x2ad2c1c4; BYTE $0xda // vcvtsi2ss xmm3, xmm5, r10
LONG $0x2169e3c4; WORD $0x20c9 // vinsertps xmm1, xmm2, xmm1, 32
LONG $0x2171e3c4; WORD $0x30cb // vinsertps xmm1, xmm1, xmm3, 48
LONG $0xd158f0c5 // vaddps xmm2, xmm1, xmm1
LONG $0x1c6ffac5; BYTE $0x42 // vmovdqu xmm3, oword [rdx + 2*rax]
LONG $0x5c6be1c5; WORD $0x1042 // vpackssdw xmm3, xmm3, oword [rdx + 2*rax + 16]
LONG $0x4a71e3c4; WORD $0x30ca // vblendvps xmm1, xmm1, xmm2, xmm3
LONG $0x0c11f8c5; BYTE $0x01 // vmovups oword [rcx + rax], xmm1
LONG $0x10c08348 // add rax, 16
WORD $0xff49; BYTE $0xc0 // inc r8
JNE LBB0_854
LBB0_855:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JNE LBB0_858
JMP LBB0_1553
LBB0_856:
LONG $0x2ad2e1c4; BYTE $0xc0 // vcvtsi2ss xmm0, xmm5, rax
LONG $0x0411fac5; BYTE $0xb1 // vmovss dword [rcx + 4*rsi], xmm0
LONG $0x01c68348 // add rsi, 1
WORD $0x3949; BYTE $0xf1 // cmp r9, rsi
JE LBB0_1553
LBB0_858:
LONG $0xf2048b48 // mov rax, qword [rdx + 8*rsi]
WORD $0x8548; BYTE $0xc0 // test rax, rax
JNS LBB0_856
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
LONG $0x2ad2e1c4; BYTE $0xc0 // vcvtsi2ss xmm0, xmm5, rax
LONG $0xc058fac5 // vaddss xmm0, xmm0, xmm0
LONG $0x0411fac5; BYTE $0xb1 // vmovss dword [rcx + 4*rsi], xmm0
LONG $0x01c68348 // add rsi, 1
WORD $0x3949; BYTE $0xf1 // cmp r9, rsi
JNE LBB0_858
JMP LBB0_1553
LBB0_914:
WORD $0xff31 // xor edi, edi
LBB0_915:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_917
LONG $0x0410f8c5; BYTE $0xfa // vmovups xmm0, oword [rdx + 8*rdi]
LONG $0x4c10f8c5; WORD $0x20fa // vmovups xmm1, oword [rdx + 8*rdi + 32]
LONG $0x5410f8c5; WORD $0x40fa // vmovups xmm2, oword [rdx + 8*rdi + 64]
LONG $0x5c10f8c5; WORD $0x60fa // vmovups xmm3, oword [rdx + 8*rdi + 96]
LONG $0x44c6f8c5; WORD $0x10fa; BYTE $0x88 // vshufps xmm0, xmm0, oword [rdx + 8*rdi + 16], 136
LONG $0x4cc6f0c5; WORD $0x30fa; BYTE $0x88 // vshufps xmm1, xmm1, oword [rdx + 8*rdi + 48], 136
LONG $0x54c6e8c5; WORD $0x50fa; BYTE $0x88 // vshufps xmm2, xmm2, oword [rdx + 8*rdi + 80], 136
LONG $0x5cc6e0c5; WORD $0x70fa; BYTE $0x88 // vshufps xmm3, xmm3, oword [rdx + 8*rdi + 112], 136
LONG $0x0411f8c5; BYTE $0xb9 // vmovups oword [rcx + 4*rdi], xmm0
LONG $0x4c11f8c5; WORD $0x10b9 // vmovups oword [rcx + 4*rdi + 16], xmm1
LONG $0x5411f8c5; WORD $0x20b9 // vmovups oword [rcx + 4*rdi + 32], xmm2
LONG $0x5c11f8c5; WORD $0x30b9 // vmovups oword [rcx + 4*rdi + 48], xmm3
LBB0_917:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_918:
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_918
JMP LBB0_1553
LBB0_919:
WORD $0xff31 // xor edi, edi
LBB0_920:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_922
LONG $0x046ffec5; BYTE $0xfa // vmovdqu ymm0, yword [rdx + 8*rdi]
LONG $0x4c6ffec5; WORD $0x20fa // vmovdqu ymm1, yword [rdx + 8*rdi + 32]
LONG $0x546ffec5; WORD $0x40fa // vmovdqu ymm2, yword [rdx + 8*rdi + 64]
LONG $0x5c6ffec5; WORD $0x60fa // vmovdqu ymm3, yword [rdx + 8*rdi + 96]
LONG $0xe457d9c5 // vxorpd xmm4, xmm4, xmm4
LONG $0x027de3c4; WORD $0xaaec // vpblendd ymm5, ymm0, ymm4, 170
LONG $0x597de2c4; WORD $0x0875 // vpbroadcastq ymm6, qword 8[rbp] /* [rip + .LCPI0_5] */
LONG $0xeeebd5c5 // vpor ymm5, ymm5, ymm6
LONG $0xd073fdc5; BYTE $0x20 // vpsrlq ymm0, ymm0, 32
LONG $0x597de2c4; WORD $0x107d // vpbroadcastq ymm7, qword 16[rbp] /* [rip + .LCPI0_6] */
LONG $0xc7ebfdc5 // vpor ymm0, ymm0, ymm7
LONG $0x197d62c4; WORD $0x1845 // vbroadcastsd ymm8, qword 24[rbp] /* [rip + .LCPI0_7] */
LONG $0x5c7dc1c4; BYTE $0xc0 // vsubpd ymm0, ymm0, ymm8
LONG $0xc058d5c5 // vaddpd ymm0, ymm5, ymm0
LONG $0x0275e3c4; WORD $0xaaec // vpblendd ymm5, ymm1, ymm4, 170
LONG $0xeeebd5c5 // vpor ymm5, ymm5, ymm6
LONG $0xd173f5c5; BYTE $0x20 // vpsrlq ymm1, ymm1, 32
LONG $0xcfebf5c5 // vpor ymm1, ymm1, ymm7
LONG $0x5c75c1c4; BYTE $0xc8 // vsubpd ymm1, ymm1, ymm8
LONG $0xc958d5c5 // vaddpd ymm1, ymm5, ymm1
LONG $0x026de3c4; WORD $0xaaec // vpblendd ymm5, ymm2, ymm4, 170
LONG $0xeeebd5c5 // vpor ymm5, ymm5, ymm6
LONG $0xd273edc5; BYTE $0x20 // vpsrlq ymm2, ymm2, 32
LONG $0xd7ebedc5 // vpor ymm2, ymm2, ymm7
LONG $0x5c6dc1c4; BYTE $0xd0 // vsubpd ymm2, ymm2, ymm8
LONG $0xd258d5c5 // vaddpd ymm2, ymm5, ymm2
LONG $0x0265e3c4; WORD $0xaae4 // vpblendd ymm4, ymm3, ymm4, 170
LONG $0xe6ebddc5 // vpor ymm4, ymm4, ymm6
LONG $0xd373e5c5; BYTE $0x20 // vpsrlq ymm3, ymm3, 32
LONG $0xdfebe5c5 // vpor ymm3, ymm3, ymm7
LONG $0x5c65c1c4; BYTE $0xd8 // vsubpd ymm3, ymm3, ymm8
LONG $0xdb58ddc5 // vaddpd ymm3, ymm4, ymm3
LONG $0x0411fdc5; BYTE $0xf9 // vmovupd yword [rcx + 8*rdi], ymm0
LONG $0x4c11fdc5; WORD $0x20f9 // vmovupd yword [rcx + 8*rdi + 32], ymm1
LONG $0x5411fdc5; WORD $0x40f9 // vmovupd yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c11fdc5; WORD $0x60f9 // vmovupd yword [rcx + 8*rdi + 96], ymm3
LBB0_922:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_923:
LONG $0x4528f9c5; BYTE $0x50 // vmovapd xmm0, oword 80[rbp] /* [rip + .LCPI0_8] */
LONG $0x4d28f9c5; BYTE $0x60 // vmovapd xmm1, oword 96[rbp] /* [rip + .LCPI0_9] */
LBB0_924:
LONG $0x1410fbc5; BYTE $0xf2 // vmovsd xmm2, qword [rdx + 8*rsi]
LONG $0xd014e8c5 // vunpcklps xmm2, xmm2, xmm0
LONG $0xd15ce9c5 // vsubpd xmm2, xmm2, xmm1
LONG $0x0579e3c4; WORD $0x01da // vpermilpd xmm3, xmm2, 1
LONG $0xd258e3c5 // vaddsd xmm2, xmm3, xmm2
LONG $0x1411fbc5; BYTE $0xf1 // vmovsd qword [rcx + 8*rsi], xmm2
LONG $0x01c68348 // add rsi, 1
WORD $0x3949; BYTE $0xf1 // cmp r9, rsi
JNE LBB0_924
JMP LBB0_1553
LBB0_925:
WORD $0xff31 // xor edi, edi
LBB0_926:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_928
LONG $0x04e6fec5; BYTE $0xba // vcvtdq2pd ymm0, oword [rdx + 4*rdi]
LONG $0x4ce6fec5; WORD $0x10ba // vcvtdq2pd ymm1, oword [rdx + 4*rdi + 16]
LONG $0x54e6fec5; WORD $0x20ba // vcvtdq2pd ymm2, oword [rdx + 4*rdi + 32]
LONG $0x5ce6fec5; WORD $0x30ba // vcvtdq2pd ymm3, oword [rdx + 4*rdi + 48]
LONG $0x0411fdc5; BYTE $0xf9 // vmovupd yword [rcx + 8*rdi], ymm0
LONG $0x4c11fdc5; WORD $0x20f9 // vmovupd yword [rcx + 8*rdi + 32], ymm1
LONG $0x5411fdc5; WORD $0x40f9 // vmovupd yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c11fdc5; WORD $0x60f9 // vmovupd yword [rcx + 8*rdi + 96], ymm3
LBB0_928:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_929:
LONG $0x042adbc5; BYTE $0xb2 // vcvtsi2sd xmm0, xmm4, dword [rdx + 4*rsi]
LONG $0x0411fbc5; BYTE $0xf1 // vmovsd qword [rcx + 8*rsi], xmm0
LONG $0x01c68348 // add rsi, 1
WORD $0x3949; BYTE $0xf1 // cmp r9, rsi
JNE LBB0_929
JMP LBB0_1553
LBB0_930:
WORD $0xff31 // xor edi, edi
LBB0_931:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_933
LONG $0x357de2c4; WORD $0xba04 // vpmovzxdq ymm0, oword [rdx + 4*rdi]
LONG $0x357de2c4; WORD $0xba4c; BYTE $0x10 // vpmovzxdq ymm1, oword [rdx + 4*rdi + 16]
LONG $0x357de2c4; WORD $0xba54; BYTE $0x20 // vpmovzxdq ymm2, oword [rdx + 4*rdi + 32]
LONG $0x357de2c4; WORD $0xba5c; BYTE $0x30 // vpmovzxdq ymm3, oword [rdx + 4*rdi + 48]
LONG $0x047ffec5; BYTE $0xf9 // vmovdqu yword [rcx + 8*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20f9 // vmovdqu yword [rcx + 8*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40f9 // vmovdqu yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60f9 // vmovdqu yword [rcx + 8*rdi + 96], ymm3
LBB0_933:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_934:
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_934
JMP LBB0_1553
LBB0_935:
WORD $0xff31 // xor edi, edi
LBB0_936:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_938
LONG $0x347de2c4; WORD $0x7a04 // vpmovzxwq ymm0, qword [rdx + 2*rdi]
LONG $0x347de2c4; WORD $0x7a4c; BYTE $0x08 // vpmovzxwq ymm1, qword [rdx + 2*rdi + 8]
LONG $0x347de2c4; WORD $0x7a54; BYTE $0x10 // vpmovzxwq ymm2, qword [rdx + 2*rdi + 16]
LONG $0x347de2c4; WORD $0x7a5c; BYTE $0x18 // vpmovzxwq ymm3, qword [rdx + 2*rdi + 24]
LONG $0x047ffec5; BYTE $0xf9 // vmovdqu yword [rcx + 8*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20f9 // vmovdqu yword [rcx + 8*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40f9 // vmovdqu yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60f9 // vmovdqu yword [rcx + 8*rdi + 96], ymm3
LBB0_938:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_939:
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_939
JMP LBB0_1553
LBB0_940:
WORD $0xff31 // xor edi, edi
LBB0_941:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_943
LONG $0x247de2c4; WORD $0x7a04 // vpmovsxwq ymm0, qword [rdx + 2*rdi]
LONG $0x247de2c4; WORD $0x7a4c; BYTE $0x08 // vpmovsxwq ymm1, qword [rdx + 2*rdi + 8]
LONG $0x247de2c4; WORD $0x7a54; BYTE $0x10 // vpmovsxwq ymm2, qword [rdx + 2*rdi + 16]
LONG $0x247de2c4; WORD $0x7a5c; BYTE $0x18 // vpmovsxwq ymm3, qword [rdx + 2*rdi + 24]
LONG $0x047ffec5; BYTE $0xf9 // vmovdqu yword [rcx + 8*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20f9 // vmovdqu yword [rcx + 8*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40f9 // vmovdqu yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60f9 // vmovdqu yword [rcx + 8*rdi + 96], ymm3
LBB0_943:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_944:
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_944
JMP LBB0_1553
LBB0_945:
WORD $0xff31 // xor edi, edi
LBB0_946:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_948
LONG $0x257de2c4; WORD $0xba04 // vpmovsxdq ymm0, oword [rdx + 4*rdi]
LONG $0x257de2c4; WORD $0xba4c; BYTE $0x10 // vpmovsxdq ymm1, oword [rdx + 4*rdi + 16]
LONG $0x257de2c4; WORD $0xba54; BYTE $0x20 // vpmovsxdq ymm2, oword [rdx + 4*rdi + 32]
LONG $0x257de2c4; WORD $0xba5c; BYTE $0x30 // vpmovsxdq ymm3, oword [rdx + 4*rdi + 48]
LONG $0x047ffec5; BYTE $0xf9 // vmovdqu yword [rcx + 8*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20f9 // vmovdqu yword [rcx + 8*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40f9 // vmovdqu yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60f9 // vmovdqu yword [rcx + 8*rdi + 96], ymm3
LBB0_948:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_949:
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_949
JMP LBB0_1553
LBB0_950:
WORD $0xff31 // xor edi, edi
LBB0_951:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_953
LONG $0xc0eff9c5 // vpxor xmm0, xmm0, xmm0
LONG $0x0e79e3c4; WORD $0xfa0c; BYTE $0x11 // vpblendw xmm1, xmm0, oword [rdx + 8*rdi], 17
QUAD $0x1110fa540e79e3c4 // vpblendw xmm2, xmm0, oword [rdx + 8*rdi + 16], 17
QUAD $0x1120fa5c0e79e3c4 // vpblendw xmm3, xmm0, oword [rdx + 8*rdi + 32], 17
QUAD $0x1130fa640e79e3c4 // vpblendw xmm4, xmm0, oword [rdx + 8*rdi + 48], 17
QUAD $0x1140fa6c0e79e3c4 // vpblendw xmm5, xmm0, oword [rdx + 8*rdi + 64], 17
QUAD $0x1150fa740e79e3c4 // vpblendw xmm6, xmm0, oword [rdx + 8*rdi + 80], 17
QUAD $0x1160fa7c0e79e3c4 // vpblendw xmm7, xmm0, oword [rdx + 8*rdi + 96], 17
QUAD $0x1170fa440e79e3c4 // vpblendw xmm0, xmm0, oword [rdx + 8*rdi + 112], 17
LONG $0x384de3c4; WORD $0x01c0 // vinserti128 ymm0, ymm6, xmm0, 1
LONG $0x3855e3c4; WORD $0x01ef // vinserti128 ymm5, ymm5, xmm7, 1
LONG $0x2b55e2c4; BYTE $0xc0 // vpackusdw ymm0, ymm5, ymm0
LONG $0x2b7de2c4; BYTE $0xc0 // vpackusdw ymm0, ymm0, ymm0
LONG $0x386de3c4; WORD $0x01d4 // vinserti128 ymm2, ymm2, xmm4, 1
LONG $0x3875e3c4; WORD $0x01cb // vinserti128 ymm1, ymm1, xmm3, 1
LONG $0x2b75e2c4; BYTE $0xca // vpackusdw ymm1, ymm1, ymm2
LONG $0x2b75e2c4; BYTE $0xc8 // vpackusdw ymm1, ymm1, ymm0
LONG $0xc06cf5c5 // vpunpcklqdq ymm0, ymm1, ymm0
LONG $0x00fde3c4; WORD $0xd8c0 // vpermq ymm0, ymm0, 216
LONG $0x047ffec5; BYTE $0x79 // vmovdqu yword [rcx + 2*rdi], ymm0
LBB0_953:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_954:
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_954
JMP LBB0_1553
LBB0_955:
WORD $0xff31 // xor edi, edi
LBB0_956:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_958
LONG $0xc0eff9c5 // vpxor xmm0, xmm0, xmm0
LONG $0x0e79e3c4; WORD $0xfa0c; BYTE $0x11 // vpblendw xmm1, xmm0, oword [rdx + 8*rdi], 17
QUAD $0x1110fa540e79e3c4 // vpblendw xmm2, xmm0, oword [rdx + 8*rdi + 16], 17
QUAD $0x1120fa5c0e79e3c4 // vpblendw xmm3, xmm0, oword [rdx + 8*rdi + 32], 17
QUAD $0x1130fa640e79e3c4 // vpblendw xmm4, xmm0, oword [rdx + 8*rdi + 48], 17
QUAD $0x1140fa6c0e79e3c4 // vpblendw xmm5, xmm0, oword [rdx + 8*rdi + 64], 17
QUAD $0x1150fa740e79e3c4 // vpblendw xmm6, xmm0, oword [rdx + 8*rdi + 80], 17
QUAD $0x1160fa7c0e79e3c4 // vpblendw xmm7, xmm0, oword [rdx + 8*rdi + 96], 17
QUAD $0x1170fa440e79e3c4 // vpblendw xmm0, xmm0, oword [rdx + 8*rdi + 112], 17
LONG $0x384de3c4; WORD $0x01c0 // vinserti128 ymm0, ymm6, xmm0, 1
LONG $0x3855e3c4; WORD $0x01ef // vinserti128 ymm5, ymm5, xmm7, 1
LONG $0x2b55e2c4; BYTE $0xc0 // vpackusdw ymm0, ymm5, ymm0
LONG $0x2b7de2c4; BYTE $0xc0 // vpackusdw ymm0, ymm0, ymm0
LONG $0x386de3c4; WORD $0x01d4 // vinserti128 ymm2, ymm2, xmm4, 1
LONG $0x3875e3c4; WORD $0x01cb // vinserti128 ymm1, ymm1, xmm3, 1
LONG $0x2b75e2c4; BYTE $0xca // vpackusdw ymm1, ymm1, ymm2
LONG $0x2b75e2c4; BYTE $0xc8 // vpackusdw ymm1, ymm1, ymm0
LONG $0xc06cf5c5 // vpunpcklqdq ymm0, ymm1, ymm0
LONG $0x00fde3c4; WORD $0xd8c0 // vpermq ymm0, ymm0, 216
LONG $0x047ffec5; BYTE $0x79 // vmovdqu yword [rcx + 2*rdi], ymm0
LBB0_958:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_959:
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_959
JMP LBB0_1553
LBB0_960:
WORD $0xff31 // xor edi, edi
LBB0_961:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_963
LONG $0xc0eff9c5 // vpxor xmm0, xmm0, xmm0
LONG $0x0e79e3c4; WORD $0xfa0c; BYTE $0x11 // vpblendw xmm1, xmm0, oword [rdx + 8*rdi], 17
QUAD $0x1110fa540e79e3c4 // vpblendw xmm2, xmm0, oword [rdx + 8*rdi + 16], 17
QUAD $0x1120fa5c0e79e3c4 // vpblendw xmm3, xmm0, oword [rdx + 8*rdi + 32], 17
QUAD $0x1130fa640e79e3c4 // vpblendw xmm4, xmm0, oword [rdx + 8*rdi + 48], 17
QUAD $0x1140fa6c0e79e3c4 // vpblendw xmm5, xmm0, oword [rdx + 8*rdi + 64], 17
QUAD $0x1150fa740e79e3c4 // vpblendw xmm6, xmm0, oword [rdx + 8*rdi + 80], 17
QUAD $0x1160fa7c0e79e3c4 // vpblendw xmm7, xmm0, oword [rdx + 8*rdi + 96], 17
QUAD $0x1170fa440e79e3c4 // vpblendw xmm0, xmm0, oword [rdx + 8*rdi + 112], 17
LONG $0x384de3c4; WORD $0x01c0 // vinserti128 ymm0, ymm6, xmm0, 1
LONG $0x3855e3c4; WORD $0x01ef // vinserti128 ymm5, ymm5, xmm7, 1
LONG $0x2b55e2c4; BYTE $0xc0 // vpackusdw ymm0, ymm5, ymm0
LONG $0x2b7de2c4; BYTE $0xc0 // vpackusdw ymm0, ymm0, ymm0
LONG $0x386de3c4; WORD $0x01d4 // vinserti128 ymm2, ymm2, xmm4, 1
LONG $0x3875e3c4; WORD $0x01cb // vinserti128 ymm1, ymm1, xmm3, 1
LONG $0x2b75e2c4; BYTE $0xca // vpackusdw ymm1, ymm1, ymm2
LONG $0x2b75e2c4; BYTE $0xc8 // vpackusdw ymm1, ymm1, ymm0
LONG $0xc06cf5c5 // vpunpcklqdq ymm0, ymm1, ymm0
LONG $0x00fde3c4; WORD $0xd8c0 // vpermq ymm0, ymm0, 216
LONG $0x047ffec5; BYTE $0x79 // vmovdqu yword [rcx + 2*rdi], ymm0
LBB0_963:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_964:
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_964
JMP LBB0_1553
LBB0_965:
WORD $0xff31 // xor edi, edi
LBB0_966:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_968
LONG $0x046ffec5; BYTE $0xba // vmovdqu ymm0, yword [rdx + 4*rdi]
LONG $0x4c6ffec5; WORD $0x20ba // vmovdqu ymm1, yword [rdx + 4*rdi + 32]
LONG $0x546ffec5; WORD $0x40ba // vmovdqu ymm2, yword [rdx + 4*rdi + 64]
LONG $0x5c6ffec5; WORD $0x60ba // vmovdqu ymm3, yword [rdx + 4*rdi + 96]
QUAD $0x00000080a56ffdc5 // vmovdqa ymm4, yword 128[rbp] /* [rip + .LCPI0_11] */
LONG $0x007de2c4; BYTE $0xc4 // vpshufb ymm0, ymm0, ymm4
LONG $0x00fde3c4; WORD $0xe8c0 // vpermq ymm0, ymm0, 232
LONG $0x0075e2c4; BYTE $0xcc // vpshufb ymm1, ymm1, ymm4
LONG $0x00fde3c4; WORD $0xe8c9 // vpermq ymm1, ymm1, 232
LONG $0x006de2c4; BYTE $0xd4 // vpshufb ymm2, ymm2, ymm4
LONG $0x00fde3c4; WORD $0xe8d2 // vpermq ymm2, ymm2, 232
LONG $0x0065e2c4; BYTE $0xdc // vpshufb ymm3, ymm3, ymm4
LONG $0x00fde3c4; WORD $0xe8db // vpermq ymm3, ymm3, 232
LONG $0x047ffac5; BYTE $0x79 // vmovdqu oword [rcx + 2*rdi], xmm0
LONG $0x4c7ffac5; WORD $0x1079 // vmovdqu oword [rcx + 2*rdi + 16], xmm1
LONG $0x547ffac5; WORD $0x2079 // vmovdqu oword [rcx + 2*rdi + 32], xmm2
LONG $0x5c7ffac5; WORD $0x3079 // vmovdqu oword [rcx + 2*rdi + 48], xmm3
LBB0_968:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_969:
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_969
JMP LBB0_1553
LBB0_970:
WORD $0xff31 // xor edi, edi
LBB0_971:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_973
LONG $0x046ffec5; BYTE $0xba // vmovdqu ymm0, yword [rdx + 4*rdi]
LONG $0x4c6ffec5; WORD $0x20ba // vmovdqu ymm1, yword [rdx + 4*rdi + 32]
LONG $0x546ffec5; WORD $0x40ba // vmovdqu ymm2, yword [rdx + 4*rdi + 64]
LONG $0x5c6ffec5; WORD $0x60ba // vmovdqu ymm3, yword [rdx + 4*rdi + 96]
QUAD $0x00000080a56ffdc5 // vmovdqa ymm4, yword 128[rbp] /* [rip + .LCPI0_11] */
LONG $0x007de2c4; BYTE $0xc4 // vpshufb ymm0, ymm0, ymm4
LONG $0x00fde3c4; WORD $0xe8c0 // vpermq ymm0, ymm0, 232
LONG $0x0075e2c4; BYTE $0xcc // vpshufb ymm1, ymm1, ymm4
LONG $0x00fde3c4; WORD $0xe8c9 // vpermq ymm1, ymm1, 232
LONG $0x006de2c4; BYTE $0xd4 // vpshufb ymm2, ymm2, ymm4
LONG $0x00fde3c4; WORD $0xe8d2 // vpermq ymm2, ymm2, 232
LONG $0x0065e2c4; BYTE $0xdc // vpshufb ymm3, ymm3, ymm4
LONG $0x00fde3c4; WORD $0xe8db // vpermq ymm3, ymm3, 232
LONG $0x047ffac5; BYTE $0x79 // vmovdqu oword [rcx + 2*rdi], xmm0
LONG $0x4c7ffac5; WORD $0x1079 // vmovdqu oword [rcx + 2*rdi + 16], xmm1
LONG $0x547ffac5; WORD $0x2079 // vmovdqu oword [rcx + 2*rdi + 32], xmm2
LONG $0x5c7ffac5; WORD $0x3079 // vmovdqu oword [rcx + 2*rdi + 48], xmm3
LBB0_973:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_974:
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_974
JMP LBB0_1553
LBB0_975:
WORD $0xff31 // xor edi, edi
LBB0_976:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_978
LONG $0x347de2c4; WORD $0x7a04 // vpmovzxwq ymm0, qword [rdx + 2*rdi]
LONG $0x347de2c4; WORD $0x7a4c; BYTE $0x08 // vpmovzxwq ymm1, qword [rdx + 2*rdi + 8]
LONG $0x347de2c4; WORD $0x7a54; BYTE $0x10 // vpmovzxwq ymm2, qword [rdx + 2*rdi + 16]
LONG $0x347de2c4; WORD $0x7a5c; BYTE $0x18 // vpmovzxwq ymm3, qword [rdx + 2*rdi + 24]
LONG $0x047ffec5; BYTE $0xf9 // vmovdqu yword [rcx + 8*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20f9 // vmovdqu yword [rcx + 8*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40f9 // vmovdqu yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60f9 // vmovdqu yword [rcx + 8*rdi + 96], ymm3
LBB0_978:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_979:
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_979
JMP LBB0_1553
LBB0_980:
WORD $0xff31 // xor edi, edi
LBB0_981:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_983
LONG $0x257de2c4; WORD $0xba04 // vpmovsxdq ymm0, oword [rdx + 4*rdi]
LONG $0x257de2c4; WORD $0xba4c; BYTE $0x10 // vpmovsxdq ymm1, oword [rdx + 4*rdi + 16]
LONG $0x257de2c4; WORD $0xba54; BYTE $0x20 // vpmovsxdq ymm2, oword [rdx + 4*rdi + 32]
LONG $0x257de2c4; WORD $0xba5c; BYTE $0x30 // vpmovsxdq ymm3, oword [rdx + 4*rdi + 48]
LONG $0x047ffec5; BYTE $0xf9 // vmovdqu yword [rcx + 8*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20f9 // vmovdqu yword [rcx + 8*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40f9 // vmovdqu yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60f9 // vmovdqu yword [rcx + 8*rdi + 96], ymm3
LBB0_983:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_984:
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_984
JMP LBB0_1553
LBB0_985:
WORD $0xff31 // xor edi, edi
LBB0_986:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_988
LONG $0x045bfcc5; BYTE $0xba // vcvtdq2ps ymm0, yword [rdx + 4*rdi]
LONG $0x4c5bfcc5; WORD $0x20ba // vcvtdq2ps ymm1, yword [rdx + 4*rdi + 32]
LONG $0x545bfcc5; WORD $0x40ba // vcvtdq2ps ymm2, yword [rdx + 4*rdi + 64]
LONG $0x5c5bfcc5; WORD $0x60ba // vcvtdq2ps ymm3, yword [rdx + 4*rdi + 96]
LONG $0x0411fcc5; BYTE $0xb9 // vmovups yword [rcx + 4*rdi], ymm0
LONG $0x4c11fcc5; WORD $0x20b9 // vmovups yword [rcx + 4*rdi + 32], ymm1
LONG $0x5411fcc5; WORD $0x40b9 // vmovups yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c11fcc5; WORD $0x60b9 // vmovups yword [rcx + 4*rdi + 96], ymm3
LBB0_988:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_989:
LONG $0x042adac5; BYTE $0xb2 // vcvtsi2ss xmm0, xmm4, dword [rdx + 4*rsi]
LONG $0x0411fac5; BYTE $0xb1 // vmovss dword [rcx + 4*rsi], xmm0
LONG $0x01c68348 // add rsi, 1
WORD $0x3949; BYTE $0xf1 // cmp r9, rsi
JNE LBB0_989
JMP LBB0_1553
LBB0_990:
WORD $0xff31 // xor edi, edi
LBB0_991:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_993
LONG $0x04e6fdc5; BYTE $0xfa // vcvttpd2dq xmm0, yword [rdx + 8*rdi]
LONG $0x4ce6fdc5; WORD $0x20fa // vcvttpd2dq xmm1, yword [rdx + 8*rdi + 32]
LONG $0x54e6fdc5; WORD $0x40fa // vcvttpd2dq xmm2, yword [rdx + 8*rdi + 64]
LONG $0x5ce6fdc5; WORD $0x60fa // vcvttpd2dq xmm3, yword [rdx + 8*rdi + 96]
LONG $0x0411f9c5; BYTE $0xb9 // vmovupd oword [rcx + 4*rdi], xmm0
LONG $0x4c11f9c5; WORD $0x10b9 // vmovupd oword [rcx + 4*rdi + 16], xmm1
LONG $0x5411f9c5; WORD $0x20b9 // vmovupd oword [rcx + 4*rdi + 32], xmm2
LONG $0x5c11f9c5; WORD $0x30b9 // vmovupd oword [rcx + 4*rdi + 48], xmm3
LBB0_993:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_994:
LONG $0x042cfbc5; BYTE $0xf2 // vcvttsd2si 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_994
JMP LBB0_1553
LBB0_995:
WORD $0xff31 // xor edi, edi
LBB0_996:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_998
LONG $0x0410f8c5; BYTE $0xfa // vmovups xmm0, oword [rdx + 8*rdi]
LONG $0x4c10f8c5; WORD $0x20fa // vmovups xmm1, oword [rdx + 8*rdi + 32]
LONG $0x5410f8c5; WORD $0x40fa // vmovups xmm2, oword [rdx + 8*rdi + 64]
LONG $0x5c10f8c5; WORD $0x60fa // vmovups xmm3, oword [rdx + 8*rdi + 96]
LONG $0x44c6f8c5; WORD $0x10fa; BYTE $0x88 // vshufps xmm0, xmm0, oword [rdx + 8*rdi + 16], 136
LONG $0x4cc6f0c5; WORD $0x30fa; BYTE $0x88 // vshufps xmm1, xmm1, oword [rdx + 8*rdi + 48], 136
LONG $0x54c6e8c5; WORD $0x50fa; BYTE $0x88 // vshufps xmm2, xmm2, oword [rdx + 8*rdi + 80], 136
LONG $0x5cc6e0c5; WORD $0x70fa; BYTE $0x88 // vshufps xmm3, xmm3, oword [rdx + 8*rdi + 112], 136
LONG $0x0411f8c5; BYTE $0xb9 // vmovups oword [rcx + 4*rdi], xmm0
LONG $0x4c11f8c5; WORD $0x10b9 // vmovups oword [rcx + 4*rdi + 16], xmm1
LONG $0x5411f8c5; WORD $0x20b9 // vmovups oword [rcx + 4*rdi + 32], xmm2
LONG $0x5c11f8c5; WORD $0x30b9 // vmovups oword [rcx + 4*rdi + 48], xmm3
LBB0_998:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_999:
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_999
JMP LBB0_1553
LBB0_1000:
WORD $0xff31 // xor edi, edi
LBB0_1001:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1003
LONG $0x337de2c4; WORD $0x7a04 // vpmovzxwd ymm0, oword [rdx + 2*rdi]
LONG $0x337de2c4; WORD $0x7a4c; BYTE $0x10 // vpmovzxwd ymm1, oword [rdx + 2*rdi + 16]
LONG $0x337de2c4; WORD $0x7a54; BYTE $0x20 // vpmovzxwd ymm2, oword [rdx + 2*rdi + 32]
LONG $0x337de2c4; WORD $0x7a5c; BYTE $0x30 // vpmovzxwd ymm3, oword [rdx + 2*rdi + 48]
LONG $0x047ffec5; BYTE $0xb9 // vmovdqu yword [rcx + 4*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20b9 // vmovdqu yword [rcx + 4*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40b9 // vmovdqu yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60b9 // vmovdqu yword [rcx + 4*rdi + 96], ymm3
LBB0_1003:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_1004:
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_1004
JMP LBB0_1553
LBB0_1005:
WORD $0xff31 // xor edi, edi
LBB0_1006:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1008
LONG $0x237de2c4; WORD $0x7a04 // vpmovsxwd ymm0, oword [rdx + 2*rdi]
LONG $0x237de2c4; WORD $0x7a4c; BYTE $0x10 // vpmovsxwd ymm1, oword [rdx + 2*rdi + 16]
LONG $0x237de2c4; WORD $0x7a54; BYTE $0x20 // vpmovsxwd ymm2, oword [rdx + 2*rdi + 32]
LONG $0x237de2c4; WORD $0x7a5c; BYTE $0x30 // vpmovsxwd ymm3, oword [rdx + 2*rdi + 48]
LONG $0x047ffec5; BYTE $0xb9 // vmovdqu yword [rcx + 4*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20b9 // vmovdqu yword [rcx + 4*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40b9 // vmovdqu yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60b9 // vmovdqu yword [rcx + 4*rdi + 96], ymm3
LBB0_1008:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_1009:
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_1009
JMP LBB0_1553
LBB0_1010:
WORD $0xff31 // xor edi, edi
LBB0_1011:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1013
LONG $0x0410f8c5; BYTE $0xfa // vmovups xmm0, oword [rdx + 8*rdi]
LONG $0x4c10f8c5; WORD $0x20fa // vmovups xmm1, oword [rdx + 8*rdi + 32]
LONG $0x5410f8c5; WORD $0x40fa // vmovups xmm2, oword [rdx + 8*rdi + 64]
LONG $0x5c10f8c5; WORD $0x60fa // vmovups xmm3, oword [rdx + 8*rdi + 96]
LONG $0x44c6f8c5; WORD $0x10fa; BYTE $0x88 // vshufps xmm0, xmm0, oword [rdx + 8*rdi + 16], 136
LONG $0x4cc6f0c5; WORD $0x30fa; BYTE $0x88 // vshufps xmm1, xmm1, oword [rdx + 8*rdi + 48], 136
LONG $0x54c6e8c5; WORD $0x50fa; BYTE $0x88 // vshufps xmm2, xmm2, oword [rdx + 8*rdi + 80], 136
LONG $0x5cc6e0c5; WORD $0x70fa; BYTE $0x88 // vshufps xmm3, xmm3, oword [rdx + 8*rdi + 112], 136
LONG $0x0411f8c5; BYTE $0xb9 // vmovups oword [rcx + 4*rdi], xmm0
LONG $0x4c11f8c5; WORD $0x10b9 // vmovups oword [rcx + 4*rdi + 16], xmm1
LONG $0x5411f8c5; WORD $0x20b9 // vmovups oword [rcx + 4*rdi + 32], xmm2
LONG $0x5c11f8c5; WORD $0x30b9 // vmovups oword [rcx + 4*rdi + 48], xmm3
LBB0_1013:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_1014:
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_1014
JMP LBB0_1553
LBB0_1015:
WORD $0xff31 // xor edi, edi
LBB0_1016:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1018
LONG $0x045bfec5; BYTE $0xba // vcvttps2dq ymm0, yword [rdx + 4*rdi]
LONG $0x4c5bfec5; WORD $0x20ba // vcvttps2dq ymm1, yword [rdx + 4*rdi + 32]
LONG $0x545bfec5; WORD $0x40ba // vcvttps2dq ymm2, yword [rdx + 4*rdi + 64]
LONG $0x5c5bfec5; WORD $0x60ba // vcvttps2dq ymm3, yword [rdx + 4*rdi + 96]
LONG $0x0411fdc5; BYTE $0xb9 // vmovupd yword [rcx + 4*rdi], ymm0
LONG $0x4c11fdc5; WORD $0x20b9 // vmovupd yword [rcx + 4*rdi + 32], ymm1
LONG $0x5411fdc5; WORD $0x40b9 // vmovupd yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c11fdc5; WORD $0x60b9 // vmovupd yword [rcx + 4*rdi + 96], ymm3
LBB0_1018:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_1019:
LONG $0x042cfac5; BYTE $0xb2 // vcvttss2si 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_1019
JMP LBB0_1553
LBB0_1020:
WORD $0xff31 // xor edi, edi
LBB0_1021:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1023
LONG $0x337de2c4; WORD $0x7a04 // vpmovzxwd ymm0, oword [rdx + 2*rdi]
LONG $0x337de2c4; WORD $0x7a4c; BYTE $0x10 // vpmovzxwd ymm1, oword [rdx + 2*rdi + 16]
LONG $0x337de2c4; WORD $0x7a54; BYTE $0x20 // vpmovzxwd ymm2, oword [rdx + 2*rdi + 32]
LONG $0x337de2c4; WORD $0x7a5c; BYTE $0x30 // vpmovzxwd ymm3, oword [rdx + 2*rdi + 48]
LONG $0x047ffec5; BYTE $0xb9 // vmovdqu yword [rcx + 4*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20b9 // vmovdqu yword [rcx + 4*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40b9 // vmovdqu yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60b9 // vmovdqu yword [rcx + 4*rdi + 96], ymm3
LBB0_1023:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_1024:
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_1024
JMP LBB0_1553
LBB0_1025:
WORD $0xff31 // xor edi, edi
LBB0_1026:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1028
LONG $0x237de2c4; WORD $0x7a04 // vpmovsxwd ymm0, oword [rdx + 2*rdi]
LONG $0x237de2c4; WORD $0x7a4c; BYTE $0x10 // vpmovsxwd ymm1, oword [rdx + 2*rdi + 16]
LONG $0x237de2c4; WORD $0x7a54; BYTE $0x20 // vpmovsxwd ymm2, oword [rdx + 2*rdi + 32]
LONG $0x237de2c4; WORD $0x7a5c; BYTE $0x30 // vpmovsxwd ymm3, oword [rdx + 2*rdi + 48]
LONG $0x047ffec5; BYTE $0xb9 // vmovdqu yword [rcx + 4*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20b9 // vmovdqu yword [rcx + 4*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40b9 // vmovdqu yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60b9 // vmovdqu yword [rcx + 4*rdi + 96], ymm3
LBB0_1028:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_1029:
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_1029
JMP LBB0_1553
LBB0_1030:
WORD $0xff31 // xor edi, edi
LBB0_1031:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1033
LONG $0x0410f8c5; BYTE $0xfa // vmovups xmm0, oword [rdx + 8*rdi]
LONG $0x4c10f8c5; WORD $0x20fa // vmovups xmm1, oword [rdx + 8*rdi + 32]
LONG $0x5410f8c5; WORD $0x40fa // vmovups xmm2, oword [rdx + 8*rdi + 64]
LONG $0x5c10f8c5; WORD $0x60fa // vmovups xmm3, oword [rdx + 8*rdi + 96]
LONG $0x44c6f8c5; WORD $0x10fa; BYTE $0x88 // vshufps xmm0, xmm0, oword [rdx + 8*rdi + 16], 136
LONG $0x4cc6f0c5; WORD $0x30fa; BYTE $0x88 // vshufps xmm1, xmm1, oword [rdx + 8*rdi + 48], 136
LONG $0x54c6e8c5; WORD $0x50fa; BYTE $0x88 // vshufps xmm2, xmm2, oword [rdx + 8*rdi + 80], 136
LONG $0x5cc6e0c5; WORD $0x70fa; BYTE $0x88 // vshufps xmm3, xmm3, oword [rdx + 8*rdi + 112], 136
LONG $0x0411f8c5; BYTE $0xb9 // vmovups oword [rcx + 4*rdi], xmm0
LONG $0x4c11f8c5; WORD $0x10b9 // vmovups oword [rcx + 4*rdi + 16], xmm1
LONG $0x5411f8c5; WORD $0x20b9 // vmovups oword [rcx + 4*rdi + 32], xmm2
LONG $0x5c11f8c5; WORD $0x30b9 // vmovups oword [rcx + 4*rdi + 48], xmm3
LBB0_1033:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_1034:
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_1034
JMP LBB0_1553
LBB0_1035:
WORD $0xff31 // xor edi, edi
LBB0_1036:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1038
LONG $0x0410f8c5; BYTE $0xba // vmovups xmm0, oword [rdx + 4*rdi]
LONG $0x1879e2c4; WORD $0x2c4d // vbroadcastss xmm1, dword 44[rbp] /* [rip + .LCPI0_2] */
LONG $0xd1c2f8c5; BYTE $0x01 // vcmpltps xmm2, xmm0, xmm1
LONG $0xd95cf8c5 // vsubps xmm3, xmm0, xmm1
LONG $0xdb5bfac5 // vcvttps2dq xmm3, xmm3
LONG $0x1879e2c4; WORD $0x3065 // vbroadcastss xmm4, dword 48[rbp] /* [rip + .LCPI0_3] */
LONG $0xdc57e0c5 // vxorps xmm3, xmm3, xmm4
LONG $0xc05bfac5 // vcvttps2dq xmm0, xmm0
LONG $0x4a61e3c4; WORD $0x20c0 // vblendvps xmm0, xmm3, xmm0, xmm2
LONG $0x5410f8c5; WORD $0x10ba // vmovups xmm2, oword [rdx + 4*rdi + 16]
LONG $0xd9c2e8c5; BYTE $0x01 // vcmpltps xmm3, xmm2, xmm1
LONG $0xe95ce8c5 // vsubps xmm5, xmm2, xmm1
LONG $0xed5bfac5 // vcvttps2dq xmm5, xmm5
LONG $0xec57d0c5 // vxorps xmm5, xmm5, xmm4
LONG $0xd25bfac5 // vcvttps2dq xmm2, xmm2
LONG $0x4a51e3c4; WORD $0x30d2 // vblendvps xmm2, xmm5, xmm2, xmm3
LONG $0x5c10f8c5; WORD $0x20ba // vmovups xmm3, oword [rdx + 4*rdi + 32]
LONG $0xe9c2e0c5; BYTE $0x01 // vcmpltps xmm5, xmm3, xmm1
LONG $0xf15ce0c5 // vsubps xmm6, xmm3, xmm1
LONG $0xf65bfac5 // vcvttps2dq xmm6, xmm6
LONG $0xf457c8c5 // vxorps xmm6, xmm6, xmm4
LONG $0xdb5bfac5 // vcvttps2dq xmm3, xmm3
LONG $0x4a49e3c4; WORD $0x50db // vblendvps xmm3, xmm6, xmm3, xmm5
LONG $0x6c10f8c5; WORD $0x30ba // vmovups xmm5, oword [rdx + 4*rdi + 48]
LONG $0xf1c2d0c5; BYTE $0x01 // vcmpltps xmm6, xmm5, xmm1
LONG $0xc95cd0c5 // vsubps xmm1, xmm5, xmm1
LONG $0xc95bfac5 // vcvttps2dq xmm1, xmm1
LONG $0xcc57f0c5 // vxorps xmm1, xmm1, xmm4
LONG $0xe55bfac5 // vcvttps2dq xmm4, xmm5
LONG $0x4a71e3c4; WORD $0x60cc // vblendvps xmm1, xmm1, xmm4, xmm6
LONG $0x0411f8c5; BYTE $0xb9 // vmovups oword [rcx + 4*rdi], xmm0
LONG $0x5411f8c5; WORD $0x10b9 // vmovups oword [rcx + 4*rdi + 16], xmm2
LONG $0x5c11f8c5; WORD $0x20b9 // vmovups oword [rcx + 4*rdi + 32], xmm3
LONG $0x4c11f8c5; WORD $0x30b9 // vmovups oword [rcx + 4*rdi + 48], xmm1
LBB0_1038:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_1039:
LONG $0x2cfae1c4; WORD $0xb204 // vcvttss2si 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_1039
JMP LBB0_1553
LBB0_1040:
WORD $0xff31 // xor edi, edi
LBB0_1041:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1043
LONG $0x357de2c4; WORD $0xba04 // vpmovzxdq ymm0, oword [rdx + 4*rdi]
LONG $0x357de2c4; WORD $0xba4c; BYTE $0x10 // vpmovzxdq ymm1, oword [rdx + 4*rdi + 16]
LONG $0x357de2c4; WORD $0xba54; BYTE $0x20 // vpmovzxdq ymm2, oword [rdx + 4*rdi + 32]
LONG $0x357de2c4; WORD $0xba5c; BYTE $0x30 // vpmovzxdq ymm3, oword [rdx + 4*rdi + 48]
LONG $0x597de2c4; WORD $0x0865 // vpbroadcastq ymm4, qword 8[rbp] /* [rip + .LCPI0_5] */
LONG $0xc4ebfdc5 // vpor ymm0, ymm0, ymm4
LONG $0xc45cfdc5 // vsubpd ymm0, ymm0, ymm4
LONG $0xccebf5c5 // vpor ymm1, ymm1, ymm4
LONG $0xcc5cf5c5 // vsubpd ymm1, ymm1, ymm4
LONG $0xd4ebedc5 // vpor ymm2, ymm2, ymm4
LONG $0xd45cedc5 // vsubpd ymm2, ymm2, ymm4
LONG $0xdcebe5c5 // vpor ymm3, ymm3, ymm4
LONG $0xdc5ce5c5 // vsubpd ymm3, ymm3, ymm4
LONG $0x0411fdc5; BYTE $0xf9 // vmovupd yword [rcx + 8*rdi], ymm0
LONG $0x4c11fdc5; WORD $0x20f9 // vmovupd yword [rcx + 8*rdi + 32], ymm1
LONG $0x5411fdc5; WORD $0x40f9 // vmovupd yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c11fdc5; WORD $0x60f9 // vmovupd yword [rcx + 8*rdi + 96], ymm3
LBB0_1043:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_1044:
WORD $0x048b; BYTE $0xb2 // mov eax, dword [rdx + 4*rsi]
LONG $0x2ad3e1c4; BYTE $0xc0 // vcvtsi2sd xmm0, xmm5, rax
LONG $0x0411fbc5; BYTE $0xf1 // vmovsd qword [rcx + 8*rsi], xmm0
LONG $0x01c68348 // add rsi, 1
WORD $0x3949; BYTE $0xf1 // cmp r9, rsi
JNE LBB0_1044
JMP LBB0_1553
LBB0_1045:
WORD $0xff31 // xor edi, edi
LBB0_1046:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1048
LONG $0x3379e2c4; WORD $0x7a04 // vpmovzxwd xmm0, qword [rdx + 2*rdi]
LONG $0x3379e2c4; WORD $0x7a4c; BYTE $0x08 // vpmovzxwd xmm1, qword [rdx + 2*rdi + 8]
LONG $0x3379e2c4; WORD $0x7a54; BYTE $0x10 // vpmovzxwd xmm2, qword [rdx + 2*rdi + 16]
LONG $0x3379e2c4; WORD $0x7a5c; BYTE $0x18 // vpmovzxwd xmm3, qword [rdx + 2*rdi + 24]
LONG $0xc0e6fec5 // vcvtdq2pd ymm0, xmm0
LONG $0xc9e6fec5 // vcvtdq2pd ymm1, xmm1
LONG $0xd2e6fec5 // vcvtdq2pd ymm2, xmm2
LONG $0xdbe6fec5 // vcvtdq2pd ymm3, xmm3
LONG $0x0411fdc5; BYTE $0xf9 // vmovupd yword [rcx + 8*rdi], ymm0
LONG $0x4c11fdc5; WORD $0x20f9 // vmovupd yword [rcx + 8*rdi + 32], ymm1
LONG $0x5411fdc5; WORD $0x40f9 // vmovupd yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c11fdc5; WORD $0x60f9 // vmovupd yword [rcx + 8*rdi + 96], ymm3
LBB0_1048:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_1049:
LONG $0x7204b70f // movzx eax, word [rdx + 2*rsi]
LONG $0xc02adbc5 // vcvtsi2sd xmm0, xmm4, eax
LONG $0x0411fbc5; BYTE $0xf1 // vmovsd qword [rcx + 8*rsi], xmm0
LONG $0x01c68348 // add rsi, 1
WORD $0x3949; BYTE $0xf1 // cmp r9, rsi
JNE LBB0_1049
JMP LBB0_1553
LBB0_1050:
WORD $0xff31 // xor edi, edi
LBB0_1051:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1053
LONG $0x2379e2c4; WORD $0x7a04 // vpmovsxwd xmm0, qword [rdx + 2*rdi]
LONG $0x2379e2c4; WORD $0x7a4c; BYTE $0x08 // vpmovsxwd xmm1, qword [rdx + 2*rdi + 8]
LONG $0x2379e2c4; WORD $0x7a54; BYTE $0x10 // vpmovsxwd xmm2, qword [rdx + 2*rdi + 16]
LONG $0x2379e2c4; WORD $0x7a5c; BYTE $0x18 // vpmovsxwd xmm3, qword [rdx + 2*rdi + 24]
LONG $0xc0e6fec5 // vcvtdq2pd ymm0, xmm0
LONG $0xc9e6fec5 // vcvtdq2pd ymm1, xmm1
LONG $0xd2e6fec5 // vcvtdq2pd ymm2, xmm2
LONG $0xdbe6fec5 // vcvtdq2pd ymm3, xmm3
LONG $0x0411fdc5; BYTE $0xf9 // vmovupd yword [rcx + 8*rdi], ymm0
LONG $0x4c11fdc5; WORD $0x20f9 // vmovupd yword [rcx + 8*rdi + 32], ymm1
LONG $0x5411fdc5; WORD $0x40f9 // vmovupd yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c11fdc5; WORD $0x60f9 // vmovupd yword [rcx + 8*rdi + 96], ymm3
LBB0_1053:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_1054:
LONG $0x7204bf0f // movsx eax, word [rdx + 2*rsi]
LONG $0xc02adbc5 // vcvtsi2sd xmm0, xmm4, eax
LONG $0x0411fbc5; BYTE $0xf1 // vmovsd qword [rcx + 8*rsi], xmm0
LONG $0x01c68348 // add rsi, 1
WORD $0x3949; BYTE $0xf1 // cmp r9, rsi
JNE LBB0_1054
JMP LBB0_1553
LBB0_1055:
WORD $0xff31 // xor edi, edi
LBB0_1056:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1058
LONG $0x046ffac5; BYTE $0xfa // vmovdqu xmm0, oword [rdx + 8*rdi]
LONG $0x4c6ffac5; WORD $0x10fa // vmovdqu xmm1, oword [rdx + 8*rdi + 16]
LONG $0x5c6ffac5; WORD $0x20fa // vmovdqu xmm3, oword [rdx + 8*rdi + 32]
LONG $0x546ffac5; WORD $0x30fa // vmovdqu xmm2, oword [rdx + 8*rdi + 48]
LONG $0x16f9e3c4; WORD $0x01c0 // vpextrq rax, xmm0, 1
LONG $0x2aa3e1c4; BYTE $0xe0 // vcvtsi2sd xmm4, xmm11, rax
LONG $0x7ef9e1c4; BYTE $0xc0 // vmovq rax, xmm0
LONG $0x2aa3e1c4; BYTE $0xc0 // vcvtsi2sd xmm0, xmm11, rax
LONG $0xc41479c5 // vunpcklpd xmm8, xmm0, xmm4
LONG $0x16f9e3c4; WORD $0x01c8 // vpextrq rax, xmm1, 1
LONG $0x2aa3e1c4; BYTE $0xe0 // vcvtsi2sd xmm4, xmm11, rax
LONG $0x7ef9e1c4; BYTE $0xc8 // vmovq rax, xmm1
LONG $0x2aa3e1c4; BYTE $0xc8 // vcvtsi2sd xmm1, xmm11, rax
LONG $0xcc14f1c5 // vunpcklpd xmm1, xmm1, xmm4
LONG $0x16f9e3c4; WORD $0x01d0 // vpextrq rax, xmm2, 1
LONG $0x2aa3e1c4; BYTE $0xe0 // vcvtsi2sd xmm4, xmm11, rax
LONG $0x7ef9e1c4; BYTE $0xd0 // vmovq rax, xmm2
LONG $0x2aa3e1c4; BYTE $0xd0 // vcvtsi2sd xmm2, xmm11, rax
LONG $0xd414e9c5 // vunpcklpd xmm2, xmm2, xmm4
LONG $0x16f9e3c4; WORD $0x01d8 // vpextrq rax, xmm3, 1
LONG $0x2aa3e1c4; BYTE $0xe0 // vcvtsi2sd xmm4, xmm11, rax
LONG $0x7ef9e1c4; BYTE $0xd8 // vmovq rax, xmm3
LONG $0x2aa3e1c4; BYTE $0xd8 // vcvtsi2sd xmm3, xmm11, rax
LONG $0x6c6ffac5; WORD $0x50fa // vmovdqu xmm5, oword [rdx + 8*rdi + 80]
LONG $0x16f9e3c4; WORD $0x01e8 // vpextrq rax, xmm5, 1
LONG $0x2aa3e1c4; BYTE $0xf0 // vcvtsi2sd xmm6, xmm11, rax
LONG $0x7ef9e1c4; BYTE $0xe8 // vmovq rax, xmm5
LONG $0x2aa3e1c4; BYTE $0xe8 // vcvtsi2sd xmm5, xmm11, rax
LONG $0x7c6ffac5; WORD $0x40fa // vmovdqu xmm7, oword [rdx + 8*rdi + 64]
LONG $0x16f9e3c4; WORD $0x01f8 // vpextrq rax, xmm7, 1
LONG $0x2aa3e1c4; BYTE $0xc0 // vcvtsi2sd xmm0, xmm11, rax
LONG $0xdc14e1c5 // vunpcklpd xmm3, xmm3, xmm4
LONG $0x7ef9e1c4; BYTE $0xf8 // vmovq rax, xmm7
LONG $0x2aa3e1c4; BYTE $0xe0 // vcvtsi2sd xmm4, xmm11, rax
LONG $0xee14d1c5 // vunpcklpd xmm5, xmm5, xmm6
LONG $0x746ffac5; WORD $0x70fa // vmovdqu xmm6, oword [rdx + 8*rdi + 112]
LONG $0x16f9e3c4; WORD $0x01f0 // vpextrq rax, xmm6, 1
LONG $0xc014d9c5 // vunpcklpd xmm0, xmm4, xmm0
LONG $0x2aa3e1c4; BYTE $0xe0 // vcvtsi2sd xmm4, xmm11, rax
LONG $0x7ef9e1c4; BYTE $0xf0 // vmovq rax, xmm6
LONG $0x2aa3e1c4; BYTE $0xf0 // vcvtsi2sd xmm6, xmm11, rax
LONG $0xe414c9c5 // vunpcklpd xmm4, xmm6, xmm4
LONG $0x746ffac5; WORD $0x60fa // vmovdqu xmm6, oword [rdx + 8*rdi + 96]
LONG $0x16f9e3c4; WORD $0x01f0 // vpextrq rax, xmm6, 1
LONG $0x2aa3e1c4; BYTE $0xf8 // vcvtsi2sd xmm7, xmm11, rax
LONG $0x7ef9e1c4; BYTE $0xf0 // vmovq rax, xmm6
LONG $0x2aa3e1c4; BYTE $0xf0 // vcvtsi2sd xmm6, xmm11, rax
LONG $0xf714c9c5 // vunpcklpd xmm6, xmm6, xmm7
LONG $0x4c11f9c5; WORD $0x10f9 // vmovupd oword [rcx + 8*rdi + 16], xmm1
LONG $0x041179c5; BYTE $0xf9 // vmovupd oword [rcx + 8*rdi], xmm8
LONG $0x5c11f9c5; WORD $0x20f9 // vmovupd oword [rcx + 8*rdi + 32], xmm3
LONG $0x5411f9c5; WORD $0x30f9 // vmovupd oword [rcx + 8*rdi + 48], xmm2
LONG $0x4411f9c5; WORD $0x40f9 // vmovupd oword [rcx + 8*rdi + 64], xmm0
LONG $0x6c11f9c5; WORD $0x50f9 // vmovupd oword [rcx + 8*rdi + 80], xmm5
LONG $0x7411f9c5; WORD $0x60f9 // vmovupd oword [rcx + 8*rdi + 96], xmm6
LONG $0x6411f9c5; WORD $0x70f9 // vmovupd oword [rcx + 8*rdi + 112], xmm4
LBB0_1058:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_1059:
LONG $0x2aa3e1c4; WORD $0xf204 // vcvtsi2sd xmm0, xmm11, qword [rdx + 8*rsi]
LONG $0x0411fbc5; BYTE $0xf1 // vmovsd qword [rcx + 8*rsi], xmm0
LONG $0x01c68348 // add rsi, 1
WORD $0x3949; BYTE $0xf1 // cmp r9, rsi
JNE LBB0_1059
JMP LBB0_1553
LBB0_1060:
WORD $0xff31 // xor edi, edi
LBB0_1061:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1063
LONG $0x045afcc5; BYTE $0xba // vcvtps2pd ymm0, oword [rdx + 4*rdi]
LONG $0x4c5afcc5; WORD $0x10ba // vcvtps2pd ymm1, oword [rdx + 4*rdi + 16]
LONG $0x545afcc5; WORD $0x20ba // vcvtps2pd ymm2, oword [rdx + 4*rdi + 32]
LONG $0x5c5afcc5; WORD $0x30ba // vcvtps2pd ymm3, oword [rdx + 4*rdi + 48]
LONG $0x0411fdc5; BYTE $0xf9 // vmovupd yword [rcx + 8*rdi], ymm0
LONG $0x4c11fdc5; WORD $0x20f9 // vmovupd yword [rcx + 8*rdi + 32], ymm1
LONG $0x5411fdc5; WORD $0x40f9 // vmovupd yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c11fdc5; WORD $0x60f9 // vmovupd yword [rcx + 8*rdi + 96], ymm3
LBB0_1063:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_1064:
LONG $0x0410fac5; BYTE $0xb2 // vmovss xmm0, dword [rdx + 4*rsi]
LONG $0xc05afac5 // vcvtss2sd xmm0, xmm0, xmm0
LONG $0x0411fbc5; BYTE $0xf1 // vmovsd qword [rcx + 8*rsi], xmm0
LONG $0x01c68348 // add rsi, 1
WORD $0x3949; BYTE $0xf1 // cmp r9, rsi
JNE LBB0_1064
JMP LBB0_1553
LBB0_1065:
WORD $0xff31 // xor edi, edi
LBB0_1066:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1068
LONG $0x046ffec5; BYTE $0xba // vmovdqu ymm0, yword [rdx + 4*rdi]
LONG $0x4c6ffec5; WORD $0x20ba // vmovdqu ymm1, yword [rdx + 4*rdi + 32]
LONG $0x546ffec5; WORD $0x40ba // vmovdqu ymm2, yword [rdx + 4*rdi + 64]
LONG $0x5c6ffec5; WORD $0x60ba // vmovdqu ymm3, yword [rdx + 4*rdi + 96]
QUAD $0x00000080a56ffdc5 // vmovdqa ymm4, yword 128[rbp] /* [rip + .LCPI0_11] */
LONG $0x007de2c4; BYTE $0xc4 // vpshufb ymm0, ymm0, ymm4
LONG $0x00fde3c4; WORD $0xe8c0 // vpermq ymm0, ymm0, 232
LONG $0x0075e2c4; BYTE $0xcc // vpshufb ymm1, ymm1, ymm4
LONG $0x00fde3c4; WORD $0xe8c9 // vpermq ymm1, ymm1, 232
LONG $0x006de2c4; BYTE $0xd4 // vpshufb ymm2, ymm2, ymm4
LONG $0x00fde3c4; WORD $0xe8d2 // vpermq ymm2, ymm2, 232
LONG $0x0065e2c4; BYTE $0xdc // vpshufb ymm3, ymm3, ymm4
LONG $0x00fde3c4; WORD $0xe8db // vpermq ymm3, ymm3, 232
LONG $0x047ffac5; BYTE $0x79 // vmovdqu oword [rcx + 2*rdi], xmm0
LONG $0x4c7ffac5; WORD $0x1079 // vmovdqu oword [rcx + 2*rdi + 16], xmm1
LONG $0x547ffac5; WORD $0x2079 // vmovdqu oword [rcx + 2*rdi + 32], xmm2
LONG $0x5c7ffac5; WORD $0x3079 // vmovdqu oword [rcx + 2*rdi + 48], xmm3
LBB0_1068:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_1069:
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_1069
JMP LBB0_1553
LBB0_1070:
WORD $0xff31 // xor edi, edi
LBB0_1071:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1073
LONG $0x046ffec5; BYTE $0xba // vmovdqu ymm0, yword [rdx + 4*rdi]
LONG $0x4c6ffec5; WORD $0x20ba // vmovdqu ymm1, yword [rdx + 4*rdi + 32]
LONG $0x546ffec5; WORD $0x40ba // vmovdqu ymm2, yword [rdx + 4*rdi + 64]
LONG $0x5c6ffec5; WORD $0x60ba // vmovdqu ymm3, yword [rdx + 4*rdi + 96]
QUAD $0x00000080a56ffdc5 // vmovdqa ymm4, yword 128[rbp] /* [rip + .LCPI0_11] */
LONG $0x007de2c4; BYTE $0xc4 // vpshufb ymm0, ymm0, ymm4
LONG $0x00fde3c4; WORD $0xe8c0 // vpermq ymm0, ymm0, 232
LONG $0x0075e2c4; BYTE $0xcc // vpshufb ymm1, ymm1, ymm4
LONG $0x00fde3c4; WORD $0xe8c9 // vpermq ymm1, ymm1, 232
LONG $0x006de2c4; BYTE $0xd4 // vpshufb ymm2, ymm2, ymm4
LONG $0x00fde3c4; WORD $0xe8d2 // vpermq ymm2, ymm2, 232
LONG $0x0065e2c4; BYTE $0xdc // vpshufb ymm3, ymm3, ymm4
LONG $0x00fde3c4; WORD $0xe8db // vpermq ymm3, ymm3, 232
LONG $0x047ffac5; BYTE $0x79 // vmovdqu oword [rcx + 2*rdi], xmm0
LONG $0x4c7ffac5; WORD $0x1079 // vmovdqu oword [rcx + 2*rdi + 16], xmm1
LONG $0x547ffac5; WORD $0x2079 // vmovdqu oword [rcx + 2*rdi + 32], xmm2
LONG $0x5c7ffac5; WORD $0x3079 // vmovdqu oword [rcx + 2*rdi + 48], xmm3
LBB0_1073:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_1074:
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_1074
JMP LBB0_1553
LBB0_1075:
WORD $0xff31 // xor edi, edi
LBB0_1076:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1078
LONG $0x04e6fdc5; BYTE $0xfa // vcvttpd2dq xmm0, yword [rdx + 8*rdi]
LONG $0x4ce6fdc5; WORD $0x20fa // vcvttpd2dq xmm1, yword [rdx + 8*rdi + 32]
LONG $0x54e6fdc5; WORD $0x40fa // vcvttpd2dq xmm2, yword [rdx + 8*rdi + 64]
LONG $0x5ce6fdc5; WORD $0x60fa // vcvttpd2dq xmm3, yword [rdx + 8*rdi + 96]
LONG $0x186de3c4; WORD $0x01d3 // vinsertf128 ymm2, ymm2, xmm3, 1
LONG $0x2b6de2c4; BYTE $0xd0 // vpackusdw ymm2, ymm2, ymm0
LONG $0x187de3c4; WORD $0x01c1 // vinsertf128 ymm0, ymm0, xmm1, 1
LONG $0x2b7de2c4; BYTE $0xc0 // vpackusdw ymm0, ymm0, ymm0
LONG $0xc26cfdc5 // vpunpcklqdq ymm0, ymm0, ymm2
LONG $0x00fde3c4; WORD $0xd8c0 // vpermq ymm0, ymm0, 216
LONG $0x047ffec5; BYTE $0x79 // vmovdqu yword [rcx + 2*rdi], ymm0
LBB0_1078:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_1079:
LONG $0x042cfbc5; BYTE $0xf2 // vcvttsd2si 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_1079
JMP LBB0_1553
LBB0_1080:
WORD $0xff31 // xor edi, edi
LBB0_1081:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1083
LONG $0x04e6fdc5; BYTE $0xfa // vcvttpd2dq xmm0, yword [rdx + 8*rdi]
LONG $0x4ce6fdc5; WORD $0x20fa // vcvttpd2dq xmm1, yword [rdx + 8*rdi + 32]
LONG $0x54e6fdc5; WORD $0x40fa // vcvttpd2dq xmm2, yword [rdx + 8*rdi + 64]
LONG $0x5ce6fdc5; WORD $0x60fa // vcvttpd2dq xmm3, yword [rdx + 8*rdi + 96]
LONG $0x186de3c4; WORD $0x01d3 // vinsertf128 ymm2, ymm2, xmm3, 1
LONG $0xd06bedc5 // vpackssdw ymm2, ymm2, ymm0
LONG $0x187de3c4; WORD $0x01c1 // vinsertf128 ymm0, ymm0, xmm1, 1
LONG $0xc06bfdc5 // vpackssdw ymm0, ymm0, ymm0
LONG $0xc26cfdc5 // vpunpcklqdq ymm0, ymm0, ymm2
LONG $0x00fde3c4; WORD $0xd8c0 // vpermq ymm0, ymm0, 216
LONG $0x047ffec5; BYTE $0x79 // vmovdqu yword [rcx + 2*rdi], ymm0
LBB0_1083:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_1084:
LONG $0x042cfbc5; BYTE $0xf2 // vcvttsd2si 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_1084
JMP LBB0_1553
LBB0_1085:
WORD $0xff31 // xor edi, edi
LBB0_1086:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1088
LONG $0xc0eff9c5 // vpxor xmm0, xmm0, xmm0
LONG $0x0e79e3c4; WORD $0xfa0c; BYTE $0x11 // vpblendw xmm1, xmm0, oword [rdx + 8*rdi], 17
QUAD $0x1110fa540e79e3c4 // vpblendw xmm2, xmm0, oword [rdx + 8*rdi + 16], 17
QUAD $0x1120fa5c0e79e3c4 // vpblendw xmm3, xmm0, oword [rdx + 8*rdi + 32], 17
QUAD $0x1130fa640e79e3c4 // vpblendw xmm4, xmm0, oword [rdx + 8*rdi + 48], 17
QUAD $0x1140fa6c0e79e3c4 // vpblendw xmm5, xmm0, oword [rdx + 8*rdi + 64], 17
QUAD $0x1150fa740e79e3c4 // vpblendw xmm6, xmm0, oword [rdx + 8*rdi + 80], 17
QUAD $0x1160fa7c0e79e3c4 // vpblendw xmm7, xmm0, oword [rdx + 8*rdi + 96], 17
QUAD $0x1170fa440e79e3c4 // vpblendw xmm0, xmm0, oword [rdx + 8*rdi + 112], 17
LONG $0x384de3c4; WORD $0x01c0 // vinserti128 ymm0, ymm6, xmm0, 1
LONG $0x3855e3c4; WORD $0x01ef // vinserti128 ymm5, ymm5, xmm7, 1
LONG $0x2b55e2c4; BYTE $0xc0 // vpackusdw ymm0, ymm5, ymm0
LONG $0x2b7de2c4; BYTE $0xc0 // vpackusdw ymm0, ymm0, ymm0
LONG $0x386de3c4; WORD $0x01d4 // vinserti128 ymm2, ymm2, xmm4, 1
LONG $0x3875e3c4; WORD $0x01cb // vinserti128 ymm1, ymm1, xmm3, 1
LONG $0x2b75e2c4; BYTE $0xca // vpackusdw ymm1, ymm1, ymm2
LONG $0x2b75e2c4; BYTE $0xc8 // vpackusdw ymm1, ymm1, ymm0
LONG $0xc06cf5c5 // vpunpcklqdq ymm0, ymm1, ymm0
LONG $0x00fde3c4; WORD $0xd8c0 // vpermq ymm0, ymm0, 216
LONG $0x047ffec5; BYTE $0x79 // vmovdqu yword [rcx + 2*rdi], ymm0
LBB0_1088:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_1089:
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_1089
JMP LBB0_1553
LBB0_1090:
WORD $0xff31 // xor edi, edi
LBB0_1091:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1093
LONG $0x045bfec5; BYTE $0xba // vcvttps2dq ymm0, yword [rdx + 4*rdi]
LONG $0x397de3c4; WORD $0x01c1 // vextracti128 xmm1, ymm0, 1
LONG $0x2b79e2c4; BYTE $0xc1 // vpackusdw xmm0, xmm0, xmm1
LONG $0x4c5bfec5; WORD $0x20ba // vcvttps2dq ymm1, yword [rdx + 4*rdi + 32]
LONG $0x397de3c4; WORD $0x01ca // vextracti128 xmm2, ymm1, 1
LONG $0x2b71e2c4; BYTE $0xca // vpackusdw xmm1, xmm1, xmm2
LONG $0x545bfec5; WORD $0x40ba // vcvttps2dq ymm2, yword [rdx + 4*rdi + 64]
LONG $0x397de3c4; WORD $0x01d3 // vextracti128 xmm3, ymm2, 1
LONG $0x2b69e2c4; BYTE $0xd3 // vpackusdw xmm2, xmm2, xmm3
LONG $0x5c5bfec5; WORD $0x60ba // vcvttps2dq ymm3, yword [rdx + 4*rdi + 96]
LONG $0x397de3c4; WORD $0x01dc // vextracti128 xmm4, ymm3, 1
LONG $0x2b61e2c4; BYTE $0xdc // vpackusdw xmm3, xmm3, xmm4
LONG $0x047ffac5; BYTE $0x79 // vmovdqu oword [rcx + 2*rdi], xmm0
LONG $0x4c7ffac5; WORD $0x1079 // vmovdqu oword [rcx + 2*rdi + 16], xmm1
LONG $0x547ffac5; WORD $0x2079 // vmovdqu oword [rcx + 2*rdi + 32], xmm2
LONG $0x5c7ffac5; WORD $0x3079 // vmovdqu oword [rcx + 2*rdi + 48], xmm3
LBB0_1093:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_1094:
LONG $0x042cfac5; BYTE $0xb2 // vcvttss2si 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_1094
JMP LBB0_1553
LBB0_1095:
WORD $0xff31 // xor edi, edi
LBB0_1096:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1098
LONG $0x045bfec5; BYTE $0xba // vcvttps2dq ymm0, yword [rdx + 4*rdi]
LONG $0x397de3c4; WORD $0x01c1 // vextracti128 xmm1, ymm0, 1
LONG $0xc16bf9c5 // vpackssdw xmm0, xmm0, xmm1
LONG $0x4c5bfec5; WORD $0x20ba // vcvttps2dq ymm1, yword [rdx + 4*rdi + 32]
LONG $0x397de3c4; WORD $0x01ca // vextracti128 xmm2, ymm1, 1
LONG $0xca6bf1c5 // vpackssdw xmm1, xmm1, xmm2
LONG $0x545bfec5; WORD $0x40ba // vcvttps2dq ymm2, yword [rdx + 4*rdi + 64]
LONG $0x397de3c4; WORD $0x01d3 // vextracti128 xmm3, ymm2, 1
LONG $0xd36be9c5 // vpackssdw xmm2, xmm2, xmm3
LONG $0x5c5bfec5; WORD $0x60ba // vcvttps2dq ymm3, yword [rdx + 4*rdi + 96]
LONG $0x397de3c4; WORD $0x01dc // vextracti128 xmm4, ymm3, 1
LONG $0xdc6be1c5 // vpackssdw xmm3, xmm3, xmm4
LONG $0x047ffac5; BYTE $0x79 // vmovdqu oword [rcx + 2*rdi], xmm0
LONG $0x4c7ffac5; WORD $0x1079 // vmovdqu oword [rcx + 2*rdi + 16], xmm1
LONG $0x547ffac5; WORD $0x2079 // vmovdqu oword [rcx + 2*rdi + 32], xmm2
LONG $0x5c7ffac5; WORD $0x3079 // vmovdqu oword [rcx + 2*rdi + 48], xmm3
LBB0_1098:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_1099:
LONG $0x042cfac5; BYTE $0xb2 // vcvttss2si 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_1099
JMP LBB0_1553
LBB0_1100:
WORD $0xff31 // xor edi, edi
LBB0_1101:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1103
LONG $0x357de2c4; WORD $0xba04 // vpmovzxdq ymm0, oword [rdx + 4*rdi]
LONG $0x357de2c4; WORD $0xba4c; BYTE $0x10 // vpmovzxdq ymm1, oword [rdx + 4*rdi + 16]
LONG $0x357de2c4; WORD $0xba54; BYTE $0x20 // vpmovzxdq ymm2, oword [rdx + 4*rdi + 32]
LONG $0x357de2c4; WORD $0xba5c; BYTE $0x30 // vpmovzxdq ymm3, oword [rdx + 4*rdi + 48]
LONG $0x047ffec5; BYTE $0xf9 // vmovdqu yword [rcx + 8*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20f9 // vmovdqu yword [rcx + 8*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40f9 // vmovdqu yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60f9 // vmovdqu yword [rcx + 8*rdi + 96], ymm3
LBB0_1103:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_1104:
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_1104
JMP LBB0_1553
LBB0_1105:
WORD $0xff31 // xor edi, edi
LBB0_1106:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1108
LONG $0x046ffec5; BYTE $0xba // vmovdqu ymm0, yword [rdx + 4*rdi]
LONG $0x4c6ffec5; WORD $0x20ba // vmovdqu ymm1, yword [rdx + 4*rdi + 32]
LONG $0x546ffec5; WORD $0x40ba // vmovdqu ymm2, yword [rdx + 4*rdi + 64]
LONG $0x587de2c4; WORD $0x345d // vpbroadcastd ymm3, dword 52[rbp] /* [rip + .LCPI0_13] */
LONG $0x646ffec5; WORD $0x60ba // vmovdqu ymm4, yword [rdx + 4*rdi + 96]
LONG $0x0e7de3c4; WORD $0xaaeb // vpblendw ymm5, ymm0, ymm3, 170
LONG $0x587de2c4; WORD $0x3875 // vpbroadcastd ymm6, dword 56[rbp] /* [rip + .LCPI0_14] */
LONG $0xd072fdc5; BYTE $0x10 // vpsrld ymm0, ymm0, 16
LONG $0x0e7de3c4; WORD $0xaac6 // vpblendw ymm0, ymm0, ymm6, 170
LONG $0x187de2c4; WORD $0x3c7d // vbroadcastss ymm7, dword 60[rbp] /* [rip + .LCPI0_15] */
LONG $0xc75cfcc5 // vsubps ymm0, ymm0, ymm7
LONG $0xc058d4c5 // vaddps ymm0, ymm5, ymm0
LONG $0x0e75e3c4; WORD $0xaaeb // vpblendw ymm5, ymm1, ymm3, 170
LONG $0xd172f5c5; BYTE $0x10 // vpsrld ymm1, ymm1, 16
LONG $0x0e75e3c4; WORD $0xaace // vpblendw ymm1, ymm1, ymm6, 170
LONG $0xcf5cf4c5 // vsubps ymm1, ymm1, ymm7
LONG $0xc958d4c5 // vaddps ymm1, ymm5, ymm1
LONG $0x0e6de3c4; WORD $0xaaeb // vpblendw ymm5, ymm2, ymm3, 170
LONG $0xd272edc5; BYTE $0x10 // vpsrld ymm2, ymm2, 16
LONG $0x0e6de3c4; WORD $0xaad6 // vpblendw ymm2, ymm2, ymm6, 170
LONG $0xd75cecc5 // vsubps ymm2, ymm2, ymm7
LONG $0xd258d4c5 // vaddps ymm2, ymm5, ymm2
LONG $0x0e5de3c4; WORD $0xaadb // vpblendw ymm3, ymm4, ymm3, 170
LONG $0xd472ddc5; BYTE $0x10 // vpsrld ymm4, ymm4, 16
LONG $0x0e5de3c4; WORD $0xaae6 // vpblendw ymm4, ymm4, ymm6, 170
LONG $0xe75cdcc5 // vsubps ymm4, ymm4, ymm7
LONG $0xdc58e4c5 // vaddps ymm3, ymm3, ymm4
LONG $0x0411fcc5; BYTE $0xb9 // vmovups yword [rcx + 4*rdi], ymm0
LONG $0x4c11fcc5; WORD $0x20b9 // vmovups yword [rcx + 4*rdi + 32], ymm1
LONG $0x5411fcc5; WORD $0x40b9 // vmovups yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c11fcc5; WORD $0x60b9 // vmovups yword [rcx + 4*rdi + 96], ymm3
LBB0_1108:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_1109:
WORD $0x048b; BYTE $0xb2 // mov eax, dword [rdx + 4*rsi]
LONG $0x2abae1c4; BYTE $0xc0 // vcvtsi2ss xmm0, xmm8, rax
LONG $0x0411fac5; BYTE $0xb1 // vmovss dword [rcx + 4*rsi], xmm0
LONG $0x01c68348 // add rsi, 1
WORD $0x3949; BYTE $0xf1 // cmp r9, rsi
JNE LBB0_1109
JMP LBB0_1553
LBB0_1110:
WORD $0xff31 // xor edi, edi
LBB0_1111:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1113
LONG $0x2cfbe1c4; WORD $0xfa44; BYTE $0x08 // vcvttsd2si rax, qword [rdx + 8*rdi + 8]
LONG $0x6ef9e1c4; BYTE $0xc0 // vmovq xmm0, rax
LONG $0x2cfbe1c4; WORD $0xfa04 // vcvttsd2si rax, qword [rdx + 8*rdi]
LONG $0x6ef9e1c4; BYTE $0xc8 // vmovq xmm1, rax
LONG $0xc06c71c5 // vpunpcklqdq xmm8, xmm1, xmm0
LONG $0x2cfbe1c4; WORD $0xfa44; BYTE $0x18 // vcvttsd2si rax, qword [rdx + 8*rdi + 24]
LONG $0x6ef9e1c4; BYTE $0xc8 // vmovq xmm1, rax
LONG $0x2cfbe1c4; WORD $0xfa44; BYTE $0x10 // vcvttsd2si rax, qword [rdx + 8*rdi + 16]
LONG $0x6ef9e1c4; BYTE $0xd0 // vmovq xmm2, rax
LONG $0x2cfbe1c4; WORD $0xfa44; BYTE $0x38 // vcvttsd2si rax, qword [rdx + 8*rdi + 56]
LONG $0xc96ce9c5 // vpunpcklqdq xmm1, xmm2, xmm1
LONG $0x2cfbe1c4; WORD $0xfa5c; BYTE $0x30 // vcvttsd2si rbx, qword [rdx + 8*rdi + 48]
LONG $0x6ef9e1c4; BYTE $0xd0 // vmovq xmm2, rax
LONG $0x2cfbe1c4; WORD $0xfa44; BYTE $0x28 // vcvttsd2si rax, qword [rdx + 8*rdi + 40]
LONG $0x6ef9e1c4; BYTE $0xdb // vmovq xmm3, rbx
LONG $0x2cfbe1c4; WORD $0xfa5c; BYTE $0x20 // vcvttsd2si rbx, qword [rdx + 8*rdi + 32]
LONG $0xd26ce1c5 // vpunpcklqdq xmm2, xmm3, xmm2
LONG $0x6ef9e1c4; BYTE $0xd8 // vmovq xmm3, rax
LONG $0x6ef9e1c4; BYTE $0xe3 // vmovq xmm4, rbx
LONG $0xdb6cd9c5 // vpunpcklqdq xmm3, xmm4, xmm3
LONG $0x2cfbe1c4; WORD $0xfa44; BYTE $0x58 // vcvttsd2si rax, qword [rdx + 8*rdi + 88]
LONG $0x6ef9e1c4; BYTE $0xe0 // vmovq xmm4, rax
LONG $0x2cfbe1c4; WORD $0xfa44; BYTE $0x50 // vcvttsd2si rax, qword [rdx + 8*rdi + 80]
LONG $0x6ef9e1c4; BYTE $0xe8 // vmovq xmm5, rax
LONG $0xe46cd1c5 // vpunpcklqdq xmm4, xmm5, xmm4
LONG $0x2cfbe1c4; WORD $0xfa44; BYTE $0x48 // vcvttsd2si rax, qword [rdx + 8*rdi + 72]
LONG $0x6ef9e1c4; BYTE $0xe8 // vmovq xmm5, rax
LONG $0x2cfbe1c4; WORD $0xfa44; BYTE $0x40 // vcvttsd2si rax, qword [rdx + 8*rdi + 64]
LONG $0x6ef9e1c4; BYTE $0xf0 // vmovq xmm6, rax
LONG $0x2cfbe1c4; WORD $0xfa44; BYTE $0x78 // vcvttsd2si rax, qword [rdx + 8*rdi + 120]
LONG $0xed6cc9c5 // vpunpcklqdq xmm5, xmm6, xmm5
LONG $0x2cfbe1c4; WORD $0xfa5c; BYTE $0x70 // vcvttsd2si rbx, qword [rdx + 8*rdi + 112]
LONG $0x6ef9e1c4; BYTE $0xf0 // vmovq xmm6, rax
LONG $0x2cfbe1c4; WORD $0xfa44; BYTE $0x68 // vcvttsd2si rax, qword [rdx + 8*rdi + 104]
LONG $0x6ef9e1c4; BYTE $0xfb // vmovq xmm7, rbx
LONG $0x2cfbe1c4; WORD $0xfa5c; BYTE $0x60 // vcvttsd2si rbx, qword [rdx + 8*rdi + 96]
LONG $0x6ef9e1c4; BYTE $0xc0 // vmovq xmm0, rax
LONG $0xf66cc1c5 // vpunpcklqdq xmm6, xmm7, xmm6
LONG $0x6ef9e1c4; BYTE $0xfb // vmovq xmm7, rbx
LONG $0xc06cc1c5 // vpunpcklqdq xmm0, xmm7, xmm0
LONG $0x4c7ffac5; WORD $0x10f9 // vmovdqu oword [rcx + 8*rdi + 16], xmm1
LONG $0x047f7ac5; BYTE $0xf9 // vmovdqu oword [rcx + 8*rdi], xmm8
LONG $0x5c7ffac5; WORD $0x20f9 // vmovdqu oword [rcx + 8*rdi + 32], xmm3
LONG $0x547ffac5; WORD $0x30f9 // vmovdqu oword [rcx + 8*rdi + 48], xmm2
LONG $0x6c7ffac5; WORD $0x40f9 // vmovdqu oword [rcx + 8*rdi + 64], xmm5
LONG $0x647ffac5; WORD $0x50f9 // vmovdqu oword [rcx + 8*rdi + 80], xmm4
LONG $0x447ffac5; WORD $0x60f9 // vmovdqu oword [rcx + 8*rdi + 96], xmm0
LONG $0x747ffac5; WORD $0x70f9 // vmovdqu oword [rcx + 8*rdi + 112], xmm6
LBB0_1113:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_1114:
LONG $0x2cfbe1c4; WORD $0xf204 // vcvttsd2si rax, qword [rdx + 8*rsi]
LONG $0xf1048948 // mov qword [rcx + 8*rsi], rax
LONG $0x01c68348 // add rsi, 1
WORD $0x3949; BYTE $0xf1 // cmp r9, rsi
JNE LBB0_1114
JMP LBB0_1553
LBB0_1115:
WORD $0xff31 // xor edi, edi
LBB0_1116:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1118
LONG $0x045afdc5; BYTE $0xfa // vcvtpd2ps xmm0, yword [rdx + 8*rdi]
LONG $0x4c5afdc5; WORD $0x20fa // vcvtpd2ps xmm1, yword [rdx + 8*rdi + 32]
LONG $0x545afdc5; WORD $0x40fa // vcvtpd2ps xmm2, yword [rdx + 8*rdi + 64]
LONG $0x5c5afdc5; WORD $0x60fa // vcvtpd2ps xmm3, yword [rdx + 8*rdi + 96]
LONG $0x0411f9c5; BYTE $0xb9 // vmovupd oword [rcx + 4*rdi], xmm0
LONG $0x4c11f9c5; WORD $0x10b9 // vmovupd oword [rcx + 4*rdi + 16], xmm1
LONG $0x5411f9c5; WORD $0x20b9 // vmovupd oword [rcx + 4*rdi + 32], xmm2
LONG $0x5c11f9c5; WORD $0x30b9 // vmovupd oword [rcx + 4*rdi + 48], xmm3
LBB0_1118:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_1119:
LONG $0x0410fbc5; BYTE $0xf2 // vmovsd xmm0, qword [rdx + 8*rsi]
LONG $0xc05afbc5 // vcvtsd2ss xmm0, xmm0, xmm0
LONG $0x0411fac5; BYTE $0xb1 // vmovss dword [rcx + 4*rsi], xmm0
LONG $0x01c68348 // add rsi, 1
WORD $0x3949; BYTE $0xf1 // cmp r9, rsi
JNE LBB0_1119
JMP LBB0_1553
LBB0_1120:
WORD $0xff31 // xor edi, edi
LBB0_1121:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1123
LONG $0x337de2c4; WORD $0x7a04 // vpmovzxwd ymm0, oword [rdx + 2*rdi]
LONG $0x337de2c4; WORD $0x7a4c; BYTE $0x10 // vpmovzxwd ymm1, oword [rdx + 2*rdi + 16]
LONG $0x337de2c4; WORD $0x7a54; BYTE $0x20 // vpmovzxwd ymm2, oword [rdx + 2*rdi + 32]
LONG $0x337de2c4; WORD $0x7a5c; BYTE $0x30 // vpmovzxwd ymm3, oword [rdx + 2*rdi + 48]
LONG $0xc05bfcc5 // vcvtdq2ps ymm0, ymm0
LONG $0xc95bfcc5 // vcvtdq2ps ymm1, ymm1
LONG $0xd25bfcc5 // vcvtdq2ps ymm2, ymm2
LONG $0xdb5bfcc5 // vcvtdq2ps ymm3, ymm3
LONG $0x0411fcc5; BYTE $0xb9 // vmovups yword [rcx + 4*rdi], ymm0
LONG $0x4c11fcc5; WORD $0x20b9 // vmovups yword [rcx + 4*rdi + 32], ymm1
LONG $0x5411fcc5; WORD $0x40b9 // vmovups yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c11fcc5; WORD $0x60b9 // vmovups yword [rcx + 4*rdi + 96], ymm3
LBB0_1123:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_1124:
LONG $0x7204b70f // movzx eax, word [rdx + 2*rsi]
LONG $0xc02adac5 // vcvtsi2ss xmm0, xmm4, eax
LONG $0x0411fac5; BYTE $0xb1 // vmovss dword [rcx + 4*rsi], xmm0
LONG $0x01c68348 // add rsi, 1
WORD $0x3949; BYTE $0xf1 // cmp r9, rsi
JNE LBB0_1124
JMP LBB0_1553
LBB0_1125:
WORD $0xff31 // xor edi, edi
LBB0_1126:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1128
LONG $0x247de2c4; WORD $0x7a04 // vpmovsxwq ymm0, qword [rdx + 2*rdi]
LONG $0x247de2c4; WORD $0x7a4c; BYTE $0x08 // vpmovsxwq ymm1, qword [rdx + 2*rdi + 8]
LONG $0x247de2c4; WORD $0x7a54; BYTE $0x10 // vpmovsxwq ymm2, qword [rdx + 2*rdi + 16]
LONG $0x247de2c4; WORD $0x7a5c; BYTE $0x18 // vpmovsxwq ymm3, qword [rdx + 2*rdi + 24]
LONG $0x047ffec5; BYTE $0xf9 // vmovdqu yword [rcx + 8*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20f9 // vmovdqu yword [rcx + 8*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40f9 // vmovdqu yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60f9 // vmovdqu yword [rcx + 8*rdi + 96], ymm3
LBB0_1128:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_1129:
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_1129
JMP LBB0_1553
LBB0_1130:
WORD $0xff31 // xor edi, edi
LBB0_1131:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1133
LONG $0x237de2c4; WORD $0x7a04 // vpmovsxwd ymm0, oword [rdx + 2*rdi]
LONG $0x237de2c4; WORD $0x7a4c; BYTE $0x10 // vpmovsxwd ymm1, oword [rdx + 2*rdi + 16]
LONG $0x237de2c4; WORD $0x7a54; BYTE $0x20 // vpmovsxwd ymm2, oword [rdx + 2*rdi + 32]
LONG $0x237de2c4; WORD $0x7a5c; BYTE $0x30 // vpmovsxwd ymm3, oword [rdx + 2*rdi + 48]
LONG $0xc05bfcc5 // vcvtdq2ps ymm0, ymm0
LONG $0xc95bfcc5 // vcvtdq2ps ymm1, ymm1
LONG $0xd25bfcc5 // vcvtdq2ps ymm2, ymm2
LONG $0xdb5bfcc5 // vcvtdq2ps ymm3, ymm3
LONG $0x0411fcc5; BYTE $0xb9 // vmovups yword [rcx + 4*rdi], ymm0
LONG $0x4c11fcc5; WORD $0x20b9 // vmovups yword [rcx + 4*rdi + 32], ymm1
LONG $0x5411fcc5; WORD $0x40b9 // vmovups yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c11fcc5; WORD $0x60b9 // vmovups yword [rcx + 4*rdi + 96], ymm3
LBB0_1133:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_1134:
LONG $0x7204bf0f // movsx eax, word [rdx + 2*rsi]
LONG $0xc02adac5 // vcvtsi2ss xmm0, xmm4, eax
LONG $0x0411fac5; BYTE $0xb1 // vmovss dword [rcx + 4*rsi], xmm0
LONG $0x01c68348 // add rsi, 1
WORD $0x3949; BYTE $0xf1 // cmp r9, rsi
JNE LBB0_1134
JMP LBB0_1553
LBB0_1135:
WORD $0xff31 // xor edi, edi
LBB0_1136:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1138
LONG $0x046ffac5; BYTE $0xfa // vmovdqu xmm0, oword [rdx + 8*rdi]
LONG $0x16f9e3c4; WORD $0x01c0 // vpextrq rax, xmm0, 1
LONG $0x4c6ffac5; WORD $0x10fa // vmovdqu xmm1, oword [rdx + 8*rdi + 16]
LONG $0x2abae1c4; BYTE $0xd0 // vcvtsi2ss xmm2, xmm8, rax
LONG $0x7ef9e1c4; BYTE $0xc0 // vmovq rax, xmm0
LONG $0x2abae1c4; BYTE $0xc0 // vcvtsi2ss xmm0, xmm8, rax
LONG $0x7ef9e1c4; BYTE $0xc8 // vmovq rax, xmm1
LONG $0x2abae1c4; BYTE $0xd8 // vcvtsi2ss xmm3, xmm8, rax
LONG $0x16f9e3c4; WORD $0x01c8 // vpextrq rax, xmm1, 1
LONG $0x2abae1c4; BYTE $0xc8 // vcvtsi2ss xmm1, xmm8, rax
LONG $0x646ffac5; WORD $0x20fa // vmovdqu xmm4, oword [rdx + 8*rdi + 32]
LONG $0x6c6ffac5; WORD $0x30fa // vmovdqu xmm5, oword [rdx + 8*rdi + 48]
LONG $0x16f9e3c4; WORD $0x01e0 // vpextrq rax, xmm4, 1
LONG $0x2179e3c4; WORD $0x10c2 // vinsertps xmm0, xmm0, xmm2, 16
LONG $0x2abae1c4; BYTE $0xd0 // vcvtsi2ss xmm2, xmm8, rax
LONG $0x7ef9e1c4; BYTE $0xe0 // vmovq rax, xmm4
LONG $0x2abae1c4; BYTE $0xe0 // vcvtsi2ss xmm4, xmm8, rax
LONG $0x7ef9e1c4; BYTE $0xe8 // vmovq rax, xmm5
LONG $0x2abae1c4; BYTE $0xf0 // vcvtsi2ss xmm6, xmm8, rax
LONG $0x2179e3c4; WORD $0x20c3 // vinsertps xmm0, xmm0, xmm3, 32
LONG $0x2179e3c4; WORD $0x30c1 // vinsertps xmm0, xmm0, xmm1, 48
LONG $0x16f9e3c4; WORD $0x01e8 // vpextrq rax, xmm5, 1
LONG $0x2159e3c4; WORD $0x10ca // vinsertps xmm1, xmm4, xmm2, 16
LONG $0x2abae1c4; BYTE $0xd0 // vcvtsi2ss xmm2, xmm8, rax
LONG $0x2171e3c4; WORD $0x20ce // vinsertps xmm1, xmm1, xmm6, 32
LONG $0x5c6ffac5; WORD $0x40fa // vmovdqu xmm3, oword [rdx + 8*rdi + 64]
LONG $0x16f9e3c4; WORD $0x01d8 // vpextrq rax, xmm3, 1
LONG $0x2abae1c4; BYTE $0xe0 // vcvtsi2ss xmm4, xmm8, rax
LONG $0x7ef9e1c4; BYTE $0xd8 // vmovq rax, xmm3
LONG $0x2abae1c4; BYTE $0xd8 // vcvtsi2ss xmm3, xmm8, rax
LONG $0x6c6ffac5; WORD $0x50fa // vmovdqu xmm5, oword [rdx + 8*rdi + 80]
LONG $0x7ef9e1c4; BYTE $0xe8 // vmovq rax, xmm5
LONG $0x2abae1c4; BYTE $0xf0 // vcvtsi2ss xmm6, xmm8, rax
LONG $0x2171e3c4; WORD $0x30ca // vinsertps xmm1, xmm1, xmm2, 48
LONG $0x2161e3c4; WORD $0x10d4 // vinsertps xmm2, xmm3, xmm4, 16
LONG $0x16f9e3c4; WORD $0x01e8 // vpextrq rax, xmm5, 1
LONG $0x2169e3c4; WORD $0x20d6 // vinsertps xmm2, xmm2, xmm6, 32
LONG $0x2abae1c4; BYTE $0xd8 // vcvtsi2ss xmm3, xmm8, rax
LONG $0x2169e3c4; WORD $0x30d3 // vinsertps xmm2, xmm2, xmm3, 48
LONG $0x5c6ffac5; WORD $0x60fa // vmovdqu xmm3, oword [rdx + 8*rdi + 96]
LONG $0x16f9e3c4; WORD $0x01d8 // vpextrq rax, xmm3, 1
LONG $0x2abae1c4; BYTE $0xe0 // vcvtsi2ss xmm4, xmm8, rax
LONG $0x7ef9e1c4; BYTE $0xd8 // vmovq rax, xmm3
LONG $0x2abae1c4; BYTE $0xd8 // vcvtsi2ss xmm3, xmm8, rax
LONG $0x6c6ffac5; WORD $0x70fa // vmovdqu xmm5, oword [rdx + 8*rdi + 112]
LONG $0x7ef9e1c4; BYTE $0xe8 // vmovq rax, xmm5
LONG $0x2abae1c4; BYTE $0xf0 // vcvtsi2ss xmm6, xmm8, rax
LONG $0x2161e3c4; WORD $0x10dc // vinsertps xmm3, xmm3, xmm4, 16
LONG $0x2161e3c4; WORD $0x20de // vinsertps xmm3, xmm3, xmm6, 32
LONG $0x16f9e3c4; WORD $0x01e8 // vpextrq rax, xmm5, 1
LONG $0x2abae1c4; BYTE $0xe0 // vcvtsi2ss xmm4, xmm8, rax
LONG $0x2161e3c4; WORD $0x30dc // vinsertps xmm3, xmm3, xmm4, 48
LONG $0x0411f8c5; BYTE $0xb9 // vmovups oword [rcx + 4*rdi], xmm0
LONG $0x4c11f8c5; WORD $0x10b9 // vmovups oword [rcx + 4*rdi + 16], xmm1
LONG $0x5411f8c5; WORD $0x20b9 // vmovups oword [rcx + 4*rdi + 32], xmm2
LONG $0x5c11f8c5; WORD $0x30b9 // vmovups oword [rcx + 4*rdi + 48], xmm3
LBB0_1138:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_1139:
LONG $0x2abae1c4; WORD $0xf204 // vcvtsi2ss xmm0, xmm8, qword [rdx + 8*rsi]
LONG $0x0411fac5; BYTE $0xb1 // vmovss dword [rcx + 4*rsi], xmm0
LONG $0x01c68348 // add rsi, 1
WORD $0x3949; BYTE $0xf1 // cmp r9, rsi
JNE LBB0_1139
JMP LBB0_1553
LBB0_1140:
WORD $0xff31 // xor edi, edi
LBB0_1141:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1143
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x04 // vcvttss2si rax, dword [rdx + 4*rdi + 4]
LONG $0x6ef9e1c4; BYTE $0xc0 // vmovq xmm0, rax
LONG $0x2cfae1c4; WORD $0xba04 // vcvttss2si rax, dword [rdx + 4*rdi]
LONG $0x6ef9e1c4; BYTE $0xc8 // vmovq xmm1, rax
LONG $0xc06c71c5 // vpunpcklqdq xmm8, xmm1, xmm0
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x0c // vcvttss2si rax, dword [rdx + 4*rdi + 12]
LONG $0x6ef9e1c4; BYTE $0xc8 // vmovq xmm1, rax
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x08 // vcvttss2si rax, dword [rdx + 4*rdi + 8]
LONG $0x6ef9e1c4; BYTE $0xd0 // vmovq xmm2, rax
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x1c // vcvttss2si rax, dword [rdx + 4*rdi + 28]
LONG $0xc96ce9c5 // vpunpcklqdq xmm1, xmm2, xmm1
LONG $0x2cfae1c4; WORD $0xba5c; BYTE $0x18 // vcvttss2si rbx, dword [rdx + 4*rdi + 24]
LONG $0x6ef9e1c4; BYTE $0xd0 // vmovq xmm2, rax
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x14 // vcvttss2si rax, dword [rdx + 4*rdi + 20]
LONG $0x6ef9e1c4; BYTE $0xdb // vmovq xmm3, rbx
LONG $0x2cfae1c4; WORD $0xba5c; BYTE $0x10 // vcvttss2si rbx, dword [rdx + 4*rdi + 16]
LONG $0xd26ce1c5 // vpunpcklqdq xmm2, xmm3, xmm2
LONG $0x6ef9e1c4; BYTE $0xd8 // vmovq xmm3, rax
LONG $0x6ef9e1c4; BYTE $0xe3 // vmovq xmm4, rbx
LONG $0xdb6cd9c5 // vpunpcklqdq xmm3, xmm4, xmm3
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x2c // vcvttss2si rax, dword [rdx + 4*rdi + 44]
LONG $0x6ef9e1c4; BYTE $0xe0 // vmovq xmm4, rax
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x28 // vcvttss2si rax, dword [rdx + 4*rdi + 40]
LONG $0x6ef9e1c4; BYTE $0xe8 // vmovq xmm5, rax
LONG $0xe46cd1c5 // vpunpcklqdq xmm4, xmm5, xmm4
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x24 // vcvttss2si rax, dword [rdx + 4*rdi + 36]
LONG $0x6ef9e1c4; BYTE $0xe8 // vmovq xmm5, rax
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x20 // vcvttss2si rax, dword [rdx + 4*rdi + 32]
LONG $0x6ef9e1c4; BYTE $0xf0 // vmovq xmm6, rax
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x3c // vcvttss2si rax, dword [rdx + 4*rdi + 60]
LONG $0xed6cc9c5 // vpunpcklqdq xmm5, xmm6, xmm5
LONG $0x2cfae1c4; WORD $0xba5c; BYTE $0x38 // vcvttss2si rbx, dword [rdx + 4*rdi + 56]
LONG $0x6ef9e1c4; BYTE $0xf0 // vmovq xmm6, rax
LONG $0x2cfae1c4; WORD $0xba44; BYTE $0x34 // vcvttss2si rax, dword [rdx + 4*rdi + 52]
LONG $0x6ef9e1c4; BYTE $0xfb // vmovq xmm7, rbx
LONG $0x2cfae1c4; WORD $0xba5c; BYTE $0x30 // vcvttss2si rbx, dword [rdx + 4*rdi + 48]
LONG $0x6ef9e1c4; BYTE $0xc0 // vmovq xmm0, rax
LONG $0xf66cc1c5 // vpunpcklqdq xmm6, xmm7, xmm6
LONG $0x6ef9e1c4; BYTE $0xfb // vmovq xmm7, rbx
LONG $0xc06cc1c5 // vpunpcklqdq xmm0, xmm7, xmm0
LONG $0x4c7ffac5; WORD $0x10f9 // vmovdqu oword [rcx + 8*rdi + 16], xmm1
LONG $0x047f7ac5; BYTE $0xf9 // vmovdqu oword [rcx + 8*rdi], xmm8
LONG $0x5c7ffac5; WORD $0x20f9 // vmovdqu oword [rcx + 8*rdi + 32], xmm3
LONG $0x547ffac5; WORD $0x30f9 // vmovdqu oword [rcx + 8*rdi + 48], xmm2
LONG $0x6c7ffac5; WORD $0x40f9 // vmovdqu oword [rcx + 8*rdi + 64], xmm5
LONG $0x647ffac5; WORD $0x50f9 // vmovdqu oword [rcx + 8*rdi + 80], xmm4
LONG $0x447ffac5; WORD $0x60f9 // vmovdqu oword [rcx + 8*rdi + 96], xmm0
LONG $0x747ffac5; WORD $0x70f9 // vmovdqu oword [rcx + 8*rdi + 112], xmm6
LBB0_1143:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
LBB0_1144:
LONG $0x2cfae1c4; WORD $0xb204 // vcvttss2si 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_1144
LBB0_1553:
VZEROUPPER
RET
LBB0_1145:
LONG $0xfce78348 // and rdi, -4
WORD $0xf748; BYTE $0xdf // neg rdi
WORD $0xc031 // xor eax, eax
LBB0_1146:
LONG $0x0410fcc5; BYTE $0x42 // vmovups ymm0, yword [rdx + 2*rax]
LONG $0x4c10fcc5; WORD $0x2042 // vmovups ymm1, yword [rdx + 2*rax + 32]
LONG $0x0411fcc5; BYTE $0x41 // vmovups yword [rcx + 2*rax], ymm0
LONG $0x4c11fcc5; WORD $0x2041 // vmovups yword [rcx + 2*rax + 32], ymm1
LONG $0x4410fcc5; WORD $0x4042 // vmovups ymm0, yword [rdx + 2*rax + 64]
LONG $0x4c10fcc5; WORD $0x6042 // vmovups ymm1, yword [rdx + 2*rax + 96]
LONG $0x4411fcc5; WORD $0x4041 // vmovups yword [rcx + 2*rax + 64], ymm0
LONG $0x4c11fcc5; WORD $0x6041 // vmovups yword [rcx + 2*rax + 96], ymm1
QUAD $0x000080428410fcc5; BYTE $0x00 // vmovups ymm0, yword [rdx + 2*rax + 128]
QUAD $0x0000a0428c10fcc5; BYTE $0x00 // vmovups ymm1, yword [rdx + 2*rax + 160]
QUAD $0x000080418411fcc5; BYTE $0x00 // vmovups yword [rcx + 2*rax + 128], ymm0
QUAD $0x0000a0418c11fcc5; BYTE $0x00 // vmovups yword [rcx + 2*rax + 160], ymm1
QUAD $0x0000c0428410fdc5; BYTE $0x00 // vmovupd ymm0, yword [rdx + 2*rax + 192]
QUAD $0x0000e0428c10fdc5; BYTE $0x00 // vmovupd ymm1, yword [rdx + 2*rax + 224]
QUAD $0x0000c0418411fdc5; BYTE $0x00 // vmovupd yword [rcx + 2*rax + 192], ymm0
QUAD $0x0000e0418c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 2*rax + 224], ymm1
LONG $0x80e88348 // sub rax, -128
LONG $0x04c78348 // add rdi, 4
JNE LBB0_1146
LBB0_1147:
WORD $0x854d; BYTE $0xc0 // test r8, r8
JE LBB0_1150
WORD $0x0148; BYTE $0xc0 // add rax, rax
LONG $0x20c08348 // add rax, 32
WORD $0xf749; BYTE $0xd8 // neg r8
LBB0_1149:
LONG $0x4410fdc5; WORD $0xe002 // vmovupd ymm0, yword [rdx + rax - 32]
LONG $0x0c10fdc5; BYTE $0x02 // vmovupd ymm1, yword [rdx + rax]
LONG $0x4411fdc5; WORD $0xe001 // vmovupd yword [rcx + rax - 32], ymm0
LONG $0x0c11fdc5; BYTE $0x01 // vmovupd yword [rcx + rax], ymm1
LONG $0x40c08348 // add rax, 64
WORD $0xff49; BYTE $0xc0 // inc r8
JNE LBB0_1149
LBB0_1150:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1151
LBB0_1155:
LONG $0xfce78348 // and rdi, -4
WORD $0xf748; BYTE $0xdf // neg rdi
WORD $0xc031 // xor eax, eax
LBB0_1156:
LONG $0x0410fcc5; BYTE $0x42 // vmovups ymm0, yword [rdx + 2*rax]
LONG $0x4c10fcc5; WORD $0x2042 // vmovups ymm1, yword [rdx + 2*rax + 32]
LONG $0x0411fcc5; BYTE $0x41 // vmovups yword [rcx + 2*rax], ymm0
LONG $0x4c11fcc5; WORD $0x2041 // vmovups yword [rcx + 2*rax + 32], ymm1
LONG $0x4410fcc5; WORD $0x4042 // vmovups ymm0, yword [rdx + 2*rax + 64]
LONG $0x4c10fcc5; WORD $0x6042 // vmovups ymm1, yword [rdx + 2*rax + 96]
LONG $0x4411fcc5; WORD $0x4041 // vmovups yword [rcx + 2*rax + 64], ymm0
LONG $0x4c11fcc5; WORD $0x6041 // vmovups yword [rcx + 2*rax + 96], ymm1
QUAD $0x000080428410fcc5; BYTE $0x00 // vmovups ymm0, yword [rdx + 2*rax + 128]
QUAD $0x0000a0428c10fcc5; BYTE $0x00 // vmovups ymm1, yword [rdx + 2*rax + 160]
QUAD $0x000080418411fcc5; BYTE $0x00 // vmovups yword [rcx + 2*rax + 128], ymm0
QUAD $0x0000a0418c11fcc5; BYTE $0x00 // vmovups yword [rcx + 2*rax + 160], ymm1
QUAD $0x0000c0428410fdc5; BYTE $0x00 // vmovupd ymm0, yword [rdx + 2*rax + 192]
QUAD $0x0000e0428c10fdc5; BYTE $0x00 // vmovupd ymm1, yword [rdx + 2*rax + 224]
QUAD $0x0000c0418411fdc5; BYTE $0x00 // vmovupd yword [rcx + 2*rax + 192], ymm0
QUAD $0x0000e0418c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 2*rax + 224], ymm1
LONG $0x80e88348 // sub rax, -128
LONG $0x04c78348 // add rdi, 4
JNE LBB0_1156
LBB0_1157:
WORD $0x854d; BYTE $0xc0 // test r8, r8
JE LBB0_1160
WORD $0x0148; BYTE $0xc0 // add rax, rax
LONG $0x20c08348 // add rax, 32
WORD $0xf749; BYTE $0xd8 // neg r8
LBB0_1159:
LONG $0x4410fdc5; WORD $0xe002 // vmovupd ymm0, yword [rdx + rax - 32]
LONG $0x0c10fdc5; BYTE $0x02 // vmovupd ymm1, yword [rdx + rax]
LONG $0x4411fdc5; WORD $0xe001 // vmovupd yword [rcx + rax - 32], ymm0
LONG $0x0c11fdc5; BYTE $0x01 // vmovupd yword [rcx + rax], ymm1
LONG $0x40c08348 // add rax, 64
WORD $0xff49; BYTE $0xc0 // inc r8
JNE LBB0_1159
LBB0_1160:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1161
LBB0_1165:
LONG $0xfce78348 // and rdi, -4
WORD $0xf748; BYTE $0xdf // neg rdi
WORD $0xc031 // xor eax, eax
LBB0_1166:
LONG $0x0410fcc5; BYTE $0x42 // vmovups ymm0, yword [rdx + 2*rax]
LONG $0x4c10fcc5; WORD $0x2042 // vmovups ymm1, yword [rdx + 2*rax + 32]
LONG $0x0411fcc5; BYTE $0x41 // vmovups yword [rcx + 2*rax], ymm0
LONG $0x4c11fcc5; WORD $0x2041 // vmovups yword [rcx + 2*rax + 32], ymm1
LONG $0x4410fcc5; WORD $0x4042 // vmovups ymm0, yword [rdx + 2*rax + 64]
LONG $0x4c10fcc5; WORD $0x6042 // vmovups ymm1, yword [rdx + 2*rax + 96]
LONG $0x4411fcc5; WORD $0x4041 // vmovups yword [rcx + 2*rax + 64], ymm0
LONG $0x4c11fcc5; WORD $0x6041 // vmovups yword [rcx + 2*rax + 96], ymm1
QUAD $0x000080428410fcc5; BYTE $0x00 // vmovups ymm0, yword [rdx + 2*rax + 128]
QUAD $0x0000a0428c10fcc5; BYTE $0x00 // vmovups ymm1, yword [rdx + 2*rax + 160]
QUAD $0x000080418411fcc5; BYTE $0x00 // vmovups yword [rcx + 2*rax + 128], ymm0
QUAD $0x0000a0418c11fcc5; BYTE $0x00 // vmovups yword [rcx + 2*rax + 160], ymm1
QUAD $0x0000c0428410fdc5; BYTE $0x00 // vmovupd ymm0, yword [rdx + 2*rax + 192]
QUAD $0x0000e0428c10fdc5; BYTE $0x00 // vmovupd ymm1, yword [rdx + 2*rax + 224]
QUAD $0x0000c0418411fdc5; BYTE $0x00 // vmovupd yword [rcx + 2*rax + 192], ymm0
QUAD $0x0000e0418c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 2*rax + 224], ymm1
LONG $0x80e88348 // sub rax, -128
LONG $0x04c78348 // add rdi, 4
JNE LBB0_1166
LBB0_1167:
WORD $0x854d; BYTE $0xc0 // test r8, r8
JE LBB0_1170
WORD $0x0148; BYTE $0xc0 // add rax, rax
LONG $0x20c08348 // add rax, 32
WORD $0xf749; BYTE $0xd8 // neg r8
LBB0_1169:
LONG $0x4410fdc5; WORD $0xe002 // vmovupd ymm0, yword [rdx + rax - 32]
LONG $0x0c10fdc5; BYTE $0x02 // vmovupd ymm1, yword [rdx + rax]
LONG $0x4411fdc5; WORD $0xe001 // vmovupd yword [rcx + rax - 32], ymm0
LONG $0x0c11fdc5; BYTE $0x01 // vmovupd yword [rcx + rax], ymm1
LONG $0x40c08348 // add rax, 64
WORD $0xff49; BYTE $0xc0 // inc r8
JNE LBB0_1169
LBB0_1170:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1171
LBB0_1175:
LONG $0xfce78348 // and rdi, -4
WORD $0xf748; BYTE $0xdf // neg rdi
WORD $0xc031 // xor eax, eax
LBB0_1176:
LONG $0x0410fcc5; BYTE $0x42 // vmovups ymm0, yword [rdx + 2*rax]
LONG $0x4c10fcc5; WORD $0x2042 // vmovups ymm1, yword [rdx + 2*rax + 32]
LONG $0x0411fcc5; BYTE $0x41 // vmovups yword [rcx + 2*rax], ymm0
LONG $0x4c11fcc5; WORD $0x2041 // vmovups yword [rcx + 2*rax + 32], ymm1
LONG $0x4410fcc5; WORD $0x4042 // vmovups ymm0, yword [rdx + 2*rax + 64]
LONG $0x4c10fcc5; WORD $0x6042 // vmovups ymm1, yword [rdx + 2*rax + 96]
LONG $0x4411fcc5; WORD $0x4041 // vmovups yword [rcx + 2*rax + 64], ymm0
LONG $0x4c11fcc5; WORD $0x6041 // vmovups yword [rcx + 2*rax + 96], ymm1
QUAD $0x000080428410fcc5; BYTE $0x00 // vmovups ymm0, yword [rdx + 2*rax + 128]
QUAD $0x0000a0428c10fcc5; BYTE $0x00 // vmovups ymm1, yword [rdx + 2*rax + 160]
QUAD $0x000080418411fcc5; BYTE $0x00 // vmovups yword [rcx + 2*rax + 128], ymm0
QUAD $0x0000a0418c11fcc5; BYTE $0x00 // vmovups yword [rcx + 2*rax + 160], ymm1
QUAD $0x0000c0428410fdc5; BYTE $0x00 // vmovupd ymm0, yword [rdx + 2*rax + 192]
QUAD $0x0000e0428c10fdc5; BYTE $0x00 // vmovupd ymm1, yword [rdx + 2*rax + 224]
QUAD $0x0000c0418411fdc5; BYTE $0x00 // vmovupd yword [rcx + 2*rax + 192], ymm0
QUAD $0x0000e0418c11fdc5; BYTE $0x00 // vmovupd yword [rcx + 2*rax + 224], ymm1
LONG $0x80e88348 // sub rax, -128
LONG $0x04c78348 // add rdi, 4
JNE LBB0_1176
LBB0_1177:
WORD $0x854d; BYTE $0xc0 // test r8, r8
JE LBB0_1180
WORD $0x0148; BYTE $0xc0 // add rax, rax
LONG $0x20c08348 // add rax, 32
WORD $0xf749; BYTE $0xd8 // neg r8
LBB0_1179:
LONG $0x4410fdc5; WORD $0xe002 // vmovupd ymm0, yword [rdx + rax - 32]
LONG $0x0c10fdc5; BYTE $0x02 // vmovupd ymm1, yword [rdx + rax]
LONG $0x4411fdc5; WORD $0xe001 // vmovupd yword [rcx + rax - 32], ymm0
LONG $0x0c11fdc5; BYTE $0x01 // vmovupd yword [rcx + rax], ymm1
LONG $0x40c08348 // add rax, 64
WORD $0xff49; BYTE $0xc0 // inc r8
JNE LBB0_1179
LBB0_1180:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1181
LBB0_1185:
WORD $0xff31 // xor edi, edi
LBB0_1186:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1188
LONG $0x0410fdc5; BYTE $0xba // vmovupd ymm0, yword [rdx + 4*rdi]
LONG $0x4c10fdc5; WORD $0x20ba // vmovupd ymm1, yword [rdx + 4*rdi + 32]
LONG $0x5410fdc5; WORD $0x40ba // vmovupd ymm2, yword [rdx + 4*rdi + 64]
LONG $0x5c10fdc5; WORD $0x60ba // vmovupd ymm3, yword [rdx + 4*rdi + 96]
LONG $0x0411fdc5; BYTE $0xb9 // vmovupd yword [rcx + 4*rdi], ymm0
LONG $0x4c11fdc5; WORD $0x20b9 // vmovupd yword [rcx + 4*rdi + 32], ymm1
LONG $0x5411fdc5; WORD $0x40b9 // vmovupd yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c11fdc5; WORD $0x60b9 // vmovupd yword [rcx + 4*rdi + 96], ymm3
LBB0_1188:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1189
LBB0_1193:
WORD $0xff31 // xor edi, edi
LBB0_1194:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1196
LONG $0x217de2c4; WORD $0x3a04 // vpmovsxbd ymm0, qword [rdx + rdi]
LONG $0x217de2c4; WORD $0x3a4c; BYTE $0x08 // vpmovsxbd ymm1, qword [rdx + rdi + 8]
LONG $0x217de2c4; WORD $0x3a54; BYTE $0x10 // vpmovsxbd ymm2, qword [rdx + rdi + 16]
LONG $0x217de2c4; WORD $0x3a5c; BYTE $0x18 // vpmovsxbd ymm3, qword [rdx + rdi + 24]
LONG $0x047ffec5; BYTE $0xb9 // vmovdqu yword [rcx + 4*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20b9 // vmovdqu yword [rcx + 4*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40b9 // vmovdqu yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60b9 // vmovdqu yword [rcx + 4*rdi + 96], ymm3
LBB0_1196:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1197
LBB0_1201:
WORD $0xff31 // xor edi, edi
LBB0_1202:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1204
LONG $0x317de2c4; WORD $0x3a04 // vpmovzxbd ymm0, qword [rdx + rdi]
LONG $0x317de2c4; WORD $0x3a4c; BYTE $0x08 // vpmovzxbd ymm1, qword [rdx + rdi + 8]
LONG $0x317de2c4; WORD $0x3a54; BYTE $0x10 // vpmovzxbd ymm2, qword [rdx + rdi + 16]
LONG $0x317de2c4; WORD $0x3a5c; BYTE $0x18 // vpmovzxbd ymm3, qword [rdx + rdi + 24]
LONG $0x047ffec5; BYTE $0xb9 // vmovdqu yword [rcx + 4*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20b9 // vmovdqu yword [rcx + 4*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40b9 // vmovdqu yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60b9 // vmovdqu yword [rcx + 4*rdi + 96], ymm3
LBB0_1204:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1205
LBB0_1209:
WORD $0xff31 // xor edi, edi
LBB0_1210:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1212
LONG $0x0410fdc5; BYTE $0xba // vmovupd ymm0, yword [rdx + 4*rdi]
LONG $0x4c10fdc5; WORD $0x20ba // vmovupd ymm1, yword [rdx + 4*rdi + 32]
LONG $0x5410fdc5; WORD $0x40ba // vmovupd ymm2, yword [rdx + 4*rdi + 64]
LONG $0x5c10fdc5; WORD $0x60ba // vmovupd ymm3, yword [rdx + 4*rdi + 96]
LONG $0x0411fdc5; BYTE $0xb9 // vmovupd yword [rcx + 4*rdi], ymm0
LONG $0x4c11fdc5; WORD $0x20b9 // vmovupd yword [rcx + 4*rdi + 32], ymm1
LONG $0x5411fdc5; WORD $0x40b9 // vmovupd yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c11fdc5; WORD $0x60b9 // vmovupd yword [rcx + 4*rdi + 96], ymm3
LBB0_1212:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1213
LBB0_1217:
WORD $0xff31 // xor edi, edi
LBB0_1218:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1220
LONG $0x0410fdc5; BYTE $0xfa // vmovupd ymm0, yword [rdx + 8*rdi]
LONG $0x4c10fdc5; WORD $0x20fa // vmovupd ymm1, yword [rdx + 8*rdi + 32]
LONG $0x5410fdc5; WORD $0x40fa // vmovupd ymm2, yword [rdx + 8*rdi + 64]
LONG $0x5c10fdc5; WORD $0x60fa // vmovupd ymm3, yword [rdx + 8*rdi + 96]
LONG $0x0411fdc5; BYTE $0xf9 // vmovupd yword [rcx + 8*rdi], ymm0
LONG $0x4c11fdc5; WORD $0x20f9 // vmovupd yword [rcx + 8*rdi + 32], ymm1
LONG $0x5411fdc5; WORD $0x40f9 // vmovupd yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c11fdc5; WORD $0x60f9 // vmovupd yword [rcx + 8*rdi + 96], ymm3
LBB0_1220:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1221
LBB0_1225:
WORD $0xff31 // xor edi, edi
LBB0_1226:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1228
LONG $0x2179e2c4; WORD $0x3a04 // vpmovsxbd xmm0, dword [rdx + rdi]
LONG $0x2179e2c4; WORD $0x3a4c; BYTE $0x04 // vpmovsxbd xmm1, dword [rdx + rdi + 4]
LONG $0x2179e2c4; WORD $0x3a54; BYTE $0x08 // vpmovsxbd xmm2, dword [rdx + rdi + 8]
LONG $0x2179e2c4; WORD $0x3a5c; BYTE $0x0c // vpmovsxbd xmm3, dword [rdx + rdi + 12]
LONG $0xc0e6fec5 // vcvtdq2pd ymm0, xmm0
LONG $0xc9e6fec5 // vcvtdq2pd ymm1, xmm1
LONG $0xd2e6fec5 // vcvtdq2pd ymm2, xmm2
LONG $0xdbe6fec5 // vcvtdq2pd ymm3, xmm3
LONG $0x0411fdc5; BYTE $0xf9 // vmovupd yword [rcx + 8*rdi], ymm0
LONG $0x4c11fdc5; WORD $0x20f9 // vmovupd yword [rcx + 8*rdi + 32], ymm1
LONG $0x5411fdc5; WORD $0x40f9 // vmovupd yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c11fdc5; WORD $0x60f9 // vmovupd yword [rcx + 8*rdi + 96], ymm3
LBB0_1228:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1229
LBB0_1233:
WORD $0xff31 // xor edi, edi
LBB0_1234:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1236
LONG $0x3179e2c4; WORD $0x3a04 // vpmovzxbd xmm0, dword [rdx + rdi]
LONG $0x3179e2c4; WORD $0x3a4c; BYTE $0x04 // vpmovzxbd xmm1, dword [rdx + rdi + 4]
LONG $0x3179e2c4; WORD $0x3a54; BYTE $0x08 // vpmovzxbd xmm2, dword [rdx + rdi + 8]
LONG $0x3179e2c4; WORD $0x3a5c; BYTE $0x0c // vpmovzxbd xmm3, dword [rdx + rdi + 12]
LONG $0xc0e6fec5 // vcvtdq2pd ymm0, xmm0
LONG $0xc9e6fec5 // vcvtdq2pd ymm1, xmm1
LONG $0xd2e6fec5 // vcvtdq2pd ymm2, xmm2
LONG $0xdbe6fec5 // vcvtdq2pd ymm3, xmm3
LONG $0x0411fdc5; BYTE $0xf9 // vmovupd yword [rcx + 8*rdi], ymm0
LONG $0x4c11fdc5; WORD $0x20f9 // vmovupd yword [rcx + 8*rdi + 32], ymm1
LONG $0x5411fdc5; WORD $0x40f9 // vmovupd yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c11fdc5; WORD $0x60f9 // vmovupd yword [rcx + 8*rdi + 96], ymm3
LBB0_1236:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1237
LBB0_1241:
WORD $0xff31 // xor edi, edi
LBB0_1242:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1244
LONG $0x456ff9c5; BYTE $0x70 // vmovdqa xmm0, oword 112[rbp] /* [rip + .LCPI0_12] */
LONG $0x0c6ffac5; BYTE $0xba // vmovdqu xmm1, oword [rdx + 4*rdi]
LONG $0x546ffac5; WORD $0x10ba // vmovdqu xmm2, oword [rdx + 4*rdi + 16]
LONG $0x5c6ffac5; WORD $0x20ba // vmovdqu xmm3, oword [rdx + 4*rdi + 32]
LONG $0x646ffac5; WORD $0x30ba // vmovdqu xmm4, oword [rdx + 4*rdi + 48]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
LONG $0x0071e2c4; BYTE $0xc8 // vpshufb xmm1, xmm1, xmm0
LONG $0xca62f1c5 // vpunpckldq xmm1, xmm1, xmm2
LONG $0x0059e2c4; BYTE $0xd0 // vpshufb xmm2, xmm4, xmm0
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd262e1c5 // vpunpckldq xmm2, xmm3, xmm2
LONG $0x5c6ffac5; WORD $0x50ba // vmovdqu xmm3, oword [rdx + 4*rdi + 80]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0x646ffac5; WORD $0x40ba // vmovdqu xmm4, oword [rdx + 4*rdi + 64]
LONG $0x0059e2c4; BYTE $0xe0 // vpshufb xmm4, xmm4, xmm0
LONG $0xdb62d9c5 // vpunpckldq xmm3, xmm4, xmm3
LONG $0x646ffac5; WORD $0x70ba // vmovdqu xmm4, oword [rdx + 4*rdi + 112]
LONG $0x0059e2c4; BYTE $0xe0 // vpshufb xmm4, xmm4, xmm0
LONG $0x6c6ffac5; WORD $0x60ba // vmovdqu xmm5, oword [rdx + 4*rdi + 96]
LONG $0x0051e2c4; BYTE $0xc0 // vpshufb xmm0, xmm5, xmm0
LONG $0xc462f9c5 // vpunpckldq xmm0, xmm0, xmm4
LONG $0x3865e3c4; WORD $0x01c0 // vinserti128 ymm0, ymm3, xmm0, 1
LONG $0x3875e3c4; WORD $0x01ca // vinserti128 ymm1, ymm1, xmm2, 1
LONG $0xc06cf5c5 // vpunpcklqdq ymm0, ymm1, ymm0
LONG $0x00fde3c4; WORD $0xd8c0 // vpermq ymm0, ymm0, 216
LONG $0x047ffec5; BYTE $0x39 // vmovdqu yword [rcx + rdi], ymm0
LBB0_1244:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1245
LBB0_1249:
WORD $0xff31 // xor edi, edi
LBB0_1250:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1252
LONG $0x04e6fdc5; BYTE $0xfa // vcvttpd2dq xmm0, yword [rdx + 8*rdi]
LONG $0xc06bf9c5 // vpackssdw xmm0, xmm0, xmm0
LONG $0xc063f9c5 // vpacksswb xmm0, xmm0, xmm0
LONG $0x4ce6fdc5; WORD $0x20fa // vcvttpd2dq xmm1, yword [rdx + 8*rdi + 32]
LONG $0xc96bf1c5 // vpackssdw xmm1, xmm1, xmm1
LONG $0x54e6fdc5; WORD $0x40fa // vcvttpd2dq xmm2, yword [rdx + 8*rdi + 64]
LONG $0xc963f1c5 // vpacksswb xmm1, xmm1, xmm1
LONG $0xc162f9c5 // vpunpckldq xmm0, xmm0, xmm1
LONG $0xca6be9c5 // vpackssdw xmm1, xmm2, xmm2
LONG $0xc963f1c5 // vpacksswb xmm1, xmm1, xmm1
LONG $0x54e6fdc5; WORD $0x60fa // vcvttpd2dq xmm2, yword [rdx + 8*rdi + 96]
LONG $0xd26be9c5 // vpackssdw xmm2, xmm2, xmm2
LONG $0xd263e9c5 // vpacksswb xmm2, xmm2, xmm2
LONG $0xca62f1c5 // vpunpckldq xmm1, xmm1, xmm2
LONG $0xc16cf9c5 // vpunpcklqdq xmm0, xmm0, xmm1
LONG $0x047ffac5; BYTE $0x39 // vmovdqu oword [rcx + rdi], xmm0
LBB0_1252:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1253
LBB0_1257:
WORD $0xff31 // xor edi, edi
LBB0_1258:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1260
LONG $0x0410fdc5; BYTE $0x3a // vmovupd ymm0, yword [rdx + rdi]
LONG $0x4c10fdc5; WORD $0x203a // vmovupd ymm1, yword [rdx + rdi + 32]
LONG $0x5410fdc5; WORD $0x403a // vmovupd ymm2, yword [rdx + rdi + 64]
LONG $0x5c10fdc5; WORD $0x603a // vmovupd ymm3, yword [rdx + rdi + 96]
LONG $0x0411fdc5; BYTE $0x39 // vmovupd yword [rcx + rdi], ymm0
LONG $0x4c11fdc5; WORD $0x2039 // vmovupd yword [rcx + rdi + 32], ymm1
LONG $0x5411fdc5; WORD $0x4039 // vmovupd yword [rcx + rdi + 64], ymm2
LONG $0x5c11fdc5; WORD $0x6039 // vmovupd yword [rcx + rdi + 96], ymm3
LBB0_1260:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1261
LBB0_1265:
WORD $0xff31 // xor edi, edi
LBB0_1266:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1268
LONG $0x456ff9c5; BYTE $0x40 // vmovdqa xmm0, oword 64[rbp] /* [rip + .LCPI0_4] */
LONG $0x0c6ffac5; BYTE $0xfa // vmovdqu xmm1, oword [rdx + 8*rdi]
LONG $0x546ffac5; WORD $0x10fa // vmovdqu xmm2, oword [rdx + 8*rdi + 16]
LONG $0x5c6ffac5; WORD $0x20fa // vmovdqu xmm3, oword [rdx + 8*rdi + 32]
LONG $0x646ffac5; WORD $0x30fa // vmovdqu xmm4, oword [rdx + 8*rdi + 48]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
LONG $0x0071e2c4; BYTE $0xc8 // vpshufb xmm1, xmm1, xmm0
LONG $0xca61f1c5 // vpunpcklwd xmm1, xmm1, xmm2
LONG $0x0059e2c4; BYTE $0xd0 // vpshufb xmm2, xmm4, xmm0
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd261e1c5 // vpunpcklwd xmm2, xmm3, xmm2
LONG $0xca62f1c5 // vpunpckldq xmm1, xmm1, xmm2
LONG $0x546ffac5; WORD $0x50fa // vmovdqu xmm2, oword [rdx + 8*rdi + 80]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
LONG $0x5c6ffac5; WORD $0x40fa // vmovdqu xmm3, oword [rdx + 8*rdi + 64]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd261e1c5 // vpunpcklwd xmm2, xmm3, xmm2
LONG $0x5c6ffac5; WORD $0x70fa // vmovdqu xmm3, oword [rdx + 8*rdi + 112]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0x646ffac5; WORD $0x60fa // vmovdqu xmm4, oword [rdx + 8*rdi + 96]
LONG $0x0059e2c4; BYTE $0xc0 // vpshufb xmm0, xmm4, xmm0
LONG $0xc361f9c5 // vpunpcklwd xmm0, xmm0, xmm3
LONG $0xc062e9c5 // vpunpckldq xmm0, xmm2, xmm0
LONG $0xc06cf1c5 // vpunpcklqdq xmm0, xmm1, xmm0
LONG $0x047ffac5; BYTE $0x39 // vmovdqu oword [rcx + rdi], xmm0
LBB0_1268:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1269
LBB0_1273:
WORD $0xff31 // xor edi, edi
LBB0_1274:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1276
QUAD $0x000000a0856ffdc5 // vmovdqa ymm0, yword 160[rbp] /* [rip + .LCPI0_16] */
LONG $0x0cdbfdc5; BYTE $0x7a // vpand ymm1, ymm0, yword [rdx + 2*rdi]
LONG $0x397de3c4; WORD $0x01ca // vextracti128 xmm2, ymm1, 1
LONG $0xca67f1c5 // vpackuswb xmm1, xmm1, xmm2
LONG $0x54dbfdc5; WORD $0x207a // vpand ymm2, ymm0, yword [rdx + 2*rdi + 32]
LONG $0x397de3c4; WORD $0x01d3 // vextracti128 xmm3, ymm2, 1
LONG $0xd367e9c5 // vpackuswb xmm2, xmm2, xmm3
LONG $0x5cdbfdc5; WORD $0x407a // vpand ymm3, ymm0, yword [rdx + 2*rdi + 64]
LONG $0x397de3c4; WORD $0x01dc // vextracti128 xmm4, ymm3, 1
LONG $0xdc67e1c5 // vpackuswb xmm3, xmm3, xmm4
LONG $0x44dbfdc5; WORD $0x607a // vpand ymm0, ymm0, yword [rdx + 2*rdi + 96]
LONG $0x397de3c4; WORD $0x01c4 // vextracti128 xmm4, ymm0, 1
LONG $0xc467f9c5 // vpackuswb xmm0, xmm0, xmm4
LONG $0x0c7ffac5; BYTE $0x39 // vmovdqu oword [rcx + rdi], xmm1
LONG $0x547ffac5; WORD $0x1039 // vmovdqu oword [rcx + rdi + 16], xmm2
LONG $0x5c7ffac5; WORD $0x2039 // vmovdqu oword [rcx + rdi + 32], xmm3
LONG $0x447ffac5; WORD $0x3039 // vmovdqu oword [rcx + rdi + 48], xmm0
LBB0_1276:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1277
LBB0_1281:
WORD $0xff31 // xor edi, edi
LBB0_1282:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1284
QUAD $0x000000a0856ffdc5 // vmovdqa ymm0, yword 160[rbp] /* [rip + .LCPI0_16] */
LONG $0x0cdbfdc5; BYTE $0x7a // vpand ymm1, ymm0, yword [rdx + 2*rdi]
LONG $0x397de3c4; WORD $0x01ca // vextracti128 xmm2, ymm1, 1
LONG $0xca67f1c5 // vpackuswb xmm1, xmm1, xmm2
LONG $0x54dbfdc5; WORD $0x207a // vpand ymm2, ymm0, yword [rdx + 2*rdi + 32]
LONG $0x397de3c4; WORD $0x01d3 // vextracti128 xmm3, ymm2, 1
LONG $0xd367e9c5 // vpackuswb xmm2, xmm2, xmm3
LONG $0x5cdbfdc5; WORD $0x407a // vpand ymm3, ymm0, yword [rdx + 2*rdi + 64]
LONG $0x397de3c4; WORD $0x01dc // vextracti128 xmm4, ymm3, 1
LONG $0xdc67e1c5 // vpackuswb xmm3, xmm3, xmm4
LONG $0x44dbfdc5; WORD $0x607a // vpand ymm0, ymm0, yword [rdx + 2*rdi + 96]
LONG $0x397de3c4; WORD $0x01c4 // vextracti128 xmm4, ymm0, 1
LONG $0xc467f9c5 // vpackuswb xmm0, xmm0, xmm4
LONG $0x0c7ffac5; BYTE $0x39 // vmovdqu oword [rcx + rdi], xmm1
LONG $0x547ffac5; WORD $0x1039 // vmovdqu oword [rcx + rdi + 16], xmm2
LONG $0x5c7ffac5; WORD $0x2039 // vmovdqu oword [rcx + rdi + 32], xmm3
LONG $0x447ffac5; WORD $0x3039 // vmovdqu oword [rcx + rdi + 48], xmm0
LBB0_1284:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1285
LBB0_1289:
WORD $0xff31 // xor edi, edi
LBB0_1290:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1292
LONG $0x456ff9c5; BYTE $0x40 // vmovdqa xmm0, oword 64[rbp] /* [rip + .LCPI0_4] */
LONG $0x0c6ffac5; BYTE $0xfa // vmovdqu xmm1, oword [rdx + 8*rdi]
LONG $0x546ffac5; WORD $0x10fa // vmovdqu xmm2, oword [rdx + 8*rdi + 16]
LONG $0x5c6ffac5; WORD $0x20fa // vmovdqu xmm3, oword [rdx + 8*rdi + 32]
LONG $0x646ffac5; WORD $0x30fa // vmovdqu xmm4, oword [rdx + 8*rdi + 48]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
LONG $0x0071e2c4; BYTE $0xc8 // vpshufb xmm1, xmm1, xmm0
LONG $0xca61f1c5 // vpunpcklwd xmm1, xmm1, xmm2
LONG $0x0059e2c4; BYTE $0xd0 // vpshufb xmm2, xmm4, xmm0
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd261e1c5 // vpunpcklwd xmm2, xmm3, xmm2
LONG $0xca62f1c5 // vpunpckldq xmm1, xmm1, xmm2
LONG $0x546ffac5; WORD $0x50fa // vmovdqu xmm2, oword [rdx + 8*rdi + 80]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
LONG $0x5c6ffac5; WORD $0x40fa // vmovdqu xmm3, oword [rdx + 8*rdi + 64]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd261e1c5 // vpunpcklwd xmm2, xmm3, xmm2
LONG $0x5c6ffac5; WORD $0x70fa // vmovdqu xmm3, oword [rdx + 8*rdi + 112]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0x646ffac5; WORD $0x60fa // vmovdqu xmm4, oword [rdx + 8*rdi + 96]
LONG $0x0059e2c4; BYTE $0xc0 // vpshufb xmm0, xmm4, xmm0
LONG $0xc361f9c5 // vpunpcklwd xmm0, xmm0, xmm3
LONG $0xc062e9c5 // vpunpckldq xmm0, xmm2, xmm0
LONG $0xc06cf1c5 // vpunpcklqdq xmm0, xmm1, xmm0
LONG $0x047ffac5; BYTE $0x39 // vmovdqu oword [rcx + rdi], xmm0
LBB0_1292:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1293
LBB0_1297:
WORD $0xff31 // xor edi, edi
LBB0_1298:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1300
LONG $0x045bfec5; BYTE $0xba // vcvttps2dq ymm0, yword [rdx + 4*rdi]
LONG $0x397de3c4; WORD $0x01c1 // vextracti128 xmm1, ymm0, 1
LONG $0xc16bf9c5 // vpackssdw xmm0, xmm0, xmm1
LONG $0x4c5bfec5; WORD $0x20ba // vcvttps2dq ymm1, yword [rdx + 4*rdi + 32]
LONG $0x397de3c4; WORD $0x01ca // vextracti128 xmm2, ymm1, 1
LONG $0xca6bf1c5 // vpackssdw xmm1, xmm1, xmm2
LONG $0x545bfec5; WORD $0x40ba // vcvttps2dq ymm2, yword [rdx + 4*rdi + 64]
LONG $0x397de3c4; WORD $0x01d3 // vextracti128 xmm3, ymm2, 1
LONG $0xd36be9c5 // vpackssdw xmm2, xmm2, xmm3
LONG $0x5c5bfec5; WORD $0x60ba // vcvttps2dq ymm3, yword [rdx + 4*rdi + 96]
LONG $0x397de3c4; WORD $0x01dc // vextracti128 xmm4, ymm3, 1
LONG $0xdc6be1c5 // vpackssdw xmm3, xmm3, xmm4
LONG $0x386de3c4; WORD $0x01d3 // vinserti128 ymm2, ymm2, xmm3, 1
LONG $0xd063edc5 // vpacksswb ymm2, ymm2, ymm0
LONG $0x387de3c4; WORD $0x01c1 // vinserti128 ymm0, ymm0, xmm1, 1
LONG $0xc063fdc5 // vpacksswb ymm0, ymm0, ymm0
LONG $0xc26cfdc5 // vpunpcklqdq ymm0, ymm0, ymm2
LONG $0x00fde3c4; WORD $0xd8c0 // vpermq ymm0, ymm0, 216
LONG $0x047ffec5; BYTE $0x39 // vmovdqu yword [rcx + rdi], ymm0
LBB0_1300:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1301
LBB0_1305:
WORD $0xff31 // xor edi, edi
LBB0_1306:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1308
LONG $0x0410fdc5; BYTE $0x3a // vmovupd ymm0, yword [rdx + rdi]
LONG $0x4c10fdc5; WORD $0x203a // vmovupd ymm1, yword [rdx + rdi + 32]
LONG $0x5410fdc5; WORD $0x403a // vmovupd ymm2, yword [rdx + rdi + 64]
LONG $0x5c10fdc5; WORD $0x603a // vmovupd ymm3, yword [rdx + rdi + 96]
LONG $0x0411fdc5; BYTE $0x39 // vmovupd yword [rcx + rdi], ymm0
LONG $0x4c11fdc5; WORD $0x2039 // vmovupd yword [rcx + rdi + 32], ymm1
LONG $0x5411fdc5; WORD $0x4039 // vmovupd yword [rcx + rdi + 64], ymm2
LONG $0x5c11fdc5; WORD $0x6039 // vmovupd yword [rcx + rdi + 96], ymm3
LBB0_1308:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1309
LBB0_1313:
WORD $0xff31 // xor edi, edi
LBB0_1314:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1316
LONG $0x456ff9c5; BYTE $0x70 // vmovdqa xmm0, oword 112[rbp] /* [rip + .LCPI0_12] */
LONG $0x0c6ffac5; BYTE $0xba // vmovdqu xmm1, oword [rdx + 4*rdi]
LONG $0x546ffac5; WORD $0x10ba // vmovdqu xmm2, oword [rdx + 4*rdi + 16]
LONG $0x5c6ffac5; WORD $0x20ba // vmovdqu xmm3, oword [rdx + 4*rdi + 32]
LONG $0x646ffac5; WORD $0x30ba // vmovdqu xmm4, oword [rdx + 4*rdi + 48]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
LONG $0x0071e2c4; BYTE $0xc8 // vpshufb xmm1, xmm1, xmm0
LONG $0xca62f1c5 // vpunpckldq xmm1, xmm1, xmm2
LONG $0x0059e2c4; BYTE $0xd0 // vpshufb xmm2, xmm4, xmm0
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd262e1c5 // vpunpckldq xmm2, xmm3, xmm2
LONG $0x5c6ffac5; WORD $0x50ba // vmovdqu xmm3, oword [rdx + 4*rdi + 80]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0x646ffac5; WORD $0x40ba // vmovdqu xmm4, oword [rdx + 4*rdi + 64]
LONG $0x0059e2c4; BYTE $0xe0 // vpshufb xmm4, xmm4, xmm0
LONG $0xdb62d9c5 // vpunpckldq xmm3, xmm4, xmm3
LONG $0x646ffac5; WORD $0x70ba // vmovdqu xmm4, oword [rdx + 4*rdi + 112]
LONG $0x0059e2c4; BYTE $0xe0 // vpshufb xmm4, xmm4, xmm0
LONG $0x6c6ffac5; WORD $0x60ba // vmovdqu xmm5, oword [rdx + 4*rdi + 96]
LONG $0x0051e2c4; BYTE $0xc0 // vpshufb xmm0, xmm5, xmm0
LONG $0xc462f9c5 // vpunpckldq xmm0, xmm0, xmm4
LONG $0x3865e3c4; WORD $0x01c0 // vinserti128 ymm0, ymm3, xmm0, 1
LONG $0x3875e3c4; WORD $0x01ca // vinserti128 ymm1, ymm1, xmm2, 1
LONG $0xc06cf5c5 // vpunpcklqdq ymm0, ymm1, ymm0
LONG $0x00fde3c4; WORD $0xd8c0 // vpermq ymm0, ymm0, 216
LONG $0x047ffec5; BYTE $0x39 // vmovdqu yword [rcx + rdi], ymm0
LBB0_1316:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1317
LBB0_1321:
WORD $0xff31 // xor edi, edi
LBB0_1322:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1324
LONG $0x227de2c4; WORD $0x3a04 // vpmovsxbq ymm0, dword [rdx + rdi]
LONG $0x227de2c4; WORD $0x3a4c; BYTE $0x04 // vpmovsxbq ymm1, dword [rdx + rdi + 4]
LONG $0x227de2c4; WORD $0x3a54; BYTE $0x08 // vpmovsxbq ymm2, dword [rdx + rdi + 8]
LONG $0x227de2c4; WORD $0x3a5c; BYTE $0x0c // vpmovsxbq ymm3, dword [rdx + rdi + 12]
LONG $0x047ffec5; BYTE $0xf9 // vmovdqu yword [rcx + 8*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20f9 // vmovdqu yword [rcx + 8*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40f9 // vmovdqu yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60f9 // vmovdqu yword [rcx + 8*rdi + 96], ymm3
LBB0_1324:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1325
LBB0_1329:
WORD $0xff31 // xor edi, edi
LBB0_1330:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1332
LONG $0x0410fdc5; BYTE $0xfa // vmovupd ymm0, yword [rdx + 8*rdi]
LONG $0x4c10fdc5; WORD $0x20fa // vmovupd ymm1, yword [rdx + 8*rdi + 32]
LONG $0x5410fdc5; WORD $0x40fa // vmovupd ymm2, yword [rdx + 8*rdi + 64]
LONG $0x5c10fdc5; WORD $0x60fa // vmovupd ymm3, yword [rdx + 8*rdi + 96]
LONG $0x0411fdc5; BYTE $0xf9 // vmovupd yword [rcx + 8*rdi], ymm0
LONG $0x4c11fdc5; WORD $0x20f9 // vmovupd yword [rcx + 8*rdi + 32], ymm1
LONG $0x5411fdc5; WORD $0x40f9 // vmovupd yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c11fdc5; WORD $0x60f9 // vmovupd yword [rcx + 8*rdi + 96], ymm3
LBB0_1332:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1333
LBB0_1337:
WORD $0xff31 // xor edi, edi
LBB0_1338:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1340
LONG $0x0410fdc5; BYTE $0xfa // vmovupd ymm0, yword [rdx + 8*rdi]
LONG $0x4c10fdc5; WORD $0x20fa // vmovupd ymm1, yword [rdx + 8*rdi + 32]
LONG $0x5410fdc5; WORD $0x40fa // vmovupd ymm2, yword [rdx + 8*rdi + 64]
LONG $0x5c10fdc5; WORD $0x60fa // vmovupd ymm3, yword [rdx + 8*rdi + 96]
LONG $0x0411fdc5; BYTE $0xf9 // vmovupd yword [rcx + 8*rdi], ymm0
LONG $0x4c11fdc5; WORD $0x20f9 // vmovupd yword [rcx + 8*rdi + 32], ymm1
LONG $0x5411fdc5; WORD $0x40f9 // vmovupd yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c11fdc5; WORD $0x60f9 // vmovupd yword [rcx + 8*rdi + 96], ymm3
LBB0_1340:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1341
LBB0_1345:
WORD $0xff31 // xor edi, edi
LBB0_1346:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1348
LONG $0x327de2c4; WORD $0x3a04 // vpmovzxbq ymm0, dword [rdx + rdi]
LONG $0x327de2c4; WORD $0x3a4c; BYTE $0x04 // vpmovzxbq ymm1, dword [rdx + rdi + 4]
LONG $0x327de2c4; WORD $0x3a54; BYTE $0x08 // vpmovzxbq ymm2, dword [rdx + rdi + 8]
LONG $0x327de2c4; WORD $0x3a5c; BYTE $0x0c // vpmovzxbq ymm3, dword [rdx + rdi + 12]
LONG $0x047ffec5; BYTE $0xf9 // vmovdqu yword [rcx + 8*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20f9 // vmovdqu yword [rcx + 8*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40f9 // vmovdqu yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60f9 // vmovdqu yword [rcx + 8*rdi + 96], ymm3
LBB0_1348:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1349
LBB0_1353:
WORD $0xff31 // xor edi, edi
LBB0_1354:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1356
LONG $0x207de2c4; WORD $0x3a04 // vpmovsxbw ymm0, oword [rdx + rdi]
LONG $0x207de2c4; WORD $0x3a4c; BYTE $0x10 // vpmovsxbw ymm1, oword [rdx + rdi + 16]
LONG $0x207de2c4; WORD $0x3a54; BYTE $0x20 // vpmovsxbw ymm2, oword [rdx + rdi + 32]
LONG $0x207de2c4; WORD $0x3a5c; BYTE $0x30 // vpmovsxbw ymm3, oword [rdx + rdi + 48]
LONG $0x047ffec5; BYTE $0x79 // vmovdqu yword [rcx + 2*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x2079 // vmovdqu yword [rcx + 2*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x4079 // vmovdqu yword [rcx + 2*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x6079 // vmovdqu yword [rcx + 2*rdi + 96], ymm3
LBB0_1356:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1357
LBB0_1361:
WORD $0xff31 // xor edi, edi
LBB0_1362:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1364
LONG $0x207de2c4; WORD $0x3a04 // vpmovsxbw ymm0, oword [rdx + rdi]
LONG $0x207de2c4; WORD $0x3a4c; BYTE $0x10 // vpmovsxbw ymm1, oword [rdx + rdi + 16]
LONG $0x207de2c4; WORD $0x3a54; BYTE $0x20 // vpmovsxbw ymm2, oword [rdx + rdi + 32]
LONG $0x207de2c4; WORD $0x3a5c; BYTE $0x30 // vpmovsxbw ymm3, oword [rdx + rdi + 48]
LONG $0x047ffec5; BYTE $0x79 // vmovdqu yword [rcx + 2*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x2079 // vmovdqu yword [rcx + 2*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x4079 // vmovdqu yword [rcx + 2*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x6079 // vmovdqu yword [rcx + 2*rdi + 96], ymm3
LBB0_1364:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1365
LBB0_1369:
WORD $0xff31 // xor edi, edi
LBB0_1370:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1372
LONG $0x307de2c4; WORD $0x3a04 // vpmovzxbw ymm0, oword [rdx + rdi]
LONG $0x307de2c4; WORD $0x3a4c; BYTE $0x10 // vpmovzxbw ymm1, oword [rdx + rdi + 16]
LONG $0x307de2c4; WORD $0x3a54; BYTE $0x20 // vpmovzxbw ymm2, oword [rdx + rdi + 32]
LONG $0x307de2c4; WORD $0x3a5c; BYTE $0x30 // vpmovzxbw ymm3, oword [rdx + rdi + 48]
LONG $0x047ffec5; BYTE $0x79 // vmovdqu yword [rcx + 2*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x2079 // vmovdqu yword [rcx + 2*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x4079 // vmovdqu yword [rcx + 2*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x6079 // vmovdqu yword [rcx + 2*rdi + 96], ymm3
LBB0_1372:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1373
LBB0_1377:
WORD $0xff31 // xor edi, edi
LBB0_1378:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1380
LONG $0x307de2c4; WORD $0x3a04 // vpmovzxbw ymm0, oword [rdx + rdi]
LONG $0x307de2c4; WORD $0x3a4c; BYTE $0x10 // vpmovzxbw ymm1, oword [rdx + rdi + 16]
LONG $0x307de2c4; WORD $0x3a54; BYTE $0x20 // vpmovzxbw ymm2, oword [rdx + rdi + 32]
LONG $0x307de2c4; WORD $0x3a5c; BYTE $0x30 // vpmovzxbw ymm3, oword [rdx + rdi + 48]
LONG $0x047ffec5; BYTE $0x79 // vmovdqu yword [rcx + 2*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x2079 // vmovdqu yword [rcx + 2*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x4079 // vmovdqu yword [rcx + 2*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x6079 // vmovdqu yword [rcx + 2*rdi + 96], ymm3
LBB0_1380:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1381
LBB0_1385:
WORD $0xff31 // xor edi, edi
LBB0_1386:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1388
LONG $0x227de2c4; WORD $0x3a04 // vpmovsxbq ymm0, dword [rdx + rdi]
LONG $0x227de2c4; WORD $0x3a4c; BYTE $0x04 // vpmovsxbq ymm1, dword [rdx + rdi + 4]
LONG $0x227de2c4; WORD $0x3a54; BYTE $0x08 // vpmovsxbq ymm2, dword [rdx + rdi + 8]
LONG $0x227de2c4; WORD $0x3a5c; BYTE $0x0c // vpmovsxbq ymm3, dword [rdx + rdi + 12]
LONG $0x047ffec5; BYTE $0xf9 // vmovdqu yword [rcx + 8*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20f9 // vmovdqu yword [rcx + 8*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40f9 // vmovdqu yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60f9 // vmovdqu yword [rcx + 8*rdi + 96], ymm3
LBB0_1388:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1389
LBB0_1393:
WORD $0xff31 // xor edi, edi
LBB0_1394:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1396
LONG $0x217de2c4; WORD $0x3a04 // vpmovsxbd ymm0, qword [rdx + rdi]
LONG $0x217de2c4; WORD $0x3a4c; BYTE $0x08 // vpmovsxbd ymm1, qword [rdx + rdi + 8]
LONG $0x217de2c4; WORD $0x3a54; BYTE $0x10 // vpmovsxbd ymm2, qword [rdx + rdi + 16]
LONG $0x217de2c4; WORD $0x3a5c; BYTE $0x18 // vpmovsxbd ymm3, qword [rdx + rdi + 24]
LONG $0xc05bfcc5 // vcvtdq2ps ymm0, ymm0
LONG $0xc95bfcc5 // vcvtdq2ps ymm1, ymm1
LONG $0xd25bfcc5 // vcvtdq2ps ymm2, ymm2
LONG $0xdb5bfcc5 // vcvtdq2ps ymm3, ymm3
LONG $0x0411fcc5; BYTE $0xb9 // vmovups yword [rcx + 4*rdi], ymm0
LONG $0x4c11fcc5; WORD $0x20b9 // vmovups yword [rcx + 4*rdi + 32], ymm1
LONG $0x5411fcc5; WORD $0x40b9 // vmovups yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c11fcc5; WORD $0x60b9 // vmovups yword [rcx + 4*rdi + 96], ymm3
LBB0_1396:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1397
LBB0_1401:
WORD $0xff31 // xor edi, edi
LBB0_1402:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1404
LONG $0x0410fdc5; BYTE $0xfa // vmovupd ymm0, yword [rdx + 8*rdi]
LONG $0x4c10fdc5; WORD $0x20fa // vmovupd ymm1, yword [rdx + 8*rdi + 32]
LONG $0x5410fdc5; WORD $0x40fa // vmovupd ymm2, yword [rdx + 8*rdi + 64]
LONG $0x5c10fdc5; WORD $0x60fa // vmovupd ymm3, yword [rdx + 8*rdi + 96]
LONG $0x0411fdc5; BYTE $0xf9 // vmovupd yword [rcx + 8*rdi], ymm0
LONG $0x4c11fdc5; WORD $0x20f9 // vmovupd yword [rcx + 8*rdi + 32], ymm1
LONG $0x5411fdc5; WORD $0x40f9 // vmovupd yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c11fdc5; WORD $0x60f9 // vmovupd yword [rcx + 8*rdi + 96], ymm3
LBB0_1404:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1405
LBB0_1409:
WORD $0xff31 // xor edi, edi
LBB0_1410:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1412
LONG $0x0410fdc5; BYTE $0xfa // vmovupd ymm0, yword [rdx + 8*rdi]
LONG $0x4c10fdc5; WORD $0x20fa // vmovupd ymm1, yword [rdx + 8*rdi + 32]
LONG $0x5410fdc5; WORD $0x40fa // vmovupd ymm2, yword [rdx + 8*rdi + 64]
LONG $0x5c10fdc5; WORD $0x60fa // vmovupd ymm3, yword [rdx + 8*rdi + 96]
LONG $0x0411fdc5; BYTE $0xf9 // vmovupd yword [rcx + 8*rdi], ymm0
LONG $0x4c11fdc5; WORD $0x20f9 // vmovupd yword [rcx + 8*rdi + 32], ymm1
LONG $0x5411fdc5; WORD $0x40f9 // vmovupd yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c11fdc5; WORD $0x60f9 // vmovupd yword [rcx + 8*rdi + 96], ymm3
LBB0_1412:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1413
LBB0_1417:
WORD $0xff31 // xor edi, edi
LBB0_1418:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1420
LONG $0x0410fdc5; BYTE $0xba // vmovupd ymm0, yword [rdx + 4*rdi]
LONG $0x4c10fdc5; WORD $0x20ba // vmovupd ymm1, yword [rdx + 4*rdi + 32]
LONG $0x5410fdc5; WORD $0x40ba // vmovupd ymm2, yword [rdx + 4*rdi + 64]
LONG $0x5c10fdc5; WORD $0x60ba // vmovupd ymm3, yword [rdx + 4*rdi + 96]
LONG $0x0411fdc5; BYTE $0xb9 // vmovupd yword [rcx + 4*rdi], ymm0
LONG $0x4c11fdc5; WORD $0x20b9 // vmovupd yword [rcx + 4*rdi + 32], ymm1
LONG $0x5411fdc5; WORD $0x40b9 // vmovupd yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c11fdc5; WORD $0x60b9 // vmovupd yword [rcx + 4*rdi + 96], ymm3
LBB0_1420:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1421
LBB0_1425:
WORD $0xff31 // xor edi, edi
LBB0_1426:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1428
LONG $0x327de2c4; WORD $0x3a04 // vpmovzxbq ymm0, dword [rdx + rdi]
LONG $0x327de2c4; WORD $0x3a4c; BYTE $0x04 // vpmovzxbq ymm1, dword [rdx + rdi + 4]
LONG $0x327de2c4; WORD $0x3a54; BYTE $0x08 // vpmovzxbq ymm2, dword [rdx + rdi + 8]
LONG $0x327de2c4; WORD $0x3a5c; BYTE $0x0c // vpmovzxbq ymm3, dword [rdx + rdi + 12]
LONG $0x047ffec5; BYTE $0xf9 // vmovdqu yword [rcx + 8*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20f9 // vmovdqu yword [rcx + 8*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40f9 // vmovdqu yword [rcx + 8*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60f9 // vmovdqu yword [rcx + 8*rdi + 96], ymm3
LBB0_1428:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1429
LBB0_1433:
WORD $0xff31 // xor edi, edi
LBB0_1434:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1436
LONG $0x317de2c4; WORD $0x3a04 // vpmovzxbd ymm0, qword [rdx + rdi]
LONG $0x317de2c4; WORD $0x3a4c; BYTE $0x08 // vpmovzxbd ymm1, qword [rdx + rdi + 8]
LONG $0x317de2c4; WORD $0x3a54; BYTE $0x10 // vpmovzxbd ymm2, qword [rdx + rdi + 16]
LONG $0x317de2c4; WORD $0x3a5c; BYTE $0x18 // vpmovzxbd ymm3, qword [rdx + rdi + 24]
LONG $0xc05bfcc5 // vcvtdq2ps ymm0, ymm0
LONG $0xc95bfcc5 // vcvtdq2ps ymm1, ymm1
LONG $0xd25bfcc5 // vcvtdq2ps ymm2, ymm2
LONG $0xdb5bfcc5 // vcvtdq2ps ymm3, ymm3
LONG $0x0411fcc5; BYTE $0xb9 // vmovups yword [rcx + 4*rdi], ymm0
LONG $0x4c11fcc5; WORD $0x20b9 // vmovups yword [rcx + 4*rdi + 32], ymm1
LONG $0x5411fcc5; WORD $0x40b9 // vmovups yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c11fcc5; WORD $0x60b9 // vmovups yword [rcx + 4*rdi + 96], ymm3
LBB0_1436:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1437
LBB0_1441:
WORD $0xff31 // xor edi, edi
LBB0_1442:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1444
LONG $0x456ff9c5; BYTE $0x70 // vmovdqa xmm0, oword 112[rbp] /* [rip + .LCPI0_12] */
LONG $0x0c6ffac5; BYTE $0xba // vmovdqu xmm1, oword [rdx + 4*rdi]
LONG $0x546ffac5; WORD $0x10ba // vmovdqu xmm2, oword [rdx + 4*rdi + 16]
LONG $0x5c6ffac5; WORD $0x20ba // vmovdqu xmm3, oword [rdx + 4*rdi + 32]
LONG $0x646ffac5; WORD $0x30ba // vmovdqu xmm4, oword [rdx + 4*rdi + 48]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
LONG $0x0071e2c4; BYTE $0xc8 // vpshufb xmm1, xmm1, xmm0
LONG $0xca62f1c5 // vpunpckldq xmm1, xmm1, xmm2
LONG $0x0059e2c4; BYTE $0xd0 // vpshufb xmm2, xmm4, xmm0
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd262e1c5 // vpunpckldq xmm2, xmm3, xmm2
LONG $0x5c6ffac5; WORD $0x50ba // vmovdqu xmm3, oword [rdx + 4*rdi + 80]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0x646ffac5; WORD $0x40ba // vmovdqu xmm4, oword [rdx + 4*rdi + 64]
LONG $0x0059e2c4; BYTE $0xe0 // vpshufb xmm4, xmm4, xmm0
LONG $0xdb62d9c5 // vpunpckldq xmm3, xmm4, xmm3
LONG $0x646ffac5; WORD $0x70ba // vmovdqu xmm4, oword [rdx + 4*rdi + 112]
LONG $0x0059e2c4; BYTE $0xe0 // vpshufb xmm4, xmm4, xmm0
LONG $0x6c6ffac5; WORD $0x60ba // vmovdqu xmm5, oword [rdx + 4*rdi + 96]
LONG $0x0051e2c4; BYTE $0xc0 // vpshufb xmm0, xmm5, xmm0
LONG $0xc462f9c5 // vpunpckldq xmm0, xmm0, xmm4
LONG $0x3865e3c4; WORD $0x01c0 // vinserti128 ymm0, ymm3, xmm0, 1
LONG $0x3875e3c4; WORD $0x01ca // vinserti128 ymm1, ymm1, xmm2, 1
LONG $0xc06cf5c5 // vpunpcklqdq ymm0, ymm1, ymm0
LONG $0x00fde3c4; WORD $0xd8c0 // vpermq ymm0, ymm0, 216
LONG $0x047ffec5; BYTE $0x39 // vmovdqu yword [rcx + rdi], ymm0
LBB0_1444:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1445
LBB0_1449:
WORD $0xff31 // xor edi, edi
LBB0_1450:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1452
LONG $0x04e6fdc5; BYTE $0xfa // vcvttpd2dq xmm0, yword [rdx + 8*rdi]
LONG $0x2b79e2c4; BYTE $0xc0 // vpackusdw xmm0, xmm0, xmm0
LONG $0xc067f9c5 // vpackuswb xmm0, xmm0, xmm0
LONG $0x4ce6fdc5; WORD $0x20fa // vcvttpd2dq xmm1, yword [rdx + 8*rdi + 32]
LONG $0x2b71e2c4; BYTE $0xc9 // vpackusdw xmm1, xmm1, xmm1
LONG $0x54e6fdc5; WORD $0x40fa // vcvttpd2dq xmm2, yword [rdx + 8*rdi + 64]
LONG $0xc967f1c5 // vpackuswb xmm1, xmm1, xmm1
LONG $0xc162f9c5 // vpunpckldq xmm0, xmm0, xmm1
LONG $0x2b69e2c4; BYTE $0xca // vpackusdw xmm1, xmm2, xmm2
LONG $0xc967f1c5 // vpackuswb xmm1, xmm1, xmm1
LONG $0x54e6fdc5; WORD $0x60fa // vcvttpd2dq xmm2, yword [rdx + 8*rdi + 96]
LONG $0x2b69e2c4; BYTE $0xd2 // vpackusdw xmm2, xmm2, xmm2
LONG $0xd267e9c5 // vpackuswb xmm2, xmm2, xmm2
LONG $0xca62f1c5 // vpunpckldq xmm1, xmm1, xmm2
LONG $0xc16cf9c5 // vpunpcklqdq xmm0, xmm0, xmm1
LONG $0x047ffac5; BYTE $0x39 // vmovdqu oword [rcx + rdi], xmm0
LBB0_1452:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1453
LBB0_1457:
WORD $0xff31 // xor edi, edi
LBB0_1458:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1460
LONG $0x0410fdc5; BYTE $0x3a // vmovupd ymm0, yword [rdx + rdi]
LONG $0x4c10fdc5; WORD $0x203a // vmovupd ymm1, yword [rdx + rdi + 32]
LONG $0x5410fdc5; WORD $0x403a // vmovupd ymm2, yword [rdx + rdi + 64]
LONG $0x5c10fdc5; WORD $0x603a // vmovupd ymm3, yword [rdx + rdi + 96]
LONG $0x0411fdc5; BYTE $0x39 // vmovupd yword [rcx + rdi], ymm0
LONG $0x4c11fdc5; WORD $0x2039 // vmovupd yword [rcx + rdi + 32], ymm1
LONG $0x5411fdc5; WORD $0x4039 // vmovupd yword [rcx + rdi + 64], ymm2
LONG $0x5c11fdc5; WORD $0x6039 // vmovupd yword [rcx + rdi + 96], ymm3
LBB0_1460:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1461
LBB0_1465:
WORD $0xff31 // xor edi, edi
LBB0_1466:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1468
LONG $0x456ff9c5; BYTE $0x40 // vmovdqa xmm0, oword 64[rbp] /* [rip + .LCPI0_4] */
LONG $0x0c6ffac5; BYTE $0xfa // vmovdqu xmm1, oword [rdx + 8*rdi]
LONG $0x546ffac5; WORD $0x10fa // vmovdqu xmm2, oword [rdx + 8*rdi + 16]
LONG $0x5c6ffac5; WORD $0x20fa // vmovdqu xmm3, oword [rdx + 8*rdi + 32]
LONG $0x646ffac5; WORD $0x30fa // vmovdqu xmm4, oword [rdx + 8*rdi + 48]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
LONG $0x0071e2c4; BYTE $0xc8 // vpshufb xmm1, xmm1, xmm0
LONG $0xca61f1c5 // vpunpcklwd xmm1, xmm1, xmm2
LONG $0x0059e2c4; BYTE $0xd0 // vpshufb xmm2, xmm4, xmm0
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd261e1c5 // vpunpcklwd xmm2, xmm3, xmm2
LONG $0xca62f1c5 // vpunpckldq xmm1, xmm1, xmm2
LONG $0x546ffac5; WORD $0x50fa // vmovdqu xmm2, oword [rdx + 8*rdi + 80]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
LONG $0x5c6ffac5; WORD $0x40fa // vmovdqu xmm3, oword [rdx + 8*rdi + 64]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd261e1c5 // vpunpcklwd xmm2, xmm3, xmm2
LONG $0x5c6ffac5; WORD $0x70fa // vmovdqu xmm3, oword [rdx + 8*rdi + 112]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0x646ffac5; WORD $0x60fa // vmovdqu xmm4, oword [rdx + 8*rdi + 96]
LONG $0x0059e2c4; BYTE $0xc0 // vpshufb xmm0, xmm4, xmm0
LONG $0xc361f9c5 // vpunpcklwd xmm0, xmm0, xmm3
LONG $0xc062e9c5 // vpunpckldq xmm0, xmm2, xmm0
LONG $0xc06cf1c5 // vpunpcklqdq xmm0, xmm1, xmm0
LONG $0x047ffac5; BYTE $0x39 // vmovdqu oword [rcx + rdi], xmm0
LBB0_1468:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1469
LBB0_1473:
WORD $0xff31 // xor edi, edi
LBB0_1474:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1476
QUAD $0x000000a0856ffdc5 // vmovdqa ymm0, yword 160[rbp] /* [rip + .LCPI0_16] */
LONG $0x0cdbfdc5; BYTE $0x7a // vpand ymm1, ymm0, yword [rdx + 2*rdi]
LONG $0x397de3c4; WORD $0x01ca // vextracti128 xmm2, ymm1, 1
LONG $0xca67f1c5 // vpackuswb xmm1, xmm1, xmm2
LONG $0x54dbfdc5; WORD $0x207a // vpand ymm2, ymm0, yword [rdx + 2*rdi + 32]
LONG $0x397de3c4; WORD $0x01d3 // vextracti128 xmm3, ymm2, 1
LONG $0xd367e9c5 // vpackuswb xmm2, xmm2, xmm3
LONG $0x5cdbfdc5; WORD $0x407a // vpand ymm3, ymm0, yword [rdx + 2*rdi + 64]
LONG $0x397de3c4; WORD $0x01dc // vextracti128 xmm4, ymm3, 1
LONG $0xdc67e1c5 // vpackuswb xmm3, xmm3, xmm4
LONG $0x44dbfdc5; WORD $0x607a // vpand ymm0, ymm0, yword [rdx + 2*rdi + 96]
LONG $0x397de3c4; WORD $0x01c4 // vextracti128 xmm4, ymm0, 1
LONG $0xc467f9c5 // vpackuswb xmm0, xmm0, xmm4
LONG $0x0c7ffac5; BYTE $0x39 // vmovdqu oword [rcx + rdi], xmm1
LONG $0x547ffac5; WORD $0x1039 // vmovdqu oword [rcx + rdi + 16], xmm2
LONG $0x5c7ffac5; WORD $0x2039 // vmovdqu oword [rcx + rdi + 32], xmm3
LONG $0x447ffac5; WORD $0x3039 // vmovdqu oword [rcx + rdi + 48], xmm0
LBB0_1476:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1477
LBB0_1481:
WORD $0xff31 // xor edi, edi
LBB0_1482:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1484
QUAD $0x000000a0856ffdc5 // vmovdqa ymm0, yword 160[rbp] /* [rip + .LCPI0_16] */
LONG $0x0cdbfdc5; BYTE $0x7a // vpand ymm1, ymm0, yword [rdx + 2*rdi]
LONG $0x397de3c4; WORD $0x01ca // vextracti128 xmm2, ymm1, 1
LONG $0xca67f1c5 // vpackuswb xmm1, xmm1, xmm2
LONG $0x54dbfdc5; WORD $0x207a // vpand ymm2, ymm0, yword [rdx + 2*rdi + 32]
LONG $0x397de3c4; WORD $0x01d3 // vextracti128 xmm3, ymm2, 1
LONG $0xd367e9c5 // vpackuswb xmm2, xmm2, xmm3
LONG $0x5cdbfdc5; WORD $0x407a // vpand ymm3, ymm0, yword [rdx + 2*rdi + 64]
LONG $0x397de3c4; WORD $0x01dc // vextracti128 xmm4, ymm3, 1
LONG $0xdc67e1c5 // vpackuswb xmm3, xmm3, xmm4
LONG $0x44dbfdc5; WORD $0x607a // vpand ymm0, ymm0, yword [rdx + 2*rdi + 96]
LONG $0x397de3c4; WORD $0x01c4 // vextracti128 xmm4, ymm0, 1
LONG $0xc467f9c5 // vpackuswb xmm0, xmm0, xmm4
LONG $0x0c7ffac5; BYTE $0x39 // vmovdqu oword [rcx + rdi], xmm1
LONG $0x547ffac5; WORD $0x1039 // vmovdqu oword [rcx + rdi + 16], xmm2
LONG $0x5c7ffac5; WORD $0x2039 // vmovdqu oword [rcx + rdi + 32], xmm3
LONG $0x447ffac5; WORD $0x3039 // vmovdqu oword [rcx + rdi + 48], xmm0
LBB0_1484:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1485
LBB0_1489:
WORD $0xff31 // xor edi, edi
LBB0_1490:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1492
LONG $0x456ff9c5; BYTE $0x40 // vmovdqa xmm0, oword 64[rbp] /* [rip + .LCPI0_4] */
LONG $0x0c6ffac5; BYTE $0xfa // vmovdqu xmm1, oword [rdx + 8*rdi]
LONG $0x546ffac5; WORD $0x10fa // vmovdqu xmm2, oword [rdx + 8*rdi + 16]
LONG $0x5c6ffac5; WORD $0x20fa // vmovdqu xmm3, oword [rdx + 8*rdi + 32]
LONG $0x646ffac5; WORD $0x30fa // vmovdqu xmm4, oword [rdx + 8*rdi + 48]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
LONG $0x0071e2c4; BYTE $0xc8 // vpshufb xmm1, xmm1, xmm0
LONG $0xca61f1c5 // vpunpcklwd xmm1, xmm1, xmm2
LONG $0x0059e2c4; BYTE $0xd0 // vpshufb xmm2, xmm4, xmm0
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd261e1c5 // vpunpcklwd xmm2, xmm3, xmm2
LONG $0xca62f1c5 // vpunpckldq xmm1, xmm1, xmm2
LONG $0x546ffac5; WORD $0x50fa // vmovdqu xmm2, oword [rdx + 8*rdi + 80]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
LONG $0x5c6ffac5; WORD $0x40fa // vmovdqu xmm3, oword [rdx + 8*rdi + 64]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd261e1c5 // vpunpcklwd xmm2, xmm3, xmm2
LONG $0x5c6ffac5; WORD $0x70fa // vmovdqu xmm3, oword [rdx + 8*rdi + 112]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0x646ffac5; WORD $0x60fa // vmovdqu xmm4, oword [rdx + 8*rdi + 96]
LONG $0x0059e2c4; BYTE $0xc0 // vpshufb xmm0, xmm4, xmm0
LONG $0xc361f9c5 // vpunpcklwd xmm0, xmm0, xmm3
LONG $0xc062e9c5 // vpunpckldq xmm0, xmm2, xmm0
LONG $0xc06cf1c5 // vpunpcklqdq xmm0, xmm1, xmm0
LONG $0x047ffac5; BYTE $0x39 // vmovdqu oword [rcx + rdi], xmm0
LBB0_1492:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1493
LBB0_1497:
WORD $0xff31 // xor edi, edi
LBB0_1498:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1500
LONG $0x045bfec5; BYTE $0xba // vcvttps2dq ymm0, yword [rdx + 4*rdi]
LONG $0x397de3c4; WORD $0x01c1 // vextracti128 xmm1, ymm0, 1
LONG $0xc16bf9c5 // vpackssdw xmm0, xmm0, xmm1
LONG $0x4c5bfec5; WORD $0x20ba // vcvttps2dq ymm1, yword [rdx + 4*rdi + 32]
LONG $0x397de3c4; WORD $0x01ca // vextracti128 xmm2, ymm1, 1
LONG $0xca6bf1c5 // vpackssdw xmm1, xmm1, xmm2
LONG $0x545bfec5; WORD $0x40ba // vcvttps2dq ymm2, yword [rdx + 4*rdi + 64]
LONG $0x397de3c4; WORD $0x01d3 // vextracti128 xmm3, ymm2, 1
LONG $0xd36be9c5 // vpackssdw xmm2, xmm2, xmm3
LONG $0x5c5bfec5; WORD $0x60ba // vcvttps2dq ymm3, yword [rdx + 4*rdi + 96]
LONG $0x397de3c4; WORD $0x01dc // vextracti128 xmm4, ymm3, 1
LONG $0xdc6be1c5 // vpackssdw xmm3, xmm3, xmm4
LONG $0x386de3c4; WORD $0x01d3 // vinserti128 ymm2, ymm2, xmm3, 1
LONG $0xd067edc5 // vpackuswb ymm2, ymm2, ymm0
LONG $0x387de3c4; WORD $0x01c1 // vinserti128 ymm0, ymm0, xmm1, 1
LONG $0xc067fdc5 // vpackuswb ymm0, ymm0, ymm0
LONG $0xc26cfdc5 // vpunpcklqdq ymm0, ymm0, ymm2
LONG $0x00fde3c4; WORD $0xd8c0 // vpermq ymm0, ymm0, 216
LONG $0x047ffec5; BYTE $0x39 // vmovdqu yword [rcx + rdi], ymm0
LBB0_1500:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1501
LBB0_1505:
WORD $0xff31 // xor edi, edi
LBB0_1506:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1508
LONG $0x0410fdc5; BYTE $0x3a // vmovupd ymm0, yword [rdx + rdi]
LONG $0x4c10fdc5; WORD $0x203a // vmovupd ymm1, yword [rdx + rdi + 32]
LONG $0x5410fdc5; WORD $0x403a // vmovupd ymm2, yword [rdx + rdi + 64]
LONG $0x5c10fdc5; WORD $0x603a // vmovupd ymm3, yword [rdx + rdi + 96]
LONG $0x0411fdc5; BYTE $0x39 // vmovupd yword [rcx + rdi], ymm0
LONG $0x4c11fdc5; WORD $0x2039 // vmovupd yword [rcx + rdi + 32], ymm1
LONG $0x5411fdc5; WORD $0x4039 // vmovupd yword [rcx + rdi + 64], ymm2
LONG $0x5c11fdc5; WORD $0x6039 // vmovupd yword [rcx + rdi + 96], ymm3
LBB0_1508:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1509
LBB0_1513:
WORD $0xff31 // xor edi, edi
LBB0_1514:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1516
LONG $0x456ff9c5; BYTE $0x70 // vmovdqa xmm0, oword 112[rbp] /* [rip + .LCPI0_12] */
LONG $0x0c6ffac5; BYTE $0xba // vmovdqu xmm1, oword [rdx + 4*rdi]
LONG $0x546ffac5; WORD $0x10ba // vmovdqu xmm2, oword [rdx + 4*rdi + 16]
LONG $0x5c6ffac5; WORD $0x20ba // vmovdqu xmm3, oword [rdx + 4*rdi + 32]
LONG $0x646ffac5; WORD $0x30ba // vmovdqu xmm4, oword [rdx + 4*rdi + 48]
LONG $0x0069e2c4; BYTE $0xd0 // vpshufb xmm2, xmm2, xmm0
LONG $0x0071e2c4; BYTE $0xc8 // vpshufb xmm1, xmm1, xmm0
LONG $0xca62f1c5 // vpunpckldq xmm1, xmm1, xmm2
LONG $0x0059e2c4; BYTE $0xd0 // vpshufb xmm2, xmm4, xmm0
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0xd262e1c5 // vpunpckldq xmm2, xmm3, xmm2
LONG $0x5c6ffac5; WORD $0x50ba // vmovdqu xmm3, oword [rdx + 4*rdi + 80]
LONG $0x0061e2c4; BYTE $0xd8 // vpshufb xmm3, xmm3, xmm0
LONG $0x646ffac5; WORD $0x40ba // vmovdqu xmm4, oword [rdx + 4*rdi + 64]
LONG $0x0059e2c4; BYTE $0xe0 // vpshufb xmm4, xmm4, xmm0
LONG $0xdb62d9c5 // vpunpckldq xmm3, xmm4, xmm3
LONG $0x646ffac5; WORD $0x70ba // vmovdqu xmm4, oword [rdx + 4*rdi + 112]
LONG $0x0059e2c4; BYTE $0xe0 // vpshufb xmm4, xmm4, xmm0
LONG $0x6c6ffac5; WORD $0x60ba // vmovdqu xmm5, oword [rdx + 4*rdi + 96]
LONG $0x0051e2c4; BYTE $0xc0 // vpshufb xmm0, xmm5, xmm0
LONG $0xc462f9c5 // vpunpckldq xmm0, xmm0, xmm4
LONG $0x3865e3c4; WORD $0x01c0 // vinserti128 ymm0, ymm3, xmm0, 1
LONG $0x3875e3c4; WORD $0x01ca // vinserti128 ymm1, ymm1, xmm2, 1
LONG $0xc06cf5c5 // vpunpcklqdq ymm0, ymm1, ymm0
LONG $0x00fde3c4; WORD $0xd8c0 // vpermq ymm0, ymm0, 216
LONG $0x047ffec5; BYTE $0x39 // vmovdqu yword [rcx + rdi], ymm0
LBB0_1516:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1517
LBB0_1521:
WORD $0xff31 // xor edi, edi
LBB0_1522:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1524
LONG $0x0410fdc5; BYTE $0xba // vmovupd ymm0, yword [rdx + 4*rdi]
LONG $0x4c10fdc5; WORD $0x20ba // vmovupd ymm1, yword [rdx + 4*rdi + 32]
LONG $0x5410fdc5; WORD $0x40ba // vmovupd ymm2, yword [rdx + 4*rdi + 64]
LONG $0x5c10fdc5; WORD $0x60ba // vmovupd ymm3, yword [rdx + 4*rdi + 96]
LONG $0x0411fdc5; BYTE $0xb9 // vmovupd yword [rcx + 4*rdi], ymm0
LONG $0x4c11fdc5; WORD $0x20b9 // vmovupd yword [rcx + 4*rdi + 32], ymm1
LONG $0x5411fdc5; WORD $0x40b9 // vmovupd yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c11fdc5; WORD $0x60b9 // vmovupd yword [rcx + 4*rdi + 96], ymm3
LBB0_1524:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1525
LBB0_1529:
WORD $0xff31 // xor edi, edi
LBB0_1530:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1532
LONG $0x217de2c4; WORD $0x3a04 // vpmovsxbd ymm0, qword [rdx + rdi]
LONG $0x217de2c4; WORD $0x3a4c; BYTE $0x08 // vpmovsxbd ymm1, qword [rdx + rdi + 8]
LONG $0x217de2c4; WORD $0x3a54; BYTE $0x10 // vpmovsxbd ymm2, qword [rdx + rdi + 16]
LONG $0x217de2c4; WORD $0x3a5c; BYTE $0x18 // vpmovsxbd ymm3, qword [rdx + rdi + 24]
LONG $0x047ffec5; BYTE $0xb9 // vmovdqu yword [rcx + 4*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20b9 // vmovdqu yword [rcx + 4*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40b9 // vmovdqu yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60b9 // vmovdqu yword [rcx + 4*rdi + 96], ymm3
LBB0_1532:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1533
LBB0_1537:
WORD $0xff31 // xor edi, edi
LBB0_1538:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1540
LONG $0x317de2c4; WORD $0x3a04 // vpmovzxbd ymm0, qword [rdx + rdi]
LONG $0x317de2c4; WORD $0x3a4c; BYTE $0x08 // vpmovzxbd ymm1, qword [rdx + rdi + 8]
LONG $0x317de2c4; WORD $0x3a54; BYTE $0x10 // vpmovzxbd ymm2, qword [rdx + rdi + 16]
LONG $0x317de2c4; WORD $0x3a5c; BYTE $0x18 // vpmovzxbd ymm3, qword [rdx + rdi + 24]
LONG $0x047ffec5; BYTE $0xb9 // vmovdqu yword [rcx + 4*rdi], ymm0
LONG $0x4c7ffec5; WORD $0x20b9 // vmovdqu yword [rcx + 4*rdi + 32], ymm1
LONG $0x547ffec5; WORD $0x40b9 // vmovdqu yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c7ffec5; WORD $0x60b9 // vmovdqu yword [rcx + 4*rdi + 96], ymm3
LBB0_1540:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1541
LBB0_1545:
WORD $0xff31 // xor edi, edi
LBB0_1546:
LONG $0x01c0f641 // test r8b, 1
JE LBB0_1548
LONG $0x0410fdc5; BYTE $0xba // vmovupd ymm0, yword [rdx + 4*rdi]
LONG $0x4c10fdc5; WORD $0x20ba // vmovupd ymm1, yword [rdx + 4*rdi + 32]
LONG $0x5410fdc5; WORD $0x40ba // vmovupd ymm2, yword [rdx + 4*rdi + 64]
LONG $0x5c10fdc5; WORD $0x60ba // vmovupd ymm3, yword [rdx + 4*rdi + 96]
LONG $0x0411fdc5; BYTE $0xb9 // vmovupd yword [rcx + 4*rdi], ymm0
LONG $0x4c11fdc5; WORD $0x20b9 // vmovupd yword [rcx + 4*rdi + 32], ymm1
LONG $0x5411fdc5; WORD $0x40b9 // vmovupd yword [rcx + 4*rdi + 64], ymm2
LONG $0x5c11fdc5; WORD $0x60b9 // vmovupd yword [rcx + 4*rdi + 96], ymm3
LBB0_1548:
WORD $0x394c; BYTE $0xce // cmp rsi, r9
JE LBB0_1553
JMP LBB0_1549
 |
The pages are generated with Golds v0.8.2. (GOOS=linux GOARCH=amd64)
Golds is a Go 101 project developed by Tapir Liu.
PR and bug reports are welcome and can be submitted to the issue list.
Please follow @zigo_101 (reachable from the left QR code) to get the latest news of Golds. |