14015a787:	4c 63 42 04          	movslq 0x4(%rdx),%r8
14015a78b:	48 83 c1 08          	add    $0x8,%rcx
14015a78f:	49 03 c8             	add    %r8,%rcx
14015a792:	48 8b 11             	mov    (%rcx),%rdx
14015a795:	ff 52 08             	call   *0x8(%rdx)
14015a798:	90                   	nop
14015a799:	eb 34                	jmp    0x14015a7cf
14015a79b:	48 8d 70 f8          	lea    -0x8(%rax),%rsi
14015a79f:	48 8b 0e             	mov    (%rsi),%rcx
14015a7a2:	48 8b 51 08          	mov    0x8(%rcx),%rdx
14015a7a6:	48 85 d2             	test   %rdx,%rdx
14015a7a9:	74 06                	je     0x14015a7b1
14015a7ab:	ff d2                	call   *%rdx
14015a7ad:	48 8b 45 40          	mov    0x40(%rbp),%rax
14015a7b1:	48 8b 36             	mov    (%rsi),%rsi
14015a7b4:	48 85 c0             	test   %rax,%rax
14015a7b7:	74 16                	je     0x14015a7cf
14015a7b9:	48 8b 48 08          	mov    0x8(%rax),%rcx
14015a7bd:	48 63 49 04          	movslq 0x4(%rcx),%rcx
14015a7c1:	48 83 c0 08          	add    $0x8,%rax
14015a7c5:	48 03 c8             	add    %rax,%rcx
14015a7c8:	48 8b 01             	mov    (%rcx),%rax
14015a7cb:	ff 50 08             	call   *0x8(%rax)
14015a7ce:	90                   	nop
14015a7cf:	48 89 75 e0          	mov    %rsi,-0x20(%rbp)
14015a7d3:	48 89 5d e8          	mov    %rbx,-0x18(%rbp)
14015a7d7:	48 8b 7d 68          	mov    0x68(%rbp),%rdi
14015a7db:	48 8b 17             	mov    (%rdi),%rdx
14015a7de:	48 85 d2             	test   %rdx,%rdx
14015a7e1:	0f 84 9c 00 00 00    	je     0x14015a883
14015a7e7:	48 89 55 40          	mov    %rdx,0x40(%rbp)
14015a7eb:	48 8b 42 08          	mov    0x8(%rdx),%rax
14015a7ef:	48 63 48 04          	movslq 0x4(%rax),%rcx
14015a7f3:	48 83 c2 08          	add    $0x8,%rdx
14015a7f7:	48 03 ca             	add    %rdx,%rcx
14015a7fa:	48 8b 01             	mov    (%rcx),%rax
14015a7fd:	ff 10                	call   *(%rax)
14015a7ff:	48 8d 45 40          	lea    0x40(%rbp),%rax
14015a803:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
14015a807:	48 8b 45 40          	mov    0x40(%rbp),%rax
14015a80b:	48 85 c0             	test   %rax,%rax
14015a80e:	75 04                	jne    0x14015a814
14015a810:	33 db                	xor    %ebx,%ebx
14015a812:	eb 6b                	jmp    0x14015a87f
14015a814:	8b 48 f0             	mov    -0x10(%rax),%ecx
14015a817:	3b 0d 5f 09 15 00    	cmp    0x15095f(%rip),%ecx        # 0x1402ab17c
14015a81d:	74 2c                	je     0x14015a84b
14015a81f:	48 8b d0             	mov    %rax,%rdx
14015a822:	e8 b9 c0 f6 ff       	call   0x1400c68e0
14015a827:	48 8b d8             	mov    %rax,%rbx
14015a82a:	48 8b 4d 40          	mov    0x40(%rbp),%rcx
14015a82e:	48 85 c9             	test   %rcx,%rcx
14015a831:	74 16                	je     0x14015a849
14015a833:	48 8b 51 08          	mov    0x8(%rcx),%rdx
14015a837:	4c 63 42 04          	movslq 0x4(%rdx),%r8
14015a83b:	48 83 c1 08          	add    $0x8,%rcx
14015a83f:	49 03 c8             	add    %r8,%rcx
14015a842:	48 8b 11             	mov    (%rcx),%rdx
14015a845:	ff 52 08             	call   *0x8(%rdx)
14015a848:	90                   	nop
14015a849:	eb 34                	jmp    0x14015a87f
14015a84b:	48 8d 58 f8          	lea    -0x8(%rax),%rbx
14015a84f:	48 8b 0b             	mov    (%rbx),%rcx
14015a852:	48 8b 51 08          	mov    0x8(%rcx),%rdx
14015a856:	48 85 d2             	test   %rdx,%rdx
14015a859:	74 06                	je     0x14015a861
14015a85b:	ff d2                	call   *%rdx
14015a85d:	48 8b 45 40          	mov    0x40(%rbp),%rax
14015a861:	48 8b 1b             	mov    (%rbx),%rbx
14015a864:	48 85 c0             	test   %rax,%rax
14015a867:	74 16                	je     0x14015a87f
14015a869:	48 8b 48 08          	mov    0x8(%rax),%rcx
14015a86d:	48 63 49 04          	movslq 0x4(%rcx),%rcx
14015a871:	48 83 c0 08          	add    $0x8,%rax
14015a875:	48 03 c8             	add    %rax,%rcx
14015a878:	48 8b 01             	mov    (%rcx),%rax
14015a87b:	ff 50 08             	call   *0x8(%rax)
14015a87e:	90                   	nop
14015a87f:	48 89 5d e8          	mov    %rbx,-0x18(%rbp)
14015a883:	49 8b 47 68          	mov    0x68(%r15),%rax
14015a887:	48 8d 4d e8          	lea    -0x18(%rbp),%rcx
14015a88b:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
14015a890:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
14015a894:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
14015a899:	45 8b cc             	mov    %r12d,%r9d
14015a89c:	4c 8b 45 50          	mov    0x50(%rbp),%r8
14015a8a0:	4d 8b 40 08          	mov    0x8(%r8),%r8
14015a8a4:	49 8b 55 08          	mov    0x8(%r13),%rdx
14015a8a8:	49 8b cf             	mov    %r15,%rcx
14015a8ab:	ff d0                	call   *%rax
14015a8ad:	44 8b f8             	mov    %eax,%r15d
14015a8b0:	48 8b 55 e0          	mov    -0x20(%rbp),%rdx
14015a8b4:	48 85 d2             	test   %rdx,%rdx
14015a8b7:	74 37                	je     0x14015a8f0
14015a8b9:	48 3b d6             	cmp    %rsi,%rdx
14015a8bc:	74 57                	je     0x14015a915
14015a8be:	48 8d 4d 40          	lea    0x40(%rbp),%rcx
14015a8c2:	e8 69 cf fe ff       	call   0x140147830
14015a8c7:	49 8b 16             	mov    (%r14),%rdx
14015a8ca:	48 8b 08             	mov    (%rax),%rcx
14015a8cd:	49 89 0e             	mov    %rcx,(%r14)
14015a8d0:	48 89 10             	mov    %rdx,(%rax)
14015a8d3:	48 85 d2             	test   %rdx,%rdx
14015a8d6:	74 16                	je     0x14015a8ee
14015a8d8:	48 8b 42 08          	mov    0x8(%rdx),%rax
14015a8dc:	48 63 48 04          	movslq 0x4(%rax),%rcx
14015a8e0:	48 83 c2 08          	add    $0x8,%rdx
14015a8e4:	48 03 ca             	add    %rdx,%rcx
14015a8e7:	48 8b 01             	mov    (%rcx),%rax
14015a8ea:	ff 50 08             	call   *0x8(%rax)
14015a8ed:	90                   	nop
14015a8ee:	eb 25                	jmp    0x14015a915
14015a8f0:	49 8b 06             	mov    (%r14),%rax
14015a8f3:	49 c7 06 00 00 00 00 	movq   $0x0,(%r14)
14015a8fa:	48 85 c0             	test   %rax,%rax
14015a8fd:	74 16                	je     0x14015a915
14015a8ff:	48 8b 48 08          	mov    0x8(%rax),%rcx
14015a903:	48 63 49 04          	movslq 0x4(%rcx),%rcx
14015a907:	48 83 c0 08          	add    $0x8,%rax
14015a90b:	48 03 c8             	add    %rax,%rcx
14015a90e:	48 8b 01             	mov    (%rcx),%rax
14015a911:	ff 50 08             	call   *0x8(%rax)
14015a914:	90                   	nop
14015a915:	48 8b 55 e8          	mov    -0x18(%rbp),%rdx
14015a919:	48 85 d2             	test   %rdx,%rdx
14015a91c:	74 3d                	je     0x14015a95b
14015a91e:	48 3b d3             	cmp    %rbx,%rdx
14015a921:	74 5d                	je     0x14015a980
14015a923:	48 8d 4d 40          	lea    0x40(%rbp),%rcx
14015a927:	e8 64 b6 ff ff       	call   0x140155f90
14015a92c:	48 8b 17             	mov    (%rdi),%rdx
14015a92f:	48 8b 08             	mov    (%rax),%rcx
14015a932:	48 89 0f             	mov    %rcx,(%rdi)
14015a935:	48 89 10             	mov    %rdx,(%rax)
14015a938:	48 85 d2             	test   %rdx,%rdx
14015a93b:	74 16                	je     0x14015a953
14015a93d:	48 8b 42 08          	mov    0x8(%rdx),%rax
14015a941:	48 63 48 04          	movslq 0x4(%rax),%rcx
14015a945:	48 83 c2 08          	add    $0x8,%rdx
14015a949:	48 03 ca             	add    %rdx,%rcx
14015a94c:	48 8b 01             	mov    (%rcx),%rax
14015a94f:	ff 50 08             	call   *0x8(%rax)
14015a952:	90                   	nop
14015a953:	45 85 ff             	test   %r15d,%r15d
14015a956:	0f 95 c0             	setne  %al
14015a959:	eb 2f                	jmp    0x14015a98a
14015a95b:	48 8b 07             	mov    (%rdi),%rax
14015a95e:	48 c7 07 00 00 00 00 	movq   $0x0,(%rdi)
14015a965:	48 85 c0             	test   %rax,%rax
14015a968:	74 16                	je     0x14015a980
14015a96a:	48 8b 48 08          	mov    0x8(%rax),%rcx
14015a96e:	48 63 49 04          	movslq 0x4(%rcx),%rcx
14015a972:	48 83 c0 08          	add    $0x8,%rax
14015a976:	48 03 c8             	add    %rax,%rcx
14015a979:	48 8b 01             	mov    (%rcx),%rax
14015a97c:	ff 50 08             	call   *0x8(%rax)
14015a97f:	90                   	nop
14015a980:	45 85 ff             	test   %r15d,%r15d
14015a983:	0f 95 c0             	setne  %al
14015a986:	eb 02                	jmp    0x14015a98a
14015a988:	32 c0                	xor    %al,%al
14015a98a:	48 8b 9c 24 98 00 00 	mov    0x98(%rsp),%rbx
14015a991:	00
14015a992:	48 83 c4 50          	add    $0x50,%rsp
14015a996:	41 5f                	pop    %r15
14015a998:	41 5e                	pop    %r14
14015a99a:	41 5d                	pop    %r13
14015a99c:	41 5c                	pop    %r12
14015a99e:	5f                   	pop    %rdi
14015a99f:	5e                   	pop    %rsi
14015a9a0:	5d                   	pop    %rbp
14015a9a1:	c3                   	ret
14015a9a2:	cc                   	int3
14015a9a3:	cc                   	int3
14015a9a4:	cc                   	int3
14015a9a5:	cc                   	int3
14015a9a6:	cc                   	int3
14015a9a7:	cc                   	int3
14015a9a8:	cc                   	int3
14015a9a9:	cc                   	int3
14015a9aa:	cc                   	int3
14015a9ab:	cc                   	int3
14015a9ac:	cc                   	int3
14015a9ad:	cc                   	int3
14015a9ae:	cc                   	int3
14015a9af:	cc                   	int3
14015a9b0:	40 53                	rex push %rbx
14015a9b2:	48 83 ec 30          	sub    $0x30,%rsp
14015a9b6:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
14015a9ba:	48 8b da             	mov    %rdx,%rbx
14015a9bd:	33 d2                	xor    %edx,%edx
14015a9bf:	48 83 39 40          	cmpq   $0x40,(%rcx)
14015a9c3:	72 1f                	jb     0x14015a9e4
14015a9c5:	48 8b 41 38          	mov    0x38(%rcx),%rax
14015a9c9:	48 85 c0             	test   %rax,%rax
14015a9cc:	74 16                	je     0x14015a9e4
14015a9ce:	ff d0                	call   *%rax
14015a9d0:	48 8b d0             	mov    %rax,%rdx
14015a9d3:	48 8b cb             	mov    %rbx,%rcx
14015a9d6:	e8 35 0d fe ff       	call   0x14013b710
14015a9db:	48 8b c3             	mov    %rbx,%rax
14015a9de:	48 83 c4 30          	add    $0x30,%rsp
14015a9e2:	5b                   	pop    %rbx
14015a9e3:	c3                   	ret
14015a9e4:	48 89 13             	mov    %rdx,(%rbx)
14015a9e7:	48 8b c3             	mov    %rbx,%rax
14015a9ea:	48 83 c4 30          	add    $0x30,%rsp
14015a9ee:	5b                   	pop    %rbx
14015a9ef:	c3                   	ret
14015a9f0:	40 53                	rex push %rbx
14015a9f2:	48 83 ec 30          	sub    $0x30,%rsp
14015a9f6:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
14015a9fa:	48 8b da             	mov    %rdx,%rbx
14015a9fd:	33 d2                	xor    %edx,%edx
14015a9ff:	48 83 39 48          	cmpq   $0x48,(%rcx)
14015aa03:	72 1f                	jb     0x14015aa24
14015aa05:	48 8b 41 40          	mov    0x40(%rcx),%rax
14015aa09:	48 85 c0             	test   %rax,%rax
14015aa0c:	74 16                	je     0x14015aa24
14015aa0e:	ff d0                	call   *%rax
14015aa10:	48 8b d0             	mov    %rax,%rdx
14015aa13:	48 8b cb             	mov    %rbx,%rcx
14015aa16:	e8 95 2e fe ff       	call   0x14013d8b0
14015aa1b:	48 8b c3             	mov    %rbx,%rax
14015aa1e:	48 83 c4 30          	add    $0x30,%rsp
14015aa22:	5b                   	pop    %rbx
14015aa23:	c3                   	ret
14015aa24:	48 89 13             	mov    %rdx,(%rbx)
14015aa27:	48 8b c3             	mov    %rbx,%rax
14015aa2a:	48 83 c4 30          	add    $0x30,%rsp
14015aa2e:	5b                   	pop    %rbx
14015aa2f:	c3                   	ret
14015aa30:	40 53                	rex push %rbx
14015aa32:	48 83 ec 30          	sub    $0x30,%rsp
14015aa36:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
14015aa3a:	48 8b da             	mov    %rdx,%rbx
14015aa3d:	33 d2                	xor    %edx,%edx
14015aa3f:	48 83 39 50          	cmpq   $0x50,(%rcx)
14015aa43:	72 1f                	jb     0x14015aa64
14015aa45:	48 8b 41 48          	mov    0x48(%rcx),%rax
14015aa49:	48 85 c0             	test   %rax,%rax
14015aa4c:	74 16                	je     0x14015aa64
14015aa4e:	ff d0                	call   *%rax
14015aa50:	48 8b d0             	mov    %rax,%rdx
14015aa53:	48 8b cb             	mov    %rbx,%rcx
14015aa56:	e8 d5 cd fe ff       	call   0x140147830
14015aa5b:	48 8b c3             	mov    %rbx,%rax
14015aa5e:	48 83 c4 30          	add    $0x30,%rsp
14015aa62:	5b                   	pop    %rbx
14015aa63:	c3                   	ret
14015aa64:	48 89 13             	mov    %rdx,(%rbx)
14015aa67:	48 8b c3             	mov    %rbx,%rax
14015aa6a:	48 83 c4 30          	add    $0x30,%rsp
14015aa6e:	5b                   	pop    %rbx
14015aa6f:	c3                   	ret
14015aa70:	40 53                	rex push %rbx
14015aa72:	48 83 ec 30          	sub    $0x30,%rsp
14015aa76:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
14015aa7a:	48 8b da             	mov    %rdx,%rbx
14015aa7d:	33 d2                	xor    %edx,%edx
14015aa7f:	48 83 39 30          	cmpq   $0x30,(%rcx)
14015aa83:	72 1f                	jb     0x14015aaa4
14015aa85:	48 8b 41 28          	mov    0x28(%rcx),%rax
14015aa89:	48 85 c0             	test   %rax,%rax
14015aa8c:	74 16                	je     0x14015aaa4
14015aa8e:	ff d0                	call   *%rax
14015aa90:	48 8b d0             	mov    %rax,%rdx
14015aa93:	48 8b cb             	mov    %rbx,%rcx
14015aa96:	e8 d5 01 00 00       	call   0x14015ac70
14015aa9b:	48 8b c3             	mov    %rbx,%rax
14015aa9e:	48 83 c4 30          	add    $0x30,%rsp
14015aaa2:	5b                   	pop    %rbx
14015aaa3:	c3                   	ret
14015aaa4:	48 89 13             	mov    %rdx,(%rbx)
14015aaa7:	48 8b c3             	mov    %rbx,%rax
14015aaaa:	48 83 c4 30          	add    $0x30,%rsp
14015aaae:	5b                   	pop    %rbx
14015aaaf:	c3                   	ret
14015aab0:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
14015aab5:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
14015aaba:	55                   	push   %rbp
14015aabb:	56                   	push   %rsi
14015aabc:	57                   	push   %rdi
14015aabd:	48 83 ec 20          	sub    $0x20,%rsp
14015aac1:	48 8b fa             	mov    %rdx,%rdi
14015aac4:	33 db                	xor    %ebx,%ebx
14015aac6:	48 8b 71 f8          	mov    -0x8(%rcx),%rsi
14015aaca:	48 83 3e 68          	cmpq   $0x68,(%rsi)
14015aace:	0f 82 e6 00 00 00    	jb     0x14015abba
14015aad4:	48 8b 6e 60          	mov    0x60(%rsi),%rbp
14015aad8:	48 85 ed             	test   %rbp,%rbp
14015aadb:	0f 84 d9 00 00 00    	je     0x14015abba
14015aae1:	48 8b 12             	mov    (%rdx),%rdx
14015aae4:	48 85 d2             	test   %rdx,%rdx
14015aae7:	75 0f                	jne    0x14015aaf8
14015aae9:	32 c0                	xor    %al,%al
14015aaeb:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
14015aaf0:	48 83 c4 20          	add    $0x20,%rsp
14015aaf4:	5f                   	pop    %rdi
14015aaf5:	5e                   	pop    %rsi
14015aaf6:	5d                   	pop    %rbp
14015aaf7:	c3                   	ret
14015aaf8:	48 89 54 24 40       	mov    %rdx,0x40(%rsp)
14015aafd:	48 8b 42 08          	mov    0x8(%rdx),%rax
14015ab01:	48 63 48 04          	movslq 0x4(%rax),%rcx
14015ab05:	48 83 c2 08          	add    $0x8,%rdx
14015ab09:	48 03 ca             	add    %rdx,%rcx
14015ab0c:	48 8b 01             	mov    (%rcx),%rax
14015ab0f:	ff 10                	call   *(%rax)
14015ab11:	48 8d 44 24 40       	lea    0x40(%rsp),%rax
14015ab16:	48 89 44 24 50       	mov    %rax,0x50(%rsp)
14015ab1b:	48 8b 44 24 40       	mov    0x40(%rsp),%rax
14015ab20:	48 85 c0             	test   %rax,%rax
14015ab23:	75 02                	jne    0x14015ab27
14015ab25:	eb 58                	jmp    0x14015ab7f
14015ab27:	8b 0d d7 05 15 00    	mov    0x1505d7(%rip),%ecx        # 0x1402ab104
14015ab2d:	39 48 f0             	cmp    %ecx,-0x10(%rax)
14015ab30:	74 18                	je     0x14015ab4a
14015ab32:	48 8b 48 08          	mov    0x8(%rax),%rcx
14015ab36:	48 63 49 04          	movslq 0x4(%rcx),%rcx
14015ab3a:	48 83 c0 08          	add    $0x8,%rax
14015ab3e:	48 03 c8             	add    %rax,%rcx
14015ab41:	48 8b 01             	mov    (%rcx),%rax
14015ab44:	ff 50 08             	call   *0x8(%rax)
14015ab47:	90                   	nop
14015ab48:	eb 35                	jmp    0x14015ab7f
14015ab4a:	48 8d 58 f8          	lea    -0x8(%rax),%rbx
14015ab4e:	48 8b 0b             	mov    (%rbx),%rcx
14015ab51:	48 8b 51 08          	mov    0x8(%rcx),%rdx
14015ab55:	48 85 d2             	test   %rdx,%rdx
14015ab58:	74 07                	je     0x14015ab61
14015ab5a:	ff d2                	call   *%rdx
14015ab5c:	48 8b 44 24 40       	mov    0x40(%rsp),%rax
14015ab61:	48 8b 1b             	mov    (%rbx),%rbx
14015ab64:	48 85 c0             	test   %rax,%rax
14015ab67:	74 16                	je     0x14015ab7f
14015ab69:	4c 8b 40 08          	mov    0x8(%rax),%r8
14015ab6d:	49 63 48 04          	movslq 0x4(%r8),%rcx
14015ab71:	48 83 c0 08          	add    $0x8,%rax
14015ab75:	48 03 c8             	add    %rax,%rcx
14015ab78:	48 8b 01             	mov    (%rcx),%rax
14015ab7b:	ff 50 08             	call   *0x8(%rax)
14015ab7e:	90                   	nop
14015ab7f:	48 8b d3             	mov    %rbx,%rdx
14015ab82:	48 8b ce             	mov    %rsi,%rcx
14015ab85:	ff d5                	call   *%rbp
14015ab87:	85 c0                	test   %eax,%eax
14015ab89:	0f 95 c3             	setne  %bl
14015ab8c:	4c 8b 07             	mov    (%rdi),%r8
14015ab8f:	4d 85 c0             	test   %r8,%r8