140021001:	53                   	push   %rbx
140021002:	48 83 ec 28          	sub    $0x28,%rsp
140021006:	8b 51 40             	mov    0x40(%rcx),%edx
140021009:	80 61 44 fd          	andb   $0xfd,0x44(%rcx)
14002100d:	48 89 ce             	mov    %rcx,%rsi
140021010:	85 d2                	test   %edx,%edx
140021012:	74 25                	je     0x140021039
140021014:	31 db                	xor    %ebx,%ebx
140021016:	66 2e 0f 1f 84 00 00 	cs nopw 0x0(%rax,%rax,1)
14002101d:	00 00 00
140021020:	48 8b 46 08          	mov    0x8(%rsi),%rax
140021024:	48 8b 0c d8          	mov    (%rax,%rbx,8),%rcx
140021028:	48 83 c3 01          	add    $0x1,%rbx
14002102c:	e8 7f 7e 0d 00       	call   0x1400f8eb0
140021031:	8b 46 40             	mov    0x40(%rsi),%eax
140021034:	48 39 c3             	cmp    %rax,%rbx
140021037:	72 e7                	jb     0x140021020
140021039:	8b 46 38             	mov    0x38(%rsi),%eax
14002103c:	c7 46 40 00 00 00 00 	movl   $0x0,0x40(%rsi)
140021043:	85 c0                	test   %eax,%eax
140021045:	74 17                	je     0x14002105e
140021047:	31 db                	xor    %ebx,%ebx
140021049:	48 8b 06             	mov    (%rsi),%rax
14002104c:	48 8b 0c d8          	mov    (%rax,%rbx,8),%rcx
140021050:	48 83 c3 01          	add    $0x1,%rbx
140021054:	e8 a7 ff ff ff       	call   0x140021000
140021059:	3b 5e 38             	cmp    0x38(%rsi),%ebx
14002105c:	72 eb                	jb     0x140021049
14002105e:	48 83 c4 28          	add    $0x28,%rsp
140021062:	5b                   	pop    %rbx
140021063:	5e                   	pop    %rsi
140021064:	c3                   	ret
140021065:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
14002106c:	00 00 00 00
140021070:	56                   	push   %rsi
140021071:	53                   	push   %rbx
140021072:	48 83 ec 28          	sub    $0x28,%rsp
140021076:	48 89 ce             	mov    %rcx,%rsi
140021079:	48 85 c9             	test   %rcx,%rcx
14002107c:	74 6a                	je     0x1400210e8
14002107e:	8b 51 38             	mov    0x38(%rcx),%edx
140021081:	85 d2                	test   %edx,%edx
140021083:	74 17                	je     0x14002109c
140021085:	31 db                	xor    %ebx,%ebx
140021087:	48 8b 06             	mov    (%rsi),%rax
14002108a:	48 8b 0c d8          	mov    (%rax,%rbx,8),%rcx
14002108e:	48 83 c3 01          	add    $0x1,%rbx
140021092:	e8 d9 ff ff ff       	call   0x140021070
140021097:	3b 5e 38             	cmp    0x38(%rsi),%ebx
14002109a:	72 eb                	jb     0x140021087
14002109c:	8b 46 40             	mov    0x40(%rsi),%eax
14002109f:	85 c0                	test   %eax,%eax
1400210a1:	74 23                	je     0x1400210c6
1400210a3:	31 db                	xor    %ebx,%ebx
1400210a5:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
1400210ac:	00 00 00 00
1400210b0:	48 8b 46 08          	mov    0x8(%rsi),%rax
1400210b4:	48 8b 0c d8          	mov    (%rax,%rbx,8),%rcx
1400210b8:	48 83 c3 01          	add    $0x1,%rbx
1400210bc:	e8 ef 7d 0d 00       	call   0x1400f8eb0
1400210c1:	3b 5e 40             	cmp    0x40(%rsi),%ebx
1400210c4:	72 ea                	jb     0x1400210b0
1400210c6:	48 8b 4e 08          	mov    0x8(%rsi),%rcx
1400210ca:	e8 e1 7d 0d 00       	call   0x1400f8eb0
1400210cf:	48 8b 0e             	mov    (%rsi),%rcx
1400210d2:	e8 d9 7d 0d 00       	call   0x1400f8eb0
1400210d7:	48 89 f1             	mov    %rsi,%rcx
1400210da:	48 83 c4 28          	add    $0x28,%rsp
1400210de:	5b                   	pop    %rbx
1400210df:	5e                   	pop    %rsi
1400210e0:	e9 cb 7d 0d 00       	jmp    0x1400f8eb0
1400210e5:	0f 1f 00             	nopl   (%rax)
1400210e8:	48 83 c4 28          	add    $0x28,%rsp
1400210ec:	5b                   	pop    %rbx
1400210ed:	5e                   	pop    %rsi
1400210ee:	c3                   	ret
1400210ef:	90                   	nop
1400210f0:	48 83 ec 28          	sub    $0x28,%rsp
1400210f4:	e8 07 99 0a 00       	call   0x1400caa00
1400210f9:	45 31 c0             	xor    %r8d,%r8d
1400210fc:	0f b6 10             	movzbl (%rax),%edx
1400210ff:	49 89 c1             	mov    %rax,%r9
140021102:	48 89 c1             	mov    %rax,%rcx
140021105:	84 d2                	test   %dl,%dl
140021107:	74 6e                	je     0x140021177
140021109:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
140021110:	00 00 00 00
140021114:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
14002111b:	00 00 00 00
14002111f:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
140021126:	00 00 00 00
14002112a:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
140021131:	00 00 00 00
140021135:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
14002113c:	00 00 00 00
140021140:	80 fa 5c             	cmp    $0x5c,%dl
140021143:	0f 94 c2             	sete   %dl
140021146:	48 83 c1 01          	add    $0x1,%rcx
14002114a:	49 83 c0 01          	add    $0x1,%r8
14002114e:	0f b6 d2             	movzbl %dl,%edx
140021151:	4c 01 ca             	add    %r9,%rdx
140021154:	44 0f b6 12          	movzbl (%rdx),%r10d
140021158:	4c 8d 4a 01          	lea    0x1(%rdx),%r9
14002115c:	44 88 51 ff          	mov    %r10b,-0x1(%rcx)
140021160:	0f b6 52 01          	movzbl 0x1(%rdx),%edx
140021164:	84 d2                	test   %dl,%dl
140021166:	75 d8                	jne    0x140021140
140021168:	c6 01 00             	movb   $0x0,(%rcx)
14002116b:	49 83 f8 02          	cmp    $0x2,%r8
14002116f:	76 06                	jbe    0x140021177
140021171:	41 80 fa 2a          	cmp    $0x2a,%r10b
140021175:	74 09                	je     0x140021180
140021177:	48 83 c4 28          	add    $0x28,%rsp
14002117b:	c3                   	ret
14002117c:	0f 1f 40 00          	nopl   0x0(%rax)
140021180:	80 79 fe 2f          	cmpb   $0x2f,-0x2(%rcx)
140021184:	75 f1                	jne    0x140021177
140021186:	c6 41 fe 00          	movb   $0x0,-0x2(%rcx)
14002118a:	eb eb                	jmp    0x140021177
14002118c:	0f 1f 40 00          	nopl   0x0(%rax)
140021190:	56                   	push   %rsi
140021191:	53                   	push   %rbx
140021192:	48 83 ec 28          	sub    $0x28,%rsp
140021196:	48 89 cb             	mov    %rcx,%rbx
140021199:	48 89 d6             	mov    %rdx,%rsi
14002119c:	48 85 c9             	test   %rcx,%rcx
14002119f:	74 26                	je     0x1400211c7
1400211a1:	8b 51 40             	mov    0x40(%rcx),%edx
1400211a4:	8b 41 34             	mov    0x34(%rcx),%eax
1400211a7:	48 8b 49 08          	mov    0x8(%rcx),%rcx
1400211ab:	44 8d 42 01          	lea    0x1(%rdx),%r8d
1400211af:	44 39 c0             	cmp    %r8d,%eax
1400211b2:	72 1c                	jb     0x1400211d0
1400211b4:	44 89 43 40          	mov    %r8d,0x40(%rbx)
1400211b8:	48 8d 1c d1          	lea    (%rcx,%rdx,8),%rbx
1400211bc:	48 89 f1             	mov    %rsi,%rcx
1400211bf:	e8 3c 98 0a 00       	call   0x1400caa00
1400211c4:	48 89 03             	mov    %rax,(%rbx)
1400211c7:	48 83 c4 28          	add    $0x28,%rsp
1400211cb:	5b                   	pop    %rbx
1400211cc:	5e                   	pop    %rsi
1400211cd:	c3                   	ret
1400211ce:	66 90                	xchg   %ax,%ax
1400211d0:	8d 54 40 30          	lea    0x30(%rax,%rax,2),%edx
1400211d4:	d1 ea                	shr    $1,%edx
1400211d6:	44 39 c2             	cmp    %r8d,%edx
1400211d9:	49 0f 42 d0          	cmovb  %r8,%rdx
1400211dd:	89 53 34             	mov    %edx,0x34(%rbx)
1400211e0:	48 c1 e2 03          	shl    $0x3,%rdx
1400211e4:	e8 57 9a 0a 00       	call   0x1400cac40
1400211e9:	8b 53 40             	mov    0x40(%rbx),%edx
1400211ec:	48 89 43 08          	mov    %rax,0x8(%rbx)
1400211f0:	48 89 c1             	mov    %rax,%rcx
1400211f3:	44 8d 42 01          	lea    0x1(%rdx),%r8d
1400211f7:	eb bb                	jmp    0x1400211b4
1400211f9:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140021200:	57                   	push   %rdi
140021201:	56                   	push   %rsi
140021202:	53                   	push   %rbx
140021203:	48 83 ec 40          	sub    $0x40,%rsp
140021207:	48 8b 3d e2 78 21 00 	mov    0x2178e2(%rip),%rdi        # 0x140238af0
14002120e:	48 8b 1f             	mov    (%rdi),%rbx
140021211:	48 89 5c 24 38       	mov    %rbx,0x38(%rsp)
140021216:	48 8d 5c 24 20       	lea    0x20(%rsp),%rbx
14002121b:	48 89 ce             	mov    %rcx,%rsi
14002121e:	48 89 da             	mov    %rbx,%rdx
140021221:	e8 2a de 00 00       	call   0x14002f050
140021226:	48 89 d9             	mov    %rbx,%rcx
140021229:	e8 42 de 00 00       	call   0x14002f070
14002122e:	48 85 c0             	test   %rax,%rax
140021231:	74 23                	je     0x140021256
140021233:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
14002123a:	00 00 00 00
14002123e:	66 90                	xchg   %ax,%ax
140021240:	48 8b 48 10          	mov    0x10(%rax),%rcx
140021244:	e8 67 7c 0d 00       	call   0x1400f8eb0
140021249:	48 89 d9             	mov    %rbx,%rcx
14002124c:	e8 1f de 00 00       	call   0x14002f070
140021251:	48 85 c0             	test   %rax,%rax
140021254:	75 ea                	jne    0x140021240
140021256:	31 d2                	xor    %edx,%edx
140021258:	48 89 f1             	mov    %rsi,%rcx
14002125b:	e8 a0 da 00 00       	call   0x14002ed00
140021260:	48 8b 44 24 38       	mov    0x38(%rsp),%rax
140021265:	48 2b 07             	sub    (%rdi),%rax
140021268:	75 08                	jne    0x140021272
14002126a:	48 83 c4 40          	add    $0x40,%rsp
14002126e:	5b                   	pop    %rbx
14002126f:	5e                   	pop    %rsi
140021270:	5f                   	pop    %rdi
140021271:	c3                   	ret
140021272:	e8 f9 35 1c 00       	call   0x1401e4870
140021277:	90                   	nop
140021278:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
14002127f:	00
140021280:	41 54                	push   %r12
140021282:	55                   	push   %rbp
140021283:	57                   	push   %rdi
140021284:	56                   	push   %rsi
140021285:	53                   	push   %rbx
140021286:	48 83 ec 20          	sub    $0x20,%rsp
14002128a:	48 8b 2d 6f 81 21 00 	mov    0x21816f(%rip),%rbp        # 0x140239400
140021291:	48 8b 7d 00          	mov    0x0(%rbp),%rdi
140021295:	48 8b b7 90 01 00 00 	mov    0x190(%rdi),%rsi
14002129c:	48 89 d3             	mov    %rdx,%rbx
14002129f:	4c 8b 46 10          	mov    0x10(%rsi),%r8
1400212a3:	48 8b 52 28          	mov    0x28(%rdx),%rdx
1400212a7:	48 8b 43 30          	mov    0x30(%rbx),%rax
1400212ab:	4e 8d 0c 02          	lea    (%rdx,%r8,1),%r9
1400212af:	4c 39 c8             	cmp    %r9,%rax
1400212b2:	73 1c                	jae    0x1400212d0
1400212b4:	48 83 c0 01          	add    $0x1,%rax
1400212b8:	48 89 43 28          	mov    %rax,0x28(%rbx)
1400212bc:	48 83 c4 20          	add    $0x20,%rsp
1400212c0:	5b                   	pop    %rbx
1400212c1:	5e                   	pop    %rsi
1400212c2:	5f                   	pop    %rdi
1400212c3:	5d                   	pop    %rbp
1400212c4:	41 5c                	pop    %r12
1400212c6:	c3                   	ret
1400212c7:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
1400212ce:	00 00
1400212d0:	48 8b 43 08          	mov    0x8(%rbx),%rax
1400212d4:	4c 8b 24 c8          	mov    (%rax,%rcx,8),%r12
1400212d8:	49 8d 4c 24 48       	lea    0x48(%r12),%rcx
1400212dd:	e8 0e 8b 1c 00       	call   0x1401e9df0
1400212e2:	48 8b 56 10          	mov    0x10(%rsi),%rdx
1400212e6:	48 89 c1             	mov    %rax,%rcx
1400212e9:	48 83 fa 1f          	cmp    $0x1f,%rdx
1400212ed:	76 41                	jbe    0x140021330
1400212ef:	48 2b 35 aa 7d 21 00 	sub    0x217daa(%rip),%rsi        # 0x1402390a0
1400212f6:	48 b8 39 8e e3 38 8e 	movabs $0x8e38e38e38e38e39,%rax
1400212fd:	e3 38 8e
140021300:	48 c1 fe 04          	sar    $0x4,%rsi
140021304:	48 0f af f0          	imul   %rax,%rsi
140021308:	48 8b 87 90 01 00 00 	mov    0x190(%rdi),%rax
14002130f:	48 8b 40 10          	mov    0x10(%rax),%rax
140021313:	48 03 43 28          	add    0x28(%rbx),%rax
140021317:	41 89 74 24 68       	mov    %esi,0x68(%r12)
14002131c:	48 89 43 28          	mov    %rax,0x28(%rbx)
140021320:	48 83 c4 20          	add    $0x20,%rsp
140021324:	5b                   	pop    %rbx
140021325:	5e                   	pop    %rsi
140021326:	5f                   	pop    %rdi
140021327:	5d                   	pop    %rbp
140021328:	41 5c                	pop    %r12
14002132a:	c3                   	ret
14002132b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140021330:	b8 20 00 00 00       	mov    $0x20,%eax
140021335:	48 01 d1             	add    %rdx,%rcx
140021338:	45 31 c0             	xor    %r8d,%r8d
14002133b:	48 29 d0             	sub    %rdx,%rax
14002133e:	83 f8 08             	cmp    $0x8,%eax
140021341:	73 2d                	jae    0x140021370
140021343:	a8 04                	test   $0x4,%al
140021345:	75 65                	jne    0x1400213ac
140021347:	85 c0                	test   %eax,%eax
140021349:	74 15                	je     0x140021360
14002134b:	c6 01 00             	movb   $0x0,(%rcx)
14002134e:	a8 02                	test   $0x2,%al
140021350:	74 0e                	je     0x140021360
140021352:	89 c0                	mov    %eax,%eax
140021354:	31 d2                	xor    %edx,%edx
140021356:	66 89 54 01 fe       	mov    %dx,-0x2(%rcx,%rax,1)
14002135b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140021360:	48 8b 7d 00          	mov    0x0(%rbp),%rdi
140021364:	eb 89                	jmp    0x1400212ef
140021366:	66 2e 0f 1f 84 00 00 	cs nopw 0x0(%rax,%rax,1)
14002136d:	00 00 00
140021370:	89 c2                	mov    %eax,%edx
140021372:	48 c7 01 00 00 00 00 	movq   $0x0,(%rcx)
140021379:	48 c7 44 11 f8 00 00 	movq   $0x0,-0x8(%rcx,%rdx,1)
140021380:	00 00
140021382:	48 8d 51 08          	lea    0x8(%rcx),%rdx
140021386:	48 83 e2 f8          	and    $0xfffffffffffffff8,%rdx
14002138a:	48 29 d1             	sub    %rdx,%rcx
14002138d:	01 c8                	add    %ecx,%eax
14002138f:	83 e0 f8             	and    $0xfffffff8,%eax
140021392:	83 f8 08             	cmp    $0x8,%eax
140021395:	72 c9                	jb     0x140021360
140021397:	83 e0 f8             	and    $0xfffffff8,%eax
14002139a:	31 c9                	xor    %ecx,%ecx
14002139c:	41 89 c9             	mov    %ecx,%r9d
14002139f:	83 c1 08             	add    $0x8,%ecx
1400213a2:	4e 89 04 0a          	mov    %r8,(%rdx,%r9,1)
1400213a6:	39 c1                	cmp    %eax,%ecx
1400213a8:	72 f2                	jb     0x14002139c
1400213aa:	eb b4                	jmp    0x140021360
1400213ac:	89 c0                	mov    %eax,%eax
1400213ae:	c7 01 00 00 00 00    	movl   $0x0,(%rcx)
1400213b4:	c7 44 01 fc 00 00 00 	movl   $0x0,-0x4(%rcx,%rax,1)
1400213bb:	00
1400213bc:	eb a2                	jmp    0x140021360
1400213be:	66 90                	xchg   %ax,%ax
1400213c0:	41 55                	push   %r13
1400213c2:	41 54                	push   %r12
1400213c4:	55                   	push   %rbp
1400213c5:	57                   	push   %rdi
1400213c6:	56                   	push   %rsi
1400213c7:	53                   	push   %rbx
1400213c8:	48 83 ec 68          	sub    $0x68,%rsp
1400213cc:	48 8b 2d 1d 77 21 00 	mov    0x21771d(%rip),%rbp        # 0x140238af0
1400213d3:	44 8b a4 24 c0 00 00 	mov    0xc0(%rsp),%r12d
1400213da:	00
1400213db:	48 8b 45 00          	mov    0x0(%rbp),%rax
1400213df:	48 89 44 24 58       	mov    %rax,0x58(%rsp)
1400213e4:	31 c0                	xor    %eax,%eax
1400213e6:	4c 89 c7             	mov    %r8,%rdi
1400213e9:	48 8b 05 b0 7f 21 00 	mov    0x217fb0(%rip),%rax        # 0x1402393a0
1400213f0:	4c 63 c2             	movslq %edx,%r8
1400213f3:	42 80 3c 01 00       	cmpb   $0x0,(%rcx,%r8,1)
1400213f8:	48 89 ce             	mov    %rcx,%rsi
1400213fb:	4c 8d 6c 24 20       	lea    0x20(%rsp),%r13
140021400:	44 89 cb             	mov    %r9d,%ebx
140021403:	48 c7 44 24 20 00 00 	movq   $0x0,0x20(%rsp)
14002140a:	00 00
14002140c:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
140021413:	00 00
140021415:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
14002141a:	48 c7 44 24 40 00 00 	movq   $0x0,0x40(%rsp)
140021421:	00 00
140021423:	48 c7 44 24 48 00 00 	movq   $0x0,0x48(%rsp)
14002142a:	00 00
14002142c:	48 89 44 24 50       	mov    %rax,0x50(%rsp)
140021431:	75 5d                	jne    0x140021490
140021433:	4c 63 c3             	movslq %ebx,%r8
140021436:	48 8d 5c 24 40       	lea    0x40(%rsp),%rbx
14002143b:	42 80 3c 07 00       	cmpb   $0x0,(%rdi,%r8,1)
140021440:	75 6d                	jne    0x1400214af
140021442:	48 8b 05 b7 7c 21 00 	mov    0x217cb7(%rip),%rax        # 0x140239100
140021449:	8b 00                	mov    (%rax),%eax
14002144b:	85 c0                	test   %eax,%eax
14002144d:	74 04                	je     0x140021453
14002144f:	41 83 cc 01          	or     $0x1,%r12d
140021453:	48 89 f1             	mov    %rsi,%rcx
140021456:	45 89 e0             	mov    %r12d,%r8d
140021459:	48 89 fa             	mov    %rdi,%rdx
14002145c:	e8 5f 60 0a 00       	call   0x1400c74c0
140021461:	4c 89 e9             	mov    %r13,%rcx
140021464:	89 c6                	mov    %eax,%esi
140021466:	e8 d5 94 07 00       	call   0x14009a940
14002146b:	48 89 d9             	mov    %rbx,%rcx
14002146e:	e8 cd 94 07 00       	call   0x14009a940
140021473:	48 8b 44 24 58       	mov    0x58(%rsp),%rax
140021478:	48 2b 45 00          	sub    0x0(%rbp),%rax
14002147c:	75 43                	jne    0x1400214c1
14002147e:	89 f0                	mov    %esi,%eax
140021480:	48 83 c4 68          	add    $0x68,%rsp
140021484:	5b                   	pop    %rbx
140021485:	5e                   	pop    %rsi