140016373:	66 0f c4 0c 9f 03    	pinsrw $0x3,(%rdi,%rbx,4),%xmm1
140016379:	8b 14 8f             	mov    (%rdi,%rcx,4),%edx
14001637c:	89 04 8f             	mov    %eax,(%rdi,%rcx,4)
14001637f:	00 d0                	add    %dl,%al
140016381:	8b 5e 24             	mov    0x24(%rsi),%ebx
140016384:	0f b6 c0             	movzbl %al,%eax
140016387:	89 56 20             	mov    %edx,0x20(%rsi)
14001638a:	00 d9                	add    %bl,%cl
14001638c:	66 0f c4 04 87 04    	pinsrw $0x4,(%rdi,%rax,4),%xmm0
140016392:	8b 14 8f             	mov    (%rdi,%rcx,4),%edx
140016395:	89 1c 8f             	mov    %ebx,(%rdi,%rcx,4)
140016398:	00 d3                	add    %dl,%bl
14001639a:	8b 46 28             	mov    0x28(%rsi),%eax
14001639d:	0f b6 db             	movzbl %bl,%ebx
1400163a0:	89 56 24             	mov    %edx,0x24(%rsi)
1400163a3:	00 c1                	add    %al,%cl
1400163a5:	66 0f c4 0c 9f 04    	pinsrw $0x4,(%rdi,%rbx,4),%xmm1
1400163ab:	8b 14 8f             	mov    (%rdi,%rcx,4),%edx
1400163ae:	89 04 8f             	mov    %eax,(%rdi,%rcx,4)
1400163b1:	00 d0                	add    %dl,%al
1400163b3:	8b 5e 2c             	mov    0x2c(%rsi),%ebx
1400163b6:	0f b6 c0             	movzbl %al,%eax
1400163b9:	89 56 28             	mov    %edx,0x28(%rsi)
1400163bc:	00 d9                	add    %bl,%cl
1400163be:	66 0f c4 04 87 05    	pinsrw $0x5,(%rdi,%rax,4),%xmm0
1400163c4:	8b 14 8f             	mov    (%rdi,%rcx,4),%edx
1400163c7:	89 1c 8f             	mov    %ebx,(%rdi,%rcx,4)
1400163ca:	00 d3                	add    %dl,%bl
1400163cc:	8b 46 30             	mov    0x30(%rsi),%eax
1400163cf:	0f b6 db             	movzbl %bl,%ebx
1400163d2:	89 56 2c             	mov    %edx,0x2c(%rsi)
1400163d5:	00 c1                	add    %al,%cl
1400163d7:	66 0f c4 0c 9f 05    	pinsrw $0x5,(%rdi,%rbx,4),%xmm1
1400163dd:	8b 14 8f             	mov    (%rdi,%rcx,4),%edx
1400163e0:	89 04 8f             	mov    %eax,(%rdi,%rcx,4)
1400163e3:	00 d0                	add    %dl,%al
1400163e5:	8b 5e 34             	mov    0x34(%rsi),%ebx
1400163e8:	0f b6 c0             	movzbl %al,%eax
1400163eb:	89 56 30             	mov    %edx,0x30(%rsi)
1400163ee:	00 d9                	add    %bl,%cl
1400163f0:	66 0f c4 04 87 06    	pinsrw $0x6,(%rdi,%rax,4),%xmm0
1400163f6:	8b 14 8f             	mov    (%rdi,%rcx,4),%edx
1400163f9:	89 1c 8f             	mov    %ebx,(%rdi,%rcx,4)
1400163fc:	00 d3                	add    %dl,%bl
1400163fe:	8b 46 38             	mov    0x38(%rsi),%eax
140016401:	0f b6 db             	movzbl %bl,%ebx
140016404:	89 56 34             	mov    %edx,0x34(%rsi)
140016407:	00 c1                	add    %al,%cl
140016409:	66 0f c4 0c 9f 06    	pinsrw $0x6,(%rdi,%rbx,4),%xmm1
14001640f:	8b 14 8f             	mov    (%rdi,%rcx,4),%edx
140016412:	89 04 8f             	mov    %eax,(%rdi,%rcx,4)
140016415:	00 d0                	add    %dl,%al
140016417:	8b 5e 3c             	mov    0x3c(%rsi),%ebx
14001641a:	0f b6 c0             	movzbl %al,%eax
14001641d:	89 56 38             	mov    %edx,0x38(%rsi)
140016420:	00 d9                	add    %bl,%cl
140016422:	66 0f c4 04 87 07    	pinsrw $0x7,(%rdi,%rax,4),%xmm0
140016428:	41 80 c2 10          	add    $0x10,%r10b
14001642c:	f3 41 0f 6f 14 24    	movdqu (%r12),%xmm2
140016432:	8b 14 8f             	mov    (%rdi,%rcx,4),%edx
140016435:	89 1c 8f             	mov    %ebx,(%rdi,%rcx,4)
140016438:	00 d3                	add    %dl,%bl
14001643a:	0f b6 db             	movzbl %bl,%ebx
14001643d:	89 56 3c             	mov    %edx,0x3c(%rsi)
140016440:	4a 8d 34 97          	lea    (%rdi,%r10,4),%rsi
140016444:	66 0f c4 0c 9f 07    	pinsrw $0x7,(%rdi,%rbx,4),%xmm1
14001644a:	8b 06                	mov    (%rsi),%eax
14001644c:	48 89 cb             	mov    %rcx,%rbx
14001644f:	48 31 c9             	xor    %rcx,%rcx
140016452:	49 83 eb 10          	sub    $0x10,%r11
140016456:	88 d9                	mov    %bl,%cl
140016458:	49 f7 c3 f0 ff ff ff 	test   $0xfffffffffffffff0,%r11
14001645f:	0f 85 2b fe ff ff    	jne    0x140016290
140016465:	66 0f 73 f1 08       	psllq  $0x8,%xmm1
14001646a:	66 0f ef d0          	pxor   %xmm0,%xmm2
14001646e:	66 0f ef d1          	pxor   %xmm1,%xmm2
140016472:	f3 43 0f 7f 14 2c    	movdqu %xmm2,(%r12,%r13,1)
140016478:	4d 8d 64 24 10       	lea    0x10(%r12),%r12
14001647d:	49 83 fb 00          	cmp    $0x0,%r11
140016481:	75 0d                	jne    0x140016490
140016483:	e9 28 02 00 00       	jmp    0x1400166b0
140016488:	90                   	nop
140016489:	90                   	nop
14001648a:	90                   	nop
14001648b:	90                   	nop
14001648c:	90                   	nop
14001648d:	90                   	nop
14001648e:	90                   	nop
14001648f:	90                   	nop
140016490:	00 c1                	add    %al,%cl
140016492:	8b 14 8f             	mov    (%rdi,%rcx,4),%edx
140016495:	89 04 8f             	mov    %eax,(%rdi,%rcx,4)
140016498:	42 89 14 97          	mov    %edx,(%rdi,%r10,4)
14001649c:	00 d0                	add    %dl,%al
14001649e:	41 fe c2             	inc    %r10b
1400164a1:	8b 14 87             	mov    (%rdi,%rax,4),%edx
1400164a4:	42 8b 04 97          	mov    (%rdi,%r10,4),%eax
1400164a8:	41 32 14 24          	xor    (%r12),%dl
1400164ac:	43 88 14 2c          	mov    %dl,(%r12,%r13,1)
1400164b0:	4d 8d 64 24 01       	lea    0x1(%r12),%r12
1400164b5:	49 ff cb             	dec    %r11
1400164b8:	75 d6                	jne    0x140016490
1400164ba:	e9 f1 01 00 00       	jmp    0x1400166b0
1400164bf:	90                   	nop
1400164c0:	41 80 c2 01          	add    $0x1,%r10b
1400164c4:	42 0f b6 04 17       	movzbl (%rdi,%r10,1),%eax
1400164c9:	49 f7 c3 f8 ff ff ff 	test   $0xfffffffffffffff8,%r11
1400164d0:	0f 84 9a 01 00 00    	je     0x140016670
1400164d6:	eb 08                	jmp    0x1400164e0
1400164d8:	90                   	nop
1400164d9:	90                   	nop
1400164da:	90                   	nop
1400164db:	90                   	nop
1400164dc:	90                   	nop
1400164dd:	90                   	nop
1400164de:	90                   	nop
1400164df:	90                   	nop
1400164e0:	45 8b 04 24          	mov    (%r12),%r8d
1400164e4:	45 8b 4c 24 04       	mov    0x4(%r12),%r9d
1400164e9:	00 c1                	add    %al,%cl
1400164eb:	49 8d 72 01          	lea    0x1(%r10),%rsi
1400164ef:	0f b6 14 0f          	movzbl (%rdi,%rcx,1),%edx
1400164f3:	40 0f b6 f6          	movzbl %sil,%esi
1400164f7:	0f b6 1c 37          	movzbl (%rdi,%rsi,1),%ebx
1400164fb:	88 04 0f             	mov    %al,(%rdi,%rcx,1)
1400164fe:	48 39 f1             	cmp    %rsi,%rcx
140016501:	42 88 14 17          	mov    %dl,(%rdi,%r10,1)
140016505:	75 03                	jne    0x14001650a
140016507:	48 89 c3             	mov    %rax,%rbx
14001650a:	00 c2                	add    %al,%dl
14001650c:	44 32 04 17          	xor    (%rdi,%rdx,1),%r8b
140016510:	41 c1 c8 08          	ror    $0x8,%r8d
140016514:	00 d9                	add    %bl,%cl
140016516:	4c 8d 56 01          	lea    0x1(%rsi),%r10
14001651a:	0f b6 14 0f          	movzbl (%rdi,%rcx,1),%edx
14001651e:	45 0f b6 d2          	movzbl %r10b,%r10d
140016522:	42 0f b6 04 17       	movzbl (%rdi,%r10,1),%eax
140016527:	88 1c 0f             	mov    %bl,(%rdi,%rcx,1)
14001652a:	4c 39 d1             	cmp    %r10,%rcx
14001652d:	88 14 37             	mov    %dl,(%rdi,%rsi,1)
140016530:	75 03                	jne    0x140016535
140016532:	48 89 d8             	mov    %rbx,%rax
140016535:	00 da                	add    %bl,%dl
140016537:	44 32 04 17          	xor    (%rdi,%rdx,1),%r8b
14001653b:	41 c1 c8 08          	ror    $0x8,%r8d
14001653f:	00 c1                	add    %al,%cl
140016541:	49 8d 72 01          	lea    0x1(%r10),%rsi
140016545:	0f b6 14 0f          	movzbl (%rdi,%rcx,1),%edx
140016549:	40 0f b6 f6          	movzbl %sil,%esi
14001654d:	0f b6 1c 37          	movzbl (%rdi,%rsi,1),%ebx
140016551:	88 04 0f             	mov    %al,(%rdi,%rcx,1)
140016554:	48 39 f1             	cmp    %rsi,%rcx
140016557:	42 88 14 17          	mov    %dl,(%rdi,%r10,1)
14001655b:	75 03                	jne    0x140016560
14001655d:	48 89 c3             	mov    %rax,%rbx
140016560:	00 c2                	add    %al,%dl
140016562:	44 32 04 17          	xor    (%rdi,%rdx,1),%r8b
140016566:	41 c1 c8 08          	ror    $0x8,%r8d
14001656a:	00 d9                	add    %bl,%cl
14001656c:	4c 8d 56 01          	lea    0x1(%rsi),%r10
140016570:	0f b6 14 0f          	movzbl (%rdi,%rcx,1),%edx
140016574:	45 0f b6 d2          	movzbl %r10b,%r10d
140016578:	42 0f b6 04 17       	movzbl (%rdi,%r10,1),%eax
14001657d:	88 1c 0f             	mov    %bl,(%rdi,%rcx,1)
140016580:	4c 39 d1             	cmp    %r10,%rcx
140016583:	88 14 37             	mov    %dl,(%rdi,%rsi,1)
140016586:	75 03                	jne    0x14001658b
140016588:	48 89 d8             	mov    %rbx,%rax
14001658b:	00 da                	add    %bl,%dl
14001658d:	44 32 04 17          	xor    (%rdi,%rdx,1),%r8b
140016591:	41 c1 c8 08          	ror    $0x8,%r8d
140016595:	00 c1                	add    %al,%cl
140016597:	49 8d 72 01          	lea    0x1(%r10),%rsi
14001659b:	0f b6 14 0f          	movzbl (%rdi,%rcx,1),%edx
14001659f:	40 0f b6 f6          	movzbl %sil,%esi
1400165a3:	0f b6 1c 37          	movzbl (%rdi,%rsi,1),%ebx
1400165a7:	88 04 0f             	mov    %al,(%rdi,%rcx,1)
1400165aa:	48 39 f1             	cmp    %rsi,%rcx
1400165ad:	42 88 14 17          	mov    %dl,(%rdi,%r10,1)
1400165b1:	75 03                	jne    0x1400165b6
1400165b3:	48 89 c3             	mov    %rax,%rbx
1400165b6:	00 c2                	add    %al,%dl
1400165b8:	44 32 0c 17          	xor    (%rdi,%rdx,1),%r9b
1400165bc:	41 c1 c9 08          	ror    $0x8,%r9d
1400165c0:	00 d9                	add    %bl,%cl
1400165c2:	4c 8d 56 01          	lea    0x1(%rsi),%r10
1400165c6:	0f b6 14 0f          	movzbl (%rdi,%rcx,1),%edx
1400165ca:	45 0f b6 d2          	movzbl %r10b,%r10d
1400165ce:	42 0f b6 04 17       	movzbl (%rdi,%r10,1),%eax
1400165d3:	88 1c 0f             	mov    %bl,(%rdi,%rcx,1)
1400165d6:	4c 39 d1             	cmp    %r10,%rcx
1400165d9:	88 14 37             	mov    %dl,(%rdi,%rsi,1)
1400165dc:	75 03                	jne    0x1400165e1
1400165de:	48 89 d8             	mov    %rbx,%rax
1400165e1:	00 da                	add    %bl,%dl
1400165e3:	44 32 0c 17          	xor    (%rdi,%rdx,1),%r9b
1400165e7:	41 c1 c9 08          	ror    $0x8,%r9d
1400165eb:	00 c1                	add    %al,%cl
1400165ed:	49 8d 72 01          	lea    0x1(%r10),%rsi
1400165f1:	0f b6 14 0f          	movzbl (%rdi,%rcx,1),%edx
1400165f5:	40 0f b6 f6          	movzbl %sil,%esi
1400165f9:	0f b6 1c 37          	movzbl (%rdi,%rsi,1),%ebx
1400165fd:	88 04 0f             	mov    %al,(%rdi,%rcx,1)
140016600:	48 39 f1             	cmp    %rsi,%rcx
140016603:	42 88 14 17          	mov    %dl,(%rdi,%r10,1)
140016607:	75 03                	jne    0x14001660c
140016609:	48 89 c3             	mov    %rax,%rbx
14001660c:	00 c2                	add    %al,%dl
14001660e:	44 32 0c 17          	xor    (%rdi,%rdx,1),%r9b
140016612:	41 c1 c9 08          	ror    $0x8,%r9d
140016616:	00 d9                	add    %bl,%cl
140016618:	4c 8d 56 01          	lea    0x1(%rsi),%r10
14001661c:	0f b6 14 0f          	movzbl (%rdi,%rcx,1),%edx
140016620:	45 0f b6 d2          	movzbl %r10b,%r10d
140016624:	42 0f b6 04 17       	movzbl (%rdi,%r10,1),%eax
140016629:	88 1c 0f             	mov    %bl,(%rdi,%rcx,1)
14001662c:	4c 39 d1             	cmp    %r10,%rcx
14001662f:	88 14 37             	mov    %dl,(%rdi,%rsi,1)
140016632:	75 03                	jne    0x140016637
140016634:	48 89 d8             	mov    %rbx,%rax
140016637:	00 da                	add    %bl,%dl
140016639:	44 32 0c 17          	xor    (%rdi,%rdx,1),%r9b
14001663d:	41 c1 c9 08          	ror    $0x8,%r9d
140016641:	4d 8d 5b f8          	lea    -0x8(%r11),%r11
140016645:	45 89 45 00          	mov    %r8d,0x0(%r13)
140016649:	4d 8d 64 24 08       	lea    0x8(%r12),%r12
14001664e:	45 89 4d 04          	mov    %r9d,0x4(%r13)
140016652:	4d 8d 6d 08          	lea    0x8(%r13),%r13
140016656:	49 f7 c3 f8 ff ff ff 	test   $0xfffffffffffffff8,%r11
14001665d:	0f 85 7d fe ff ff    	jne    0x1400164e0
140016663:	49 83 fb 00          	cmp    $0x0,%r11
140016667:	75 07                	jne    0x140016670
140016669:	eb 45                	jmp    0x1400166b0
14001666b:	90                   	nop
14001666c:	90                   	nop
14001666d:	90                   	nop
14001666e:	90                   	nop
14001666f:	90                   	nop
140016670:	00 c1                	add    %al,%cl
140016672:	0f b6 c9             	movzbl %cl,%ecx
140016675:	0f b6 14 0f          	movzbl (%rdi,%rcx,1),%edx
140016679:	88 04 0f             	mov    %al,(%rdi,%rcx,1)
14001667c:	42 88 14 17          	mov    %dl,(%rdi,%r10,1)
140016680:	00 c2                	add    %al,%dl
140016682:	41 80 c2 01          	add    $0x1,%r10b
140016686:	0f b6 d2             	movzbl %dl,%edx
140016689:	45 0f b6 d2          	movzbl %r10b,%r10d
14001668d:	0f b6 14 17          	movzbl (%rdi,%rdx,1),%edx
140016691:	42 0f b6 04 17       	movzbl (%rdi,%r10,1),%eax
140016696:	41 32 14 24          	xor    (%r12),%dl
14001669a:	4d 8d 64 24 01       	lea    0x1(%r12),%r12
14001669f:	41 88 55 00          	mov    %dl,0x0(%r13)
1400166a3:	4d 8d 6d 01          	lea    0x1(%r13),%r13
1400166a7:	49 83 eb 01          	sub    $0x1,%r11
1400166ab:	75 c3                	jne    0x140016670
1400166ad:	eb 01                	jmp    0x1400166b0
1400166af:	90                   	nop
1400166b0:	41 80 ea 01          	sub    $0x1,%r10b
1400166b4:	44 89 57 f8          	mov    %r10d,-0x8(%rdi)
1400166b8:	89 4f fc             	mov    %ecx,-0x4(%rdi)
1400166bb:	4c 8b 2c 24          	mov    (%rsp),%r13
1400166bf:	4c 8b 64 24 08       	mov    0x8(%rsp),%r12
1400166c4:	48 8b 5c 24 10       	mov    0x10(%rsp),%rbx
1400166c9:	48 83 c4 18          	add    $0x18,%rsp
1400166cd:	48 8b 7c 24 08       	mov    0x8(%rsp),%rdi
1400166d2:	48 8b 74 24 10       	mov    0x10(%rsp),%rsi
1400166d7:	f3 c3                	repz ret
1400166d9:	90                   	nop
1400166da:	90                   	nop
1400166db:	90                   	nop
1400166dc:	90                   	nop
1400166dd:	90                   	nop
1400166de:	90                   	nop
1400166df:	90                   	nop
1400166e0:	48 89 7c 24 08       	mov    %rdi,0x8(%rsp)
1400166e5:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
1400166ea:	48 89 e0             	mov    %rsp,%rax
1400166ed:	48 89 cf             	mov    %rcx,%rdi
1400166f0:	48 89 d6             	mov    %rdx,%rsi
1400166f3:	4c 89 c2             	mov    %r8,%rdx
1400166f6:	f3 0f 1e fa          	endbr64
1400166fa:	48 8d 7f 08          	lea    0x8(%rdi),%rdi
1400166fe:	48 8d 14 32          	lea    (%rdx,%rsi,1),%rdx
140016702:	48 f7 de             	neg    %rsi
140016705:	48 89 f1             	mov    %rsi,%rcx
140016708:	31 c0                	xor    %eax,%eax
14001670a:	4d 31 c9             	xor    %r9,%r9
14001670d:	4d 31 d2             	xor    %r10,%r10
140016710:	4d 31 db             	xor    %r11,%r11
140016713:	44 8b 05 f6 55 3c 00 	mov    0x3c55f6(%rip),%r8d        # 0x1403dbd10
14001671a:	41 0f ba e0 14       	bt     $0x14,%r8d
14001671f:	72 4f                	jb     0x140016770
140016721:	eb 0d                	jmp    0x140016730
140016723:	90                   	nop
140016724:	90                   	nop
140016725:	90                   	nop
140016726:	90                   	nop
140016727:	90                   	nop
140016728:	90                   	nop
140016729:	90                   	nop
14001672a:	90                   	nop
14001672b:	90                   	nop
14001672c:	90                   	nop
14001672d:	90                   	nop
14001672e:	90                   	nop
14001672f:	90                   	nop
140016730:	89 04 87             	mov    %eax,(%rdi,%rax,4)
140016733:	04 01                	add    $0x1,%al
140016735:	73 f9                	jae    0x140016730
140016737:	4d 31 c9             	xor    %r9,%r9
14001673a:	4d 31 c0             	xor    %r8,%r8
14001673d:	90                   	nop
14001673e:	90                   	nop
14001673f:	90                   	nop
140016740:	46 8b 14 8f          	mov    (%rdi,%r9,4),%r10d
140016744:	44 02 04 32          	add    (%rdx,%rsi,1),%r8b
140016748:	45 00 d0             	add    %r10b,%r8b
14001674b:	48 83 c6 01          	add    $0x1,%rsi
14001674f:	46 8b 1c 87          	mov    (%rdi,%r8,4),%r11d
140016753:	48 0f 44 f1          	cmove  %rcx,%rsi
140016757:	46 89 14 87          	mov    %r10d,(%rdi,%r8,4)
14001675b:	46 89 1c 8f          	mov    %r11d,(%rdi,%r9,4)
14001675f:	41 80 c1 01          	add    $0x1,%r9b
140016763:	73 db                	jae    0x140016740
140016765:	eb 49                	jmp    0x1400167b0
140016767:	90                   	nop
140016768:	90                   	nop
140016769:	90                   	nop
14001676a:	90                   	nop
14001676b:	90                   	nop
14001676c:	90                   	nop
14001676d:	90                   	nop
14001676e:	90                   	nop
14001676f:	90                   	nop
140016770:	88 04 07             	mov    %al,(%rdi,%rax,1)
140016773:	04 01                	add    $0x1,%al
140016775:	73 f9                	jae    0x140016770
140016777:	4d 31 c9             	xor    %r9,%r9
14001677a:	4d 31 c0             	xor    %r8,%r8
14001677d:	90                   	nop
14001677e:	90                   	nop
14001677f:	90                   	nop
140016780:	46 8a 14 0f          	mov    (%rdi,%r9,1),%r10b
140016784:	44 02 04 32          	add    (%rdx,%rsi,1),%r8b
140016788:	45 00 d0             	add    %r10b,%r8b
14001678b:	48 83 c6 01          	add    $0x1,%rsi
14001678f:	46 8a 1c 07          	mov    (%rdi,%r8,1),%r11b
140016793:	75 03                	jne    0x140016798
140016795:	48 89 ce             	mov    %rcx,%rsi
140016798:	46 88 14 07          	mov    %r10b,(%rdi,%r8,1)