180008eff:	48 c7 85 f8 00 00 00 	movq   $0x4,0xf8(%rbp)
180008f06:	04 00 00 00
180008f0a:	4c 89 85 08 01 00 00 	mov    %r8,0x108(%rbp)
180008f11:	48 c7 85 18 01 00 00 	movq   $0x4,0x118(%rbp)
180008f18:	04 00 00 00
180008f1c:	4c 89 85 28 01 00 00 	mov    %r8,0x128(%rbp)
180008f23:	48 c7 85 38 01 00 00 	movq   $0x4,0x138(%rbp)
180008f2a:	04 00 00 00
180008f2e:	e8 cd 80 ff ff       	call   0x180001000
180008f33:	4c 8d 9c 24 40 02 00 	lea    0x240(%rsp),%r11
180008f3a:	00
180008f3b:	49 8b 5b 38          	mov    0x38(%r11),%rbx
180008f3f:	49 8b 73 40          	mov    0x40(%r11),%rsi
180008f43:	49 8b 7b 48          	mov    0x48(%r11),%rdi
180008f47:	49 8b e3             	mov    %r11,%rsp
180008f4a:	41 5f                	pop    %r15
180008f4c:	41 5e                	pop    %r14
180008f4e:	41 5d                	pop    %r13
180008f50:	41 5c                	pop    %r12
180008f52:	5d                   	pop    %rbp
180008f53:	c3                   	ret
180008f54:	cc                   	int3
180008f55:	cc                   	int3
180008f56:	cc                   	int3
180008f57:	cc                   	int3
180008f58:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
180008f5d:	55                   	push   %rbp
180008f5e:	56                   	push   %rsi
180008f5f:	57                   	push   %rdi
180008f60:	48 8b ec             	mov    %rsp,%rbp
180008f63:	48 83 ec 50          	sub    $0x50,%rsp
180008f67:	48 8b 0d c2 c3 19 00 	mov    0x19c3c2(%rip),%rcx        # 0x1801a5330
180008f6e:	4c 8d 45 28          	lea    0x28(%rbp),%r8
180008f72:	33 db                	xor    %ebx,%ebx
180008f74:	c7 45 e0 17 02 75 bd 	movl   $0xbd750217,-0x20(%rbp)
180008f7b:	48 8d 55 20          	lea    0x20(%rbp),%rdx
180008f7f:	48 89 5d f0          	mov    %rbx,-0x10(%rbp)
180008f83:	89 5d fc             	mov    %ebx,-0x4(%rbp)
180008f86:	c7 45 e4 5e 2a c6 40 	movl   $0x40c62a5e,-0x1c(%rbp)
180008f8d:	c7 45 e8 ab df 18 3c 	movl   $0x3c18dfab,-0x18(%rbp)
180008f94:	c7 45 ec c7 76 0f 2b 	movl   $0x2b0f76c7,-0x14(%rbp)
180008f9b:	c6 05 8f c2 19 00 01 	movb   $0x1,0x19c28f(%rip)        # 0x1801a5231
180008fa2:	e8 c1 f2 01 00       	call   0x180028268
180008fa7:	8b f8                	mov    %eax,%edi
180008fa9:	85 c0                	test   %eax,%eax
180008fab:	78 62                	js     0x18000900f
180008fad:	8b 75 20             	mov    0x20(%rbp),%esi
180008fb0:	4c 8d 4d f0          	lea    -0x10(%rbp),%r9
180008fb4:	40 8a c6             	mov    %sil,%al
180008fb7:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
180008fbc:	24 01                	and    $0x1,%al
180008fbe:	c7 45 f8 04 00 00 00 	movl   $0x4,-0x8(%rbp)
180008fc5:	41 b8 00 00 02 00    	mov    $0x20000,%r8d
180008fcb:	88 05 60 c2 19 00    	mov    %al,0x19c260(%rip)        # 0x1801a5231
180008fd1:	48 8d 55 e0          	lea    -0x20(%rbp),%rdx
180008fd5:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
180008fda:	33 c9                	xor    %ecx,%ecx
180008fdc:	e8 bf 13 08 00       	call   0x18008a3a0
180008fe1:	8b f8                	mov    %eax,%edi
180008fe3:	85 c0                	test   %eax,%eax
180008fe5:	78 13                	js     0x180008ffa
180008fe7:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
180008feb:	40 80 e6 03          	and    $0x3,%sil
180008fef:	40 80 fe 01          	cmp    $0x1,%sil
180008ff3:	0f 94 c3             	sete   %bl
180008ff6:	89 18                	mov    %ebx,(%rax)
180008ff8:	eb 15                	jmp    0x18000900f
180008ffa:	48 39 5d f0          	cmp    %rbx,-0x10(%rbp)
180008ffe:	74 0f                	je     0x18000900f
180009000:	4c 8d 45 f0          	lea    -0x10(%rbp),%r8
180009004:	33 c9                	xor    %ecx,%ecx
180009006:	48 8d 55 e0          	lea    -0x20(%rbp),%rdx
18000900a:	e8 29 08 08 00       	call   0x180089838
18000900f:	48 8b 9c 24 80 00 00 	mov    0x80(%rsp),%rbx
180009016:	00
180009017:	8b c7                	mov    %edi,%eax
180009019:	48 83 c4 50          	add    $0x50,%rsp
18000901d:	5f                   	pop    %rdi
18000901e:	5e                   	pop    %rsi
18000901f:	5d                   	pop    %rbp
180009020:	c3                   	ret
180009021:	cc                   	int3
180009022:	cc                   	int3
180009023:	cc                   	int3
180009024:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
180009029:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
18000902e:	55                   	push   %rbp
18000902f:	57                   	push   %rdi
180009030:	41 56                	push   %r14
180009032:	48 8b ec             	mov    %rsp,%rbp
180009035:	48 83 ec 50          	sub    $0x50,%rsp
180009039:	45 33 f6             	xor    %r14d,%r14d
18000903c:	48 8d 45 e8          	lea    -0x18(%rbp),%rax
180009040:	ba 4e 46 49 54       	mov    $0x5449464e,%edx
180009045:	4c 89 75 20          	mov    %r14,0x20(%rbp)
180009049:	48 8d 4d 20          	lea    0x20(%rbp),%rcx
18000904d:	4c 89 75 f4          	mov    %r14,-0xc(%rbp)
180009051:	4c 89 75 e8          	mov    %r14,-0x18(%rbp)
180009055:	44 89 75 f0          	mov    %r14d,-0x10(%rbp)
180009059:	48 89 45 e0          	mov    %rax,-0x20(%rbp)
18000905d:	e8 b6 9f 08 00       	call   0x180093018
180009062:	48 8b 75 20          	mov    0x20(%rbp),%rsi
180009066:	85 c0                	test   %eax,%eax
180009068:	0f 88 1a 01 00 00    	js     0x180009188
18000906e:	41 b9 00 10 00 00    	mov    $0x1000,%r9d
180009074:	48 8d 55 e0          	lea    -0x20(%rbp),%rdx
180009078:	41 b8 3f 01 00 00    	mov    $0x13f,%r8d
18000907e:	48 8d 4d d0          	lea    -0x30(%rbp),%rcx
180009082:	e8 05 eb 08 00       	call   0x180097b8c
180009087:	8b d8                	mov    %eax,%ebx
180009089:	85 c0                	test   %eax,%eax
18000908b:	0f 88 fa 00 00 00    	js     0x18000918b
180009091:	48 8d 7e 28          	lea    0x28(%rsi),%rdi
180009095:	8b 4e 04             	mov    0x4(%rsi),%ecx
180009098:	48 03 ce             	add    %rsi,%rcx
18000909b:	48 8d 41 fc          	lea    -0x4(%rcx),%rax
18000909f:	48 3b f8             	cmp    %rax,%rdi
1800090a2:	0f 83 e0 00 00 00    	jae    0x180009188
1800090a8:	0f b7 57 02          	movzwl 0x2(%rdi),%edx
1800090ac:	48 8d 04 17          	lea    (%rdi,%rdx,1),%rax
1800090b0:	48 3b c1             	cmp    %rcx,%rax
1800090b3:	0f 87 cf 00 00 00    	ja     0x180009188
1800090b9:	66 44 39 37          	cmp    %r14w,(%rdi)
1800090bd:	0f 85 ab 00 00 00    	jne    0x18000916e
1800090c3:	83 fa 38             	cmp    $0x38,%edx
1800090c6:	0f 85 b5 00 00 00    	jne    0x180009181
1800090cc:	48 8b 47 10          	mov    0x10(%rdi),%rax
1800090d0:	48 3b 05 51 8e 14 00 	cmp    0x148e51(%rip),%rax        # 0x180151f28
1800090d7:	0f 85 91 00 00 00    	jne    0x18000916e
1800090dd:	48 8b 47 18          	mov    0x18(%rdi),%rax
1800090e1:	48 3b 05 48 8e 14 00 	cmp    0x148e48(%rip),%rax        # 0x180151f30
1800090e8:	0f 85 80 00 00 00    	jne    0x18000916e
1800090ee:	4c 8b 4f 20          	mov    0x20(%rdi),%r9
1800090f2:	48 8d 45 d0          	lea    -0x30(%rbp),%rax
1800090f6:	4c 8b 57 28          	mov    0x28(%rdi),%r10
1800090fa:	4c 8b 45 d0          	mov    -0x30(%rbp),%r8
1800090fe:	49 c1 e9 0c          	shr    $0xc,%r9
180009102:	49 c1 ea 0c          	shr    $0xc,%r10
180009106:	4c 3b c0             	cmp    %rax,%r8
180009109:	74 4c                	je     0x180009157
18000910b:	4f 8d 1c 0a          	lea    (%r10,%r9,1),%r11
18000910f:	49 8b 48 10          	mov    0x10(%r8),%rcx
180009113:	49 3b cb             	cmp    %r11,%rcx
180009116:	73 33                	jae    0x18000914b
180009118:	49 03 48 20          	add    0x20(%r8),%rcx
18000911c:	4c 3b c9             	cmp    %rcx,%r9
18000911f:	73 2a                	jae    0x18000914b
180009121:	41 8b 40 2c          	mov    0x2c(%r8),%eax
180009125:	8b d0                	mov    %eax,%edx
180009127:	c1 ea 1c             	shr    $0x1c,%edx
18000912a:	8d 4a f3             	lea    -0xd(%rdx),%ecx
18000912d:	83 f9 01             	cmp    $0x1,%ecx
180009130:	76 48                	jbe    0x18000917a
180009132:	83 fa 0f             	cmp    $0xf,%edx
180009135:	75 14                	jne    0x18000914b
180009137:	25 ff ff ff 0f       	and    $0xfffffff,%eax
18000913c:	83 f8 0e             	cmp    $0xe,%eax
18000913f:	77 0a                	ja     0x18000914b
180009141:	b9 72 40 00 00       	mov    $0x4072,%ecx
180009146:	0f a3 c1             	bt     %eax,%ecx
180009149:	72 2f                	jb     0x18000917a
18000914b:	4d 8b 00             	mov    (%r8),%r8
18000914e:	48 8d 45 d0          	lea    -0x30(%rbp),%rax
180009152:	4c 3b c0             	cmp    %rax,%r8
180009155:	75 b8                	jne    0x18000910f
180009157:	41 b8 07 00 00 f0    	mov    $0xf0000007,%r8d
18000915d:	49 8b d2             	mov    %r10,%rdx
180009160:	49 8b c9             	mov    %r9,%rcx
180009163:	e8 54 f2 08 00       	call   0x1800983bc
180009168:	8b d8                	mov    %eax,%ebx
18000916a:	85 c0                	test   %eax,%eax
18000916c:	78 1d                	js     0x18000918b
18000916e:	0f b7 47 02          	movzwl 0x2(%rdi),%eax
180009172:	48 03 f8             	add    %rax,%rdi
180009175:	e9 1b ff ff ff       	jmp    0x180009095
18000917a:	bb 09 07 00 c0       	mov    $0xc0000709,%ebx
18000917f:	eb 0a                	jmp    0x18000918b
180009181:	bb 0f 00 14 c0       	mov    $0xc014000f,%ebx
180009186:	eb 03                	jmp    0x18000918b
180009188:	41 8b de             	mov    %r14d,%ebx
18000918b:	48 85 f6             	test   %rsi,%rsi
18000918e:	74 08                	je     0x180009198
180009190:	48 8b ce             	mov    %rsi,%rcx
180009193:	e8 b8 a0 08 00       	call   0x180093250
180009198:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
18000919c:	e8 ab ef 08 00       	call   0x18009814c
1800091a1:	81 fb 0f 00 14 c0    	cmp    $0xc014000f,%ebx
1800091a7:	75 0f                	jne    0x1800091b8
1800091a9:	48 8d 15 d8 c1 13 00 	lea    0x13c1d8(%rip),%rdx        # 0x180145388
1800091b0:	e8 37 bd ff ff       	call   0x180004eec
1800091b5:	41 8b de             	mov    %r14d,%ebx
1800091b8:	4c 8d 5c 24 50       	lea    0x50(%rsp),%r11
1800091bd:	8b c3                	mov    %ebx,%eax
1800091bf:	49 8b 5b 28          	mov    0x28(%r11),%rbx
1800091c3:	49 8b 73 30          	mov    0x30(%r11),%rsi
1800091c7:	49 8b e3             	mov    %r11,%rsp
1800091ca:	41 5e                	pop    %r14
1800091cc:	5f                   	pop    %rdi
1800091cd:	5d                   	pop    %rbp
1800091ce:	c3                   	ret
1800091cf:	cc                   	int3
1800091d0:	48 83 ec 28          	sub    $0x28,%rsp
1800091d4:	80 3d 55 c0 19 00 00 	cmpb   $0x0,0x19c055(%rip)        # 0x1801a5230
1800091db:	75 0c                	jne    0x1800091e9
1800091dd:	e8 2a c8 00 00       	call   0x180015a0c
1800091e2:	c6 05 47 c0 19 00 01 	movb   $0x1,0x19c047(%rip)        # 0x1801a5230
1800091e9:	48 83 c4 28          	add    $0x28,%rsp
1800091ed:	c3                   	ret
1800091ee:	cc                   	int3
1800091ef:	cc                   	int3
1800091f0:	89 4c 24 08          	mov    %ecx,0x8(%rsp)
1800091f4:	55                   	push   %rbp
1800091f5:	53                   	push   %rbx
1800091f6:	56                   	push   %rsi
1800091f7:	57                   	push   %rdi
1800091f8:	48 8b ec             	mov    %rsp,%rbp
1800091fb:	48 83 ec 48          	sub    $0x48,%rsp
1800091ff:	8b 3d cf 32 16 00    	mov    0x1632cf(%rip),%edi        # 0x18016c4d4
180009205:	8b cf                	mov    %edi,%ecx
180009207:	e8 e4 ab ff ff       	call   0x180003df0
18000920c:	bb 01 00 00 c0       	mov    $0xc0000001,%ebx
180009211:	48 85 c0             	test   %rax,%rax
180009214:	75 04                	jne    0x18000921a
180009216:	8b cb                	mov    %ebx,%ecx
180009218:	eb 62                	jmp    0x18000927c
18000921a:	4c 8d 4d 40          	lea    0x40(%rbp),%r9
18000921e:	48 8b d0             	mov    %rax,%rdx
180009221:	4c 8d 05 58 b9 13 00 	lea    0x13b958(%rip),%r8        # 0x180144b80
180009228:	8b cf                	mov    %edi,%ecx
18000922a:	e8 35 a7 ff ff       	call   0x180003964
18000922f:	8b c8                	mov    %eax,%ecx
180009231:	85 c0                	test   %eax,%eax
180009233:	78 47                	js     0x18000927c
180009235:	48 8b 55 40          	mov    0x40(%rbp),%rdx
180009239:	48 8d 45 38          	lea    0x38(%rbp),%rax
18000923d:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
180009242:	4c 8d 4d 30          	lea    0x30(%rbp),%r9
180009246:	48 8d 45 28          	lea    0x28(%rbp),%rax
18000924a:	c7 45 28 04 00 00 00 	movl   $0x4,0x28(%rbp)
180009251:	4c 8d 05 a0 bd 13 00 	lea    0x13bda0(%rip),%r8        # 0x180144ff8
180009258:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
18000925d:	8b cf                	mov    %edi,%ecx
18000925f:	e8 90 aa ff ff       	call   0x180003cf4
180009264:	8b c8                	mov    %eax,%ecx
180009266:	85 c0                	test   %eax,%eax
180009268:	78 12                	js     0x18000927c
18000926a:	83 7d 30 04          	cmpl   $0x4,0x30(%rbp)
18000926e:	75 a6                	jne    0x180009216
180009270:	33 c0                	xor    %eax,%eax
180009272:	39 45 38             	cmp    %eax,0x38(%rbp)
180009275:	0f 95 c0             	setne  %al
180009278:	48 89 45 30          	mov    %rax,0x30(%rbp)
18000927c:	33 f6                	xor    %esi,%esi
18000927e:	4c 8d 45 40          	lea    0x40(%rbp),%r8
180009282:	85 c9                	test   %ecx,%ecx
180009284:	48 8d 15 25 bd 13 00 	lea    0x13bd25(%rip),%rdx        # 0x180144fb0
18000928b:	8b cf                	mov    %edi,%ecx
18000928d:	48 0f 49 75 30       	cmovns 0x30(%rbp),%rsi
180009292:	e8 45 b6 ff ff       	call   0x1800048dc
180009297:	85 c0                	test   %eax,%eax
180009299:	78 44                	js     0x1800092df
18000929b:	48 8b 55 40          	mov    0x40(%rbp),%rdx
18000929f:	48 8d 45 38          	lea    0x38(%rbp),%rax
1800092a3:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
1800092a8:	4c 8d 4d 30          	lea    0x30(%rbp),%r9
1800092ac:	48 8d 45 28          	lea    0x28(%rbp),%rax
1800092b0:	c7 45 28 04 00 00 00 	movl   $0x4,0x28(%rbp)
1800092b7:	4c 8d 05 0a bd 13 00 	lea    0x13bd0a(%rip),%r8        # 0x180144fc8
1800092be:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1800092c3:	8b cf                	mov    %edi,%ecx
1800092c5:	e8 2a aa ff ff       	call   0x180003cf4
1800092ca:	85 c0                	test   %eax,%eax
1800092cc:	78 11                	js     0x1800092df
1800092ce:	83 7d 30 04          	cmpl   $0x4,0x30(%rbp)
1800092d2:	75 15                	jne    0x1800092e9
1800092d4:	33 ff                	xor    %edi,%edi
1800092d6:	39 7d 38             	cmp    %edi,0x38(%rbp)
1800092d9:	40 0f 95 c7          	setne  %dil
1800092dd:	eb 04                	jmp    0x1800092e3
1800092df:	48 8b 7d 30          	mov    0x30(%rbp),%rdi
1800092e3:	8b d8                	mov    %eax,%ebx
1800092e5:	85 c0                	test   %eax,%eax
1800092e7:	79 19                	jns    0x180009302
1800092e9:	48 83 fe 01          	cmp    $0x1,%rsi
1800092ed:	75 4f                	jne    0x18000933e
1800092ef:	48 8b 0d e2 b6 19 00 	mov    0x19b6e2(%rip),%rcx        # 0x1801a49d8
1800092f6:	ba f0 00 00 25       	mov    $0x250000f0,%edx
1800092fb:	e8 34 3b 07 00       	call   0x18007ce34
180009300:	eb 3c                	jmp    0x18000933e
180009302:	48 85 ff             	test   %rdi,%rdi
180009305:	75 06                	jne    0x18000930d
180009307:	48 83 fe 01          	cmp    $0x1,%rsi
18000930b:	74 e2                	je     0x1800092ef
18000930d:	48 8b 0d c4 b6 19 00 	mov    0x19b6c4(%rip),%rcx        # 0x1801a49d8
180009314:	4c 8d 45 e8          	lea    -0x18(%rbp),%r8
180009318:	ba f0 00 00 25       	mov    $0x250000f0,%edx
18000931d:	e8 9e 31 07 00       	call   0x18007c4c0
180009322:	8b d8                	mov    %eax,%ebx
180009324:	85 c0                	test   %eax,%eax
180009326:	79 16                	jns    0x18000933e
180009328:	4c 8b c7             	mov    %rdi,%r8
18000932b:	48 8d 0d 8e b6 19 00 	lea    0x19b68e(%rip),%rcx        # 0x1801a49c0
180009332:	ba f0 00 00 25       	mov    $0x250000f0,%edx
180009337:	e8 14 39 07 00       	call   0x18007cc50
18000933c:	8b d8                	mov    %eax,%ebx
18000933e:	8b c3                	mov    %ebx,%eax
180009340:	48 83 c4 48          	add    $0x48,%rsp
180009344:	5f                   	pop    %rdi
180009345:	5e                   	pop    %rsi
180009346:	5b                   	pop    %rbx
180009347:	5d                   	pop    %rbp
180009348:	c3                   	ret
180009349:	cc                   	int3
18000934a:	cc                   	int3
18000934b:	cc                   	int3
18000934c:	89 54 24 10          	mov    %edx,0x10(%rsp)
180009350:	55                   	push   %rbp
180009351:	53                   	push   %rbx
180009352:	56                   	push   %rsi
180009353:	57                   	push   %rdi
180009354:	41 56                	push   %r14
180009356:	48 8b ec             	mov    %rsp,%rbp
180009359:	48 83 ec 50          	sub    $0x50,%rsp
18000935d:	8b 3d 71 31 16 00    	mov    0x163171(%rip),%edi        # 0x18016c4d4
180009363:	4c 8d 45 f0          	lea    -0x10(%rbp),%r8
180009367:	48 83 65 e0 00       	andq   $0x0,-0x20(%rbp)
18000936c:	4c 8b f1             	mov    %rcx,%r14
18000936f:	48 8b 0d 62 b6 19 00 	mov    0x19b662(%rip),%rcx        # 0x1801a49d8
180009376:	bb 13 01 00 25       	mov    $0x25000113,%ebx
18000937b:	8b d3                	mov    %ebx,%edx
18000937d:	40 32 f6             	xor    %sil,%sil
180009380:	e8 3b 31 07 00       	call   0x18007c4c0
180009385:	85 c0                	test   %eax,%eax
180009387:	0f 89 82 00 00 00    	jns    0x18000940f
18000938d:	4c 8d 45 40          	lea    0x40(%rbp),%r8
180009391:	8b cf                	mov    %edi,%ecx
180009393:	48 8d 15 16 bc 13 00 	lea    0x13bc16(%rip),%rdx        # 0x180144fb0
18000939a:	e8 3d b5 ff ff       	call   0x1800048dc
18000939f:	85 c0                	test   %eax,%eax
1800093a1:	78 6c                	js     0x18000940f
1800093a3:	48 8b 55 40          	mov    0x40(%rbp),%rdx
1800093a7:	4c 8d 4d e8          	lea    -0x18(%rbp),%r9
1800093ab:	4c 8d 05 7e bc 13 00 	lea    0x13bc7e(%rip),%r8        # 0x180145030
1800093b2:	8b cf                	mov    %edi,%ecx
1800093b4:	e8 ab a5 ff ff       	call   0x180003964
1800093b9:	85 c0                	test   %eax,%eax
1800093bb:	78 52                	js     0x18000940f
1800093bd:	48 8b 55 e8          	mov    -0x18(%rbp),%rdx
1800093c1:	48 8d 45 48          	lea    0x48(%rbp),%rax
1800093c5:	48 89 44 24 28       	mov    %rax,0x28(%rsp)