140816852:	7f 14                	jg     0x140816868
140816854:	78 6f                	js     0x1408168c5
140816856:	48 8b 01             	mov    (%rcx),%rax
140816859:	ba 01 00 00 00       	mov    $0x1,%edx
14081685e:	48 8b 00             	mov    (%rax),%rax
140816861:	ff 15 b9 d1 76 00    	call   *0x76d1b9(%rip)        # 0x140f83a20
140816867:	90                   	nop
140816868:	48 83 c3 08          	add    $0x8,%rbx
14081686c:	48 3b de             	cmp    %rsi,%rbx
14081686f:	75 cf                	jne    0x140816840
140816871:	48 8b 0f             	mov    (%rdi),%rcx
140816874:	48 8b 57 10          	mov    0x10(%rdi),%rdx
140816878:	48 2b d1             	sub    %rcx,%rdx
14081687b:	48 83 e2 f8          	and    $0xfffffffffffffff8,%rdx
14081687f:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140816886:	72 18                	jb     0x1408168a0
140816888:	48 83 c2 27          	add    $0x27,%rdx
14081688c:	4c 8b 41 f8          	mov    -0x8(%rcx),%r8
140816890:	49 2b c8             	sub    %r8,%rcx
140816893:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
140816897:	48 83 f8 1f          	cmp    $0x1f,%rax
14081689b:	77 33                	ja     0x1408168d0
14081689d:	49 8b c8             	mov    %r8,%rcx
1408168a0:	e8 9f 48 60 00       	call   0x140e1b144
1408168a5:	48 89 2f             	mov    %rbp,(%rdi)
1408168a8:	48 89 6f 08          	mov    %rbp,0x8(%rdi)
1408168ac:	48 89 6f 10          	mov    %rbp,0x10(%rdi)
1408168b0:	4c 8d 5c 24 60       	lea    0x60(%rsp),%r11
1408168b5:	49 8b 5b 20          	mov    0x20(%r11),%rbx
1408168b9:	49 8b 6b 28          	mov    0x28(%r11),%rbp
1408168bd:	49 8b e3             	mov    %r11,%rsp
1408168c0:	41 5e                	pop    %r14
1408168c2:	5f                   	pop    %rdi
1408168c3:	5e                   	pop    %rsi
1408168c4:	c3                   	ret
1408168c5:	b9 02 00 00 00       	mov    $0x2,%ecx
1408168ca:	e8 31 3e f7 ff       	call   0x14078a700
1408168cf:	90                   	nop
1408168d0:	e8 cf 38 61 00       	call   0x140e2a1a4
1408168d5:	cc                   	int3
1408168d6:	cc                   	int3
1408168d7:	cc                   	int3
1408168d8:	cc                   	int3
1408168d9:	cc                   	int3
1408168da:	cc                   	int3
1408168db:	cc                   	int3
1408168dc:	cc                   	int3
1408168dd:	cc                   	int3
1408168de:	cc                   	int3
1408168df:	cc                   	int3
1408168e0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1408168e5:	57                   	push   %rdi
1408168e6:	48 83 ec 20          	sub    $0x20,%rsp
1408168ea:	33 c0                	xor    %eax,%eax
1408168ec:	48 8d 59 18          	lea    0x18(%rcx),%rbx
1408168f0:	48 85 c9             	test   %rcx,%rcx
1408168f3:	48 8b f9             	mov    %rcx,%rdi
1408168f6:	48 8b 0d 5b c5 c1 00 	mov    0xc1c55b(%rip),%rcx        # 0x141432e58
1408168fd:	41 b0 01             	mov    $0x1,%r8b
140816900:	48 0f 44 d8          	cmove  %rax,%rbx
140816904:	45 33 c9             	xor    %r9d,%r9d
140816907:	48 8b d3             	mov    %rbx,%rdx
14081690a:	e8 21 b7 d7 ff       	call   0x140592030
14081690f:	8b 57 68             	mov    0x68(%rdi),%edx
140816912:	41 b9 01 00 00 00    	mov    $0x1,%r9d
140816918:	48 8b 0d 39 c5 c1 00 	mov    0xc1c539(%rip),%rcx        # 0x141432e58
14081691f:	4c 8b c3             	mov    %rbx,%r8
140816922:	e8 c9 b7 d7 ff       	call   0x1405920f0
140816927:	84 c0                	test   %al,%al
140816929:	74 0b                	je     0x140816936
14081692b:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140816930:	48 83 c4 20          	add    $0x20,%rsp
140816934:	5f                   	pop    %rdi
140816935:	c3                   	ret
140816936:	48 8b 0d bb ab c1 00 	mov    0xc1abbb(%rip),%rcx        # 0x1414314f8
14081693d:	48 8d 15 cc 6f 82 00 	lea    0x826fcc(%rip),%rdx        # 0x14103d910
140816944:	e8 47 cf f7 ff       	call   0x140793890
140816949:	cc                   	int3
14081694a:	cc                   	int3
14081694b:	cc                   	int3
14081694c:	cc                   	int3
14081694d:	cc                   	int3
14081694e:	cc                   	int3
14081694f:	cc                   	int3
140816950:	40 53                	rex push %rbx
140816952:	48 83 ec 20          	sub    $0x20,%rsp
140816956:	48 8b 05 fb c4 c1 00 	mov    0xc1c4fb(%rip),%rax        # 0x141432e58
14081695d:	48 8b d9             	mov    %rcx,%rbx
140816960:	48 8b 50 38          	mov    0x38(%rax),%rdx
140816964:	48 85 d2             	test   %rdx,%rdx
140816967:	74 0f                	je     0x140816978
140816969:	80 7a 08 00          	cmpb   $0x0,0x8(%rdx)
14081696d:	75 09                	jne    0x140816978
14081696f:	80 3d b5 9e c1 00 00 	cmpb   $0x0,0xc19eb5(%rip)        # 0x14143082b
140816976:	74 0c                	je     0x140816984
140816978:	33 c9                	xor    %ecx,%ecx
14081697a:	e8 f1 f2 04 00       	call   0x140865c70
14081697f:	e8 5c 87 f5 ff       	call   0x14076f0e0
140816984:	48 8d 4b 4c          	lea    0x4c(%rbx),%rcx
140816988:	33 d2                	xor    %edx,%edx
14081698a:	48 83 c4 20          	add    $0x20,%rsp
14081698e:	5b                   	pop    %rbx
14081698f:	e9 ec 4d fd ff       	jmp    0x1407eb780
140816994:	cc                   	int3
140816995:	cc                   	int3
140816996:	cc                   	int3
140816997:	cc                   	int3
140816998:	cc                   	int3
140816999:	cc                   	int3
14081699a:	cc                   	int3
14081699b:	cc                   	int3
14081699c:	cc                   	int3
14081699d:	cc                   	int3
14081699e:	cc                   	int3
14081699f:	cc                   	int3
1408169a0:	48 8d 05 49 6f 82 00 	lea    0x826f49(%rip),%rax        # 0x14103d8f0
1408169a7:	c3                   	ret
1408169a8:	cc                   	int3
1408169a9:	cc                   	int3
1408169aa:	cc                   	int3
1408169ab:	cc                   	int3
1408169ac:	cc                   	int3
1408169ad:	cc                   	int3
1408169ae:	cc                   	int3
1408169af:	cc                   	int3
1408169b0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1408169b5:	57                   	push   %rdi
1408169b6:	48 83 ec 20          	sub    $0x20,%rsp
1408169ba:	89 11                	mov    %edx,(%rcx)
1408169bc:	48 8b d9             	mov    %rcx,%rbx
1408169bf:	48 63 ca             	movslq %edx,%rcx
1408169c2:	b8 04 00 00 00       	mov    $0x4,%eax
1408169c7:	48 f7 e1             	mul    %rcx
1408169ca:	48 c7 c7 ff ff ff ff 	mov    $0xffffffffffffffff,%rdi
1408169d1:	48 0f 42 c7          	cmovb  %rdi,%rax
1408169d5:	48 8b c8             	mov    %rax,%rcx
1408169d8:	e8 3f 4c 60 00       	call   0x140e1b61c
1408169dd:	48 63 0b             	movslq (%rbx),%rcx
1408169e0:	48 89 43 08          	mov    %rax,0x8(%rbx)
1408169e4:	b8 04 00 00 00       	mov    $0x4,%eax
1408169e9:	48 f7 e1             	mul    %rcx
1408169ec:	48 0f 42 c7          	cmovb  %rdi,%rax
1408169f0:	48 8b c8             	mov    %rax,%rcx
1408169f3:	e8 24 4c 60 00       	call   0x140e1b61c
1408169f8:	48 63 0b             	movslq (%rbx),%rcx
1408169fb:	48 89 43 10          	mov    %rax,0x10(%rbx)
1408169ff:	b8 04 00 00 00       	mov    $0x4,%eax
140816a04:	48 f7 e1             	mul    %rcx
140816a07:	48 0f 42 c7          	cmovb  %rdi,%rax
140816a0b:	48 8b c8             	mov    %rax,%rcx
140816a0e:	e8 09 4c 60 00       	call   0x140e1b61c
140816a13:	48 63 0b             	movslq (%rbx),%rcx
140816a16:	48 89 43 18          	mov    %rax,0x18(%rbx)
140816a1a:	b8 04 00 00 00       	mov    $0x4,%eax
140816a1f:	48 f7 e1             	mul    %rcx
140816a22:	48 0f 42 c7          	cmovb  %rdi,%rax
140816a26:	48 8b c8             	mov    %rax,%rcx
140816a29:	e8 ee 4b 60 00       	call   0x140e1b61c
140816a2e:	8b 0b                	mov    (%rbx),%ecx
140816a30:	45 33 c0             	xor    %r8d,%r8d
140816a33:	ff c1                	inc    %ecx
140816a35:	48 89 43 20          	mov    %rax,0x20(%rbx)
140816a39:	48 8b 43 10          	mov    0x10(%rbx),%rax
140816a3d:	89 4b 30             	mov    %ecx,0x30(%rbx)
140816a40:	89 4b 38             	mov    %ecx,0x38(%rbx)
140816a43:	89 4b 34             	mov    %ecx,0x34(%rbx)
140816a46:	4c 89 43 28          	mov    %r8,0x28(%rbx)
140816a4a:	44 89 43 04          	mov    %r8d,0x4(%rbx)
140816a4e:	89 08                	mov    %ecx,(%rax)
140816a50:	48 63 13             	movslq (%rbx),%rdx
140816a53:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
140816a57:	8b 43 30             	mov    0x30(%rbx),%eax
140816a5a:	89 44 91 fc          	mov    %eax,-0x4(%rcx,%rdx,4)
140816a5e:	44 39 03             	cmp    %r8d,(%rbx)
140816a61:	7e 3c                	jle    0x140816a9f
140816a63:	41 8b d0             	mov    %r8d,%edx
140816a66:	45 85 c0             	test   %r8d,%r8d
140816a69:	7e 14                	jle    0x140816a7f
140816a6b:	48 8b 43 08          	mov    0x8(%rbx),%rax
140816a6f:	41 8d 48 ff          	lea    -0x1(%r8),%ecx
140816a73:	44 89 44 02 fc       	mov    %r8d,-0x4(%rdx,%rax,1)
140816a78:	48 8b 43 10          	mov    0x10(%rbx),%rax
140816a7c:	89 0c 02             	mov    %ecx,(%rdx,%rax,1)
140816a7f:	48 8b 4b 18          	mov    0x18(%rbx),%rcx
140816a83:	41 ff c0             	inc    %r8d
140816a86:	8b 43 34             	mov    0x34(%rbx),%eax
140816a89:	89 04 0a             	mov    %eax,(%rdx,%rcx,1)
140816a8c:	48 8b 4b 20          	mov    0x20(%rbx),%rcx
140816a90:	8b 43 38             	mov    0x38(%rbx),%eax
140816a93:	89 04 0a             	mov    %eax,(%rdx,%rcx,1)
140816a96:	48 83 c2 04          	add    $0x4,%rdx
140816a9a:	44 3b 03             	cmp    (%rbx),%r8d
140816a9d:	7c c7                	jl     0x140816a66
140816a9f:	48 8b c3             	mov    %rbx,%rax
140816aa2:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140816aa7:	48 83 c4 20          	add    $0x20,%rsp
140816aab:	5f                   	pop    %rdi
140816aac:	c3                   	ret
140816aad:	cc                   	int3
140816aae:	cc                   	int3
140816aaf:	cc                   	int3
140816ab0:	40 53                	rex push %rbx
140816ab2:	48 83 ec 20          	sub    $0x20,%rsp
140816ab6:	48 8b d9             	mov    %rcx,%rbx
140816ab9:	48 8b 49 08          	mov    0x8(%rcx),%rcx
140816abd:	e8 82 46 60 00       	call   0x140e1b144
140816ac2:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
140816ac6:	e8 79 46 60 00       	call   0x140e1b144
140816acb:	48 8b 4b 18          	mov    0x18(%rbx),%rcx
140816acf:	e8 70 46 60 00       	call   0x140e1b144
140816ad4:	48 8b 4b 20          	mov    0x20(%rbx),%rcx
140816ad8:	e8 67 46 60 00       	call   0x140e1b144
140816add:	48 8b 4b 28          	mov    0x28(%rbx),%rcx
140816ae1:	48 83 c4 20          	add    $0x20,%rsp
140816ae5:	5b                   	pop    %rbx
140816ae6:	e9 59 46 60 00       	jmp    0x140e1b144
140816aeb:	cc                   	int3
140816aec:	cc                   	int3
140816aed:	cc                   	int3
140816aee:	cc                   	int3
140816aef:	cc                   	int3
140816af0:	45 33 d2             	xor    %r10d,%r10d
140816af3:	44 39 11             	cmp    %r10d,(%rcx)
140816af6:	0f 8e 7d 00 00 00    	jle    0x140816b79
140816afc:	45 8b ca             	mov    %r10d,%r9d
140816aff:	90                   	nop
140816b00:	48 8b 51 10          	mov    0x10(%rcx),%rdx
140816b04:	8b 41 30             	mov    0x30(%rcx),%eax
140816b07:	41 39 04 11          	cmp    %eax,(%r9,%rdx,1)
140816b0b:	75 60                	jne    0x140816b6d
140816b0d:	8b 51 04             	mov    0x4(%rcx),%edx
140816b10:	8d 42 01             	lea    0x1(%rdx),%eax
140816b13:	89 41 04             	mov    %eax,0x4(%rcx)
140816b16:	48 8b 41 18          	mov    0x18(%rcx),%rax
140816b1a:	41 89 14 01          	mov    %edx,(%r9,%rax,1)
140816b1e:	48 8b 41 20          	mov    0x20(%rcx),%rax
140816b22:	45 89 14 01          	mov    %r10d,(%r9,%rax,1)
140816b26:	48 8b 41 08          	mov    0x8(%rcx),%rax
140816b2a:	45 8b 04 01          	mov    (%r9,%rax,1),%r8d
140816b2e:	44 3b 41 30          	cmp    0x30(%rcx),%r8d
140816b32:	74 39                	je     0x140816b6d
140816b34:	0f 1f 40 00          	nopl   0x0(%rax)
140816b38:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
140816b3f:	00
140816b40:	48 8b 51 18          	mov    0x18(%rcx),%rdx
140816b44:	49 63 c0             	movslq %r8d,%rax
140816b47:	4c 8d 04 85 00 00 00 	lea    0x0(,%rax,4),%r8
140816b4e:	00
140816b4f:	41 8b 04 11          	mov    (%r9,%rdx,1),%eax
140816b53:	41 89 04 10          	mov    %eax,(%r8,%rdx,1)
140816b57:	48 8b 41 20          	mov    0x20(%rcx),%rax
140816b5b:	45 89 14 00          	mov    %r10d,(%r8,%rax,1)
140816b5f:	48 8b 41 08          	mov    0x8(%rcx),%rax
140816b63:	45 8b 04 00          	mov    (%r8,%rax,1),%r8d
140816b67:	44 3b 41 30          	cmp    0x30(%rcx),%r8d
140816b6b:	75 d3                	jne    0x140816b40
140816b6d:	41 ff c2             	inc    %r10d
140816b70:	49 83 c1 04          	add    $0x4,%r9
140816b74:	44 3b 11             	cmp    (%rcx),%r10d
140816b77:	7c 87                	jl     0x140816b00
140816b79:	8b 41 04             	mov    0x4(%rcx),%eax
140816b7c:	c3                   	ret
140816b7d:	cc                   	int3
140816b7e:	cc                   	int3
140816b7f:	cc                   	int3
140816b80:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140816b85:	55                   	push   %rbp
140816b86:	57                   	push   %rdi
140816b87:	41 54                	push   %r12
140816b89:	48 83 ec 20          	sub    $0x20,%rsp
140816b8d:	45 33 e4             	xor    %r12d,%r12d
140816b90:	48 8b fa             	mov    %rdx,%rdi
140816b93:	48 8b d9             	mov    %rcx,%rbx
140816b96:	4c 39 61 28          	cmp    %r12,0x28(%rcx)
140816b9a:	75 47                	jne    0x140816be3
140816b9c:	4c 63 01             	movslq (%rcx),%r8
140816b9f:	b8 04 00 00 00       	mov    $0x4,%eax
140816ba4:	49 f7 e0             	mul    %r8
140816ba7:	48 c7 c1 ff ff ff ff 	mov    $0xffffffffffffffff,%rcx
140816bae:	48 0f 42 c1          	cmovb  %rcx,%rax
140816bb2:	48 8b c8             	mov    %rax,%rcx
140816bb5:	e8 62 4a 60 00       	call   0x140e1b61c
140816bba:	41 8b d4             	mov    %r12d,%edx
140816bbd:	48 89 43 28          	mov    %rax,0x28(%rbx)
140816bc1:	39 13                	cmp    %edx,(%rbx)
140816bc3:	7e 1e                	jle    0x140816be3
140816bc5:	41 8b cc             	mov    %r12d,%ecx
140816bc8:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
140816bcf:	00
140816bd0:	48 8b 43 28          	mov    0x28(%rbx),%rax
140816bd4:	48 8d 49 04          	lea    0x4(%rcx),%rcx
140816bd8:	ff c2                	inc    %edx
140816bda:	44 89 64 01 fc       	mov    %r12d,-0x4(%rcx,%rax,1)
140816bdf:	3b 13                	cmp    (%rbx),%edx
140816be1:	7c ed                	jl     0x140816bd0
140816be3:	48 8b 3f             	mov    (%rdi),%rdi
140816be6:	49 8b ec             	mov    %r12,%rbp
140816be9:	4c 8b 47 08          	mov    0x8(%rdi),%r8
140816bed:	4c 8b 0f             	mov    (%rdi),%r9
140816bf0:	49 8b c0             	mov    %r8,%rax
140816bf3:	49 2b c1             	sub    %r9,%rax
140816bf6:	48 c1 f8 03          	sar    $0x3,%rax
140816bfa:	48 85 c0             	test   %rax,%rax
140816bfd:	0f 84 98 01 00 00    	je     0x140816d9b
140816c03:	48 89 74 24 40       	mov    %rsi,0x40(%rsp)
140816c08:	4c 89 74 24 48       	mov    %r14,0x48(%rsp)
140816c0d:	4c 89 7c 24 50       	mov    %r15,0x50(%rsp)
140816c12:	0f 1f 40 00          	nopl   0x0(%rax)
140816c16:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%rax,%rax,1)
140816c1d:	00 00 00
140816c20:	4d 63 3c e9          	movslq (%r9,%rbp,8),%r15
140816c24:	48 8b 43 10          	mov    0x10(%rbx),%rax
140816c28:	45 8b f7             	mov    %r15d,%r14d
140816c2b:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
140816c2f:	4a 8d 14 bd 00 00 00 	lea    0x0(,%r15,4),%rdx
140816c36:	00
140816c37:	8b 34 02             	mov    (%rdx,%rax,1),%esi
140816c3a:	48 8d 45 01          	lea    0x1(%rbp),%rax
140816c3e:	44 8b 1c 0a          	mov    (%rdx,%rcx,1),%r11d
140816c42:	45 85 db             	test   %r11d,%r11d
140816c45:	0f 84 bb 00 00 00    	je     0x140816d06
140816c4b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140816c50:	44 3b 1b             	cmp    (%rbx),%r11d
140816c53:	0f 8d ad 00 00 00    	jge    0x140816d06
140816c59:	4d 2b c1             	sub    %r9,%r8
140816c5c:	49 c1 f8 03          	sar    $0x3,%r8
140816c60:	49 3b c0             	cmp    %r8,%rax
140816c63:	73 4c                	jae    0x140816cb1
140816c65:	49 8b 0c c1          	mov    (%r9,%rax,8),%rcx
140816c69:	49 63 d3             	movslq %r11d,%rdx
140816c6c:	48 3b ca             	cmp    %rdx,%rcx
140816c6f:	7f 40                	jg     0x140816cb1
140816c71:	75 0a                	jne    0x140816c7d
140816c73:	48 8b 4b 28          	mov    0x28(%rbx),%rcx
140816c77:	44 39 24 81          	cmp    %r12d,(%rcx,%rax,4)
140816c7b:	74 13                	je     0x140816c90
140816c7d:	48 ff c0             	inc    %rax
140816c80:	49 3b c0             	cmp    %r8,%rax
140816c83:	73 2c                	jae    0x140816cb1
140816c85:	49 8b 0c c1          	mov    (%r9,%rax,8),%rcx
140816c89:	48 3b ca             	cmp    %rdx,%rcx
140816c8c:	7e e3                	jle    0x140816c71
140816c8e:	eb 21                	jmp    0x140816cb1
140816c90:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
140816c94:	44 89 34 91          	mov    %r14d,(%rcx,%rdx,4)
140816c98:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
140816c9c:	49 63 d6             	movslq %r14d,%rdx
140816c9f:	45 8b f3             	mov    %r11d,%r14d
140816ca2:	44 89 1c 91          	mov    %r11d,(%rcx,%rdx,4)
140816ca6:	48 8b 4b 28          	mov    0x28(%rbx),%rcx