18012decb:	48 8b c1             	mov    %rcx,%rax
18012dece:	4c 8b cb             	mov    %rbx,%r9
18012ded1:	48 f7 f5             	div    %rbp
18012ded4:	48 8b c8             	mov    %rax,%rcx
18012ded7:	83 fa 09             	cmp    $0x9,%edx
18012deda:	b8 57 00 00 00       	mov    $0x57,%eax
18012dedf:	44 8d 70 d9          	lea    -0x27(%rax),%r14d
18012dee3:	41 0f 46 c6          	cmovbe %r14d,%eax
18012dee7:	48 ff c7             	inc    %rdi
18012deea:	02 c2                	add    %dl,%al
18012deec:	88 03                	mov    %al,(%rbx)
18012deee:	48 85 c9             	test   %rcx,%rcx
18012def1:	74 08                	je     0x18012defb
18012def3:	48 8b de             	mov    %rsi,%rbx
18012def6:	49 3b fb             	cmp    %r11,%rdi
18012def9:	72 ca                	jb     0x18012dec5
18012defb:	49 3b fb             	cmp    %r11,%rdi
18012defe:	72 09                	jb     0x18012df09
18012df00:	41 c6 02 00          	movb   $0x0,(%r10)
18012df04:	e9 71 ff ff ff       	jmp    0x18012de7a
18012df09:	c6 06 00             	movb   $0x0,(%rsi)
18012df0c:	41 8a 00             	mov    (%r8),%al
18012df0f:	41 8a 09             	mov    (%r9),%cl
18012df12:	41 88 01             	mov    %al,(%r9)
18012df15:	49 ff c9             	dec    %r9
18012df18:	41 88 08             	mov    %cl,(%r8)
18012df1b:	49 ff c0             	inc    %r8
18012df1e:	4d 3b c1             	cmp    %r9,%r8
18012df21:	72 e9                	jb     0x18012df0c
18012df23:	33 c0                	xor    %eax,%eax
18012df25:	eb 1a                	jmp    0x18012df41
18012df27:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
18012df2d:	45 33 c9             	xor    %r9d,%r9d
18012df30:	45 33 c0             	xor    %r8d,%r8d
18012df33:	33 d2                	xor    %edx,%edx
18012df35:	33 c9                	xor    %ecx,%ecx
18012df37:	e8 f0 7b ee ff       	call   0x180015b2c
18012df3c:	b8 16 00 00 00       	mov    $0x16,%eax
18012df41:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
18012df46:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
18012df4b:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
18012df50:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
18012df55:	48 83 c4 30          	add    $0x30,%rsp
18012df59:	41 5e                	pop    %r14
18012df5b:	c3                   	ret
18012df5c:	cc                   	int3
18012df5d:	cc                   	int3
18012df5e:	cc                   	int3
18012df5f:	cc                   	int3
18012df60:	48 8b c4             	mov    %rsp,%rax
18012df63:	48 89 58 08          	mov    %rbx,0x8(%rax)
18012df67:	48 89 68 10          	mov    %rbp,0x10(%rax)
18012df6b:	48 89 70 18          	mov    %rsi,0x18(%rax)
18012df6f:	48 89 78 20          	mov    %rdi,0x20(%rax)
18012df73:	41 56                	push   %r14
18012df75:	48 83 ec 30          	sub    $0x30,%rsp
18012df79:	41 8b e9             	mov    %r9d,%ebp
18012df7c:	4d 8b d8             	mov    %r8,%r11
18012df7f:	4c 8b d2             	mov    %rdx,%r10
18012df82:	48 85 d2             	test   %rdx,%rdx
18012df85:	0f 84 c0 00 00 00    	je     0x18012e04b
18012df8b:	4d 85 c0             	test   %r8,%r8
18012df8e:	0f 84 b7 00 00 00    	je     0x18012e04b
18012df94:	c6 02 00             	movb   $0x0,(%rdx)
18012df97:	8b 54 24 60          	mov    0x60(%rsp),%edx
18012df9b:	8b c2                	mov    %edx,%eax
18012df9d:	f7 d8                	neg    %eax
18012df9f:	4d 1b c0             	sbb    %r8,%r8
18012dfa2:	49 f7 d8             	neg    %r8
18012dfa5:	49 ff c0             	inc    %r8
18012dfa8:	4d 3b d8             	cmp    %r8,%r11
18012dfab:	77 1f                	ja     0x18012dfcc
18012dfad:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
18012dfb3:	45 33 c9             	xor    %r9d,%r9d
18012dfb6:	45 33 c0             	xor    %r8d,%r8d
18012dfb9:	33 d2                	xor    %edx,%edx
18012dfbb:	33 c9                	xor    %ecx,%ecx
18012dfbd:	e8 6a 7b ee ff       	call   0x180015b2c
18012dfc2:	b8 22 00 00 00       	mov    $0x22,%eax
18012dfc7:	e9 99 00 00 00       	jmp    0x18012e065
18012dfcc:	41 8d 41 fe          	lea    -0x2(%r9),%eax
18012dfd0:	83 f8 22             	cmp    $0x22,%eax
18012dfd3:	77 76                	ja     0x18012e04b
18012dfd5:	33 ff                	xor    %edi,%edi
18012dfd7:	49 8b da             	mov    %r10,%rbx
18012dfda:	85 d2                	test   %edx,%edx
18012dfdc:	74 0f                	je     0x18012dfed
18012dfde:	41 c6 02 2d          	movb   $0x2d,(%r10)
18012dfe2:	49 8d 5a 01          	lea    0x1(%r10),%rbx
18012dfe6:	bf 01 00 00 00       	mov    $0x1,%edi
18012dfeb:	f7 d9                	neg    %ecx
18012dfed:	4c 8b c3             	mov    %rbx,%r8
18012dff0:	33 d2                	xor    %edx,%edx
18012dff2:	48 8d 73 01          	lea    0x1(%rbx),%rsi
18012dff6:	8b c1                	mov    %ecx,%eax
18012dff8:	4c 8b cb             	mov    %rbx,%r9
18012dffb:	f7 f5                	div    %ebp
18012dffd:	8b c8                	mov    %eax,%ecx
18012dfff:	83 fa 09             	cmp    $0x9,%edx
18012e002:	b8 57 00 00 00       	mov    $0x57,%eax
18012e007:	44 8d 70 d9          	lea    -0x27(%rax),%r14d
18012e00b:	41 0f 46 c6          	cmovbe %r14d,%eax
18012e00f:	48 ff c7             	inc    %rdi
18012e012:	02 c2                	add    %dl,%al
18012e014:	88 03                	mov    %al,(%rbx)
18012e016:	85 c9                	test   %ecx,%ecx
18012e018:	74 08                	je     0x18012e022
18012e01a:	48 8b de             	mov    %rsi,%rbx
18012e01d:	49 3b fb             	cmp    %r11,%rdi
18012e020:	72 ce                	jb     0x18012dff0
18012e022:	49 3b fb             	cmp    %r11,%rdi
18012e025:	72 06                	jb     0x18012e02d
18012e027:	41 c6 02 00          	movb   $0x0,(%r10)
18012e02b:	eb 80                	jmp    0x18012dfad
18012e02d:	c6 06 00             	movb   $0x0,(%rsi)
18012e030:	41 8a 00             	mov    (%r8),%al
18012e033:	41 8a 09             	mov    (%r9),%cl
18012e036:	41 88 01             	mov    %al,(%r9)
18012e039:	49 ff c9             	dec    %r9
18012e03c:	41 88 08             	mov    %cl,(%r8)
18012e03f:	49 ff c0             	inc    %r8
18012e042:	4d 3b c1             	cmp    %r9,%r8
18012e045:	72 e9                	jb     0x18012e030
18012e047:	33 c0                	xor    %eax,%eax
18012e049:	eb 1a                	jmp    0x18012e065
18012e04b:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
18012e051:	45 33 c9             	xor    %r9d,%r9d
18012e054:	45 33 c0             	xor    %r8d,%r8d
18012e057:	33 d2                	xor    %edx,%edx
18012e059:	33 c9                	xor    %ecx,%ecx
18012e05b:	e8 cc 7a ee ff       	call   0x180015b2c
18012e060:	b8 16 00 00 00       	mov    $0x16,%eax
18012e065:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
18012e06a:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
18012e06f:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
18012e074:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
18012e079:	48 83 c4 30          	add    $0x30,%rsp
18012e07d:	41 5e                	pop    %r14
18012e07f:	c3                   	ret
18012e080:	cc                   	int3
18012e081:	cc                   	int3
18012e082:	cc                   	int3
18012e083:	cc                   	int3
18012e084:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18012e089:	57                   	push   %rdi
18012e08a:	48 83 ec 30          	sub    $0x30,%rsp
18012e08e:	33 ff                	xor    %edi,%edi
18012e090:	4d 85 c9             	test   %r9,%r9
18012e093:	75 2f                	jne    0x18012e0c4
18012e095:	48 85 c9             	test   %rcx,%rcx
18012e098:	75 2f                	jne    0x18012e0c9
18012e09a:	48 85 d2             	test   %rdx,%rdx
18012e09d:	74 37                	je     0x18012e0d6
18012e09f:	45 33 c9             	xor    %r9d,%r9d
18012e0a2:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
18012e0a7:	45 33 c0             	xor    %r8d,%r8d
18012e0aa:	33 d2                	xor    %edx,%edx
18012e0ac:	33 c9                	xor    %ecx,%ecx
18012e0ae:	e8 79 7a ee ff       	call   0x180015b2c
18012e0b3:	b8 16 00 00 00       	mov    $0x16,%eax
18012e0b8:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
18012e0bd:	48 83 c4 30          	add    $0x30,%rsp
18012e0c1:	5f                   	pop    %rdi
18012e0c2:	c3                   	ret
18012e0c3:	cc                   	int3
18012e0c4:	48 85 c9             	test   %rcx,%rcx
18012e0c7:	74 d6                	je     0x18012e09f
18012e0c9:	48 85 d2             	test   %rdx,%rdx
18012e0cc:	74 d1                	je     0x18012e09f
18012e0ce:	4d 85 c9             	test   %r9,%r9
18012e0d1:	75 07                	jne    0x18012e0da
18012e0d3:	66 89 39             	mov    %di,(%rcx)
18012e0d6:	33 c0                	xor    %eax,%eax
18012e0d8:	eb de                	jmp    0x18012e0b8
18012e0da:	4d 85 c0             	test   %r8,%r8
18012e0dd:	75 06                	jne    0x18012e0e5
18012e0df:	41 8d 58 16          	lea    0x16(%r8),%ebx
18012e0e3:	eb 71                	jmp    0x18012e156
18012e0e5:	4c 8b d9             	mov    %rcx,%r11
18012e0e8:	4c 8b d2             	mov    %rdx,%r10
18012e0eb:	49 83 f9 ff          	cmp    $0xffffffffffffffff,%r9
18012e0ef:	75 1d                	jne    0x18012e10e
18012e0f1:	4d 2b d8             	sub    %r8,%r11
18012e0f4:	41 0f b7 00          	movzwl (%r8),%eax
18012e0f8:	66 43 89 04 03       	mov    %ax,(%r11,%r8,1)
18012e0fd:	4d 8d 40 02          	lea    0x2(%r8),%r8
18012e101:	66 85 c0             	test   %ax,%ax
18012e104:	74 32                	je     0x18012e138
18012e106:	49 83 ea 01          	sub    $0x1,%r10
18012e10a:	75 e8                	jne    0x18012e0f4
18012e10c:	eb 2a                	jmp    0x18012e138
18012e10e:	4c 2b c1             	sub    %rcx,%r8
18012e111:	43 0f b7 04 18       	movzwl (%r8,%r11,1),%eax
18012e116:	66 41 89 03          	mov    %ax,(%r11)
18012e11a:	4d 8d 5b 02          	lea    0x2(%r11),%r11
18012e11e:	66 85 c0             	test   %ax,%ax
18012e121:	74 0c                	je     0x18012e12f
18012e123:	49 83 ea 01          	sub    $0x1,%r10
18012e127:	74 06                	je     0x18012e12f
18012e129:	49 83 e9 01          	sub    $0x1,%r9
18012e12d:	75 e2                	jne    0x18012e111
18012e12f:	4d 85 c9             	test   %r9,%r9
18012e132:	75 04                	jne    0x18012e138
18012e134:	66 41 89 3b          	mov    %di,(%r11)
18012e138:	4d 85 d2             	test   %r10,%r10
18012e13b:	75 99                	jne    0x18012e0d6
18012e13d:	49 83 f9 ff          	cmp    $0xffffffffffffffff,%r9
18012e141:	75 0e                	jne    0x18012e151
18012e143:	66 89 7c 51 fe       	mov    %di,-0x2(%rcx,%rdx,2)
18012e148:	41 8d 42 50          	lea    0x50(%r10),%eax
18012e14c:	e9 67 ff ff ff       	jmp    0x18012e0b8
18012e151:	bb 22 00 00 00       	mov    $0x22,%ebx
18012e156:	66 89 39             	mov    %di,(%rcx)
18012e159:	45 33 c9             	xor    %r9d,%r9d
18012e15c:	33 c9                	xor    %ecx,%ecx
18012e15e:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
18012e163:	45 33 c0             	xor    %r8d,%r8d
18012e166:	33 d2                	xor    %edx,%edx
18012e168:	e8 bf 79 ee ff       	call   0x180015b2c
18012e16d:	8b c3                	mov    %ebx,%eax
18012e16f:	e9 44 ff ff ff       	jmp    0x18012e0b8
18012e174:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
18012e179:	53                   	push   %rbx
18012e17a:	55                   	push   %rbp
18012e17b:	56                   	push   %rsi
18012e17c:	57                   	push   %rdi
18012e17d:	41 54                	push   %r12
18012e17f:	41 56                	push   %r14
18012e181:	41 57                	push   %r15
18012e183:	48 83 ec 20          	sub    $0x20,%rsp
18012e187:	48 8b 9c 24 80 00 00 	mov    0x80(%rsp),%rbx
18012e18e:	00
18012e18f:	8b c1                	mov    %ecx,%eax
18012e191:	24 08                	and    $0x8,%al
18012e193:	4d 8b f9             	mov    %r9,%r15
18012e196:	f6 d8                	neg    %al
18012e198:	8b f1                	mov    %ecx,%esi
18012e19a:	4d 8b e0             	mov    %r8,%r12
18012e19d:	4c 8b 33             	mov    (%rbx),%r14
18012e1a0:	1b c0                	sbb    %eax,%eax
18012e1a2:	41 ff 09             	decl   (%r9)
18012e1a5:	41 b9 ff ff 00 00    	mov    $0xffff,%r9d
18012e1ab:	41 0f b7 08          	movzwl (%r8),%ecx
18012e1af:	89 44 24 70          	mov    %eax,0x70(%rsp)
18012e1b3:	66 44 3b c9          	cmp    %cx,%r9w
18012e1b7:	74 0d                	je     0x18012e1c6
18012e1b9:	48 8b 94 24 90 00 00 	mov    0x90(%rsp),%rdx
18012e1c0:	00
18012e1c1:	e8 ca 23 00 00       	call   0x180130590
18012e1c6:	48 8b 84 24 98 00 00 	mov    0x98(%rsp),%rax
18012e1cd:	00
18012e1ce:	33 d2                	xor    %edx,%edx
18012e1d0:	8b fe                	mov    %esi,%edi
18012e1d2:	83 e7 10             	and    $0x10,%edi
18012e1d5:	89 bc 24 80 00 00 00 	mov    %edi,0x80(%rsp)
18012e1dc:	48 8d 68 ff          	lea    -0x1(%rax),%rbp
18012e1e0:	48 0f 45 e8          	cmovne %rax,%rbp
18012e1e4:	8b c6                	mov    %esi,%eax
18012e1e6:	83 e0 01             	and    $0x1,%eax
18012e1e9:	89 44 24 60          	mov    %eax,0x60(%rsp)
18012e1ed:	eb 07                	jmp    0x18012e1f6
18012e1ef:	8b bc 24 80 00 00 00 	mov    0x80(%rsp),%edi
18012e1f6:	85 c0                	test   %eax,%eax
18012e1f8:	74 1a                	je     0x18012e214
18012e1fa:	8b 8c 24 88 00 00 00 	mov    0x88(%rsp),%ecx
18012e201:	8b c1                	mov    %ecx,%eax
18012e203:	ff c9                	dec    %ecx
18012e205:	89 8c 24 88 00 00 00 	mov    %ecx,0x88(%rsp)
18012e20c:	85 c0                	test   %eax,%eax
18012e20e:	0f 84 6c 01 00 00    	je     0x18012e380
18012e214:	48 8b 8c 24 90 00 00 	mov    0x90(%rsp),%rcx
18012e21b:	00
18012e21c:	41 ff 07             	incl   (%r15)
18012e21f:	e8 28 23 00 00       	call   0x18013054c
18012e224:	41 b9 ff ff 00 00    	mov    $0xffff,%r9d
18012e22a:	66 41 89 04 24       	mov    %ax,(%r12)
18012e22f:	33 d2                	xor    %edx,%edx
18012e231:	44 0f b7 c0          	movzwl %ax,%r8d
18012e235:	66 44 3b c8          	cmp    %ax,%r9w
18012e239:	0f 84 24 01 00 00    	je     0x18012e363
18012e23f:	85 ff                	test   %edi,%edi
18012e241:	75 56                	jne    0x18012e299
18012e243:	40 f6 c6 20          	test   $0x20,%sil
18012e247:	74 13                	je     0x18012e25c
18012e249:	66 83 f8 09          	cmp    $0x9,%ax
18012e24d:	72 06                	jb     0x18012e255
18012e24f:	66 83 f8 0d          	cmp    $0xd,%ax
18012e253:	76 07                	jbe    0x18012e25c
18012e255:	66 41 83 f8 20       	cmp    $0x20,%r8w
18012e25a:	75 3d                	jne    0x18012e299
18012e25c:	40 f6 c6 40          	test   $0x40,%sil
18012e260:	0f 84 fd 00 00 00    	je     0x18012e363
18012e266:	41 0f b7 c8          	movzwl %r8w,%ecx
18012e26a:	66 c1 e9 03          	shr    $0x3,%cx
18012e26e:	66 44 3b c1          	cmp    %cx,%r8w
18012e272:	0f 82 eb 00 00 00    	jb     0x18012e363
18012e278:	0f b7 c1             	movzwl %cx,%eax
18012e27b:	41 8b d0             	mov    %r8d,%edx
18012e27e:	48 8b 4c 24 68       	mov    0x68(%rsp),%rcx
18012e283:	83 e2 07             	and    $0x7,%edx
18012e286:	0f be 0c 08          	movsbl (%rax,%rcx,1),%ecx
18012e28a:	33 4c 24 70          	xor    0x70(%rsp),%ecx
18012e28e:	0f a3 d1             	bt     %edx,%ecx
18012e291:	0f 83 ca 00 00 00    	jae    0x18012e361
18012e297:	33 d2                	xor    %edx,%edx
18012e299:	40 f6 c6 04          	test   $0x4,%sil
18012e29d:	0f 85 91 00 00 00    	jne    0x18012e334
18012e2a3:	8b ce                	mov    %esi,%ecx
18012e2a5:	83 e1 02             	and    $0x2,%ecx
18012e2a8:	48 85 ed             	test   %rbp,%rbp
18012e2ab:	0f 84 90 00 00 00    	je     0x18012e341
18012e2b1:	85 c9                	test   %ecx,%ecx
18012e2b3:	74 10                	je     0x18012e2c5
18012e2b5:	48 8b 03             	mov    (%rbx),%rax
18012e2b8:	66 44 89 00          	mov    %r8w,(%rax)
18012e2bc:	48 83 03 02          	addq   $0x2,(%rbx)
18012e2c0:	48 ff cd             	dec    %rbp
18012e2c3:	eb 73                	jmp    0x18012e338
18012e2c5:	48 63 05 3c df 03 00 	movslq 0x3df3c(%rip),%rax        # 0x18016c208
18012e2cc:	48 3b e8             	cmp    %rax,%rbp
18012e2cf:	72 11                	jb     0x18012e2e2
18012e2d1:	41 8a 04 24          	mov    (%r12),%al
18012e2d5:	48 8b 0b             	mov    (%rbx),%rcx
18012e2d8:	88 01                	mov    %al,(%rcx)
18012e2da:	48 8b 03             	mov    (%rbx),%rax
18012e2dd:	40 8a 38             	mov    (%rax),%dil
18012e2e0:	eb 32                	jmp    0x18012e314
18012e2e2:	49 0f be 3c 24       	movsbq (%r12),%rdi
18012e2e7:	40 88 bc 24 98 00 00 	mov    %dil,0x98(%rsp)
18012e2ee:	00
18012e2ef:	4c 8b c7             	mov    %rdi,%r8
18012e2f2:	40 84 ff             	test   %dil,%dil
18012e2f5:	7e 05                	jle    0x18012e2fc
18012e2f7:	48 3b fd             	cmp    %rbp,%rdi
18012e2fa:	77 45                	ja     0x18012e341
18012e2fc:	40 80 ff 05          	cmp    $0x5,%dil
18012e300:	77 3f                	ja     0x18012e341
18012e302:	48 8b 0b             	mov    (%rbx),%rcx
18012e305:	48 8d 94 24 98 00 00 	lea    0x98(%rsp),%rdx
18012e30c:	00
18012e30d:	e8 ae 76 00 00       	call   0x1801359c0
18012e312:	33 d2                	xor    %edx,%edx
18012e314:	8b 44 24 60          	mov    0x60(%rsp),%eax
18012e318:	40 84 ff             	test   %dil,%dil
18012e31b:	0f 8e ce fe ff ff    	jle    0x18012e1ef
18012e321:	48 0f be c7          	movsbq %dil,%rax
18012e325:	48 01 03             	add    %rax,(%rbx)
18012e328:	8b bc 24 80 00 00 00 	mov    0x80(%rsp),%edi
18012e32f:	48 2b e8             	sub    %rax,%rbp
18012e332:	eb 04                	jmp    0x18012e338