140021cec:	c6 03 30             	movb   $0x30,(%rbx)
140021cef:	48 8b de             	mov    %rsi,%rbx
140021cf2:	eb 03                	jmp    0x140021cf7
140021cf4:	48 03 d8             	add    %rax,%rbx
140021cf7:	85 ed                	test   %ebp,%ebp
140021cf9:	0f 8e 88 00 00 00    	jle    0x140021d87
140021cff:	48 8d 73 01          	lea    0x1(%rbx),%rsi
140021d03:	4c 8b c7             	mov    %rdi,%r8
140021d06:	49 ff c0             	inc    %r8
140021d09:	42 80 3c 03 00       	cmpb   $0x0,(%rbx,%r8,1)
140021d0e:	75 f6                	jne    0x140021d06
140021d10:	49 ff c0             	inc    %r8
140021d13:	48 8b d3             	mov    %rbx,%rdx
140021d16:	48 8b ce             	mov    %rsi,%rcx
140021d19:	e8 f2 8a 01 00       	call   0x14003a810
140021d1e:	4c 8b 7c 24 68       	mov    0x68(%rsp),%r15
140021d23:	41 80 7f 28 00       	cmpb   $0x0,0x28(%r15)
140021d28:	75 08                	jne    0x140021d32
140021d2a:	49 8b cf             	mov    %r15,%rcx
140021d2d:	e8 0e 29 ff ff       	call   0x140014640
140021d32:	49 8b 47 18          	mov    0x18(%r15),%rax
140021d36:	48 8b 88 f8 00 00 00 	mov    0xf8(%rax),%rcx
140021d3d:	48 8b 01             	mov    (%rcx),%rax
140021d40:	8a 08                	mov    (%rax),%cl
140021d42:	88 0b                	mov    %cl,(%rbx)
140021d44:	41 8b 46 04          	mov    0x4(%r14),%eax
140021d48:	85 c0                	test   %eax,%eax
140021d4a:	79 3b                	jns    0x140021d87
140021d4c:	f7 d8                	neg    %eax
140021d4e:	80 7c 24 60 00       	cmpb   $0x0,0x60(%rsp)
140021d53:	75 04                	jne    0x140021d59
140021d55:	3b c5                	cmp    %ebp,%eax
140021d57:	7d 02                	jge    0x140021d5b
140021d59:	8b e8                	mov    %eax,%ebp
140021d5b:	48 63 dd             	movslq %ebp,%rbx
140021d5e:	48 ff c7             	inc    %rdi
140021d61:	80 3c 3e 00          	cmpb   $0x0,(%rsi,%rdi,1)
140021d65:	75 f7                	jne    0x140021d5e
140021d67:	4c 8d 47 01          	lea    0x1(%rdi),%r8
140021d6b:	48 8b d6             	mov    %rsi,%rdx
140021d6e:	48 8d 0c 33          	lea    (%rbx,%rsi,1),%rcx
140021d72:	e8 99 8a 01 00       	call   0x14003a810
140021d77:	4c 8b c3             	mov    %rbx,%r8
140021d7a:	ba 30 00 00 00       	mov    $0x30,%edx
140021d7f:	48 8b ce             	mov    %rsi,%rcx
140021d82:	e8 29 91 01 00       	call   0x14003aeb0
140021d87:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140021d8c:	33 c0                	xor    %eax,%eax
140021d8e:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
140021d93:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
140021d98:	48 83 c4 20          	add    $0x20,%rsp
140021d9c:	41 5f                	pop    %r15
140021d9e:	41 5e                	pop    %r14
140021da0:	5f                   	pop    %rdi
140021da1:	c3                   	ret
140021da2:	cc                   	int3
140021da3:	cc                   	int3
140021da4:	4c 8b dc             	mov    %rsp,%r11
140021da7:	49 89 5b 08          	mov    %rbx,0x8(%r11)
140021dab:	49 89 6b 10          	mov    %rbp,0x10(%r11)
140021daf:	49 89 7b 18          	mov    %rdi,0x18(%r11)
140021db3:	4d 89 73 20          	mov    %r14,0x20(%r11)
140021db7:	41 57                	push   %r15
140021db9:	48 83 ec 50          	sub    $0x50,%rsp
140021dbd:	48 8b 84 24 80 00 00 	mov    0x80(%rsp),%rax
140021dc4:	00
140021dc5:	49 8b e8             	mov    %r8,%rbp
140021dc8:	48 8b 09             	mov    (%rcx),%rcx
140021dcb:	48 8b fa             	mov    %rdx,%rdi
140021dce:	8b 94 24 88 00 00 00 	mov    0x88(%rsp),%edx
140021dd5:	0f 57 c0             	xorps  %xmm0,%xmm0
140021dd8:	49 89 43 d0          	mov    %rax,-0x30(%r11)
140021ddc:	45 33 c0             	xor    %r8d,%r8d
140021ddf:	4d 89 4b c8          	mov    %r9,-0x38(%r11)
140021de3:	4d 8d 4b e8          	lea    -0x18(%r11),%r9
140021de7:	0f 11 44 24 40       	movups %xmm0,0x40(%rsp)
140021dec:	e8 eb b1 00 00       	call   0x14002cfdc
140021df1:	44 8b 7c 24 44       	mov    0x44(%rsp),%r15d
140021df6:	45 33 c0             	xor    %r8d,%r8d
140021df9:	83 7c 24 40 2d       	cmpl   $0x2d,0x40(%rsp)
140021dfe:	44 8b c8             	mov    %eax,%r9d
140021e01:	8b 84 24 a0 00 00 00 	mov    0xa0(%rsp),%eax
140021e08:	48 8b d5             	mov    %rbp,%rdx
140021e0b:	4c 8b b4 24 a8 00 00 	mov    0xa8(%rsp),%r14
140021e12:	00
140021e13:	41 0f 94 c0          	sete   %r8b
140021e17:	49 2b d0             	sub    %r8,%rdx
140021e1a:	4c 89 74 24 30       	mov    %r14,0x30(%rsp)
140021e1f:	89 44 24 28          	mov    %eax,0x28(%rsp)
140021e23:	41 ff cf             	dec    %r15d
140021e26:	44 89 4c 24 20       	mov    %r9d,0x20(%rsp)
140021e2b:	48 83 fd ff          	cmp    $0xffffffffffffffff,%rbp
140021e2f:	49 8d 1c 38          	lea    (%r8,%rdi,1),%rbx
140021e33:	44 8b 84 24 88 00 00 	mov    0x88(%rsp),%r8d
140021e3a:	00
140021e3b:	48 0f 44 d5          	cmove  %rbp,%rdx
140021e3f:	4c 8d 4c 24 40       	lea    0x40(%rsp),%r9
140021e44:	48 8b cb             	mov    %rbx,%rcx
140021e47:	e8 80 b0 00 00       	call   0x14002cecc
140021e4c:	85 c0                	test   %eax,%eax
140021e4e:	74 08                	je     0x140021e58
140021e50:	c6 07 00             	movb   $0x0,(%rdi)
140021e53:	e9 83 00 00 00       	jmp    0x140021edb
140021e58:	8b 44 24 44          	mov    0x44(%rsp),%eax
140021e5c:	ff c8                	dec    %eax
140021e5e:	83 f8 fc             	cmp    $0xfffffffc,%eax
140021e61:	7c 3e                	jl     0x140021ea1
140021e63:	3b 84 24 88 00 00 00 	cmp    0x88(%rsp),%eax
140021e6a:	7d 35                	jge    0x140021ea1
140021e6c:	44 3b f8             	cmp    %eax,%r15d
140021e6f:	7d 0c                	jge    0x140021e7d
140021e71:	8a 03                	mov    (%rbx),%al
140021e73:	48 ff c3             	inc    %rbx
140021e76:	84 c0                	test   %al,%al
140021e78:	75 f7                	jne    0x140021e71
140021e7a:	88 43 fe             	mov    %al,-0x2(%rbx)
140021e7d:	44 8b 84 24 88 00 00 	mov    0x88(%rsp),%r8d
140021e84:	00
140021e85:	4c 8d 4c 24 40       	lea    0x40(%rsp),%r9
140021e8a:	4c 89 74 24 28       	mov    %r14,0x28(%rsp)
140021e8f:	48 8b d5             	mov    %rbp,%rdx
140021e92:	48 8b cf             	mov    %rdi,%rcx
140021e95:	c6 44 24 20 01       	movb   $0x1,0x20(%rsp)
140021e9a:	e8 ad fd ff ff       	call   0x140021c4c
140021e9f:	eb 3a                	jmp    0x140021edb
140021ea1:	44 8a 8c 24 90 00 00 	mov    0x90(%rsp),%r9b
140021ea8:	00
140021ea9:	48 8d 44 24 40       	lea    0x40(%rsp),%rax
140021eae:	44 8b 84 24 88 00 00 	mov    0x88(%rsp),%r8d
140021eb5:	00
140021eb6:	48 8b d5             	mov    %rbp,%rdx
140021eb9:	4c 89 74 24 38       	mov    %r14,0x38(%rsp)
140021ebe:	48 8b cf             	mov    %rdi,%rcx
140021ec1:	c6 44 24 30 01       	movb   $0x1,0x30(%rsp)
140021ec6:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140021ecb:	8b 84 24 98 00 00 00 	mov    0x98(%rsp),%eax
140021ed2:	89 44 24 20          	mov    %eax,0x20(%rsp)
140021ed6:	e8 b5 fa ff ff       	call   0x140021990
140021edb:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
140021ee0:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
140021ee5:	48 8b 7c 24 70       	mov    0x70(%rsp),%rdi
140021eea:	4c 8b 74 24 78       	mov    0x78(%rsp),%r14
140021eef:	48 83 c4 50          	add    $0x50,%rsp
140021ef3:	41 5f                	pop    %r15
140021ef5:	c3                   	ret
140021ef6:	cc                   	int3
140021ef7:	cc                   	int3
140021ef8:	48 8b c4             	mov    %rsp,%rax
140021efb:	48 89 58 08          	mov    %rbx,0x8(%rax)
140021eff:	48 89 68 10          	mov    %rbp,0x10(%rax)
140021f03:	48 89 70 18          	mov    %rsi,0x18(%rax)
140021f07:	48 89 78 20          	mov    %rdi,0x20(%rax)
140021f0b:	41 54                	push   %r12
140021f0d:	41 56                	push   %r14
140021f0f:	41 57                	push   %r15
140021f11:	48 83 ec 20          	sub    $0x20,%rsp
140021f15:	48 8b 19             	mov    (%rcx),%rbx
140021f18:	49 bc ff ff ff ff ff 	movabs $0xfffffffffffff,%r12
140021f1f:	ff 0f 00
140021f22:	48 23 da             	and    %rdx,%rbx
140021f25:	45 0f bf f0          	movswl %r8w,%r14d
140021f29:	49 23 dc             	and    %r12,%rbx
140021f2c:	48 8b f9             	mov    %rcx,%rdi
140021f2f:	41 8b ce             	mov    %r14d,%ecx
140021f32:	45 33 ff             	xor    %r15d,%r15d
140021f35:	48 d3 eb             	shr    %cl,%rbx
140021f38:	48 8b ea             	mov    %rdx,%rbp
140021f3b:	45 85 c9             	test   %r9d,%r9d
140021f3e:	75 0c                	jne    0x140021f4c
140021f40:	66 83 fb 08          	cmp    $0x8,%bx
140021f44:	0f 93 c0             	setae  %al
140021f47:	e9 a3 00 00 00       	jmp    0x140021fef
140021f4c:	e8 1f 40 00 00       	call   0x140025f70
140021f51:	85 c0                	test   %eax,%eax
140021f53:	75 72                	jne    0x140021fc7
140021f55:	4c 8b 07             	mov    (%rdi),%r8
140021f58:	41 8b ce             	mov    %r14d,%ecx
140021f5b:	49 8b c0             	mov    %r8,%rax
140021f5e:	48 23 c5             	and    %rbp,%rax
140021f61:	49 23 c4             	and    %r12,%rax
140021f64:	48 d3 e8             	shr    %cl,%rax
140021f67:	66 83 f8 08          	cmp    $0x8,%ax
140021f6b:	76 07                	jbe    0x140021f74
140021f6d:	ba 01 00 00 00       	mov    $0x1,%edx
140021f72:	eb 4f                	jmp    0x140021fc3
140021f74:	73 05                	jae    0x140021f7b
140021f76:	41 8a d7             	mov    %r15b,%dl
140021f79:	eb 48                	jmp    0x140021fc3
140021f7b:	ba 01 00 00 00       	mov    $0x1,%edx
140021f80:	8b c2                	mov    %edx,%eax
140021f82:	48 d3 e0             	shl    %cl,%rax
140021f85:	48 2b c2             	sub    %rdx,%rax
140021f88:	49 23 c0             	and    %r8,%rax
140021f8b:	49 85 c4             	test   %rax,%r12
140021f8e:	75 33                	jne    0x140021fc3
140021f90:	41 83 fe 30          	cmp    $0x30,%r14d
140021f94:	74 19                	je     0x140021faf
140021f96:	49 c1 e8 04          	shr    $0x4,%r8
140021f9a:	48 b8 ff ff ff ff ff 	movabs $0xffffffffffff,%rax
140021fa1:	ff 00 00
140021fa4:	4c 23 c5             	and    %rbp,%r8
140021fa7:	4c 23 c0             	and    %rax,%r8
140021faa:	49 d3 e8             	shr    %cl,%r8
140021fad:	eb 11                	jmp    0x140021fc0
140021faf:	48 b8 00 00 00 00 00 	movabs $0x7ff0000000000000,%rax
140021fb6:	00 f0 7f
140021fb9:	4c 85 c0             	test   %r8,%rax
140021fbc:	41 0f 95 c0          	setne  %r8b
140021fc0:	41 22 d0             	and    %r8b,%dl
140021fc3:	8a c2                	mov    %dl,%al
140021fc5:	eb 28                	jmp    0x140021fef
140021fc7:	3d 00 02 00 00       	cmp    $0x200,%eax
140021fcc:	75 0c                	jne    0x140021fda
140021fce:	66 85 db             	test   %bx,%bx
140021fd1:	74 a3                	je     0x140021f76
140021fd3:	4c 39 3f             	cmp    %r15,(%rdi)
140021fd6:	7c 9e                	jl     0x140021f76
140021fd8:	eb 93                	jmp    0x140021f6d
140021fda:	3d 00 01 00 00       	cmp    $0x100,%eax
140021fdf:	75 0c                	jne    0x140021fed
140021fe1:	66 85 db             	test   %bx,%bx
140021fe4:	74 90                	je     0x140021f76
140021fe6:	4c 39 3f             	cmp    %r15,(%rdi)
140021fe9:	7d 8b                	jge    0x140021f76
140021feb:	eb 80                	jmp    0x140021f6d
140021fed:	32 c0                	xor    %al,%al
140021fef:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140021ff4:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
140021ff9:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
140021ffe:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
140022003:	48 83 c4 20          	add    $0x20,%rsp
140022007:	41 5f                	pop    %r15
140022009:	41 5e                	pop    %r14
14002200b:	41 5c                	pop    %r12
14002200d:	c3                   	ret
14002200e:	cc                   	int3
14002200f:	cc                   	int3
140022010:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140022015:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
14002201a:	57                   	push   %rdi
14002201b:	48 83 ec 50          	sub    $0x50,%rsp
14002201f:	4d 8b d8             	mov    %r8,%r11
140022022:	4c 8b d2             	mov    %rdx,%r10
140022025:	48 8b f9             	mov    %rcx,%rdi
140022028:	48 85 d2             	test   %rdx,%rdx
14002202b:	75 33                	jne    0x140022060
14002202d:	48 8b 8c 24 a8 00 00 	mov    0xa8(%rsp),%rcx
140022034:	00
140022035:	8d 5a 16             	lea    0x16(%rdx),%ebx
140022038:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
14002203d:	c6 41 30 01          	movb   $0x1,0x30(%rcx)
140022041:	89 59 2c             	mov    %ebx,0x2c(%rcx)
140022044:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
14002204a:	45 33 c9             	xor    %r9d,%r9d
14002204d:	45 33 c0             	xor    %r8d,%r8d
140022050:	33 d2                	xor    %edx,%edx
140022052:	33 c9                	xor    %ecx,%ecx
140022054:	e8 2f ce fe ff       	call   0x14000ee88
140022059:	8b c3                	mov    %ebx,%eax
14002205b:	e9 6f 02 00 00       	jmp    0x1400222cf
140022060:	4d 85 db             	test   %r11,%r11
140022063:	75 1b                	jne    0x140022080
140022065:	48 8b 84 24 a8 00 00 	mov    0xa8(%rsp),%rax
14002206c:	00
14002206d:	bb 16 00 00 00       	mov    $0x16,%ebx
140022072:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140022077:	c6 40 30 01          	movb   $0x1,0x30(%rax)
14002207b:	89 58 2c             	mov    %ebx,0x2c(%rax)
14002207e:	eb c4                	jmp    0x140022044
140022080:	4d 85 c9             	test   %r9,%r9
140022083:	74 e0                	je     0x140022065
140022085:	4c 8b 84 24 80 00 00 	mov    0x80(%rsp),%r8
14002208c:	00
14002208d:	4d 85 c0             	test   %r8,%r8
140022090:	74 d3                	je     0x140022065
140022092:	8b 8c 24 88 00 00 00 	mov    0x88(%rsp),%ecx
140022099:	83 f9 41             	cmp    $0x41,%ecx
14002209c:	74 0d                	je     0x1400220ab
14002209e:	8d 41 bb             	lea    -0x45(%rcx),%eax
1400220a1:	83 f8 02             	cmp    $0x2,%eax
1400220a4:	76 05                	jbe    0x1400220ab
1400220a6:	40 32 f6             	xor    %sil,%sil
1400220a9:	eb 03                	jmp    0x1400220ae
1400220ab:	40 b6 01             	mov    $0x1,%sil
1400220ae:	48 8b 9c 24 98 00 00 	mov    0x98(%rsp),%rbx
1400220b5:	00
1400220b6:	f6 c3 08             	test   $0x8,%bl
1400220b9:	0f 85 e6 00 00 00    	jne    0x1400221a5
1400220bf:	48 8b 17             	mov    (%rdi),%rdx
1400220c2:	48 8b c2             	mov    %rdx,%rax
1400220c5:	48 c1 e8 34          	shr    $0x34,%rax
1400220c9:	25 ff 07 00 00       	and    $0x7ff,%eax
1400220ce:	48 3d ff 07 00 00    	cmp    $0x7ff,%rax
1400220d4:	0f 85 cb 00 00 00    	jne    0x1400221a5
1400220da:	48 b9 ff ff ff ff ff 	movabs $0xfffffffffffff,%rcx
1400220e1:	ff 0f 00
1400220e4:	48 8b c2             	mov    %rdx,%rax
1400220e7:	41 b8 0c 00 00 00    	mov    $0xc,%r8d
1400220ed:	48 23 c1             	and    %rcx,%rax
1400220f0:	75 04                	jne    0x1400220f6
1400220f2:	33 c9                	xor    %ecx,%ecx
1400220f4:	eb 2d                	jmp    0x140022123
1400220f6:	48 b9 00 00 00 00 00 	movabs $0x8000000000000,%rcx
1400220fd:	00 08 00
140022100:	48 85 d2             	test   %rdx,%rdx
140022103:	79 0a                	jns    0x14002210f
140022105:	48 3b c1             	cmp    %rcx,%rax
140022108:	75 05                	jne    0x14002210f
14002210a:	49 8b c8             	mov    %r8,%rcx
14002210d:	eb 14                	jmp    0x140022123
14002210f:	48 8b c2             	mov    %rdx,%rax
140022112:	48 23 c1             	and    %rcx,%rax
140022115:	48 f7 d8             	neg    %rax
140022118:	48 1b c9             	sbb    %rcx,%rcx
14002211b:	48 83 e1 fc          	and    $0xfffffffffffffffc,%rcx
14002211f:	48 83 c1 08          	add    $0x8,%rcx
140022123:	48 c1 ea 3f          	shr    $0x3f,%rdx
140022127:	48 8d 42 04          	lea    0x4(%rdx),%rax
14002212b:	4c 3b d8             	cmp    %rax,%r11
14002212e:	73 06                	jae    0x140022136
140022130:	41 c6 02 00          	movb   $0x0,(%r10)
140022134:	eb 67                	jmp    0x14002219d
140022136:	49 83 c8 ff          	or     $0xffffffffffffffff,%r8
14002213a:	84 d2                	test   %dl,%dl
14002213c:	74 13                	je     0x140022151
14002213e:	41 c6 02 2d          	movb   $0x2d,(%r10)
140022142:	49 ff c2             	inc    %r10
140022145:	41 c6 02 00          	movb   $0x0,(%r10)
140022149:	4d 3b d8             	cmp    %r8,%r11
14002214c:	74 03                	je     0x140022151
14002214e:	49 ff cb             	dec    %r11
140022151:	40 0f b6 d6          	movzbl %sil,%edx
140022155:	48 8d 1d 14 d8 01 00 	lea    0x1d814(%rip),%rbx        # 0x14003f970
14002215c:	83 f2 01             	xor    $0x1,%edx
14002215f:	03 d2                	add    %edx,%edx
140022161:	8b c2                	mov    %edx,%eax
140022163:	48 03 c1             	add    %rcx,%rax
140022166:	4c 8b 0c c3          	mov    (%rbx,%rax,8),%r9
14002216a:	49 ff c0             	inc    %r8
14002216d:	43 80 3c 01 00       	cmpb   $0x0,(%r9,%r8,1)
140022172:	75 f6                	jne    0x14002216a
140022174:	33 c0                	xor    %eax,%eax
140022176:	4d 3b d8             	cmp    %r8,%r11
140022179:	0f 96 c0             	setbe  %al
14002217c:	44 8d 04 02          	lea    (%rdx,%rax,1),%r8d
140022180:	49 8b d3             	mov    %r11,%rdx
140022183:	4c 03 c1             	add    %rcx,%r8
140022186:	49 8b ca             	mov    %r10,%rcx
140022189:	4e 8b 04 c3          	mov    (%rbx,%r8,8),%r8
14002218d:	e8 a6 e6 ff ff       	call   0x140020838