18011989d:	c3                   	ret
18011989e:	cc                   	int3
18011989f:	cc                   	int3
1801198a0:	40 53                	rex push %rbx
1801198a2:	48 83 ec 20          	sub    $0x20,%rsp
1801198a6:	33 db                	xor    %ebx,%ebx
1801198a8:	44 8b d2             	mov    %edx,%r10d
1801198ab:	8b d3                	mov    %ebx,%edx
1801198ad:	45 84 c9             	test   %r9b,%r9b
1801198b0:	75 05                	jne    0x1801198b7
1801198b2:	8d 43 08             	lea    0x8(%rbx),%eax
1801198b5:	eb 19                	jmp    0x1801198d0
1801198b7:	48 8b 15 9a 69 05 00 	mov    0x5699a(%rip),%rdx        # 0x180170258
1801198be:	48 85 d2             	test   %rdx,%rdx
1801198c1:	75 07                	jne    0x1801198ca
1801198c3:	bb bb 00 00 c0       	mov    $0xc00000bb,%ebx
1801198c8:	eb 3f                	jmp    0x180119909
1801198ca:	8b 05 38 63 05 00    	mov    0x56338(%rip),%eax        # 0x18016fc08
1801198d0:	4d 85 c0             	test   %r8,%r8
1801198d3:	74 03                	je     0x1801198d8
1801198d5:	41 89 00             	mov    %eax,(%r8)
1801198d8:	44 3b d0             	cmp    %eax,%r10d
1801198db:	73 07                	jae    0x1801198e4
1801198dd:	bb 23 00 00 c0       	mov    $0xc0000023,%ebx
1801198e2:	eb 25                	jmp    0x180119909
1801198e4:	45 84 c9             	test   %r9b,%r9b
1801198e7:	75 18                	jne    0x180119901
1801198e9:	48 85 c9             	test   %rcx,%rcx
1801198ec:	75 07                	jne    0x1801198f5
1801198ee:	bb 0d 00 00 c0       	mov    $0xc000000d,%ebx
1801198f3:	eb 14                	jmp    0x180119909
1801198f5:	48 8b 05 ac b6 08 00 	mov    0x8b6ac(%rip),%rax        # 0x1801a4fa8
1801198fc:	48 89 01             	mov    %rax,(%rcx)
1801198ff:	eb 08                	jmp    0x180119909
180119901:	44 8b c0             	mov    %eax,%r8d
180119904:	e8 b7 c0 01 00       	call   0x1801359c0
180119909:	8b c3                	mov    %ebx,%eax
18011990b:	48 83 c4 20          	add    $0x20,%rsp
18011990f:	5b                   	pop    %rbx
180119910:	c3                   	ret
180119911:	cc                   	int3
180119912:	cc                   	int3
180119913:	cc                   	int3
180119914:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180119919:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
18011991e:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
180119923:	57                   	push   %rdi
180119924:	48 83 ec 20          	sub    $0x20,%rsp
180119928:	e8 e7 f8 f4 ff       	call   0x180069214
18011992d:	8b f8                	mov    %eax,%edi
18011992f:	e8 98 05 f2 ff       	call   0x180039ecc
180119934:	e8 a3 d1 f0 ff       	call   0x180026adc
180119939:	8b 15 31 b6 08 00    	mov    0x8b631(%rip),%edx        # 0x1801a4f70
18011993f:	4c 8d 05 3e dc f0 ff 	lea    -0xf23c2(%rip),%r8        # 0x180027584
180119946:	48 8b 0d 43 b6 08 00 	mov    0x8b643(%rip),%rcx        # 0x1801a4f90
18011994d:	e8 a2 6e f7 ff       	call   0x1800907f4
180119952:	48 8b 0d 37 b6 08 00 	mov    0x8b637(%rip),%rcx        # 0x1801a4f90
180119959:	8b f0                	mov    %eax,%esi
18011995b:	e8 9c 06 f8 ff       	call   0x180099ffc
180119960:	48 8b 1d 19 b6 08 00 	mov    0x8b619(%rip),%rbx        # 0x1801a4f80
180119967:	48 8d 2d 12 b6 08 00 	lea    0x8b612(%rip),%rbp        # 0x1801a4f80
18011996e:	eb 0b                	jmp    0x18011997b
180119970:	48 8b cb             	mov    %rbx,%rcx
180119973:	48 8b 1b             	mov    (%rbx),%rbx
180119976:	e8 81 06 f8 ff       	call   0x180099ffc
18011997b:	48 3b dd             	cmp    %rbp,%rbx
18011997e:	75 f0                	jne    0x180119970
180119980:	8b 15 82 bf 07 00    	mov    0x7bf82(%rip),%edx        # 0x180195908
180119986:	4c 8d 05 73 00 00 00 	lea    0x73(%rip),%r8        # 0x180119a00
18011998d:	48 8b 0d 7c bf 07 00 	mov    0x7bf7c(%rip),%rcx        # 0x180195910
180119994:	85 ff                	test   %edi,%edi
180119996:	0f 49 fe             	cmovns %esi,%edi
180119999:	e8 56 6e f7 ff       	call   0x1800907f4
18011999e:	48 8b 0d 6b bf 07 00 	mov    0x7bf6b(%rip),%rcx        # 0x180195910
1801199a5:	85 ff                	test   %edi,%edi
1801199a7:	0f 49 f8             	cmovns %eax,%edi
1801199aa:	e8 4d 06 f8 ff       	call   0x180099ffc
1801199af:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1801199b4:	85 ff                	test   %edi,%edi
1801199b6:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
1801199bb:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
1801199c0:	0f 49 f8             	cmovns %eax,%edi
1801199c3:	8b c7                	mov    %edi,%eax
1801199c5:	48 83 c4 20          	add    $0x20,%rsp
1801199c9:	5f                   	pop    %rdi
1801199ca:	c3                   	ret
1801199cb:	cc                   	int3
1801199cc:	48 83 ec 38          	sub    $0x38,%rsp
1801199d0:	48 8d 05 a1 99 ee ff 	lea    -0x11665f(%rip),%rax        # 0x180003378
1801199d7:	4c 8b c1             	mov    %rcx,%r8
1801199da:	48 8d 0d 2f bf 07 00 	lea    0x7bf2f(%rip),%rcx        # 0x180195910
1801199e1:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1801199e6:	4c 8d 4c 24 48       	lea    0x48(%rsp),%r9
1801199eb:	48 8d 15 16 bf 07 00 	lea    0x7bf16(%rip),%rdx        # 0x180195908
1801199f2:	e8 35 6c f7 ff       	call   0x18009062c
1801199f7:	48 83 c4 38          	add    $0x38,%rsp
1801199fb:	c3                   	ret
1801199fc:	cc                   	int3
1801199fd:	cc                   	int3
1801199fe:	cc                   	int3
1801199ff:	cc                   	int3
180119a00:	48 8b c1             	mov    %rcx,%rax
180119a03:	48 ff e0             	rex.W jmp *%rax
180119a06:	cc                   	int3
180119a07:	cc                   	int3
180119a08:	48 8b c4             	mov    %rsp,%rax
180119a0b:	48 89 58 08          	mov    %rbx,0x8(%rax)
180119a0f:	48 89 68 10          	mov    %rbp,0x10(%rax)
180119a13:	48 89 78 18          	mov    %rdi,0x18(%rax)
180119a17:	4c 89 70 20          	mov    %r14,0x20(%rax)
180119a1b:	8b c2                	mov    %edx,%eax
180119a1d:	33 db                	xor    %ebx,%ebx
180119a1f:	48 d1 e8             	shr    $1,%rax
180119a22:	49 8b f8             	mov    %r8,%rdi
180119a25:	4c 8b c9             	mov    %rcx,%r9
180119a28:	d1 ea                	shr    $1,%edx
180119a2a:	bd ff 07 00 00       	mov    $0x7ff,%ebp
180119a2f:	41 be ff 03 00 00    	mov    $0x3ff,%r14d
180119a35:	4c 8d 1c 41          	lea    (%rcx,%rax,2),%r11
180119a39:	41 b8 fd ff 00 00    	mov    $0xfffd,%r8d
180119a3f:	45 33 d2             	xor    %r10d,%r10d
180119a42:	4d 3b cb             	cmp    %r11,%r9
180119a45:	72 0d                	jb     0x180119a54
180119a47:	45 85 d2             	test   %r10d,%r10d
180119a4a:	0f 84 f1 01 00 00    	je     0x180119c41
180119a50:	ff c2                	inc    %edx
180119a52:	eb 3c                	jmp    0x180119a90
180119a54:	41 0f b7 01          	movzwl (%r9),%eax
180119a58:	45 85 d2             	test   %r10d,%r10d
180119a5b:	74 1c                	je     0x180119a79
180119a5d:	8d 88 00 24 ff ff    	lea    -0xdc00(%rax),%ecx
180119a63:	ff c2                	inc    %edx
180119a65:	41 3b ce             	cmp    %r14d,%ecx
180119a68:	49 8d 41 02          	lea    0x2(%r9),%rax
180119a6c:	49 0f 47 c1          	cmova  %r9,%rax
180119a70:	45 0f 46 d0          	cmovbe %r8d,%r10d
180119a74:	4c 8b c8             	mov    %rax,%r9
180119a77:	eb 17                	jmp    0x180119a90
180119a79:	44 8b d0             	mov    %eax,%r10d
180119a7c:	49 83 c1 02          	add    $0x2,%r9
180119a80:	41 8d 82 00 28 ff ff 	lea    -0xd800(%r10),%eax
180119a87:	41 3b c6             	cmp    %r14d,%eax
180119a8a:	0f 86 aa 01 00 00    	jbe    0x180119c3a
180119a90:	41 8d 82 00 28 ff ff 	lea    -0xd800(%r10),%eax
180119a97:	3b c5                	cmp    %ebp,%eax
180119a99:	77 08                	ja     0x180119aa3
180119a9b:	bb 07 01 00 00       	mov    $0x107,%ebx
180119aa0:	45 8b d0             	mov    %r8d,%r10d
180119aa3:	41 83 fa 7f          	cmp    $0x7f,%r10d
180119aa7:	76 0c                	jbe    0x180119ab5
180119aa9:	8d 42 01             	lea    0x1(%rdx),%eax
180119aac:	44 3b d5             	cmp    %ebp,%r10d
180119aaf:	0f 46 c2             	cmovbe %edx,%eax
180119ab2:	8d 50 01             	lea    0x1(%rax),%edx
180119ab5:	49 8b c3             	mov    %r11,%rax
180119ab8:	49 2b c1             	sub    %r9,%rax
180119abb:	48 d1 f8             	sar    $1,%rax
180119abe:	48 83 f8 0d          	cmp    $0xd,%rax
180119ac2:	77 19                	ja     0x180119add
180119ac4:	4d 3b cb             	cmp    %r11,%r9
180119ac7:	0f 83 74 01 00 00    	jae    0x180119c41
180119acd:	45 0f b7 11          	movzwl (%r9),%r10d
180119ad1:	49 83 c1 02          	add    $0x2,%r9
180119ad5:	41 83 fa 7f          	cmp    $0x7f,%r10d
180119ad9:	76 e9                	jbe    0x180119ac4
180119adb:	eb a3                	jmp    0x180119a80
180119add:	4c 8d 40 f9          	lea    -0x7(%rax),%r8
180119ae1:	4f 8d 04 41          	lea    (%r9,%r8,2),%r8
180119ae5:	4d 3b c8             	cmp    %r8,%r9
180119ae8:	0f 83 4b ff ff ff    	jae    0x180119a39
180119aee:	41 0f b7 09          	movzwl (%r9),%ecx
180119af2:	49 83 c1 02          	add    $0x2,%r9
180119af6:	83 f9 7f             	cmp    $0x7f,%ecx
180119af9:	76 1a                	jbe    0x180119b15
180119afb:	3b cd                	cmp    %ebp,%ecx
180119afd:	76 14                	jbe    0x180119b13
180119aff:	8b c1                	mov    %ecx,%eax
180119b01:	25 00 f8 00 00       	and    $0xf800,%eax
180119b06:	3d 00 d8 00 00       	cmp    $0xd800,%eax
180119b0b:	0f 84 ef 00 00 00    	je     0x180119c00
180119b11:	ff c2                	inc    %edx
180119b13:	ff c2                	inc    %edx
180119b15:	41 f6 c1 02          	test   $0x2,%r9b
180119b19:	74 27                	je     0x180119b42
180119b1b:	41 0f b7 09          	movzwl (%r9),%ecx
180119b1f:	49 83 c1 02          	add    $0x2,%r9
180119b23:	83 f9 7f             	cmp    $0x7f,%ecx
180119b26:	76 1a                	jbe    0x180119b42
180119b28:	3b cd                	cmp    %ebp,%ecx
180119b2a:	76 14                	jbe    0x180119b40
180119b2c:	8b c1                	mov    %ecx,%eax
180119b2e:	25 00 f8 00 00       	and    $0xf800,%eax
180119b33:	3d 00 d8 00 00       	cmp    $0xd800,%eax
180119b38:	0f 84 c2 00 00 00    	je     0x180119c00
180119b3e:	ff c2                	inc    %edx
180119b40:	ff c2                	inc    %edx
180119b42:	41 ba 80 ff 80 ff    	mov    $0xff80ff80,%r10d
180119b48:	4d 3b c8             	cmp    %r8,%r9
180119b4b:	0f 83 e8 fe ff ff    	jae    0x180119a39
180119b51:	41 8b 41 04          	mov    0x4(%r9),%eax
180119b55:	41 8b 09             	mov    (%r9),%ecx
180119b58:	0b c1                	or     %ecx,%eax
180119b5a:	41 85 c2             	test   %eax,%r10d
180119b5d:	74 3d                	je     0x180119b9c
180119b5f:	a9 00 f8 00 f8       	test   $0xf800f800,%eax
180119b64:	0f 85 86 00 00 00    	jne    0x180119bf0
180119b6a:	f7 c1 00 00 80 ff    	test   $0xff800000,%ecx
180119b70:	8d 42 01             	lea    0x1(%rdx),%eax
180119b73:	0f 44 c2             	cmove  %edx,%eax
180119b76:	f7 c1 80 ff 00 00    	test   $0xff80,%ecx
180119b7c:	8d 48 01             	lea    0x1(%rax),%ecx
180119b7f:	0f 44 c8             	cmove  %eax,%ecx
180119b82:	41 f7 41 04 00 00 80 	testl  $0xff800000,0x4(%r9)
180119b89:	ff
180119b8a:	8d 51 01             	lea    0x1(%rcx),%edx
180119b8d:	0f 44 d1             	cmove  %ecx,%edx
180119b90:	41 f7 41 04 80 ff 00 	testl  $0xff80,0x4(%r9)
180119b97:	00
180119b98:	74 02                	je     0x180119b9c
180119b9a:	ff c2                	inc    %edx
180119b9c:	41 8b 41 0c          	mov    0xc(%r9),%eax
180119ba0:	49 83 c1 08          	add    $0x8,%r9
180119ba4:	41 8b 09             	mov    (%r9),%ecx
180119ba7:	0b c1                	or     %ecx,%eax
180119ba9:	41 85 c2             	test   %eax,%r10d
180119bac:	74 39                	je     0x180119be7
180119bae:	a9 00 f8 00 f8       	test   $0xf800f800,%eax
180119bb3:	75 3b                	jne    0x180119bf0
180119bb5:	f7 c1 00 00 80 ff    	test   $0xff800000,%ecx
180119bbb:	8d 42 01             	lea    0x1(%rdx),%eax
180119bbe:	0f 44 c2             	cmove  %edx,%eax
180119bc1:	f7 c1 80 ff 00 00    	test   $0xff80,%ecx
180119bc7:	8d 48 01             	lea    0x1(%rax),%ecx
180119bca:	0f 44 c8             	cmove  %eax,%ecx
180119bcd:	41 f7 41 04 00 00 80 	testl  $0xff800000,0x4(%r9)
180119bd4:	ff
180119bd5:	8d 51 01             	lea    0x1(%rcx),%edx
180119bd8:	0f 44 d1             	cmove  %ecx,%edx
180119bdb:	41 f7 41 04 80 ff 00 	testl  $0xff80,0x4(%r9)
180119be2:	00
180119be3:	74 02                	je     0x180119be7
180119be5:	ff c2                	inc    %edx
180119be7:	49 83 c1 08          	add    $0x8,%r9
180119beb:	e9 58 ff ff ff       	jmp    0x180119b48
180119bf0:	0f b7 c9             	movzwl %cx,%ecx
180119bf3:	49 83 c1 02          	add    $0x2,%r9
180119bf7:	83 f9 7f             	cmp    $0x7f,%ecx
180119bfa:	0f 86 e5 fe ff ff    	jbe    0x180119ae5
180119c00:	3b cd                	cmp    %ebp,%ecx
180119c02:	76 26                	jbe    0x180119c2a
180119c04:	8d 81 00 28 ff ff    	lea    -0xd800(%rcx),%eax
180119c0a:	3b c5                	cmp    %ebp,%eax
180119c0c:	77 1a                	ja     0x180119c28
180119c0e:	81 f9 ff db 00 00    	cmp    $0xdbff,%ecx
180119c14:	77 1b                	ja     0x180119c31
180119c16:	41 0f b7 01          	movzwl (%r9),%eax
180119c1a:	2d 00 dc 00 00       	sub    $0xdc00,%eax
180119c1f:	41 3b c6             	cmp    %r14d,%eax
180119c22:	77 0d                	ja     0x180119c31
180119c24:	49 83 c1 02          	add    $0x2,%r9
180119c28:	ff c2                	inc    %edx
180119c2a:	ff c2                	inc    %edx
180119c2c:	e9 b4 fe ff ff       	jmp    0x180119ae5
180119c31:	49 83 e9 02          	sub    $0x2,%r9
180119c35:	e9 ff fd ff ff       	jmp    0x180119a39
180119c3a:	ff ca                	dec    %edx
180119c3c:	e9 01 fe ff ff       	jmp    0x180119a42
180119c41:	48 8b 6c 24 10       	mov    0x10(%rsp),%rbp
180119c46:	8b c3                	mov    %ebx,%eax
180119c48:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
180119c4d:	4c 8b 74 24 20       	mov    0x20(%rsp),%r14
180119c52:	89 17                	mov    %edx,(%rdi)
180119c54:	48 8b 7c 24 18       	mov    0x18(%rsp),%rdi
180119c59:	c3                   	ret
180119c5a:	cc                   	int3
180119c5b:	cc                   	int3
180119c5c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180119c61:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
180119c66:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
180119c6b:	57                   	push   %rdi
180119c6c:	41 55                	push   %r13
180119c6e:	41 56                	push   %r14
180119c70:	48 83 ec 20          	sub    $0x20,%rsp
180119c74:	33 db                	xor    %ebx,%ebx
180119c76:	45 33 d2             	xor    %r10d,%r10d
180119c79:	4d 8b d8             	mov    %r8,%r11
180119c7c:	48 8b f9             	mov    %rcx,%rdi
180119c7f:	48 85 c9             	test   %rcx,%rcx
180119c82:	75 20                	jne    0x180119ca4
180119c84:	4d 85 c0             	test   %r8,%r8
180119c87:	75 0a                	jne    0x180119c93
180119c89:	b8 0d 00 00 c0       	mov    $0xc000000d,%eax
180119c8e:	e9 c7 02 00 00       	jmp    0x180119f5a
180119c93:	8b 54 24 60          	mov    0x60(%rsp),%edx
180119c97:	49 8b c9             	mov    %r9,%rcx
180119c9a:	e8 69 fd ff ff       	call   0x180119a08
180119c9f:	e9 b6 02 00 00       	jmp    0x180119f5a
180119ca4:	41 be 01 00 00 00    	mov    $0x1,%r14d
180119caa:	44 84 74 24 60       	test   %r14b,0x60(%rsp)
180119caf:	74 0a                	je     0x180119cbb
180119cb1:	b8 f3 00 00 c0       	mov    $0xc00000f3,%eax
180119cb6:	e9 9f 02 00 00       	jmp    0x180119f5a
180119cbb:	8b 44 24 60          	mov    0x60(%rsp),%eax
180119cbf:	41 bd ff 07 00 00    	mov    $0x7ff,%r13d
180119cc5:	48 d1 e8             	shr    $1,%rax
180119cc8:	8b ea                	mov    %edx,%ebp
180119cca:	48 03 ef             	add    %rdi,%rbp
180119ccd:	49 8d 34 41          	lea    (%r9,%rax,2),%rsi
180119cd1:	4c 3b ce             	cmp    %rsi,%r9
180119cd4:	72 0b                	jb     0x180119ce1
180119cd6:	45 85 d2             	test   %r10d,%r10d
180119cd9:	0f 84 74 02 00 00    	je     0x180119f53
180119cdf:	eb 3f                	jmp    0x180119d20
180119ce1:	41 0f b7 11          	movzwl (%r9),%edx
180119ce5:	45 85 d2             	test   %r10d,%r10d
180119ce8:	74 21                	je     0x180119d0b
180119cea:	8d 82 00 24 ff ff    	lea    -0xdc00(%rdx),%eax
180119cf0:	3d ff 03 00 00       	cmp    $0x3ff,%eax
180119cf5:	77 29                	ja     0x180119d20
180119cf7:	41 c1 e2 0a          	shl    $0xa,%r10d
180119cfb:	41 81 c2 00 24 a0 fc 	add    $0xfca02400,%r10d
180119d02:	44 03 d2             	add    %edx,%r10d
180119d05:	49 83 c1 02          	add    $0x2,%r9
180119d09:	eb 15                	jmp    0x180119d20
180119d0b:	44 8b d2             	mov    %edx,%r10d
180119d0e:	49 83 c1 02          	add    $0x2,%r9
180119d12:	41 8d 82 00 28 ff ff 	lea    -0xd800(%r10),%eax
180119d19:	3d ff 03 00 00       	cmp    $0x3ff,%eax
180119d1e:	76 b1                	jbe    0x180119cd1
180119d20:	41 8d 82 00 28 ff ff 	lea    -0xd800(%r10),%eax
180119d27:	41 3b c5             	cmp    %r13d,%eax
180119d2a:	77 0b                	ja     0x180119d37
180119d2c:	bb 07 01 00 00       	mov    $0x107,%ebx
180119d31:	41 ba fd ff 00 00    	mov    $0xfffd,%r10d
180119d37:	49 8b d6             	mov    %r14,%rdx
180119d3a:	41 83 fa 7f          	cmp    $0x7f,%r10d
180119d3e:	76 1c                	jbe    0x180119d5c
180119d40:	49 8b c6             	mov    %r14,%rax
180119d43:	45 3b d5             	cmp    %r13d,%r10d
180119d46:	76 10                	jbe    0x180119d58
180119d48:	33 c0                	xor    %eax,%eax
180119d4a:	41 81 fa ff ff 00 00 	cmp    $0xffff,%r10d
180119d51:	0f 97 c0             	seta   %al
180119d54:	48 83 c0 02          	add    $0x2,%rax
180119d58:	48 8d 50 01          	lea    0x1(%rax),%rdx
180119d5c:	48 8b c5             	mov    %rbp,%rax
180119d5f:	48 2b c2             	sub    %rdx,%rax
180119d62:	48 3b c8             	cmp    %rax,%rcx
180119d65:	0f 87 e3 01 00 00    	ja     0x180119f4e
180119d6b:	41 83 fa 7f          	cmp    $0x7f,%r10d