140362854:	0f ba e6 0c          	bt     $0xc,%esi
140362858:	73 2c                	jae    0x140362886
14036285a:	48 85 db             	test   %rbx,%rbx
14036285d:	74 27                	je     0x140362886
14036285f:	8b 43 10             	mov    0x10(%rbx),%eax
140362862:	ff c8                	dec    %eax
140362864:	89 43 10             	mov    %eax,0x10(%rbx)
140362867:	85 c0                	test   %eax,%eax
140362869:	7f 1b                	jg     0x140362886
14036286b:	0f 88 c4 02 00 00    	js     0x140362b35
140362871:	48 8b 03             	mov    (%rbx),%rax
140362874:	ba 01 00 00 00       	mov    $0x1,%edx
140362879:	48 8b cb             	mov    %rbx,%rcx
14036287c:	48 8b 00             	mov    (%rax),%rax
14036287f:	ff 15 9b 11 c2 00    	call   *0xc2119b(%rip)        # 0x140f83a20
140362885:	90                   	nop
140362886:	40 84 ff             	test   %dil,%dil
140362889:	0f 84 96 01 00 00    	je     0x140362a25
14036288f:	45 33 c0             	xor    %r8d,%r8d
140362892:	49 8b d7             	mov    %r15,%rdx
140362895:	48 8d 4d 87          	lea    -0x79(%rbp),%rcx
140362899:	e8 02 03 01 00       	call   0x140372ba0
14036289e:	48 8b 08             	mov    (%rax),%rcx
1403628a1:	4c 89 30             	mov    %r14,(%rax)
1403628a4:	48 89 4d ef          	mov    %rcx,-0x11(%rbp)
1403628a8:	4c 8b 05 b9 95 0b 01 	mov    0x10b95b9(%rip),%r8        # 0x14141be68
1403628af:	41 8b 98 58 01 00 00 	mov    0x158(%r8),%ebx
1403628b6:	45 8b 80 54 01 00 00 	mov    0x154(%r8),%r8d
1403628bd:	49 8b d7             	mov    %r15,%rdx
1403628c0:	48 8d 4d a7          	lea    -0x59(%rbp),%rcx
1403628c4:	e8 d7 02 01 00       	call   0x140372ba0
1403628c9:	48 8b 38             	mov    (%rax),%rdi
1403628cc:	4c 89 30             	mov    %r14,(%rax)
1403628cf:	48 89 7d bf          	mov    %rdi,-0x41(%rbp)
1403628d3:	44 8b c3             	mov    %ebx,%r8d
1403628d6:	48 8d 55 bf          	lea    -0x41(%rbp),%rdx
1403628da:	48 8d 4d 9f          	lea    -0x61(%rbp),%rcx
1403628de:	e8 bd 02 01 00       	call   0x140372ba0
1403628e3:	48 8b 08             	mov    (%rax),%rcx
1403628e6:	4c 89 30             	mov    %r14,(%rax)
1403628e9:	48 89 4d f7          	mov    %rcx,-0x9(%rbp)
1403628ed:	48 8b 05 84 05 0d 01 	mov    0x10d0584(%rip),%rax        # 0x141432e78
1403628f4:	48 8b 48 58          	mov    0x58(%rax),%rcx
1403628f8:	48 89 4d ff          	mov    %rcx,-0x1(%rbp)
1403628fc:	48 85 c9             	test   %rcx,%rcx
1403628ff:	74 23                	je     0x140362924
140362901:	8b 41 10             	mov    0x10(%rcx),%eax
140362904:	ff c0                	inc    %eax
140362906:	89 41 10             	mov    %eax,0x10(%rcx)
140362909:	83 f8 01             	cmp    $0x1,%eax
14036290c:	0f 8e 2e 02 00 00    	jle    0x140362b40
140362912:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
140362917:	0f 84 2b 02 00 00    	je     0x140362b48
14036291d:	48 8b 05 54 05 0d 01 	mov    0x10d0554(%rip),%rax        # 0x141432e78
140362924:	48 8b 48 60          	mov    0x60(%rax),%rcx
140362928:	48 89 4d 07          	mov    %rcx,0x7(%rbp)
14036292c:	48 85 c9             	test   %rcx,%rcx
14036292f:	74 1c                	je     0x14036294d
140362931:	8b 41 10             	mov    0x10(%rcx),%eax
140362934:	ff c0                	inc    %eax
140362936:	89 41 10             	mov    %eax,0x10(%rcx)
140362939:	83 f8 01             	cmp    $0x1,%eax
14036293c:	0f 8e 11 02 00 00    	jle    0x140362b53
140362942:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
140362947:	0f 84 0e 02 00 00    	je     0x140362b5b
14036294d:	48 8d 45 ef          	lea    -0x11(%rbp),%rax
140362951:	48 89 45 d7          	mov    %rax,-0x29(%rbp)
140362955:	48 8d 45 0f          	lea    0xf(%rbp),%rax
140362959:	48 89 45 df          	mov    %rax,-0x21(%rbp)
14036295d:	0f 28 45 d7          	movaps -0x29(%rbp),%xmm0
140362961:	66 0f 7f 45 d7       	movdqa %xmm0,-0x29(%rbp)
140362966:	4c 8d 44 24 34       	lea    0x34(%rsp),%r8
14036296b:	48 8d 55 d7          	lea    -0x29(%rbp),%rdx
14036296f:	48 8d 4d 0f          	lea    0xf(%rbp),%rcx
140362973:	e8 d8 d4 e3 ff       	call   0x14019fe50
140362978:	48 8b d8             	mov    %rax,%rbx
14036297b:	48 89 45 8f          	mov    %rax,-0x71(%rbp)
14036297f:	48 8b 0d ea 8c 0b 01 	mov    0x10b8cea(%rip),%rcx        # 0x14141b670
140362986:	4c 8b 45 e7          	mov    -0x19(%rbp),%r8
14036298a:	4d 85 c0             	test   %r8,%r8
14036298d:	74 04                	je     0x140362993
14036298f:	4d 89 70 60          	mov    %r14,0x60(%r8)
140362993:	48 8b 11             	mov    (%rcx),%rdx
140362996:	48 8b 42 38          	mov    0x38(%rdx),%rax
14036299a:	4d 8b c8             	mov    %r8,%r9
14036299d:	4c 8b c3             	mov    %rbx,%r8
1403629a0:	48 8d 55 c7          	lea    -0x39(%rbp),%rdx
1403629a4:	ff 15 76 10 c2 00    	call   *0xc21076(%rip)        # 0x140f83a20
1403629aa:	90                   	nop
1403629ab:	48 8b cb             	mov    %rbx,%rcx
1403629ae:	e8 8d cb e3 ff       	call   0x14019f540
1403629b3:	90                   	nop
1403629b4:	48 8b 4d c7          	mov    -0x39(%rbp),%rcx
1403629b8:	48 85 c9             	test   %rcx,%rcx
1403629bb:	74 24                	je     0x1403629e1
1403629bd:	8b 41 10             	mov    0x10(%rcx),%eax
1403629c0:	ff c8                	dec    %eax
1403629c2:	89 41 10             	mov    %eax,0x10(%rcx)
1403629c5:	85 c0                	test   %eax,%eax
1403629c7:	7f 18                	jg     0x1403629e1
1403629c9:	0f 88 97 01 00 00    	js     0x140362b66
1403629cf:	48 8b 01             	mov    (%rcx),%rax
1403629d2:	ba 01 00 00 00       	mov    $0x1,%edx
1403629d7:	48 8b 00             	mov    (%rax),%rax
1403629da:	ff 15 40 10 c2 00    	call   *0xc21040(%rip)        # 0x140f83a20
1403629e0:	90                   	nop
1403629e1:	4c 8d 0d 08 bb e3 ff 	lea    -0x1c44f8(%rip),%r9        # 0x14019e4f0
1403629e8:	ba 08 00 00 00       	mov    $0x8,%edx
1403629ed:	41 b8 04 00 00 00    	mov    $0x4,%r8d
1403629f3:	48 8d 4d ef          	lea    -0x11(%rbp),%rcx
1403629f7:	e8 50 8b ab 00       	call   0x140e1b54c
1403629fc:	90                   	nop
1403629fd:	48 85 ff             	test   %rdi,%rdi
140362a00:	74 23                	je     0x140362a25
140362a02:	8b 47 10             	mov    0x10(%rdi),%eax
140362a05:	ff c8                	dec    %eax
140362a07:	89 47 10             	mov    %eax,0x10(%rdi)
140362a0a:	85 c0                	test   %eax,%eax
140362a0c:	7f 17                	jg     0x140362a25
140362a0e:	78 30                	js     0x140362a40
140362a10:	48 8b 07             	mov    (%rdi),%rax
140362a13:	ba 01 00 00 00       	mov    $0x1,%edx
140362a18:	48 8b cf             	mov    %rdi,%rcx
140362a1b:	48 8b 00             	mov    (%rax),%rax
140362a1e:	ff 15 fc 0f c2 00    	call   *0xc20ffc(%rip)        # 0x140f83a20
140362a24:	90                   	nop
140362a25:	48 8b 9c 24 28 01 00 	mov    0x128(%rsp),%rbx
140362a2c:	00
140362a2d:	48 81 c4 e0 00 00 00 	add    $0xe0,%rsp
140362a34:	41 5f                	pop    %r15
140362a36:	41 5e                	pop    %r14
140362a38:	41 5d                	pop    %r13
140362a3a:	41 5c                	pop    %r12
140362a3c:	5f                   	pop    %rdi
140362a3d:	5e                   	pop    %rsi
140362a3e:	5d                   	pop    %rbp
140362a3f:	c3                   	ret
140362a40:	b9 02 00 00 00       	mov    $0x2,%ecx
140362a45:	e8 b6 7c 42 00       	call   0x14078a700
140362a4a:	90                   	nop
140362a4b:	b9 02 00 00 00       	mov    $0x2,%ecx
140362a50:	e8 ab 7c 42 00       	call   0x14078a700
140362a55:	90                   	nop
140362a56:	b9 02 00 00 00       	mov    $0x2,%ecx
140362a5b:	e8 a0 7c 42 00       	call   0x14078a700
140362a60:	90                   	nop
140362a61:	b9 02 00 00 00       	mov    $0x2,%ecx
140362a66:	e8 95 7c 42 00       	call   0x14078a700
140362a6b:	90                   	nop
140362a6c:	b9 02 00 00 00       	mov    $0x2,%ecx
140362a71:	e8 8a 7c 42 00       	call   0x14078a700
140362a76:	90                   	nop
140362a77:	b9 02 00 00 00       	mov    $0x2,%ecx
140362a7c:	e8 7f 7c 42 00       	call   0x14078a700
140362a81:	90                   	nop
140362a82:	33 c9                	xor    %ecx,%ecx
140362a84:	e8 77 7c 42 00       	call   0x14078a700
140362a89:	cc                   	int3
140362a8a:	b9 01 00 00 00       	mov    $0x1,%ecx
140362a8f:	e8 6c 7c 42 00       	call   0x14078a700
140362a94:	90                   	nop
140362a95:	b9 02 00 00 00       	mov    $0x2,%ecx
140362a9a:	e8 61 7c 42 00       	call   0x14078a700
140362a9f:	90                   	nop
140362aa0:	b9 02 00 00 00       	mov    $0x2,%ecx
140362aa5:	e8 56 7c 42 00       	call   0x14078a700
140362aaa:	90                   	nop
140362aab:	b9 02 00 00 00       	mov    $0x2,%ecx
140362ab0:	e8 4b 7c 42 00       	call   0x14078a700
140362ab5:	90                   	nop
140362ab6:	b9 02 00 00 00       	mov    $0x2,%ecx
140362abb:	e8 40 7c 42 00       	call   0x14078a700
140362ac0:	90                   	nop
140362ac1:	b9 02 00 00 00       	mov    $0x2,%ecx
140362ac6:	e8 35 7c 42 00       	call   0x14078a700
140362acb:	90                   	nop
140362acc:	b9 02 00 00 00       	mov    $0x2,%ecx
140362ad1:	e8 2a 7c 42 00       	call   0x14078a700
140362ad6:	90                   	nop
140362ad7:	33 c9                	xor    %ecx,%ecx
140362ad9:	e8 22 7c 42 00       	call   0x14078a700
140362ade:	cc                   	int3
140362adf:	b9 01 00 00 00       	mov    $0x1,%ecx
140362ae4:	e8 17 7c 42 00       	call   0x14078a700
140362ae9:	90                   	nop
140362aea:	b9 02 00 00 00       	mov    $0x2,%ecx
140362aef:	e8 0c 7c 42 00       	call   0x14078a700
140362af4:	90                   	nop
140362af5:	48 8d 15 fc 7e c7 00 	lea    0xc77efc(%rip),%rdx        # 0x140fda9f8
140362afc:	48 8b 0d f5 e9 0c 01 	mov    0x10ce9f5(%rip),%rcx        # 0x1414314f8
140362b03:	e8 a8 f3 42 00       	call   0x140791eb0
140362b08:	90                   	nop
140362b09:	b9 02 00 00 00       	mov    $0x2,%ecx
140362b0e:	e8 ed 7b 42 00       	call   0x14078a700
140362b13:	90                   	nop
140362b14:	b9 02 00 00 00       	mov    $0x2,%ecx
140362b19:	e8 e2 7b 42 00       	call   0x14078a700
140362b1e:	90                   	nop
140362b1f:	b9 02 00 00 00       	mov    $0x2,%ecx
140362b24:	e8 d7 7b 42 00       	call   0x14078a700
140362b29:	90                   	nop
140362b2a:	b9 02 00 00 00       	mov    $0x2,%ecx
140362b2f:	e8 cc 7b 42 00       	call   0x14078a700
140362b34:	90                   	nop
140362b35:	b9 02 00 00 00       	mov    $0x2,%ecx
140362b3a:	e8 c1 7b 42 00       	call   0x14078a700
140362b3f:	90                   	nop
140362b40:	33 c9                	xor    %ecx,%ecx
140362b42:	e8 b9 7b 42 00       	call   0x14078a700
140362b47:	cc                   	int3
140362b48:	b9 01 00 00 00       	mov    $0x1,%ecx
140362b4d:	e8 ae 7b 42 00       	call   0x14078a700
140362b52:	90                   	nop
140362b53:	33 c9                	xor    %ecx,%ecx
140362b55:	e8 a6 7b 42 00       	call   0x14078a700
140362b5a:	cc                   	int3
140362b5b:	b9 01 00 00 00       	mov    $0x1,%ecx
140362b60:	e8 9b 7b 42 00       	call   0x14078a700
140362b65:	90                   	nop
140362b66:	b9 02 00 00 00       	mov    $0x2,%ecx
140362b6b:	e8 90 7b 42 00       	call   0x14078a700
140362b70:	cc                   	int3
140362b71:	cc                   	int3
140362b72:	cc                   	int3
140362b73:	cc                   	int3
140362b74:	cc                   	int3
140362b75:	cc                   	int3
140362b76:	cc                   	int3
140362b77:	cc                   	int3
140362b78:	cc                   	int3
140362b79:	cc                   	int3
140362b7a:	cc                   	int3
140362b7b:	cc                   	int3
140362b7c:	cc                   	int3
140362b7d:	cc                   	int3
140362b7e:	cc                   	int3
140362b7f:	cc                   	int3
140362b80:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140362b85:	55                   	push   %rbp
140362b86:	56                   	push   %rsi
140362b87:	57                   	push   %rdi
140362b88:	41 54                	push   %r12
140362b8a:	41 55                	push   %r13
140362b8c:	41 56                	push   %r14
140362b8e:	41 57                	push   %r15
140362b90:	48 8b ec             	mov    %rsp,%rbp
140362b93:	48 83 ec 50          	sub    $0x50,%rsp
140362b97:	4d 8b e0             	mov    %r8,%r12
140362b9a:	44 0f b6 fa          	movzbl %dl,%r15d
140362b9e:	4c 8b f1             	mov    %rcx,%r14
140362ba1:	45 33 ed             	xor    %r13d,%r13d
140362ba4:	41 8b f5             	mov    %r13d,%esi
140362ba7:	44 89 6d 48          	mov    %r13d,0x48(%rbp)
140362bab:	40 38 35 6b f4 0b 01 	cmp    %sil,0x10bf46b(%rip)        # 0x14142201d
140362bb2:	75 6e                	jne    0x140362c22
140362bb4:	48 8d 1d 35 09 c7 00 	lea    0xc70935(%rip),%rbx        # 0x140fd34f0
140362bbb:	48 89 5d f0          	mov    %rbx,-0x10(%rbp)
140362bbf:	48 c7 45 f8 0f 00 00 	movq   $0xf,-0x8(%rbp)
140362bc6:	00
140362bc7:	0f 28 45 f0          	movaps -0x10(%rbp),%xmm0
140362bcb:	66 0f 7f 45 f0       	movdqa %xmm0,-0x10(%rbp)
140362bd0:	48 8d 55 f0          	lea    -0x10(%rbp),%rdx
140362bd4:	48 8b 0d 85 02 0d 01 	mov    0x10d0285(%rip),%rcx        # 0x141432e60
140362bdb:	e8 70 15 4b 00       	call   0x140814150
140362be0:	48 85 c0             	test   %rax,%rax
140362be3:	74 36                	je     0x140362c1b
140362be5:	48 89 5d f0          	mov    %rbx,-0x10(%rbp)
140362be9:	48 c7 45 f8 0f 00 00 	movq   $0xf,-0x8(%rbp)
140362bf0:	00
140362bf1:	0f 28 45 f0          	movaps -0x10(%rbp),%xmm0
140362bf5:	66 0f 7f 45 f0       	movdqa %xmm0,-0x10(%rbp)
140362bfa:	45 33 c9             	xor    %r9d,%r9d
140362bfd:	4c 8d 45 f0          	lea    -0x10(%rbp),%r8
140362c01:	48 8d 55 58          	lea    0x58(%rbp),%rdx
140362c05:	48 8b 0d 54 02 0d 01 	mov    0x10d0254(%rip),%rcx        # 0x141432e60
140362c0c:	e8 df 19 4b 00       	call   0x1408145f0
140362c11:	48 8b 08             	mov    (%rax),%rcx
140362c14:	48 89 0d fd 8b 0b 01 	mov    %rcx,0x10b8bfd(%rip)        # 0x14141b818
140362c1b:	c6 05 fb f3 0b 01 01 	movb   $0x1,0x10bf3fb(%rip)        # 0x14142201d
140362c22:	45 84 ff             	test   %r15b,%r15b
140362c25:	0f 84 ab 00 00 00    	je     0x140362cd6
140362c2b:	4d 8b 06             	mov    (%r14),%r8
140362c2e:	48 8b 05 33 92 0b 01 	mov    0x10b9233(%rip),%rax        # 0x14141be68
140362c35:	49 8b 50 40          	mov    0x40(%r8),%rdx
140362c39:	4c 63 88 54 01 00 00 	movslq 0x154(%rax),%r9
140362c40:	49 8b c9             	mov    %r9,%rcx
140362c43:	48 c1 e1 04          	shl    $0x4,%rcx
140362c47:	48 03 0a             	add    (%rdx),%rcx
140362c4a:	40 38 71 08          	cmp    %sil,0x8(%rcx)
140362c4e:	75 09                	jne    0x140362c59
140362c50:	4c 89 6d e0          	mov    %r13,-0x20(%rbp)
140362c54:	49 8b c5             	mov    %r13,%rax
140362c57:	eb 1f                	jmp    0x140362c78
140362c59:	49 8b 40 38          	mov    0x38(%r8),%rax
140362c5d:	48 8b 90 80 00 00 00 	mov    0x80(%rax),%rdx
140362c64:	48 8b 02             	mov    (%rdx),%rax
140362c67:	4e 8b 04 c8          	mov    (%rax,%r9,8),%r8
140362c6b:	48 8d 55 e0          	lea    -0x20(%rbp),%rdx
140362c6f:	e8 5c 54 3b 00       	call   0x1407180d0
140362c74:	48 8b 45 e0          	mov    -0x20(%rbp),%rax
140362c78:	83 ce 09             	or     $0x9,%esi
140362c7b:	89 75 48             	mov    %esi,0x48(%rbp)
140362c7e:	48 85 c0             	test   %rax,%rax
140362c81:	74 53                	je     0x140362cd6
140362c83:	4c 8b 05 de 91 0b 01 	mov    0x10b91de(%rip),%r8        # 0x14141be68
140362c8a:	41 8b b8 5c 01 00 00 	mov    0x15c(%r8),%edi
140362c91:	45 8b 80 54 01 00 00 	mov    0x154(%r8),%r8d
140362c98:	49 8b d6             	mov    %r14,%rdx
140362c9b:	48 8d 4d e8          	lea    -0x18(%rbp),%rcx
140362c9f:	e8 fc fe 00 00       	call   0x140372ba0
140362ca4:	48 8b 18             	mov    (%rax),%rbx
140362ca7:	4c 89 28             	mov    %r13,(%rax)
140362caa:	48 89 5d 58          	mov    %rbx,0x58(%rbp)
140362cae:	83 ce 02             	or     $0x2,%esi
140362cb1:	89 75 48             	mov    %esi,0x48(%rbp)
140362cb4:	44 8b c7             	mov    %edi,%r8d
140362cb7:	48 8d 55 58          	lea    0x58(%rbp),%rdx
140362cbb:	48 8d 4d f0          	lea    -0x10(%rbp),%rcx
140362cbf:	e8 dc fe 00 00       	call   0x140372ba0
140362cc4:	83 ce 04             	or     $0x4,%esi
140362cc7:	48 8b 00             	mov    (%rax),%rax
140362cca:	48 83 78 20 00       	cmpq   $0x0,0x20(%rax)
140362ccf:	75 09                	jne    0x140362cda
140362cd1:	40 b7 01             	mov    $0x1,%dil
140362cd4:	eb 07                	jmp    0x140362cdd
140362cd6:	48 8b 5d 58          	mov    0x58(%rbp),%rbx
140362cda:	40 32 ff             	xor    %dil,%dil
140362cdd:	40 f6 c6 04          	test   $0x4,%sil
140362ce1:	74 33                	je     0x140362d16
140362ce3:	83 e6 fb             	and    $0xfffffffb,%esi
140362ce6:	89 75 48             	mov    %esi,0x48(%rbp)
140362ce9:	48 8b 4d f0          	mov    -0x10(%rbp),%rcx
140362ced:	48 85 c9             	test   %rcx,%rcx
140362cf0:	74 24                	je     0x140362d16
140362cf2:	8b 41 10             	mov    0x10(%rcx),%eax
140362cf5:	ff c8                	dec    %eax
140362cf7:	89 41 10             	mov    %eax,0x10(%rcx)
140362cfa:	85 c0                	test   %eax,%eax
140362cfc:	7f 18                	jg     0x140362d16
140362cfe:	0f 88 79 02 00 00    	js     0x140362f7d
140362d04:	48 8b 01             	mov    (%rcx),%rax
140362d07:	ba 01 00 00 00       	mov    $0x1,%edx
140362d0c:	48 8b 00             	mov    (%rax),%rax
140362d0f:	ff 15 0b 0d c2 00    	call   *0xc20d0b(%rip)        # 0x140f83a20
140362d15:	90                   	nop
140362d16:	40 f6 c6 02          	test   $0x2,%sil
140362d1a:	74 32                	je     0x140362d4e
140362d1c:	83 e6 fd             	and    $0xfffffffd,%esi
140362d1f:	89 75 48             	mov    %esi,0x48(%rbp)
140362d22:	48 85 db             	test   %rbx,%rbx