180113a41:	48 85 d2             	test   %rdx,%rdx
180113a44:	75 17                	jne    0x180113a5d
180113a46:	33 ed                	xor    %ebp,%ebp
180113a48:	48 85 db             	test   %rbx,%rbx
180113a4b:	0f 84 43 02 00 00    	je     0x180113c94
180113a51:	c7 43 10 06 00 00 00 	movl   $0x6,0x10(%rbx)
180113a58:	e9 37 02 00 00       	jmp    0x180113c94
180113a5d:	4c 3b f7             	cmp    %rdi,%r14
180113a60:	73 2f                	jae    0x180113a91
180113a62:	49 8b de             	mov    %r14,%rbx
180113a65:	49 8b d4             	mov    %r12,%rdx
180113a68:	48 c1 e3 03          	shl    $0x3,%rbx
180113a6c:	48 8b ce             	mov    %rsi,%rcx
180113a6f:	4c 8b c3             	mov    %rbx,%r8
180113a72:	e8 49 1f 02 00       	call   0x1801359c0
180113a77:	49 2b fe             	sub    %r14,%rdi
180113a7a:	48 8d 0c 33          	lea    (%rbx,%rsi,1),%rcx
180113a7e:	48 c1 e7 03          	shl    $0x3,%rdi
180113a82:	33 d2                	xor    %edx,%edx
180113a84:	4c 8b c7             	mov    %rdi,%r8
180113a87:	e8 f4 21 02 00       	call   0x180135c80
180113a8c:	e9 03 02 00 00       	jmp    0x180113c94
180113a91:	48 3b fd             	cmp    %rbp,%rdi
180113a94:	75 27                	jne    0x180113abd
180113a96:	48 89 5c 24 30       	mov    %rbx,0x30(%rsp)
180113a9b:	4d 8b cd             	mov    %r13,%r9
180113a9e:	48 89 74 24 28       	mov    %rsi,0x28(%rsp)
180113aa3:	4c 8b c0             	mov    %rax,%r8
180113aa6:	4c 89 74 24 20       	mov    %r14,0x20(%rsp)
180113aab:	e8 08 02 00 00       	call   0x180113cb8
180113ab0:	33 ed                	xor    %ebp,%ebp
180113ab2:	85 c0                	test   %eax,%eax
180113ab4:	40 0f 95 c5          	setne  %bpl
180113ab8:	e9 d7 01 00 00       	jmp    0x180113c94
180113abd:	48 85 c0             	test   %rax,%rax
180113ac0:	75 1d                	jne    0x180113adf
180113ac2:	4c 8b cb             	mov    %rbx,%r9
180113ac5:	4c 8d 44 24 68       	lea    0x68(%rsp),%r8
180113aca:	48 8b d7             	mov    %rdi,%rdx
180113acd:	49 8b cf             	mov    %r15,%rcx
180113ad0:	e8 e7 03 00 00       	call   0x180113ebc
180113ad5:	48 8d 44 24 68       	lea    0x68(%rsp),%rax
180113ada:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
180113adf:	48 83 64 fe f8 00    	andq   $0x0,-0x8(%rsi,%rdi,8)
180113ae5:	4c 8d 47 ff          	lea    -0x1(%rdi),%r8
180113ae9:	4c 2b f7             	sub    %rdi,%r14
180113aec:	49 c1 e0 03          	shl    $0x3,%r8
180113af0:	49 8d 54 24 08       	lea    0x8(%r12),%rdx
180113af5:	48 8b ce             	mov    %rsi,%rcx
180113af8:	4a 8d 14 f2          	lea    (%rdx,%r14,8),%rdx
180113afc:	e8 bf 1e 02 00       	call   0x1801359c0
180113b01:	49 8d 4e 01          	lea    0x1(%r14),%rcx
180113b05:	48 8d 14 cd 00 00 00 	lea    0x0(,%rcx,8),%rdx
180113b0c:	00
180113b0d:	49 03 d5             	add    %r13,%rdx
180113b10:	4d 2b e5             	sub    %r13,%r12
180113b13:	48 8b c1             	mov    %rcx,%rax
180113b16:	48 83 ea 08          	sub    $0x8,%rdx
180113b1a:	48 ff c9             	dec    %rcx
180113b1d:	48 89 54 24 50       	mov    %rdx,0x50(%rsp)
180113b22:	48 89 4c 24 60       	mov    %rcx,0x60(%rsp)
180113b27:	48 85 c0             	test   %rax,%rax
180113b2a:	0f 84 64 01 00 00    	je     0x180113c94
180113b30:	4c 8b 74 fe f8       	mov    -0x8(%rsi,%rdi,8),%r14
180113b35:	48 8d 47 ff          	lea    -0x1(%rdi),%rax
180113b39:	4c 89 74 24 48       	mov    %r14,0x48(%rsp)
180113b3e:	48 8b c8             	mov    %rax,%rcx
180113b41:	48 85 c0             	test   %rax,%rax
180113b44:	74 0f                	je     0x180113b55
180113b46:	48 8b 44 ce f8       	mov    -0x8(%rsi,%rcx,8),%rax
180113b4b:	48 89 04 ce          	mov    %rax,(%rsi,%rcx,8)
180113b4f:	48 83 e9 01          	sub    $0x1,%rcx
180113b53:	75 f1                	jne    0x180113b46
180113b55:	49 8b 04 14          	mov    (%r12,%rdx,1),%rax
180113b59:	48 89 06             	mov    %rax,(%rsi)
180113b5c:	4d 85 f6             	test   %r14,%r14
180113b5f:	75 16                	jne    0x180113b77
180113b61:	4c 8b c7             	mov    %rdi,%r8
180113b64:	49 8b d7             	mov    %r15,%rdx
180113b67:	48 8b ce             	mov    %rsi,%rcx
180113b6a:	e8 f9 c9 ff ff       	call   0x180110568
180113b6f:	85 c0                	test   %eax,%eax
180113b71:	0f 88 e3 00 00 00    	js     0x180113c5a
180113b77:	4c 8b 5c 24 40       	mov    0x40(%rsp),%r11
180113b7c:	49 8b c6             	mov    %r14,%rax
180113b7f:	4c 8b 44 fe f8       	mov    -0x8(%rsi,%rdi,8),%r8
180113b84:	ba 3f 00 00 00       	mov    $0x3f,%edx
180113b89:	4c 8b 4c fe f0       	mov    -0x10(%rsi,%rdi,8),%r9
180113b8e:	4d 8b d0             	mov    %r8,%r10
180113b91:	49 d1 ea             	shr    $1,%r10
180113b94:	49 2b 53 08          	sub    0x8(%r11),%rdx
180113b98:	48 8b ca             	mov    %rdx,%rcx
180113b9b:	49 d1 e9             	shr    $1,%r9
180113b9e:	49 d3 ea             	shr    %cl,%r10
180113ba1:	49 8b 4b 08          	mov    0x8(%r11),%rcx
180113ba5:	48 d3 e0             	shl    %cl,%rax
180113ba8:	48 8b ca             	mov    %rdx,%rcx
180113bab:	49 d3 e9             	shr    %cl,%r9
180113bae:	4c 0b d0             	or     %rax,%r10
180113bb1:	49 8b 4b 08          	mov    0x8(%r11),%rcx
180113bb5:	49 d3 e0             	shl    %cl,%r8
180113bb8:	49 8b 0b             	mov    (%r11),%rcx
180113bbb:	4d 0b c8             	or     %r8,%r9
180113bbe:	48 8b c1             	mov    %rcx,%rax
180113bc1:	49 f7 e2             	mul    %r10
180113bc4:	4c 8b f2             	mov    %rdx,%r14
180113bc7:	49 8d 14 01          	lea    (%r9,%rax,1),%rdx
180113bcb:	49 3b d1             	cmp    %r9,%rdx
180113bce:	4d 13 f2             	adc    %r10,%r14
180113bd1:	4d 85 c9             	test   %r9,%r9
180113bd4:	79 0e                	jns    0x180113be4
180113bd6:	48 d1 e9             	shr    $1,%rcx
180113bd9:	48 8d 04 11          	lea    (%rcx,%rdx,1),%rax
180113bdd:	48 3b c2             	cmp    %rdx,%rax
180113be0:	49 83 d6 00          	adc    $0x0,%r14
180113be4:	49 83 fe ff          	cmp    $0xffffffffffffffff,%r14
180113be8:	4c 8b cf             	mov    %rdi,%r9
180113beb:	4c 8b c6             	mov    %rsi,%r8
180113bee:	49 8b cf             	mov    %r15,%rcx
180113bf1:	49 83 d6 00          	adc    $0x0,%r14
180113bf5:	49 8b d6             	mov    %r14,%rdx
180113bf8:	e8 2b d8 ff ff       	call   0x180111428
180113bfd:	48 8b 4c 24 48       	mov    0x48(%rsp),%rcx
180113c02:	48 89 44 24 58       	mov    %rax,0x58(%rsp)
180113c07:	48 3b c1             	cmp    %rcx,%rax
180113c0a:	76 3e                	jbe    0x180113c4a
180113c0c:	48 8b cf             	mov    %rdi,%rcx
180113c0f:	49 ff ce             	dec    %r14
180113c12:	48 c1 e1 06          	shl    $0x6,%rcx
180113c16:	4c 8b c6             	mov    %rsi,%r8
180113c19:	48 81 f9 00 01 00 00 	cmp    $0x100,%rcx
180113c20:	49 8b d7             	mov    %r15,%rdx
180113c23:	48 8b ce             	mov    %rsi,%rcx
180113c26:	75 07                	jne    0x180113c2f
180113c28:	e8 c3 f1 01 00       	call   0x180132df0
180113c2d:	eb 08                	jmp    0x180113c37
180113c2f:	4c 8b cf             	mov    %rdi,%r9
180113c32:	e8 89 f1 01 00       	call   0x180132dc0
180113c37:	48 8b c8             	mov    %rax,%rcx
180113c3a:	48 8b 44 24 58       	mov    0x58(%rsp),%rax
180113c3f:	48 2b c1             	sub    %rcx,%rax
180113c42:	48 8b 4c 24 48       	mov    0x48(%rsp),%rcx
180113c47:	48 3b c1             	cmp    %rcx,%rax
180113c4a:	74 0e                	je     0x180113c5a
180113c4c:	33 ed                	xor    %ebp,%ebp
180113c4e:	48 85 db             	test   %rbx,%rbx
180113c51:	74 07                	je     0x180113c5a
180113c53:	c7 43 10 05 00 00 00 	movl   $0x5,0x10(%rbx)
180113c5a:	48 8b 54 24 50       	mov    0x50(%rsp),%rdx
180113c5f:	4d 85 ed             	test   %r13,%r13
180113c62:	74 03                	je     0x180113c67
180113c64:	4c 89 32             	mov    %r14,(%rdx)
180113c67:	48 8b 4c 24 60       	mov    0x60(%rsp),%rcx
180113c6c:	85 ed                	test   %ebp,%ebp
180113c6e:	0f 85 9f fe ff ff    	jne    0x180113b13
180113c74:	eb 1e                	jmp    0x180113c94
180113c76:	33 ed                	xor    %ebp,%ebp
180113c78:	48 85 db             	test   %rbx,%rbx
180113c7b:	74 17                	je     0x180113c94
180113c7d:	c7 43 10 0e 00 00 00 	movl   $0xe,0x10(%rbx)
180113c84:	eb 0e                	jmp    0x180113c94
180113c86:	33 ed                	xor    %ebp,%ebp
180113c88:	48 85 db             	test   %rbx,%rbx
180113c8b:	74 07                	je     0x180113c94
180113c8d:	c7 43 10 0c 00 00 00 	movl   $0xc,0x10(%rbx)
180113c94:	8b c5                	mov    %ebp,%eax
180113c96:	48 8b 4c 24 78       	mov    0x78(%rsp),%rcx
180113c9b:	48 33 cc             	xor    %rsp,%rcx
180113c9e:	e8 89 1e f0 ff       	call   0x180015b2c
180113ca3:	48 81 c4 88 00 00 00 	add    $0x88,%rsp
180113caa:	41 5f                	pop    %r15
180113cac:	41 5e                	pop    %r14
180113cae:	41 5d                	pop    %r13
180113cb0:	41 5c                	pop    %r12
180113cb2:	5f                   	pop    %rdi
180113cb3:	5e                   	pop    %rsi
180113cb4:	5d                   	pop    %rbp
180113cb5:	5b                   	pop    %rbx
180113cb6:	c3                   	ret
180113cb7:	cc                   	int3
180113cb8:	40 55                	rex push %rbp
180113cba:	53                   	push   %rbx
180113cbb:	56                   	push   %rsi
180113cbc:	57                   	push   %rdi
180113cbd:	41 54                	push   %r12
180113cbf:	41 55                	push   %r13
180113cc1:	41 56                	push   %r14
180113cc3:	41 57                	push   %r15
180113cc5:	48 8d 6c 24 f9       	lea    -0x7(%rsp),%rbp
180113cca:	48 81 ec 88 00 00 00 	sub    $0x88,%rsp
180113cd1:	48 8b 05 98 8c 05 00 	mov    0x58c98(%rip),%rax        # 0x18016c970
180113cd8:	48 33 c4             	xor    %rsp,%rax
180113cdb:	48 89 45 ef          	mov    %rax,-0x11(%rbp)
180113cdf:	48 8b 5d 6f          	mov    0x6f(%rbp),%rbx
180113ce3:	33 ff                	xor    %edi,%edi
180113ce5:	48 8b 45 77          	mov    0x77(%rbp),%rax
180113ce9:	4c 8b e2             	mov    %rdx,%r12
180113cec:	4c 8b 6d 7f          	mov    0x7f(%rbp),%r13
180113cf0:	49 8b f1             	mov    %r9,%rsi
180113cf3:	48 89 55 af          	mov    %rdx,-0x51(%rbp)
180113cf7:	4d 8b f8             	mov    %r8,%r15
180113cfa:	48 89 45 bf          	mov    %rax,-0x41(%rbp)
180113cfe:	4c 8b f1             	mov    %rcx,%r14
180113d01:	48 89 7d b7          	mov    %rdi,-0x49(%rbp)
180113d05:	ba 01 00 00 00       	mov    $0x1,%edx
180113d0a:	48 85 db             	test   %rbx,%rbx
180113d0d:	74 1c                	je     0x180113d2b
180113d0f:	4c 39 64 d9 f8       	cmp    %r12,-0x8(%rcx,%rbx,8)
180113d14:	73 15                	jae    0x180113d2b
180113d16:	48 ff cb             	dec    %rbx
180113d19:	48 8b 3c d9          	mov    (%rcx,%rbx,8),%rdi
180113d1d:	48 89 7d b7          	mov    %rdi,-0x49(%rbp)
180113d21:	4d 85 c9             	test   %r9,%r9
180113d24:	74 05                	je     0x180113d2b
180113d26:	49 83 24 d9 00       	andq   $0x0,(%r9,%rbx,8)
180113d2b:	4d 85 c0             	test   %r8,%r8
180113d2e:	0f 85 a7 00 00 00    	jne    0x180113ddb
180113d34:	48 83 fb 02          	cmp    $0x2,%rbx
180113d38:	73 7d                	jae    0x180113db7
180113d3a:	48 85 db             	test   %rbx,%rbx
180113d3d:	0f 84 53 01 00 00    	je     0x180113e96
180113d43:	4d 8d 3c d9          	lea    (%r9,%rbx,8),%r15
180113d47:	4c 2b f6             	sub    %rsi,%r14
180113d4a:	48 83 65 af 00       	andq   $0x0,-0x51(%rbp)
180113d4f:	4d 8d 7f f8          	lea    -0x8(%r15),%r15
180113d53:	48 ff cb             	dec    %rbx
180113d56:	85 d2                	test   %edx,%edx
180113d58:	74 45                	je     0x180113d9f
180113d5a:	4b 8b 04 3e          	mov    (%r14,%r15,1),%rax
180113d5e:	4c 8d 4d b7          	lea    -0x49(%rbp),%r9
180113d62:	48 89 45 d7          	mov    %rax,-0x29(%rbp)
180113d66:	4c 8d 45 af          	lea    -0x51(%rbp),%r8
180113d6a:	48 89 7d cf          	mov    %rdi,-0x31(%rbp)
180113d6e:	48 8d 4d df          	lea    -0x21(%rbp),%rcx
180113d72:	0f 28 45 cf          	movaps -0x31(%rbp),%xmm0
180113d76:	49 8b d4             	mov    %r12,%rdx
180113d79:	c7 44 24 28 01 00 00 	movl   $0x1,0x28(%rsp)
180113d80:	00
180113d81:	66 0f 7f 45 df       	movdqa %xmm0,-0x21(%rbp)
180113d86:	4c 89 6c 24 20       	mov    %r13,0x20(%rsp)
180113d8b:	e8 54 fb ff ff       	call   0x1801138e4
180113d90:	48 8b 7d b7          	mov    -0x49(%rbp),%rdi
180113d94:	85 c0                	test   %eax,%eax
180113d96:	74 07                	je     0x180113d9f
180113d98:	ba 01 00 00 00       	mov    $0x1,%edx
180113d9d:	eb 02                	jmp    0x180113da1
180113d9f:	33 d2                	xor    %edx,%edx
180113da1:	48 85 f6             	test   %rsi,%rsi
180113da4:	74 07                	je     0x180113dad
180113da6:	48 8b 45 af          	mov    -0x51(%rbp),%rax
180113daa:	49 89 07             	mov    %rax,(%r15)
180113dad:	48 85 db             	test   %rbx,%rbx
180113db0:	75 98                	jne    0x180113d4a
180113db2:	e9 d7 00 00 00       	jmp    0x180113e8e
180113db7:	4d 85 c0             	test   %r8,%r8
180113dba:	75 1f                	jne    0x180113ddb
180113dbc:	4d 8b cd             	mov    %r13,%r9
180113dbf:	4c 8d 45 df          	lea    -0x21(%rbp),%r8
180113dc3:	48 8d 4d af          	lea    -0x51(%rbp),%rcx
180113dc7:	e8 f0 00 00 00       	call   0x180113ebc
180113dcc:	4c 8b 65 af          	mov    -0x51(%rbp),%r12
180113dd0:	4c 8d 7d df          	lea    -0x21(%rbp),%r15
180113dd4:	33 d2                	xor    %edx,%edx
180113dd6:	85 c0                	test   %eax,%eax
180113dd8:	0f 95 c2             	setne  %dl
180113ddb:	85 d2                	test   %edx,%edx
180113ddd:	0f 84 b6 00 00 00    	je     0x180113e99
180113de3:	4c 8d 14 de          	lea    (%rsi,%rbx,8),%r10
180113de7:	4c 2b f6             	sub    %rsi,%r14
180113dea:	48 8b c3             	mov    %rbx,%rax
180113ded:	4d 8d 52 f8          	lea    -0x8(%r10),%r10
180113df1:	48 ff cb             	dec    %rbx
180113df4:	48 85 c0             	test   %rax,%rax
180113df7:	0f 84 91 00 00 00    	je     0x180113e8e
180113dfd:	33 c0                	xor    %eax,%eax
180113dff:	85 d2                	test   %edx,%edx
180113e01:	74 79                	je     0x180113e7c
180113e03:	4f 8b 2c 32          	mov    (%r10,%r14,1),%r13
180113e07:	8d 48 3f             	lea    0x3f(%rax),%ecx
180113e0a:	41 2a 4f 08          	sub    0x8(%r15),%cl
180113e0e:	4d 8b cd             	mov    %r13,%r9
180113e11:	49 d1 e9             	shr    $1,%r9
180113e14:	48 8b c7             	mov    %rdi,%rax
180113e17:	49 d3 e9             	shr    %cl,%r9
180113e1a:	4d 8b c5             	mov    %r13,%r8
180113e1d:	49 8b 4f 08          	mov    0x8(%r15),%rcx
180113e21:	48 d3 e0             	shl    %cl,%rax
180113e24:	4c 0b c8             	or     %rax,%r9
180113e27:	49 d3 e0             	shl    %cl,%r8
180113e2a:	49 8b 0f             	mov    (%r15),%rcx
180113e2d:	48 8b c1             	mov    %rcx,%rax
180113e30:	49 f7 e1             	mul    %r9
180113e33:	4c 8b da             	mov    %rdx,%r11
180113e36:	49 8d 14 00          	lea    (%r8,%rax,1),%rdx
180113e3a:	49 3b d0             	cmp    %r8,%rdx
180113e3d:	4d 13 d9             	adc    %r9,%r11
180113e40:	4d 85 c0             	test   %r8,%r8
180113e43:	79 0e                	jns    0x180113e53
180113e45:	48 d1 e9             	shr    $1,%rcx
180113e48:	48 8d 04 11          	lea    (%rcx,%rdx,1),%rax
180113e4c:	48 3b c2             	cmp    %rdx,%rax
180113e4f:	49 83 d3 00          	adc    $0x0,%r11
180113e53:	49 2b fc             	sub    %r12,%rdi
180113e56:	49 f7 d3             	not    %r11
180113e59:	49 8b c4             	mov    %r12,%rax
180113e5c:	49 f7 e3             	mul    %r11
180113e5f:	4a 8d 0c 28          	lea    (%rax,%r13,1),%rcx
180113e63:	49 3b cd             	cmp    %r13,%rcx
180113e66:	48 13 fa             	adc    %rdx,%rdi
180113e69:	ba 01 00 00 00       	mov    $0x1,%edx
180113e6e:	48 8b c7             	mov    %rdi,%rax
180113e71:	49 23 fc             	and    %r12,%rdi
180113e74:	49 2b c3             	sub    %r11,%rax
180113e77:	48 03 f9             	add    %rcx,%rdi
180113e7a:	eb 02                	jmp    0x180113e7e
180113e7c:	33 d2                	xor    %edx,%edx
180113e7e:	48 85 f6             	test   %rsi,%rsi
180113e81:	74 03                	je     0x180113e86
180113e83:	49 89 02             	mov    %rax,(%r10)
180113e86:	85 d2                	test   %edx,%edx
180113e88:	0f 85 5c ff ff ff    	jne    0x180113dea
180113e8e:	85 d2                	test   %edx,%edx
180113e90:	74 07                	je     0x180113e99
180113e92:	48 8b 45 bf          	mov    -0x41(%rbp),%rax
180113e96:	48 89 38             	mov    %rdi,(%rax)
180113e99:	8b c2                	mov    %edx,%eax
180113e9b:	48 8b 4d ef          	mov    -0x11(%rbp),%rcx
180113e9f:	48 33 cc             	xor    %rsp,%rcx
180113ea2:	e8 85 1c f0 ff       	call   0x180015b2c
180113ea7:	48 81 c4 88 00 00 00 	add    $0x88,%rsp
180113eae:	41 5f                	pop    %r15
180113eb0:	41 5e                	pop    %r14
180113eb2:	41 5d                	pop    %r13
180113eb4:	41 5c                	pop    %r12
180113eb6:	5f                   	pop    %rdi
180113eb7:	5e                   	pop    %rsi
180113eb8:	5b                   	pop    %rbx
180113eb9:	5d                   	pop    %rbp
180113eba:	c3                   	ret
180113ebb:	cc                   	int3
180113ebc:	40 53                	rex push %rbx
180113ebe:	55                   	push   %rbp
180113ebf:	56                   	push   %rsi
180113ec0:	57                   	push   %rdi
180113ec1:	41 56                	push   %r14
180113ec3:	41 57                	push   %r15
180113ec5:	48 83 ec 58          	sub    $0x58,%rsp
180113ec9:	4d 8b f8             	mov    %r8,%r15
180113ecc:	48 8b da             	mov    %rdx,%rbx
180113ecf:	48 8b f1             	mov    %rcx,%rsi