14001774a:	48 f7 d8             	neg    %rax
14001774d:	1b db                	sbb    %ebx,%ebx
14001774f:	81 e3 f8 ff ff bf    	and    $0xbffffff8,%ebx
140017755:	41 03 d8             	add    %r8d,%ebx
140017758:	eb 5d                	jmp    0x1400177b7
14001775a:	48 89 55 f0          	mov    %rdx,-0x10(%rbp)
14001775e:	48 8d 45 78          	lea    0x78(%rbp),%rax
140017762:	48 8b d7             	mov    %rdi,%rdx
140017765:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14001776a:	4c 8d 45 f0          	lea    -0x10(%rbp),%r8
14001776e:	48 8b ce             	mov    %rsi,%rcx
140017771:	e8 8e 01 00 00       	call   0x140017904
140017776:	48 8b 4d f0          	mov    -0x10(%rbp),%rcx
14001777a:	8b d8                	mov    %eax,%ebx
14001777c:	48 2b f9             	sub    %rcx,%rdi
14001777f:	48 89 7d f0          	mov    %rdi,-0x10(%rbp)
140017783:	4c 8d 2c 4e          	lea    (%rsi,%rcx,2),%r13
140017787:	4c 89 6d e8          	mov    %r13,-0x18(%rbp)
14001778b:	85 c0                	test   %eax,%eax
14001778d:	78 2c                	js     0x1400177bb
14001778f:	41 0f ba e7 09       	bt     $0x9,%r15d
140017794:	73 21                	jae    0x1400177b7
140017796:	49 8b c6             	mov    %r14,%rax
140017799:	83 e0 01             	and    $0x1,%eax
14001779c:	4c 8d 04 78          	lea    (%rax,%rdi,2),%r8
1400177a0:	49 83 f8 02          	cmp    $0x2,%r8
1400177a4:	76 11                	jbe    0x1400177b7
1400177a6:	49 83 c0 fe          	add    $0xfffffffffffffffe,%r8
1400177aa:	41 0f b6 d7          	movzbl %r15b,%edx
1400177ae:	49 8d 4d 02          	lea    0x2(%r13),%rcx
1400177b2:	e8 b8 b3 ff ff       	call   0x140012b6f
1400177b7:	85 db                	test   %ebx,%ebx
1400177b9:	79 47                	jns    0x140017802
1400177bb:	41 f7 c7 00 1c 00 00 	test   $0x1c00,%r15d
1400177c2:	74 2a                	je     0x1400177ee
1400177c4:	4d 85 f6             	test   %r14,%r14
1400177c7:	74 25                	je     0x1400177ee
1400177c9:	48 8d 45 f0          	lea    -0x10(%rbp),%rax
1400177cd:	44 89 7c 24 28       	mov    %r15d,0x28(%rsp)
1400177d2:	4c 8d 4d e8          	lea    -0x18(%rbp),%r9
1400177d6:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1400177db:	49 8b d6             	mov    %r14,%rdx
1400177de:	48 8b ce             	mov    %rsi,%rcx
1400177e1:	e8 5e 00 00 00       	call   0x140017844
1400177e6:	4c 8b 6d e8          	mov    -0x18(%rbp),%r13
1400177ea:	48 8b 7d f0          	mov    -0x10(%rbp),%rdi
1400177ee:	b9 00 00 00 80       	mov    $0x80000000,%ecx
1400177f3:	8d 04 0b             	lea    (%rbx,%rcx,1),%eax
1400177f6:	85 c1                	test   %eax,%ecx
1400177f8:	75 08                	jne    0x140017802
1400177fa:	81 fb 05 00 00 80    	cmp    $0x80000005,%ebx
140017800:	75 27                	jne    0x140017829
140017802:	48 8b 45 58          	mov    0x58(%rbp),%rax
140017806:	48 85 c0             	test   %rax,%rax
140017809:	74 03                	je     0x14001780e
14001780b:	4c 89 28             	mov    %r13,(%rax)
14001780e:	4d 85 e4             	test   %r12,%r12
140017811:	74 16                	je     0x140017829
140017813:	41 83 e6 01          	and    $0x1,%r14d
140017817:	49 8d 04 7e          	lea    (%r14,%rdi,2),%rax
14001781b:	49 89 04 24          	mov    %rax,(%r12)
14001781f:	eb 08                	jmp    0x140017829
140017821:	48 85 ff             	test   %rdi,%rdi
140017824:	74 03                	je     0x140017829
140017826:	66 89 16             	mov    %dx,(%rsi)
140017829:	8b c3                	mov    %ebx,%eax
14001782b:	48 83 c4 48          	add    $0x48,%rsp
14001782f:	41 5f                	pop    %r15
140017831:	41 5e                	pop    %r14
140017833:	41 5d                	pop    %r13
140017835:	41 5c                	pop    %r12
140017837:	5f                   	pop    %rdi
140017838:	5e                   	pop    %rsi
140017839:	5b                   	pop    %rbx
14001783a:	5d                   	pop    %rbp
14001783b:	c3                   	ret
14001783c:	cc                   	int3
14001783d:	cc                   	int3
14001783e:	cc                   	int3
14001783f:	cc                   	int3
140017840:	cc                   	int3
140017841:	cc                   	int3
140017842:	cc                   	int3
140017843:	cc                   	int3
140017844:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140017849:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
14001784e:	48 89 7c 24 18       	mov    %rdi,0x18(%rsp)
140017853:	41 54                	push   %r12
140017855:	41 56                	push   %r14
140017857:	41 57                	push   %r15
140017859:	48 83 ec 20          	sub    $0x20,%rsp
14001785d:	4c 8b 7c 24 60       	mov    0x60(%rsp),%r15
140017862:	48 8b fa             	mov    %rdx,%rdi
140017865:	45 33 e4             	xor    %r12d,%r12d
140017868:	4d 8b f1             	mov    %r9,%r14
14001786b:	48 d1 ef             	shr    $1,%rdi
14001786e:	48 8b f1             	mov    %rcx,%rsi
140017871:	74 14                	je     0x140017887
140017873:	f7 44 24 68 00 10 00 	testl  $0x1000,0x68(%rsp)
14001787a:	00
14001787b:	74 0a                	je     0x140017887
14001787d:	49 89 09             	mov    %rcx,(%r9)
140017880:	49 89 3f             	mov    %rdi,(%r15)
140017883:	66 44 89 21          	mov    %r12w,(%rcx)
140017887:	f7 44 24 68 00 04 00 	testl  $0x400,0x68(%rsp)
14001788e:	00
14001788f:	74 36                	je     0x1400178c7
140017891:	0f b6 5c 24 68       	movzbl 0x68(%rsp),%ebx
140017896:	4c 8b c2             	mov    %rdx,%r8
140017899:	8b d3                	mov    %ebx,%edx
14001789b:	e8 cf b2 ff ff       	call   0x140012b6f
1400178a0:	85 db                	test   %ebx,%ebx
1400178a2:	75 08                	jne    0x1400178ac
1400178a4:	49 89 36             	mov    %rsi,(%r14)
1400178a7:	49 89 3f             	mov    %rdi,(%r15)
1400178aa:	eb 1b                	jmp    0x1400178c7
1400178ac:	48 85 ff             	test   %rdi,%rdi
1400178af:	74 2f                	je     0x1400178e0
1400178b1:	48 8d 46 fe          	lea    -0x2(%rsi),%rax
1400178b5:	49 c7 07 01 00 00 00 	movq   $0x1,(%r15)
1400178bc:	48 8d 04 78          	lea    (%rax,%rdi,2),%rax
1400178c0:	49 89 06             	mov    %rax,(%r14)
1400178c3:	66 44 89 20          	mov    %r12w,(%rax)
1400178c7:	48 85 ff             	test   %rdi,%rdi
1400178ca:	74 14                	je     0x1400178e0
1400178cc:	f7 44 24 68 00 08 00 	testl  $0x800,0x68(%rsp)
1400178d3:	00
1400178d4:	74 0a                	je     0x1400178e0
1400178d6:	49 89 36             	mov    %rsi,(%r14)
1400178d9:	49 89 3f             	mov    %rdi,(%r15)
1400178dc:	66 44 89 26          	mov    %r12w,(%rsi)
1400178e0:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1400178e5:	33 c0                	xor    %eax,%eax
1400178e7:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
1400178ec:	48 8b 7c 24 50       	mov    0x50(%rsp),%rdi
1400178f1:	48 83 c4 20          	add    $0x20,%rsp
1400178f5:	41 5f                	pop    %r15
1400178f7:	41 5e                	pop    %r14
1400178f9:	41 5c                	pop    %r12
1400178fb:	c3                   	ret
1400178fc:	cc                   	int3
1400178fd:	cc                   	int3
1400178fe:	cc                   	int3
1400178ff:	cc                   	int3
140017900:	cc                   	int3
140017901:	cc                   	int3
140017902:	cc                   	int3
140017903:	cc                   	int3
140017904:	4c 8b dc             	mov    %rsp,%r11
140017907:	49 89 5b 08          	mov    %rbx,0x8(%r11)
14001790b:	49 89 6b 10          	mov    %rbp,0x10(%r11)
14001790f:	49 89 73 18          	mov    %rsi,0x18(%r11)
140017913:	49 89 7b 20          	mov    %rdi,0x20(%r11)
140017917:	41 56                	push   %r14
140017919:	48 83 ec 30          	sub    $0x30,%rsp
14001791d:	48 8b 44 24 60       	mov    0x60(%rsp),%rax
140017922:	48 8d 5a ff          	lea    -0x1(%rdx),%rbx
140017926:	49 8b f8             	mov    %r8,%rdi
140017929:	49 89 43 e8          	mov    %rax,-0x18(%r11)
14001792d:	45 33 f6             	xor    %r14d,%r14d
140017930:	4c 8b c3             	mov    %rbx,%r8
140017933:	48 8b f1             	mov    %rcx,%rsi
140017936:	41 8b ee             	mov    %r14d,%ebp
140017939:	48 ff 15 b8 34 00 00 	rex.W call *0x34b8(%rip)        # 0x14001adf8
140017940:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140017945:	85 c0                	test   %eax,%eax
140017947:	78 0e                	js     0x140017957
140017949:	48 98                	cltq
14001794b:	48 3b c3             	cmp    %rbx,%rax
14001794e:	77 07                	ja     0x140017957
140017950:	74 0a                	je     0x14001795c
140017952:	48 8b d8             	mov    %rax,%rbx
140017955:	eb 0a                	jmp    0x140017961
140017957:	bd 05 00 00 80       	mov    $0x80000005,%ebp
14001795c:	66 44 89 34 5e       	mov    %r14w,(%rsi,%rbx,2)
140017961:	48 85 ff             	test   %rdi,%rdi
140017964:	74 03                	je     0x140017969
140017966:	48 89 1f             	mov    %rbx,(%rdi)
140017969:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
14001796e:	8b c5                	mov    %ebp,%eax
140017970:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
140017975:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
14001797a:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
14001797f:	48 83 c4 30          	add    $0x30,%rsp
140017983:	41 5e                	pop    %r14
140017985:	c3                   	ret
140017986:	cc                   	int3
140017987:	cc                   	int3
140017988:	cc                   	int3
140017989:	cc                   	int3
14001798a:	cc                   	int3
14001798b:	cc                   	int3
14001798c:	cc                   	int3
14001798d:	cc                   	int3
14001798e:	cc                   	int3
14001798f:	cc                   	int3
140017990:	48 8b c4             	mov    %rsp,%rax
140017993:	48 89 58 08          	mov    %rbx,0x8(%rax)
140017997:	48 89 70 10          	mov    %rsi,0x10(%rax)
14001799b:	48 89 78 18          	mov    %rdi,0x18(%rax)
14001799f:	55                   	push   %rbp
1400179a0:	48 8d a8 08 fe ff ff 	lea    -0x1f8(%rax),%rbp
1400179a7:	48 81 ec f0 02 00 00 	sub    $0x2f0,%rsp
1400179ae:	48 8b 05 bb 14 01 00 	mov    0x114bb(%rip),%rax        # 0x140028e70
1400179b5:	48 33 c4             	xor    %rsp,%rax
1400179b8:	48 89 85 e0 01 00 00 	mov    %rax,0x1e0(%rbp)
1400179bf:	48 83 64 24 60 00    	andq   $0x0,0x60(%rsp)
1400179c5:	48 8d 05 e4 20 01 00 	lea    0x120e4(%rip),%rax        # 0x140029ab0
1400179cc:	0f 57 c0             	xorps  %xmm0,%xmm0
1400179cf:	c7 44 24 28 21 40 00 	movl   $0x4021,0x28(%rsp)
1400179d6:	00
1400179d7:	33 db                	xor    %ebx,%ebx
1400179d9:	48 89 45 a8          	mov    %rax,-0x58(%rbp)
1400179dd:	48 21 5d a0          	and    %rbx,-0x60(%rbp)
1400179e1:	4c 8d 4c 24 78       	lea    0x78(%rsp),%r9
1400179e6:	4c 8d 45 98          	lea    -0x68(%rbp),%r8
1400179ea:	c7 45 98 30 00 00 00 	movl   $0x30,-0x68(%rbp)
1400179f1:	ba 01 00 10 00       	mov    $0x100001,%edx
1400179f6:	c7 45 b0 40 00 00 00 	movl   $0x40,-0x50(%rbp)
1400179fd:	48 8d 4c 24 60       	lea    0x60(%rsp),%rcx
140017a02:	c7 44 24 20 03 00 00 	movl   $0x3,0x20(%rsp)
140017a09:	00
140017a0a:	f3 0f 7f 45 b8       	movdqu %xmm0,-0x48(%rbp)
140017a0f:	48 ff 15 4a 33 00 00 	rex.W call *0x334a(%rip)        # 0x14001ad60
140017a16:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140017a1b:	85 c0                	test   %eax,%eax
140017a1d:	0f 88 11 01 00 00    	js     0x140017b34
140017a23:	65 48 8b 0c 25 60 00 	mov    %gs:0x60,%rcx
140017a2a:	00 00
140017a2c:	33 d2                	xor    %edx,%edx
140017a2e:	41 b8 a8 08 00 00    	mov    $0x8a8,%r8d
140017a34:	48 8b 49 30          	mov    0x30(%rcx),%rcx
140017a38:	48 ff 15 71 33 00 00 	rex.W call *0x3371(%rip)        # 0x14001adb0
140017a3f:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140017a44:	48 8b d8             	mov    %rax,%rbx
140017a47:	48 85 c0             	test   %rax,%rax
140017a4a:	0f 84 e4 00 00 00    	je     0x140017b34
140017a50:	48 8d 15 91 bd 00 00 	lea    0xbd91(%rip),%rdx        # 0x1400237e8
140017a57:	48 8d 4c 24 68       	lea    0x68(%rsp),%rcx
140017a5c:	48 ff 15 f5 32 00 00 	rex.W call *0x32f5(%rip)        # 0x14001ad58
140017a63:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140017a68:	c6 44 24 50 01       	movb   $0x1,0x50(%rsp)
140017a6d:	eb 73                	jmp    0x140017ae2
140017a6f:	85 c0                	test   %eax,%eax
140017a71:	0f 88 bd 00 00 00    	js     0x140017b34
140017a77:	48 8d b3 a8 08 00 00 	lea    0x8a8(%rbx),%rsi
140017a7e:	48 8b fb             	mov    %rbx,%rdi
140017a81:	48 3b de             	cmp    %rsi,%rbx
140017a84:	73 57                	jae    0x140017add
140017a86:	4c 8b 0d 2b 20 01 00 	mov    0x1202b(%rip),%r9        # 0x140029ab8
140017a8d:	48 8d 47 0c          	lea    0xc(%rdi),%rax
140017a91:	4c 8d 05 70 bd 00 00 	lea    0xbd70(%rip),%r8        # 0x140023808
140017a98:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140017a9d:	ba 0a 02 00 00       	mov    $0x20a,%edx
140017aa2:	48 8d 4d d0          	lea    -0x30(%rbp),%rcx
140017aa6:	e8 91 a5 fe ff       	call   0x14000203c
140017aab:	85 c0                	test   %eax,%eax
140017aad:	78 1f                	js     0x140017ace
140017aaf:	48 8d 55 d0          	lea    -0x30(%rbp),%rdx
140017ab3:	48 8d 4d 88          	lea    -0x78(%rbp),%rcx
140017ab7:	48 ff 15 9a 32 00 00 	rex.W call *0x329a(%rip)        # 0x14001ad58
140017abe:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140017ac3:	b2 01                	mov    $0x1,%dl
140017ac5:	48 8d 4d 88          	lea    -0x78(%rbp),%rcx
140017ac9:	e8 46 05 00 00       	call   0x140018014
140017ace:	83 3f 00             	cmpl   $0x0,(%rdi)
140017ad1:	74 0a                	je     0x140017add
140017ad3:	8b 07                	mov    (%rdi),%eax
140017ad5:	48 03 f8             	add    %rax,%rdi
140017ad8:	48 3b fe             	cmp    %rsi,%rdi
140017adb:	72 a9                	jb     0x140017a86
140017add:	c6 44 24 50 00       	movb   $0x0,0x50(%rsp)
140017ae2:	48 8b 4c 24 60       	mov    0x60(%rsp),%rcx
140017ae7:	48 8d 44 24 68       	lea    0x68(%rsp),%rax
140017aec:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
140017af1:	45 33 c9             	xor    %r9d,%r9d
140017af4:	c6 44 24 40 00       	movb   $0x0,0x40(%rsp)
140017af9:	48 8d 44 24 78       	lea    0x78(%rsp),%rax
140017afe:	c7 44 24 38 0c 00 00 	movl   $0xc,0x38(%rsp)
140017b05:	00
140017b06:	45 33 c0             	xor    %r8d,%r8d
140017b09:	c7 44 24 30 a8 08 00 	movl   $0x8a8,0x30(%rsp)
140017b10:	00
140017b11:	33 d2                	xor    %edx,%edx
140017b13:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
140017b18:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140017b1d:	48 ff 15 a4 35 00 00 	rex.W call *0x35a4(%rip)        # 0x14001b0c8
140017b24:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140017b29:	3d 0f 00 00 c0       	cmp    $0xc000000f,%eax
140017b2e:	0f 85 3b ff ff ff    	jne    0x140017a6f
140017b34:	4c 8d 05 55 49 00 00 	lea    0x4955(%rip),%r8        # 0x14001c490
140017b3b:	b9 02 00 00 00       	mov    $0x2,%ecx
140017b40:	48 8d 15 01 41 00 00 	lea    0x4101(%rip),%rdx        # 0x14001bc48
140017b47:	48 ff 15 82 35 00 00 	rex.W call *0x3582(%rip)        # 0x14001b0d0
140017b4e:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140017b53:	48 85 db             	test   %rbx,%rbx
140017b56:	74 1e                	je     0x140017b76
140017b58:	65 48 8b 0c 25 60 00 	mov    %gs:0x60,%rcx
140017b5f:	00 00
140017b61:	4c 8b c3             	mov    %rbx,%r8
140017b64:	33 d2                	xor    %edx,%edx
140017b66:	48 8b 49 30          	mov    0x30(%rcx),%rcx
140017b6a:	48 ff 15 47 32 00 00 	rex.W call *0x3247(%rip)        # 0x14001adb8
140017b71:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140017b76:	48 8b 4c 24 60       	mov    0x60(%rsp),%rcx
140017b7b:	48 85 c9             	test   %rcx,%rcx
140017b7e:	74 0c                	je     0x140017b8c
140017b80:	48 ff 15 e9 31 00 00 	rex.W call *0x31e9(%rip)        # 0x14001ad70
140017b87:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140017b8c:	48 8b 8d e0 01 00 00 	mov    0x1e0(%rbp),%rcx
140017b93:	48 33 cc             	xor    %rsp,%rcx
140017b96:	e8 e5 6d ff ff       	call   0x14000e980
140017b9b:	4c 8d 9c 24 f0 02 00 	lea    0x2f0(%rsp),%r11
140017ba2:	00
140017ba3:	49 8b 5b 10          	mov    0x10(%r11),%rbx
140017ba7:	49 8b 73 18          	mov    0x18(%r11),%rsi
140017bab:	49 8b 7b 20          	mov    0x20(%r11),%rdi
140017baf:	49 8b e3             	mov    %r11,%rsp
140017bb2:	5d                   	pop    %rbp
140017bb3:	c3                   	ret
140017bb4:	cc                   	int3
140017bb5:	cc                   	int3
140017bb6:	cc                   	int3
140017bb7:	cc                   	int3
140017bb8:	cc                   	int3
140017bb9:	cc                   	int3
140017bba:	cc                   	int3
140017bbb:	cc                   	int3
140017bbc:	cc                   	int3
140017bbd:	cc                   	int3
140017bbe:	cc                   	int3
140017bbf:	cc                   	int3
140017bc0:	8b 05 9a 1f 01 00    	mov    0x11f9a(%rip),%eax        # 0x140029b60
140017bc6:	41 83 f9 04          	cmp    $0x4,%r9d
140017bca:	b9 01 00 00 00       	mov    $0x1,%ecx
140017bcf:	0f 44 c1             	cmove  %ecx,%eax
140017bd2:	89 05 88 1f 01 00    	mov    %eax,0x11f88(%rip)        # 0x140029b60
140017bd8:	33 c0                	xor    %eax,%eax
140017bda:	c3                   	ret
140017bdb:	cc                   	int3
140017bdc:	cc                   	int3
140017bdd:	cc                   	int3
140017bde:	cc                   	int3
140017bdf:	cc                   	int3
140017be0:	cc                   	int3
140017be1:	cc                   	int3
140017be2:	cc                   	int3
140017be3:	cc                   	int3
140017be4:	cc                   	int3
140017be5:	cc                   	int3