140098816:	45 33 e4             	xor    %r12d,%r12d
140098819:	48 89 55 d0          	mov    %rdx,-0x30(%rbp)
14009881d:	44 89 65 c8          	mov    %r12d,-0x38(%rbp)
140098821:	49 8b d9             	mov    %r9,%rbx
140098824:	49 8b f0             	mov    %r8,%rsi
140098827:	4c 8b f9             	mov    %rcx,%r15
14009882a:	41 8b fc             	mov    %r12d,%edi
14009882d:	48 85 c9             	test   %rcx,%rcx
140098830:	74 0c                	je     0x14009883e
140098832:	4d 85 c0             	test   %r8,%r8
140098835:	75 07                	jne    0x14009883e
140098837:	33 c0                	xor    %eax,%eax
140098839:	e9 d8 02 00 00       	jmp    0x140098b16
14009883e:	48 85 d2             	test   %rdx,%rdx
140098841:	75 2d                	jne    0x140098870
140098843:	41 c6 41 30 01       	movb   $0x1,0x30(%r9)
140098848:	45 33 c0             	xor    %r8d,%r8d
14009884b:	41 c7 41 2c 16 00 00 	movl   $0x16,0x2c(%r9)
140098852:	00
140098853:	33 c9                	xor    %ecx,%ecx
140098855:	45 33 c9             	xor    %r9d,%r9d
140098858:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
14009885d:	4c 89 64 24 20       	mov    %r12,0x20(%rsp)
140098862:	e8 49 61 ff ff       	call   0x14008e9b0
140098867:	48 83 c8 ff          	or     $0xffffffffffffffff,%rax
14009886b:	e9 a6 02 00 00       	jmp    0x140098b16
140098870:	45 38 61 28          	cmp    %r12b,0x28(%r9)
140098874:	75 0c                	jne    0x140098882
140098876:	48 8b cb             	mov    %rbx,%rcx
140098879:	e8 02 99 fd ff       	call   0x140072180
14009887e:	48 8b 55 d0          	mov    -0x30(%rbp),%rdx
140098882:	48 8b 43 18          	mov    0x18(%rbx),%rax
140098886:	44 8b 50 0c          	mov    0xc(%rax),%r10d
14009888a:	41 81 fa e9 fd 00 00 	cmp    $0xfde9,%r10d
140098891:	75 21                	jne    0x1400988b4
140098893:	4c 8d 4d d8          	lea    -0x28(%rbp),%r9
140098897:	4c 89 65 d8          	mov    %r12,-0x28(%rbp)
14009889b:	4c 8b c6             	mov    %rsi,%r8
14009889e:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
1400988a3:	48 8d 55 d0          	lea    -0x30(%rbp),%rdx
1400988a7:	49 8b cf             	mov    %r15,%rcx
1400988aa:	e8 f5 f4 fe ff       	call   0x140087da4
1400988af:	e9 62 02 00 00       	jmp    0x140098b16
1400988b4:	48 8b 88 38 01 00 00 	mov    0x138(%rax),%rcx
1400988bb:	4d 85 ff             	test   %r15,%r15
1400988be:	0f 84 d2 01 00 00    	je     0x140098a96
1400988c4:	48 85 c9             	test   %rcx,%rcx
1400988c7:	75 4c                	jne    0x140098915
1400988c9:	48 85 f6             	test   %rsi,%rsi
1400988cc:	0f 84 41 02 00 00    	je     0x140098b13
1400988d2:	41 b8 ff 00 00 00    	mov    $0xff,%r8d
1400988d8:	66 44 39 02          	cmp    %r8w,(%rdx)
1400988dc:	77 27                	ja     0x140098905
1400988de:	8a 02                	mov    (%rdx),%al
1400988e0:	41 88 04 3f          	mov    %al,(%r15,%rdi,1)
1400988e4:	0f b7 02             	movzwl (%rdx),%eax
1400988e7:	48 83 c2 02          	add    $0x2,%rdx
1400988eb:	48 89 55 d0          	mov    %rdx,-0x30(%rbp)
1400988ef:	66 85 c0             	test   %ax,%ax
1400988f2:	0f 84 1b 02 00 00    	je     0x140098b13
1400988f8:	48 ff c7             	inc    %rdi
1400988fb:	48 3b fe             	cmp    %rsi,%rdi
1400988fe:	72 d8                	jb     0x1400988d8
140098900:	e9 0e 02 00 00       	jmp    0x140098b13
140098905:	c6 43 30 01          	movb   $0x1,0x30(%rbx)
140098909:	c7 43 2c 2a 00 00 00 	movl   $0x2a,0x2c(%rbx)
140098910:	e9 52 ff ff ff       	jmp    0x140098867
140098915:	83 78 08 01          	cmpl   $0x1,0x8(%rax)
140098919:	75 6f                	jne    0x14009898a
14009891b:	48 85 f6             	test   %rsi,%rsi
14009891e:	74 24                	je     0x140098944
140098920:	48 8b c2             	mov    %rdx,%rax
140098923:	48 8b ce             	mov    %rsi,%rcx
140098926:	66 44 39 20          	cmp    %r12w,(%rax)
14009892a:	74 0c                	je     0x140098938
14009892c:	48 83 c0 02          	add    $0x2,%rax
140098930:	48 83 e9 01          	sub    $0x1,%rcx
140098934:	75 f0                	jne    0x140098926
140098936:	eb 0c                	jmp    0x140098944
140098938:	48 8b f0             	mov    %rax,%rsi
14009893b:	48 2b f2             	sub    %rdx,%rsi
14009893e:	48 d1 fe             	sar    $1,%rsi
140098941:	48 ff c6             	inc    %rsi
140098944:	48 8d 45 c8          	lea    -0x38(%rbp),%rax
140098948:	4c 8b c2             	mov    %rdx,%r8
14009894b:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
140098950:	44 8b ce             	mov    %esi,%r9d
140098953:	4c 89 64 24 30       	mov    %r12,0x30(%rsp)
140098958:	33 d2                	xor    %edx,%edx
14009895a:	89 74 24 28          	mov    %esi,0x28(%rsp)
14009895e:	41 8b ca             	mov    %r10d,%ecx
140098961:	4c 89 7c 24 20       	mov    %r15,0x20(%rsp)
140098966:	e8 7d b1 ff ff       	call   0x140093ae8
14009896b:	48 63 c8             	movslq %eax,%rcx
14009896e:	85 c0                	test   %eax,%eax
140098970:	74 93                	je     0x140098905
140098972:	44 39 65 c8          	cmp    %r12d,-0x38(%rbp)
140098976:	75 8d                	jne    0x140098905
140098978:	45 38 64 0f ff       	cmp    %r12b,-0x1(%r15,%rcx,1)
14009897d:	48 8d 41 ff          	lea    -0x1(%rcx),%rax
140098981:	48 0f 45 c1          	cmovne %rcx,%rax
140098985:	e9 8c 01 00 00       	jmp    0x140098b16
14009898a:	48 8d 45 c8          	lea    -0x38(%rbp),%rax
14009898e:	4c 8b c2             	mov    %rdx,%r8
140098991:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
140098996:	48 83 cf ff          	or     $0xffffffffffffffff,%rdi
14009899a:	4c 89 64 24 30       	mov    %r12,0x30(%rsp)
14009899f:	44 8b cf             	mov    %edi,%r9d
1400989a2:	89 74 24 28          	mov    %esi,0x28(%rsp)
1400989a6:	33 d2                	xor    %edx,%edx
1400989a8:	41 8b ca             	mov    %r10d,%ecx
1400989ab:	4c 89 7c 24 20       	mov    %r15,0x20(%rsp)
1400989b0:	e8 33 b1 ff ff       	call   0x140093ae8
1400989b5:	4c 63 f0             	movslq %eax,%r14
1400989b8:	44 39 65 c8          	cmp    %r12d,-0x38(%rbp)
1400989bc:	0f 85 46 01 00 00    	jne    0x140098b08
1400989c2:	85 c0                	test   %eax,%eax
1400989c4:	74 09                	je     0x1400989cf
1400989c6:	49 8d 46 ff          	lea    -0x1(%r14),%rax
1400989ca:	e9 47 01 00 00       	jmp    0x140098b16
1400989cf:	ff 15 cb ec 05 00    	call   *0x5eccb(%rip)        # 0x1400f76a0
1400989d5:	83 f8 7a             	cmp    $0x7a,%eax
1400989d8:	0f 85 2a 01 00 00    	jne    0x140098b08
1400989de:	48 85 f6             	test   %rsi,%rsi
1400989e1:	0f 84 a7 00 00 00    	je     0x140098a8e
1400989e7:	48 8b 55 d0          	mov    -0x30(%rbp),%rdx
1400989eb:	44 8d 68 8b          	lea    -0x75(%rax),%r13d
1400989ef:	48 8b 4b 18          	mov    0x18(%rbx),%rcx
1400989f3:	4c 8d 45 c8          	lea    -0x38(%rbp),%r8
1400989f7:	4c 89 44 24 38       	mov    %r8,0x38(%rsp)
1400989fc:	41 b9 01 00 00 00    	mov    $0x1,%r9d
140098a02:	4c 89 64 24 30       	mov    %r12,0x30(%rsp)
140098a07:	4c 8b c2             	mov    %rdx,%r8
140098a0a:	8b 41 08             	mov    0x8(%rcx),%eax
140098a0d:	41 3b c5             	cmp    %r13d,%eax
140098a10:	8b 49 0c             	mov    0xc(%rcx),%ecx
140098a13:	41 0f 4f c5          	cmovg  %r13d,%eax
140098a17:	33 d2                	xor    %edx,%edx
140098a19:	89 44 24 28          	mov    %eax,0x28(%rsp)
140098a1d:	48 8d 45 e0          	lea    -0x20(%rbp),%rax
140098a21:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140098a26:	e8 bd b0 ff ff       	call   0x140093ae8
140098a2b:	85 c0                	test   %eax,%eax
140098a2d:	0f 84 d5 00 00 00    	je     0x140098b08
140098a33:	44 39 65 c8          	cmp    %r12d,-0x38(%rbp)
140098a37:	0f 85 cb 00 00 00    	jne    0x140098b08
140098a3d:	85 c0                	test   %eax,%eax
140098a3f:	0f 88 c3 00 00 00    	js     0x140098b08
140098a45:	48 63 d0             	movslq %eax,%rdx
140098a48:	49 3b d5             	cmp    %r13,%rdx
140098a4b:	0f 87 b7 00 00 00    	ja     0x140098b08
140098a51:	4a 8d 04 32          	lea    (%rdx,%r14,1),%rax
140098a55:	48 3b c6             	cmp    %rsi,%rax
140098a58:	77 34                	ja     0x140098a8e
140098a5a:	49 8b cc             	mov    %r12,%rcx
140098a5d:	48 85 d2             	test   %rdx,%rdx
140098a60:	7e 17                	jle    0x140098a79
140098a62:	8a 44 0d e0          	mov    -0x20(%rbp,%rcx,1),%al
140098a66:	43 88 04 37          	mov    %al,(%r15,%r14,1)
140098a6a:	84 c0                	test   %al,%al
140098a6c:	74 20                	je     0x140098a8e
140098a6e:	48 ff c1             	inc    %rcx
140098a71:	49 ff c6             	inc    %r14
140098a74:	48 3b ca             	cmp    %rdx,%rcx
140098a77:	7c e9                	jl     0x140098a62
140098a79:	48 8b 55 d0          	mov    -0x30(%rbp),%rdx
140098a7d:	48 83 c2 02          	add    $0x2,%rdx
140098a81:	48 89 55 d0          	mov    %rdx,-0x30(%rbp)
140098a85:	4c 3b f6             	cmp    %rsi,%r14
140098a88:	0f 82 61 ff ff ff    	jb     0x1400989ef
140098a8e:	49 8b c6             	mov    %r14,%rax
140098a91:	e9 80 00 00 00       	jmp    0x140098b16
140098a96:	48 85 c9             	test   %rcx,%rcx
140098a99:	75 2f                	jne    0x140098aca
140098a9b:	0f b7 02             	movzwl (%rdx),%eax
140098a9e:	49 8b cc             	mov    %r12,%rcx
140098aa1:	66 85 c0             	test   %ax,%ax
140098aa4:	74 1f                	je     0x140098ac5
140098aa6:	41 b8 ff 00 00 00    	mov    $0xff,%r8d
140098aac:	66 41 3b c0          	cmp    %r8w,%ax
140098ab0:	0f 87 4f fe ff ff    	ja     0x140098905
140098ab6:	48 83 c2 02          	add    $0x2,%rdx
140098aba:	48 ff c1             	inc    %rcx
140098abd:	0f b7 02             	movzwl (%rdx),%eax
140098ac0:	66 85 c0             	test   %ax,%ax
140098ac3:	75 e7                	jne    0x140098aac
140098ac5:	48 8b c1             	mov    %rcx,%rax
140098ac8:	eb 4c                	jmp    0x140098b16
140098aca:	48 8d 45 c8          	lea    -0x38(%rbp),%rax
140098ace:	4c 8b c2             	mov    %rdx,%r8
140098ad1:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
140098ad6:	48 83 cf ff          	or     $0xffffffffffffffff,%rdi
140098ada:	4c 89 64 24 30       	mov    %r12,0x30(%rsp)
140098adf:	44 8b cf             	mov    %edi,%r9d
140098ae2:	44 89 64 24 28       	mov    %r12d,0x28(%rsp)
140098ae7:	33 d2                	xor    %edx,%edx
140098ae9:	41 8b ca             	mov    %r10d,%ecx
140098aec:	4c 89 64 24 20       	mov    %r12,0x20(%rsp)
140098af1:	e8 f2 af ff ff       	call   0x140093ae8
140098af6:	48 98                	cltq
140098af8:	48 85 c0             	test   %rax,%rax
140098afb:	74 0b                	je     0x140098b08
140098afd:	44 39 65 c8          	cmp    %r12d,-0x38(%rbp)
140098b01:	75 05                	jne    0x140098b08
140098b03:	48 ff c8             	dec    %rax
140098b06:	eb 0e                	jmp    0x140098b16
140098b08:	c7 43 2c 2a 00 00 00 	movl   $0x2a,0x2c(%rbx)
140098b0f:	c6 43 30 01          	movb   $0x1,0x30(%rbx)
140098b13:	48 8b c7             	mov    %rdi,%rax
140098b16:	48 8b 4d e8          	mov    -0x18(%rbp),%rcx
140098b1a:	48 33 cc             	xor    %rsp,%rcx
140098b1d:	e8 ae 67 fd ff       	call   0x14006f2d0
140098b22:	48 83 c4 78          	add    $0x78,%rsp
140098b26:	41 5f                	pop    %r15
140098b28:	41 5e                	pop    %r14
140098b2a:	41 5d                	pop    %r13
140098b2c:	41 5c                	pop    %r12
140098b2e:	5f                   	pop    %rdi
140098b2f:	5e                   	pop    %rsi
140098b30:	5b                   	pop    %rbx
140098b31:	5d                   	pop    %rbp
140098b32:	c3                   	ret
140098b33:	cc                   	int3
140098b34:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140098b39:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140098b3e:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140098b43:	57                   	push   %rdi
140098b44:	41 54                	push   %r12
140098b46:	41 56                	push   %r14
140098b48:	48 83 ec 30          	sub    $0x30,%rsp
140098b4c:	33 db                	xor    %ebx,%ebx
140098b4e:	49 8b c1             	mov    %r9,%rax
140098b51:	49 8b e8             	mov    %r8,%rbp
140098b54:	48 8b f2             	mov    %rdx,%rsi
140098b57:	4c 8b f1             	mov    %rcx,%r14
140098b5a:	44 8b e3             	mov    %ebx,%r12d
140098b5d:	48 85 d2             	test   %rdx,%rdx
140098b60:	74 30                	je     0x140098b92
140098b62:	4d 85 c0             	test   %r8,%r8
140098b65:	74 30                	je     0x140098b97
140098b67:	88 1a                	mov    %bl,(%rdx)
140098b69:	4d 85 f6             	test   %r14,%r14
140098b6c:	74 03                	je     0x140098b71
140098b6e:	48 89 19             	mov    %rbx,(%rcx)
140098b71:	4c 8b 44 24 70       	mov    0x70(%rsp),%r8
140098b76:	48 8b 7c 24 78       	mov    0x78(%rsp),%rdi
140098b7b:	4c 3b c5             	cmp    %rbp,%r8
140098b7e:	4c 0f 47 c5          	cmova  %rbp,%r8
140098b82:	49 81 f8 ff ff ff 7f 	cmp    $0x7fffffff,%r8
140098b89:	76 3a                	jbe    0x140098bc5
140098b8b:	be 16 00 00 00       	mov    $0x16,%esi
140098b90:	eb 76                	jmp    0x140098c08
140098b92:	48 85 ed             	test   %rbp,%rbp
140098b95:	74 d2                	je     0x140098b69
140098b97:	48 8b 44 24 78       	mov    0x78(%rsp),%rax
140098b9c:	be 16 00 00 00       	mov    $0x16,%esi
140098ba1:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140098ba6:	c6 40 30 01          	movb   $0x1,0x30(%rax)
140098baa:	89 70 2c             	mov    %esi,0x2c(%rax)
140098bad:	45 33 c9             	xor    %r9d,%r9d
140098bb0:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140098bb5:	45 33 c0             	xor    %r8d,%r8d
140098bb8:	33 d2                	xor    %edx,%edx
140098bba:	33 c9                	xor    %ecx,%ecx
140098bbc:	e8 ef 5d ff ff       	call   0x14008e9b0
140098bc1:	8b c6                	mov    %esi,%eax
140098bc3:	eb 69                	jmp    0x140098c2e
140098bc5:	4c 8b cf             	mov    %rdi,%r9
140098bc8:	48 8b d0             	mov    %rax,%rdx
140098bcb:	48 8b ce             	mov    %rsi,%rcx
140098bce:	e8 21 fc ff ff       	call   0x1400987f4
140098bd3:	48 83 f8 ff          	cmp    $0xffffffffffffffff,%rax
140098bd7:	75 13                	jne    0x140098bec
140098bd9:	48 85 f6             	test   %rsi,%rsi
140098bdc:	74 02                	je     0x140098be0
140098bde:	88 1e                	mov    %bl,(%rsi)
140098be0:	38 5f 30             	cmp    %bl,0x30(%rdi)
140098be3:	74 03                	je     0x140098be8
140098be5:	8b 5f 2c             	mov    0x2c(%rdi),%ebx
140098be8:	8b c3                	mov    %ebx,%eax
140098bea:	eb 42                	jmp    0x140098c2e
140098bec:	48 ff c0             	inc    %rax
140098bef:	48 85 f6             	test   %rsi,%rsi
140098bf2:	74 2f                	je     0x140098c23
140098bf4:	48 3b c5             	cmp    %rbp,%rax
140098bf7:	76 26                	jbe    0x140098c1f
140098bf9:	48 83 7c 24 70 ff    	cmpq   $0xffffffffffffffff,0x70(%rsp)
140098bff:	74 15                	je     0x140098c16
140098c01:	88 1e                	mov    %bl,(%rsi)
140098c03:	be 22 00 00 00       	mov    $0x22,%esi
140098c08:	89 77 2c             	mov    %esi,0x2c(%rdi)
140098c0b:	c6 47 30 01          	movb   $0x1,0x30(%rdi)
140098c0f:	48 89 7c 24 28       	mov    %rdi,0x28(%rsp)
140098c14:	eb 97                	jmp    0x140098bad
140098c16:	48 8b c5             	mov    %rbp,%rax
140098c19:	41 bc 50 00 00 00    	mov    $0x50,%r12d
140098c1f:	88 5c 30 ff          	mov    %bl,-0x1(%rax,%rsi,1)
140098c23:	4d 85 f6             	test   %r14,%r14
140098c26:	74 03                	je     0x140098c2b
140098c28:	49 89 06             	mov    %rax,(%r14)
140098c2b:	41 8b c4             	mov    %r12d,%eax
140098c2e:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
140098c33:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
140098c38:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
140098c3d:	48 83 c4 30          	add    $0x30,%rsp
140098c41:	41 5e                	pop    %r14
140098c43:	41 5c                	pop    %r12
140098c45:	5f                   	pop    %rdi
140098c46:	c3                   	ret
140098c47:	cc                   	int3
140098c48:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140098c4d:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140098c52:	57                   	push   %rdi
140098c53:	48 83 ec 20          	sub    $0x20,%rsp
140098c57:	45 33 d2             	xor    %r10d,%r10d
140098c5a:	49 8b d8             	mov    %r8,%rbx
140098c5d:	4c 8b da             	mov    %rdx,%r11
140098c60:	4d 85 c9             	test   %r9,%r9
140098c63:	75 31                	jne    0x140098c96
140098c65:	48 85 c9             	test   %rcx,%rcx
140098c68:	75 31                	jne    0x140098c9b
140098c6a:	48 85 d2             	test   %rdx,%rdx
140098c6d:	74 14                	je     0x140098c83
140098c6f:	e8 50 55 fe ff       	call   0x14007e1c4
140098c74:	bb 16 00 00 00       	mov    $0x16,%ebx
140098c79:	89 18                	mov    %ebx,(%rax)
140098c7b:	e8 64 5b ff ff       	call   0x14008e7e4
140098c80:	44 8b d3             	mov    %ebx,%r10d
140098c83:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140098c88:	41 8b c2             	mov    %r10d,%eax
140098c8b:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140098c90:	48 83 c4 20          	add    $0x20,%rsp
140098c94:	5f                   	pop    %rdi
140098c95:	c3                   	ret
140098c96:	48 85 c9             	test   %rcx,%rcx
140098c99:	74 d4                	je     0x140098c6f
140098c9b:	4d 85 db             	test   %r11,%r11
140098c9e:	74 cf                	je     0x140098c6f
140098ca0:	4d 85 c9             	test   %r9,%r9
140098ca3:	75 05                	jne    0x140098caa
140098ca5:	44 88 11             	mov    %r10b,(%rcx)
140098ca8:	eb d9                	jmp    0x140098c83
140098caa:	48 85 db             	test   %rbx,%rbx
140098cad:	75 05                	jne    0x140098cb4
140098caf:	44 88 11             	mov    %r10b,(%rcx)
140098cb2:	eb bb                	jmp    0x140098c6f
140098cb4:	48 2b d9             	sub    %rcx,%rbx
140098cb7:	48 8b d1             	mov    %rcx,%rdx
140098cba:	4d 8b c3             	mov    %r11,%r8
140098cbd:	49 8b f9             	mov    %r9,%rdi