180043925:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
18004392a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
18004392f:	57                   	push   %rdi
180043930:	41 54                	push   %r12
180043932:	41 55                	push   %r13
180043934:	41 56                	push   %r14
180043936:	41 57                	push   %r15
180043938:	48 83 ec 20          	sub    $0x20,%rsp
18004393c:	33 ff                	xor    %edi,%edi
18004393e:	4d 8b f8             	mov    %r8,%r15
180043941:	4c 8b e2             	mov    %rdx,%r12
180043944:	48 8b d9             	mov    %rcx,%rbx
180043947:	48 3b 51 30          	cmp    0x30(%rcx),%rdx
18004394b:	72 0a                	jb     0x180043957
18004394d:	bf 0d 00 00 c0       	mov    $0xc000000d,%edi
180043952:	e9 16 01 00 00       	jmp    0x180043a6d
180043957:	44 8b 69 24          	mov    0x24(%rcx),%r13d
18004395b:	48 8b f3             	mov    %rbx,%rsi
18004395e:	44 8b 71 20          	mov    0x20(%rcx),%r14d
180043962:	8b 69 38             	mov    0x38(%rcx),%ebp
180043965:	41 ff ce             	dec    %r14d
180043968:	41 c1 e5 03          	shl    $0x3,%r13d
18004396c:	2b 69 28             	sub    0x28(%rcx),%ebp
18004396f:	0f 88 d9 00 00 00    	js     0x180043a4e
180043975:	4c 8b 0e             	mov    (%rsi),%r9
180043978:	4d 85 c9             	test   %r9,%r9
18004397b:	0f 85 9a 00 00 00    	jne    0x180043a1b
180043981:	41 8b cd             	mov    %r13d,%ecx
180043984:	48 83 c1 20          	add    $0x20,%rcx
180043988:	e8 87 2f 00 00       	call   0x180046914
18004398d:	4c 8b c8             	mov    %rax,%r9
180043990:	48 85 c0             	test   %rax,%rax
180043993:	0f 84 ae 00 00 00    	je     0x180043a47
180043999:	33 d2                	xor    %edx,%edx
18004399b:	41 8d 4e 01          	lea    0x1(%r14),%ecx
18004399f:	0f af 4b 28          	imul   0x28(%rbx),%ecx
1800439a3:	b8 01 00 00 00       	mov    $0x1,%eax
1800439a8:	48 d3 e0             	shl    %cl,%rax
1800439ab:	8b 4b 24             	mov    0x24(%rbx),%ecx
1800439ae:	48 ff c8             	dec    %rax
1800439b1:	48 f7 d0             	not    %rax
1800439b4:	45 89 71 14          	mov    %r14d,0x14(%r9)
1800439b8:	49 23 c4             	and    %r12,%rax
1800439bb:	48 f7 f1             	div    %rcx
1800439be:	48 8d 53 08          	lea    0x8(%rbx),%rdx
1800439c2:	41 89 41 10          	mov    %eax,0x10(%r9)
1800439c6:	45 85 f6             	test   %r14d,%r14d
1800439c9:	75 36                	jne    0x180043a01
1800439cb:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
1800439cf:	eb 12                	jmp    0x1800439e3
1800439d1:	39 79 14             	cmp    %edi,0x14(%rcx)
1800439d4:	75 09                	jne    0x1800439df
1800439d6:	41 8b 41 10          	mov    0x10(%r9),%eax
1800439da:	39 41 10             	cmp    %eax,0x10(%rcx)
1800439dd:	72 09                	jb     0x1800439e8
1800439df:	48 8b 49 08          	mov    0x8(%rcx),%rcx
1800439e3:	48 3b ca             	cmp    %rdx,%rcx
1800439e6:	75 e9                	jne    0x1800439d1
1800439e8:	48 8b 01             	mov    (%rcx),%rax
1800439eb:	48 39 48 08          	cmp    %rcx,0x8(%rax)
1800439ef:	75 4f                	jne    0x180043a40
1800439f1:	49 89 01             	mov    %rax,(%r9)
1800439f4:	49 89 49 08          	mov    %rcx,0x8(%r9)
1800439f8:	4c 89 48 08          	mov    %r9,0x8(%rax)
1800439fc:	4c 89 09             	mov    %r9,(%rcx)
1800439ff:	eb 17                	jmp    0x180043a18
180043a01:	48 8b 42 08          	mov    0x8(%rdx),%rax
180043a05:	48 39 10             	cmp    %rdx,(%rax)
180043a08:	75 36                	jne    0x180043a40
180043a0a:	49 89 11             	mov    %rdx,(%r9)
180043a0d:	49 89 41 08          	mov    %rax,0x8(%r9)
180043a11:	4c 89 08             	mov    %r9,(%rax)
180043a14:	4c 89 4a 08          	mov    %r9,0x8(%rdx)
180043a18:	4c 89 0e             	mov    %r9,(%rsi)
180043a1b:	8b cd                	mov    %ebp,%ecx
180043a1d:	49 8b f4             	mov    %r12,%rsi
180043a20:	2b 6b 28             	sub    0x28(%rbx),%ebp
180043a23:	41 ff ce             	dec    %r14d
180043a26:	48 d3 ee             	shr    %cl,%rsi
180043a29:	8b 4b 24             	mov    0x24(%rbx),%ecx
180043a2c:	ff c9                	dec    %ecx
180043a2e:	48 23 f1             	and    %rcx,%rsi
180043a31:	48 83 c6 03          	add    $0x3,%rsi
180043a35:	85 ed                	test   %ebp,%ebp
180043a37:	49 8d 34 f1          	lea    (%r9,%rsi,8),%rsi
180043a3b:	e9 2f ff ff ff       	jmp    0x18004396f
180043a40:	b9 03 00 00 00       	mov    $0x3,%ecx
180043a45:	cd 29                	int    $0x29
180043a47:	bf 9a 00 00 c0       	mov    $0xc000009a,%edi
180043a4c:	eb 1f                	jmp    0x180043a6d
180043a4e:	48 8b 06             	mov    (%rsi),%rax
180043a51:	4d 85 ff             	test   %r15,%r15
180043a54:	74 0b                	je     0x180043a61
180043a56:	48 85 c0             	test   %rax,%rax
180043a59:	75 0f                	jne    0x180043a6a
180043a5b:	48 ff 43 18          	incq   0x18(%rbx)
180043a5f:	eb 09                	jmp    0x180043a6a
180043a61:	48 85 c0             	test   %rax,%rax
180043a64:	74 04                	je     0x180043a6a
180043a66:	48 ff 4b 18          	decq   0x18(%rbx)
180043a6a:	4c 89 3e             	mov    %r15,(%rsi)
180043a6d:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
180043a72:	8b c7                	mov    %edi,%eax
180043a74:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
180043a79:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
180043a7e:	48 83 c4 20          	add    $0x20,%rsp
180043a82:	41 5f                	pop    %r15
180043a84:	41 5e                	pop    %r14
180043a86:	41 5d                	pop    %r13
180043a88:	41 5c                	pop    %r12
180043a8a:	5f                   	pop    %rdi
180043a8b:	c3                   	ret
180043a8c:	cc                   	int3
180043a8d:	cc                   	int3
180043a8e:	cc                   	int3
180043a8f:	cc                   	int3
180043a90:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180043a95:	57                   	push   %rdi
180043a96:	48 83 ec 20          	sub    $0x20,%rsp
180043a9a:	48 83 64 24 40 00    	andq   $0x0,0x40(%rsp)
180043aa0:	48 8b da             	mov    %rdx,%rbx
180043aa3:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
180043aa8:	48 8b f9             	mov    %rcx,%rdi
180043aab:	e8 bc 00 00 00       	call   0x180043b6c
180043ab0:	48 8b 54 24 40       	mov    0x40(%rsp),%rdx
180043ab5:	4c 8b c3             	mov    %rbx,%r8
180043ab8:	48 ff c2             	inc    %rdx
180043abb:	48 8b cf             	mov    %rdi,%rcx
180043abe:	e8 5d fe ff ff       	call   0x180043920
180043ac3:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
180043ac8:	48 83 c4 20          	add    $0x20,%rsp
180043acc:	5f                   	pop    %rdi
180043acd:	c3                   	ret
180043ace:	cc                   	int3
180043acf:	cc                   	int3
180043ad0:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
180043ad5:	53                   	push   %rbx
180043ad6:	48 83 ec 20          	sub    $0x20,%rsp
180043ada:	48 83 64 24 38 00    	andq   $0x0,0x38(%rsp)
180043ae0:	48 8d 54 24 38       	lea    0x38(%rsp),%rdx
180043ae5:	48 8b d9             	mov    %rcx,%rbx
180043ae8:	e8 7f 00 00 00       	call   0x180043b6c
180043aed:	48 8b 54 24 38       	mov    0x38(%rsp),%rdx
180043af2:	45 33 c0             	xor    %r8d,%r8d
180043af5:	48 8b cb             	mov    %rbx,%rcx
180043af8:	e8 23 fe ff ff       	call   0x180043920
180043afd:	48 83 c4 20          	add    $0x20,%rsp
180043b01:	5b                   	pop    %rbx
180043b02:	c3                   	ret
180043b03:	cc                   	int3
180043b04:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180043b09:	45 33 c9             	xor    %r9d,%r9d
180043b0c:	4c 8d 41 08          	lea    0x8(%rcx),%r8
180043b10:	49 8b 00             	mov    (%r8),%rax
180043b13:	48 8b da             	mov    %rdx,%rbx
180043b16:	4c 89 0a             	mov    %r9,(%rdx)
180043b19:	4c 8b d9             	mov    %rcx,%r11
180043b1c:	49 3b c0             	cmp    %r8,%rax
180043b1f:	74 40                	je     0x180043b61
180043b21:	44 39 48 14          	cmp    %r9d,0x14(%rax)
180043b25:	75 3a                	jne    0x180043b61
180043b27:	45 8b 53 24          	mov    0x24(%r11),%r10d
180043b2b:	41 8b c9             	mov    %r9d,%ecx
180043b2e:	45 85 d2             	test   %r10d,%r10d
180043b31:	74 14                	je     0x180043b47
180043b33:	48 8d 50 18          	lea    0x18(%rax),%rdx
180043b37:	4c 39 0a             	cmp    %r9,(%rdx)
180043b3a:	75 10                	jne    0x180043b4c
180043b3c:	ff c1                	inc    %ecx
180043b3e:	48 83 c2 08          	add    $0x8,%rdx
180043b42:	41 3b ca             	cmp    %r10d,%ecx
180043b45:	72 f0                	jb     0x180043b37
180043b47:	48 8b 00             	mov    (%rax),%rax
180043b4a:	eb d0                	jmp    0x180043b1c
180043b4c:	8b 50 10             	mov    0x10(%rax),%edx
180043b4f:	44 8b c1             	mov    %ecx,%r8d
180043b52:	49 0f af d2          	imul   %r10,%rdx
180043b56:	4e 8b 4c c0 18       	mov    0x18(%rax,%r8,8),%r9
180043b5b:	49 03 d0             	add    %r8,%rdx
180043b5e:	48 89 13             	mov    %rdx,(%rbx)
180043b61:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
180043b66:	49 8b c1             	mov    %r9,%rax
180043b69:	c3                   	ret
180043b6a:	cc                   	int3
180043b6b:	cc                   	int3
180043b6c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180043b71:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
180043b76:	48 89 7c 24 18       	mov    %rdi,0x18(%rsp)
180043b7b:	4c 8b 41 10          	mov    0x10(%rcx),%r8
180043b7f:	48 8d 79 08          	lea    0x8(%rcx),%rdi
180043b83:	33 c0                	xor    %eax,%eax
180043b85:	48 8b f2             	mov    %rdx,%rsi
180043b88:	48 89 02             	mov    %rax,(%rdx)
180043b8b:	4c 8b d1             	mov    %rcx,%r10
180043b8e:	44 8a d8             	mov    %al,%r11b
180043b91:	44 8b c8             	mov    %eax,%r9d
180043b94:	4c 3b c7             	cmp    %rdi,%r8
180043b97:	74 61                	je     0x180043bfa
180043b99:	49 8d 18             	lea    (%r8),%rbx
180043b9c:	41 39 40 14          	cmp    %eax,0x14(%r8)
180043ba0:	75 31                	jne    0x180043bd3
180043ba2:	45 8b 4a 24          	mov    0x24(%r10),%r9d
180043ba6:	41 83 e9 01          	sub    $0x1,%r9d
180043baa:	49 63 c9             	movslq %r9d,%rcx
180043bad:	78 1f                	js     0x180043bce
180043baf:	48 8d 51 03          	lea    0x3(%rcx),%rdx
180043bb3:	49 8d 14 d0          	lea    (%r8,%rdx,8),%rdx
180043bb7:	48 39 02             	cmp    %rax,(%rdx)
180043bba:	75 0f                	jne    0x180043bcb
180043bbc:	41 ff c9             	dec    %r9d
180043bbf:	48 83 ea 08          	sub    $0x8,%rdx
180043bc3:	48 83 e9 01          	sub    $0x1,%rcx
180043bc7:	79 ee                	jns    0x180043bb7
180043bc9:	eb 03                	jmp    0x180043bce
180043bcb:	41 b3 01             	mov    $0x1,%r11b
180043bce:	45 84 db             	test   %r11b,%r11b
180043bd1:	75 0e                	jne    0x180043be1
180043bd3:	4d 8b 40 08          	mov    0x8(%r8),%r8
180043bd7:	4c 3b c7             	cmp    %rdi,%r8
180043bda:	75 bd                	jne    0x180043b99
180043bdc:	45 84 db             	test   %r11b,%r11b
180043bdf:	74 19                	je     0x180043bfa
180043be1:	8b 53 10             	mov    0x10(%rbx),%edx
180043be4:	41 8b 4a 24          	mov    0x24(%r10),%ecx
180043be8:	4d 63 c1             	movslq %r9d,%r8
180043beb:	48 0f af d1          	imul   %rcx,%rdx
180043bef:	4a 8b 44 c3 18       	mov    0x18(%rbx,%r8,8),%rax
180043bf4:	49 03 d0             	add    %r8,%rdx
180043bf7:	48 89 16             	mov    %rdx,(%rsi)
180043bfa:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
180043bff:	48 8b 74 24 10       	mov    0x10(%rsp),%rsi
180043c04:	48 8b 7c 24 18       	mov    0x18(%rsp),%rdi
180043c09:	c3                   	ret
180043c0a:	cc                   	int3
180043c0b:	cc                   	int3
180043c0c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180043c11:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
180043c16:	48 89 7c 24 18       	mov    %rdi,0x18(%rsp)
180043c1b:	41 56                	push   %r14
180043c1d:	48 83 ec 20          	sub    $0x20,%rsp
180043c21:	48 8b 1a             	mov    (%rdx),%rbx
180043c24:	33 ff                	xor    %edi,%edi
180043c26:	4c 8b f2             	mov    %rdx,%r14
180043c29:	48 89 3a             	mov    %rdi,(%rdx)
180043c2c:	48 8b f1             	mov    %rcx,%rsi
180043c2f:	48 8d 43 01          	lea    0x1(%rbx),%rax
180043c33:	48 3b 41 30          	cmp    0x30(%rcx),%rax
180043c37:	73 6b                	jae    0x180043ca4
180043c39:	48 8b d3             	mov    %rbx,%rdx
180043c3c:	e8 4f fc ff ff       	call   0x180043890
180043c41:	4c 8b c0             	mov    %rax,%r8
180043c44:	48 85 c0             	test   %rax,%rax
180043c47:	74 5b                	je     0x180043ca4
180043c49:	8b 48 10             	mov    0x10(%rax),%ecx
180043c4c:	8d 47 01             	lea    0x1(%rdi),%eax
180043c4f:	8b 56 24             	mov    0x24(%rsi),%edx
180043c52:	48 0f af ca          	imul   %rdx,%rcx
180043c56:	48 2b c1             	sub    %rcx,%rax
180043c59:	48 03 d8             	add    %rax,%rbx
180043c5c:	48 83 c6 08          	add    $0x8,%rsi
180043c60:	4c 3b c6             	cmp    %rsi,%r8
180043c63:	74 3f                	je     0x180043ca4
180043c65:	41 39 78 14          	cmp    %edi,0x14(%r8)
180043c69:	75 39                	jne    0x180043ca4
180043c6b:	48 3b da             	cmp    %rdx,%rbx
180043c6e:	73 19                	jae    0x180043c89
180043c70:	48 8d 43 03          	lea    0x3(%rbx),%rax
180043c74:	49 8d 04 c0          	lea    (%r8,%rax,8),%rax
180043c78:	48 39 38             	cmp    %rdi,(%rax)
180043c7b:	75 14                	jne    0x180043c91
180043c7d:	48 ff c3             	inc    %rbx
180043c80:	48 83 c0 08          	add    $0x8,%rax
180043c84:	48 3b da             	cmp    %rdx,%rbx
180043c87:	72 ef                	jb     0x180043c78
180043c89:	4d 8b 00             	mov    (%r8),%r8
180043c8c:	48 8b df             	mov    %rdi,%rbx
180043c8f:	eb cf                	jmp    0x180043c60
180043c91:	41 8b 48 10          	mov    0x10(%r8),%ecx
180043c95:	49 8b 7c d8 18       	mov    0x18(%r8,%rbx,8),%rdi
180043c9a:	48 0f af ca          	imul   %rdx,%rcx
180043c9e:	48 03 cb             	add    %rbx,%rcx
180043ca1:	49 89 0e             	mov    %rcx,(%r14)
180043ca4:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
180043ca9:	48 8b c7             	mov    %rdi,%rax
180043cac:	48 8b 7c 24 40       	mov    0x40(%rsp),%rdi
180043cb1:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
180043cb6:	48 83 c4 20          	add    $0x20,%rsp
180043cba:	41 5e                	pop    %r14
180043cbc:	c3                   	ret
180043cbd:	cc                   	int3
180043cbe:	cc                   	int3
180043cbf:	cc                   	int3
180043cc0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180043cc5:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
180043cca:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
180043ccf:	57                   	push   %rdi
180043cd0:	41 56                	push   %r14
180043cd2:	41 57                	push   %r15
180043cd4:	48 83 ec 20          	sub    $0x20,%rsp
180043cd8:	48 8b e9             	mov    %rcx,%rbp
180043cdb:	4c 8b fa             	mov    %rdx,%r15
180043cde:	33 c9                	xor    %ecx,%ecx
180043ce0:	48 8d 75 08          	lea    0x8(%rbp),%rsi
180043ce4:	48 8b 1e             	mov    (%rsi),%rbx
180043ce7:	eb 3d                	jmp    0x180043d26
180043ce9:	83 7b 14 00          	cmpl   $0x0,0x14(%rbx)
180043ced:	75 3c                	jne    0x180043d2b
180043cef:	8b 45 24             	mov    0x24(%rbp),%eax
180043cf2:	33 ff                	xor    %edi,%edi
180043cf4:	44 8b 73 10          	mov    0x10(%rbx),%r14d
180043cf8:	4c 0f af f0          	imul   %rax,%r14
180043cfc:	85 c0                	test   %eax,%eax
180043cfe:	74 23                	je     0x180043d23
180043d00:	4c 8b 44 fb 18       	mov    0x18(%rbx,%rdi,8),%r8
180043d05:	4d 85 c0             	test   %r8,%r8
180043d08:	74 12                	je     0x180043d1c
180043d0a:	4a 8d 14 37          	lea    (%rdi,%r14,1),%rdx
180043d0e:	49 8b cf             	mov    %r15,%rcx
180043d11:	e8 0a fc ff ff       	call   0x180043920
180043d16:	8b c8                	mov    %eax,%ecx
180043d18:	85 c0                	test   %eax,%eax
180043d1a:	78 0f                	js     0x180043d2b
180043d1c:	ff c7                	inc    %edi
180043d1e:	3b 7d 24             	cmp    0x24(%rbp),%edi
180043d21:	72 dd                	jb     0x180043d00
180043d23:	48 8b 1b             	mov    (%rbx),%rbx
180043d26:	48 3b de             	cmp    %rsi,%rbx
180043d29:	75 be                	jne    0x180043ce9
180043d2b:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
180043d30:	8b c1                	mov    %ecx,%eax
180043d32:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
180043d37:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
180043d3c:	48 83 c4 20          	add    $0x20,%rsp
180043d40:	41 5f                	pop    %r15
180043d42:	41 5e                	pop    %r14
180043d44:	5f                   	pop    %rdi
180043d45:	c3                   	ret
180043d46:	cc                   	int3
180043d47:	cc                   	int3
180043d48:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180043d4d:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
180043d52:	88 54 24 10          	mov    %dl,0x10(%rsp)
180043d56:	57                   	push   %rdi
180043d57:	48 83 ec 20          	sub    $0x20,%rsp
180043d5b:	48 8b f9             	mov    %rcx,%rdi
180043d5e:	c7 01 04 00 00 00    	movl   $0x4,(%rcx)
180043d64:	c7 41 04 10 00 00 00 	movl   $0x10,0x4(%rcx)
180043d6b:	33 db                	xor    %ebx,%ebx
180043d6d:	8d 73 40             	lea    0x40(%rbx),%esi
180043d70:	8b ce                	mov    %esi,%ecx