140028585:	48 8b 18             	mov    (%rax),%rbx
140028588:	83 e7 f7             	and    $0xfffffff7,%edi
14002858b:	89 7c 24 20          	mov    %edi,0x20(%rsp)
14002858f:	48 85 f6             	test   %rsi,%rsi
140028592:	74 15                	je     0x1400285a9
140028594:	48 8b 46 08          	mov    0x8(%rsi),%rax
140028598:	48 63 48 04          	movslq 0x4(%rax),%rcx
14002859c:	48 83 c1 08          	add    $0x8,%rcx
1400285a0:	48 03 ce             	add    %rsi,%rcx
1400285a3:	48 8b 01             	mov    (%rcx),%rax
1400285a6:	ff 50 08             	call   *0x8(%rax)
1400285a9:	48 8b c3             	mov    %rbx,%rax
1400285ac:	48 8b 5c 24 78       	mov    0x78(%rsp),%rbx
1400285b1:	48 83 c4 40          	add    $0x40,%rsp
1400285b5:	41 5f                	pop    %r15
1400285b7:	41 5e                	pop    %r14
1400285b9:	5f                   	pop    %rdi
1400285ba:	5e                   	pop    %rsi
1400285bb:	5d                   	pop    %rbp
1400285bc:	c3                   	ret
1400285bd:	33 c0                	xor    %eax,%eax
1400285bf:	48 8b 5c 24 78       	mov    0x78(%rsp),%rbx
1400285c4:	48 83 c4 40          	add    $0x40,%rsp
1400285c8:	41 5f                	pop    %r15
1400285ca:	41 5e                	pop    %r14
1400285cc:	5f                   	pop    %rdi
1400285cd:	5e                   	pop    %rsi
1400285ce:	5d                   	pop    %rbp
1400285cf:	c3                   	ret
1400285d0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1400285d5:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
1400285da:	56                   	push   %rsi
1400285db:	57                   	push   %rdi
1400285dc:	41 54                	push   %r12
1400285de:	41 56                	push   %r14
1400285e0:	41 57                	push   %r15
1400285e2:	48 83 ec 50          	sub    $0x50,%rsp
1400285e6:	49 8b d9             	mov    %r9,%rbx
1400285e9:	45 8b e0             	mov    %r8d,%r12d
1400285ec:	48 8b ea             	mov    %rdx,%rbp
1400285ef:	4c 8b f1             	mov    %rcx,%r14
1400285f2:	c7 44 24 20 00 00 00 	movl   $0x0,0x20(%rsp)
1400285f9:	00
1400285fa:	e8 61 8f fd ff       	call   0x140001560
1400285ff:	4d 85 f6             	test   %r14,%r14
140028602:	0f 84 b6 00 00 00    	je     0x1400286be
140028608:	48 85 ed             	test   %rbp,%rbp
14002860b:	0f 84 ad 00 00 00    	je     0x1400286be
140028611:	48 85 db             	test   %rbx,%rbx
140028614:	0f 84 a4 00 00 00    	je     0x1400286be
14002861a:	4d 8b 76 f0          	mov    -0x10(%r14),%r14
14002861e:	4c 89 74 24 30       	mov    %r14,0x30(%rsp)
140028623:	4d 85 f6             	test   %r14,%r14
140028626:	74 14                	je     0x14002863c
140028628:	49 8b 46 08          	mov    0x8(%r14),%rax
14002862c:	48 63 48 04          	movslq 0x4(%rax),%rcx
140028630:	48 83 c1 08          	add    $0x8,%rcx
140028634:	49 03 ce             	add    %r14,%rcx
140028637:	48 8b 01             	mov    (%rcx),%rax
14002863a:	ff 10                	call   *(%rax)
14002863c:	be 10 00 00 00       	mov    $0x10,%esi
140028641:	89 74 24 20          	mov    %esi,0x20(%rsp)
140028645:	49 8b 06             	mov    (%r14),%rax
140028648:	48 8b 78 10          	mov    0x10(%rax),%rdi
14002864c:	48 8d 84 24 80 00 00 	lea    0x80(%rsp),%rax
140028653:	00
140028654:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
140028659:	48 8b d3             	mov    %rbx,%rdx
14002865c:	48 8d 8c 24 80 00 00 	lea    0x80(%rsp),%rcx
140028663:	00
140028664:	e8 e7 fb ff ff       	call   0x140028250
140028669:	48 8b d8             	mov    %rax,%rbx
14002866c:	48 8d 44 24 28       	lea    0x28(%rsp),%rax
140028671:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
140028676:	48 8b d5             	mov    %rbp,%rdx
140028679:	48 8d 4c 24 28       	lea    0x28(%rsp),%rcx
14002867e:	e8 5d c4 fd ff       	call   0x140004ae0
140028683:	90                   	nop
140028684:	45 85 e4             	test   %r12d,%r12d
140028687:	41 0f 95 c0          	setne  %r8b
14002868b:	4c 8b cb             	mov    %rbx,%r9
14002868e:	48 8b d0             	mov    %rax,%rdx
140028691:	49 8b ce             	mov    %r14,%rcx
140028694:	ff d7                	call   *%rdi
140028696:	0f b6 d8             	movzbl %al,%ebx
140028699:	83 e6 ef             	and    $0xffffffef,%esi
14002869c:	89 74 24 20          	mov    %esi,0x20(%rsp)
1400286a0:	4d 85 f6             	test   %r14,%r14
1400286a3:	74 15                	je     0x1400286ba
1400286a5:	49 8b 4e 08          	mov    0x8(%r14),%rcx
1400286a9:	48 63 49 04          	movslq 0x4(%rcx),%rcx
1400286ad:	48 83 c1 08          	add    $0x8,%rcx
1400286b1:	49 03 ce             	add    %r14,%rcx
1400286b4:	48 8b 11             	mov    (%rcx),%rdx
1400286b7:	ff 52 08             	call   *0x8(%rdx)
1400286ba:	8b c3                	mov    %ebx,%eax
1400286bc:	eb 02                	jmp    0x1400286c0
1400286be:	33 c0                	xor    %eax,%eax
1400286c0:	4c 8d 5c 24 50       	lea    0x50(%rsp),%r11
1400286c5:	49 8b 5b 38          	mov    0x38(%r11),%rbx
1400286c9:	49 8b 6b 40          	mov    0x40(%r11),%rbp
1400286cd:	49 8b e3             	mov    %r11,%rsp
1400286d0:	41 5f                	pop    %r15
1400286d2:	41 5e                	pop    %r14
1400286d4:	41 5c                	pop    %r12
1400286d6:	5f                   	pop    %rdi
1400286d7:	5e                   	pop    %rsi
1400286d8:	c3                   	ret
1400286d9:	cc                   	int3
1400286da:	cc                   	int3
1400286db:	cc                   	int3
1400286dc:	cc                   	int3
1400286dd:	cc                   	int3
1400286de:	cc                   	int3
1400286df:	cc                   	int3
1400286e0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1400286e5:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1400286ea:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
1400286ef:	55                   	push   %rbp
1400286f0:	41 54                	push   %r12
1400286f2:	41 55                	push   %r13
1400286f4:	41 56                	push   %r14
1400286f6:	41 57                	push   %r15
1400286f8:	48 8d 6c 24 d1       	lea    -0x2f(%rsp),%rbp
1400286fd:	48 81 ec 90 00 00 00 	sub    $0x90,%rsp
140028704:	4d 8b f9             	mov    %r9,%r15
140028707:	4d 8b e0             	mov    %r8,%r12
14002870a:	4c 8b ea             	mov    %rdx,%r13
14002870d:	48 8b f1             	mov    %rcx,%rsi
140028710:	c7 45 cf 00 00 00 00 	movl   $0x0,-0x31(%rbp)
140028717:	e8 44 8e fd ff       	call   0x140001560
14002871c:	48 85 f6             	test   %rsi,%rsi
14002871f:	0f 84 5d 01 00 00    	je     0x140028882
140028725:	4d 85 ed             	test   %r13,%r13
140028728:	0f 84 54 01 00 00    	je     0x140028882
14002872e:	4d 85 e4             	test   %r12,%r12
140028731:	0f 84 4b 01 00 00    	je     0x140028882
140028737:	4d 85 ff             	test   %r15,%r15
14002873a:	0f 84 42 01 00 00    	je     0x140028882
140028740:	48 8b 5d 7f          	mov    0x7f(%rbp),%rbx
140028744:	48 85 db             	test   %rbx,%rbx
140028747:	0f 84 35 01 00 00    	je     0x140028882
14002874d:	48 8b 76 f0          	mov    -0x10(%rsi),%rsi
140028751:	48 89 75 0f          	mov    %rsi,0xf(%rbp)
140028755:	48 85 f6             	test   %rsi,%rsi
140028758:	74 14                	je     0x14002876e
14002875a:	48 8b 46 08          	mov    0x8(%rsi),%rax
14002875e:	48 63 48 04          	movslq 0x4(%rax),%rcx
140028762:	48 83 c1 08          	add    $0x8,%rcx
140028766:	48 03 ce             	add    %rsi,%rcx
140028769:	48 8b 01             	mov    (%rcx),%rax
14002876c:	ff 10                	call   *(%rax)
14002876e:	41 be 40 00 00 00    	mov    $0x40,%r14d
140028774:	44 89 75 cf          	mov    %r14d,-0x31(%rbp)
140028778:	48 8b 06             	mov    (%rsi),%rax
14002877b:	48 8b 78 18          	mov    0x18(%rax),%rdi
14002877f:	48 8d 45 5f          	lea    0x5f(%rbp),%rax
140028783:	48 89 45 17          	mov    %rax,0x17(%rbp)
140028787:	48 8b d3             	mov    %rbx,%rdx
14002878a:	48 8d 4d 5f          	lea    0x5f(%rbp),%rcx
14002878e:	e8 9d fb ff ff       	call   0x140028330
140028793:	48 8b d8             	mov    %rax,%rbx
140028796:	48 8d 05 73 2e 01 00 	lea    0x12e73(%rip),%rax        # 0x14003b610
14002879d:	48 89 45 ef          	mov    %rax,-0x11(%rbp)
1400287a1:	48 c7 45 f7 00 00 00 	movq   $0x0,-0x9(%rbp)
1400287a8:	00
1400287a9:	c6 45 ff 00          	movb   $0x0,-0x1(%rbp)
1400287ad:	4c 89 7d f7          	mov    %r15,-0x9(%rbp)
1400287b1:	c6 45 ff 00          	movb   $0x0,-0x1(%rbp)
1400287b5:	48 89 45 d7          	mov    %rax,-0x29(%rbp)
1400287b9:	45 33 ff             	xor    %r15d,%r15d
1400287bc:	4c 89 7d df          	mov    %r15,-0x21(%rbp)
1400287c0:	44 88 7d e7          	mov    %r15b,-0x19(%rbp)
1400287c4:	4c 89 65 df          	mov    %r12,-0x21(%rbp)
1400287c8:	44 88 7d e7          	mov    %r15b,-0x19(%rbp)
1400287cc:	48 8d 45 07          	lea    0x7(%rbp),%rax
1400287d0:	48 89 45 1f          	mov    %rax,0x1f(%rbp)
1400287d4:	49 8b d5             	mov    %r13,%rdx
1400287d7:	48 8d 4d 07          	lea    0x7(%rbp),%rcx
1400287db:	e8 00 c3 fd ff       	call   0x140004ae0
1400287e0:	90                   	nop
1400287e1:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
1400287e6:	4c 8d 4d ef          	lea    -0x11(%rbp),%r9
1400287ea:	4c 8d 45 d7          	lea    -0x29(%rbp),%r8
1400287ee:	48 8b d0             	mov    %rax,%rdx
1400287f1:	48 8b ce             	mov    %rsi,%rcx
1400287f4:	ff d7                	call   *%rdi
1400287f6:	0f b6 d8             	movzbl %al,%ebx
1400287f9:	48 8d 3d 10 2e 01 00 	lea    0x12e10(%rip),%rdi        # 0x14003b610
140028800:	48 89 7d d7          	mov    %rdi,-0x29(%rbp)
140028804:	48 8b 4d df          	mov    -0x21(%rbp),%rcx
140028808:	48 85 c9             	test   %rcx,%rcx
14002880b:	74 21                	je     0x14002882e
14002880d:	44 38 7d e7          	cmp    %r15b,-0x19(%rbp)
140028811:	74 13                	je     0x140028826
140028813:	e8 7b ab fd ff       	call   0x140003393
140028818:	ba 18 00 00 00       	mov    $0x18,%edx
14002881d:	48 8b 4d df          	mov    -0x21(%rbp),%rcx
140028821:	e8 8e ea 00 00       	call   0x1400372b4
140028826:	4c 89 7d df          	mov    %r15,-0x21(%rbp)
14002882a:	c6 45 e7 00          	movb   $0x0,-0x19(%rbp)
14002882e:	48 89 7d ef          	mov    %rdi,-0x11(%rbp)
140028832:	48 8b 4d f7          	mov    -0x9(%rbp),%rcx
140028836:	48 85 c9             	test   %rcx,%rcx
140028839:	74 21                	je     0x14002885c
14002883b:	80 7d ff 00          	cmpb   $0x0,-0x1(%rbp)
14002883f:	74 13                	je     0x140028854
140028841:	e8 4d ab fd ff       	call   0x140003393
140028846:	ba 18 00 00 00       	mov    $0x18,%edx
14002884b:	48 8b 4d f7          	mov    -0x9(%rbp),%rcx
14002884f:	e8 60 ea 00 00       	call   0x1400372b4
140028854:	4c 89 7d f7          	mov    %r15,-0x9(%rbp)
140028858:	c6 45 ff 00          	movb   $0x0,-0x1(%rbp)
14002885c:	41 83 e6 bf          	and    $0xffffffbf,%r14d
140028860:	44 89 75 cf          	mov    %r14d,-0x31(%rbp)
140028864:	48 85 f6             	test   %rsi,%rsi
140028867:	74 15                	je     0x14002887e
140028869:	48 8b 46 08          	mov    0x8(%rsi),%rax
14002886d:	48 63 48 04          	movslq 0x4(%rax),%rcx
140028871:	48 83 c1 08          	add    $0x8,%rcx
140028875:	48 03 ce             	add    %rsi,%rcx
140028878:	48 8b 01             	mov    (%rcx),%rax
14002887b:	ff 50 08             	call   *0x8(%rax)
14002887e:	8b c3                	mov    %ebx,%eax
140028880:	eb 02                	jmp    0x140028884
140028882:	33 c0                	xor    %eax,%eax
140028884:	4c 8d 9c 24 90 00 00 	lea    0x90(%rsp),%r11
14002888b:	00
14002888c:	49 8b 5b 38          	mov    0x38(%r11),%rbx
140028890:	49 8b 73 40          	mov    0x40(%r11),%rsi
140028894:	49 8b 7b 48          	mov    0x48(%r11),%rdi
140028898:	49 8b e3             	mov    %r11,%rsp
14002889b:	41 5f                	pop    %r15
14002889d:	41 5e                	pop    %r14
14002889f:	41 5d                	pop    %r13
1400288a1:	41 5c                	pop    %r12
1400288a3:	5d                   	pop    %rbp
1400288a4:	c3                   	ret
1400288a5:	cc                   	int3
1400288a6:	cc                   	int3
1400288a7:	cc                   	int3
1400288a8:	cc                   	int3
1400288a9:	cc                   	int3
1400288aa:	cc                   	int3
1400288ab:	cc                   	int3
1400288ac:	cc                   	int3
1400288ad:	cc                   	int3
1400288ae:	cc                   	int3
1400288af:	cc                   	int3
1400288b0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1400288b5:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
1400288ba:	56                   	push   %rsi
1400288bb:	57                   	push   %rdi
1400288bc:	41 54                	push   %r12
1400288be:	41 56                	push   %r14
1400288c0:	41 57                	push   %r15
1400288c2:	48 83 ec 50          	sub    $0x50,%rsp
1400288c6:	45 8b e1             	mov    %r9d,%r12d
1400288c9:	49 8b d8             	mov    %r8,%rbx
1400288cc:	48 8b ea             	mov    %rdx,%rbp
1400288cf:	4c 8b f1             	mov    %rcx,%r14
1400288d2:	c7 44 24 20 00 00 00 	movl   $0x0,0x20(%rsp)
1400288d9:	00
1400288da:	e8 81 8c fd ff       	call   0x140001560
1400288df:	4d 85 f6             	test   %r14,%r14
1400288e2:	0f 84 af 00 00 00    	je     0x140028997
1400288e8:	48 85 ed             	test   %rbp,%rbp
1400288eb:	0f 84 a6 00 00 00    	je     0x140028997
1400288f1:	48 85 db             	test   %rbx,%rbx
1400288f4:	0f 84 9d 00 00 00    	je     0x140028997
1400288fa:	4d 8b 76 f0          	mov    -0x10(%r14),%r14
1400288fe:	4c 89 74 24 30       	mov    %r14,0x30(%rsp)
140028903:	4d 85 f6             	test   %r14,%r14
140028906:	74 14                	je     0x14002891c
140028908:	49 8b 46 08          	mov    0x8(%r14),%rax
14002890c:	48 63 48 04          	movslq 0x4(%rax),%rcx
140028910:	48 83 c1 08          	add    $0x8,%rcx
140028914:	49 03 ce             	add    %r14,%rcx
140028917:	48 8b 01             	mov    (%rcx),%rax
14002891a:	ff 10                	call   *(%rax)
14002891c:	be 10 00 00 00       	mov    $0x10,%esi
140028921:	89 74 24 20          	mov    %esi,0x20(%rsp)
140028925:	49 8b 06             	mov    (%r14),%rax
140028928:	48 8b 78 08          	mov    0x8(%rax),%rdi
14002892c:	48 8d 84 24 80 00 00 	lea    0x80(%rsp),%rax
140028933:	00
140028934:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
140028939:	48 8b d3             	mov    %rbx,%rdx
14002893c:	48 8d 8c 24 80 00 00 	lea    0x80(%rsp),%rcx
140028943:	00
140028944:	e8 c7 fa ff ff       	call   0x140028410
140028949:	48 8b d8             	mov    %rax,%rbx
14002894c:	48 8d 44 24 28       	lea    0x28(%rsp),%rax
140028951:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
140028956:	48 8b d5             	mov    %rbp,%rdx
140028959:	48 8d 4c 24 28       	lea    0x28(%rsp),%rcx
14002895e:	e8 7d c1 fd ff       	call   0x140004ae0
140028963:	90                   	nop
140028964:	45 85 e4             	test   %r12d,%r12d
140028967:	41 0f 95 c1          	setne  %r9b
14002896b:	4c 8b c3             	mov    %rbx,%r8
14002896e:	48 8b d0             	mov    %rax,%rdx
140028971:	49 8b ce             	mov    %r14,%rcx
140028974:	ff d7                	call   *%rdi
140028976:	83 e6 ef             	and    $0xffffffef,%esi
140028979:	89 74 24 20          	mov    %esi,0x20(%rsp)
14002897d:	4d 85 f6             	test   %r14,%r14
140028980:	74 15                	je     0x140028997
140028982:	49 8b 46 08          	mov    0x8(%r14),%rax
140028986:	48 63 48 04          	movslq 0x4(%rax),%rcx
14002898a:	48 83 c1 08          	add    $0x8,%rcx
14002898e:	49 03 ce             	add    %r14,%rcx
140028991:	48 8b 01             	mov    (%rcx),%rax
140028994:	ff 50 08             	call   *0x8(%rax)
140028997:	4c 8d 5c 24 50       	lea    0x50(%rsp),%r11
14002899c:	49 8b 5b 38          	mov    0x38(%r11),%rbx
1400289a0:	49 8b 6b 40          	mov    0x40(%r11),%rbp
1400289a4:	49 8b e3             	mov    %r11,%rsp
1400289a7:	41 5f                	pop    %r15
1400289a9:	41 5e                	pop    %r14
1400289ab:	41 5c                	pop    %r12
1400289ad:	5f                   	pop    %rdi
1400289ae:	5e                   	pop    %rsi
1400289af:	c3                   	ret
1400289b0:	40 53                	rex push %rbx
1400289b2:	55                   	push   %rbp
1400289b3:	56                   	push   %rsi
1400289b4:	57                   	push   %rdi
1400289b5:	41 56                	push   %r14
1400289b7:	48 83 ec 30          	sub    $0x30,%rsp
1400289bb:	48 8b ea             	mov    %rdx,%rbp
1400289be:	48 8b f1             	mov    %rcx,%rsi
1400289c1:	c7 44 24 20 00 00 00 	movl   $0x0,0x20(%rsp)
1400289c8:	00
1400289c9:	e8 92 8b fd ff       	call   0x140001560
1400289ce:	48 85 f6             	test   %rsi,%rsi
1400289d1:	74 77                	je     0x140028a4a
1400289d3:	48 85 ed             	test   %rbp,%rbp
1400289d6:	74 72                	je     0x140028a4a
1400289d8:	48 8b 76 f0          	mov    -0x10(%rsi),%rsi
1400289dc:	48 89 74 24 70       	mov    %rsi,0x70(%rsp)
1400289e1:	48 85 f6             	test   %rsi,%rsi
1400289e4:	74 14                	je     0x1400289fa
1400289e6:	48 8b 46 08          	mov    0x8(%rsi),%rax
1400289ea:	48 63 48 04          	movslq 0x4(%rax),%rcx
1400289ee:	48 83 c1 08          	add    $0x8,%rcx
1400289f2:	48 03 ce             	add    %rsi,%rcx
1400289f5:	48 8b 01             	mov    (%rcx),%rax
1400289f8:	ff 10                	call   *(%rax)
1400289fa:	bf 08 00 00 00       	mov    $0x8,%edi