1405613e7:	4c 03 5e 18          	add    0x18(%rsi),%r11
1405613eb:	4d 8b 0b             	mov    (%r11),%r9
1405613ee:	4c 3b cb             	cmp    %rbx,%r9
1405613f1:	75 09                	jne    0x1405613fc
1405613f3:	49 89 03             	mov    %rax,(%r11)
1405613f6:	49 89 43 08          	mov    %rax,0x8(%r11)
1405613fa:	eb 77                	jmp    0x140561473
1405613fc:	49 8b 53 08          	mov    0x8(%r11),%rdx
140561400:	4c 8b 40 10          	mov    0x10(%rax),%r8
140561404:	4c 3b 42 10          	cmp    0x10(%rdx),%r8
140561408:	75 2f                	jne    0x140561439
14056140a:	4c 8b 12             	mov    (%rdx),%r10
14056140d:	4c 3b d0             	cmp    %rax,%r10
140561410:	74 21                	je     0x140561433
140561412:	4c 8b 48 08          	mov    0x8(%rax),%r9
140561416:	49 89 09             	mov    %rcx,(%r9)
140561419:	4c 8b 41 08          	mov    0x8(%rcx),%r8
14056141d:	4d 89 10             	mov    %r10,(%r8)
140561420:	49 8b 52 08          	mov    0x8(%r10),%rdx
140561424:	48 89 02             	mov    %rax,(%rdx)
140561427:	4d 89 42 08          	mov    %r8,0x8(%r10)
14056142b:	4c 89 49 08          	mov    %r9,0x8(%rcx)
14056142f:	48 89 50 08          	mov    %rdx,0x8(%rax)
140561433:	49 89 43 08          	mov    %rax,0x8(%r11)
140561437:	eb 3a                	jmp    0x140561473
140561439:	4c 3b ca             	cmp    %rdx,%r9
14056143c:	74 11                	je     0x14056144f
14056143e:	66 90                	xchg   %ax,%ax
140561440:	48 8b 52 08          	mov    0x8(%rdx),%rdx
140561444:	4c 3b 42 10          	cmp    0x10(%rdx),%r8
140561448:	74 4f                	je     0x140561499
14056144a:	4c 3b ca             	cmp    %rdx,%r9
14056144d:	75 f1                	jne    0x140561440
14056144f:	4c 8b 50 08          	mov    0x8(%rax),%r10
140561453:	49 89 0a             	mov    %rcx,(%r10)
140561456:	4c 8b 49 08          	mov    0x8(%rcx),%r9
14056145a:	49 89 11             	mov    %rdx,(%r9)
14056145d:	4c 8b 42 08          	mov    0x8(%rdx),%r8
140561461:	49 89 00             	mov    %rax,(%r8)
140561464:	4c 89 4a 08          	mov    %r9,0x8(%rdx)
140561468:	4c 89 51 08          	mov    %r10,0x8(%rcx)
14056146c:	4c 89 40 08          	mov    %r8,0x8(%rax)
140561470:	49 89 03             	mov    %rax,(%r11)
140561473:	48 8b c1             	mov    %rcx,%rax
140561476:	48 3b cb             	cmp    %rbx,%rcx
140561479:	0f 85 01 ff ff ff    	jne    0x140561380
14056147f:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140561484:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140561489:	4c 8b 74 24 40       	mov    0x40(%rsp),%r14
14056148e:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
140561493:	48 83 c4 20          	add    $0x20,%rsp
140561497:	5f                   	pop    %rdi
140561498:	c3                   	ret
140561499:	4c 8b 12             	mov    (%rdx),%r10
14056149c:	4c 8b 48 08          	mov    0x8(%rax),%r9
1405614a0:	49 89 09             	mov    %rcx,(%r9)
1405614a3:	4c 8b 41 08          	mov    0x8(%rcx),%r8
1405614a7:	4d 89 10             	mov    %r10,(%r8)
1405614aa:	49 8b 52 08          	mov    0x8(%r10),%rdx
1405614ae:	48 89 02             	mov    %rax,(%rdx)
1405614b1:	4d 89 42 08          	mov    %r8,0x8(%r10)
1405614b5:	4c 89 49 08          	mov    %r9,0x8(%rcx)
1405614b9:	48 89 50 08          	mov    %rdx,0x8(%rax)
1405614bd:	eb b4                	jmp    0x140561473
1405614bf:	48 8d 0d 2a d0 a4 00 	lea    0xa4d02a(%rip),%rcx        # 0x140fae4f0
1405614c6:	e8 e9 9e 89 00       	call   0x140dfb3b4
1405614cb:	cc                   	int3
1405614cc:	cc                   	int3
1405614cd:	cc                   	int3
1405614ce:	cc                   	int3
1405614cf:	cc                   	int3
1405614d0:	48 83 ec 28          	sub    $0x28,%rsp
1405614d4:	48 8b c2             	mov    %rdx,%rax
1405614d7:	4b 8d 14 c0          	lea    (%r8,%r8,8),%rdx
1405614db:	48 c1 e2 03          	shl    $0x3,%rdx
1405614df:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
1405614e6:	72 18                	jb     0x140561500
1405614e8:	48 8b 48 f8          	mov    -0x8(%rax),%rcx
1405614ec:	48 83 c2 27          	add    $0x27,%rdx
1405614f0:	48 2b c1             	sub    %rcx,%rax
1405614f3:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
1405614f7:	48 83 f8 1f          	cmp    $0x1f,%rax
1405614fb:	77 0f                	ja     0x14056150c
1405614fd:	48 8b c1             	mov    %rcx,%rax
140561500:	48 8b c8             	mov    %rax,%rcx
140561503:	48 83 c4 28          	add    $0x28,%rsp
140561507:	e9 38 9c 8b 00       	jmp    0x140e1b144
14056150c:	e8 93 8c 8c 00       	call   0x140e2a1a4
140561511:	cc                   	int3
140561512:	cc                   	int3
140561513:	cc                   	int3
140561514:	cc                   	int3
140561515:	cc                   	int3
140561516:	cc                   	int3
140561517:	cc                   	int3
140561518:	cc                   	int3
140561519:	cc                   	int3
14056151a:	cc                   	int3
14056151b:	cc                   	int3
14056151c:	cc                   	int3
14056151d:	cc                   	int3
14056151e:	cc                   	int3
14056151f:	cc                   	int3
140561520:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140561525:	57                   	push   %rdi
140561526:	48 83 ec 20          	sub    $0x20,%rsp
14056152a:	48 8b d9             	mov    %rcx,%rbx
14056152d:	e8 ee c8 89 00       	call   0x140dfde20
140561532:	48 8b f8             	mov    %rax,%rdi
140561535:	e8 ca c8 89 00       	call   0x140dfde04
14056153a:	4c 8b c8             	mov    %rax,%r9
14056153d:	48 81 ff 80 96 98 00 	cmp    $0x989680,%rdi
140561544:	75 15                	jne    0x14056155b
140561546:	49 6b c1 64          	imul   $0x64,%r9,%rax
14056154a:	48 89 03             	mov    %rax,(%rbx)
14056154d:	48 8b c3             	mov    %rbx,%rax
140561550:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140561555:	48 83 c4 20          	add    $0x20,%rsp
140561559:	5f                   	pop    %rdi
14056155a:	c3                   	ret
14056155b:	48 81 ff 00 36 6e 01 	cmp    $0x16e3600,%rdi
140561562:	75 65                	jne    0x1405615c9
140561564:	49 ba f3 8c 90 94 07 	movabs $0xb2f4fc0794908cf3,%r10
14056156b:	fc f4 b2
14056156e:	49 8b c2             	mov    %r10,%rax
140561571:	49 f7 e9             	imul   %r9
140561574:	49 8b c2             	mov    %r10,%rax
140561577:	4d 8d 04 11          	lea    (%r9,%rdx,1),%r8
14056157b:	49 c1 f8 18          	sar    $0x18,%r8
14056157f:	49 8b c8             	mov    %r8,%rcx
140561582:	48 c1 e9 3f          	shr    $0x3f,%rcx
140561586:	4c 03 c1             	add    %rcx,%r8
140561589:	49 69 c8 00 36 6e 01 	imul   $0x16e3600,%r8,%rcx
140561590:	4c 2b c9             	sub    %rcx,%r9
140561593:	49 69 c9 00 ca 9a 3b 	imul   $0x3b9aca00,%r9,%rcx
14056159a:	48 f7 e9             	imul   %rcx
14056159d:	48 03 d1             	add    %rcx,%rdx
1405615a0:	48 c1 fa 18          	sar    $0x18,%rdx
1405615a4:	48 8b c2             	mov    %rdx,%rax
1405615a7:	48 c1 e8 3f          	shr    $0x3f,%rax
1405615ab:	48 03 d0             	add    %rax,%rdx
1405615ae:	49 69 c0 00 ca 9a 3b 	imul   $0x3b9aca00,%r8,%rax
1405615b5:	48 03 d0             	add    %rax,%rdx
1405615b8:	48 8b c3             	mov    %rbx,%rax
1405615bb:	48 89 13             	mov    %rdx,(%rbx)
1405615be:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1405615c3:	48 83 c4 20          	add    $0x20,%rsp
1405615c7:	5f                   	pop    %rdi
1405615c8:	c3                   	ret
1405615c9:	48 99                	cqto
1405615cb:	48 f7 ff             	idiv   %rdi
1405615ce:	48 8b c8             	mov    %rax,%rcx
1405615d1:	48 69 c2 00 ca 9a 3b 	imul   $0x3b9aca00,%rdx,%rax
1405615d8:	48 69 c9 00 ca 9a 3b 	imul   $0x3b9aca00,%rcx,%rcx
1405615df:	48 99                	cqto
1405615e1:	48 f7 ff             	idiv   %rdi
1405615e4:	48 03 c1             	add    %rcx,%rax
1405615e7:	48 89 03             	mov    %rax,(%rbx)
1405615ea:	48 8b c3             	mov    %rbx,%rax
1405615ed:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1405615f2:	48 83 c4 20          	add    $0x20,%rsp
1405615f6:	5f                   	pop    %rdi
1405615f7:	c3                   	ret
1405615f8:	cc                   	int3
1405615f9:	cc                   	int3
1405615fa:	cc                   	int3
1405615fb:	cc                   	int3
1405615fc:	cc                   	int3
1405615fd:	cc                   	int3
1405615fe:	cc                   	int3
1405615ff:	cc                   	int3
140561600:	40 53                	rex push %rbx
140561602:	56                   	push   %rsi
140561603:	41 54                	push   %r12
140561605:	41 56                	push   %r14
140561607:	48 83 ec 28          	sub    $0x28,%rsp
14056160b:	4c 8b 71 10          	mov    0x10(%rcx),%r14
14056160f:	48 bb ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rbx
140561616:	ff ff 7f
140561619:	48 8b c3             	mov    %rbx,%rax
14056161c:	4d 8b e1             	mov    %r9,%r12
14056161f:	49 2b c6             	sub    %r14,%rax
140561622:	48 8b f1             	mov    %rcx,%rsi
140561625:	48 3b c2             	cmp    %rdx,%rax
140561628:	0f 82 91 01 00 00    	jb     0x1405617bf
14056162e:	48 89 6c 24 50       	mov    %rbp,0x50(%rsp)
140561633:	48 8b 69 18          	mov    0x18(%rcx),%rbp
140561637:	48 89 7c 24 58       	mov    %rdi,0x58(%rsp)
14056163c:	4c 89 6c 24 60       	mov    %r13,0x60(%rsp)
140561641:	4c 89 7c 24 20       	mov    %r15,0x20(%rsp)
140561646:	4d 8d 3c 16          	lea    (%r14,%rdx,1),%r15
14056164a:	49 8b d7             	mov    %r15,%rdx
14056164d:	48 83 ca 0f          	or     $0xf,%rdx
140561651:	48 3b d3             	cmp    %rbx,%rdx
140561654:	77 44                	ja     0x14056169a
140561656:	48 8b cd             	mov    %rbp,%rcx
140561659:	48 8b c3             	mov    %rbx,%rax
14056165c:	48 d1 e9             	shr    $1,%rcx
14056165f:	48 2b c1             	sub    %rcx,%rax
140561662:	48 3b e8             	cmp    %rax,%rbp
140561665:	77 33                	ja     0x14056169a
140561667:	48 8d 04 29          	lea    (%rcx,%rbp,1),%rax
14056166b:	48 8b da             	mov    %rdx,%rbx
14056166e:	48 3b d0             	cmp    %rax,%rdx
140561671:	48 0f 42 d8          	cmovb  %rax,%rbx
140561675:	48 8d 4b 01          	lea    0x1(%rbx),%rcx
140561679:	48 85 c9             	test   %rcx,%rcx
14056167c:	75 04                	jne    0x140561682
14056167e:	33 ff                	xor    %edi,%edi
140561680:	eb 4d                	jmp    0x1405616cf
140561682:	48 81 f9 00 10 00 00 	cmp    $0x1000,%rcx
140561689:	72 3c                	jb     0x1405616c7
14056168b:	48 8d 41 27          	lea    0x27(%rcx),%rax
14056168f:	48 3b c1             	cmp    %rcx,%rax
140561692:	0f 86 21 01 00 00    	jbe    0x1405617b9
140561698:	eb 0e                	jmp    0x1405616a8
14056169a:	48 b8 00 00 00 00 00 	movabs $0x8000000000000000,%rax
1405616a1:	00 00 80
1405616a4:	48 83 c0 27          	add    $0x27,%rax
1405616a8:	48 8b c8             	mov    %rax,%rcx
1405616ab:	e8 58 9a 8b 00       	call   0x140e1b108
1405616b0:	48 85 c0             	test   %rax,%rax
1405616b3:	0f 84 fa 00 00 00    	je     0x1405617b3
1405616b9:	48 8d 78 27          	lea    0x27(%rax),%rdi
1405616bd:	48 83 e7 e0          	and    $0xffffffffffffffe0,%rdi
1405616c1:	48 89 47 f8          	mov    %rax,-0x8(%rdi)
1405616c5:	eb 08                	jmp    0x1405616cf
1405616c7:	e8 3c 9a 8b 00       	call   0x140e1b108
1405616cc:	48 8b f8             	mov    %rax,%rdi
1405616cf:	4c 2b 74 24 70       	sub    0x70(%rsp),%r14
1405616d4:	4d 8b c4             	mov    %r12,%r8
1405616d7:	48 89 5e 18          	mov    %rbx,0x18(%rsi)
1405616db:	4d 2b f4             	sub    %r12,%r14
1405616de:	48 8b 9c 24 80 00 00 	mov    0x80(%rsp),%rbx
1405616e5:	00
1405616e6:	48 8b cf             	mov    %rdi,%rcx
1405616e9:	4c 89 7e 10          	mov    %r15,0x10(%rsi)
1405616ed:	4d 8d 3c 3c          	lea    (%r12,%rdi,1),%r15
1405616f1:	4d 8d 2c 1f          	lea    (%r15,%rbx,1),%r13
1405616f5:	48 83 fd 0f          	cmp    $0xf,%rbp
1405616f9:	76 64                	jbe    0x14056175f
1405616fb:	48 8b 1e             	mov    (%rsi),%rbx
1405616fe:	48 8b d3             	mov    %rbx,%rdx
140561701:	e8 0a d9 97 00       	call   0x140edf010
140561706:	4c 8b 84 24 80 00 00 	mov    0x80(%rsp),%r8
14056170d:	00
14056170e:	49 8b cf             	mov    %r15,%rcx
140561711:	48 8b 54 24 78       	mov    0x78(%rsp),%rdx
140561716:	e8 f5 d8 97 00       	call   0x140edf010
14056171b:	4a 8d 14 23          	lea    (%rbx,%r12,1),%rdx
14056171f:	49 8b cd             	mov    %r13,%rcx
140561722:	48 03 54 24 70       	add    0x70(%rsp),%rdx
140561727:	4d 8d 46 01          	lea    0x1(%r14),%r8
14056172b:	e8 e0 d8 97 00       	call   0x140edf010
140561730:	48 8d 55 01          	lea    0x1(%rbp),%rdx
140561734:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
14056173b:	72 18                	jb     0x140561755
14056173d:	48 8b 4b f8          	mov    -0x8(%rbx),%rcx
140561741:	48 83 c2 27          	add    $0x27,%rdx
140561745:	48 2b d9             	sub    %rcx,%rbx
140561748:	48 8d 43 f8          	lea    -0x8(%rbx),%rax
14056174c:	48 83 f8 1f          	cmp    $0x1f,%rax
140561750:	77 61                	ja     0x1405617b3
140561752:	48 8b d9             	mov    %rcx,%rbx
140561755:	48 8b cb             	mov    %rbx,%rcx
140561758:	e8 e7 99 8b 00       	call   0x140e1b144
14056175d:	eb 2f                	jmp    0x14056178e
14056175f:	48 8b d6             	mov    %rsi,%rdx
140561762:	e8 a9 d8 97 00       	call   0x140edf010
140561767:	48 8b 54 24 78       	mov    0x78(%rsp),%rdx
14056176c:	4c 8b c3             	mov    %rbx,%r8
14056176f:	49 8b cf             	mov    %r15,%rcx
140561772:	e8 99 d8 97 00       	call   0x140edf010
140561777:	48 8b 54 24 70       	mov    0x70(%rsp),%rdx
14056177c:	4d 8d 46 01          	lea    0x1(%r14),%r8
140561780:	49 03 d4             	add    %r12,%rdx
140561783:	49 8b cd             	mov    %r13,%rcx
140561786:	48 03 d6             	add    %rsi,%rdx
140561789:	e8 82 d8 97 00       	call   0x140edf010
14056178e:	48 89 3e             	mov    %rdi,(%rsi)
140561791:	48 8b c6             	mov    %rsi,%rax
140561794:	4c 8b 6c 24 60       	mov    0x60(%rsp),%r13
140561799:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
14056179e:	48 8b 6c 24 50       	mov    0x50(%rsp),%rbp
1405617a3:	4c 8b 7c 24 20       	mov    0x20(%rsp),%r15
1405617a8:	48 83 c4 28          	add    $0x28,%rsp
1405617ac:	41 5e                	pop    %r14
1405617ae:	41 5c                	pop    %r12
1405617b0:	5e                   	pop    %rsi
1405617b1:	5b                   	pop    %rbx
1405617b2:	c3                   	ret
1405617b3:	e8 ec 89 8c 00       	call   0x140e2a1a4
1405617b8:	cc                   	int3
1405617b9:	e8 d2 b9 c3 ff       	call   0x14019d190
1405617be:	cc                   	int3
1405617bf:	e8 ac bd c3 ff       	call   0x14019d570
1405617c4:	cc                   	int3
1405617c5:	cc                   	int3
1405617c6:	cc                   	int3
1405617c7:	cc                   	int3
1405617c8:	cc                   	int3
1405617c9:	cc                   	int3
1405617ca:	cc                   	int3
1405617cb:	cc                   	int3
1405617cc:	cc                   	int3
1405617cd:	cc                   	int3
1405617ce:	cc                   	int3
1405617cf:	cc                   	int3
1405617d0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1405617d5:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
1405617da:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1405617df:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
1405617e4:	41 56                	push   %r14
1405617e6:	48 83 ec 20          	sub    $0x20,%rsp
1405617ea:	48 8b f9             	mov    %rcx,%rdi
1405617ed:	33 db                	xor    %ebx,%ebx
1405617ef:	90                   	nop
1405617f0:	48 8b 6f 18          	mov    0x18(%rdi),%rbp
1405617f4:	4c 8b f7             	mov    %rdi,%r14
1405617f7:	48 8b 77 10          	mov    0x10(%rdi),%rsi
1405617fb:	48 83 fd 0f          	cmp    $0xf,%rbp
1405617ff:	76 03                	jbe    0x140561804
140561801:	4c 8b 37             	mov    (%rdi),%r14
140561804:	48 3b de             	cmp    %rsi,%rbx
140561807:	73 52                	jae    0x14056185b
140561809:	4c 8b c6             	mov    %rsi,%r8
14056180c:	49 8d 0c 1e          	lea    (%r14,%rbx,1),%rcx
140561810:	4c 2b c3             	sub    %rbx,%r8
140561813:	ba 2e 00 00 00       	mov    $0x2e,%edx
140561818:	e8 13 e3 97 00       	call   0x140edfb30
14056181d:	48 8b d8             	mov    %rax,%rbx
140561820:	48 85 c0             	test   %rax,%rax
140561823:	74 36                	je     0x14056185b
140561825:	49 2b de             	sub    %r14,%rbx
140561828:	48 83 fb ff          	cmp    $0xffffffffffffffff,%rbx
14056182c:	74 2d                	je     0x14056185b
14056182e:	48 8d 46 ff          	lea    -0x1(%rsi),%rax
140561832:	48 3b d8             	cmp    %rax,%rbx
140561835:	74 1f                	je     0x140561856
140561837:	48 8b c7             	mov    %rdi,%rax
14056183a:	48 83 fd 0f          	cmp    $0xf,%rbp
14056183e:	76 03                	jbe    0x140561843
140561840:	48 8b 07             	mov    (%rdi),%rax
140561843:	0f be 4c 03 01       	movsbl 0x1(%rbx,%rax,1),%ecx
140561848:	e8 53 24 8d 00       	call   0x140e33ca0
14056184d:	85 c0                	test   %eax,%eax
14056184f:	75 05                	jne    0x140561856
140561851:	48 ff c3             	inc    %rbx
140561854:	eb 9a                	jmp    0x1405617f0
140561856:	48 8b c3             	mov    %rbx,%rax