1401603fe:	cc                   	int3
1401603ff:	cc                   	int3
140160400:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140160405:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14016040a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14016040f:	57                   	push   %rdi
140160410:	41 54                	push   %r12
140160412:	41 55                	push   %r13
140160414:	41 56                	push   %r14
140160416:	41 57                	push   %r15
140160418:	48 83 ec 20          	sub    $0x20,%rsp
14016041c:	4d 8b f8             	mov    %r8,%r15
14016041f:	48 8b da             	mov    %rdx,%rbx
140160422:	48 8b f9             	mov    %rcx,%rdi
140160425:	48 8b 11             	mov    (%rcx),%rdx
140160428:	48 8b eb             	mov    %rbx,%rbp
14016042b:	48 2b ea             	sub    %rdx,%rbp
14016042e:	48 c1 fd 03          	sar    $0x3,%rbp
140160432:	48 8b 41 08          	mov    0x8(%rcx),%rax
140160436:	48 2b c2             	sub    %rdx,%rax
140160439:	48 c1 f8 03          	sar    $0x3,%rax
14016043d:	49 b8 ff ff ff ff ff 	movabs $0x1fffffffffffffff,%r8
140160444:	ff ff 1f
140160447:	49 3b c0             	cmp    %r8,%rax
14016044a:	0f 84 ce 01 00 00    	je     0x14016061e
140160450:	4c 8d 68 01          	lea    0x1(%rax),%r13
140160454:	48 8b 49 10          	mov    0x10(%rcx),%rcx
140160458:	48 2b ca             	sub    %rdx,%rcx
14016045b:	48 c1 f9 03          	sar    $0x3,%rcx
14016045f:	48 8b d1             	mov    %rcx,%rdx
140160462:	48 d1 ea             	shr    $1,%rdx
140160465:	49 8b c0             	mov    %r8,%rax
140160468:	48 2b c2             	sub    %rdx,%rax
14016046b:	48 3b c8             	cmp    %rax,%rcx
14016046e:	0f 87 a4 01 00 00    	ja     0x140160618
140160474:	48 8d 04 0a          	lea    (%rdx,%rcx,1),%rax
140160478:	49 8b cd             	mov    %r13,%rcx
14016047b:	49 3b c5             	cmp    %r13,%rax
14016047e:	48 0f 43 c8          	cmovae %rax,%rcx
140160482:	49 3b c8             	cmp    %r8,%rcx
140160485:	0f 87 8d 01 00 00    	ja     0x140160618
14016048b:	4c 8d 34 cd 00 00 00 	lea    0x0(,%rcx,8),%r14
140160492:	00
140160493:	45 33 c9             	xor    %r9d,%r9d
140160496:	49 81 fe 00 10 00 00 	cmp    $0x1000,%r14
14016049d:	72 2c                	jb     0x1401604cb
14016049f:	49 8d 4e 27          	lea    0x27(%r14),%rcx
1401604a3:	49 3b ce             	cmp    %r14,%rcx
1401604a6:	0f 86 6c 01 00 00    	jbe    0x140160618
1401604ac:	e8 3f 5e 02 00       	call   0x1401862f0
1401604b1:	48 85 c0             	test   %rax,%rax
1401604b4:	0f 84 58 01 00 00    	je     0x140160612
1401604ba:	48 8d 70 27          	lea    0x27(%rax),%rsi
1401604be:	48 83 e6 e0          	and    $0xffffffffffffffe0,%rsi
1401604c2:	48 89 46 f8          	mov    %rax,-0x8(%rsi)
1401604c6:	45 33 c9             	xor    %r9d,%r9d
1401604c9:	eb 18                	jmp    0x1401604e3
1401604cb:	4d 85 f6             	test   %r14,%r14
1401604ce:	74 10                	je     0x1401604e0
1401604d0:	49 8b ce             	mov    %r14,%rcx
1401604d3:	e8 18 5e 02 00       	call   0x1401862f0
1401604d8:	48 8b f0             	mov    %rax,%rsi
1401604db:	45 33 c9             	xor    %r9d,%r9d
1401604de:	eb 03                	jmp    0x1401604e3
1401604e0:	49 8b f1             	mov    %r9,%rsi
1401604e3:	4c 8d 24 ee          	lea    (%rsi,%rbp,8),%r12
1401604e7:	49 8b 07             	mov    (%r15),%rax
1401604ea:	49 89 04 24          	mov    %rax,(%r12)
1401604ee:	4d 89 0f             	mov    %r9,(%r15)
1401604f1:	4c 8b 47 08          	mov    0x8(%rdi),%r8
1401604f5:	48 8b 07             	mov    (%rdi),%rax
1401604f8:	48 8b d6             	mov    %rsi,%rdx
1401604fb:	49 3b d8             	cmp    %r8,%rbx
1401604fe:	75 28                	jne    0x140160528
140160500:	49 3b c0             	cmp    %r8,%rax
140160503:	74 6e                	je     0x140160573
140160505:	66 66 66 0f 1f 84 00 	data16 data16 nopw 0x0(%rax,%rax,1)
14016050c:	00 00 00 00
140160510:	48 8b 08             	mov    (%rax),%rcx
140160513:	48 89 0a             	mov    %rcx,(%rdx)
140160516:	4c 89 08             	mov    %r9,(%rax)
140160519:	48 8d 52 08          	lea    0x8(%rdx),%rdx
14016051d:	48 83 c0 08          	add    $0x8,%rax
140160521:	49 3b c0             	cmp    %r8,%rax
140160524:	75 ea                	jne    0x140160510
140160526:	eb 4b                	jmp    0x140160573
140160528:	48 3b c3             	cmp    %rbx,%rax
14016052b:	74 19                	je     0x140160546
14016052d:	0f 1f 00             	nopl   (%rax)
140160530:	48 8b 08             	mov    (%rax),%rcx
140160533:	48 89 0a             	mov    %rcx,(%rdx)
140160536:	4c 89 08             	mov    %r9,(%rax)
140160539:	48 8d 52 08          	lea    0x8(%rdx),%rdx
14016053d:	48 83 c0 08          	add    $0x8,%rax
140160541:	48 3b c3             	cmp    %rbx,%rax
140160544:	75 ea                	jne    0x140160530
140160546:	49 8d 4c 24 08       	lea    0x8(%r12),%rcx
14016054b:	48 8b 57 08          	mov    0x8(%rdi),%rdx
14016054f:	48 3b da             	cmp    %rdx,%rbx
140160552:	74 1f                	je     0x140160573
140160554:	48 2b cb             	sub    %rbx,%rcx
140160557:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
14016055e:	00 00
140160560:	48 8b 03             	mov    (%rbx),%rax
140160563:	48 89 04 0b          	mov    %rax,(%rbx,%rcx,1)
140160567:	4c 89 0b             	mov    %r9,(%rbx)
14016056a:	48 83 c3 08          	add    $0x8,%rbx
14016056e:	48 3b da             	cmp    %rdx,%rbx
140160571:	75 ed                	jne    0x140160560
140160573:	48 8b 1f             	mov    (%rdi),%rbx
140160576:	48 85 db             	test   %rbx,%rbx
140160579:	74 64                	je     0x1401605df
14016057b:	48 8b 6f 08          	mov    0x8(%rdi),%rbp
14016057f:	48 3b dd             	cmp    %rbp,%rbx
140160582:	74 27                	je     0x1401605ab
140160584:	48 8b 13             	mov    (%rbx),%rdx
140160587:	48 85 d2             	test   %rdx,%rdx
14016058a:	74 16                	je     0x1401605a2
14016058c:	48 8b 42 08          	mov    0x8(%rdx),%rax
140160590:	48 63 48 04          	movslq 0x4(%rax),%rcx
140160594:	48 83 c2 08          	add    $0x8,%rdx
140160598:	48 03 ca             	add    %rdx,%rcx
14016059b:	48 8b 01             	mov    (%rcx),%rax
14016059e:	ff 50 08             	call   *0x8(%rax)
1401605a1:	90                   	nop
1401605a2:	48 83 c3 08          	add    $0x8,%rbx
1401605a6:	48 3b dd             	cmp    %rbp,%rbx
1401605a9:	75 d9                	jne    0x140160584
1401605ab:	48 8b 0f             	mov    (%rdi),%rcx
1401605ae:	48 8b 57 10          	mov    0x10(%rdi),%rdx
1401605b2:	48 2b d1             	sub    %rcx,%rdx
1401605b5:	48 83 e2 f8          	and    $0xfffffffffffffff8,%rdx
1401605b9:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
1401605c0:	72 18                	jb     0x1401605da
1401605c2:	48 83 c2 27          	add    $0x27,%rdx
1401605c6:	4c 8b 41 f8          	mov    -0x8(%rcx),%r8
1401605ca:	49 2b c8             	sub    %r8,%rcx
1401605cd:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
1401605d1:	48 83 f8 1f          	cmp    $0x1f,%rax
1401605d5:	77 3b                	ja     0x140160612
1401605d7:	49 8b c8             	mov    %r8,%rcx
1401605da:	e8 6d 60 02 00       	call   0x14018664c
1401605df:	48 89 37             	mov    %rsi,(%rdi)
1401605e2:	4a 8d 0c ee          	lea    (%rsi,%r13,8),%rcx
1401605e6:	48 89 4f 08          	mov    %rcx,0x8(%rdi)
1401605ea:	49 8d 0c 36          	lea    (%r14,%rsi,1),%rcx
1401605ee:	48 89 4f 10          	mov    %rcx,0x10(%rdi)
1401605f2:	49 8b c4             	mov    %r12,%rax
1401605f5:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
1401605fa:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
1401605ff:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
140160604:	48 83 c4 20          	add    $0x20,%rsp
140160608:	41 5f                	pop    %r15
14016060a:	41 5e                	pop    %r14
14016060c:	41 5d                	pop    %r13
14016060e:	41 5c                	pop    %r12
140160610:	5f                   	pop    %rdi
140160611:	c3                   	ret
140160612:	e8 6d af 02 00       	call   0x14018b584
140160617:	cc                   	int3
140160618:	e8 33 59 f6 ff       	call   0x1400c5f50
14016061d:	cc                   	int3
14016061e:	e8 8d da f6 ff       	call   0x1400ce0b0
140160623:	cc                   	int3
140160624:	cc                   	int3
140160625:	cc                   	int3
140160626:	cc                   	int3
140160627:	cc                   	int3
140160628:	cc                   	int3
140160629:	cc                   	int3
14016062a:	cc                   	int3
14016062b:	cc                   	int3
14016062c:	cc                   	int3
14016062d:	cc                   	int3
14016062e:	cc                   	int3
14016062f:	cc                   	int3
140160630:	45 33 c9             	xor    %r9d,%r9d
140160633:	4c 8b c1             	mov    %rcx,%r8
140160636:	85 d2                	test   %edx,%edx
140160638:	74 16                	je     0x140160650
14016063a:	48 8d 05 e7 ca 0b 00 	lea    0xbcae7(%rip),%rax        # 0x14021d128
140160641:	48 89 41 08          	mov    %rax,0x8(%rcx)
140160645:	48 8d 05 9c b8 0d 00 	lea    0xdb89c(%rip),%rax        # 0x14023bee8
14016064c:	48 89 41 18          	mov    %rax,0x18(%rcx)
140160650:	48 8d 05 81 a8 0b 00 	lea    0xba881(%rip),%rax        # 0x14021aed8
140160657:	48 89 01             	mov    %rax,(%rcx)
14016065a:	48 8b 41 08          	mov    0x8(%rcx),%rax
14016065e:	48 63 48 04          	movslq 0x4(%rax),%rcx
140160662:	48 8d 05 9f 9c 0b 00 	lea    0xb9c9f(%rip),%rax        # 0x14021a308
140160669:	4a 89 44 01 08       	mov    %rax,0x8(%rcx,%r8,1)
14016066e:	48 8d 05 63 a8 0b 00 	lea    0xba863(%rip),%rax        # 0x14021aed8
140160675:	49 89 00             	mov    %rax,(%r8)
140160678:	49 8b 40 08          	mov    0x8(%r8),%rax
14016067c:	48 63 48 04          	movslq 0x4(%rax),%rcx
140160680:	48 8d 05 01 ca 0b 00 	lea    0xbca01(%rip),%rax        # 0x14021d088
140160687:	4a 89 44 01 08       	mov    %rax,0x8(%rcx,%r8,1)
14016068c:	48 8d 05 1d ca 0b 00 	lea    0xbca1d(%rip),%rax        # 0x14021d0b0
140160693:	45 89 48 10          	mov    %r9d,0x10(%r8)
140160697:	49 89 00             	mov    %rax,(%r8)
14016069a:	49 8b 40 08          	mov    0x8(%r8),%rax
14016069e:	48 63 48 04          	movslq 0x4(%rax),%rcx
1401606a2:	48 8d 05 57 ca 0b 00 	lea    0xbca57(%rip),%rax        # 0x14021d100
1401606a9:	4a 89 44 01 08       	mov    %rax,0x8(%rcx,%r8,1)
1401606ae:	49 8b c0             	mov    %r8,%rax
1401606b1:	c3                   	ret
1401606b2:	cc                   	int3
1401606b3:	cc                   	int3
1401606b4:	cc                   	int3
1401606b5:	cc                   	int3
1401606b6:	cc                   	int3
1401606b7:	cc                   	int3
1401606b8:	cc                   	int3
1401606b9:	cc                   	int3
1401606ba:	cc                   	int3
1401606bb:	cc                   	int3
1401606bc:	cc                   	int3
1401606bd:	cc                   	int3
1401606be:	cc                   	int3
1401606bf:	cc                   	int3
1401606c0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1401606c5:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
1401606ca:	57                   	push   %rdi
1401606cb:	48 83 ec 20          	sub    $0x20,%rsp
1401606cf:	8b fa                	mov    %edx,%edi
1401606d1:	48 8b d9             	mov    %rcx,%rbx
1401606d4:	48 8d 05 d5 c9 0b 00 	lea    0xbc9d5(%rip),%rax        # 0x14021d0b0
1401606db:	48 89 41 e8          	mov    %rax,-0x18(%rcx)
1401606df:	4c 8b 41 f0          	mov    -0x10(%rcx),%r8
1401606e3:	4d 63 48 04          	movslq 0x4(%r8),%r9
1401606e7:	48 8d 05 12 ca 0b 00 	lea    0xbca12(%rip),%rax        # 0x14021d100
1401606ee:	49 89 44 09 f0       	mov    %rax,-0x10(%r9,%rcx,1)
1401606f3:	e8 d8 57 f6 ff       	call   0x1400c5ed0
1401606f8:	90                   	nop
1401606f9:	48 8d 05 e8 b7 0d 00 	lea    0xdb7e8(%rip),%rax        # 0x14023bee8
140160700:	48 89 03             	mov    %rax,(%rbx)
140160703:	40 f6 c7 01          	test   $0x1,%dil
140160707:	74 0e                	je     0x140160717
140160709:	ba 20 00 00 00       	mov    $0x20,%edx
14016070e:	48 8d 4b e8          	lea    -0x18(%rbx),%rcx
140160712:	e8 35 5f 02 00       	call   0x14018664c
140160717:	48 8d 43 e8          	lea    -0x18(%rbx),%rax
14016071b:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140160720:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140160725:	48 83 c4 20          	add    $0x20,%rsp
140160729:	5f                   	pop    %rdi
14016072a:	c3                   	ret
14016072b:	cc                   	int3
14016072c:	cc                   	int3
14016072d:	cc                   	int3
14016072e:	cc                   	int3
14016072f:	cc                   	int3
140160730:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140160735:	57                   	push   %rdi
140160736:	48 83 ec 30          	sub    $0x30,%rsp
14016073a:	48 8b fa             	mov    %rdx,%rdi
14016073d:	48 8b d9             	mov    %rcx,%rbx
140160740:	e8 8b 57 f6 ff       	call   0x1400c5ed0
140160745:	48 8b 4b f8          	mov    -0x8(%rbx),%rcx
140160749:	48 83 39 58          	cmpq   $0x58,(%rcx)
14016074d:	72 24                	jb     0x140160773
14016074f:	48 8b 41 50          	mov    0x50(%rcx),%rax
140160753:	48 85 c0             	test   %rax,%rax
140160756:	74 1b                	je     0x140160773
140160758:	ff d0                	call   *%rax
14016075a:	48 8b d0             	mov    %rax,%rdx
14016075d:	48 8b cf             	mov    %rdi,%rcx
140160760:	e8 fb bf fd ff       	call   0x14013c760
140160765:	48 8b c7             	mov    %rdi,%rax
140160768:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
14016076d:	48 83 c4 30          	add    $0x30,%rsp
140160771:	5f                   	pop    %rdi
140160772:	c3                   	ret
140160773:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140160778:	48 8b c7             	mov    %rdi,%rax
14016077b:	48 c7 07 00 00 00 00 	movq   $0x0,(%rdi)
140160782:	48 83 c4 30          	add    $0x30,%rsp
140160786:	5f                   	pop    %rdi
140160787:	c3                   	ret
140160788:	cc                   	int3
140160789:	cc                   	int3
14016078a:	cc                   	int3
14016078b:	cc                   	int3
14016078c:	cc                   	int3
14016078d:	cc                   	int3
14016078e:	cc                   	int3
14016078f:	cc                   	int3
140160790:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140160795:	55                   	push   %rbp
140160796:	56                   	push   %rsi
140160797:	57                   	push   %rdi
140160798:	41 56                	push   %r14
14016079a:	41 57                	push   %r15
14016079c:	48 83 ec 20          	sub    $0x20,%rsp
1401607a0:	48 8b da             	mov    %rdx,%rbx
1401607a3:	48 8b f9             	mov    %rcx,%rdi
1401607a6:	45 33 ff             	xor    %r15d,%r15d
1401607a9:	e8 22 57 f6 ff       	call   0x1400c5ed0
1401607ae:	4c 8b 77 f8          	mov    -0x8(%rdi),%r14
1401607b2:	49 83 3e 70          	cmpq   $0x70,(%r14)
1401607b6:	0f 82 5b 01 00 00    	jb     0x140160917
1401607bc:	4d 39 7e 68          	cmp    %r15,0x68(%r14)
1401607c0:	0f 84 51 01 00 00    	je     0x140160917
1401607c6:	48 8b 6b 08          	mov    0x8(%rbx),%rbp
1401607ca:	48 2b 2b             	sub    (%rbx),%rbp
1401607cd:	48 c1 fd 03          	sar    $0x3,%rbp
1401607d1:	48 8b 07             	mov    (%rdi),%rax
1401607d4:	48 8b cf             	mov    %rdi,%rcx
1401607d7:	ff 50 38             	call   *0x38(%rax)
1401607da:	48 8b c8             	mov    %rax,%rcx
1401607dd:	48 3b c5             	cmp    %rbp,%rax
1401607e0:	48 0f 42 cd          	cmovb  %rbp,%rcx
1401607e4:	48 89 4c 24 50       	mov    %rcx,0x50(%rsp)
1401607e9:	41 8b f7             	mov    %r15d,%esi
1401607ec:	48 85 c9             	test   %rcx,%rcx
1401607ef:	0f 84 86 00 00 00    	je     0x14016087b
1401607f5:	b8 08 00 00 00       	mov    $0x8,%eax
1401607fa:	48 f7 e1             	mul    %rcx
1401607fd:	48 c7 c1 ff ff ff ff 	mov    $0xffffffffffffffff,%rcx
140160804:	48 0f 40 c1          	cmovo  %rcx,%rax
140160808:	48 8b c8             	mov    %rax,%rcx
14016080b:	e8 08 61 02 00       	call   0x140186918
140160810:	48 8b f0             	mov    %rax,%rsi
140160813:	48 85 c0             	test   %rax,%rax
140160816:	74 63                	je     0x14016087b
140160818:	4c 8b 44 24 50       	mov    0x50(%rsp),%r8
14016081d:	4e 8d 04 c5 00 00 00 	lea    0x0(,%r8,8),%r8
140160824:	00
140160825:	33 d2                	xor    %edx,%edx
140160827:	48 8b c8             	mov    %rax,%rcx
14016082a:	e8 41 82 02 00       	call   0x140188a70
14016082f:	48 85 ed             	test   %rbp,%rbp
140160832:	74 47                	je     0x14016087b
140160834:	41 8b ff             	mov    %r15d,%edi
140160837:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
14016083e:	00 00
140160840:	48 8b 03             	mov    (%rbx),%rax
140160843:	48 8b 14 f8          	mov    (%rax,%rdi,8),%rdx
140160847:	48 89 54 24 60       	mov    %rdx,0x60(%rsp)
14016084c:	48 85 d2             	test   %rdx,%rdx
14016084f:	74 14                	je     0x140160865
140160851:	48 8b 42 08          	mov    0x8(%rdx),%rax
140160855:	48 63 48 04          	movslq 0x4(%rax),%rcx
140160859:	48 83 c2 08          	add    $0x8,%rdx
14016085d:	48 03 ca             	add    %rdx,%rcx
140160860:	48 8b 01             	mov    (%rcx),%rax
140160863:	ff 10                	call   *(%rax)
140160865:	48 8d 4c 24 60       	lea    0x60(%rsp),%rcx
14016086a:	e8 41 13 fe ff       	call   0x140141bb0
14016086f:	48 89 04 fe          	mov    %rax,(%rsi,%rdi,8)
140160873:	48 ff c7             	inc    %rdi