18012d8c2:	5b                   	pop    %rbx
18012d8c3:	c3                   	ret
18012d8c4:	cc                   	int3
18012d8c5:	cc                   	int3
18012d8c6:	cc                   	int3
18012d8c7:	cc                   	int3
18012d8c8:	48 83 ec 38          	sub    $0x38,%rsp
18012d8cc:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
18012d8d2:	e8 3d ff ff ff       	call   0x18012d814
18012d8d7:	48 83 c4 38          	add    $0x38,%rsp
18012d8db:	c3                   	ret
18012d8dc:	cc                   	int3
18012d8dd:	cc                   	int3
18012d8de:	cc                   	int3
18012d8df:	cc                   	int3
18012d8e0:	48 83 ec 38          	sub    $0x38,%rsp
18012d8e4:	48 85 d2             	test   %rdx,%rdx
18012d8e7:	75 19                	jne    0x18012d902
18012d8e9:	48 21 54 24 20       	and    %rdx,0x20(%rsp)
18012d8ee:	45 33 c9             	xor    %r9d,%r9d
18012d8f1:	45 33 c0             	xor    %r8d,%r8d
18012d8f4:	33 c9                	xor    %ecx,%ecx
18012d8f6:	e8 31 82 ee ff       	call   0x180015b2c
18012d8fb:	b8 ff ff 00 00       	mov    $0xffff,%eax
18012d900:	eb 1d                	jmp    0x18012d91f
18012d902:	83 42 08 fe          	addl   $0xfffffffe,0x8(%rdx)
18012d906:	78 0f                	js     0x18012d917
18012d908:	48 8b 02             	mov    (%rdx),%rax
18012d90b:	66 89 08             	mov    %cx,(%rax)
18012d90e:	0f b7 c1             	movzwl %cx,%eax
18012d911:	48 83 02 02          	addq   $0x2,(%rdx)
18012d915:	eb 08                	jmp    0x18012d91f
18012d917:	0f b7 c9             	movzwl %cx,%ecx
18012d91a:	e8 59 00 00 00       	call   0x18012d978
18012d91f:	48 83 c4 38          	add    $0x38,%rsp
18012d923:	c3                   	ret
18012d924:	cc                   	int3
18012d925:	cc                   	int3
18012d926:	cc                   	int3
18012d927:	cc                   	int3
18012d928:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18012d92d:	57                   	push   %rdi
18012d92e:	48 83 ec 20          	sub    $0x20,%rsp
18012d932:	33 c0                	xor    %eax,%eax
18012d934:	48 8b da             	mov    %rdx,%rbx
18012d937:	48 8b f9             	mov    %rcx,%rdi
18012d93a:	48 85 d2             	test   %rdx,%rdx
18012d93d:	74 2b                	je     0x18012d96a
18012d93f:	4d 85 c0             	test   %r8,%r8
18012d942:	74 26                	je     0x18012d96a
18012d944:	38 02                	cmp    %al,(%rdx)
18012d946:	75 0a                	jne    0x18012d952
18012d948:	48 85 c9             	test   %rcx,%rcx
18012d94b:	74 1d                	je     0x18012d96a
18012d94d:	66 89 01             	mov    %ax,(%rcx)
18012d950:	eb 18                	jmp    0x18012d96a
18012d952:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
18012d957:	48 89 5c 24 38       	mov    %rbx,0x38(%rsp)
18012d95c:	e8 53 fd f4 ff       	call   0x18007d6b4
18012d961:	66 89 07             	mov    %ax,(%rdi)
18012d964:	8b 44 24 38          	mov    0x38(%rsp),%eax
18012d968:	2b c3                	sub    %ebx,%eax
18012d96a:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18012d96f:	48 83 c4 20          	add    $0x20,%rsp
18012d973:	5f                   	pop    %rdi
18012d974:	c3                   	ret
18012d975:	cc                   	int3
18012d976:	cc                   	int3
18012d977:	cc                   	int3
18012d978:	83 4a 18 20          	orl    $0x20,0x18(%rdx)
18012d97c:	b8 ff ff 00 00       	mov    $0xffff,%eax
18012d981:	c3                   	ret
18012d982:	cc                   	int3
18012d983:	cc                   	int3
18012d984:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
18012d989:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
18012d98e:	48 83 ec 48          	sub    $0x48,%rsp
18012d992:	4d 85 c0             	test   %r8,%r8
18012d995:	75 16                	jne    0x18012d9ad
18012d997:	4c 21 44 24 20       	and    %r8,0x20(%rsp)
18012d99c:	45 33 c9             	xor    %r9d,%r9d
18012d99f:	33 d2                	xor    %edx,%edx
18012d9a1:	33 c9                	xor    %ecx,%ecx
18012d9a3:	e8 84 81 ee ff       	call   0x180015b2c
18012d9a8:	83 c8 ff             	or     $0xffffffff,%eax
18012d9ab:	eb 0a                	jmp    0x18012d9b7
18012d9ad:	4c 8d 4c 24 68       	lea    0x68(%rsp),%r9
18012d9b2:	e8 ad 0b 00 00       	call   0x18012e564
18012d9b7:	48 83 c4 48          	add    $0x48,%rsp
18012d9bb:	c3                   	ret
18012d9bc:	cc                   	int3
18012d9bd:	cc                   	int3
18012d9be:	cc                   	int3
18012d9bf:	cc                   	int3
18012d9c0:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
18012d9c5:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
18012d9ca:	48 83 ec 38          	sub    $0x38,%rsp
18012d9ce:	4c 8d 4c 24 58       	lea    0x58(%rsp),%r9
18012d9d3:	e8 08 00 00 00       	call   0x18012d9e0
18012d9d8:	48 83 c4 38          	add    $0x38,%rsp
18012d9dc:	c3                   	ret
18012d9dd:	cc                   	int3
18012d9de:	cc                   	int3
18012d9df:	cc                   	int3
18012d9e0:	40 53                	rex push %rbx
18012d9e2:	48 83 ec 30          	sub    $0x30,%rsp
18012d9e6:	48 8b d9             	mov    %rcx,%rbx
18012d9e9:	48 85 c9             	test   %rcx,%rcx
18012d9ec:	74 1b                	je     0x18012da09
18012d9ee:	48 85 d2             	test   %rdx,%rdx
18012d9f1:	74 16                	je     0x18012da09
18012d9f3:	4d 85 c0             	test   %r8,%r8
18012d9f6:	74 11                	je     0x18012da09
18012d9f8:	e8 03 1f 00 00       	call   0x18012f900
18012d9fd:	85 c0                	test   %eax,%eax
18012d9ff:	79 20                	jns    0x18012da21
18012da01:	c6 03 00             	movb   $0x0,(%rbx)
18012da04:	83 f8 fe             	cmp    $0xfffffffe,%eax
18012da07:	75 15                	jne    0x18012da1e
18012da09:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
18012da0f:	45 33 c9             	xor    %r9d,%r9d
18012da12:	45 33 c0             	xor    %r8d,%r8d
18012da15:	33 d2                	xor    %edx,%edx
18012da17:	33 c9                	xor    %ecx,%ecx
18012da19:	e8 0e 81 ee ff       	call   0x180015b2c
18012da1e:	83 c8 ff             	or     $0xffffffff,%eax
18012da21:	48 83 c4 30          	add    $0x30,%rsp
18012da25:	5b                   	pop    %rbx
18012da26:	c3                   	ret
18012da27:	cc                   	int3
18012da28:	40 53                	rex push %rbx
18012da2a:	48 83 ec 30          	sub    $0x30,%rsp
18012da2e:	45 33 d2             	xor    %r10d,%r10d
18012da31:	48 85 c9             	test   %rcx,%rcx
18012da34:	74 65                	je     0x18012da9b
18012da36:	48 85 d2             	test   %rdx,%rdx
18012da39:	74 60                	je     0x18012da9b
18012da3b:	4d 85 c0             	test   %r8,%r8
18012da3e:	74 3b                	je     0x18012da7b
18012da40:	4c 8b c9             	mov    %rcx,%r9
18012da43:	45 38 11             	cmp    %r10b,(%r9)
18012da46:	74 09                	je     0x18012da51
18012da48:	49 ff c1             	inc    %r9
18012da4b:	48 83 ea 01          	sub    $0x1,%rdx
18012da4f:	75 f2                	jne    0x18012da43
18012da51:	48 85 d2             	test   %rdx,%rdx
18012da54:	74 25                	je     0x18012da7b
18012da56:	4d 2b c8             	sub    %r8,%r9
18012da59:	41 8a 00             	mov    (%r8),%al
18012da5c:	43 88 04 01          	mov    %al,(%r9,%r8,1)
18012da60:	49 ff c0             	inc    %r8
18012da63:	84 c0                	test   %al,%al
18012da65:	74 06                	je     0x18012da6d
18012da67:	48 83 ea 01          	sub    $0x1,%rdx
18012da6b:	75 ec                	jne    0x18012da59
18012da6d:	48 85 d2             	test   %rdx,%rdx
18012da70:	75 05                	jne    0x18012da77
18012da72:	8d 5a 22             	lea    0x22(%rdx),%ebx
18012da75:	eb 09                	jmp    0x18012da80
18012da77:	33 c0                	xor    %eax,%eax
18012da79:	eb 39                	jmp    0x18012dab4
18012da7b:	bb 16 00 00 00       	mov    $0x16,%ebx
18012da80:	44 88 11             	mov    %r10b,(%rcx)
18012da83:	45 33 c9             	xor    %r9d,%r9d
18012da86:	33 c9                	xor    %ecx,%ecx
18012da88:	4c 89 54 24 20       	mov    %r10,0x20(%rsp)
18012da8d:	45 33 c0             	xor    %r8d,%r8d
18012da90:	33 d2                	xor    %edx,%edx
18012da92:	e8 95 80 ee ff       	call   0x180015b2c
18012da97:	8b c3                	mov    %ebx,%eax
18012da99:	eb 19                	jmp    0x18012dab4
18012da9b:	45 33 c9             	xor    %r9d,%r9d
18012da9e:	4c 89 54 24 20       	mov    %r10,0x20(%rsp)
18012daa3:	45 33 c0             	xor    %r8d,%r8d
18012daa6:	33 d2                	xor    %edx,%edx
18012daa8:	33 c9                	xor    %ecx,%ecx
18012daaa:	e8 7d 80 ee ff       	call   0x180015b2c
18012daaf:	b8 16 00 00 00       	mov    $0x16,%eax
18012dab4:	48 83 c4 30          	add    $0x30,%rsp
18012dab8:	5b                   	pop    %rbx
18012dab9:	c3                   	ret
18012daba:	cc                   	int3
18012dabb:	cc                   	int3
18012dabc:	40 53                	rex push %rbx
18012dabe:	48 83 ec 30          	sub    $0x30,%rsp
18012dac2:	45 33 d2             	xor    %r10d,%r10d
18012dac5:	4c 8b c9             	mov    %rcx,%r9
18012dac8:	48 85 c9             	test   %rcx,%rcx
18012dacb:	74 4e                	je     0x18012db1b
18012dacd:	48 85 d2             	test   %rdx,%rdx
18012dad0:	74 49                	je     0x18012db1b
18012dad2:	4d 85 c0             	test   %r8,%r8
18012dad5:	75 06                	jne    0x18012dadd
18012dad7:	41 8d 5a 16          	lea    0x16(%r10),%ebx
18012dadb:	eb 1f                	jmp    0x18012dafc
18012dadd:	49 2b c8             	sub    %r8,%rcx
18012dae0:	41 8a 00             	mov    (%r8),%al
18012dae3:	42 88 04 01          	mov    %al,(%rcx,%r8,1)
18012dae7:	49 ff c0             	inc    %r8
18012daea:	84 c0                	test   %al,%al
18012daec:	74 06                	je     0x18012daf4
18012daee:	48 83 ea 01          	sub    $0x1,%rdx
18012daf2:	75 ec                	jne    0x18012dae0
18012daf4:	48 85 d2             	test   %rdx,%rdx
18012daf7:	75 1e                	jne    0x18012db17
18012daf9:	8d 5a 22             	lea    0x22(%rdx),%ebx
18012dafc:	45 88 11             	mov    %r10b,(%r9)
18012daff:	45 33 c0             	xor    %r8d,%r8d
18012db02:	45 33 c9             	xor    %r9d,%r9d
18012db05:	4c 89 54 24 20       	mov    %r10,0x20(%rsp)
18012db0a:	33 d2                	xor    %edx,%edx
18012db0c:	33 c9                	xor    %ecx,%ecx
18012db0e:	e8 19 80 ee ff       	call   0x180015b2c
18012db13:	8b c3                	mov    %ebx,%eax
18012db15:	eb 1d                	jmp    0x18012db34
18012db17:	33 c0                	xor    %eax,%eax
18012db19:	eb 19                	jmp    0x18012db34
18012db1b:	45 33 c9             	xor    %r9d,%r9d
18012db1e:	4c 89 54 24 20       	mov    %r10,0x20(%rsp)
18012db23:	45 33 c0             	xor    %r8d,%r8d
18012db26:	33 d2                	xor    %edx,%edx
18012db28:	33 c9                	xor    %ecx,%ecx
18012db2a:	e8 fd 7f ee ff       	call   0x180015b2c
18012db2f:	b8 16 00 00 00       	mov    $0x16,%eax
18012db34:	48 83 c4 30          	add    $0x30,%rsp
18012db38:	5b                   	pop    %rbx
18012db39:	c3                   	ret
18012db3a:	cc                   	int3
18012db3b:	cc                   	int3
18012db3c:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
18012db41:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
18012db46:	48 83 ec 38          	sub    $0x38,%rsp
18012db4a:	4c 8d 4c 24 58       	lea    0x58(%rsp),%r9
18012db4f:	e8 08 00 00 00       	call   0x18012db5c
18012db54:	48 83 c4 38          	add    $0x38,%rsp
18012db58:	c3                   	ret
18012db59:	cc                   	int3
18012db5a:	cc                   	int3
18012db5b:	cc                   	int3
18012db5c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18012db61:	57                   	push   %rdi
18012db62:	48 83 ec 30          	sub    $0x30,%rsp
18012db66:	33 ff                	xor    %edi,%edi
18012db68:	48 8b d9             	mov    %rcx,%rbx
18012db6b:	48 85 c9             	test   %rcx,%rcx
18012db6e:	74 1b                	je     0x18012db8b
18012db70:	48 85 d2             	test   %rdx,%rdx
18012db73:	74 16                	je     0x18012db8b
18012db75:	4d 85 c0             	test   %r8,%r8
18012db78:	74 11                	je     0x18012db8b
18012db7a:	e8 d9 1e 00 00       	call   0x18012fa58
18012db7f:	85 c0                	test   %eax,%eax
18012db81:	79 1f                	jns    0x18012dba2
18012db83:	66 89 3b             	mov    %di,(%rbx)
18012db86:	83 f8 fe             	cmp    $0xfffffffe,%eax
18012db89:	75 14                	jne    0x18012db9f
18012db8b:	45 33 c9             	xor    %r9d,%r9d
18012db8e:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
18012db93:	45 33 c0             	xor    %r8d,%r8d
18012db96:	33 d2                	xor    %edx,%edx
18012db98:	33 c9                	xor    %ecx,%ecx
18012db9a:	e8 8d 7f ee ff       	call   0x180015b2c
18012db9f:	83 c8 ff             	or     $0xffffffff,%eax
18012dba2:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
18012dba7:	48 83 c4 30          	add    $0x30,%rsp
18012dbab:	5f                   	pop    %rdi
18012dbac:	c3                   	ret
18012dbad:	cc                   	int3
18012dbae:	cc                   	int3
18012dbaf:	cc                   	int3
18012dbb0:	40 53                	rex push %rbx
18012dbb2:	48 83 ec 30          	sub    $0x30,%rsp
18012dbb6:	45 33 d2             	xor    %r10d,%r10d
18012dbb9:	48 85 c9             	test   %rcx,%rcx
18012dbbc:	74 6c                	je     0x18012dc2a
18012dbbe:	48 85 d2             	test   %rdx,%rdx
18012dbc1:	74 67                	je     0x18012dc2a
18012dbc3:	4d 85 c0             	test   %r8,%r8
18012dbc6:	74 41                	je     0x18012dc09
18012dbc8:	4c 8b c9             	mov    %rcx,%r9
18012dbcb:	66 45 39 11          	cmp    %r10w,(%r9)
18012dbcf:	74 0a                	je     0x18012dbdb
18012dbd1:	49 83 c1 02          	add    $0x2,%r9
18012dbd5:	48 83 ea 01          	sub    $0x1,%rdx
18012dbd9:	75 f0                	jne    0x18012dbcb
18012dbdb:	48 85 d2             	test   %rdx,%rdx
18012dbde:	74 29                	je     0x18012dc09
18012dbe0:	4d 2b c8             	sub    %r8,%r9
18012dbe3:	41 0f b7 00          	movzwl (%r8),%eax
18012dbe7:	66 43 89 04 01       	mov    %ax,(%r9,%r8,1)
18012dbec:	4d 8d 40 02          	lea    0x2(%r8),%r8
18012dbf0:	66 85 c0             	test   %ax,%ax
18012dbf3:	74 06                	je     0x18012dbfb
18012dbf5:	48 83 ea 01          	sub    $0x1,%rdx
18012dbf9:	75 e8                	jne    0x18012dbe3
18012dbfb:	48 85 d2             	test   %rdx,%rdx
18012dbfe:	75 05                	jne    0x18012dc05
18012dc00:	8d 5a 22             	lea    0x22(%rdx),%ebx
18012dc03:	eb 09                	jmp    0x18012dc0e
18012dc05:	33 c0                	xor    %eax,%eax
18012dc07:	eb 3a                	jmp    0x18012dc43
18012dc09:	bb 16 00 00 00       	mov    $0x16,%ebx
18012dc0e:	66 44 89 11          	mov    %r10w,(%rcx)
18012dc12:	45 33 c9             	xor    %r9d,%r9d
18012dc15:	33 c9                	xor    %ecx,%ecx
18012dc17:	4c 89 54 24 20       	mov    %r10,0x20(%rsp)
18012dc1c:	45 33 c0             	xor    %r8d,%r8d
18012dc1f:	33 d2                	xor    %edx,%edx
18012dc21:	e8 06 7f ee ff       	call   0x180015b2c
18012dc26:	8b c3                	mov    %ebx,%eax
18012dc28:	eb 19                	jmp    0x18012dc43
18012dc2a:	45 33 c9             	xor    %r9d,%r9d
18012dc2d:	4c 89 54 24 20       	mov    %r10,0x20(%rsp)
18012dc32:	45 33 c0             	xor    %r8d,%r8d
18012dc35:	33 d2                	xor    %edx,%edx
18012dc37:	33 c9                	xor    %ecx,%ecx
18012dc39:	e8 ee 7e ee ff       	call   0x180015b2c
18012dc3e:	b8 16 00 00 00       	mov    $0x16,%eax
18012dc43:	48 83 c4 30          	add    $0x30,%rsp
18012dc47:	5b                   	pop    %rbx
18012dc48:	c3                   	ret
18012dc49:	cc                   	int3
18012dc4a:	cc                   	int3
18012dc4b:	cc                   	int3
18012dc4c:	40 53                	rex push %rbx
18012dc4e:	48 83 ec 30          	sub    $0x30,%rsp
18012dc52:	45 33 d2             	xor    %r10d,%r10d
18012dc55:	4c 8b c9             	mov    %rcx,%r9
18012dc58:	48 85 c9             	test   %rcx,%rcx
18012dc5b:	74 53                	je     0x18012dcb0
18012dc5d:	48 85 d2             	test   %rdx,%rdx
18012dc60:	74 4e                	je     0x18012dcb0
18012dc62:	4d 85 c0             	test   %r8,%r8
18012dc65:	75 06                	jne    0x18012dc6d
18012dc67:	41 8d 5a 16          	lea    0x16(%r10),%ebx
18012dc6b:	eb 23                	jmp    0x18012dc90
18012dc6d:	49 2b c8             	sub    %r8,%rcx
18012dc70:	41 0f b7 00          	movzwl (%r8),%eax
18012dc74:	66 42 89 04 01       	mov    %ax,(%rcx,%r8,1)
18012dc79:	4d 8d 40 02          	lea    0x2(%r8),%r8
18012dc7d:	66 85 c0             	test   %ax,%ax
18012dc80:	74 06                	je     0x18012dc88
18012dc82:	48 83 ea 01          	sub    $0x1,%rdx
18012dc86:	75 e8                	jne    0x18012dc70
18012dc88:	48 85 d2             	test   %rdx,%rdx
18012dc8b:	75 1f                	jne    0x18012dcac
18012dc8d:	8d 5a 22             	lea    0x22(%rdx),%ebx
18012dc90:	66 45 89 11          	mov    %r10w,(%r9)
18012dc94:	45 33 c0             	xor    %r8d,%r8d
18012dc97:	45 33 c9             	xor    %r9d,%r9d