14087f820:	83 79 1c 00          	cmpl   $0x0,0x1c(%rcx)
14087f824:	4c 8b d9             	mov    %rcx,%r11
14087f827:	74 4a                	je     0x14087f873
14087f829:	4c 8b 11             	mov    (%rcx),%r10
14087f82c:	8b 41 24             	mov    0x24(%rcx),%eax
14087f82f:	45 8b 4a 08          	mov    0x8(%r10),%r9d
14087f833:	41 2b c1             	sub    %r9d,%eax
14087f836:	05 00 00 ff 7f       	add    $0x7fff0000,%eax
14087f83b:	3b d0                	cmp    %eax,%edx
14087f83d:	0f 47 d0             	cmova  %eax,%edx
14087f840:	44 2b 49 24          	sub    0x24(%rcx),%r9d
14087f844:	41 8d 04 11          	lea    (%r9,%rdx,1),%eax
14087f848:	41 89 42 08          	mov    %eax,0x8(%r10)
14087f84c:	41 2b 42 0c          	sub    0xc(%r10),%eax
14087f850:	83 c0 0a             	add    $0xa,%eax
14087f853:	41 89 42 10          	mov    %eax,0x10(%r10)
14087f857:	b8 cd cc cc cc       	mov    $0xcccccccd,%eax
14087f85c:	89 51 24             	mov    %edx,0x24(%rcx)
14087f85f:	8d 0c d2             	lea    (%rdx,%rdx,8),%ecx
14087f862:	f7 e1                	mul    %ecx
14087f864:	49 8b cb             	mov    %r11,%rcx
14087f867:	c1 ea 03             	shr    $0x3,%edx
14087f86a:	41 89 53 28          	mov    %edx,0x28(%r11)
14087f86e:	e9 dd ca 03 00       	jmp    0x1408bc350
14087f873:	c3                   	ret
14087f874:	cc                   	int3
14087f875:	cc                   	int3
14087f876:	cc                   	int3
14087f877:	cc                   	int3
14087f878:	cc                   	int3
14087f879:	cc                   	int3
14087f87a:	cc                   	int3
14087f87b:	cc                   	int3
14087f87c:	cc                   	int3
14087f87d:	cc                   	int3
14087f87e:	cc                   	int3
14087f87f:	cc                   	int3
14087f880:	48 83 ec 28          	sub    $0x28,%rsp
14087f884:	83 79 1c 00          	cmpl   $0x0,0x1c(%rcx)
14087f888:	74 29                	je     0x14087f8b3
14087f88a:	48 89 5c 24 30       	mov    %rbx,0x30(%rsp)
14087f88f:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
14087f894:	48 8b 39             	mov    (%rcx),%rdi
14087f897:	8b 5f 08             	mov    0x8(%rdi),%ebx
14087f89a:	c7 47 08 00 00 00 00 	movl   $0x0,0x8(%rdi)
14087f8a1:	e8 aa ca 03 00       	call   0x1408bc350
14087f8a6:	89 5f 08             	mov    %ebx,0x8(%rdi)
14087f8a9:	48 8b 7c 24 20       	mov    0x20(%rsp),%rdi
14087f8ae:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14087f8b3:	48 83 c4 28          	add    $0x28,%rsp
14087f8b7:	c3                   	ret
14087f8b8:	cc                   	int3
14087f8b9:	cc                   	int3
14087f8ba:	cc                   	int3
14087f8bb:	cc                   	int3
14087f8bc:	cc                   	int3
14087f8bd:	cc                   	int3
14087f8be:	cc                   	int3
14087f8bf:	cc                   	int3
14087f8c0:	44 8b d2             	mov    %edx,%r10d
14087f8c3:	33 d2                	xor    %edx,%edx
14087f8c5:	41 8b c2             	mov    %r10d,%eax
14087f8c8:	f7 71 3c             	divl   0x3c(%rcx)
14087f8cb:	48 8b 41 40          	mov    0x40(%rcx),%rax
14087f8cf:	48 8b 04 d0          	mov    (%rax,%rdx,8),%rax
14087f8d3:	48 85 c0             	test   %rax,%rax
14087f8d6:	74 0f                	je     0x14087f8e7
14087f8d8:	44 39 50 10          	cmp    %r10d,0x10(%rax)
14087f8dc:	74 16                	je     0x14087f8f4
14087f8de:	48 8b 40 18          	mov    0x18(%rax),%rax
14087f8e2:	48 85 c0             	test   %rax,%rax
14087f8e5:	75 f1                	jne    0x14087f8d8
14087f8e7:	45 85 c0             	test   %r8d,%r8d
14087f8ea:	74 35                	je     0x14087f921
14087f8ec:	41 8b d2             	mov    %r10d,%edx
14087f8ef:	e9 5c cb 03 00       	jmp    0x1408bc450
14087f8f4:	48 8b 50 28          	mov    0x28(%rax),%rdx
14087f8f8:	48 85 d2             	test   %rdx,%rdx
14087f8fb:	74 26                	je     0x14087f923
14087f8fd:	48 8b 48 30          	mov    0x30(%rax),%rcx
14087f901:	48 89 51 28          	mov    %rdx,0x28(%rcx)
14087f905:	48 8b 50 28          	mov    0x28(%rax),%rdx
14087f909:	48 8b 48 30          	mov    0x30(%rax),%rcx
14087f90d:	48 89 4a 30          	mov    %rcx,0x30(%rdx)
14087f911:	48 8b 48 20          	mov    0x20(%rax),%rcx
14087f915:	48 c7 40 28 00 00 00 	movq   $0x0,0x28(%rax)
14087f91c:	00
14087f91d:	ff 49 34             	decl   0x34(%rcx)
14087f920:	c3                   	ret
14087f921:	33 c0                	xor    %eax,%eax
14087f923:	c3                   	ret
14087f924:	cc                   	int3
14087f925:	cc                   	int3
14087f926:	cc                   	int3
14087f927:	cc                   	int3
14087f928:	cc                   	int3
14087f929:	cc                   	int3
14087f92a:	cc                   	int3
14087f92b:	cc                   	int3
14087f92c:	cc                   	int3
14087f92d:	cc                   	int3
14087f92e:	cc                   	int3
14087f92f:	cc                   	int3
14087f930:	48 83 ec 28          	sub    $0x28,%rsp
14087f934:	4c 8b ca             	mov    %rdx,%r9
14087f937:	45 85 c0             	test   %r8d,%r8d
14087f93a:	75 2b                	jne    0x14087f967
14087f93c:	48 8b 11             	mov    (%rcx),%rdx
14087f93f:	8b 42 08             	mov    0x8(%rdx),%eax
14087f942:	39 42 14             	cmp    %eax,0x14(%rdx)
14087f945:	77 20                	ja     0x14087f967
14087f947:	48 8d 42 18          	lea    0x18(%rdx),%rax
14087f94b:	49 89 41 30          	mov    %rax,0x30(%r9)
14087f94f:	48 8b 42 40          	mov    0x40(%rdx),%rax
14087f953:	49 89 41 28          	mov    %rax,0x28(%r9)
14087f957:	4c 89 48 30          	mov    %r9,0x30(%rax)
14087f95b:	4c 89 4a 40          	mov    %r9,0x40(%rdx)
14087f95f:	ff 41 34             	incl   0x34(%rcx)
14087f962:	48 83 c4 28          	add    $0x28,%rsp
14087f966:	c3                   	ret
14087f967:	4d 8b 41 20          	mov    0x20(%r9),%r8
14087f96b:	33 d2                	xor    %edx,%edx
14087f96d:	41 8b 41 10          	mov    0x10(%r9),%eax
14087f971:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
14087f976:	41 f7 70 3c          	divl   0x3c(%r8)
14087f97a:	49 8b 40 40          	mov    0x40(%r8),%rax
14087f97e:	48 8d 14 d0          	lea    (%rax,%rdx,8),%rdx
14087f982:	48 8b 02             	mov    (%rdx),%rax
14087f985:	49 3b c1             	cmp    %r9,%rax
14087f988:	74 13                	je     0x14087f99d
14087f98a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
14087f990:	48 8d 50 18          	lea    0x18(%rax),%rdx
14087f994:	48 8b 40 18          	mov    0x18(%rax),%rax
14087f998:	49 3b c1             	cmp    %r9,%rax
14087f99b:	75 f3                	jne    0x14087f990
14087f99d:	48 8b 40 18          	mov    0x18(%rax),%rax
14087f9a1:	48 89 02             	mov    %rax,(%rdx)
14087f9a4:	41 ff 48 38          	decl   0x38(%r8)
14087f9a8:	66 41 83 79 14 00    	cmpw   $0x0,0x14(%r9)
14087f9ae:	49 8b 59 20          	mov    0x20(%r9),%rbx
14087f9b2:	74 1c                	je     0x14087f9d0
14087f9b4:	48 8b 43 48          	mov    0x48(%rbx),%rax
14087f9b8:	49 89 41 18          	mov    %rax,0x18(%r9)
14087f9bc:	48 8b 43 08          	mov    0x8(%rbx),%rax
14087f9c0:	4c 89 4b 48          	mov    %r9,0x48(%rbx)
14087f9c4:	48 8b 5c 24 20       	mov    0x20(%rsp),%rbx
14087f9c9:	ff 08                	decl   (%rax)
14087f9cb:	48 83 c4 28          	add    $0x28,%rsp
14087f9cf:	c3                   	ret
14087f9d0:	49 8b 09             	mov    (%r9),%rcx
14087f9d3:	e8 58 cc 03 00       	call   0x1408bc630
14087f9d8:	48 8b 43 08          	mov    0x8(%rbx),%rax
14087f9dc:	48 8b 5c 24 20       	mov    0x20(%rsp),%rbx
14087f9e1:	ff 08                	decl   (%rax)
14087f9e3:	48 83 c4 28          	add    $0x28,%rsp
14087f9e7:	c3                   	ret
14087f9e8:	cc                   	int3
14087f9e9:	cc                   	int3
14087f9ea:	cc                   	int3
14087f9eb:	cc                   	int3
14087f9ec:	cc                   	int3
14087f9ed:	cc                   	int3
14087f9ee:	cc                   	int3
14087f9ef:	cc                   	int3
14087f9f0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14087f9f5:	4c 8b da             	mov    %rdx,%r11
14087f9f8:	41 8b c0             	mov    %r8d,%eax
14087f9fb:	33 d2                	xor    %edx,%edx
14087f9fd:	48 8b d9             	mov    %rcx,%rbx
14087fa00:	f7 71 3c             	divl   0x3c(%rcx)
14087fa03:	48 8b 41 40          	mov    0x40(%rcx),%rax
14087fa07:	4c 8d 14 d0          	lea    (%rax,%rdx,8),%r10
14087fa0b:	48 8b 04 d0          	mov    (%rax,%rdx,8),%rax
14087fa0f:	49 3b c3             	cmp    %r11,%rax
14087fa12:	74 19                	je     0x14087fa2d
14087fa14:	0f 1f 40 00          	nopl   0x0(%rax)
14087fa18:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
14087fa1f:	00
14087fa20:	4c 8d 50 18          	lea    0x18(%rax),%r10
14087fa24:	48 8b 40 18          	mov    0x18(%rax),%rax
14087fa28:	49 3b c3             	cmp    %r11,%rax
14087fa2b:	75 f3                	jne    0x14087fa20
14087fa2d:	49 8b 43 18          	mov    0x18(%r11),%rax
14087fa31:	33 d2                	xor    %edx,%edx
14087fa33:	49 89 02             	mov    %rax,(%r10)
14087fa36:	41 8b c1             	mov    %r9d,%eax
14087fa39:	f7 71 3c             	divl   0x3c(%rcx)
14087fa3c:	45 89 4b 10          	mov    %r9d,0x10(%r11)
14087fa40:	48 8b 41 40          	mov    0x40(%rcx),%rax
14087fa44:	48 8d 14 d5 00 00 00 	lea    0x0(,%rdx,8),%rdx
14087fa4b:	00
14087fa4c:	48 8b 0c 02          	mov    (%rdx,%rax,1),%rcx
14087fa50:	49 89 4b 18          	mov    %rcx,0x18(%r11)
14087fa54:	48 8b 43 40          	mov    0x40(%rbx),%rax
14087fa58:	4c 89 1c 02          	mov    %r11,(%rdx,%rax,1)
14087fa5c:	44 3b 4b 2c          	cmp    0x2c(%rbx),%r9d
14087fa60:	76 04                	jbe    0x14087fa66
14087fa62:	44 89 4b 2c          	mov    %r9d,0x2c(%rbx)
14087fa66:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
14087fa6b:	c3                   	ret
14087fa6c:	cc                   	int3
14087fa6d:	cc                   	int3
14087fa6e:	cc                   	int3
14087fa6f:	cc                   	int3
14087fa70:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14087fa75:	57                   	push   %rdi
14087fa76:	48 83 ec 20          	sub    $0x20,%rsp
14087fa7a:	8b da                	mov    %edx,%ebx
14087fa7c:	48 8b f9             	mov    %rcx,%rdi
14087fa7f:	3b 51 2c             	cmp    0x2c(%rcx),%edx
14087fa82:	77 0b                	ja     0x14087fa8f
14087fa84:	e8 67 ce 03 00       	call   0x1408bc8f0
14087fa89:	8d 43 ff             	lea    -0x1(%rbx),%eax
14087fa8c:	89 47 2c             	mov    %eax,0x2c(%rdi)
14087fa8f:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14087fa94:	48 83 c4 20          	add    $0x20,%rsp
14087fa98:	5f                   	pop    %rdi
14087fa99:	c3                   	ret
14087fa9a:	cc                   	int3
14087fa9b:	cc                   	int3
14087fa9c:	cc                   	int3
14087fa9d:	cc                   	int3
14087fa9e:	cc                   	int3
14087fa9f:	cc                   	int3
14087faa0:	40 57                	rex push %rdi
14087faa2:	48 81 ec d0 00 00 00 	sub    $0xd0,%rsp
14087faa9:	48 8b 05 50 94 b3 00 	mov    0xb39450(%rip),%rax        # 0x1413b8f00
14087fab0:	48 33 c4             	xor    %rsp,%rax
14087fab3:	48 89 84 24 c0 00 00 	mov    %rax,0xc0(%rsp)
14087faba:	00
14087fabb:	49 8b 10             	mov    (%r8),%rdx
14087fabe:	48 8d 44 24 52       	lea    0x52(%rsp),%rax
14087fac3:	48 8b f9             	mov    %rcx,%rdi
14087fac6:	48 89 4c 24 30       	mov    %rcx,0x30(%rsp)
14087facb:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
14087fad0:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
14087fad5:	66 c7 44 24 50 01 00 	movw   $0x1,0x50(%rsp)
14087fadc:	48 c7 44 24 40 64 00 	movq   $0x64,0x40(%rsp)
14087fae3:	00 00
14087fae5:	48 c7 44 24 48 00 00 	movq   $0x0,0x48(%rsp)
14087faec:	00 00
14087faee:	e8 fd f7 02 00       	call   0x1408af2f0
14087faf3:	80 7c 24 51 00       	cmpb   $0x0,0x51(%rsp)
14087faf8:	0f 85 b9 00 00 00    	jne    0x14087fbb7
14087fafe:	80 7c 24 50 00       	cmpb   $0x0,0x50(%rsp)
14087fb03:	48 8d 05 46 c0 00 00 	lea    0xc046(%rip),%rax        # 0x14088bb50
14087fb0a:	48 89 9c 24 e8 00 00 	mov    %rbx,0xe8(%rsp)
14087fb11:	00
14087fb12:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14087fb17:	48 89 ac 24 f8 00 00 	mov    %rbp,0xf8(%rsp)
14087fb1e:	00
14087fb1f:	48 c7 c5 ff ff ff ff 	mov    $0xffffffffffffffff,%rbp
14087fb26:	48 0f 45 c5          	cmovne %rbp,%rax
14087fb2a:	48 81 7c 24 48 ff ff 	cmpq   $0x7fffffff,0x48(%rsp)
14087fb31:	ff 7f
14087fb33:	76 37                	jbe    0x14087fb6c
14087fb35:	48 3b c5             	cmp    %rbp,%rax
14087fb38:	74 0b                	je     0x14087fb45
14087fb3a:	48 8b 4c 24 38       	mov    0x38(%rsp),%rcx
14087fb3f:	ff 15 db 3e 70 00    	call   *0x703edb(%rip)        # 0x140f83a20
14087fb45:	48 8b 0b             	mov    (%rbx),%rcx
14087fb48:	48 8d 15 19 df 7c 00 	lea    0x7cdf19(%rip),%rdx        # 0x14104da68
14087fb4f:	41 b1 01             	mov    $0x1,%r9b
14087fb52:	c7 43 24 12 00 00 00 	movl   $0x12,0x24(%rbx)
14087fb59:	4c 8b c5             	mov    %rbp,%r8
14087fb5c:	48 c7 44 24 20 00 00 	movq   $0x0,0x20(%rsp)
14087fb63:	00 00
14087fb65:	e8 b6 3a 09 00       	call   0x140913620
14087fb6a:	eb 1a                	jmp    0x14087fb86
14087fb6c:	44 8b 44 24 48       	mov    0x48(%rsp),%r8d
14087fb71:	41 b1 01             	mov    $0x1,%r9b
14087fb74:	48 8b 54 24 38       	mov    0x38(%rsp),%rdx
14087fb79:	48 8b cb             	mov    %rbx,%rcx
14087fb7c:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14087fb81:	e8 ba 71 04 00       	call   0x1408c6d40
14087fb86:	48 8b ac 24 f8 00 00 	mov    0xf8(%rsp),%rbp
14087fb8d:	00
14087fb8e:	48 8d 44 24 52       	lea    0x52(%rsp),%rax
14087fb93:	48 8b 9c 24 e8 00 00 	mov    0xe8(%rsp),%rbx
14087fb9a:	00
14087fb9b:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
14087fba0:	48 c7 44 24 40 64 00 	movq   $0x64,0x40(%rsp)
14087fba7:	00 00
14087fba9:	48 c7 44 24 48 00 00 	movq   $0x0,0x48(%rsp)
14087fbb0:	00 00
14087fbb2:	c6 44 24 50 01       	movb   $0x1,0x50(%rsp)
14087fbb7:	48 8b 07             	mov    (%rdi),%rax
14087fbba:	b9 00 08 00 00       	mov    $0x800,%ecx
14087fbbf:	66 09 48 14          	or     %cx,0x14(%rax)
14087fbc3:	c6 40 17 4a          	movb   $0x4a,0x17(%rax)
14087fbc7:	48 8b 8c 24 c0 00 00 	mov    0xc0(%rsp),%rcx
14087fbce:	00
14087fbcf:	48 33 cc             	xor    %rsp,%rcx
14087fbd2:	e8 29 b9 59 00       	call   0x140e1b500
14087fbd7:	48 81 c4 d0 00 00 00 	add    $0xd0,%rsp
14087fbde:	5f                   	pop    %rdi
14087fbdf:	c3                   	ret
14087fbe0:	4c 8b dc             	mov    %rsp,%r11
14087fbe3:	55                   	push   %rbp
14087fbe4:	53                   	push   %rbx
14087fbe5:	57                   	push   %rdi
14087fbe6:	41 54                	push   %r12
14087fbe8:	49 8d 6b a1          	lea    -0x5f(%r11),%rbp
14087fbec:	48 81 ec f8 00 00 00 	sub    $0xf8,%rsp
14087fbf3:	48 8b 05 06 93 b3 00 	mov    0xb39306(%rip),%rax        # 0x1413b8f00
14087fbfa:	48 33 c4             	xor    %rsp,%rax
14087fbfd:	48 89 45 17          	mov    %rax,0x17(%rbp)
14087fc01:	4d 89 6b d8          	mov    %r13,-0x28(%r11)
14087fc05:	48 8d 5d a9          	lea    -0x57(%rbp),%rbx
14087fc09:	4d 89 73 d0          	mov    %r14,-0x30(%r11)
14087fc0d:	41 bd 01 00 00 00    	mov    $0x1,%r13d
14087fc13:	4d 89 7b c8          	mov    %r15,-0x38(%r11)
14087fc17:	4c 8b e1             	mov    %rcx,%r12
14087fc1a:	4d 8b f8             	mov    %r8,%r15
14087fc1d:	48 89 4c 24 30       	mov    %rcx,0x30(%rsp)
14087fc22:	48 89 4d 87          	mov    %rcx,-0x79(%rbp)
14087fc26:	45 32 c9             	xor    %r9b,%r9b
14087fc29:	66 c7 45 a7 01 00    	movw   $0x1,-0x59(%rbp)
14087fc2f:	41 b8 64 00 00 00    	mov    $0x64,%r8d
14087fc35:	4c 89 45 97          	mov    %r8,-0x69(%rbp)
14087fc39:	41 8b cd             	mov    %r13d,%ecx
14087fc3c:	48 89 5d 8f          	mov    %rbx,-0x71(%rbp)
14087fc40:	41 b2 01             	mov    $0x1,%r10b
14087fc43:	c6 45 a9 5b          	movb   $0x5b,-0x57(%rbp)
14087fc47:	48 89 4d 9f          	mov    %rcx,-0x61(%rbp)
14087fc4b:	4c 63 f2             	movslq %edx,%r14
14087fc4e:	85 d2                	test   %edx,%edx
14087fc50:	0f 8e 4a 02 00 00    	jle    0x14087fea0
14087fc56:	49 89 73 10          	mov    %rsi,0x10(%r11)
14087fc5a:	41 bc 00 90 00 00    	mov    $0x9000,%r12d
14087fc60:	33 f6                	xor    %esi,%esi
14087fc62:	48 85 c9             	test   %rcx,%rcx
14087fc65:	0f 84 92 00 00 00    	je     0x14087fcfd
14087fc6b:	0f b6 44 19 ff       	movzbl -0x1(%rcx,%rbx,1),%eax
14087fc70:	2c 5b                	sub    $0x5b,%al
14087fc72:	a8 df                	test   $0xdf,%al
14087fc74:	0f 84 83 00 00 00    	je     0x14087fcfd
14087fc7a:	49 3b c8             	cmp    %r8,%rcx
14087fc7d:	72 76                	jb     0x14087fcf5
14087fc7f:	4b 8d 3c 00          	lea    (%r8,%r8,1),%rdi
14087fc83:	4d 3b c5             	cmp    %r13,%r8
14087fc86:	77 04                	ja     0x14087fc8c
14087fc88:	49 8d 78 0b          	lea    0xb(%r8),%rdi
14087fc8c:	45 84 d2             	test   %r10b,%r10b
14087fc8f:	74 3c                	je     0x14087fccd
14087fc91:	45 84 c9             	test   %r9b,%r9b
14087fc94:	75 67                	jne    0x14087fcfd
14087fc96:	e8 d5 3c 0a 00       	call   0x140923970
14087fc9b:	85 c0                	test   %eax,%eax
14087fc9d:	0f 85 8a 00 00 00    	jne    0x14087fd2d