1800a189b:	41 8b 46 04          	mov    0x4(%r14),%eax
1800a189f:	89 46 04             	mov    %eax,0x4(%rsi)
1800a18a2:	41 8b 4e 04          	mov    0x4(%r14),%ecx
1800a18a6:	3b c1                	cmp    %ecx,%eax
1800a18a8:	73 03                	jae    0x1800a18ad
1800a18aa:	89 4e 04             	mov    %ecx,0x4(%rsi)
1800a18ad:	41 0f 10 06          	movups (%r14),%xmm0
1800a18b1:	f3 0f 7f 47 10       	movdqu %xmm0,0x10(%rdi)
1800a18b6:	48 8b 06             	mov    (%rsi),%rax
1800a18b9:	48 89 47 20          	mov    %rax,0x20(%rdi)
1800a18bd:	48 89 5f 28          	mov    %rbx,0x28(%rdi)
1800a18c1:	c7 47 30 01 00 00 00 	movl   $0x1,0x30(%rdi)
1800a18c8:	41 8b 6e 0c          	mov    0xc(%r14),%ebp
1800a18cc:	2b 6e 04             	sub    0x4(%rsi),%ebp
1800a18cf:	83 7f 38 ff          	cmpl   $0xffffffff,0x38(%rdi)
1800a18d3:	75 1e                	jne    0x1800a18f3
1800a18d5:	48 8b 03             	mov    (%rbx),%rax
1800a18d8:	48 8b cb             	mov    %rbx,%rcx
1800a18db:	0f b7 57 4c          	movzwl 0x4c(%rdi),%edx
1800a18df:	48 8b 40 28          	mov    0x28(%rax),%rax
1800a18e3:	ff d0                	call   *%rax
1800a18e5:	0f 1f 00             	nopl   (%rax)
1800a18e8:	8b c8                	mov    %eax,%ecx
1800a18ea:	33 d2                	xor    %edx,%edx
1800a18ec:	8b c5                	mov    %ebp,%eax
1800a18ee:	f7 f1                	div    %ecx
1800a18f0:	89 47 38             	mov    %eax,0x38(%rdi)
1800a18f3:	48 8b 03             	mov    (%rbx),%rax
1800a18f6:	48 8b cb             	mov    %rbx,%rcx
1800a18f9:	0f b7 57 4c          	movzwl 0x4c(%rdi),%edx
1800a18fd:	44 8b 7f 38          	mov    0x38(%rdi),%r15d
1800a1901:	48 8b 40 28          	mov    0x28(%rax),%rax
1800a1905:	ff d0                	call   *%rax
1800a1907:	0f 1f 00             	nopl   (%rax)
1800a190a:	44 8b e0             	mov    %eax,%r12d
1800a190d:	45 0f af e7          	imul   %r15d,%r12d
1800a1911:	44 3b e5             	cmp    %ebp,%r12d
1800a1914:	76 47                	jbe    0x1800a195d
1800a1916:	48 8b 03             	mov    (%rbx),%rax
1800a1919:	48 8b cb             	mov    %rbx,%rcx
1800a191c:	48 8b 40 20          	mov    0x20(%rax),%rax
1800a1920:	ff d0                	call   *%rax
1800a1922:	0f 1f 00             	nopl   (%rax)
1800a1925:	01 06                	add    %eax,(%rsi)
1800a1927:	41 8b 4e 04          	mov    0x4(%r14),%ecx
1800a192b:	89 4e 04             	mov    %ecx,0x4(%rsi)
1800a192e:	41 8b 6e 0c          	mov    0xc(%r14),%ebp
1800a1932:	2b e9                	sub    %ecx,%ebp
1800a1934:	44 3b e5             	cmp    %ebp,%r12d
1800a1937:	76 20                	jbe    0x1800a1959
1800a1939:	48 8b 03             	mov    (%rbx),%rax
1800a193c:	48 8b cb             	mov    %rbx,%rcx
1800a193f:	0f b7 57 4c          	movzwl 0x4c(%rdi),%edx
1800a1943:	48 8b 40 28          	mov    0x28(%rax),%rax
1800a1947:	ff d0                	call   *%rax
1800a1949:	0f 1f 00             	nopl   (%rax)
1800a194c:	8b c8                	mov    %eax,%ecx
1800a194e:	33 d2                	xor    %edx,%edx
1800a1950:	8b c5                	mov    %ebp,%eax
1800a1952:	f7 f1                	div    %ecx
1800a1954:	44 8b f8             	mov    %eax,%r15d
1800a1957:	eb 04                	jmp    0x1800a195d
1800a1959:	44 8b 7f 38          	mov    0x38(%rdi),%r15d
1800a195d:	41 8b 46 08          	mov    0x8(%r14),%eax
1800a1961:	39 06                	cmp    %eax,(%rsi)
1800a1963:	0f 83 0a 01 00 00    	jae    0x1800a1a73
1800a1969:	48 8b 03             	mov    (%rbx),%rax
1800a196c:	48 8b cb             	mov    %rbx,%rcx
1800a196f:	0f b7 57 4c          	movzwl 0x4c(%rdi),%edx
1800a1973:	48 8b 40 28          	mov    0x28(%rax),%rax
1800a1977:	ff d0                	call   *%rax
1800a1979:	0f 1f 00             	nopl   (%rax)
1800a197c:	8b 16                	mov    (%rsi),%edx
1800a197e:	48 8b cb             	mov    %rbx,%rcx
1800a1981:	41 0f af c7          	imul   %r15d,%eax
1800a1985:	2b e8                	sub    %eax,%ebp
1800a1987:	d1 ed                	shr    $1,%ebp
1800a1989:	03 6e 04             	add    0x4(%rsi),%ebp
1800a198c:	89 6e 04             	mov    %ebp,0x4(%rsi)
1800a198f:	44 8b c5             	mov    %ebp,%r8d
1800a1992:	48 8b 03             	mov    (%rbx),%rax
1800a1995:	48 8b 40 58          	mov    0x58(%rax),%rax
1800a1999:	ff d0                	call   *%rax
1800a199b:	0f 1f 00             	nopl   (%rax)
1800a199e:	8b 4f 3c             	mov    0x3c(%rdi),%ecx
1800a19a1:	b8 1f 85 eb 51       	mov    $0x51eb851f,%eax
1800a19a6:	41 0f af cf          	imul   %r15d,%ecx
1800a19aa:	f7 e1                	mul    %ecx
1800a19ac:	48 8b 03             	mov    (%rbx),%rax
1800a19af:	48 8b cb             	mov    %rbx,%rcx
1800a19b2:	8b ea                	mov    %edx,%ebp
1800a19b4:	c1 ed 05             	shr    $0x5,%ebp
1800a19b7:	48 8b 40 50          	mov    0x50(%rax),%rax
1800a19bb:	ff d0                	call   *%rax
1800a19bd:	0f 1f 00             	nopl   (%rax)
1800a19c0:	0f b7 57 48          	movzwl 0x48(%rdi),%edx
1800a19c4:	44 0f b7 e0          	movzwl %ax,%r12d
1800a19c8:	48 8b 03             	mov    (%rbx),%rax
1800a19cb:	48 8b cb             	mov    %rbx,%rcx
1800a19ce:	48 8b 40 40          	mov    0x40(%rax),%rax
1800a19d2:	ff d0                	call   *%rax
1800a19d4:	0f 1f 00             	nopl   (%rax)
1800a19d7:	85 ed                	test   %ebp,%ebp
1800a19d9:	74 35                	je     0x1800a1a10
1800a19db:	44 8b f5             	mov    %ebp,%r14d
1800a19de:	48 8b 03             	mov    (%rbx),%rax
1800a19e1:	48 8b cb             	mov    %rbx,%rcx
1800a19e4:	0f b7 57 4c          	movzwl 0x4c(%rdi),%edx
1800a19e8:	48 8b 80 80 00 00 00 	mov    0x80(%rax),%rax
1800a19ef:	ff d0                	call   *%rax
1800a19f1:	0f 1f 00             	nopl   (%rax)
1800a19f4:	48 8b 03             	mov    (%rbx),%rax
1800a19f7:	48 8b cb             	mov    %rbx,%rcx
1800a19fa:	0f b7 57 4c          	movzwl 0x4c(%rdi),%edx
1800a19fe:	48 8b 40 28          	mov    0x28(%rax),%rax
1800a1a02:	ff d0                	call   *%rax
1800a1a04:	0f 1f 00             	nopl   (%rax)
1800a1a07:	01 46 04             	add    %eax,0x4(%rsi)
1800a1a0a:	49 83 ee 01          	sub    $0x1,%r14
1800a1a0e:	75 ce                	jne    0x1800a19de
1800a1a10:	48 8b 03             	mov    (%rbx),%rax
1800a1a13:	48 8b cb             	mov    %rbx,%rcx
1800a1a16:	0f b7 57 4a          	movzwl 0x4a(%rdi),%edx
1800a1a1a:	48 8b 40 40          	mov    0x40(%rax),%rax
1800a1a1e:	ff d0                	call   *%rax
1800a1a20:	0f 1f 00             	nopl   (%rax)
1800a1a23:	41 3b ef             	cmp    %r15d,%ebp
1800a1a26:	73 38                	jae    0x1800a1a60
1800a1a28:	44 2b fd             	sub    %ebp,%r15d
1800a1a2b:	41 8b ef             	mov    %r15d,%ebp
1800a1a2e:	48 8b 03             	mov    (%rbx),%rax
1800a1a31:	48 8b cb             	mov    %rbx,%rcx
1800a1a34:	0f b7 57 4e          	movzwl 0x4e(%rdi),%edx
1800a1a38:	48 8b 80 80 00 00 00 	mov    0x80(%rax),%rax
1800a1a3f:	ff d0                	call   *%rax
1800a1a41:	0f 1f 00             	nopl   (%rax)
1800a1a44:	48 8b 03             	mov    (%rbx),%rax
1800a1a47:	48 8b cb             	mov    %rbx,%rcx
1800a1a4a:	0f b7 57 4e          	movzwl 0x4e(%rdi),%edx
1800a1a4e:	48 8b 40 28          	mov    0x28(%rax),%rax
1800a1a52:	ff d0                	call   *%rax
1800a1a54:	0f 1f 00             	nopl   (%rax)
1800a1a57:	01 46 04             	add    %eax,0x4(%rsi)
1800a1a5a:	48 83 ed 01          	sub    $0x1,%rbp
1800a1a5e:	75 ce                	jne    0x1800a1a2e
1800a1a60:	48 8b 03             	mov    (%rbx),%rax
1800a1a63:	41 0f b7 d4          	movzwl %r12w,%edx
1800a1a67:	48 8b cb             	mov    %rbx,%rcx
1800a1a6a:	48 8b 40 48          	mov    0x48(%rax),%rax
1800a1a6e:	ff d0                	call   *%rax
1800a1a70:	0f 1f 00             	nopl   (%rax)
1800a1a73:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1800a1a78:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
1800a1a7d:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
1800a1a82:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
1800a1a87:	48 83 c4 20          	add    $0x20,%rsp
1800a1a8b:	41 5f                	pop    %r15
1800a1a8d:	41 5e                	pop    %r14
1800a1a8f:	41 5c                	pop    %r12
1800a1a91:	c3                   	ret
1800a1a92:	cc                   	int3
1800a1a93:	cc                   	int3
1800a1a94:	40 53                	rex push %rbx
1800a1a96:	48 83 ec 20          	sub    $0x20,%rsp
1800a1a9a:	48 8b c2             	mov    %rdx,%rax
1800a1a9d:	48 8b d9             	mov    %rcx,%rbx
1800a1aa0:	48 8b c8             	mov    %rax,%rcx
1800a1aa3:	48 8d 15 ee 08 0b 00 	lea    0xb08ee(%rip),%rdx        # 0x180152398
1800a1aaa:	e8 b1 95 07 00       	call   0x18011b060
1800a1aaf:	48 85 c0             	test   %rax,%rax
1800a1ab2:	74 2c                	je     0x1800a1ae0
1800a1ab4:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
1800a1ab9:	48 8b c8             	mov    %rax,%rcx
1800a1abc:	e8 93 d9 ff ff       	call   0x18009f454
1800a1ac1:	85 c0                	test   %eax,%eax
1800a1ac3:	74 09                	je     0x1800a1ace
1800a1ac5:	8b 44 24 40          	mov    0x40(%rsp),%eax
1800a1ac9:	83 f8 64             	cmp    $0x64,%eax
1800a1acc:	76 02                	jbe    0x1800a1ad0
1800a1ace:	33 c0                	xor    %eax,%eax
1800a1ad0:	48 8b cb             	mov    %rbx,%rcx
1800a1ad3:	89 43 3c             	mov    %eax,0x3c(%rbx)
1800a1ad6:	e8 11 e3 ff ff       	call   0x18009fdec
1800a1adb:	b8 01 00 00 00       	mov    $0x1,%eax
1800a1ae0:	48 83 c4 20          	add    $0x20,%rsp
1800a1ae4:	5b                   	pop    %rbx
1800a1ae5:	c3                   	ret
1800a1ae6:	cc                   	int3
1800a1ae7:	cc                   	int3
1800a1ae8:	48 8b 41 40          	mov    0x40(%rcx),%rax
1800a1aec:	c3                   	ret
1800a1aed:	cc                   	int3
1800a1aee:	cc                   	int3
1800a1aef:	cc                   	int3
1800a1af0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1800a1af5:	57                   	push   %rdi
1800a1af6:	48 83 ec 20          	sub    $0x20,%rsp
1800a1afa:	48 8d 05 d7 26 0a 00 	lea    0xa26d7(%rip),%rax        # 0x1801441d8
1800a1b01:	48 8b d9             	mov    %rcx,%rbx
1800a1b04:	48 89 01             	mov    %rax,(%rcx)
1800a1b07:	8b fa                	mov    %edx,%edi
1800a1b09:	48 8b 49 48          	mov    0x48(%rcx),%rcx
1800a1b0d:	48 85 c9             	test   %rcx,%rcx
1800a1b10:	74 05                	je     0x1800a1b17
1800a1b12:	e8 e5 84 ff ff       	call   0x180099ffc
1800a1b17:	48 8b 4b 50          	mov    0x50(%rbx),%rcx
1800a1b1b:	48 85 c9             	test   %rcx,%rcx
1800a1b1e:	74 05                	je     0x1800a1b25
1800a1b20:	e8 d7 84 ff ff       	call   0x180099ffc
1800a1b25:	48 8d 05 a4 25 0a 00 	lea    0xa25a4(%rip),%rax        # 0x1801440d0
1800a1b2c:	48 89 03             	mov    %rax,(%rbx)
1800a1b2f:	40 f6 c7 01          	test   $0x1,%dil
1800a1b33:	74 08                	je     0x1800a1b3d
1800a1b35:	48 8b cb             	mov    %rbx,%rcx
1800a1b38:	e8 bf 84 ff ff       	call   0x180099ffc
1800a1b3d:	48 8b c3             	mov    %rbx,%rax
1800a1b40:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1800a1b45:	48 83 c4 20          	add    $0x20,%rsp
1800a1b49:	5f                   	pop    %rdi
1800a1b4a:	c3                   	ret
1800a1b4b:	cc                   	int3
1800a1b4c:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
1800a1b51:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
1800a1b56:	55                   	push   %rbp
1800a1b57:	53                   	push   %rbx
1800a1b58:	56                   	push   %rsi
1800a1b59:	57                   	push   %rdi
1800a1b5a:	41 54                	push   %r12
1800a1b5c:	41 55                	push   %r13
1800a1b5e:	41 56                	push   %r14
1800a1b60:	41 57                	push   %r15
1800a1b62:	48 8b ec             	mov    %rsp,%rbp
1800a1b65:	48 83 ec 48          	sub    $0x48,%rsp
1800a1b69:	48 8d 15 18 09 0b 00 	lea    0xb0918(%rip),%rdx        # 0x180152488
1800a1b70:	4c 8b e1             	mov    %rcx,%r12
1800a1b73:	e8 e8 94 07 00       	call   0x18011b060
1800a1b78:	49 83 cd ff          	or     $0xffffffffffffffff,%r13
1800a1b7c:	45 33 f6             	xor    %r14d,%r14d
1800a1b7f:	48 85 c0             	test   %rax,%rax
1800a1b82:	74 13                	je     0x1800a1b97
1800a1b84:	48 8d 55 58          	lea    0x58(%rbp),%rdx
1800a1b88:	48 8b c8             	mov    %rax,%rcx
1800a1b8b:	e8 c4 d8 ff ff       	call   0x18009f454
1800a1b90:	8b 5d 58             	mov    0x58(%rbp),%ebx
1800a1b93:	85 c0                	test   %eax,%eax
1800a1b95:	75 03                	jne    0x1800a1b9a
1800a1b97:	41 8b dd             	mov    %r13d,%ebx
1800a1b9a:	48 8d 15 7f 09 0b 00 	lea    0xb097f(%rip),%rdx        # 0x180152520
1800a1ba1:	89 5d e4             	mov    %ebx,-0x1c(%rbp)
1800a1ba4:	49 8b cc             	mov    %r12,%rcx
1800a1ba7:	e8 b4 94 07 00       	call   0x18011b060
1800a1bac:	48 85 c0             	test   %rax,%rax
1800a1baf:	74 15                	je     0x1800a1bc6
1800a1bb1:	48 8d 55 58          	lea    0x58(%rbp),%rdx
1800a1bb5:	48 8b c8             	mov    %rax,%rcx
1800a1bb8:	e8 97 d8 ff ff       	call   0x18009f454
1800a1bbd:	85 c0                	test   %eax,%eax
1800a1bbf:	74 05                	je     0x1800a1bc6
1800a1bc1:	8b 75 58             	mov    0x58(%rbp),%esi
1800a1bc4:	eb 0a                	jmp    0x1800a1bd0
1800a1bc6:	85 db                	test   %ebx,%ebx
1800a1bc8:	be 20 00 00 00       	mov    $0x20,%esi
1800a1bcd:	0f 49 f3             	cmovns %ebx,%esi
1800a1bd0:	85 f6                	test   %esi,%esi
1800a1bd2:	0f 84 c5 00 00 00    	je     0x1800a1c9d
1800a1bd8:	8d 5e 01             	lea    0x1(%rsi),%ebx
1800a1bdb:	85 db                	test   %ebx,%ebx
1800a1bdd:	0f 84 ba 00 00 00    	je     0x1800a1c9d
1800a1be3:	48 8d 15 26 09 0b 00 	lea    0xb0926(%rip),%rdx        # 0x180152510
1800a1bea:	49 8b cc             	mov    %r12,%rcx
1800a1bed:	e8 6e 94 07 00       	call   0x18011b060
1800a1bf2:	48 8b f8             	mov    %rax,%rdi
1800a1bf5:	41 bf 02 00 00 00    	mov    $0x2,%r15d
1800a1bfb:	48 85 c0             	test   %rax,%rax
1800a1bfe:	74 45                	je     0x1800a1c45
1800a1c00:	48 8d 15 39 09 0b 00 	lea    0xb0939(%rip),%rdx        # 0x180152540
1800a1c07:	48 8b c8             	mov    %rax,%rcx
1800a1c0a:	e8 2d 9c 08 00       	call   0x18012b83c
1800a1c0f:	85 c0                	test   %eax,%eax
1800a1c11:	75 06                	jne    0x1800a1c19
1800a1c13:	44 8d 78 01          	lea    0x1(%rax),%r15d
1800a1c17:	eb 2f                	jmp    0x1800a1c48
1800a1c19:	48 8d 15 10 09 0b 00 	lea    0xb0910(%rip),%rdx        # 0x180152530
1800a1c20:	48 8b cf             	mov    %rdi,%rcx
1800a1c23:	e8 14 9c 08 00       	call   0x18012b83c
1800a1c28:	85 c0                	test   %eax,%eax
1800a1c2a:	74 1c                	je     0x1800a1c48
1800a1c2c:	48 8d 15 45 09 0b 00 	lea    0xb0945(%rip),%rdx        # 0x180152578
1800a1c33:	48 8b cf             	mov    %rdi,%rcx
1800a1c36:	e8 01 9c 08 00       	call   0x18012b83c
1800a1c3b:	41 bf 03 00 00 00    	mov    $0x3,%r15d
1800a1c41:	85 c0                	test   %eax,%eax
1800a1c43:	74 03                	je     0x1800a1c48
1800a1c45:	45 8b fe             	mov    %r14d,%r15d
1800a1c48:	48 8d 15 d1 06 0b 00 	lea    0xb06d1(%rip),%rdx        # 0x180152320
1800a1c4f:	49 8b cc             	mov    %r12,%rcx
1800a1c52:	e8 09 94 07 00       	call   0x18011b060
1800a1c57:	48 8b c8             	mov    %rax,%rcx
1800a1c5a:	48 8b f8             	mov    %rax,%rdi
1800a1c5d:	e8 22 d6 ff ff       	call   0x18009f284
1800a1c62:	4c 8b f0             	mov    %rax,%r14
1800a1c65:	48 85 c0             	test   %rax,%rax
1800a1c68:	75 05                	jne    0x1800a1c6f
1800a1c6a:	48 85 ff             	test   %rdi,%rdi
1800a1c6d:	75 2e                	jne    0x1800a1c9d
1800a1c6f:	41 83 ff 03          	cmp    $0x3,%r15d
1800a1c73:	75 09                	jne    0x1800a1c7e
1800a1c75:	41 8d 47 ff          	lea    -0x1(%r15),%eax
1800a1c79:	3b d8                	cmp    %eax,%ebx
1800a1c7b:	0f 42 d8             	cmovb  %eax,%ebx
1800a1c7e:	8b cb                	mov    %ebx,%ecx
1800a1c80:	48 03 c9             	add    %rcx,%rcx
1800a1c83:	e8 c8 81 ff ff       	call   0x180099e50
1800a1c88:	48 8b f8             	mov    %rax,%rdi
1800a1c8b:	48 85 c0             	test   %rax,%rax
1800a1c8e:	75 21                	jne    0x1800a1cb1
1800a1c90:	4d 85 f6             	test   %r14,%r14
1800a1c93:	74 08                	je     0x1800a1c9d
1800a1c95:	49 8b ce             	mov    %r14,%rcx
1800a1c98:	e8 5f 83 ff ff       	call   0x180099ffc
1800a1c9d:	33 c0                	xor    %eax,%eax
1800a1c9f:	48 83 c4 48          	add    $0x48,%rsp
1800a1ca3:	41 5f                	pop    %r15
1800a1ca5:	41 5e                	pop    %r14
1800a1ca7:	41 5d                	pop    %r13
1800a1ca9:	41 5c                	pop    %r12
1800a1cab:	5f                   	pop    %rdi
1800a1cac:	5e                   	pop    %rsi
1800a1cad:	5b                   	pop    %rbx
1800a1cae:	5d                   	pop    %rbp
1800a1caf:	c3                   	ret
1800a1cb0:	cc                   	int3
1800a1cb1:	48 8d 15 48 61 0a 00 	lea    0xa6148(%rip),%rdx        # 0x180147e00
1800a1cb8:	49 8b cc             	mov    %r12,%rcx
1800a1cbb:	e8 a0 93 07 00       	call   0x18011b060
1800a1cc0:	45 33 e4             	xor    %r12d,%r12d
1800a1cc3:	48 8b d0             	mov    %rax,%rdx
1800a1cc6:	48 85 c0             	test   %rax,%rax
1800a1cc9:	74 5e                	je     0x1800a1d29
1800a1ccb:	49 8b dd             	mov    %r13,%rbx
1800a1cce:	48 ff c3             	inc    %rbx
1800a1cd1:	66 44 39 24 58       	cmp    %r12w,(%rax,%rbx,2)
1800a1cd6:	75 f6                	jne    0x1800a1cce
1800a1cd8:	3b de                	cmp    %esi,%ebx
1800a1cda:	72 03                	jb     0x1800a1cdf
1800a1cdc:	8d 5e ff             	lea    -0x1(%rsi),%ebx
1800a1cdf:	44 8d 43 01          	lea    0x1(%rbx),%r8d
1800a1ce3:	48 8b cf             	mov    %rdi,%rcx
1800a1ce6:	4d 03 c0             	add    %r8,%r8
1800a1ce9:	e8 d2 3c 09 00       	call   0x1801359c0