140104963:	4c 8b e0             	mov    %rax,%r12
140104966:	48 85 c0             	test   %rax,%rax
140104969:	75 3b                	jne    0x1401049a6
14010496b:	e8 00 27 02 00       	call   0x140127070
140104970:	4c 8d 05 09 80 20 00 	lea    0x208009(%rip),%r8        # 0x14030c980
140104977:	ba fc 00 00 00       	mov    $0xfc,%edx
14010497c:	48 8d 0d e5 7f 20 00 	lea    0x207fe5(%rip),%rcx        # 0x14030c968
140104983:	e8 08 28 02 00       	call   0x140127190
140104988:	41 8d 54 24 77       	lea    0x77(%r12),%edx
14010498d:	4c 8b cb             	mov    %rbx,%r9
140104990:	4c 8d 05 09 80 20 00 	lea    0x208009(%rip),%r8        # 0x14030c9a0
140104997:	8d 4a 94             	lea    -0x6c(%rdx),%ecx
14010499a:	e8 f1 28 02 00       	call   0x140127290
14010499f:	33 c0                	xor    %eax,%eax
1401049a1:	e9 b0 00 00 00       	jmp    0x140104a56
1401049a6:	48 89 6c 24 50       	mov    %rbp,0x50(%rsp)
1401049ab:	48 89 7c 24 58       	mov    %rdi,0x58(%rsp)
1401049b0:	48 85 f6             	test   %rsi,%rsi
1401049b3:	74 08                	je     0x1401049bd
1401049b5:	48 8b 3e             	mov    (%rsi),%rdi
1401049b8:	48 85 ff             	test   %rdi,%rdi
1401049bb:	75 11                	jne    0x1401049ce
1401049bd:	e8 0e b4 02 00       	call   0x14012fdd0
1401049c2:	48 8b f8             	mov    %rax,%rdi
1401049c5:	48 85 c0             	test   %rax,%rax
1401049c8:	75 04                	jne    0x1401049ce
1401049ca:	33 ed                	xor    %ebp,%ebp
1401049cc:	eb 73                	jmp    0x140104a41
1401049ce:	48 8b 0f             	mov    (%rdi),%rcx
1401049d1:	e8 5a df fe ff       	call   0x1400f2930
1401049d6:	49 8b cc             	mov    %r12,%rcx
1401049d9:	e8 72 91 02 00       	call   0x14012db50
1401049de:	33 ed                	xor    %ebp,%ebp
1401049e0:	48 89 07             	mov    %rax,(%rdi)
1401049e3:	48 85 c0             	test   %rax,%rax
1401049e6:	74 47                	je     0x140104a2f
1401049e8:	8b 5c 24 70          	mov    0x70(%rsp),%ebx
1401049ec:	4d 85 f6             	test   %r14,%r14
1401049ef:	75 04                	jne    0x1401049f5
1401049f1:	85 db                	test   %ebx,%ebx
1401049f3:	75 3a                	jne    0x140104a2f
1401049f5:	45 85 ff             	test   %r15d,%r15d
1401049f8:	7e 71                	jle    0x140104a6b
1401049fa:	41 0f ba e7 0c       	bt     $0xc,%r15d
1401049ff:	73 6a                	jae    0x140104a6b
140104a01:	48 8b c8             	mov    %rax,%rcx
140104a04:	e8 07 0d ff ff       	call   0x1400f5710
140104a09:	48 8d 4f 08          	lea    0x8(%rdi),%rcx
140104a0d:	89 44 24 20          	mov    %eax,0x20(%rsp)
140104a11:	45 8b cf             	mov    %r15d,%r9d
140104a14:	44 8b c3             	mov    %ebx,%r8d
140104a17:	49 8b d6             	mov    %r14,%rdx
140104a1a:	e8 81 08 07 00       	call   0x1401752a0
140104a1f:	48 85 c0             	test   %rax,%rax
140104a22:	8b cd                	mov    %ebp,%ecx
140104a24:	0f 95 c1             	setne  %cl
140104a27:	85 c9                	test   %ecx,%ecx
140104a29:	0f 85 8a 00 00 00    	jne    0x140104ab9
140104a2f:	48 85 f6             	test   %rsi,%rsi
140104a32:	74 05                	je     0x140104a39
140104a34:	48 3b 3e             	cmp    (%rsi),%rdi
140104a37:	74 08                	je     0x140104a41
140104a39:	48 8b cf             	mov    %rdi,%rcx
140104a3c:	e8 6f b3 02 00       	call   0x14012fdb0
140104a41:	49 8b cc             	mov    %r12,%rcx
140104a44:	e8 e7 de fe ff       	call   0x1400f2930
140104a49:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
140104a4e:	48 8b c5             	mov    %rbp,%rax
140104a51:	48 8b 6c 24 50       	mov    0x50(%rsp),%rbp
140104a56:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
140104a5b:	48 8b 74 24 68       	mov    0x68(%rsp),%rsi
140104a60:	48 83 c4 30          	add    $0x30,%rsp
140104a64:	41 5f                	pop    %r15
140104a66:	41 5e                	pop    %r14
140104a68:	41 5c                	pop    %r12
140104a6a:	c3                   	ret
140104a6b:	85 db                	test   %ebx,%ebx
140104a6d:	79 10                	jns    0x140104a7f
140104a6f:	48 c7 c3 ff ff ff ff 	mov    $0xffffffffffffffff,%rbx
140104a76:	48 ff c3             	inc    %rbx
140104a79:	41 38 2c 1e          	cmp    %bpl,(%r14,%rbx,1)
140104a7d:	75 f7                	jne    0x140104a76
140104a7f:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
140104a83:	44 8b c3             	mov    %ebx,%r8d
140104a86:	49 8b d6             	mov    %r14,%rdx
140104a89:	e8 92 d8 fe ff       	call   0x1400f2320
140104a8e:	85 c0                	test   %eax,%eax
140104a90:	74 9d                	je     0x140104a2f
140104a92:	41 83 ff ff          	cmp    $0xffffffff,%r15d
140104a96:	74 21                	je     0x140104ab9
140104a98:	41 83 ff fe          	cmp    $0xfffffffe,%r15d
140104a9c:	75 13                	jne    0x140104ab1
140104a9e:	8b d3                	mov    %ebx,%edx
140104aa0:	49 8b ce             	mov    %r14,%rcx
140104aa3:	e8 18 04 ff ff       	call   0x1400f4ec0
140104aa8:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
140104aac:	89 41 04             	mov    %eax,0x4(%rcx)
140104aaf:	eb 08                	jmp    0x140104ab9
140104ab1:	48 8b 47 08          	mov    0x8(%rdi),%rax
140104ab5:	44 89 78 04          	mov    %r15d,0x4(%rax)
140104ab9:	48 85 f6             	test   %rsi,%rsi
140104abc:	74 08                	je     0x140104ac6
140104abe:	48 39 2e             	cmp    %rbp,(%rsi)
140104ac1:	75 03                	jne    0x140104ac6
140104ac3:	48 89 3e             	mov    %rdi,(%rsi)
140104ac6:	48 8b ef             	mov    %rdi,%rbp
140104ac9:	e9 73 ff ff ff       	jmp    0x140104a41
140104ace:	cc                   	int3
140104acf:	cc                   	int3
140104ad0:	48 85 c9             	test   %rcx,%rcx
140104ad3:	75 03                	jne    0x140104ad8
140104ad5:	33 c0                	xor    %eax,%eax
140104ad7:	c3                   	ret
140104ad8:	48 8b 41 08          	mov    0x8(%rcx),%rax
140104adc:	c3                   	ret
140104add:	cc                   	int3
140104ade:	cc                   	int3
140104adf:	cc                   	int3
140104ae0:	48 85 c9             	test   %rcx,%rcx
140104ae3:	75 03                	jne    0x140104ae8
140104ae5:	33 c0                	xor    %eax,%eax
140104ae7:	c3                   	ret
140104ae8:	48 8b 01             	mov    (%rcx),%rax
140104aeb:	c3                   	ret
140104aec:	cc                   	int3
140104aed:	cc                   	int3
140104aee:	cc                   	int3
140104aef:	cc                   	int3
140104af0:	8b 41 10             	mov    0x10(%rcx),%eax
140104af3:	c3                   	ret
140104af4:	cc                   	int3
140104af5:	cc                   	int3
140104af6:	cc                   	int3
140104af7:	cc                   	int3
140104af8:	cc                   	int3
140104af9:	cc                   	int3
140104afa:	cc                   	int3
140104afb:	cc                   	int3
140104afc:	cc                   	int3
140104afd:	cc                   	int3
140104afe:	cc                   	int3
140104aff:	cc                   	int3
140104b00:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140104b05:	55                   	push   %rbp
140104b06:	41 54                	push   %r12
140104b08:	41 56                	push   %r14
140104b0a:	b8 20 00 00 00       	mov    $0x20,%eax
140104b0f:	e8 1c c0 1a 00       	call   0x1402b0b30
140104b14:	48 2b e0             	sub    %rax,%rsp
140104b17:	41 8b e9             	mov    %r9d,%ebp
140104b1a:	41 8b d8             	mov    %r8d,%ebx
140104b1d:	4c 8b e2             	mov    %rdx,%r12
140104b20:	4c 8b f1             	mov    %rcx,%r14
140104b23:	48 85 c9             	test   %rcx,%rcx
140104b26:	75 11                	jne    0x140104b39
140104b28:	33 c0                	xor    %eax,%eax
140104b2a:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
140104b2f:	48 83 c4 20          	add    $0x20,%rsp
140104b33:	41 5e                	pop    %r14
140104b35:	41 5c                	pop    %r12
140104b37:	5d                   	pop    %rbp
140104b38:	c3                   	ret
140104b39:	48 89 74 24 40       	mov    %rsi,0x40(%rsp)
140104b3e:	48 89 7c 24 48       	mov    %rdi,0x48(%rsp)
140104b43:	48 8b 39             	mov    (%rcx),%rdi
140104b46:	48 8b cf             	mov    %rdi,%rcx
140104b49:	4c 89 7c 24 50       	mov    %r15,0x50(%rsp)
140104b4e:	e8 ed 6b fe ff       	call   0x1400eb740
140104b53:	3b d8                	cmp    %eax,%ebx
140104b55:	7e 04                	jle    0x140104b5b
140104b57:	8b d8                	mov    %eax,%ebx
140104b59:	eb 05                	jmp    0x140104b60
140104b5b:	85 db                	test   %ebx,%ebx
140104b5d:	0f 48 d8             	cmovs  %eax,%ebx
140104b60:	33 f6                	xor    %esi,%esi
140104b62:	41 c7 46 08 01 00 00 	movl   $0x1,0x8(%r14)
140104b69:	00
140104b6a:	85 ed                	test   %ebp,%ebp
140104b6c:	44 8b fe             	mov    %esi,%r15d
140104b6f:	41 0f 94 c7          	sete   %r15b
140104b73:	83 fd ff             	cmp    $0xffffffff,%ebp
140104b76:	75 0f                	jne    0x140104b87
140104b78:	85 db                	test   %ebx,%ebx
140104b7a:	75 06                	jne    0x140104b82
140104b7c:	44 8d 7e 01          	lea    0x1(%rsi),%r15d
140104b80:	eb 2c                	jmp    0x140104bae
140104b82:	8d 53 ff             	lea    -0x1(%rbx),%edx
140104b85:	eb 1c                	jmp    0x140104ba3
140104b87:	3b d8                	cmp    %eax,%ebx
140104b89:	7c 16                	jl     0x140104ba1
140104b8b:	85 db                	test   %ebx,%ebx
140104b8d:	74 1f                	je     0x140104bae
140104b8f:	8d 53 ff             	lea    -0x1(%rbx),%edx
140104b92:	48 8b cf             	mov    %rdi,%rcx
140104b95:	e8 a6 6e fe ff       	call   0x1400eba40
140104b9a:	8b 70 10             	mov    0x10(%rax),%esi
140104b9d:	ff c6                	inc    %esi
140104b9f:	eb 0d                	jmp    0x140104bae
140104ba1:	8b d3                	mov    %ebx,%edx
140104ba3:	48 8b cf             	mov    %rdi,%rcx
140104ba6:	e8 95 6e fe ff       	call   0x1400eba40
140104bab:	8b 70 10             	mov    0x10(%rax),%esi
140104bae:	49 8b cc             	mov    %r12,%rcx
140104bb1:	e8 da b1 02 00       	call   0x14012fd90
140104bb6:	48 8b e8             	mov    %rax,%rbp
140104bb9:	48 85 c0             	test   %rax,%rax
140104bbc:	74 43                	je     0x140104c01
140104bbe:	44 8b c3             	mov    %ebx,%r8d
140104bc1:	89 70 10             	mov    %esi,0x10(%rax)
140104bc4:	48 8b d0             	mov    %rax,%rdx
140104bc7:	48 8b cf             	mov    %rdi,%rcx
140104bca:	e8 61 68 fe ff       	call   0x1400eb430
140104bcf:	85 c0                	test   %eax,%eax
140104bd1:	75 56                	jne    0x140104c29
140104bd3:	e8 98 24 02 00       	call   0x140127070
140104bd8:	4c 8d 05 71 7d 20 00 	lea    0x207d71(%rip),%r8        # 0x14030c950
140104bdf:	ba e4 00 00 00       	mov    $0xe4,%edx
140104be4:	48 8d 0d 7d 7d 20 00 	lea    0x207d7d(%rip),%rcx        # 0x14030c968
140104beb:	e8 a0 25 02 00       	call   0x140127190
140104bf0:	45 33 c0             	xor    %r8d,%r8d
140104bf3:	ba 00 01 0c 00       	mov    $0xc0100,%edx
140104bf8:	41 8d 48 0b          	lea    0xb(%r8),%ecx
140104bfc:	e8 8f 26 02 00       	call   0x140127290
140104c01:	48 8b cd             	mov    %rbp,%rcx
140104c04:	e8 a7 b1 02 00       	call   0x14012fdb0
140104c09:	33 c0                	xor    %eax,%eax
140104c0b:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
140104c10:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
140104c15:	4c 8b 7c 24 50       	mov    0x50(%rsp),%r15
140104c1a:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
140104c1f:	48 83 c4 20          	add    $0x20,%rsp
140104c23:	41 5e                	pop    %r14
140104c25:	41 5c                	pop    %r12
140104c27:	5d                   	pop    %rbp
140104c28:	c3                   	ret
140104c29:	45 85 ff             	test   %r15d,%r15d
140104c2c:	74 25                	je     0x140104c53
140104c2e:	48 8b cf             	mov    %rdi,%rcx
140104c31:	e8 0a 6b fe ff       	call   0x1400eb740
140104c36:	ff c3                	inc    %ebx
140104c38:	8b f0                	mov    %eax,%esi
140104c3a:	3b d8                	cmp    %eax,%ebx
140104c3c:	7d 15                	jge    0x140104c53
140104c3e:	66 90                	xchg   %ax,%ax
140104c40:	8b d3                	mov    %ebx,%edx
140104c42:	48 8b cf             	mov    %rdi,%rcx
140104c45:	e8 f6 6d fe ff       	call   0x1400eba40
140104c4a:	ff c3                	inc    %ebx
140104c4c:	ff 40 10             	incl   0x10(%rax)
140104c4f:	3b de                	cmp    %esi,%ebx
140104c51:	7c ed                	jl     0x140104c40
140104c53:	b8 01 00 00 00       	mov    $0x1,%eax
140104c58:	eb b1                	jmp    0x140104c0b
140104c5a:	cc                   	int3
140104c5b:	cc                   	int3
140104c5c:	cc                   	int3
140104c5d:	cc                   	int3
140104c5e:	cc                   	int3
140104c5f:	cc                   	int3
140104c60:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140104c65:	57                   	push   %rdi
140104c66:	b8 30 00 00 00       	mov    $0x30,%eax
140104c6b:	e8 c0 be 1a 00       	call   0x1402b0b30
140104c70:	48 2b e0             	sub    %rax,%rsp
140104c73:	8b 44 24 60          	mov    0x60(%rsp),%eax
140104c77:	48 8b d9             	mov    %rcx,%rbx
140104c7a:	33 c9                	xor    %ecx,%ecx
140104c7c:	89 44 24 20          	mov    %eax,0x20(%rsp)
140104c80:	e8 ab fc ff ff       	call   0x140104930
140104c85:	48 8b f8             	mov    %rax,%rdi
140104c88:	48 85 c0             	test   %rax,%rax
140104c8b:	75 0b                	jne    0x140104c98
140104c8d:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140104c92:	48 83 c4 30          	add    $0x30,%rsp
140104c96:	5f                   	pop    %rdi
140104c97:	c3                   	ret
140104c98:	44 8b 4c 24 70       	mov    0x70(%rsp),%r9d
140104c9d:	48 8b d7             	mov    %rdi,%rdx
140104ca0:	44 8b 44 24 68       	mov    0x68(%rsp),%r8d
140104ca5:	48 8b cb             	mov    %rbx,%rcx
140104ca8:	e8 53 fe ff ff       	call   0x140104b00
140104cad:	48 8b cf             	mov    %rdi,%rcx
140104cb0:	8b d8                	mov    %eax,%ebx
140104cb2:	e8 f9 b0 02 00       	call   0x14012fdb0
140104cb7:	8b c3                	mov    %ebx,%eax
140104cb9:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140104cbe:	48 83 c4 30          	add    $0x30,%rsp
140104cc2:	5f                   	pop    %rdi
140104cc3:	c3                   	ret
140104cc4:	cc                   	int3
140104cc5:	cc                   	int3
140104cc6:	cc                   	int3
140104cc7:	cc                   	int3
140104cc8:	cc                   	int3
140104cc9:	cc                   	int3
140104cca:	cc                   	int3
140104ccb:	cc                   	int3
140104ccc:	cc                   	int3
140104ccd:	cc                   	int3
140104cce:	cc                   	int3
140104ccf:	cc                   	int3
140104cd0:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140104cd5:	56                   	push   %rsi
140104cd6:	b8 20 00 00 00       	mov    $0x20,%eax
140104cdb:	e8 50 be 1a 00       	call   0x1402b0b30
140104ce0:	48 2b e0             	sub    %rax,%rsp
140104ce3:	8b da                	mov    %edx,%ebx
140104ce5:	48 8b f1             	mov    %rcx,%rsi
140104ce8:	48 85 c9             	test   %rcx,%rcx
140104ceb:	0f 84 af 00 00 00    	je     0x140104da0
140104cf1:	48 8b 09             	mov    (%rcx),%rcx
140104cf4:	e8 47 6a fe ff       	call   0x1400eb740
140104cf9:	3b c3                	cmp    %ebx,%eax
140104cfb:	0f 8e 9f 00 00 00    	jle    0x140104da0
140104d01:	85 db                	test   %ebx,%ebx
140104d03:	0f 88 97 00 00 00    	js     0x140104da0
140104d09:	48 89 6c 24 30       	mov    %rbp,0x30(%rsp)
140104d0e:	8b d3                	mov    %ebx,%edx
140104d10:	48 89 7c 24 38       	mov    %rdi,0x38(%rsp)
140104d15:	48 8b 3e             	mov    (%rsi),%rdi
140104d18:	48 8b cf             	mov    %rdi,%rcx
140104d1b:	4c 89 74 24 40       	mov    %r14,0x40(%rsp)
140104d20:	e8 bb 62 fe ff       	call   0x1400eafe0
140104d25:	48 8b cf             	mov    %rdi,%rcx
140104d28:	4c 8b f0             	mov    %rax,%r14
140104d2b:	e8 10 6a fe ff       	call   0x1400eb740
140104d30:	c7 46 08 01 00 00 00 	movl   $0x1,0x8(%rsi)
140104d37:	8b e8                	mov    %eax,%ebp
140104d39:	3b d8                	cmp    %eax,%ebx
140104d3b:	74 46                	je     0x140104d83
140104d3d:	85 db                	test   %ebx,%ebx
140104d3f:	74 10                	je     0x140104d51
140104d41:	8d 53 ff             	lea    -0x1(%rbx),%edx
140104d44:	48 8b cf             	mov    %rdi,%rcx
140104d47:	e8 f4 6c fe ff       	call   0x1400eba40
140104d4c:	8b 70 10             	mov    0x10(%rax),%esi
140104d4f:	eb 06                	jmp    0x140104d57
140104d51:	41 8b 76 10          	mov    0x10(%r14),%esi
140104d55:	ff ce                	dec    %esi
140104d57:	8b d3                	mov    %ebx,%edx
140104d59:	48 8b cf             	mov    %rdi,%rcx
140104d5c:	e8 df 6c fe ff       	call   0x1400eba40
140104d61:	8d 4e 01             	lea    0x1(%rsi),%ecx
140104d64:	3b 48 10             	cmp    0x10(%rax),%ecx
140104d67:	7d 1a                	jge    0x140104d83
140104d69:	3b dd                	cmp    %ebp,%ebx
140104d6b:	7d 16                	jge    0x140104d83
140104d6d:	0f 1f 00             	nopl   (%rax)
140104d70:	8b d3                	mov    %ebx,%edx
140104d72:	48 8b cf             	mov    %rdi,%rcx