14003216a:	5e                   	pop    %rsi
14003216b:	5d                   	pop    %rbp
14003216c:	c3                   	ret
14003216d:	cc                   	int3
14003216e:	cc                   	int3
14003216f:	cc                   	int3
140032170:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140032175:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
14003217a:	57                   	push   %rdi
14003217b:	48 83 ec 20          	sub    $0x20,%rsp
14003217f:	48 8b f9             	mov    %rcx,%rdi
140032182:	48 8d 35 af d7 02 00 	lea    0x2d7af(%rip),%rsi        # 0x14005f938
140032189:	48 89 71 20          	mov    %rsi,0x20(%rcx)
14003218d:	8b da                	mov    %edx,%ebx
14003218f:	48 83 c1 28          	add    $0x28,%rcx
140032193:	ff 15 1f d2 02 00    	call   *0x2d21f(%rip)        # 0x14005f3b8
140032199:	48 8d 4f 08          	lea    0x8(%rdi),%rcx
14003219d:	48 89 37             	mov    %rsi,(%rdi)
1400321a0:	ff 15 12 d2 02 00    	call   *0x2d212(%rip)        # 0x14005f3b8
1400321a6:	f6 c3 01             	test   $0x1,%bl
1400321a9:	74 0d                	je     0x1400321b8
1400321ab:	ba 38 00 00 00       	mov    $0x38,%edx
1400321b0:	48 8b cf             	mov    %rdi,%rcx
1400321b3:	e8 dc 7a 02 00       	call   0x140059c94
1400321b8:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1400321bd:	48 8b c7             	mov    %rdi,%rax
1400321c0:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
1400321c5:	48 83 c4 20          	add    $0x20,%rsp
1400321c9:	5f                   	pop    %rdi
1400321ca:	c3                   	ret
1400321cb:	cc                   	int3
1400321cc:	cc                   	int3
1400321cd:	cc                   	int3
1400321ce:	cc                   	int3
1400321cf:	cc                   	int3
1400321d0:	4c 8b dc             	mov    %rsp,%r11
1400321d3:	49 89 5b 10          	mov    %rbx,0x10(%r11)
1400321d7:	49 89 6b 18          	mov    %rbp,0x18(%r11)
1400321db:	49 89 73 20          	mov    %rsi,0x20(%r11)
1400321df:	57                   	push   %rdi
1400321e0:	48 81 ec b0 00 00 00 	sub    $0xb0,%rsp
1400321e7:	48 8b 05 52 5e 04 00 	mov    0x45e52(%rip),%rax        # 0x140078040
1400321ee:	48 33 c4             	xor    %rsp,%rax
1400321f1:	48 89 84 24 a0 00 00 	mov    %rax,0xa0(%rsp)
1400321f8:	00
1400321f9:	48 8b fa             	mov    %rdx,%rdi
1400321fc:	48 8b d9             	mov    %rcx,%rbx
1400321ff:	49 89 4b b0          	mov    %rcx,-0x50(%r11)
140032203:	33 ed                	xor    %ebp,%ebp
140032205:	89 6c 24 20          	mov    %ebp,0x20(%rsp)
140032209:	4c 8b 42 08          	mov    0x8(%rdx),%r8
14003220d:	4d 8d 4b cd          	lea    -0x33(%r11),%r9
140032211:	48 be cd cc cc cc cc 	movabs $0xcccccccccccccccd,%rsi
140032218:	cc cc cc
14003221b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140032220:	49 ff c9             	dec    %r9
140032223:	48 8b c6             	mov    %rsi,%rax
140032226:	49 f7 e0             	mul    %r8
140032229:	48 c1 ea 03          	shr    $0x3,%rdx
14003222d:	0f b6 c2             	movzbl %dl,%eax
140032230:	c0 e0 02             	shl    $0x2,%al
140032233:	8d 0c 10             	lea    (%rax,%rdx,1),%ecx
140032236:	02 c9                	add    %cl,%cl
140032238:	44 2a c1             	sub    %cl,%r8b
14003223b:	41 80 c0 30          	add    $0x30,%r8b
14003223f:	45 88 01             	mov    %r8b,(%r9)
140032242:	4c 8b c2             	mov    %rdx,%r8
140032245:	48 85 d2             	test   %rdx,%rdx
140032248:	75 d6                	jne    0x140032220
14003224a:	4c 8d 84 24 85 00 00 	lea    0x85(%rsp),%r8
140032251:	00
140032252:	49 8b d1             	mov    %r9,%rdx
140032255:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
14003225a:	e8 21 97 00 00       	call   0x14003b980
14003225f:	90                   	nop
140032260:	48 8b 4f 10          	mov    0x10(%rdi),%rcx
140032264:	48 ff c1             	inc    %rcx
140032267:	4c 8d 8c 24 9d 00 00 	lea    0x9d(%rsp),%r9
14003226e:	00
14003226f:	90                   	nop
140032270:	49 ff c9             	dec    %r9
140032273:	48 8b c6             	mov    %rsi,%rax
140032276:	48 f7 e1             	mul    %rcx
140032279:	48 c1 ea 03          	shr    $0x3,%rdx
14003227d:	0f b6 c2             	movzbl %dl,%eax
140032280:	c0 e0 02             	shl    $0x2,%al
140032283:	44 8d 04 10          	lea    (%rax,%rdx,1),%r8d
140032287:	45 02 c0             	add    %r8b,%r8b
14003228a:	41 2a c8             	sub    %r8b,%cl
14003228d:	80 c1 30             	add    $0x30,%cl
140032290:	41 88 09             	mov    %cl,(%r9)
140032293:	48 8b ca             	mov    %rdx,%rcx
140032296:	48 85 d2             	test   %rdx,%rdx
140032299:	75 d5                	jne    0x140032270
14003229b:	4c 8d 84 24 9d 00 00 	lea    0x9d(%rsp),%r8
1400322a2:	00
1400322a3:	49 8b d1             	mov    %r9,%rdx
1400322a6:	48 8d 4c 24 28       	lea    0x28(%rsp),%rcx
1400322ab:	e8 d0 96 00 00       	call   0x14003b980
1400322b0:	90                   	nop
1400322b1:	0f 57 c0             	xorps  %xmm0,%xmm0
1400322b4:	0f 11 03             	movups %xmm0,(%rbx)
1400322b7:	48 89 6b 10          	mov    %rbp,0x10(%rbx)
1400322bb:	48 c7 43 18 0f 00 00 	movq   $0xf,0x18(%rbx)
1400322c2:	00
1400322c3:	c6 03 00             	movb   $0x0,(%rbx)
1400322c6:	c7 44 24 20 3e 00 00 	movl   $0x3e,0x20(%rsp)
1400322cd:	00
1400322ce:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
1400322d3:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
1400322d8:	48 8d 56 12          	lea    0x12(%rsi),%rdx
1400322dc:	48 03 d7             	add    %rdi,%rdx
1400322df:	48 83 fa 0f          	cmp    $0xf,%rdx
1400322e3:	76 0c                	jbe    0x1400322f1
1400322e5:	48 8b cb             	mov    %rbx,%rcx
1400322e8:	e8 93 1e ff ff       	call   0x140024180
1400322ed:	48 89 6b 10          	mov    %rbp,0x10(%rbx)
1400322f1:	41 b8 09 00 00 00    	mov    $0x9,%r8d
1400322f7:	48 8d 15 b2 14 03 00 	lea    0x314b2(%rip),%rdx        # 0x1400637b0
1400322fe:	48 8b cb             	mov    %rbx,%rcx
140032301:	e8 0a 6a fd ff       	call   0x140008d10
140032306:	48 8d 54 24 28       	lea    0x28(%rsp),%rdx
14003230b:	48 83 7c 24 40 0f    	cmpq   $0xf,0x40(%rsp)
140032311:	48 0f 47 54 24 28    	cmova  0x28(%rsp),%rdx
140032317:	4c 8b c6             	mov    %rsi,%r8
14003231a:	48 8b cb             	mov    %rbx,%rcx
14003231d:	e8 ee 69 fd ff       	call   0x140008d10
140032322:	41 b8 09 00 00 00    	mov    $0x9,%r8d
140032328:	48 8d 15 71 14 03 00 	lea    0x31471(%rip),%rdx        # 0x1400637a0
14003232f:	48 8b cb             	mov    %rbx,%rcx
140032332:	e8 d9 69 fd ff       	call   0x140008d10
140032337:	48 8d 54 24 48       	lea    0x48(%rsp),%rdx
14003233c:	48 83 7c 24 60 0f    	cmpq   $0xf,0x60(%rsp)
140032342:	48 0f 47 54 24 48    	cmova  0x48(%rsp),%rdx
140032348:	4c 8b c7             	mov    %rdi,%r8
14003234b:	48 8b cb             	mov    %rbx,%rcx
14003234e:	e8 bd 69 fd ff       	call   0x140008d10
140032353:	90                   	nop
140032354:	48 8b 54 24 40       	mov    0x40(%rsp),%rdx
140032359:	48 83 fa 0f          	cmp    $0xf,%rdx
14003235d:	76 36                	jbe    0x140032395
14003235f:	48 ff c2             	inc    %rdx
140032362:	48 8b 4c 24 28       	mov    0x28(%rsp),%rcx
140032367:	48 8b c1             	mov    %rcx,%rax
14003236a:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140032371:	72 1c                	jb     0x14003238f
140032373:	48 83 c2 27          	add    $0x27,%rdx
140032377:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
14003237b:	48 2b c1             	sub    %rcx,%rax
14003237e:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
140032382:	48 83 f8 1f          	cmp    $0x1f,%rax
140032386:	76 07                	jbe    0x14003238f
140032388:	ff 15 12 d2 02 00    	call   *0x2d212(%rip)        # 0x14005f5a0
14003238e:	cc                   	int3
14003238f:	e8 00 79 02 00       	call   0x140059c94
140032394:	90                   	nop
140032395:	48 8b 54 24 60       	mov    0x60(%rsp),%rdx
14003239a:	48 83 fa 0f          	cmp    $0xf,%rdx
14003239e:	76 35                	jbe    0x1400323d5
1400323a0:	48 ff c2             	inc    %rdx
1400323a3:	48 8b 4c 24 48       	mov    0x48(%rsp),%rcx
1400323a8:	48 8b c1             	mov    %rcx,%rax
1400323ab:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
1400323b2:	72 1c                	jb     0x1400323d0
1400323b4:	48 83 c2 27          	add    $0x27,%rdx
1400323b8:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
1400323bc:	48 2b c1             	sub    %rcx,%rax
1400323bf:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
1400323c3:	48 83 f8 1f          	cmp    $0x1f,%rax
1400323c7:	76 07                	jbe    0x1400323d0
1400323c9:	ff 15 d1 d1 02 00    	call   *0x2d1d1(%rip)        # 0x14005f5a0
1400323cf:	cc                   	int3
1400323d0:	e8 bf 78 02 00       	call   0x140059c94
1400323d5:	48 8b c3             	mov    %rbx,%rax
1400323d8:	48 8b 8c 24 a0 00 00 	mov    0xa0(%rsp),%rcx
1400323df:	00
1400323e0:	48 33 cc             	xor    %rsp,%rcx
1400323e3:	e8 18 74 02 00       	call   0x140059800
1400323e8:	4c 8d 9c 24 b0 00 00 	lea    0xb0(%rsp),%r11
1400323ef:	00
1400323f0:	49 8b 5b 18          	mov    0x18(%r11),%rbx
1400323f4:	49 8b 6b 20          	mov    0x20(%r11),%rbp
1400323f8:	49 8b 73 28          	mov    0x28(%r11),%rsi
1400323fc:	49 8b e3             	mov    %r11,%rsp
1400323ff:	5f                   	pop    %rdi
140032400:	c3                   	ret
140032401:	cc                   	int3
140032402:	cc                   	int3
140032403:	cc                   	int3
140032404:	cc                   	int3
140032405:	cc                   	int3
140032406:	cc                   	int3
140032407:	cc                   	int3
140032408:	cc                   	int3
140032409:	cc                   	int3
14003240a:	cc                   	int3
14003240b:	cc                   	int3
14003240c:	cc                   	int3
14003240d:	cc                   	int3
14003240e:	cc                   	int3
14003240f:	cc                   	int3
140032410:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140032415:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
14003241a:	57                   	push   %rdi
14003241b:	48 83 ec 20          	sub    $0x20,%rsp
14003241f:	48 8b f9             	mov    %rcx,%rdi
140032422:	48 8d 35 0f d5 02 00 	lea    0x2d50f(%rip),%rsi        # 0x14005f938
140032429:	48 89 71 20          	mov    %rsi,0x20(%rcx)
14003242d:	8b da                	mov    %edx,%ebx
14003242f:	48 83 c1 28          	add    $0x28,%rcx
140032433:	ff 15 7f cf 02 00    	call   *0x2cf7f(%rip)        # 0x14005f3b8
140032439:	48 8d 4f 08          	lea    0x8(%rdi),%rcx
14003243d:	48 89 37             	mov    %rsi,(%rdi)
140032440:	ff 15 72 cf 02 00    	call   *0x2cf72(%rip)        # 0x14005f3b8
140032446:	f6 c3 01             	test   $0x1,%bl
140032449:	74 0d                	je     0x140032458
14003244b:	ba 40 00 00 00       	mov    $0x40,%edx
140032450:	48 8b cf             	mov    %rdi,%rcx
140032453:	e8 3c 78 02 00       	call   0x140059c94
140032458:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14003245d:	48 8b c7             	mov    %rdi,%rax
140032460:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140032465:	48 83 c4 20          	add    $0x20,%rsp
140032469:	5f                   	pop    %rdi
14003246a:	c3                   	ret
14003246b:	cc                   	int3
14003246c:	cc                   	int3
14003246d:	cc                   	int3
14003246e:	cc                   	int3
14003246f:	cc                   	int3
140032470:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140032475:	57                   	push   %rdi
140032476:	48 83 ec 20          	sub    $0x20,%rsp
14003247a:	48 8b d9             	mov    %rcx,%rbx
14003247d:	48 8d 3d b4 d4 02 00 	lea    0x2d4b4(%rip),%rdi        # 0x14005f938
140032484:	48 89 79 20          	mov    %rdi,0x20(%rcx)
140032488:	48 83 c1 28          	add    $0x28,%rcx
14003248c:	ff 15 26 cf 02 00    	call   *0x2cf26(%rip)        # 0x14005f3b8
140032492:	48 8d 4b 08          	lea    0x8(%rbx),%rcx
140032496:	48 89 3b             	mov    %rdi,(%rbx)
140032499:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14003249e:	48 83 c4 20          	add    $0x20,%rsp
1400324a2:	5f                   	pop    %rdi
1400324a3:	48 ff 25 0e cf 02 00 	rex.W jmp *0x2cf0e(%rip)        # 0x14005f3b8
1400324aa:	cc                   	int3
1400324ab:	cc                   	int3
1400324ac:	cc                   	int3
1400324ad:	cc                   	int3
1400324ae:	cc                   	int3
1400324af:	cc                   	int3
1400324b0:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
1400324b5:	48 89 6c 24 20       	mov    %rbp,0x20(%rsp)
1400324ba:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
1400324bf:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
1400324c4:	56                   	push   %rsi
1400324c5:	57                   	push   %rdi
1400324c6:	41 54                	push   %r12
1400324c8:	41 55                	push   %r13
1400324ca:	41 56                	push   %r14
1400324cc:	41 57                	push   %r15
1400324ce:	4c 8b 54 24 60       	mov    0x60(%rsp),%r10
1400324d3:	4d 8b e8             	mov    %r8,%r13
1400324d6:	48 8b 44 24 58       	mov    0x58(%rsp),%rax
1400324db:	bf 01 00 00 00       	mov    $0x1,%edi
1400324e0:	44 8b f7             	mov    %edi,%r14d
1400324e3:	4c 8b fa             	mov    %rdx,%r15
1400324e6:	4d 8b 1a             	mov    (%r10),%r11
1400324e9:	45 8b 62 08          	mov    0x8(%r10),%r12d
1400324ed:	49 8b f3             	mov    %r11,%rsi
1400324f0:	49 2b 31             	sub    (%r9),%rsi
1400324f3:	41 f7 dc             	neg    %r12d
1400324f6:	41 8b cc             	mov    %r12d,%ecx
1400324f9:	4d 8b cb             	mov    %r11,%r9
1400324fc:	4c 2b 08             	sub    (%rax),%r9
1400324ff:	4d 8b c3             	mov    %r11,%r8
140032502:	49 d3 e6             	shl    %cl,%r14
140032505:	49 d3 e8             	shr    %cl,%r8
140032508:	4d 8d 56 ff          	lea    -0x1(%r14),%r10
14003250c:	4d 23 d3             	and    %r11,%r10
14003250f:	41 bb 00 ca 9a 3b    	mov    $0x3b9aca00,%r11d
140032515:	45 3b c3             	cmp    %r11d,%r8d
140032518:	72 0a                	jb     0x140032524
14003251a:	bf 0a 00 00 00       	mov    $0xa,%edi
14003251f:	e9 a1 00 00 00       	jmp    0x1400325c5
140032524:	41 bb 00 e1 f5 05    	mov    $0x5f5e100,%r11d
14003252a:	45 3b c3             	cmp    %r11d,%r8d
14003252d:	72 0a                	jb     0x140032539
14003252f:	bf 09 00 00 00       	mov    $0x9,%edi
140032534:	e9 8c 00 00 00       	jmp    0x1400325c5
140032539:	41 bb 80 96 98 00    	mov    $0x989680,%r11d
14003253f:	45 3b c3             	cmp    %r11d,%r8d
140032542:	72 0a                	jb     0x14003254e
140032544:	bf 08 00 00 00       	mov    $0x8,%edi
140032549:	e9 77 00 00 00       	jmp    0x1400325c5
14003254e:	41 bb 40 42 0f 00    	mov    $0xf4240,%r11d
140032554:	45 3b c3             	cmp    %r11d,%r8d
140032557:	72 07                	jb     0x140032560
140032559:	bf 07 00 00 00       	mov    $0x7,%edi
14003255e:	eb 65                	jmp    0x1400325c5
140032560:	41 bb a0 86 01 00    	mov    $0x186a0,%r11d
140032566:	45 3b c3             	cmp    %r11d,%r8d
140032569:	72 07                	jb     0x140032572
14003256b:	bf 06 00 00 00       	mov    $0x6,%edi
140032570:	eb 53                	jmp    0x1400325c5
140032572:	41 bb 10 27 00 00    	mov    $0x2710,%r11d
140032578:	45 3b c3             	cmp    %r11d,%r8d
14003257b:	72 07                	jb     0x140032584
14003257d:	bf 05 00 00 00       	mov    $0x5,%edi
140032582:	eb 41                	jmp    0x1400325c5
140032584:	41 bb e8 03 00 00    	mov    $0x3e8,%r11d
14003258a:	45 3b c3             	cmp    %r11d,%r8d
14003258d:	72 07                	jb     0x140032596
14003258f:	bf 04 00 00 00       	mov    $0x4,%edi
140032594:	eb 2f                	jmp    0x1400325c5
140032596:	41 83 f8 64          	cmp    $0x64,%r8d
14003259a:	72 0b                	jb     0x1400325a7
14003259c:	bf 03 00 00 00       	mov    $0x3,%edi
1400325a1:	44 8d 5f 61          	lea    0x61(%rdi),%r11d
1400325a5:	eb 1e                	jmp    0x1400325c5
1400325a7:	41 83 f8 0a          	cmp    $0xa,%r8d
1400325ab:	72 0b                	jb     0x1400325b8
1400325ad:	bf 02 00 00 00       	mov    $0x2,%edi
1400325b2:	44 8d 5f 08          	lea    0x8(%rdi),%r11d
1400325b6:	eb 0d                	jmp    0x1400325c5
1400325b8:	44 8b df             	mov    %edi,%r11d
1400325bb:	eb 08                	jmp    0x1400325c5
1400325bd:	0f 1f 00             	nopl   (%rax)
1400325c0:	4c 8b 7c 24 40       	mov    0x40(%rsp),%r15
1400325c5:	33 d2                	xor    %edx,%edx
1400325c7:	41 8b c0             	mov    %r8d,%eax
1400325ca:	4d 63 07             	movslq (%r15),%r8
1400325cd:	41 8b cc             	mov    %r12d,%ecx
1400325d0:	41 f7 f3             	div    %r11d
1400325d3:	4d 8b f8             	mov    %r8,%r15
1400325d6:	41 8d 68 01          	lea    0x1(%r8),%ebp
1400325da:	4c 03 7c 24 38       	add    0x38(%rsp),%r15
1400325df:	ff cf                	dec    %edi
1400325e1:	44 8b c2             	mov    %edx,%r8d
1400325e4:	48 d3 e2             	shl    %cl,%rdx
1400325e7:	8d 58 30             	lea    0x30(%rax),%ebx
1400325ea:	49 03 d2             	add    %r10,%rdx
1400325ed:	48 8b 44 24 40       	mov    0x40(%rsp),%rax
1400325f2:	41 88 1f             	mov    %bl,(%r15)
1400325f5:	89 28                	mov    %ebp,(%rax)
1400325f7:	48 3b d6             	cmp    %rsi,%rdx
1400325fa:	0f 86 a8 00 00 00    	jbe    0x1400326a8
140032600:	b8 cd cc cc cc       	mov    $0xcccccccd,%eax
140032605:	41 f7 e3             	mul    %r11d
140032608:	44 8b da             	mov    %edx,%r11d
14003260b:	41 c1 eb 03          	shr    $0x3,%r11d