1403866ba:	48 85 c9             	test   %rcx,%rcx
1403866bd:	74 24                	je     0x1403866e3
1403866bf:	8b 41 10             	mov    0x10(%rcx),%eax
1403866c2:	ff c8                	dec    %eax
1403866c4:	89 41 10             	mov    %eax,0x10(%rcx)
1403866c7:	85 c0                	test   %eax,%eax
1403866c9:	7f 18                	jg     0x1403866e3
1403866cb:	0f 88 84 00 00 00    	js     0x140386755
1403866d1:	48 8b 01             	mov    (%rcx),%rax
1403866d4:	ba 01 00 00 00       	mov    $0x1,%edx
1403866d9:	48 8b 00             	mov    (%rax),%rax
1403866dc:	ff 15 3e d3 bf 00    	call   *0xbfd33e(%rip)        # 0x140f83a20
1403866e2:	90                   	nop
1403866e3:	48 83 c3 08          	add    $0x8,%rbx
1403866e7:	48 3b df             	cmp    %rdi,%rbx
1403866ea:	75 cb                	jne    0x1403866b7
1403866ec:	4c 2b f6             	sub    %rsi,%r14
1403866ef:	49 c1 fe 03          	sar    $0x3,%r14
1403866f3:	4a 8d 14 f5 00 00 00 	lea    0x0(,%r14,8),%rdx
1403866fa:	00
1403866fb:	48 8b c6             	mov    %rsi,%rax
1403866fe:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140386705:	72 15                	jb     0x14038671c
140386707:	48 83 c2 27          	add    $0x27,%rdx
14038670b:	48 8b 76 f8          	mov    -0x8(%rsi),%rsi
14038670f:	48 2b c6             	sub    %rsi,%rax
140386712:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
140386716:	48 83 f8 1f          	cmp    $0x1f,%rax
14038671a:	77 5b                	ja     0x140386777
14038671c:	48 8b ce             	mov    %rsi,%rcx
14038671f:	e8 20 4a a9 00       	call   0x140e1b144
140386724:	90                   	nop
140386725:	49 8b cf             	mov    %r15,%rcx
140386728:	e8 93 0a 3d 00       	call   0x1407571c0
14038672d:	48 8b 4d 27          	mov    0x27(%rbp),%rcx
140386731:	48 33 cc             	xor    %rsp,%rcx
140386734:	e8 c7 4d a9 00       	call   0x140e1b500
140386739:	4c 8d 9c 24 a0 00 00 	lea    0xa0(%rsp),%r11
140386740:	00
140386741:	49 8b 5b 30          	mov    0x30(%r11),%rbx
140386745:	49 8b 73 48          	mov    0x48(%r11),%rsi
140386749:	49 8b e3             	mov    %r11,%rsp
14038674c:	41 5f                	pop    %r15
14038674e:	41 5e                	pop    %r14
140386750:	41 5c                	pop    %r12
140386752:	5f                   	pop    %rdi
140386753:	5d                   	pop    %rbp
140386754:	c3                   	ret
140386755:	b9 02 00 00 00       	mov    $0x2,%ecx
14038675a:	e8 a1 3f 40 00       	call   0x14078a700
14038675f:	90                   	nop
140386760:	e8 3f 3a aa 00       	call   0x140e2a1a4
140386765:	90                   	nop
140386766:	b9 02 00 00 00       	mov    $0x2,%ecx
14038676b:	e8 90 3f 40 00       	call   0x14078a700
140386770:	90                   	nop
140386771:	e8 1a 6e e1 ff       	call   0x14019d590
140386776:	90                   	nop
140386777:	e8 28 3a aa 00       	call   0x140e2a1a4
14038677c:	90                   	nop
14038677d:	b9 01 00 00 00       	mov    $0x1,%ecx
140386782:	e8 79 3f 40 00       	call   0x14078a700
140386787:	cc                   	int3
140386788:	33 c9                	xor    %ecx,%ecx
14038678a:	e8 71 3f 40 00       	call   0x14078a700
14038678f:	cc                   	int3
140386790:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140386795:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14038679a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14038679f:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
1403867a4:	41 56                	push   %r14
1403867a6:	48 83 ec 20          	sub    $0x20,%rsp
1403867aa:	48 8b 39             	mov    (%rcx),%rdi
1403867ad:	48 8b f1             	mov    %rcx,%rsi
1403867b0:	48 8b 49 10          	mov    0x10(%rcx),%rcx
1403867b4:	49 8b e8             	mov    %r8,%rbp
1403867b7:	48 2b cf             	sub    %rdi,%rcx
1403867ba:	48 8b da             	mov    %rdx,%rbx
1403867bd:	48 c1 f9 05          	sar    $0x5,%rcx
1403867c1:	4c 3b c1             	cmp    %rcx,%r8
1403867c4:	0f 86 ad 00 00 00    	jbe    0x140386877
1403867ca:	49 be ff ff ff ff ff 	movabs $0x7ffffffffffffff,%r14
1403867d1:	ff ff 07
1403867d4:	4d 3b c6             	cmp    %r14,%r8
1403867d7:	0f 87 68 01 00 00    	ja     0x140386945
1403867dd:	48 8b d1             	mov    %rcx,%rdx
1403867e0:	49 8b c6             	mov    %r14,%rax
1403867e3:	48 d1 ea             	shr    $1,%rdx
1403867e6:	48 2b c2             	sub    %rdx,%rax
1403867e9:	48 3b c8             	cmp    %rax,%rcx
1403867ec:	77 0b                	ja     0x1403867f9
1403867ee:	4c 8d 34 0a          	lea    (%rdx,%rcx,1),%r14
1403867f2:	4d 3b f0             	cmp    %r8,%r14
1403867f5:	4d 0f 42 f0          	cmovb  %r8,%r14
1403867f9:	48 85 ff             	test   %rdi,%rdi
1403867fc:	74 54                	je     0x140386852
1403867fe:	48 8b 56 08          	mov    0x8(%rsi),%rdx
140386802:	4c 8b c6             	mov    %rsi,%r8
140386805:	48 8b cf             	mov    %rdi,%rcx
140386808:	e8 43 0a e1 ff       	call   0x140197250
14038680d:	48 8b 0e             	mov    (%rsi),%rcx
140386810:	48 8b 56 10          	mov    0x10(%rsi),%rdx
140386814:	48 2b d1             	sub    %rcx,%rdx
140386817:	48 83 e2 e0          	and    $0xffffffffffffffe0,%rdx
14038681b:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140386822:	72 1c                	jb     0x140386840
140386824:	4c 8b 41 f8          	mov    -0x8(%rcx),%r8
140386828:	48 83 c2 27          	add    $0x27,%rdx
14038682c:	49 2b c8             	sub    %r8,%rcx
14038682f:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
140386833:	48 83 f8 1f          	cmp    $0x1f,%rax
140386837:	0f 87 02 01 00 00    	ja     0x14038693f
14038683d:	49 8b c8             	mov    %r8,%rcx
140386840:	e8 ff 48 a9 00       	call   0x140e1b144
140386845:	33 c0                	xor    %eax,%eax
140386847:	48 89 06             	mov    %rax,(%rsi)
14038684a:	48 89 46 08          	mov    %rax,0x8(%rsi)
14038684e:	48 89 46 10          	mov    %rax,0x10(%rsi)
140386852:	49 8b d6             	mov    %r14,%rdx
140386855:	48 8b ce             	mov    %rsi,%rcx
140386858:	e8 13 06 ef ff       	call   0x140276e70
14038685d:	4c 8b 06             	mov    (%rsi),%r8
140386860:	4c 8b ce             	mov    %rsi,%r9
140386863:	48 8b d5             	mov    %rbp,%rdx
140386866:	48 8b cb             	mov    %rbx,%rcx
140386869:	e8 a2 0f 00 00       	call   0x140387810
14038686e:	48 89 46 08          	mov    %rax,0x8(%rsi)
140386872:	e9 ad 00 00 00       	jmp    0x140386924
140386877:	4c 8b 46 08          	mov    0x8(%rsi),%r8
14038687b:	4d 8b f0             	mov    %r8,%r14
14038687e:	4c 2b f7             	sub    %rdi,%r14
140386881:	49 c1 fe 05          	sar    $0x5,%r14
140386885:	49 3b ee             	cmp    %r14,%rbp
140386888:	76 4c                	jbe    0x1403868d6
14038688a:	49 3b f8             	cmp    %r8,%rdi
14038688d:	74 30                	je     0x1403868bf
14038688f:	90                   	nop
140386890:	48 3b fb             	cmp    %rbx,%rdi
140386893:	74 19                	je     0x1403868ae
140386895:	48 83 7b 18 0f       	cmpq   $0xf,0x18(%rbx)
14038689a:	48 8b d3             	mov    %rbx,%rdx
14038689d:	76 03                	jbe    0x1403868a2
14038689f:	48 8b 13             	mov    (%rbx),%rdx
1403868a2:	4c 8b 43 10          	mov    0x10(%rbx),%r8
1403868a6:	48 8b cf             	mov    %rdi,%rcx
1403868a9:	e8 22 8b e1 ff       	call   0x14019f3d0
1403868ae:	4c 8b 46 08          	mov    0x8(%rsi),%r8
1403868b2:	48 83 c7 20          	add    $0x20,%rdi
1403868b6:	48 83 c3 20          	add    $0x20,%rbx
1403868ba:	49 3b f8             	cmp    %r8,%rdi
1403868bd:	75 d1                	jne    0x140386890
1403868bf:	49 2b ee             	sub    %r14,%rbp
1403868c2:	4c 8b ce             	mov    %rsi,%r9
1403868c5:	48 8b d5             	mov    %rbp,%rdx
1403868c8:	48 8b cb             	mov    %rbx,%rcx
1403868cb:	e8 40 0f 00 00       	call   0x140387810
1403868d0:	48 89 46 08          	mov    %rax,0x8(%rsi)
1403868d4:	eb 4e                	jmp    0x140386924
1403868d6:	4c 8b f5             	mov    %rbp,%r14
1403868d9:	49 c1 e6 05          	shl    $0x5,%r14
1403868dd:	4c 03 f7             	add    %rdi,%r14
1403868e0:	48 85 ed             	test   %rbp,%rbp
1403868e3:	74 2c                	je     0x140386911
1403868e5:	48 3b fb             	cmp    %rbx,%rdi
1403868e8:	74 19                	je     0x140386903
1403868ea:	48 83 7b 18 0f       	cmpq   $0xf,0x18(%rbx)
1403868ef:	48 8b d3             	mov    %rbx,%rdx
1403868f2:	76 03                	jbe    0x1403868f7
1403868f4:	48 8b 13             	mov    (%rbx),%rdx
1403868f7:	4c 8b 43 10          	mov    0x10(%rbx),%r8
1403868fb:	48 8b cf             	mov    %rdi,%rcx
1403868fe:	e8 cd 8a e1 ff       	call   0x14019f3d0
140386903:	48 83 c7 20          	add    $0x20,%rdi
140386907:	48 83 c3 20          	add    $0x20,%rbx
14038690b:	48 83 ed 01          	sub    $0x1,%rbp
14038690f:	75 d4                	jne    0x1403868e5
140386911:	48 8b 56 08          	mov    0x8(%rsi),%rdx
140386915:	4c 8b c6             	mov    %rsi,%r8
140386918:	49 8b ce             	mov    %r14,%rcx
14038691b:	e8 30 09 e1 ff       	call   0x140197250
140386920:	4c 89 76 08          	mov    %r14,0x8(%rsi)
140386924:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140386929:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
14038692e:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
140386933:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
140386938:	48 83 c4 20          	add    $0x20,%rsp
14038693c:	41 5e                	pop    %r14
14038693e:	c3                   	ret
14038693f:	e8 60 38 aa 00       	call   0x140e2a1a4
140386944:	cc                   	int3
140386945:	e8 46 6c e1 ff       	call   0x14019d590
14038694a:	cc                   	int3
14038694b:	cc                   	int3
14038694c:	cc                   	int3
14038694d:	cc                   	int3
14038694e:	cc                   	int3
14038694f:	cc                   	int3
140386950:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140386955:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14038695a:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
14038695f:	41 56                	push   %r14
140386961:	48 83 ec 20          	sub    $0x20,%rsp
140386965:	4c 8b f2             	mov    %rdx,%r14
140386968:	48 8b f1             	mov    %rcx,%rsi
14038696b:	48 8b 09             	mov    (%rcx),%rcx
14038696e:	49 8b f8             	mov    %r8,%rdi
140386971:	48 8b 56 10          	mov    0x10(%rsi),%rdx
140386975:	48 2b d1             	sub    %rcx,%rdx
140386978:	48 c1 fa 04          	sar    $0x4,%rdx
14038697c:	4c 3b c2             	cmp    %rdx,%r8
14038697f:	0f 86 99 00 00 00    	jbe    0x140386a1e
140386985:	48 bb ff ff ff ff ff 	movabs $0xfffffffffffffff,%rbx
14038698c:	ff ff 0f
14038698f:	4c 3b c3             	cmp    %rbx,%r8
140386992:	0f 87 06 01 00 00    	ja     0x140386a9e
140386998:	4c 8b c2             	mov    %rdx,%r8
14038699b:	48 8b c3             	mov    %rbx,%rax
14038699e:	49 d1 e8             	shr    $1,%r8
1403869a1:	49 2b c0             	sub    %r8,%rax
1403869a4:	48 3b d0             	cmp    %rax,%rdx
1403869a7:	77 0b                	ja     0x1403869b4
1403869a9:	49 8d 1c 10          	lea    (%r8,%rdx,1),%rbx
1403869ad:	48 3b df             	cmp    %rdi,%rbx
1403869b0:	48 0f 42 df          	cmovb  %rdi,%rbx
1403869b4:	48 85 c9             	test   %rcx,%rcx
1403869b7:	74 3b                	je     0x1403869f4
1403869b9:	48 c1 e2 04          	shl    $0x4,%rdx
1403869bd:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
1403869c4:	72 1c                	jb     0x1403869e2
1403869c6:	4c 8b 41 f8          	mov    -0x8(%rcx),%r8
1403869ca:	48 83 c2 27          	add    $0x27,%rdx
1403869ce:	49 2b c8             	sub    %r8,%rcx
1403869d1:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
1403869d5:	48 83 f8 1f          	cmp    $0x1f,%rax
1403869d9:	0f 87 b9 00 00 00    	ja     0x140386a98
1403869df:	49 8b c8             	mov    %r8,%rcx
1403869e2:	e8 5d 47 a9 00       	call   0x140e1b144
1403869e7:	33 c0                	xor    %eax,%eax
1403869e9:	48 89 06             	mov    %rax,(%rsi)
1403869ec:	48 89 46 08          	mov    %rax,0x8(%rsi)
1403869f0:	48 89 46 10          	mov    %rax,0x10(%rsi)
1403869f4:	48 8b d3             	mov    %rbx,%rdx
1403869f7:	48 8b ce             	mov    %rsi,%rcx
1403869fa:	e8 11 51 e8 ff       	call   0x14020bb10
1403869ff:	48 8b 1e             	mov    (%rsi),%rbx
140386a02:	49 8b d6             	mov    %r14,%rdx
140386a05:	48 c1 e7 04          	shl    $0x4,%rdi
140386a09:	48 8b cb             	mov    %rbx,%rcx
140386a0c:	4c 8b c7             	mov    %rdi,%r8
140386a0f:	e8 fc 85 b5 00       	call   0x140edf010
140386a14:	48 8d 04 1f          	lea    (%rdi,%rbx,1),%rax
140386a18:	48 89 46 08          	mov    %rax,0x8(%rsi)
140386a1c:	eb 64                	jmp    0x140386a82
140386a1e:	48 89 6c 24 30       	mov    %rbp,0x30(%rsp)
140386a23:	49 8b d6             	mov    %r14,%rdx
140386a26:	48 8b 6e 08          	mov    0x8(%rsi),%rbp
140386a2a:	48 2b e9             	sub    %rcx,%rbp
140386a2d:	48 c1 fd 04          	sar    $0x4,%rbp
140386a31:	48 3b fd             	cmp    %rbp,%rdi
140386a34:	76 33                	jbe    0x140386a69
140386a36:	48 8b dd             	mov    %rbp,%rbx
140386a39:	48 c1 e3 04          	shl    $0x4,%rbx
140386a3d:	4c 8b c3             	mov    %rbx,%r8
140386a40:	e8 cb 85 b5 00       	call   0x140edf010
140386a45:	48 2b fd             	sub    %rbp,%rdi
140386a48:	4a 8d 14 33          	lea    (%rbx,%r14,1),%rdx
140386a4c:	48 8b 5e 08          	mov    0x8(%rsi),%rbx
140386a50:	48 c1 e7 04          	shl    $0x4,%rdi
140386a54:	48 8b cb             	mov    %rbx,%rcx
140386a57:	4c 8b c7             	mov    %rdi,%r8
140386a5a:	e8 b1 85 b5 00       	call   0x140edf010
140386a5f:	48 8d 04 1f          	lea    (%rdi,%rbx,1),%rax
140386a63:	48 89 46 08          	mov    %rax,0x8(%rsi)
140386a67:	eb 14                	jmp    0x140386a7d
140386a69:	48 c1 e7 04          	shl    $0x4,%rdi
140386a6d:	4c 8b c7             	mov    %rdi,%r8
140386a70:	48 8d 1c 39          	lea    (%rcx,%rdi,1),%rbx
140386a74:	e8 97 85 b5 00       	call   0x140edf010
140386a79:	48 89 5e 08          	mov    %rbx,0x8(%rsi)
140386a7d:	48 8b 6c 24 30       	mov    0x30(%rsp),%rbp
140386a82:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
140386a87:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
140386a8c:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
140386a91:	48 83 c4 20          	add    $0x20,%rsp
140386a95:	41 5e                	pop    %r14
140386a97:	c3                   	ret
140386a98:	e8 07 37 aa 00       	call   0x140e2a1a4
140386a9d:	cc                   	int3
140386a9e:	e8 ed 6a e1 ff       	call   0x14019d590
140386aa3:	cc                   	int3
140386aa4:	cc                   	int3
140386aa5:	cc                   	int3
140386aa6:	cc                   	int3
140386aa7:	cc                   	int3
140386aa8:	cc                   	int3
140386aa9:	cc                   	int3
140386aaa:	cc                   	int3
140386aab:	cc                   	int3
140386aac:	cc                   	int3
140386aad:	cc                   	int3
140386aae:	cc                   	int3
140386aaf:	cc                   	int3
140386ab0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140386ab5:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
140386aba:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
140386abf:	56                   	push   %rsi
140386ac0:	57                   	push   %rdi
140386ac1:	41 56                	push   %r14
140386ac3:	48 83 ec 40          	sub    $0x40,%rsp
140386ac7:	44 8b f2             	mov    %edx,%r14d
140386aca:	48 8b d9             	mov    %rcx,%rbx
140386acd:	33 c0                	xor    %eax,%eax
140386acf:	89 44 24 30          	mov    %eax,0x30(%rsp)
140386ad3:	0f 57 c0             	xorps  %xmm0,%xmm0
140386ad6:	0f 11 01             	movups %xmm0,(%rcx)
140386ad9:	48 89 41 10          	mov    %rax,0x10(%rcx)
140386add:	48 c7 41 18 0f 00 00 	movq   $0xf,0x18(%rcx)
140386ae4:	00
140386ae5:	88 01                	mov    %al,(%rcx)
140386ae7:	c7 44 24 30 01 00 00 	movl   $0x1,0x30(%rsp)
140386aee:	00
140386aef:	49 8b 70 08          	mov    0x8(%r8),%rsi
140386af3:	48 85 f6             	test   %rsi,%rsi
140386af6:	74 64                	je     0x140386b5c
140386af8:	48 81 fe ff ff ff 7f 	cmp    $0x7fffffff,%rsi
140386aff:	77 7b                	ja     0x140386b7c
140386b01:	49 8b 28             	mov    (%r8),%rbp
140386b04:	89 44 24 20          	mov    %eax,0x20(%rsp)
140386b08:	45 33 c9             	xor    %r9d,%r9d
140386b0b:	44 8b c6             	mov    %esi,%r8d
140386b0e:	48 8b d5             	mov    %rbp,%rdx
140386b11:	41 8b ce             	mov    %r14d,%ecx
140386b14:	e8 d7 6b a7 00       	call   0x140dfd6f0
140386b19:	48 8b f8             	mov    %rax,%rdi
140386b1c:	48 c1 e8 20          	shr    $0x20,%rax
140386b20:	85 c0                	test   %eax,%eax
140386b22:	75 63                	jne    0x140386b87
140386b24:	48 63 d7             	movslq %edi,%rdx
140386b27:	45 33 c0             	xor    %r8d,%r8d
140386b2a:	48 8b cb             	mov    %rbx,%rcx
140386b2d:	e8 ee 38 e8 ff       	call   0x14020a420
140386b32:	4c 8b cb             	mov    %rbx,%r9
140386b35:	48 83 7b 18 0f       	cmpq   $0xf,0x18(%rbx)
140386b3a:	76 03                	jbe    0x140386b3f
140386b3c:	4c 8b 0b             	mov    (%rbx),%r9
140386b3f:	89 7c 24 20          	mov    %edi,0x20(%rsp)
140386b43:	44 8b c6             	mov    %esi,%r8d
140386b46:	48 8b d5             	mov    %rbp,%rdx
140386b49:	41 8b ce             	mov    %r14d,%ecx
140386b4c:	e8 9f 6b a7 00       	call   0x140dfd6f0