1408787f4:	85 db                	test   %ebx,%ebx
1408787f6:	75 48                	jne    0x140878840
1408787f8:	49 8b 40 08          	mov    0x8(%r8),%rax
1408787fc:	45 33 c9             	xor    %r9d,%r9d
1408787ff:	45 33 c0             	xor    %r8d,%r8d
140878802:	8b 50 34             	mov    0x34(%rax),%edx
140878805:	e8 c6 72 05 00       	call   0x1408cfad0
14087880a:	3b c6                	cmp    %esi,%eax
14087880c:	75 04                	jne    0x140878812
14087880e:	8b de                	mov    %esi,%ebx
140878810:	eb 2e                	jmp    0x140878840
140878812:	48 8b 47 08          	mov    0x8(%rdi),%rax
140878816:	eb 04                	jmp    0x14087881c
140878818:	85 db                	test   %ebx,%ebx
14087881a:	75 24                	jne    0x140878840
14087881c:	83 7f 14 00          	cmpl   $0x0,0x14(%rdi)
140878820:	75 1e                	jne    0x140878840
140878822:	4c 8d 47 10          	lea    0x10(%rdi),%r8
140878826:	ba 02 00 00 00       	mov    $0x2,%edx
14087882b:	48 8b c8             	mov    %rax,%rcx
14087882e:	e8 8d 3f 05 00       	call   0x1408cc7c0
140878833:	8b d8                	mov    %eax,%ebx
140878835:	85 c0                	test   %eax,%eax
140878837:	75 07                	jne    0x140878840
140878839:	c7 47 14 01 00 00 00 	movl   $0x1,0x14(%rdi)
140878840:	48 8b 47 28          	mov    0x28(%rdi),%rax
140878844:	4c 8b 70 08          	mov    0x8(%rax),%r14
140878848:	48 8b 47 08          	mov    0x8(%rdi),%rax
14087884c:	41 8b 4e 34          	mov    0x34(%r14),%ecx
140878850:	48 8b 40 08          	mov    0x8(%rax),%rax
140878854:	89 8c 24 80 00 00 00 	mov    %ecx,0x80(%rsp)
14087885b:	44 8b 40 34          	mov    0x34(%rax),%r8d
14087885f:	48 8b 00             	mov    (%rax),%rax
140878862:	44 89 84 24 90 00 00 	mov    %r8d,0x90(%rsp)
140878869:	00
14087886a:	44 0f b6 60 09       	movzbl 0x9(%rax),%r12d
14087886f:	85 db                	test   %ebx,%ebx
140878871:	75 11                	jne    0x140878884
140878873:	41 80 fc 05          	cmp    $0x5,%r12b
140878877:	75 0b                	jne    0x140878884
140878879:	41 3b c8             	cmp    %r8d,%ecx
14087887c:	b8 08 00 00 00       	mov    $0x8,%eax
140878881:	0f 45 d8             	cmovne %eax,%ebx
140878884:	45 8b 76 40          	mov    0x40(%r14),%r14d
140878888:	33 ed                	xor    %ebp,%ebp
14087888a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
140878890:	45 85 ff             	test   %r15d,%r15d
140878893:	78 09                	js     0x14087889e
140878895:	41 3b ef             	cmp    %r15d,%ebp
140878898:	0f 8d e1 00 00 00    	jge    0x14087897f
14087889e:	8b 77 18             	mov    0x18(%rdi),%esi
1408788a1:	41 3b f6             	cmp    %r14d,%esi
1408788a4:	0f 87 d5 00 00 00    	ja     0x14087897f
1408788aa:	85 db                	test   %ebx,%ebx
1408788ac:	0f 85 12 01 00 00    	jne    0x1408789c4
1408788b2:	48 8b 47 28          	mov    0x28(%rdi),%rax
1408788b6:	33 d2                	xor    %edx,%edx
1408788b8:	48 8b 48 08          	mov    0x8(%rax),%rcx
1408788bc:	8b 05 3e 4f b3 00    	mov    0xb34f3e(%rip),%eax        # 0x1413ad800
1408788c2:	f7 71 34             	divl   0x34(%rcx)
1408788c5:	ff c0                	inc    %eax
1408788c7:	3b f0                	cmp    %eax,%esi
1408788c9:	0f 84 a6 00 00 00    	je     0x140878975
1408788cf:	48 8b 44 24 38       	mov    0x38(%rsp),%rax
1408788d4:	4c 8d 44 24 30       	lea    0x30(%rsp),%r8
1408788d9:	48 8b c8             	mov    %rax,%rcx
1408788dc:	41 b9 02 00 00 00    	mov    $0x2,%r9d
1408788e2:	8b d6                	mov    %esi,%edx
1408788e4:	48 8b 80 10 01 00 00 	mov    0x110(%rax),%rax
1408788eb:	ff 15 2f b1 70 00    	call   *0x70b12f(%rip)        # 0x140f83a20
1408788f1:	8b d8                	mov    %eax,%ebx
1408788f3:	85 c0                	test   %eax,%eax
1408788f5:	75 7e                	jne    0x140878975
1408788f7:	4c 8b 44 24 30       	mov    0x30(%rsp),%r8
1408788fc:	45 33 c9             	xor    %r9d,%r9d
1408788ff:	8b d6                	mov    %esi,%edx
140878901:	48 8b cf             	mov    %rdi,%rcx
140878904:	4d 8b 40 08          	mov    0x8(%r8),%r8
140878908:	e8 73 93 01 00       	call   0x140891c80
14087890d:	4c 8b 44 24 30       	mov    0x30(%rsp),%r8
140878912:	8b d8                	mov    %eax,%ebx
140878914:	4d 85 c0             	test   %r8,%r8
140878917:	74 5c                	je     0x140878975
140878919:	41 f6 40 34 20       	testb  $0x20,0x34(%r8)
14087891e:	74 4d                	je     0x14087896d
140878920:	4d 8b 50 28          	mov    0x28(%r8),%r10
140878924:	41 ff 8a 98 00 00 00 	decl   0x98(%r10)
14087892b:	49 8b 82 a8 00 00 00 	mov    0xa8(%r10),%rax
140878932:	49 89 40 20          	mov    %rax,0x20(%r8)
140878936:	49 8b 4a 48          	mov    0x48(%r10),%rcx
14087893a:	4d 89 82 a8 00 00 00 	mov    %r8,0xa8(%r10)
140878941:	41 8b 50 30          	mov    0x30(%r8),%edx
140878945:	4d 8b 40 08          	mov    0x8(%r8),%r8
140878949:	ff ca                	dec    %edx
14087894b:	4c 8b 09             	mov    (%rcx),%r9
14087894e:	49 0f af 92 c8 00 00 	imul   0xc8(%r10),%rdx
140878955:	00
140878956:	49 8b 81 90 00 00 00 	mov    0x90(%r9),%rax
14087895d:	ff 15 bd b0 70 00    	call   *0x70b0bd(%rip)        # 0x140f83a20
140878963:	ff 47 18             	incl   0x18(%rdi)
140878966:	ff c5                	inc    %ebp
140878968:	e9 23 ff ff ff       	jmp    0x140878890
14087896d:	49 8b c8             	mov    %r8,%rcx
140878970:	e8 5b 91 07 00       	call   0x1408f1ad0
140878975:	ff 47 18             	incl   0x18(%rdi)
140878978:	ff c5                	inc    %ebp
14087897a:	e9 11 ff ff ff       	jmp    0x140878890
14087897f:	85 db                	test   %ebx,%ebx
140878981:	75 41                	jne    0x1408789c4
140878983:	41 8b c6             	mov    %r14d,%eax
140878986:	44 89 77 38          	mov    %r14d,0x38(%rdi)
14087898a:	2b 47 18             	sub    0x18(%rdi),%eax
14087898d:	ff c0                	inc    %eax
14087898f:	89 47 34             	mov    %eax,0x34(%rdi)
140878992:	44 39 77 18          	cmp    %r14d,0x18(%rdi)
140878996:	77 35                	ja     0x1408789cd
140878998:	39 5f 3c             	cmp    %ebx,0x3c(%rdi)
14087899b:	0f 85 31 04 00 00    	jne    0x140878dd2
1408789a1:	48 8b 47 28          	mov    0x28(%rdi),%rax
1408789a5:	48 8b 48 08          	mov    0x8(%rax),%rcx
1408789a9:	48 8b 11             	mov    (%rcx),%rdx
1408789ac:	48 8b 42 70          	mov    0x70(%rdx),%rax
1408789b0:	48 89 47 40          	mov    %rax,0x40(%rdi)
1408789b4:	48 89 7a 70          	mov    %rdi,0x70(%rdx)
1408789b8:	c7 47 3c 01 00 00 00 	movl   $0x1,0x3c(%rdi)
1408789bf:	e9 0e 04 00 00       	jmp    0x140878dd2
1408789c4:	83 fb 65             	cmp    $0x65,%ebx
1408789c7:	0f 85 05 04 00 00    	jne    0x140878dd2
1408789cd:	45 85 f6             	test   %r14d,%r14d
1408789d0:	75 58                	jne    0x140878a2a
1408789d2:	48 8b 77 08          	mov    0x8(%rdi),%rsi
1408789d6:	44 38 76 11          	cmp    %r14b,0x11(%rsi)
1408789da:	74 11                	je     0x1408789ed
1408789dc:	ff 46 14             	incl   0x14(%rsi)
1408789df:	44 38 76 12          	cmp    %r14b,0x12(%rsi)
1408789e3:	75 08                	jne    0x1408789ed
1408789e5:	48 8b ce             	mov    %rsi,%rcx
1408789e8:	e8 c3 cb 01 00       	call   0x1408955b0
1408789ed:	48 8b 46 08          	mov    0x8(%rsi),%rax
1408789f1:	c7 40 40 00 00 00 00 	movl   $0x0,0x40(%rax)
1408789f8:	48 8b 4e 08          	mov    0x8(%rsi),%rcx
1408789fc:	e8 df df 03 00       	call   0x1408b69e0
140878a01:	80 7e 11 00          	cmpb   $0x0,0x11(%rsi)
140878a05:	8b d8                	mov    %eax,%ebx
140878a07:	74 0e                	je     0x140878a17
140878a09:	83 6e 14 01          	subl   $0x1,0x14(%rsi)
140878a0d:	75 08                	jne    0x140878a17
140878a0f:	48 8b ce             	mov    %rsi,%rcx
140878a12:	e8 b9 ce 0a 00       	call   0x1409258d0
140878a17:	41 be 01 00 00 00    	mov    $0x1,%r14d
140878a1d:	85 db                	test   %ebx,%ebx
140878a1f:	74 09                	je     0x140878a2a
140878a21:	83 fb 65             	cmp    $0x65,%ebx
140878a24:	0f 85 a8 03 00 00    	jne    0x140878dd2
140878a2a:	44 8b 47 10          	mov    0x10(%rdi),%r8d
140878a2e:	ba 01 00 00 00       	mov    $0x1,%edx
140878a33:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
140878a37:	41 ff c0             	inc    %r8d
140878a3a:	e8 b1 7d 05 00       	call   0x1408d07f0
140878a3f:	8b d8                	mov    %eax,%ebx
140878a41:	85 c0                	test   %eax,%eax
140878a43:	0f 85 89 03 00 00    	jne    0x140878dd2
140878a49:	48 8b 0f             	mov    (%rdi),%rcx
140878a4c:	48 85 c9             	test   %rcx,%rcx
140878a4f:	74 05                	je     0x140878a56
140878a51:	e8 fa 06 08 00       	call   0x1408f9150
140878a56:	41 80 fc 05          	cmp    $0x5,%r12b
140878a5a:	75 18                	jne    0x140878a74
140878a5c:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
140878a60:	ba 02 00 00 00       	mov    $0x2,%edx
140878a65:	e8 36 73 05 00       	call   0x1408cfda0
140878a6a:	8b d8                	mov    %eax,%ebx
140878a6c:	85 c0                	test   %eax,%eax
140878a6e:	0f 85 5e 03 00 00    	jne    0x140878dd2
140878a74:	4c 63 94 24 80 00 00 	movslq 0x80(%rsp),%r10
140878a7b:	00
140878a7c:	8b 8c 24 90 00 00 00 	mov    0x90(%rsp),%ecx
140878a83:	44 3b d1             	cmp    %ecx,%r10d
140878a86:	0f 8d 0e 03 00 00    	jge    0x140878d9a
140878a8c:	4d 8b 7d 48          	mov    0x48(%r13),%r15
140878a90:	8b c1                	mov    %ecx,%eax
140878a92:	41 8b 6d 20          	mov    0x20(%r13),%ebp
140878a96:	99                   	cltd
140878a97:	41 f7 fa             	idiv   %r10d
140878a9a:	4d 63 e6             	movslq %r14d,%r12
140878a9d:	8b c8                	mov    %eax,%ecx
140878a9f:	ff c8                	dec    %eax
140878aa1:	41 03 c6             	add    %r14d,%eax
140878aa4:	99                   	cltd
140878aa5:	f7 f9                	idiv   %ecx
140878aa7:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
140878aab:	33 d2                	xor    %edx,%edx
140878aad:	44 8b c8             	mov    %eax,%r9d
140878ab0:	8b 05 4a 4d b3 00    	mov    0xb34d4a(%rip),%eax        # 0x1413ad800
140878ab6:	4c 8b 41 08          	mov    0x8(%rcx),%r8
140878aba:	41 8d 71 ff          	lea    -0x1(%r9),%esi
140878abe:	41 f7 70 34          	divl   0x34(%r8)
140878ac2:	ff c0                	inc    %eax
140878ac4:	44 3b c8             	cmp    %eax,%r9d
140878ac7:	41 0f 45 f1          	cmovne %r9d,%esi
140878acb:	4d 0f af e2          	imul   %r10,%r12
140878acf:	90                   	nop
140878ad0:	3b f5                	cmp    %ebp,%esi
140878ad2:	0f 87 00 01 00 00    	ja     0x140878bd8
140878ad8:	48 8b 47 08          	mov    0x8(%rdi),%rax
140878adc:	33 d2                	xor    %edx,%edx
140878ade:	48 8b 48 08          	mov    0x8(%rax),%rcx
140878ae2:	8b 05 18 4d b3 00    	mov    0xb34d18(%rip),%eax        # 0x1413ad800
140878ae8:	f7 71 34             	divl   0x34(%rcx)
140878aeb:	ff c0                	inc    %eax
140878aed:	3b f0                	cmp    %eax,%esi
140878aef:	0f 84 d7 00 00 00    	je     0x140878bcc
140878af5:	49 8b 85 10 01 00 00 	mov    0x110(%r13),%rax
140878afc:	4c 8d 44 24 30       	lea    0x30(%rsp),%r8
140878b01:	45 33 c9             	xor    %r9d,%r9d
140878b04:	8b d6                	mov    %esi,%edx
140878b06:	49 8b cd             	mov    %r13,%rcx
140878b09:	ff 15 11 af 70 00    	call   *0x70af11(%rip)        # 0x140f83a20
140878b0f:	8b d8                	mov    %eax,%ebx
140878b11:	85 c0                	test   %eax,%eax
140878b13:	0f 85 b3 00 00 00    	jne    0x140878bcc
140878b19:	4c 8b 44 24 30       	mov    0x30(%rsp),%r8
140878b1e:	41 f6 40 34 04       	testb  $0x4,0x34(%r8)
140878b23:	49 8b 48 28          	mov    0x28(%r8),%rcx
140878b27:	74 1f                	je     0x140878b48
140878b29:	41 8b 40 30          	mov    0x30(%r8),%eax
140878b2d:	39 41 20             	cmp    %eax,0x20(%rcx)
140878b30:	72 16                	jb     0x140878b48
140878b32:	39 99 80 00 00 00    	cmp    %ebx,0x80(%rcx)
140878b38:	74 0a                	je     0x140878b44
140878b3a:	49 8b c8             	mov    %r8,%rcx
140878b3d:	e8 ce bc 0a 00       	call   0x140924810
140878b42:	eb 28                	jmp    0x140878b6c
140878b44:	33 db                	xor    %ebx,%ebx
140878b46:	eb 2b                	jmp    0x140878b73
140878b48:	8b 59 30             	mov    0x30(%rcx),%ebx
140878b4b:	85 db                	test   %ebx,%ebx
140878b4d:	75 24                	jne    0x140878b73
140878b4f:	8b 81 c8 00 00 00    	mov    0xc8(%rcx),%eax
140878b55:	39 81 b8 00 00 00    	cmp    %eax,0xb8(%rcx)
140878b5b:	49 8b c8             	mov    %r8,%rcx
140878b5e:	76 07                	jbe    0x140878b67
140878b60:	e8 db 02 04 00       	call   0x1408b8e40
140878b65:	eb 05                	jmp    0x140878b6c
140878b67:	e8 04 16 04 00       	call   0x1408ba170
140878b6c:	4c 8b 44 24 30       	mov    0x30(%rsp),%r8
140878b71:	8b d8                	mov    %eax,%ebx
140878b73:	4d 85 c0             	test   %r8,%r8
140878b76:	74 54                	je     0x140878bcc
140878b78:	41 f6 40 34 20       	testb  $0x20,0x34(%r8)
140878b7d:	74 45                	je     0x140878bc4
140878b7f:	4d 8b 50 28          	mov    0x28(%r8),%r10
140878b83:	41 ff 8a 98 00 00 00 	decl   0x98(%r10)
140878b8a:	49 8b 82 a8 00 00 00 	mov    0xa8(%r10),%rax
140878b91:	49 89 40 20          	mov    %rax,0x20(%r8)
140878b95:	49 8b 4a 48          	mov    0x48(%r10),%rcx
140878b99:	4d 89 82 a8 00 00 00 	mov    %r8,0xa8(%r10)
140878ba0:	41 8b 50 30          	mov    0x30(%r8),%edx
140878ba4:	4d 8b 40 08          	mov    0x8(%r8),%r8
140878ba8:	ff ca                	dec    %edx
140878baa:	4c 8b 09             	mov    (%rcx),%r9
140878bad:	49 0f af 92 c8 00 00 	imul   0xc8(%r10),%rdx
140878bb4:	00
140878bb5:	49 8b 81 90 00 00 00 	mov    0x90(%r9),%rax
140878bbc:	ff 15 5e ae 70 00    	call   *0x70ae5e(%rip)        # 0x140f83a20
140878bc2:	eb 08                	jmp    0x140878bcc
140878bc4:	49 8b c8             	mov    %r8,%rcx
140878bc7:	e8 04 8f 07 00       	call   0x1408f1ad0
140878bcc:	ff c6                	inc    %esi
140878bce:	85 db                	test   %ebx,%ebx
140878bd0:	0f 84 fa fe ff ff    	je     0x140878ad0
140878bd6:	eb 16                	jmp    0x140878bee
140878bd8:	85 db                	test   %ebx,%ebx
140878bda:	75 12                	jne    0x140878bee
140878bdc:	33 d2                	xor    %edx,%edx
140878bde:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140878be4:	49 8b cd             	mov    %r13,%rcx
140878be7:	e8 44 64 07 00       	call   0x1408ef030
140878bec:	8b d8                	mov    %eax,%ebx
140878bee:	8b 15 0c 4c b3 00    	mov    0xb34c0c(%rip),%edx        # 0x1413ad800
140878bf4:	4d 8b f4             	mov    %r12,%r14
140878bf7:	8b 84 24 90 00 00 00 	mov    0x90(%rsp),%eax
140878bfe:	4c 63 94 24 80 00 00 	movslq 0x80(%rsp),%r10
140878c05:	00
140878c06:	03 c2                	add    %edx,%eax
140878c08:	48 63 c8             	movslq %eax,%rcx
140878c0b:	49 3b cc             	cmp    %r12,%rcx
140878c0e:	4c 0f 4c f1          	cmovl  %rcx,%r14
140878c12:	42 8d 04 12          	lea    (%rdx,%r10,1),%eax
140878c16:	48 63 f0             	movslq %eax,%rsi
140878c19:	85 db                	test   %ebx,%ebx
140878c1b:	0f 85 b1 01 00 00    	jne    0x140878dd2
140878c21:	49 8b ea             	mov    %r10,%rbp
140878c24:	49 3b f6             	cmp    %r14,%rsi
140878c27:	0f 8d d7 00 00 00    	jge    0x140878d04
140878c2d:	48 8b c6             	mov    %rsi,%rax
140878c30:	48 c7 84 24 90 00 00 	movq   $0x0,0x90(%rsp)
140878c37:	00 00 00 00 00
140878c3c:	48 99                	cqto
140878c3e:	4c 8d 84 24 90 00 00 	lea    0x90(%rsp),%r8
140878c45:	00
140878c46:	48 f7 fd             	idiv   %rbp
140878c49:	45 33 c9             	xor    %r9d,%r9d
140878c4c:	8d 50 01             	lea    0x1(%rax),%edx
140878c4f:	48 8b 44 24 38       	mov    0x38(%rsp),%rax
140878c54:	48 8b c8             	mov    %rax,%rcx
140878c57:	48 8b 80 10 01 00 00 	mov    0x110(%rax),%rax
140878c5e:	ff 15 bc ad 70 00    	call   *0x70adbc(%rip)        # 0x140f83a20
140878c64:	8b d8                	mov    %eax,%ebx
140878c66:	85 c0                	test   %eax,%eax
140878c68:	75 29                	jne    0x140878c93
140878c6a:	48 8b 84 24 90 00 00 	mov    0x90(%rsp),%rax
140878c71:	00
140878c72:	4c 8b ce             	mov    %rsi,%r9
140878c75:	44 8b 84 24 80 00 00 	mov    0x80(%rsp),%r8d
140878c7c:	00
140878c7d:	49 8b cf             	mov    %r15,%rcx
140878c80:	48 8b 50 08          	mov    0x8(%rax),%rdx
140878c84:	49 8b 07             	mov    (%r15),%rax
140878c87:	48 8b 40 18          	mov    0x18(%rax),%rax
140878c8b:	ff 15 8f ad 70 00    	call   *0x70ad8f(%rip)        # 0x140f83a20
140878c91:	8b d8                	mov    %eax,%ebx
140878c93:	4c 8b 84 24 90 00 00 	mov    0x90(%rsp),%r8
140878c9a:	00
140878c9b:	4d 85 c0             	test   %r8,%r8
140878c9e:	74 54                	je     0x140878cf4
140878ca0:	41 f6 40 34 20       	testb  $0x20,0x34(%r8)
140878ca5:	74 45                	je     0x140878cec
140878ca7:	4d 8b 50 28          	mov    0x28(%r8),%r10
140878cab:	41 ff 8a 98 00 00 00 	decl   0x98(%r10)
140878cb2:	49 8b 82 a8 00 00 00 	mov    0xa8(%r10),%rax
140878cb9:	49 89 40 20          	mov    %rax,0x20(%r8)
140878cbd:	49 8b 4a 48          	mov    0x48(%r10),%rcx
140878cc1:	4d 89 82 a8 00 00 00 	mov    %r8,0xa8(%r10)
140878cc8:	41 8b 50 30          	mov    0x30(%r8),%edx
140878ccc:	4d 8b 40 08          	mov    0x8(%r8),%r8
140878cd0:	ff ca                	dec    %edx
140878cd2:	4c 8b 09             	mov    (%rcx),%r9
140878cd5:	49 0f af 92 c8 00 00 	imul   0xc8(%r10),%rdx
140878cdc:	00
140878cdd:	49 8b 81 90 00 00 00 	mov    0x90(%r9),%rax
140878ce4:	ff 15 36 ad 70 00    	call   *0x70ad36(%rip)        # 0x140f83a20
140878cea:	eb 08                	jmp    0x140878cf4
140878cec:	49 8b c8             	mov    %r8,%rcx
140878cef:	e8 dc 8d 07 00       	call   0x1408f1ad0
140878cf4:	48 03 f5             	add    %rbp,%rsi
140878cf7:	85 db                	test   %ebx,%ebx
140878cf9:	0f 84 25 ff ff ff    	je     0x140878c24
140878cff:	e9 ce 00 00 00       	jmp    0x140878dd2
140878d04:	49 8b 07             	mov    (%r15),%rax