1401633cf:	48 c7 07 00 00 00 00 	movq   $0x0,(%rdi)
1401633d6:	83 3e 00             	cmpl   $0x0,(%rsi)
1401633d9:	74 41                	je     0x14016341c
1401633db:	48 8b cf             	mov    %rdi,%rcx
1401633de:	e8 ad ad 02 00       	call   0x14018e190
1401633e3:	85 c0                	test   %eax,%eax
1401633e5:	74 2f                	je     0x140163416
1401633e7:	85 db                	test   %ebx,%ebx
1401633e9:	75 2b                	jne    0x140163416
1401633eb:	4c 8b 47 20          	mov    0x20(%rdi),%r8
1401633ef:	48 8b cd             	mov    %rbp,%rcx
1401633f2:	4d 85 c0             	test   %r8,%r8
1401633f5:	74 0e                	je     0x140163405
1401633f7:	48 8d 15 52 4d 1d 00 	lea    0x1d4d52(%rip),%rdx        # 0x140338150
1401633fe:	e8 2d f3 fd ff       	call   0x140142730
140163403:	eb 0c                	jmp    0x140163411
140163405:	48 8d 15 74 4d 1d 00 	lea    0x1d4d74(%rip),%rdx        # 0x140338180
14016340c:	e8 1f f3 fd ff       	call   0x140142730
140163411:	bb 3d 00 00 00       	mov    $0x3d,%ebx
140163416:	c7 06 00 00 00 00    	movl   $0x0,(%rsi)
14016341c:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140163421:	8b c3                	mov    %ebx,%eax
140163423:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140163428:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
14016342d:	48 83 c4 20          	add    $0x20,%rsp
140163431:	5f                   	pop    %rdi
140163432:	c3                   	ret
140163433:	cc                   	int3
140163434:	cc                   	int3
140163435:	cc                   	int3
140163436:	cc                   	int3
140163437:	cc                   	int3
140163438:	cc                   	int3
140163439:	cc                   	int3
14016343a:	cc                   	int3
14016343b:	cc                   	int3
14016343c:	cc                   	int3
14016343d:	cc                   	int3
14016343e:	cc                   	int3
14016343f:	cc                   	int3
140163440:	40 53                	rex push %rbx
140163442:	55                   	push   %rbp
140163443:	41 56                	push   %r14
140163445:	48 83 ec 20          	sub    $0x20,%rsp
140163449:	45 33 f6             	xor    %r14d,%r14d
14016344c:	49 8b d8             	mov    %r8,%rbx
14016344f:	48 8b e9             	mov    %rcx,%rbp
140163452:	44 88 b1 08 13 00 00 	mov    %r14b,0x1308(%rcx)
140163459:	44 38 b1 09 13 00 00 	cmp    %r14b,0x1309(%rcx)
140163460:	0f 85 71 02 00 00    	jne    0x1401636d7
140163466:	80 b9 99 11 00 00 0a 	cmpb   $0xa,0x1199(%rcx)
14016346d:	0f 84 64 02 00 00    	je     0x1401636d7
140163473:	0f b6 82 b0 01 00 00 	movzbl 0x1b0(%rdx),%eax
14016347a:	3c 0a                	cmp    $0xa,%al
14016347c:	0f 84 55 02 00 00    	je     0x1401636d7
140163482:	80 b9 98 11 00 00 01 	cmpb   $0x1,0x1198(%rcx)
140163489:	75 0c                	jne    0x140163497
14016348b:	3c 0a                	cmp    $0xa,%al
14016348d:	0f 86 44 02 00 00    	jbe    0x1401636d7
140163493:	32 c9                	xor    %cl,%cl
140163495:	eb 02                	jmp    0x140163499
140163497:	b1 01                	mov    $0x1,%cl
140163499:	84 c9                	test   %cl,%cl
14016349b:	0f 84 36 02 00 00    	je     0x1401636d7
1401634a1:	3c 14                	cmp    $0x14,%al
1401634a3:	0f 83 2e 02 00 00    	jae    0x1401636d7
1401634a9:	48 8d 15 d8 93 1d 00 	lea    0x1d93d8(%rip),%rdx        # 0x14033c888
1401634b0:	48 89 7c 24 50       	mov    %rdi,0x50(%rsp)
1401634b5:	48 8b cd             	mov    %rbp,%rcx
1401634b8:	e8 73 9e fd ff       	call   0x14013d330
1401634bd:	48 8b f8             	mov    %rax,%rdi
1401634c0:	48 85 c0             	test   %rax,%rax
1401634c3:	0f 84 e6 01 00 00    	je     0x1401636af
1401634c9:	4c 8d 1d c0 93 1d 00 	lea    0x1d93c0(%rip),%r11        # 0x14033c890
1401634d0:	41 ba 07 00 00 00    	mov    $0x7,%r10d
1401634d6:	4c 8b c8             	mov    %rax,%r9
1401634d9:	44 38 30             	cmp    %r14b,(%rax)
1401634dc:	74 4b                	je     0x140163529
1401634de:	66 90                	xchg   %ax,%ax
1401634e0:	45 0f b6 03          	movzbl (%r11),%r8d
1401634e4:	45 84 c0             	test   %r8b,%r8b
1401634e7:	74 3b                	je     0x140163524
1401634e9:	4d 85 d2             	test   %r10,%r10
1401634ec:	0f 84 80 00 00 00    	je     0x140163572
1401634f2:	41 0f b6 11          	movzbl (%r9),%edx
1401634f6:	8d 42 e0             	lea    -0x20(%rdx),%eax
1401634f9:	0f b6 d8             	movzbl %al,%ebx
1401634fc:	8d 4a 9f             	lea    -0x61(%rdx),%ecx
1401634ff:	80 f9 19             	cmp    $0x19,%cl
140163502:	41 8d 40 9f          	lea    -0x61(%r8),%eax
140163506:	0f 47 da             	cmova  %edx,%ebx
140163509:	3c 19                	cmp    $0x19,%al
14016350b:	77 04                	ja     0x140163511
14016350d:	41 80 e8 20          	sub    $0x20,%r8b
140163511:	41 3a d8             	cmp    %r8b,%bl
140163514:	75 13                	jne    0x140163529
140163516:	49 ff c1             	inc    %r9
140163519:	49 ff ca             	dec    %r10
14016351c:	49 ff c3             	inc    %r11
14016351f:	45 38 31             	cmp    %r14b,(%r9)
140163522:	75 bc                	jne    0x1401634e0
140163524:	4d 85 d2             	test   %r10,%r10
140163527:	74 49                	je     0x140163572
140163529:	41 0f b6 13          	movzbl (%r11),%edx
14016352d:	45 0f b6 09          	movzbl (%r9),%r9d
140163531:	8d 4a 9f             	lea    -0x61(%rdx),%ecx
140163534:	80 f9 19             	cmp    $0x19,%cl
140163537:	8d 42 e0             	lea    -0x20(%rdx),%eax
14016353a:	44 0f b6 c0          	movzbl %al,%r8d
14016353e:	41 8d 41 e0          	lea    -0x20(%r9),%eax
140163542:	44 0f 47 c2          	cmova  %edx,%r8d
140163546:	0f b6 c8             	movzbl %al,%ecx
140163549:	41 8d 51 9f          	lea    -0x61(%r9),%edx
14016354d:	80 fa 19             	cmp    $0x19,%dl
140163550:	41 0f 47 c9          	cmova  %r9d,%ecx
140163554:	41 3a c8             	cmp    %r8b,%cl
140163557:	74 19                	je     0x140163572
140163559:	48 8b 7c 24 50       	mov    0x50(%rsp),%rdi
14016355e:	32 c0                	xor    %al,%al
140163560:	88 85 08 13 00 00    	mov    %al,0x1308(%rbp)
140163566:	41 8b c6             	mov    %r14d,%eax
140163569:	48 83 c4 20          	add    $0x20,%rsp
14016356d:	41 5e                	pop    %r14
14016356f:	5d                   	pop    %rbp
140163570:	5b                   	pop    %rbx
140163571:	c3                   	ret
140163572:	0f b6 47 07          	movzbl 0x7(%rdi),%eax
140163576:	48 83 c7 07          	add    $0x7,%rdi
14016357a:	48 89 74 24 48       	mov    %rsi,0x48(%rsp)
14016357f:	84 c0                	test   %al,%al
140163581:	74 29                	je     0x1401635ac
140163583:	48 8d 15 16 8b 1d 00 	lea    0x1d8b16(%rip),%rdx        # 0x14033c0a0
14016358a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
140163590:	3c 80                	cmp    $0x80,%al
140163592:	73 18                	jae    0x1401635ac
140163594:	0f b6 c0             	movzbl %al,%eax
140163597:	0f b6 0c 10          	movzbl (%rax,%rdx,1),%ecx
14016359b:	0f ba e1 03          	bt     $0x3,%ecx
14016359f:	73 0b                	jae    0x1401635ac
1401635a1:	0f b6 47 01          	movzbl 0x1(%rdi),%eax
1401635a5:	48 ff c7             	inc    %rdi
1401635a8:	84 c0                	test   %al,%al
1401635aa:	75 e4                	jne    0x140163590
1401635ac:	ba 0d 00 00 00       	mov    $0xd,%edx
1401635b1:	48 8b cf             	mov    %rdi,%rcx
1401635b4:	e8 87 94 19 00       	call   0x1402fca40
1401635b9:	48 8b f0             	mov    %rax,%rsi
1401635bc:	48 85 c0             	test   %rax,%rax
1401635bf:	75 22                	jne    0x1401635e3
1401635c1:	ba 0a 00 00 00       	mov    $0xa,%edx
1401635c6:	48 8b cf             	mov    %rdi,%rcx
1401635c9:	e8 72 94 19 00       	call   0x1402fca40
1401635ce:	48 8b f0             	mov    %rax,%rsi
1401635d1:	48 85 c0             	test   %rax,%rax
1401635d4:	75 0d                	jne    0x1401635e3
1401635d6:	33 d2                	xor    %edx,%edx
1401635d8:	48 8b cf             	mov    %rdi,%rcx
1401635db:	e8 60 94 19 00       	call   0x1402fca40
1401635e0:	48 8b f0             	mov    %rax,%rsi
1401635e3:	48 2b f7             	sub    %rdi,%rsi
1401635e6:	48 83 fe 0c          	cmp    $0xc,%rsi
1401635ea:	0f 82 9d 00 00 00    	jb     0x14016368d
1401635f0:	4c 8d 1d 91 ca 1c 00 	lea    0x1cca91(%rip),%r11        # 0x140330088
1401635f7:	41 ba 0c 00 00 00    	mov    $0xc,%r10d
1401635fd:	4c 8b cf             	mov    %rdi,%r9
140163600:	44 38 37             	cmp    %r14b,(%rdi)
140163603:	74 48                	je     0x14016364d
140163605:	41 0f b6 03          	movzbl (%r11),%eax
140163609:	84 c0                	test   %al,%al
14016360b:	74 3b                	je     0x140163648
14016360d:	4d 85 d2             	test   %r10,%r10
140163610:	0f 84 95 00 00 00    	je     0x1401636ab
140163616:	45 0f b6 01          	movzbl (%r9),%r8d
14016361a:	41 8d 48 e0          	lea    -0x20(%r8),%ecx
14016361e:	0f b6 d9             	movzbl %cl,%ebx
140163621:	41 8d 50 9f          	lea    -0x61(%r8),%edx
140163625:	80 fa 19             	cmp    $0x19,%dl
140163628:	8d 48 9f             	lea    -0x61(%rax),%ecx
14016362b:	41 0f 47 d8          	cmova  %r8d,%ebx
14016362f:	80 f9 19             	cmp    $0x19,%cl
140163632:	77 02                	ja     0x140163636
140163634:	2c 20                	sub    $0x20,%al
140163636:	3a d8                	cmp    %al,%bl
140163638:	75 13                	jne    0x14016364d
14016363a:	49 ff c1             	inc    %r9
14016363d:	49 ff ca             	dec    %r10
140163640:	49 ff c3             	inc    %r11
140163643:	45 38 31             	cmp    %r14b,(%r9)
140163646:	75 bd                	jne    0x140163605
140163648:	4d 85 d2             	test   %r10,%r10
14016364b:	74 5e                	je     0x1401636ab
14016364d:	41 0f b6 13          	movzbl (%r11),%edx
140163651:	45 0f b6 09          	movzbl (%r9),%r9d
140163655:	8d 4a 9f             	lea    -0x61(%rdx),%ecx
140163658:	80 f9 19             	cmp    $0x19,%cl
14016365b:	8d 42 e0             	lea    -0x20(%rdx),%eax
14016365e:	44 0f b6 c0          	movzbl %al,%r8d
140163662:	41 8d 41 e0          	lea    -0x20(%r9),%eax
140163666:	44 0f 47 c2          	cmova  %edx,%r8d
14016366a:	0f b6 c8             	movzbl %al,%ecx
14016366d:	41 8d 51 9f          	lea    -0x61(%r9),%edx
140163671:	80 fa 19             	cmp    $0x19,%dl
140163674:	41 0f 47 c9          	cmova  %r9d,%ecx
140163678:	41 3a c8             	cmp    %r8b,%cl
14016367b:	74 2e                	je     0x1401636ab
14016367d:	48 ff ce             	dec    %rsi
140163680:	48 ff c7             	inc    %rdi
140163683:	48 83 fe 0c          	cmp    $0xc,%rsi
140163687:	0f 83 63 ff ff ff    	jae    0x1401635f0
14016368d:	32 c0                	xor    %al,%al
14016368f:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
140163694:	48 8b 7c 24 50       	mov    0x50(%rsp),%rdi
140163699:	88 85 08 13 00 00    	mov    %al,0x1308(%rbp)
14016369f:	41 8b c6             	mov    %r14d,%eax
1401636a2:	48 83 c4 20          	add    $0x20,%rsp
1401636a6:	41 5e                	pop    %r14
1401636a8:	5d                   	pop    %rbp
1401636a9:	5b                   	pop    %rbx
1401636aa:	c3                   	ret
1401636ab:	b0 01                	mov    $0x1,%al
1401636ad:	eb e0                	jmp    0x14016368f
1401636af:	41 b8 16 00 00 00    	mov    $0x16,%r8d
1401636b5:	48 8d 15 dc 91 1d 00 	lea    0x1d91dc(%rip),%rdx        # 0x14033c898
1401636bc:	48 8b cb             	mov    %rbx,%rcx
1401636bf:	e8 fc f9 ff ff       	call   0x1401630c0
1401636c4:	44 8b f0             	mov    %eax,%r14d
1401636c7:	85 c0                	test   %eax,%eax
1401636c9:	75 07                	jne    0x1401636d2
1401636cb:	c6 85 08 13 00 00 01 	movb   $0x1,0x1308(%rbp)
1401636d2:	48 8b 7c 24 50       	mov    0x50(%rsp),%rdi
1401636d7:	41 8b c6             	mov    %r14d,%eax
1401636da:	48 83 c4 20          	add    $0x20,%rsp
1401636de:	41 5e                	pop    %r14
1401636e0:	5d                   	pop    %rbp
1401636e1:	5b                   	pop    %rbx
1401636e2:	c3                   	ret
1401636e3:	cc                   	int3
1401636e4:	cc                   	int3
1401636e5:	cc                   	int3
1401636e6:	cc                   	int3
1401636e7:	cc                   	int3
1401636e8:	cc                   	int3
1401636e9:	cc                   	int3
1401636ea:	cc                   	int3
1401636eb:	cc                   	int3
1401636ec:	cc                   	int3
1401636ed:	cc                   	int3
1401636ee:	cc                   	int3
1401636ef:	cc                   	int3
1401636f0:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
1401636f5:	57                   	push   %rdi
1401636f6:	48 83 ec 60          	sub    $0x60,%rsp
1401636fa:	48 8b 05 7f 4a 2a 00 	mov    0x2a4a7f(%rip),%rax        # 0x140408180
140163701:	48 33 c4             	xor    %rsp,%rax
140163704:	48 89 44 24 58       	mov    %rax,0x58(%rsp)
140163709:	48 83 b9 58 04 00 00 	cmpq   $0x0,0x458(%rcx)
140163710:	00
140163711:	48 8b f2             	mov    %rdx,%rsi
140163714:	48 8b f9             	mov    %rcx,%rdi
140163717:	0f 85 e9 01 00 00    	jne    0x140163906
14016371d:	80 3d 94 c9 2a 00 00 	cmpb   $0x0,0x2ac994(%rip)        # 0x1404100b8
140163724:	74 3a                	je     0x140163760
140163726:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
14016372b:	ff 15 cf 5c 1c 00    	call   *0x1c5ccf(%rip)        # 0x140329400
140163731:	4c 8b 05 88 c9 2a 00 	mov    0x2ac988(%rip),%r8        # 0x1404100c0
140163738:	48 8b 44 24 20       	mov    0x20(%rsp),%rax
14016373d:	48 99                	cqto
14016373f:	49 f7 f8             	idiv   %r8
140163742:	4c 8b c8             	mov    %rax,%r9
140163745:	48 8b 44 24 20       	mov    0x20(%rsp),%rax
14016374a:	48 99                	cqto
14016374c:	49 f7 f8             	idiv   %r8
14016374f:	48 69 c2 40 42 0f 00 	imul   $0xf4240,%rdx,%rax
140163756:	48 99                	cqto
140163758:	49 f7 f8             	idiv   %r8
14016375b:	4c 8b c0             	mov    %rax,%r8
14016375e:	eb 27                	jmp    0x140163787
140163760:	ff 15 1a 5d 1c 00    	call   *0x1c5d1a(%rip)        # 0x140329480
140163766:	44 8b c0             	mov    %eax,%r8d
140163769:	b8 d3 4d 62 10       	mov    $0x10624dd3,%eax
14016376e:	41 f7 e0             	mul    %r8d
140163771:	c1 ea 06             	shr    $0x6,%edx
140163774:	69 ca e8 03 00 00    	imul   $0x3e8,%edx,%ecx
14016377a:	44 8b ca             	mov    %edx,%r9d
14016377d:	44 2b c1             	sub    %ecx,%r8d
140163780:	45 69 c0 e8 03 00 00 	imul   $0x3e8,%r8d,%r8d
140163787:	0f 10 87 d8 01 00 00 	movups 0x1d8(%rdi),%xmm0
14016378e:	66 48 0f 7e c0       	movq   %xmm0,%rax
140163793:	4c 2b c8             	sub    %rax,%r9
140163796:	48 b8 f7 53 e3 a5 9b 	movabs $0x20c49ba5e353f7,%rax
14016379d:	c4 20 00
1401637a0:	4c 3b c8             	cmp    %rax,%r9
1401637a3:	7c 0c                	jl     0x1401637b1
1401637a5:	48 b9 ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rcx
1401637ac:	ff ff 7f
1401637af:	eb 46                	jmp    0x1401637f7
1401637b1:	48 b8 09 ac 1c 5a 64 	movabs $0xffdf3b645a1cac09,%rax
1401637b8:	3b df ff
1401637bb:	4c 3b c8             	cmp    %rax,%r9
1401637be:	7f 0c                	jg     0x1401637cc
1401637c0:	48 b9 00 00 00 00 00 	movabs $0x8000000000000000,%rcx
1401637c7:	00 00 80
1401637ca:	eb 2b                	jmp    0x1401637f7
1401637cc:	b8 d3 4d 62 10       	mov    $0x10624dd3,%eax
1401637d1:	66 0f 73 d8 08       	psrldq $0x8,%xmm0
1401637d6:	66 0f 7e c1          	movd   %xmm0,%ecx
1401637da:	44 2b c1             	sub    %ecx,%r8d
1401637dd:	41 f7 e8             	imul   %r8d
1401637e0:	c1 fa 06             	sar    $0x6,%edx
1401637e3:	8b c2                	mov    %edx,%eax
1401637e5:	c1 e8 1f             	shr    $0x1f,%eax
1401637e8:	03 d0                	add    %eax,%edx
1401637ea:	49 69 c1 e8 03 00 00 	imul   $0x3e8,%r9,%rax
1401637f1:	48 63 ca             	movslq %edx,%rcx
1401637f4:	48 03 c8             	add    %rax,%rcx
1401637f7:	48 b8 cf f7 53 e3 a5 	movabs $0x20c49ba5e353f7cf,%rax
1401637fe:	9b c4 20
140163801:	48 f7 e9             	imul   %rcx
140163804:	48 c1 fa 07          	sar    $0x7,%rdx
140163808:	48 8b c2             	mov    %rdx,%rax
14016380b:	48 c1 e8 3f          	shr    $0x3f,%rax
14016380f:	48 03 d0             	add    %rax,%rdx
140163812:	48 63 86 1c 03 00 00 	movslq 0x31c(%rsi),%rax
140163819:	48 3b d0             	cmp    %rax,%rdx
14016381c:	7e 17                	jle    0x140163835
14016381e:	4c 8b c2             	mov    %rdx,%r8
140163821:	48 8b ce             	mov    %rsi,%rcx
140163824:	48 8d 15 e5 c9 1d 00 	lea    0x1dc9e5(%rip),%rdx        # 0x140340210
14016382b:	e8 f0 74 fe ff       	call   0x14014ad20
140163830:	e9 ac 00 00 00       	jmp    0x1401638e1
140163835:	48 8b 87 10 04 00 00 	mov    0x410(%rdi),%rax
14016383c:	48 89 9c 24 80 00 00 	mov    %rbx,0x80(%rsp)
140163843:	00
140163844:	48 83 78 70 00       	cmpq   $0x0,0x70(%rax)
140163849:	74 30                	je     0x14016387b
14016384b:	48 8b d7             	mov    %rdi,%rdx
14016384e:	48 8b ce             	mov    %rsi,%rcx
140163851:	e8 2a 7e fd ff       	call   0x14013b680
140163856:	48 8b 87 10 04 00 00 	mov    0x410(%rdi),%rax
14016385d:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140163863:	48 8b d7             	mov    %rdi,%rdx
140163866:	48 8b ce             	mov    %rsi,%rcx
140163869:	ff 50 70             	call   *0x70(%rax)
14016386c:	8b d8                	mov    %eax,%ebx
14016386e:	48 8b ce             	mov    %rsi,%rcx
140163871:	80 e3 01             	and    $0x1,%bl
140163874:	e8 77 dc fd ff       	call   0x1401414f0
140163879:	eb 5a                	jmp    0x1401638d5
14016387b:	48 8b 87 e8 01 00 00 	mov    0x1e8(%rdi),%rax
140163882:	33 db                	xor    %ebx,%ebx