180045708:	48 8b f9             	mov    %rcx,%rdi
18004570b:	e8 1c 00 00 00       	call   0x18004572c
180045710:	f6 c3 01             	test   $0x1,%bl
180045713:	74 08                	je     0x18004571d
180045715:	48 8b cf             	mov    %rdi,%rcx
180045718:	e8 3f 12 00 00       	call   0x18004695c
18004571d:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
180045722:	48 8b c7             	mov    %rdi,%rax
180045725:	48 83 c4 20          	add    $0x20,%rsp
180045729:	5f                   	pop    %rdi
18004572a:	c3                   	ret
18004572b:	cc                   	int3
18004572c:	48 8b c4             	mov    %rsp,%rax
18004572f:	48 89 58 08          	mov    %rbx,0x8(%rax)
180045733:	48 89 68 10          	mov    %rbp,0x10(%rax)
180045737:	48 89 70 18          	mov    %rsi,0x18(%rax)
18004573b:	48 89 78 20          	mov    %rdi,0x20(%rax)
18004573f:	41 56                	push   %r14
180045741:	48 83 ec 20          	sub    $0x20,%rsp
180045745:	48 8d 05 04 dc 0f 00 	lea    0xfdc04(%rip),%rax        # 0x180143350
18004574c:	48 8b f9             	mov    %rcx,%rdi
18004574f:	4c 8d 71 28          	lea    0x28(%rcx),%r14
180045753:	48 89 01             	mov    %rax,(%rcx)
180045756:	49 8b 1e             	mov    (%r14),%rbx
180045759:	eb 37                	jmp    0x180045792
18004575b:	83 7b 14 00          	cmpl   $0x0,0x14(%rbx)
18004575f:	75 2e                	jne    0x18004578f
180045761:	33 f6                	xor    %esi,%esi
180045763:	39 77 44             	cmp    %esi,0x44(%rdi)
180045766:	76 27                	jbe    0x18004578f
180045768:	48 8b 4c f3 18       	mov    0x18(%rbx,%rsi,8),%rcx
18004576d:	48 85 c9             	test   %rcx,%rcx
180045770:	74 16                	je     0x180045788
180045772:	48 8b 01             	mov    (%rcx),%rax
180045775:	ba 01 00 00 00       	mov    $0x1,%edx
18004577a:	48 8b 00             	mov    (%rax),%rax
18004577d:	ff d0                	call   *%rax
18004577f:	0f 1f 00             	nopl   (%rax)
180045782:	48 83 64 f3 18 00    	andq   $0x0,0x18(%rbx,%rsi,8)
180045788:	ff c6                	inc    %esi
18004578a:	3b 77 44             	cmp    0x44(%rdi),%esi
18004578d:	72 d9                	jb     0x180045768
18004578f:	48 8b 1b             	mov    (%rbx),%rbx
180045792:	49 3b de             	cmp    %r14,%rbx
180045795:	75 c4                	jne    0x18004575b
180045797:	48 8d 4f 20          	lea    0x20(%rdi),%rcx
18004579b:	e8 7c e0 ff ff       	call   0x18004381c
1800457a0:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1800457a5:	48 8d 05 84 dc 0f 00 	lea    0xfdc84(%rip),%rax        # 0x180143430
1800457ac:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
1800457b1:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
1800457b6:	48 89 07             	mov    %rax,(%rdi)
1800457b9:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
1800457be:	48 83 c4 20          	add    $0x20,%rsp
1800457c2:	41 5e                	pop    %r14
1800457c4:	c3                   	ret
1800457c5:	cc                   	int3
1800457c6:	cc                   	int3
1800457c7:	cc                   	int3
1800457c8:	48 8b c4             	mov    %rsp,%rax
1800457cb:	48 89 58 08          	mov    %rbx,0x8(%rax)
1800457cf:	48 89 68 18          	mov    %rbp,0x18(%rax)
1800457d3:	48 89 70 20          	mov    %rsi,0x20(%rax)
1800457d7:	89 50 10             	mov    %edx,0x10(%rax)
1800457da:	57                   	push   %rdi
1800457db:	41 54                	push   %r12
1800457dd:	41 55                	push   %r13
1800457df:	41 56                	push   %r14
1800457e1:	41 57                	push   %r15
1800457e3:	48 83 ec 30          	sub    $0x30,%rsp
1800457e7:	45 33 ed             	xor    %r13d,%r13d
1800457ea:	4c 8d 79 28          	lea    0x28(%rcx),%r15
1800457ee:	49 8b 3f             	mov    (%r15),%rdi
1800457f1:	45 33 f6             	xor    %r14d,%r14d
1800457f4:	45 33 c0             	xor    %r8d,%r8d
1800457f7:	48 8b e9             	mov    %rcx,%rbp
1800457fa:	49 3b ff             	cmp    %r15,%rdi
1800457fd:	0f 84 8f 00 00 00    	je     0x180045892
180045803:	83 7f 14 00          	cmpl   $0x0,0x14(%rdi)
180045807:	75 7c                	jne    0x180045885
180045809:	33 f6                	xor    %esi,%esi
18004580b:	39 75 44             	cmp    %esi,0x44(%rbp)
18004580e:	76 75                	jbe    0x180045885
180045810:	4c 8b 64 f7 18       	mov    0x18(%rdi,%rsi,8),%r12
180045815:	4d 85 e4             	test   %r12,%r12
180045818:	74 64                	je     0x18004587e
18004581a:	49 8b 44 24 10       	mov    0x10(%r12),%rax
18004581f:	49 8b cc             	mov    %r12,%rcx
180045822:	49 2b c5             	sub    %r13,%rax
180045825:	4c 03 f0             	add    %rax,%r14
180045828:	49 8b 04 24          	mov    (%r12),%rax
18004582c:	48 8b 40 50          	mov    0x50(%rax),%rax
180045830:	ff d0                	call   *%rax
180045832:	0f 1f 00             	nopl   (%rax)
180045835:	49 8b 1c 24          	mov    (%r12),%rbx
180045839:	4c 8b e8             	mov    %rax,%r13
18004583c:	4d 03 6c 24 10       	add    0x10(%r12),%r13
180045841:	49 8b cc             	mov    %r12,%rcx
180045844:	48 8b 43 50          	mov    0x50(%rbx),%rax
180045848:	ff d0                	call   *%rax
18004584a:	0f 1f 00             	nopl   (%rax)
18004584d:	48 8b 8c 24 80 00 00 	mov    0x80(%rsp),%rcx
180045854:	00
180045855:	4c 8b c8             	mov    %rax,%r9
180045858:	48 8b 43 60          	mov    0x60(%rbx),%rax
18004585c:	45 33 c0             	xor    %r8d,%r8d
18004585f:	8b 54 24 68          	mov    0x68(%rsp),%edx
180045863:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
180045868:	49 8b cc             	mov    %r12,%rcx
18004586b:	ff d0                	call   *%rax
18004586d:	0f 1f 00             	nopl   (%rax)
180045870:	44 8b c0             	mov    %eax,%r8d
180045873:	85 c0                	test   %eax,%eax
180045875:	78 29                	js     0x1800458a0
180045877:	3d 02 00 e7 00       	cmp    $0xe70002,%eax
18004587c:	74 0f                	je     0x18004588d
18004587e:	ff c6                	inc    %esi
180045880:	3b 75 44             	cmp    0x44(%rbp),%esi
180045883:	72 8b                	jb     0x180045810
180045885:	48 8b 3f             	mov    (%rdi),%rdi
180045888:	e9 6d ff ff ff       	jmp    0x1800457fa
18004588d:	45 33 c0             	xor    %r8d,%r8d
180045890:	eb 0e                	jmp    0x1800458a0
180045892:	48 8b 45 08          	mov    0x8(%rbp),%rax
180045896:	48 8b 48 68          	mov    0x68(%rax),%rcx
18004589a:	49 2b cd             	sub    %r13,%rcx
18004589d:	4c 03 f1             	add    %rcx,%r14
1800458a0:	48 8b 84 24 88 00 00 	mov    0x88(%rsp),%rax
1800458a7:	00
1800458a8:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
1800458ad:	48 8b 6c 24 70       	mov    0x70(%rsp),%rbp
1800458b2:	48 8b 74 24 78       	mov    0x78(%rsp),%rsi
1800458b7:	4c 89 30             	mov    %r14,(%rax)
1800458ba:	41 8b c0             	mov    %r8d,%eax
1800458bd:	48 83 c4 30          	add    $0x30,%rsp
1800458c1:	41 5f                	pop    %r15
1800458c3:	41 5e                	pop    %r14
1800458c5:	41 5d                	pop    %r13
1800458c7:	41 5c                	pop    %r12
1800458c9:	5f                   	pop    %rdi
1800458ca:	c3                   	ret
1800458cb:	cc                   	int3
1800458cc:	48 8b c4             	mov    %rsp,%rax
1800458cf:	48 89 58 08          	mov    %rbx,0x8(%rax)
1800458d3:	48 89 68 10          	mov    %rbp,0x10(%rax)
1800458d7:	48 89 70 18          	mov    %rsi,0x18(%rax)
1800458db:	48 89 78 20          	mov    %rdi,0x20(%rax)
1800458df:	41 56                	push   %r14
1800458e1:	48 83 ec 20          	sub    $0x20,%rsp
1800458e5:	48 8d 71 28          	lea    0x28(%rcx),%rsi
1800458e9:	4c 8b f2             	mov    %rdx,%r14
1800458ec:	48 8b 1e             	mov    (%rsi),%rbx
1800458ef:	48 8b e9             	mov    %rcx,%rbp
1800458f2:	eb 30                	jmp    0x180045924
1800458f4:	83 7b 14 00          	cmpl   $0x0,0x14(%rbx)
1800458f8:	75 27                	jne    0x180045921
1800458fa:	33 ff                	xor    %edi,%edi
1800458fc:	39 7d 44             	cmp    %edi,0x44(%rbp)
1800458ff:	76 20                	jbe    0x180045921
180045901:	48 8b 4c fb 18       	mov    0x18(%rbx,%rdi,8),%rcx
180045906:	48 85 c9             	test   %rcx,%rcx
180045909:	74 0f                	je     0x18004591a
18004590b:	48 8b 01             	mov    (%rcx),%rax
18004590e:	49 8b d6             	mov    %r14,%rdx
180045911:	48 8b 40 70          	mov    0x70(%rax),%rax
180045915:	ff d0                	call   *%rax
180045917:	0f 1f 00             	nopl   (%rax)
18004591a:	ff c7                	inc    %edi
18004591c:	3b 7d 44             	cmp    0x44(%rbp),%edi
18004591f:	72 e0                	jb     0x180045901
180045921:	48 8b 1b             	mov    (%rbx),%rbx
180045924:	48 3b de             	cmp    %rsi,%rbx
180045927:	75 cb                	jne    0x1800458f4
180045929:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18004592e:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
180045933:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
180045938:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
18004593d:	48 83 c4 20          	add    $0x20,%rsp
180045941:	41 5e                	pop    %r14
180045943:	c3                   	ret
180045944:	cc                   	int3
180045945:	cc                   	int3
180045946:	cc                   	int3
180045947:	cc                   	int3
180045948:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18004594d:	57                   	push   %rdi
18004594e:	48 83 ec 20          	sub    $0x20,%rsp
180045952:	48 8d 05 7f d9 0f 00 	lea    0xfd97f(%rip),%rax        # 0x1801432d8
180045959:	8b da                	mov    %edx,%ebx
18004595b:	48 89 01             	mov    %rax,(%rcx)
18004595e:	48 8b f9             	mov    %rcx,%rdi
180045961:	e8 c6 fd ff ff       	call   0x18004572c
180045966:	f6 c3 01             	test   $0x1,%bl
180045969:	74 08                	je     0x180045973
18004596b:	48 8b cf             	mov    %rdi,%rcx
18004596e:	e8 e9 0f 00 00       	call   0x18004695c
180045973:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
180045978:	48 8b c7             	mov    %rdi,%rax
18004597b:	48 83 c4 20          	add    $0x20,%rsp
18004597f:	5f                   	pop    %rdi
180045980:	c3                   	ret
180045981:	cc                   	int3
180045982:	cc                   	int3
180045983:	cc                   	int3
180045984:	48 8b c4             	mov    %rsp,%rax
180045987:	48 89 58 10          	mov    %rbx,0x10(%rax)
18004598b:	4c 89 40 18          	mov    %r8,0x18(%rax)
18004598f:	55                   	push   %rbp
180045990:	56                   	push   %rsi
180045991:	57                   	push   %rdi
180045992:	41 56                	push   %r14
180045994:	41 57                	push   %r15
180045996:	48 83 ec 20          	sub    $0x20,%rsp
18004599a:	48 83 61 10 00       	andq   $0x0,0x10(%rcx)
18004599f:	48 8b f2             	mov    %rdx,%rsi
1800459a2:	48 83 60 08 00       	andq   $0x0,0x8(%rax)
1800459a7:	48 8b e9             	mov    %rcx,%rbp
1800459aa:	48 83 60 18 00       	andq   $0x0,0x18(%rax)
1800459af:	4c 89 49 08          	mov    %r9,0x8(%rcx)
1800459b3:	4c 8b 82 e8 00 00 00 	mov    0xe8(%rdx),%r8
1800459ba:	33 d2                	xor    %edx,%edx
1800459bc:	4c 89 41 60          	mov    %r8,0x60(%rcx)
1800459c0:	48 83 c1 20          	add    $0x20,%rcx
1800459c4:	49 8b 41 68          	mov    0x68(%r9),%rax
1800459c8:	49 f7 f0             	div    %r8
1800459cb:	48 8b d0             	mov    %rax,%rdx
1800459ce:	e8 95 dd ff ff       	call   0x180043768
1800459d3:	8b f8                	mov    %eax,%edi
1800459d5:	85 c0                	test   %eax,%eax
1800459d7:	0f 88 92 00 00 00    	js     0x180045a6f
1800459dd:	48 8b 8e c0 00 00 00 	mov    0xc0(%rsi),%rcx
1800459e4:	48 8d 54 24 50       	lea    0x50(%rsp),%rdx
1800459e9:	e8 16 e1 ff ff       	call   0x180043b04
1800459ee:	eb 5d                	jmp    0x180045a4d
1800459f0:	e8 7b 8f 0f 00       	call   0x18013e970
1800459f5:	4c 8b 45 08          	mov    0x8(%rbp),%r8
1800459f9:	4c 8d 4c 24 60       	lea    0x60(%rsp),%r9
1800459fe:	48 8b ce             	mov    %rsi,%rcx
180045a01:	4c 8b 70 28          	mov    0x28(%rax),%r14
180045a05:	49 8b d6             	mov    %r14,%rdx
180045a08:	e8 d7 bb 00 00       	call   0x1800515e4
180045a0d:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
180045a12:	8b f8                	mov    %eax,%edi
180045a14:	85 c0                	test   %eax,%eax
180045a16:	78 3f                	js     0x180045a57
180045a18:	33 d2                	xor    %edx,%edx
180045a1a:	48 8d 4d 20          	lea    0x20(%rbp),%rcx
180045a1e:	49 8b c6             	mov    %r14,%rax
180045a21:	4c 8b c3             	mov    %rbx,%r8
180045a24:	48 f7 75 60          	divq   0x60(%rbp)
180045a28:	48 8b d0             	mov    %rax,%rdx
180045a2b:	e8 f0 de ff ff       	call   0x180043920
180045a30:	8b f8                	mov    %eax,%edi
180045a32:	85 c0                	test   %eax,%eax
180045a34:	78 21                	js     0x180045a57
180045a36:	48 83 64 24 60 00    	andq   $0x0,0x60(%rsp)
180045a3c:	48 8d 54 24 50       	lea    0x50(%rsp),%rdx
180045a41:	48 8b 8e c0 00 00 00 	mov    0xc0(%rsi),%rcx
180045a48:	e8 bf e1 ff ff       	call   0x180043c0c
180045a4d:	48 8b c8             	mov    %rax,%rcx
180045a50:	48 85 c0             	test   %rax,%rax
180045a53:	75 9b                	jne    0x1800459f0
180045a55:	eb 18                	jmp    0x180045a6f
180045a57:	48 85 db             	test   %rbx,%rbx
180045a5a:	74 13                	je     0x180045a6f
180045a5c:	48 8b 03             	mov    (%rbx),%rax
180045a5f:	ba 01 00 00 00       	mov    $0x1,%edx
180045a64:	48 8b cb             	mov    %rbx,%rcx
180045a67:	48 8b 00             	mov    (%rax),%rax
180045a6a:	ff d0                	call   *%rax
180045a6c:	0f 1f 00             	nopl   (%rax)
180045a6f:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
180045a74:	8b c7                	mov    %edi,%eax
180045a76:	48 83 c4 20          	add    $0x20,%rsp
180045a7a:	41 5f                	pop    %r15
180045a7c:	41 5e                	pop    %r14
180045a7e:	5f                   	pop    %rdi
180045a7f:	5e                   	pop    %rsi
180045a80:	5d                   	pop    %rbp
180045a81:	c3                   	ret
180045a82:	cc                   	int3
180045a83:	cc                   	int3
180045a84:	48 8b 41 08          	mov    0x8(%rcx),%rax
180045a88:	48 8b 40 68          	mov    0x68(%rax),%rax
180045a8c:	c3                   	ret
180045a8d:	cc                   	int3
180045a8e:	cc                   	int3
180045a8f:	cc                   	int3
180045a90:	48 83 ec 28          	sub    $0x28,%rsp
180045a94:	41 b0 06             	mov    $0x6,%r8b
180045a97:	e8 74 1a 00 00       	call   0x180047510
180045a9c:	48 83 c4 28          	add    $0x28,%rsp
180045aa0:	c3                   	ret
180045aa1:	cc                   	int3
180045aa2:	cc                   	int3
180045aa3:	cc                   	int3
180045aa4:	33 c0                	xor    %eax,%eax
180045aa6:	80 fa 06             	cmp    $0x6,%dl
180045aa9:	75 13                	jne    0x180045abe
180045aab:	48 8b 49 08          	mov    0x8(%rcx),%rcx
180045aaf:	38 81 e4 01 00 00    	cmp    %al,0x1e4(%rcx)
180045ab5:	74 07                	je     0x180045abe
180045ab7:	48 8d 81 b8 01 00 00 	lea    0x1b8(%rcx),%rax
180045abe:	c3                   	ret
180045abf:	cc                   	int3
180045ac0:	48 83 ec 28          	sub    $0x28,%rsp
180045ac4:	41 80 f8 06          	cmp    $0x6,%r8b
180045ac8:	74 07                	je     0x180045ad1
180045aca:	b8 0d 00 00 c0       	mov    $0xc000000d,%eax
180045acf:	eb 08                	jmp    0x180045ad9
180045ad1:	4d 8b c1             	mov    %r9,%r8
180045ad4:	e8 63 00 00 00       	call   0x180045b3c
180045ad9:	48 83 c4 28          	add    $0x28,%rsp
180045add:	c3                   	ret
180045ade:	cc                   	int3
180045adf:	cc                   	int3
180045ae0:	48 83 ec 28          	sub    $0x28,%rsp
180045ae4:	41 80 f8 06          	cmp    $0x6,%r8b
180045ae8:	75 13                	jne    0x180045afd
180045aea:	48 8b 8a d8 00 00 00 	mov    0xd8(%rdx),%rcx
180045af1:	48 8b 01             	mov    (%rcx),%rax
180045af4:	48 8b 40 08          	mov    0x8(%rax),%rax
180045af8:	ff d0                	call   *%rax
180045afa:	0f 1f 00             	nopl   (%rax)
180045afd:	48 83 c4 28          	add    $0x28,%rsp
180045b01:	c3                   	ret
180045b02:	cc                   	int3
180045b03:	cc                   	int3
180045b04:	8b 82 a0 00 00 00    	mov    0xa0(%rdx),%eax
180045b0a:	4c 8b c2             	mov    %rdx,%r8
180045b0d:	80 ba 99 00 00 00 06 	cmpb   $0x6,0x99(%rdx)
180045b14:	75 24                	jne    0x180045b3a
180045b16:	8b 82 a0 00 00 00    	mov    0xa0(%rdx),%eax
180045b1c:	85 c0                	test   %eax,%eax
180045b1e:	78 1a                	js     0x180045b3a
180045b20:	8b 4a 3c             	mov    0x3c(%rdx),%ecx
180045b23:	f6 c1 01             	test   $0x1,%cl
180045b26:	74 12                	je     0x180045b3a
180045b28:	48 8b 52 10          	mov    0x10(%rdx),%rdx
180045b2c:	41 8b 88 80 00 00 00 	mov    0x80(%r8),%ecx
180045b33:	48 01 8a a8 00 00 00 	add    %rcx,0xa8(%rdx)
180045b3a:	c3                   	ret
180045b3b:	cc                   	int3
180045b3c:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
180045b41:	53                   	push   %rbx
180045b42:	55                   	push   %rbp
180045b43:	56                   	push   %rsi
180045b44:	57                   	push   %rdi
180045b45:	41 54                	push   %r12
180045b47:	41 55                	push   %r13