1403b0532:	48 85 c0             	test   %rax,%rax
1403b0535:	75 29                	jne    0x1403b0560
1403b0537:	48 8b 03             	mov    (%rbx),%rax
1403b053a:	33 c9                	xor    %ecx,%ecx
1403b053c:	48 63 50 04          	movslq 0x4(%rax),%rdx
1403b0540:	b8 04 00 00 00       	mov    $0x4,%eax
1403b0545:	48 03 d3             	add    %rbx,%rdx
1403b0548:	48 39 4a 48          	cmp    %rcx,0x48(%rdx)
1403b054c:	0f 45 c1             	cmovne %ecx,%eax
1403b054f:	0b 42 10             	or     0x10(%rdx),%eax
1403b0552:	83 e0 15             	and    $0x15,%eax
1403b0555:	83 c8 02             	or     $0x2,%eax
1403b0558:	89 42 10             	mov    %eax,0x10(%rdx)
1403b055b:	23 42 14             	and    0x14(%rdx),%eax
1403b055e:	75 06                	jne    0x1403b0566
1403b0560:	48 83 c4 60          	add    $0x60,%rsp
1403b0564:	5b                   	pop    %rbx
1403b0565:	c3                   	ret
1403b0566:	a8 04                	test   $0x4,%al
1403b0568:	74 09                	je     0x1403b0573
1403b056a:	48 8d 1d 77 91 bf 00 	lea    0xbf9177(%rip),%rbx        # 0x140fa96e8
1403b0571:	eb 14                	jmp    0x1403b0587
1403b0573:	a8 02                	test   $0x2,%al
1403b0575:	48 8d 1d 84 91 bf 00 	lea    0xbf9184(%rip),%rbx        # 0x140fa9700
1403b057c:	48 8d 05 95 91 bf 00 	lea    0xbf9195(%rip),%rax        # 0x140fa9718
1403b0583:	48 0f 44 d8          	cmove  %rax,%rbx
1403b0587:	ba 01 00 00 00       	mov    $0x1,%edx
1403b058c:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
1403b0591:	e8 2a 72 e5 ff       	call   0x1402077c0
1403b0596:	4c 8b c0             	mov    %rax,%r8
1403b0599:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
1403b059e:	48 8b d3             	mov    %rbx,%rdx
1403b05a1:	e8 8a 02 e3 ff       	call   0x1401e0830
1403b05a6:	48 8d 15 6b 07 ff 00 	lea    0xff076b(%rip),%rdx        # 0x1413a0d18
1403b05ad:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
1403b05b2:	e8 61 c2 a6 00       	call   0x140e1c818
1403b05b7:	cc                   	int3
1403b05b8:	cc                   	int3
1403b05b9:	cc                   	int3
1403b05ba:	cc                   	int3
1403b05bb:	cc                   	int3
1403b05bc:	cc                   	int3
1403b05bd:	cc                   	int3
1403b05be:	cc                   	int3
1403b05bf:	cc                   	int3
1403b05c0:	40 53                	rex push %rbx
1403b05c2:	48 83 ec 30          	sub    $0x30,%rsp
1403b05c6:	4d 8b d1             	mov    %r9,%r10
1403b05c9:	48 8d 41 10          	lea    0x10(%rcx),%rax
1403b05cd:	4c 8b 4c 24 60       	mov    0x60(%rsp),%r9
1403b05d2:	4d 8b d8             	mov    %r8,%r11
1403b05d5:	48 8b da             	mov    %rdx,%rbx
1403b05d8:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1403b05dd:	4d 8b c2             	mov    %r10,%r8
1403b05e0:	49 8b d3             	mov    %r11,%rdx
1403b05e3:	48 8b cb             	mov    %rbx,%rcx
1403b05e6:	e8 01 d9 a4 00       	call   0x140dfdeec
1403b05eb:	8b c8                	mov    %eax,%ecx
1403b05ed:	85 c0                	test   %eax,%eax
1403b05ef:	79 0b                	jns    0x1403b05fc
1403b05f1:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
1403b05f6:	48 83 c4 30          	add    $0x30,%rsp
1403b05fa:	5b                   	pop    %rbx
1403b05fb:	c3                   	ret
1403b05fc:	33 c0                	xor    %eax,%eax
1403b05fe:	85 c9                	test   %ecx,%ecx
1403b0600:	0f 95 c0             	setne  %al
1403b0603:	48 83 c4 30          	add    $0x30,%rsp
1403b0607:	5b                   	pop    %rbx
1403b0608:	c3                   	ret
1403b0609:	cc                   	int3
1403b060a:	cc                   	int3
1403b060b:	cc                   	int3
1403b060c:	cc                   	int3
1403b060d:	cc                   	int3
1403b060e:	cc                   	int3
1403b060f:	cc                   	int3
1403b0610:	48 b8 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rax
1403b0617:	9c f2 cb
1403b061a:	41 b9 00 00 00 00    	mov    $0x0,%r9d
1403b0620:	4c 2b c2             	sub    %rdx,%r8
1403b0623:	74 1f                	je     0x1403b0644
1403b0625:	49 ba b3 01 00 00 00 	movabs $0x100000001b3,%r10
1403b062c:	01 00 00
1403b062f:	90                   	nop
1403b0630:	42 0f b6 0c 0a       	movzbl (%rdx,%r9,1),%ecx
1403b0635:	49 ff c1             	inc    %r9
1403b0638:	48 33 c1             	xor    %rcx,%rax
1403b063b:	49 0f af c2          	imul   %r10,%rax
1403b063f:	4d 3b c8             	cmp    %r8,%r9
1403b0642:	72 ec                	jb     0x1403b0630
1403b0644:	c3                   	ret
1403b0645:	cc                   	int3
1403b0646:	cc                   	int3
1403b0647:	cc                   	int3
1403b0648:	cc                   	int3
1403b0649:	cc                   	int3
1403b064a:	cc                   	int3
1403b064b:	cc                   	int3
1403b064c:	cc                   	int3
1403b064d:	cc                   	int3
1403b064e:	cc                   	int3
1403b064f:	cc                   	int3
1403b0650:	48 8b 44 24 28       	mov    0x28(%rsp),%rax
1403b0655:	48 8b 4c 24 40       	mov    0x40(%rsp),%rcx
1403b065a:	4c 89 00             	mov    %r8,(%rax)
1403b065d:	48 8b 44 24 30       	mov    0x30(%rsp),%rax
1403b0662:	48 89 01             	mov    %rax,(%rcx)
1403b0665:	b8 03 00 00 00       	mov    $0x3,%eax
1403b066a:	c3                   	ret
1403b066b:	cc                   	int3
1403b066c:	cc                   	int3
1403b066d:	cc                   	int3
1403b066e:	cc                   	int3
1403b066f:	cc                   	int3
1403b0670:	4d 2b c8             	sub    %r8,%r9
1403b0673:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
1403b0678:	4c 3b c8             	cmp    %rax,%r9
1403b067b:	4c 0f 4f c8          	cmovg  %rax,%r9
1403b067f:	48 8b 44 24 28       	mov    0x28(%rsp),%rax
1403b0684:	4c 3b c8             	cmp    %rax,%r9
1403b0687:	41 0f 42 c1          	cmovb  %r9d,%eax
1403b068b:	c3                   	ret
1403b068c:	cc                   	int3
1403b068d:	cc                   	int3
1403b068e:	cc                   	int3
1403b068f:	cc                   	int3
1403b0690:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1403b0695:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
1403b069a:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
1403b069f:	56                   	push   %rsi
1403b06a0:	57                   	push   %rdi
1403b06a1:	41 54                	push   %r12
1403b06a3:	41 56                	push   %r14
1403b06a5:	41 57                	push   %r15
1403b06a7:	48 83 ec 40          	sub    $0x40,%rsp
1403b06ab:	4d 8b f9             	mov    %r9,%r15
1403b06ae:	4d 8b e0             	mov    %r8,%r12
1403b06b1:	48 8b fa             	mov    %rdx,%rdi
1403b06b4:	48 8b c1             	mov    %rcx,%rax
1403b06b7:	33 d2                	xor    %edx,%edx
1403b06b9:	89 54 24 30          	mov    %edx,0x30(%rsp)
1403b06bd:	0f 57 c0             	xorps  %xmm0,%xmm0
1403b06c0:	0f 11 07             	movups %xmm0,(%rdi)
1403b06c3:	48 89 57 10          	mov    %rdx,0x10(%rdi)
1403b06c7:	48 c7 47 18 0f 00 00 	movq   $0xf,0x18(%rdi)
1403b06ce:	00
1403b06cf:	88 17                	mov    %dl,(%rdi)
1403b06d1:	c7 44 24 30 01 00 00 	movl   $0x1,0x30(%rsp)
1403b06d8:	00
1403b06d9:	49 8b c9             	mov    %r9,%rcx
1403b06dc:	49 2b c8             	sub    %r8,%rcx
1403b06df:	0f 84 bc 00 00 00    	je     0x1403b07a1
1403b06e5:	4c 8d 70 10          	lea    0x10(%rax),%r14
1403b06e9:	44 8b c2             	mov    %edx,%r8d
1403b06ec:	0f b6 5c 24 78       	movzbl 0x78(%rsp),%ebx
1403b06f1:	49 3b c8             	cmp    %r8,%rcx
1403b06f4:	77 17                	ja     0x1403b070d
1403b06f6:	48 89 4f 10          	mov    %rcx,0x10(%rdi)
1403b06fa:	48 8b c7             	mov    %rdi,%rax
1403b06fd:	48 83 7f 18 0f       	cmpq   $0xf,0x18(%rdi)
1403b0702:	76 03                	jbe    0x1403b0707
1403b0704:	48 8b 07             	mov    (%rdi),%rax
1403b0707:	c6 04 08 00          	movb   $0x0,(%rax,%rcx,1)
1403b070b:	eb 53                	jmp    0x1403b0760
1403b070d:	48 8b e9             	mov    %rcx,%rbp
1403b0710:	49 2b e8             	sub    %r8,%rbp
1403b0713:	48 8b 57 18          	mov    0x18(%rdi),%rdx
1403b0717:	48 8b c2             	mov    %rdx,%rax
1403b071a:	49 2b c0             	sub    %r8,%rax
1403b071d:	48 3b e8             	cmp    %rax,%rbp
1403b0720:	77 27                	ja     0x1403b0749
1403b0722:	48 89 4f 10          	mov    %rcx,0x10(%rdi)
1403b0726:	48 8b c7             	mov    %rdi,%rax
1403b0729:	48 83 fa 0f          	cmp    $0xf,%rdx
1403b072d:	76 03                	jbe    0x1403b0732
1403b072f:	48 8b 07             	mov    (%rdi),%rax
1403b0732:	4a 8d 34 00          	lea    (%rax,%r8,1),%rsi
1403b0736:	4c 8b c5             	mov    %rbp,%r8
1403b0739:	33 d2                	xor    %edx,%edx
1403b073b:	48 8b ce             	mov    %rsi,%rcx
1403b073e:	e8 6d ef b2 00       	call   0x140edf6b0
1403b0743:	c6 04 2e 00          	movb   $0x0,(%rsi,%rbp,1)
1403b0747:	eb 17                	jmp    0x1403b0760
1403b0749:	c6 44 24 20 00       	movb   $0x0,0x20(%rsp)
1403b074e:	4c 8b cd             	mov    %rbp,%r9
1403b0751:	44 0f b6 c3          	movzbl %bl,%r8d
1403b0755:	48 8b d5             	mov    %rbp,%rdx
1403b0758:	48 8b cf             	mov    %rdi,%rcx
1403b075b:	e8 50 15 e2 ff       	call   0x1401d1cb0
1403b0760:	48 8b 57 10          	mov    0x10(%rdi),%rdx
1403b0764:	48 83 7f 18 0f       	cmpq   $0xf,0x18(%rdi)
1403b0769:	76 08                	jbe    0x1403b0773
1403b076b:	48 8b 0f             	mov    (%rdi),%rcx
1403b076e:	48 03 d1             	add    %rcx,%rdx
1403b0771:	eb 06                	jmp    0x1403b0779
1403b0773:	48 03 d7             	add    %rdi,%rdx
1403b0776:	48 8b cf             	mov    %rdi,%rcx
1403b0779:	4c 89 74 24 20       	mov    %r14,0x20(%rsp)
1403b077e:	4d 8b cf             	mov    %r15,%r9
1403b0781:	4d 8b c4             	mov    %r12,%r8
1403b0784:	e8 33 d8 a4 00       	call   0x140dfdfbc
1403b0789:	48 8b c8             	mov    %rax,%rcx
1403b078c:	48 8b 57 10          	mov    0x10(%rdi),%rdx
1403b0790:	48 3b c2             	cmp    %rdx,%rax
1403b0793:	76 0c                	jbe    0x1403b07a1
1403b0795:	4c 8b c2             	mov    %rdx,%r8
1403b0798:	48 85 c0             	test   %rax,%rax
1403b079b:	0f 85 50 ff ff ff    	jne    0x1403b06f1
1403b07a1:	48 3b ca             	cmp    %rdx,%rcx
1403b07a4:	77 17                	ja     0x1403b07bd
1403b07a6:	48 89 4f 10          	mov    %rcx,0x10(%rdi)
1403b07aa:	48 8b c7             	mov    %rdi,%rax
1403b07ad:	48 83 7f 18 0f       	cmpq   $0xf,0x18(%rdi)
1403b07b2:	76 03                	jbe    0x1403b07b7
1403b07b4:	48 8b 07             	mov    (%rdi),%rax
1403b07b7:	c6 04 08 00          	movb   $0x0,(%rax,%rcx,1)
1403b07bb:	eb 55                	jmp    0x1403b0812
1403b07bd:	48 8b f1             	mov    %rcx,%rsi
1403b07c0:	48 2b f2             	sub    %rdx,%rsi
1403b07c3:	4c 8b 47 18          	mov    0x18(%rdi),%r8
1403b07c7:	49 8b c0             	mov    %r8,%rax
1403b07ca:	48 2b c2             	sub    %rdx,%rax
1403b07cd:	48 3b f0             	cmp    %rax,%rsi
1403b07d0:	77 27                	ja     0x1403b07f9
1403b07d2:	48 89 4f 10          	mov    %rcx,0x10(%rdi)
1403b07d6:	48 8b c7             	mov    %rdi,%rax
1403b07d9:	49 83 f8 0f          	cmp    $0xf,%r8
1403b07dd:	76 03                	jbe    0x1403b07e2
1403b07df:	48 8b 07             	mov    (%rdi),%rax
1403b07e2:	48 8d 1c 10          	lea    (%rax,%rdx,1),%rbx
1403b07e6:	4c 8b c6             	mov    %rsi,%r8
1403b07e9:	33 d2                	xor    %edx,%edx
1403b07eb:	48 8b cb             	mov    %rbx,%rcx
1403b07ee:	e8 bd ee b2 00       	call   0x140edf6b0
1403b07f3:	c6 04 33 00          	movb   $0x0,(%rbx,%rsi,1)
1403b07f7:	eb 19                	jmp    0x1403b0812
1403b07f9:	c6 44 24 20 00       	movb   $0x0,0x20(%rsp)
1403b07fe:	4c 8b ce             	mov    %rsi,%r9
1403b0801:	44 0f b6 44 24 78    	movzbl 0x78(%rsp),%r8d
1403b0807:	48 8b d6             	mov    %rsi,%rdx
1403b080a:	48 8b cf             	mov    %rdi,%rcx
1403b080d:	e8 9e 14 e2 ff       	call   0x1401d1cb0
1403b0812:	48 8b c7             	mov    %rdi,%rax
1403b0815:	48 8b 5c 24 70       	mov    0x70(%rsp),%rbx
1403b081a:	48 8b ac 24 80 00 00 	mov    0x80(%rsp),%rbp
1403b0821:	00
1403b0822:	48 83 c4 40          	add    $0x40,%rsp
1403b0826:	41 5f                	pop    %r15
1403b0828:	41 5e                	pop    %r14
1403b082a:	41 5c                	pop    %r12
1403b082c:	5f                   	pop    %rdi
1403b082d:	5e                   	pop    %rsi
1403b082e:	c3                   	ret
1403b082f:	cc                   	int3
1403b0830:	48 8b 44 24 28       	mov    0x28(%rsp),%rax
1403b0835:	4c 89 00             	mov    %r8,(%rax)
1403b0838:	b8 03 00 00 00       	mov    $0x3,%eax
1403b083d:	c3                   	ret
1403b083e:	cc                   	int3
1403b083f:	cc                   	int3
1403b0840:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1403b0845:	57                   	push   %rdi
1403b0846:	48 83 ec 20          	sub    $0x20,%rsp
1403b084a:	48 8b 79 10          	mov    0x10(%rcx),%rdi
1403b084e:	4d 8b c8             	mov    %r8,%r9
1403b0851:	48 8b d9             	mov    %rcx,%rbx
1403b0854:	48 3b fa             	cmp    %rdx,%rdi
1403b0857:	72 45                	jb     0x1403b089e
1403b0859:	48 8b c7             	mov    %rdi,%rax
1403b085c:	48 2b c2             	sub    %rdx,%rax
1403b085f:	49 3b c0             	cmp    %r8,%rax
1403b0862:	4c 0f 42 c8          	cmovb  %rax,%r9
1403b0866:	48 83 79 18 0f       	cmpq   $0xf,0x18(%rcx)
1403b086b:	48 8b c1             	mov    %rcx,%rax
1403b086e:	76 03                	jbe    0x1403b0873
1403b0870:	48 8b 01             	mov    (%rcx),%rax
1403b0873:	49 2b f9             	sub    %r9,%rdi
1403b0876:	48 8d 0c 10          	lea    (%rax,%rdx,1),%rcx
1403b087a:	4c 8b c7             	mov    %rdi,%r8
1403b087d:	4c 2b c2             	sub    %rdx,%r8
1403b0880:	4a 8d 14 09          	lea    (%rcx,%r9,1),%rdx
1403b0884:	49 ff c0             	inc    %r8
1403b0887:	e8 84 e7 b2 00       	call   0x140edf010
1403b088c:	48 8b c3             	mov    %rbx,%rax
1403b088f:	48 89 7b 10          	mov    %rdi,0x10(%rbx)
1403b0893:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1403b0898:	48 83 c4 20          	add    $0x20,%rsp
1403b089c:	5f                   	pop    %rdi
1403b089d:	c3                   	ret
1403b089e:	e8 0d cd de ff       	call   0x14019d5b0
1403b08a3:	cc                   	int3
1403b08a4:	cc                   	int3
1403b08a5:	cc                   	int3
1403b08a6:	cc                   	int3
1403b08a7:	cc                   	int3
1403b08a8:	cc                   	int3
1403b08a9:	cc                   	int3
1403b08aa:	cc                   	int3
1403b08ab:	cc                   	int3
1403b08ac:	cc                   	int3
1403b08ad:	cc                   	int3
1403b08ae:	cc                   	int3
1403b08af:	cc                   	int3
1403b08b0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1403b08b5:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
1403b08ba:	57                   	push   %rdi
1403b08bb:	48 83 ec 60          	sub    $0x60,%rsp
1403b08bf:	49 8b d9             	mov    %r9,%rbx
1403b08c2:	48 8b f2             	mov    %rdx,%rsi
1403b08c5:	48 8b f9             	mov    %rcx,%rdi
1403b08c8:	41 0f 10 00          	movups (%r8),%xmm0
1403b08cc:	4c 8b 11             	mov    (%rcx),%r10
1403b08cf:	4c 8b 41 18          	mov    0x18(%rcx),%r8
1403b08d3:	4d 85 c0             	test   %r8,%r8
1403b08d6:	0f 84 b5 00 00 00    	je     0x1403b0991
1403b08dc:	66 49 0f 7e c1       	movq   %xmm0,%r9
1403b08e1:	4d 2b ca             	sub    %r10,%r9
1403b08e4:	49 c1 f9 02          	sar    $0x2,%r9
1403b08e8:	49 c1 e1 05          	shl    $0x5,%r9
1403b08ec:	66 0f 73 d8 08       	psrldq $0x8,%xmm0
1403b08f1:	66 48 0f 7e c0       	movq   %xmm0,%rax
1403b08f6:	4c 03 c8             	add    %rax,%r9
1403b08f9:	79 22                	jns    0x1403b091d
1403b08fb:	49 8b c1             	mov    %r9,%rax
1403b08fe:	48 f7 d8             	neg    %rax
1403b0901:	74 1a                	je     0x1403b091d
1403b0903:	49 8b c1             	mov    %r9,%rax
1403b0906:	48 f7 d0             	not    %rax
1403b0909:	48 c1 e8 05          	shr    $0x5,%rax
1403b090d:	48 8d 04 85 04 00 00 	lea    0x4(,%rax,4),%rax
1403b0914:	00
1403b0915:	4d 8b da             	mov    %r10,%r11
1403b0918:	4c 2b d8             	sub    %rax,%r11
1403b091b:	eb 0b                	jmp    0x1403b0928
1403b091d:	49 8b c1             	mov    %r9,%rax
1403b0920:	48 c1 e8 05          	shr    $0x5,%rax
1403b0924:	4d 8d 1c 82          	lea    (%r10,%rax,4),%r11
1403b0928:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
1403b092f:	00 00
1403b0931:	4c 89 54 24 20       	mov    %r10,0x20(%rsp)
1403b0936:	0f 10 03             	movups (%rbx),%xmm0
1403b0939:	41 83 e1 1f          	and    $0x1f,%r9d
1403b093d:	66 48 0f 7e c2       	movq   %xmm0,%rdx
1403b0942:	49 2b d2             	sub    %r10,%rdx
1403b0945:	48 c1 fa 02          	sar    $0x2,%rdx
1403b0949:	48 c1 e2 05          	shl    $0x5,%rdx
1403b094d:	66 0f 73 d8 08       	psrldq $0x8,%xmm0
1403b0952:	66 48 0f 7e c0       	movq   %xmm0,%rax
1403b0957:	48 03 d0             	add    %rax,%rdx