18009b7b7:	75 b1                	jne    0x18009b76a
18009b7b9:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
18009b7bd:	e8 8a c9 ff ff       	call   0x18009814c
18009b7c2:	8b c7                	mov    %edi,%eax
18009b7c4:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
18009b7c9:	48 8b 7c 24 68       	mov    0x68(%rsp),%rdi
18009b7ce:	48 83 c4 50          	add    $0x50,%rsp
18009b7d2:	5d                   	pop    %rbp
18009b7d3:	c3                   	ret
18009b7d4:	cc                   	int3
18009b7d5:	cc                   	int3
18009b7d6:	cc                   	int3
18009b7d7:	cc                   	int3
18009b7d8:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18009b7dd:	48 89 7c 24 10       	mov    %rdi,0x10(%rsp)
18009b7e2:	55                   	push   %rbp
18009b7e3:	48 8b ec             	mov    %rsp,%rbp
18009b7e6:	48 83 ec 50          	sub    $0x50,%rsp
18009b7ea:	33 ff                	xor    %edi,%edi
18009b7ec:	48 8d 45 e8          	lea    -0x18(%rbp),%rax
18009b7f0:	21 7d f8             	and    %edi,-0x8(%rbp)
18009b7f3:	48 8d 55 e0          	lea    -0x20(%rbp),%rdx
18009b7f7:	48 21 7d e8          	and    %rdi,-0x18(%rbp)
18009b7fb:	48 8d 4d d0          	lea    -0x30(%rbp),%rcx
18009b7ff:	21 7d f4             	and    %edi,-0xc(%rbp)
18009b802:	41 b9 00 10 00 00    	mov    $0x1000,%r9d
18009b808:	21 7d f0             	and    %edi,-0x10(%rbp)
18009b80b:	44 8d 47 05          	lea    0x5(%rdi),%r8d
18009b80f:	48 89 45 e0          	mov    %rax,-0x20(%rbp)
18009b813:	e8 74 c3 ff ff       	call   0x180097b8c
18009b818:	85 c0                	test   %eax,%eax
18009b81a:	78 5b                	js     0x18009b877
18009b81c:	48 8b 5d d0          	mov    -0x30(%rbp),%rbx
18009b820:	eb 41                	jmp    0x18009b863
18009b822:	8b 43 2c             	mov    0x2c(%rbx),%eax
18009b825:	25 00 00 00 f0       	and    $0xf0000000,%eax
18009b82a:	3d 00 00 00 d0       	cmp    $0xd0000000,%eax
18009b82f:	75 2f                	jne    0x18009b860
18009b831:	f7 43 28 00 00 00 30 	testl  $0x30000000,0x28(%rbx)
18009b838:	75 26                	jne    0x18009b860
18009b83a:	48 8b 4b 18          	mov    0x18(%rbx),%rcx
18009b83e:	48 85 c9             	test   %rcx,%rcx
18009b841:	74 0b                	je     0x18009b84e
18009b843:	48 c1 e1 0c          	shl    $0xc,%rcx
18009b847:	e8 e4 c2 ff ff       	call   0x180097b30
18009b84c:	eb 0d                	jmp    0x18009b85b
18009b84e:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
18009b852:	48 c1 e1 0c          	shl    $0xc,%rcx
18009b856:	e8 01 c3 ff ff       	call   0x180097b5c
18009b85b:	85 c0                	test   %eax,%eax
18009b85d:	0f 48 f8             	cmovs  %eax,%edi
18009b860:	48 8b 1b             	mov    (%rbx),%rbx
18009b863:	48 8d 45 d0          	lea    -0x30(%rbp),%rax
18009b867:	48 3b d8             	cmp    %rax,%rbx
18009b86a:	75 b6                	jne    0x18009b822
18009b86c:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
18009b870:	e8 d7 c8 ff ff       	call   0x18009814c
18009b875:	8b c7                	mov    %edi,%eax
18009b877:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
18009b87c:	48 8b 7c 24 68       	mov    0x68(%rsp),%rdi
18009b881:	48 83 c4 50          	add    $0x50,%rsp
18009b885:	5d                   	pop    %rbp
18009b886:	c3                   	ret
18009b887:	cc                   	int3
18009b888:	48 8b 05 09 74 10 00 	mov    0x107409(%rip),%rax        # 0x1801a2c98
18009b88f:	48 ff e0             	rex.W jmp *%rax
18009b892:	cc                   	int3
18009b893:	cc                   	int3
18009b894:	45 33 c0             	xor    %r8d,%r8d
18009b897:	48 8d 41 08          	lea    0x8(%rcx),%rax
18009b89b:	48 85 d2             	test   %rdx,%rdx
18009b89e:	44 89 41 18          	mov    %r8d,0x18(%rcx)
18009b8a2:	4c 89 00             	mov    %r8,(%rax)
18009b8a5:	48 0f 44 d0          	cmove  %rax,%rdx
18009b8a9:	4c 89 40 08          	mov    %r8,0x8(%rax)
18009b8ad:	48 89 11             	mov    %rdx,(%rcx)
18009b8b0:	c3                   	ret
18009b8b1:	cc                   	int3
18009b8b2:	cc                   	int3
18009b8b3:	cc                   	int3
18009b8b4:	80 3d d5 73 10 00 00 	cmpb   $0x0,0x1073d5(%rip)        # 0x1801a2c90
18009b8bb:	75 0d                	jne    0x18009b8ca
18009b8bd:	ff 05 b9 73 10 00    	incl   0x1073b9(%rip)        # 0x1801a2c7c
18009b8c3:	c6 05 c6 73 10 00 01 	movb   $0x1,0x1073c6(%rip)        # 0x1801a2c90
18009b8ca:	c3                   	ret
18009b8cb:	cc                   	int3
18009b8cc:	48 83 ec 28          	sub    $0x28,%rsp
18009b8d0:	80 3d b9 73 10 00 00 	cmpb   $0x0,0x1073b9(%rip)        # 0x1801a2c90
18009b8d7:	74 12                	je     0x18009b8eb
18009b8d9:	c6 05 b0 73 10 00 00 	movb   $0x0,0x1073b0(%rip)        # 0x1801a2c90
18009b8e0:	e8 b7 09 00 00       	call   0x18009c29c
18009b8e5:	ff 0d 91 73 10 00    	decl   0x107391(%rip)        # 0x1801a2c7c
18009b8eb:	48 83 c4 28          	add    $0x28,%rsp
18009b8ef:	c3                   	ret
18009b8f0:	cc                   	int3
18009b8f1:	cc                   	int3
18009b8f2:	cc                   	int3
18009b8f3:	cc                   	int3
18009b8f4:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18009b8f9:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
18009b8fe:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
18009b903:	57                   	push   %rdi
18009b904:	41 56                	push   %r14
18009b906:	41 57                	push   %r15
18009b908:	48 83 ec 20          	sub    $0x20,%rsp
18009b90c:	80 3d 85 9b 0f 00 00 	cmpb   $0x0,0xf9b85(%rip)        # 0x180195498
18009b913:	4d 8b f8             	mov    %r8,%r15
18009b916:	8b ea                	mov    %edx,%ebp
18009b918:	75 0a                	jne    0x18009b924
18009b91a:	b8 01 00 00 c0       	mov    $0xc0000001,%eax
18009b91f:	e9 bf 00 00 00       	jmp    0x18009b9e3
18009b924:	4d 85 ff             	test   %r15,%r15
18009b927:	0f 84 b1 00 00 00    	je     0x18009b9de
18009b92d:	83 f9 ff             	cmp    $0xffffffff,%ecx
18009b930:	0f 84 a8 00 00 00    	je     0x18009b9de
18009b936:	e8 19 06 00 00       	call   0x18009bf54
18009b93b:	48 8b f8             	mov    %rax,%rdi
18009b93e:	48 85 c0             	test   %rax,%rax
18009b941:	0f 84 97 00 00 00    	je     0x18009b9de
18009b947:	83 78 58 00          	cmpl   $0x0,0x58(%rax)
18009b94b:	0f 84 8d 00 00 00    	je     0x18009b9de
18009b951:	48 8b 18             	mov    (%rax),%rbx
18009b954:	45 33 f6             	xor    %r14d,%r14d
18009b957:	48 3b d8             	cmp    %rax,%rbx
18009b95a:	74 2f                	je     0x18009b98b
18009b95c:	48 8b f3             	mov    %rbx,%rsi
18009b95f:	39 6b 14             	cmp    %ebp,0x14(%rbx)
18009b962:	72 1a                	jb     0x18009b97e
18009b964:	44 8b 43 18          	mov    0x18(%rbx),%r8d
18009b968:	48 8d 4b 20          	lea    0x20(%rbx),%rcx
18009b96c:	45 33 c9             	xor    %r9d,%r9d
18009b96f:	8b d5                	mov    %ebp,%edx
18009b971:	e8 56 3e f9 ff       	call   0x18002f7cc
18009b976:	44 8b f0             	mov    %eax,%r14d
18009b979:	83 f8 ff             	cmp    $0xffffffff,%eax
18009b97c:	75 08                	jne    0x18009b986
18009b97e:	48 8b 1b             	mov    (%rbx),%rbx
18009b981:	48 3b df             	cmp    %rdi,%rbx
18009b984:	75 d6                	jne    0x18009b95c
18009b986:	48 3b df             	cmp    %rdi,%rbx
18009b989:	75 22                	jne    0x18009b9ad
18009b98b:	48 83 64 24 58 00    	andq   $0x0,0x58(%rsp)
18009b991:	48 8d 4c 24 58       	lea    0x58(%rsp),%rcx
18009b996:	44 8b c5             	mov    %ebp,%r8d
18009b999:	48 8b d7             	mov    %rdi,%rdx
18009b99c:	e8 e3 03 00 00       	call   0x18009bd84
18009b9a1:	85 c0                	test   %eax,%eax
18009b9a3:	78 3e                	js     0x18009b9e3
18009b9a5:	48 8b 74 24 58       	mov    0x58(%rsp),%rsi
18009b9aa:	45 33 f6             	xor    %r14d,%r14d
18009b9ad:	48 8d 4e 20          	lea    0x20(%rsi),%rcx
18009b9b1:	44 8b c5             	mov    %ebp,%r8d
18009b9b4:	41 8b d6             	mov    %r14d,%edx
18009b9b7:	e8 78 3f f9 ff       	call   0x18002f934
18009b9bc:	41 8d 04 2e          	lea    (%r14,%rbp,1),%eax
18009b9c0:	89 46 18             	mov    %eax,0x18(%rsi)
18009b9c3:	29 6e 14             	sub    %ebp,0x14(%rsi)
18009b9c6:	8b 4f 50             	mov    0x50(%rdi),%ecx
18009b9c9:	41 8b c6             	mov    %r14d,%eax
18009b9cc:	48 0f af c8          	imul   %rax,%rcx
18009b9d0:	48 8b 46 30          	mov    0x30(%rsi),%rax
18009b9d4:	48 03 c1             	add    %rcx,%rax
18009b9d7:	49 89 07             	mov    %rax,(%r15)
18009b9da:	33 c0                	xor    %eax,%eax
18009b9dc:	eb 05                	jmp    0x18009b9e3
18009b9de:	b8 0d 00 00 c0       	mov    $0xc000000d,%eax
18009b9e3:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
18009b9e8:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
18009b9ed:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
18009b9f2:	48 83 c4 20          	add    $0x20,%rsp
18009b9f6:	41 5f                	pop    %r15
18009b9f8:	41 5e                	pop    %r14
18009b9fa:	5f                   	pop    %rdi
18009b9fb:	c3                   	ret
18009b9fc:	cc                   	int3
18009b9fd:	cc                   	int3
18009b9fe:	cc                   	int3
18009b9ff:	cc                   	int3
18009ba00:	48 8b c4             	mov    %rsp,%rax
18009ba03:	48 89 58 08          	mov    %rbx,0x8(%rax)
18009ba07:	48 89 68 10          	mov    %rbp,0x10(%rax)
18009ba0b:	48 89 70 18          	mov    %rsi,0x18(%rax)
18009ba0f:	57                   	push   %rdi
18009ba10:	41 56                	push   %r14
18009ba12:	41 57                	push   %r15
18009ba14:	48 83 ec 30          	sub    $0x30,%rsp
18009ba18:	83 cf ff             	or     $0xffffffff,%edi
18009ba1b:	41 8b f1             	mov    %r9d,%esi
18009ba1e:	80 3d 73 9a 0f 00 00 	cmpb   $0x0,0xf9a73(%rip)        # 0x180195498
18009ba25:	41 8b e8             	mov    %r8d,%ebp
18009ba28:	44 8b f2             	mov    %edx,%r14d
18009ba2b:	89 78 38             	mov    %edi,0x38(%rax)
18009ba2e:	44 8b f9             	mov    %ecx,%r15d
18009ba31:	0f 84 9e 00 00 00    	je     0x18009bad5
18009ba37:	b9 60 00 00 00       	mov    $0x60,%ecx
18009ba3c:	e8 0f e4 ff ff       	call   0x180099e50
18009ba41:	48 8b d8             	mov    %rax,%rbx
18009ba44:	48 85 c0             	test   %rax,%rax
18009ba47:	0f 84 88 00 00 00    	je     0x18009bad5
18009ba4d:	33 d2                	xor    %edx,%edx
18009ba4f:	48 8b c8             	mov    %rax,%rcx
18009ba52:	44 8d 42 60          	lea    0x60(%rdx),%r8d
18009ba56:	e8 25 a2 09 00       	call   0x180135c80
18009ba5b:	8b 44 24 70          	mov    0x70(%rsp),%eax
18009ba5f:	4c 8d 8c 24 80 00 00 	lea    0x80(%rsp),%r9
18009ba66:	00
18009ba67:	89 43 48             	mov    %eax,0x48(%rbx)
18009ba6a:	48 8d 15 0f 72 10 00 	lea    0x10720f(%rip),%rdx        # 0x1801a2c80
18009ba71:	8b 44 24 78          	mov    0x78(%rsp),%eax
18009ba75:	48 8d 0d 0c 72 10 00 	lea    0x10720c(%rip),%rcx        # 0x1801a2c88
18009ba7c:	89 43 4c             	mov    %eax,0x4c(%rbx)
18009ba7f:	4c 8b c3             	mov    %rbx,%r8
18009ba82:	48 8d 05 63 05 00 00 	lea    0x563(%rip),%rax        # 0x18009bfec
18009ba89:	44 89 7b 38          	mov    %r15d,0x38(%rbx)
18009ba8d:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
18009ba92:	44 89 73 3c          	mov    %r14d,0x3c(%rbx)
18009ba96:	89 6b 40             	mov    %ebp,0x40(%rbx)
18009ba99:	89 73 44             	mov    %esi,0x44(%rbx)
18009ba9c:	c7 43 50 00 10 00 00 	movl   $0x1000,0x50(%rbx)
18009baa3:	48 89 5b 08          	mov    %rbx,0x8(%rbx)
18009baa7:	48 89 1b             	mov    %rbx,(%rbx)
18009baaa:	e8 7d 4b ff ff       	call   0x18009062c
18009baaf:	85 c0                	test   %eax,%eax
18009bab1:	79 04                	jns    0x18009bab7
18009bab3:	0b ff                	or     %edi,%edi
18009bab5:	eb 16                	jmp    0x18009bacd
18009bab7:	8b bc 24 80 00 00 00 	mov    0x80(%rsp),%edi
18009babe:	89 7b 54             	mov    %edi,0x54(%rbx)
18009bac1:	c7 43 58 01 00 00 00 	movl   $0x1,0x58(%rbx)
18009bac8:	83 ff ff             	cmp    $0xffffffff,%edi
18009bacb:	75 08                	jne    0x18009bad5
18009bacd:	48 8b cb             	mov    %rbx,%rcx
18009bad0:	e8 27 e5 ff ff       	call   0x180099ffc
18009bad5:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
18009bada:	8b c7                	mov    %edi,%eax
18009badc:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
18009bae1:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
18009bae6:	48 83 c4 30          	add    $0x30,%rsp
18009baea:	41 5f                	pop    %r15
18009baec:	41 5e                	pop    %r14
18009baee:	5f                   	pop    %rdi
18009baef:	c3                   	ret
18009baf0:	cc                   	int3
18009baf1:	cc                   	int3
18009baf2:	cc                   	int3
18009baf3:	cc                   	int3
18009baf4:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18009baf9:	57                   	push   %rdi
18009bafa:	48 83 ec 20          	sub    $0x20,%rsp
18009bafe:	80 3d 93 99 0f 00 00 	cmpb   $0x0,0xf9993(%rip)        # 0x180195498
18009bb05:	75 07                	jne    0x18009bb0e
18009bb07:	bb 01 00 00 c0       	mov    $0xc0000001,%ebx
18009bb0c:	eb 45                	jmp    0x18009bb53
18009bb0e:	e8 41 04 00 00       	call   0x18009bf54
18009bb13:	48 8b f8             	mov    %rax,%rdi
18009bb16:	48 85 c0             	test   %rax,%rax
18009bb19:	75 07                	jne    0x18009bb22
18009bb1b:	bb 0d 00 00 c0       	mov    $0xc000000d,%ebx
18009bb20:	eb 31                	jmp    0x18009bb53
18009bb22:	8b 48 58             	mov    0x58(%rax),%ecx
18009bb25:	85 c9                	test   %ecx,%ecx
18009bb27:	74 f2                	je     0x18009bb1b
18009bb29:	48 8b 00             	mov    (%rax),%rax
18009bb2c:	33 db                	xor    %ebx,%ebx
18009bb2e:	48 3b c7             	cmp    %rdi,%rax
18009bb31:	74 1b                	je     0x18009bb4e
18009bb33:	48 8b d0             	mov    %rax,%rdx
18009bb36:	48 8b cf             	mov    %rdi,%rcx
18009bb39:	e8 52 03 00 00       	call   0x18009be90
18009bb3e:	85 c0                	test   %eax,%eax
18009bb40:	0f 48 d8             	cmovs  %eax,%ebx
18009bb43:	48 8b 07             	mov    (%rdi),%rax
18009bb46:	48 3b c7             	cmp    %rdi,%rax
18009bb49:	75 e8                	jne    0x18009bb33
18009bb4b:	8b 4f 58             	mov    0x58(%rdi),%ecx
18009bb4e:	ff c9                	dec    %ecx
18009bb50:	89 4f 58             	mov    %ecx,0x58(%rdi)
18009bb53:	8b c3                	mov    %ebx,%eax
18009bb55:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18009bb5a:	48 83 c4 20          	add    $0x20,%rsp
18009bb5e:	5f                   	pop    %rdi
18009bb5f:	c3                   	ret
18009bb60:	cc                   	int3
18009bb61:	cc                   	int3
18009bb62:	cc                   	int3
18009bb63:	cc                   	int3
18009bb64:	48 8b c4             	mov    %rsp,%rax
18009bb67:	48 89 58 08          	mov    %rbx,0x8(%rax)
18009bb6b:	48 89 68 10          	mov    %rbp,0x10(%rax)
18009bb6f:	48 89 70 18          	mov    %rsi,0x18(%rax)
18009bb73:	48 89 78 20          	mov    %rdi,0x20(%rax)
18009bb77:	41 56                	push   %r14
18009bb79:	48 83 ec 20          	sub    $0x20,%rsp
18009bb7d:	33 db                	xor    %ebx,%ebx
18009bb7f:	45 8b f0             	mov    %r8d,%r14d
18009bb82:	38 1d 10 99 0f 00    	cmp    %bl,0xf9910(%rip)        # 0x180195498
18009bb88:	48 8b f2             	mov    %rdx,%rsi
18009bb8b:	75 0a                	jne    0x18009bb97
18009bb8d:	bb 01 00 00 c0       	mov    $0xc0000001,%ebx
18009bb92:	e9 c3 00 00 00       	jmp    0x18009bc5a
18009bb97:	83 f9 ff             	cmp    $0xffffffff,%ecx
18009bb9a:	0f 84 b5 00 00 00    	je     0x18009bc55
18009bba0:	45 85 f6             	test   %r14d,%r14d
18009bba3:	0f 84 ac 00 00 00    	je     0x18009bc55
18009bba9:	e8 a6 03 00 00       	call   0x18009bf54
18009bbae:	48 8b f8             	mov    %rax,%rdi
18009bbb1:	48 85 c0             	test   %rax,%rax
18009bbb4:	0f 84 9b 00 00 00    	je     0x18009bc55
18009bbba:	8b 50 50             	mov    0x50(%rax),%edx
18009bbbd:	41 0f af d6          	imul   %r14d,%edx
18009bbc1:	48 03 d6             	add    %rsi,%rdx
18009bbc4:	48 3b d6             	cmp    %rsi,%rdx
18009bbc7:	0f 82 88 00 00 00    	jb     0x18009bc55
18009bbcd:	48 8b 08             	mov    (%rax),%rcx
18009bbd0:	48 3b c8             	cmp    %rax,%rcx
18009bbd3:	74 79                	je     0x18009bc4e
18009bbd5:	44 8b 41 10          	mov    0x10(%rcx),%r8d
18009bbd9:	48 8b e9             	mov    %rcx,%rbp
18009bbdc:	44 0f af 40 50       	imul   0x50(%rax),%r8d
18009bbe1:	4c 8b 49 30          	mov    0x30(%rcx),%r9
18009bbe5:	4d 03 c1             	add    %r9,%r8
18009bbe8:	49 3b f1             	cmp    %r9,%rsi
18009bbeb:	72 05                	jb     0x18009bbf2
18009bbed:	49 3b f0             	cmp    %r8,%rsi
18009bbf0:	72 08                	jb     0x18009bbfa
18009bbf2:	48 8b 09             	mov    (%rcx),%rcx
18009bbf5:	48 3b cf             	cmp    %rdi,%rcx
18009bbf8:	75 db                	jne    0x18009bbd5
18009bbfa:	48 3b cf             	cmp    %rdi,%rcx
18009bbfd:	74 4f                	je     0x18009bc4e
18009bbff:	49 3b d0             	cmp    %r8,%rdx
18009bc02:	77 51                	ja     0x18009bc55
18009bc04:	49 2b f1             	sub    %r9,%rsi
18009bc07:	40 f6 c6 03          	test   $0x3,%sil
18009bc0b:	75 48                	jne    0x18009bc55
18009bc0d:	8b 48 50             	mov    0x50(%rax),%ecx
18009bc10:	33 d2                	xor    %edx,%edx
18009bc12:	48 8b c6             	mov    %rsi,%rax
18009bc15:	45 8b c6             	mov    %r14d,%r8d
18009bc18:	48 f7 f1             	div    %rcx
18009bc1b:	48 8d 4d 20          	lea    0x20(%rbp),%rcx
18009bc1f:	8b d0                	mov    %eax,%edx
18009bc21:	48 8b f0             	mov    %rax,%rsi
18009bc24:	e8 6b 3c f9 ff       	call   0x18002f894
18009bc29:	8b 4d 14             	mov    0x14(%rbp),%ecx
18009bc2c:	8b 55 10             	mov    0x10(%rbp),%edx
18009bc2f:	41 03 ce             	add    %r14d,%ecx
18009bc32:	89 4d 14             	mov    %ecx,0x14(%rbp)
18009bc35:	39 55 18             	cmp    %edx,0x18(%rbp)
18009bc38:	72 03                	jb     0x18009bc3d