14003e4f8:	44 89 44 24 30       	mov    %r8d,0x30(%rsp)
14003e4fd:	44 8b c6             	mov    %esi,%r8d
14003e500:	89 4c 24 28          	mov    %ecx,0x28(%rsp)
14003e504:	eb 7b                	jmp    0x14003e581
14003e506:	89 7c 24 50          	mov    %edi,0x50(%rsp)
14003e50a:	8b c7                	mov    %edi,%eax
14003e50c:	89 7c 24 48          	mov    %edi,0x48(%rsp)
14003e510:	44 8b cf             	mov    %edi,%r9d
14003e513:	89 7c 24 40          	mov    %edi,0x40(%rsp)
14003e517:	83 fe 6b             	cmp    $0x6b,%esi
14003e51a:	bb 02 00 00 00       	mov    $0x2,%ebx
14003e51f:	44 8b c6             	mov    %esi,%r8d
14003e522:	0f 9d c0             	setge  %al
14003e525:	89 5c 24 38          	mov    %ebx,0x38(%rsp)
14003e529:	41 03 c7             	add    %r15d,%eax
14003e52c:	89 7c 24 30          	mov    %edi,0x30(%rsp)
14003e530:	83 fe 6b             	cmp    $0x6b,%esi
14003e533:	89 7c 24 28          	mov    %edi,0x28(%rsp)
14003e537:	41 8b d7             	mov    %r15d,%edx
14003e53a:	89 44 24 20          	mov    %eax,0x20(%rsp)
14003e53e:	41 0f 9c c1          	setl   %r9b
14003e542:	33 c9                	xor    %ecx,%ecx
14003e544:	41 83 c1 03          	add    $0x3,%r9d
14003e548:	e8 e7 00 00 00       	call   0x14003e634
14003e54d:	44 8b 45 14          	mov    0x14(%rbp),%r8d
14003e551:	8d 43 03             	lea    0x3(%rbx),%eax
14003e554:	89 7c 24 50          	mov    %edi,0x50(%rsp)
14003e558:	83 fe 6b             	cmp    $0x6b,%esi
14003e55b:	89 7c 24 48          	mov    %edi,0x48(%rsp)
14003e55f:	44 8b cf             	mov    %edi,%r9d
14003e562:	89 7c 24 40          	mov    %edi,0x40(%rsp)
14003e566:	41 0f 9d c1          	setge  %r9b
14003e56a:	89 5c 24 38          	mov    %ebx,0x38(%rsp)
14003e56e:	41 0f 4d c7          	cmovge %r15d,%eax
14003e572:	89 7c 24 30          	mov    %edi,0x30(%rsp)
14003e576:	41 83 c1 0a          	add    $0xa,%r9d
14003e57a:	89 7c 24 28          	mov    %edi,0x28(%rsp)
14003e57e:	41 8b d7             	mov    %r15d,%edx
14003e581:	41 8b cf             	mov    %r15d,%ecx
14003e584:	89 44 24 20          	mov    %eax,0x20(%rsp)
14003e588:	e8 a7 00 00 00       	call   0x14003e634
14003e58d:	44 8b 05 f0 3f 03 00 	mov    0x33ff0(%rip),%r8d        # 0x140072584
14003e594:	8b 0d fa 3f 03 00    	mov    0x33ffa(%rip),%ecx        # 0x140072594
14003e59a:	8b 45 1c             	mov    0x1c(%rbp),%eax
14003e59d:	44 3b c1             	cmp    %ecx,%r8d
14003e5a0:	7d 33                	jge    0x14003e5d5
14003e5a2:	41 3b c0             	cmp    %r8d,%eax
14003e5a5:	7c 72                	jl     0x14003e619
14003e5a7:	3b c1                	cmp    %ecx,%eax
14003e5a9:	7f 6e                	jg     0x14003e619
14003e5ab:	41 3b c0             	cmp    %r8d,%eax
14003e5ae:	7e 37                	jle    0x14003e5e7
14003e5b0:	3b c1                	cmp    %ecx,%eax
14003e5b2:	7d 33                	jge    0x14003e5e7
14003e5b4:	41 8b c7             	mov    %r15d,%eax
14003e5b7:	4c 8d 5c 24 60       	lea    0x60(%rsp),%r11
14003e5bc:	49 8b 5b 30          	mov    0x30(%r11),%rbx
14003e5c0:	49 8b 6b 40          	mov    0x40(%r11),%rbp
14003e5c4:	49 8b 73 48          	mov    0x48(%r11),%rsi
14003e5c8:	49 8b e3             	mov    %r11,%rsp
14003e5cb:	41 5f                	pop    %r15
14003e5cd:	41 5e                	pop    %r14
14003e5cf:	41 5d                	pop    %r13
14003e5d1:	41 5c                	pop    %r12
14003e5d3:	5f                   	pop    %rdi
14003e5d4:	c3                   	ret
14003e5d5:	3b c1                	cmp    %ecx,%eax
14003e5d7:	7c db                	jl     0x14003e5b4
14003e5d9:	41 3b c0             	cmp    %r8d,%eax
14003e5dc:	7f d6                	jg     0x14003e5b4
14003e5de:	3b c1                	cmp    %ecx,%eax
14003e5e0:	7e 05                	jle    0x14003e5e7
14003e5e2:	41 3b c0             	cmp    %r8d,%eax
14003e5e5:	7c 32                	jl     0x14003e619
14003e5e7:	6b 4d 08 3c          	imul   $0x3c,0x8(%rbp),%ecx
14003e5eb:	03 4d 04             	add    0x4(%rbp),%ecx
14003e5ee:	6b d1 3c             	imul   $0x3c,%ecx,%edx
14003e5f1:	03 55 00             	add    0x0(%rbp),%edx
14003e5f4:	69 ca e8 03 00 00    	imul   $0x3e8,%edx,%ecx
14003e5fa:	41 3b c0             	cmp    %r8d,%eax
14003e5fd:	75 0e                	jne    0x14003e60d
14003e5ff:	3b 0d 83 3f 03 00    	cmp    0x33f83(%rip),%ecx        # 0x140072588
14003e605:	40 0f 9d c7          	setge  %dil
14003e609:	8b c7                	mov    %edi,%eax
14003e60b:	eb aa                	jmp    0x14003e5b7
14003e60d:	3b 0d 85 3f 03 00    	cmp    0x33f85(%rip),%ecx        # 0x140072598
14003e613:	40 0f 9c c7          	setl   %dil
14003e617:	eb f0                	jmp    0x14003e609
14003e619:	33 c0                	xor    %eax,%eax
14003e61b:	eb 9a                	jmp    0x14003e5b7
14003e61d:	45 33 c9             	xor    %r9d,%r9d
14003e620:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
14003e625:	45 33 c0             	xor    %r8d,%r8d
14003e628:	33 d2                	xor    %edx,%edx
14003e62a:	33 c9                	xor    %ecx,%ecx
14003e62c:	e8 c3 cf fe ff       	call   0x14002b5f4
14003e631:	cc                   	int3
14003e632:	cc                   	int3
14003e633:	cc                   	int3
14003e634:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
14003e639:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
14003e63e:	56                   	push   %rsi
14003e63f:	57                   	push   %rdi
14003e640:	41 56                	push   %r14
14003e642:	48 83 ec 30          	sub    $0x30,%rsp
14003e646:	83 64 24 50 00       	andl   $0x0,0x50(%rsp)
14003e64b:	44 8b f1             	mov    %ecx,%r14d
14003e64e:	41 8b c8             	mov    %r8d,%ecx
14003e651:	49 63 d9             	movslq %r9d,%rbx
14003e654:	41 8b f0             	mov    %r8d,%esi
14003e657:	8b fa                	mov    %edx,%edi
14003e659:	e8 f2 68 ff ff       	call   0x140034f50
14003e65e:	4c 8d 1d 9b 19 fc ff 	lea    -0x3e665(%rip),%r11        # 0x140000000
14003e665:	40 8a e8             	mov    %al,%bpl
14003e668:	83 ff 01             	cmp    $0x1,%edi
14003e66b:	0f 85 d2 00 00 00    	jne    0x14003e743
14003e671:	84 c0                	test   %al,%al
14003e673:	74 0a                	je     0x14003e67f
14003e675:	45 8b 94 9b fc 9a 05 	mov    0x59afc(%r11,%rbx,4),%r10d
14003e67c:	00
14003e67d:	eb 08                	jmp    0x14003e687
14003e67f:	45 8b 94 9b c4 9a 05 	mov    0x59ac4(%r11,%rbx,4),%r10d
14003e686:	00
14003e687:	41 ff c2             	inc    %r10d
14003e68a:	44 8d 46 ff          	lea    -0x1(%rsi),%r8d
14003e68e:	bf 1f 85 eb 51       	mov    $0x51eb851f,%edi
14003e693:	8d 8e 2b 01 00 00    	lea    0x12b(%rsi),%ecx
14003e699:	8b c7                	mov    %edi,%eax
14003e69b:	f7 e9                	imul   %ecx
14003e69d:	8b c7                	mov    %edi,%eax
14003e69f:	44 8b ca             	mov    %edx,%r9d
14003e6a2:	41 f7 e8             	imul   %r8d
14003e6a5:	41 8b c0             	mov    %r8d,%eax
14003e6a8:	41 c1 f9 07          	sar    $0x7,%r9d
14003e6ac:	c1 fa 05             	sar    $0x5,%edx
14003e6af:	41 8b c9             	mov    %r9d,%ecx
14003e6b2:	c1 e9 1f             	shr    $0x1f,%ecx
14003e6b5:	44 03 c9             	add    %ecx,%r9d
14003e6b8:	8b ca                	mov    %edx,%ecx
14003e6ba:	c1 e9 1f             	shr    $0x1f,%ecx
14003e6bd:	03 d1                	add    %ecx,%edx
14003e6bf:	69 ce 6d 01 00 00    	imul   $0x16d,%esi,%ecx
14003e6c5:	44 2b ca             	sub    %edx,%r9d
14003e6c8:	99                   	cltd
14003e6c9:	83 e2 03             	and    $0x3,%edx
14003e6cc:	81 c1 25 9c ff ff    	add    $0xffff9c25,%ecx
14003e6d2:	44 8d 04 02          	lea    (%rdx,%rax,1),%r8d
14003e6d6:	b8 93 24 49 92       	mov    $0x92492493,%eax
14003e6db:	41 c1 f8 02          	sar    $0x2,%r8d
14003e6df:	45 03 c2             	add    %r10d,%r8d
14003e6e2:	45 03 c1             	add    %r9d,%r8d
14003e6e5:	44 03 c1             	add    %ecx,%r8d
14003e6e8:	41 f7 e8             	imul   %r8d
14003e6eb:	41 03 d0             	add    %r8d,%edx
14003e6ee:	c1 fa 02             	sar    $0x2,%edx
14003e6f1:	8b c2                	mov    %edx,%eax
14003e6f3:	c1 e8 1f             	shr    $0x1f,%eax
14003e6f6:	03 d0                	add    %eax,%edx
14003e6f8:	6b c2 07             	imul   $0x7,%edx,%eax
14003e6fb:	6b 54 24 70 07       	imul   $0x7,0x70(%rsp),%edx
14003e700:	44 2b c0             	sub    %eax,%r8d
14003e703:	41 2b d0             	sub    %r8d,%edx
14003e706:	41 03 d2             	add    %r10d,%edx
14003e709:	03 54 24 78          	add    0x78(%rsp),%edx
14003e70d:	44 3b 44 24 78       	cmp    0x78(%rsp),%r8d
14003e712:	8d 42 f9             	lea    -0x7(%rdx),%eax
14003e715:	0f 4f c2             	cmovg  %edx,%eax
14003e718:	40 84 ed             	test   %bpl,%bpl
14003e71b:	74 0a                	je     0x14003e727
14003e71d:	41 8b 8c 9b 00 9b 05 	mov    0x59b00(%r11,%rbx,4),%ecx
14003e724:	00
14003e725:	eb 08                	jmp    0x14003e72f
14003e727:	41 8b 8c 9b c8 9a 05 	mov    0x59ac8(%r11,%rbx,4),%ecx
14003e72e:	00
14003e72f:	83 7c 24 70 05       	cmpl   $0x5,0x70(%rsp)
14003e734:	44 8b c0             	mov    %eax,%r8d
14003e737:	75 29                	jne    0x14003e762
14003e739:	3b c1                	cmp    %ecx,%eax
14003e73b:	7e 25                	jle    0x14003e762
14003e73d:	44 8d 40 f9          	lea    -0x7(%rax),%r8d
14003e741:	eb 1f                	jmp    0x14003e762
14003e743:	40 84 ed             	test   %bpl,%bpl
14003e746:	74 0a                	je     0x14003e752
14003e748:	45 8b 84 9b fc 9a 05 	mov    0x59afc(%r11,%rbx,4),%r8d
14003e74f:	00
14003e750:	eb 08                	jmp    0x14003e75a
14003e752:	45 8b 84 9b c4 9a 05 	mov    0x59ac4(%r11,%rbx,4),%r8d
14003e759:	00
14003e75a:	44 03 84 24 80 00 00 	add    0x80(%rsp),%r8d
14003e761:	00
14003e762:	6b 84 24 88 00 00 00 	imul   $0x3c,0x88(%rsp),%eax
14003e769:	3c
14003e76a:	03 84 24 90 00 00 00 	add    0x90(%rsp),%eax
14003e771:	6b c8 3c             	imul   $0x3c,%eax,%ecx
14003e774:	03 8c 24 98 00 00 00 	add    0x98(%rsp),%ecx
14003e77b:	69 c9 e8 03 00 00    	imul   $0x3e8,%ecx,%ecx
14003e781:	03 8c 24 a0 00 00 00 	add    0xa0(%rsp),%ecx
14003e788:	45 85 f6             	test   %r14d,%r14d
14003e78b:	75 26                	jne    0x14003e7b3
14003e78d:	44 89 05 f0 3d 03 00 	mov    %r8d,0x33df0(%rip)        # 0x140072584
14003e794:	89 0d ee 3d 03 00    	mov    %ecx,0x33dee(%rip)        # 0x140072588
14003e79a:	89 35 e0 3d 03 00    	mov    %esi,0x33de0(%rip)        # 0x140072580
14003e7a0:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
14003e7a5:	48 8b 6c 24 60       	mov    0x60(%rsp),%rbp
14003e7aa:	48 83 c4 30          	add    $0x30,%rsp
14003e7ae:	41 5e                	pop    %r14
14003e7b0:	5f                   	pop    %rdi
14003e7b1:	5e                   	pop    %rsi
14003e7b2:	c3                   	ret
14003e7b3:	89 0d df 3d 03 00    	mov    %ecx,0x33ddf(%rip)        # 0x140072598
14003e7b9:	48 8d 4c 24 50       	lea    0x50(%rsp),%rcx
14003e7be:	44 89 05 cf 3d 03 00 	mov    %r8d,0x33dcf(%rip)        # 0x140072594
14003e7c5:	e8 0e fb ff ff       	call   0x14003e2d8
14003e7ca:	85 c0                	test   %eax,%eax
14003e7cc:	75 45                	jne    0x14003e813
14003e7ce:	8b 05 c4 3d 03 00    	mov    0x33dc4(%rip),%eax        # 0x140072598
14003e7d4:	69 4c 24 50 e8 03 00 	imul   $0x3e8,0x50(%rsp),%ecx
14003e7db:	00
14003e7dc:	03 c1                	add    %ecx,%eax
14003e7de:	89 05 b4 3d 03 00    	mov    %eax,0x33db4(%rip)        # 0x140072598
14003e7e4:	79 0d                	jns    0x14003e7f3
14003e7e6:	05 00 5c 26 05       	add    $0x5265c00,%eax
14003e7eb:	ff 0d a3 3d 03 00    	decl   0x33da3(%rip)        # 0x140072594
14003e7f1:	eb 12                	jmp    0x14003e805
14003e7f3:	3d 00 5c 26 05       	cmp    $0x5265c00,%eax
14003e7f8:	7c 11                	jl     0x14003e80b
14003e7fa:	05 00 a4 d9 fa       	add    $0xfad9a400,%eax
14003e7ff:	ff 05 8f 3d 03 00    	incl   0x33d8f(%rip)        # 0x140072594
14003e805:	89 05 8d 3d 03 00    	mov    %eax,0x33d8d(%rip)        # 0x140072598
14003e80b:	89 35 7f 3d 03 00    	mov    %esi,0x33d7f(%rip)        # 0x140072590
14003e811:	eb 8d                	jmp    0x14003e7a0
14003e813:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
14003e819:	45 33 c9             	xor    %r9d,%r9d
14003e81c:	45 33 c0             	xor    %r8d,%r8d
14003e81f:	33 d2                	xor    %edx,%edx
14003e821:	33 c9                	xor    %ecx,%ecx
14003e823:	e8 cc cd fe ff       	call   0x14002b5f4
14003e828:	cc                   	int3
14003e829:	cc                   	int3
14003e82a:	cc                   	int3
14003e82b:	cc                   	int3
14003e82c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14003e831:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
14003e836:	57                   	push   %rdi
14003e837:	48 83 ec 60          	sub    $0x60,%rsp
14003e83b:	48 8b fa             	mov    %rdx,%rdi
14003e83e:	49 8b f0             	mov    %r8,%rsi
14003e841:	4c 8b c1             	mov    %rcx,%r8
14003e844:	ba 40 00 00 00       	mov    $0x40,%edx
14003e849:	48 8b cf             	mov    %rdi,%rcx
14003e84c:	49 8b d9             	mov    %r9,%rbx
14003e84f:	e8 04 1e 00 00       	call   0x140040658
14003e854:	33 d2                	xor    %edx,%edx
14003e856:	85 c0                	test   %eax,%eax
14003e858:	0f 85 9b 00 00 00    	jne    0x14003e8f9
14003e85e:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
14003e863:	e8 08 d6 fe ff       	call   0x14002be70
14003e868:	48 8b 44 24 48       	mov    0x48(%rsp),%rax
14003e86d:	b9 e9 fd 00 00       	mov    $0xfde9,%ecx
14003e872:	39 48 0c             	cmp    %ecx,0xc(%rax)
14003e875:	75 15                	jne    0x14003e88c
14003e877:	80 7c 24 58 00       	cmpb   $0x0,0x58(%rsp)
14003e87c:	74 45                	je     0x14003e8c3
14003e87e:	48 8b 44 24 40       	mov    0x40(%rsp),%rax
14003e883:	83 a0 a8 03 00 00 fd 	andl   $0xfffffffd,0x3a8(%rax)
14003e88a:	eb 37                	jmp    0x14003e8c3
14003e88c:	e8 c7 ad ff ff       	call   0x140039658
14003e891:	85 c0                	test   %eax,%eax
14003e893:	75 19                	jne    0x14003e8ae
14003e895:	38 44 24 58          	cmp    %al,0x58(%rsp)
14003e899:	74 0c                	je     0x14003e8a7
14003e89b:	48 8b 44 24 40       	mov    0x40(%rsp),%rax
14003e8a0:	83 a0 a8 03 00 00 fd 	andl   $0xfffffffd,0x3a8(%rax)
14003e8a7:	b9 01 00 00 00       	mov    $0x1,%ecx
14003e8ac:	eb 15                	jmp    0x14003e8c3
14003e8ae:	80 7c 24 58 00       	cmpb   $0x0,0x58(%rsp)
14003e8b3:	74 0c                	je     0x14003e8c1
14003e8b5:	48 8b 44 24 40       	mov    0x40(%rsp),%rax
14003e8ba:	83 a0 a8 03 00 00 fd 	andl   $0xfffffffd,0x3a8(%rax)
14003e8c1:	33 c9                	xor    %ecx,%ecx
14003e8c3:	48 83 64 24 38 00    	andq   $0x0,0x38(%rsp)
14003e8c9:	44 8b cb             	mov    %ebx,%r9d
14003e8cc:	48 83 64 24 30 00    	andq   $0x0,0x30(%rsp)
14003e8d2:	4c 8b c7             	mov    %rdi,%r8
14003e8d5:	c7 44 24 28 3f 00 00 	movl   $0x3f,0x28(%rsp)
14003e8dc:	00
14003e8dd:	33 d2                	xor    %edx,%edx
14003e8df:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
14003e8e4:	e8 67 f8 ff ff       	call   0x14003e150
14003e8e9:	48 8b 5c 24 70       	mov    0x70(%rsp),%rbx
14003e8ee:	48 8b 74 24 78       	mov    0x78(%rsp),%rsi
14003e8f3:	48 83 c4 60          	add    $0x60,%rsp
14003e8f7:	5f                   	pop    %rdi
14003e8f8:	c3                   	ret
14003e8f9:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
14003e8ff:	45 33 c9             	xor    %r9d,%r9d
14003e902:	45 33 c0             	xor    %r8d,%r8d
14003e905:	33 c9                	xor    %ecx,%ecx
14003e907:	e8 e8 cc fe ff       	call   0x14002b5f4
14003e90c:	cc                   	int3
14003e90d:	cc                   	int3
14003e90e:	cc                   	int3
14003e90f:	cc                   	int3
14003e910:	40 55                	rex push %rbp
14003e912:	53                   	push   %rbx
14003e913:	56                   	push   %rsi
14003e914:	57                   	push   %rdi
14003e915:	41 54                	push   %r12
14003e917:	41 56                	push   %r14
14003e919:	41 57                	push   %r15
14003e91b:	48 8b ec             	mov    %rsp,%rbp
14003e91e:	48 83 ec 30          	sub    $0x30,%rsp
14003e922:	48 8b f9             	mov    %rcx,%rdi
14003e925:	e8 6e f9 ff ff       	call   0x14003e298
14003e92a:	4c 8b f0             	mov    %rax,%r14
14003e92d:	e8 6e f9 ff ff       	call   0x14003e2a0
14003e932:	45 33 e4             	xor    %r12d,%r12d
14003e935:	48 8d 4d 48          	lea    0x48(%rbp),%rcx
14003e939:	44 89 65 48          	mov    %r12d,0x48(%rbp)
14003e93d:	4c 8b f8             	mov    %rax,%r15
14003e940:	44 89 65 50          	mov    %r12d,0x50(%rbp)
14003e944:	e8 bf f9 ff ff       	call   0x14003e308
14003e949:	85 c0                	test   %eax,%eax
14003e94b:	0f 85 24 02 00 00    	jne    0x14003eb75
14003e951:	48 8d 4d 50          	lea    0x50(%rbp),%rcx
14003e955:	e8 4e f9 ff ff       	call   0x14003e2a8
14003e95a:	85 c0                	test   %eax,%eax
14003e95c:	0f 85 13 02 00 00    	jne    0x14003eb75
14003e962:	48 8b 0d 97 9c 03 00 	mov    0x39c97(%rip),%rcx        # 0x140078600
14003e969:	48 85 c9             	test   %rcx,%rcx
14003e96c:	74 20                	je     0x14003e98e
14003e96e:	48 8b c7             	mov    %rdi,%rax
14003e971:	48 2b cf             	sub    %rdi,%rcx
14003e974:	0f b7 10             	movzwl (%rax),%edx
14003e977:	44 0f b7 04 08       	movzwl (%rax,%rcx,1),%r8d
14003e97c:	41 2b d0             	sub    %r8d,%edx
14003e97f:	75 09                	jne    0x14003e98a
14003e981:	48 83 c0 02          	add    $0x2,%rax
14003e985:	45 85 c0             	test   %r8d,%r8d
14003e988:	75 ea                	jne    0x14003e974
14003e98a:	85 d2                	test   %edx,%edx
14003e98c:	74 2d                	je     0x14003e9bb
14003e98e:	48 83 ce ff          	or     $0xffffffffffffffff,%rsi
14003e992:	48 8b ce             	mov    %rsi,%rcx
14003e995:	48 ff c1             	inc    %rcx
14003e998:	66 44 39 24 4f       	cmp    %r12w,(%rdi,%rcx,2)
14003e99d:	75 f6                	jne    0x14003e995
14003e99f:	48 8d 0c 4d 02 00 00 	lea    0x2(,%rcx,2),%rcx
14003e9a6:	00
14003e9a7:	e8 1c a4 ff ff       	call   0x140038dc8