1800f6659:	74 12                	je     0x1800f666d
1800f665b:	8b d7                	mov    %edi,%edx
1800f665d:	49 8b cf             	mov    %r15,%rcx
1800f6660:	e8 7b f7 ff ff       	call   0x1800f5de0
1800f6665:	49 8b cf             	mov    %r15,%rcx
1800f6668:	e8 8f 39 fa ff       	call   0x180099ffc
1800f666d:	48 85 f6             	test   %rsi,%rsi
1800f6670:	74 08                	je     0x1800f667a
1800f6672:	48 8b ce             	mov    %rsi,%rcx
1800f6675:	e8 82 39 fa ff       	call   0x180099ffc
1800f667a:	4d 85 f6             	test   %r14,%r14
1800f667d:	74 08                	je     0x1800f6687
1800f667f:	49 8b ce             	mov    %r14,%rcx
1800f6682:	e8 75 39 fa ff       	call   0x180099ffc
1800f6687:	8b c3                	mov    %ebx,%eax
1800f6689:	48 8b 9c 24 b0 00 00 	mov    0xb0(%rsp),%rbx
1800f6690:	00
1800f6691:	48 83 c4 70          	add    $0x70,%rsp
1800f6695:	41 5f                	pop    %r15
1800f6697:	41 5e                	pop    %r14
1800f6699:	41 5d                	pop    %r13
1800f669b:	41 5c                	pop    %r12
1800f669d:	5f                   	pop    %rdi
1800f669e:	5e                   	pop    %rsi
1800f669f:	5d                   	pop    %rbp
1800f66a0:	c3                   	ret
1800f66a1:	cc                   	int3
1800f66a2:	cc                   	int3
1800f66a3:	cc                   	int3
1800f66a4:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1800f66a9:	48 89 7c 24 10       	mov    %rdi,0x10(%rsp)
1800f66ae:	45 33 db             	xor    %r11d,%r11d
1800f66b1:	45 8b c8             	mov    %r8d,%r9d
1800f66b4:	48 8b da             	mov    %rdx,%rbx
1800f66b7:	4c 8b d1             	mov    %rcx,%r10
1800f66ba:	41 83 f8 01          	cmp    $0x1,%r8d
1800f66be:	75 0a                	jne    0x1800f66ca
1800f66c0:	48 8b 41 08          	mov    0x8(%rcx),%rax
1800f66c4:	66 83 38 5c          	cmpw   $0x5c,(%rax)
1800f66c8:	74 17                	je     0x1800f66e1
1800f66ca:	41 83 f9 02          	cmp    $0x2,%r9d
1800f66ce:	75 19                	jne    0x1800f66e9
1800f66d0:	48 8b 41 08          	mov    0x8(%rcx),%rax
1800f66d4:	66 83 38 5c          	cmpw   $0x5c,(%rax)
1800f66d8:	75 0f                	jne    0x1800f66e9
1800f66da:	66 83 78 02 3f       	cmpw   $0x3f,0x2(%rax)
1800f66df:	75 08                	jne    0x1800f66e9
1800f66e1:	41 bb 0d 00 00 c0    	mov    $0xc000000d,%r11d
1800f66e7:	eb 4a                	jmp    0x1800f6733
1800f66e9:	41 b8 01 00 00 00    	mov    $0x1,%r8d
1800f66ef:	45 3b c8             	cmp    %r8d,%r9d
1800f66f2:	76 1d                	jbe    0x1800f6711
1800f66f4:	48 8b 51 08          	mov    0x8(%rcx),%rdx
1800f66f8:	41 8b c0             	mov    %r8d,%eax
1800f66fb:	49 8b c9             	mov    %r9,%rcx
1800f66fe:	48 2b c8             	sub    %rax,%rcx
1800f6701:	66 83 7c 4a fe 5c    	cmpw   $0x5c,-0x2(%rdx,%rcx,2)
1800f6707:	74 08                	je     0x1800f6711
1800f6709:	41 ff c0             	inc    %r8d
1800f670c:	45 3b c1             	cmp    %r9d,%r8d
1800f670f:	72 e7                	jb     0x1800f66f8
1800f6711:	41 8b c8             	mov    %r8d,%ecx
1800f6714:	49 8b d1             	mov    %r9,%rdx
1800f6717:	48 2b d1             	sub    %rcx,%rdx
1800f671a:	49 8b 4a 08          	mov    0x8(%r10),%rcx
1800f671e:	66 45 03 c0          	add    %r8w,%r8w
1800f6722:	66 44 89 03          	mov    %r8w,(%rbx)
1800f6726:	66 44 89 43 02       	mov    %r8w,0x2(%rbx)
1800f672b:	48 8d 14 51          	lea    (%rcx,%rdx,2),%rdx
1800f672f:	48 89 53 08          	mov    %rdx,0x8(%rbx)
1800f6733:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
1800f6738:	41 8b c3             	mov    %r11d,%eax
1800f673b:	48 8b 7c 24 10       	mov    0x10(%rsp),%rdi
1800f6740:	c3                   	ret
1800f6741:	cc                   	int3
1800f6742:	cc                   	int3
1800f6743:	cc                   	int3
1800f6744:	4c 8b dc             	mov    %rsp,%r11
1800f6747:	49 89 5b 08          	mov    %rbx,0x8(%r11)
1800f674b:	49 89 6b 10          	mov    %rbp,0x10(%r11)
1800f674f:	45 88 4b 20          	mov    %r9b,0x20(%r11)
1800f6753:	56                   	push   %rsi
1800f6754:	57                   	push   %rdi
1800f6755:	41 55                	push   %r13
1800f6757:	41 56                	push   %r14
1800f6759:	41 57                	push   %r15
1800f675b:	48 83 ec 50          	sub    $0x50,%rsp
1800f675f:	41 83 63 20 00       	andl   $0x0,0x20(%r11)
1800f6764:	49 8d 43 20          	lea    0x20(%r11),%rax
1800f6768:	49 89 43 b8          	mov    %rax,-0x48(%r11)
1800f676c:	33 f6                	xor    %esi,%esi
1800f676e:	21 74 24 28          	and    %esi,0x28(%rsp)
1800f6772:	8b ea                	mov    %edx,%ebp
1800f6774:	49 21 73 a8          	and    %rsi,-0x58(%r11)
1800f6778:	44 8b f9             	mov    %ecx,%r15d
1800f677b:	45 33 f6             	xor    %r14d,%r14d
1800f677e:	e8 cd 01 00 00       	call   0x1800f6950
1800f6783:	8b d8                	mov    %eax,%ebx
1800f6785:	85 c0                	test   %eax,%eax
1800f6787:	0f 88 64 01 00 00    	js     0x1800f68f1
1800f678d:	8b bc 24 98 00 00 00 	mov    0x98(%rsp),%edi
1800f6794:	85 ff                	test   %edi,%edi
1800f6796:	75 0f                	jne    0x1800f67a7
1800f6798:	48 8b 84 24 c8 00 00 	mov    0xc8(%rsp),%rax
1800f679f:	00
1800f67a0:	21 30                	and    %esi,(%rax)
1800f67a2:	e9 51 01 00 00       	jmp    0x1800f68f8
1800f67a7:	48 8d 0c 7f          	lea    (%rdi,%rdi,2),%rcx
1800f67ab:	41 bd ff ff ff ff    	mov    $0xffffffff,%r13d
1800f67b1:	48 c1 e1 03          	shl    $0x3,%rcx
1800f67b5:	49 3b cd             	cmp    %r13,%rcx
1800f67b8:	0f 87 2c 01 00 00    	ja     0x1800f68ea
1800f67be:	e8 81 46 f9 ff       	call   0x18008ae44
1800f67c3:	4c 8b f0             	mov    %rax,%r14
1800f67c6:	48 85 c0             	test   %rax,%rax
1800f67c9:	75 0a                	jne    0x1800f67d5
1800f67cb:	bb 17 00 00 c0       	mov    $0xc0000017,%ebx
1800f67d0:	e9 23 01 00 00       	jmp    0x1800f68f8
1800f67d5:	48 8d 84 24 98 00 00 	lea    0x98(%rsp),%rax
1800f67dc:	00
1800f67dd:	8b d5                	mov    %ebp,%edx
1800f67df:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
1800f67e4:	41 8b cf             	mov    %r15d,%ecx
1800f67e7:	89 7c 24 28          	mov    %edi,0x28(%rsp)
1800f67eb:	4c 89 74 24 20       	mov    %r14,0x20(%rsp)
1800f67f0:	e8 5b 01 00 00       	call   0x1800f6950
1800f67f5:	8b d8                	mov    %eax,%ebx
1800f67f7:	85 c0                	test   %eax,%eax
1800f67f9:	0f 88 f2 00 00 00    	js     0x1800f68f1
1800f67ff:	8b bc 24 98 00 00 00 	mov    0x98(%rsp),%edi
1800f6806:	85 ff                	test   %edi,%edi
1800f6808:	0f 84 85 00 00 00    	je     0x1800f6893
1800f680e:	8b c7                	mov    %edi,%eax
1800f6810:	48 c1 e0 04          	shl    $0x4,%rax
1800f6814:	49 3b c5             	cmp    %r13,%rax
1800f6817:	0f 87 cd 00 00 00    	ja     0x1800f68ea
1800f681d:	8b c8                	mov    %eax,%ecx
1800f681f:	33 db                	xor    %ebx,%ebx
1800f6821:	e8 1e 46 f9 ff       	call   0x18008ae44
1800f6826:	48 8b f0             	mov    %rax,%rsi
1800f6829:	48 85 c0             	test   %rax,%rax
1800f682c:	74 9d                	je     0x1800f67cb
1800f682e:	33 ed                	xor    %ebp,%ebp
1800f6830:	85 ff                	test   %edi,%edi
1800f6832:	74 5f                	je     0x1800f6893
1800f6834:	48 8d 04 6d 00 00 00 	lea    0x0(,%rbp,2),%rax
1800f683b:	00
1800f683c:	44 8b fd             	mov    %ebp,%r15d
1800f683f:	48 03 c5             	add    %rbp,%rax
1800f6842:	0f 57 c0             	xorps  %xmm0,%xmm0
1800f6845:	0f 11 44 24 40       	movups %xmm0,0x40(%rsp)
1800f684a:	49 8d 0c c6          	lea    (%r14,%rax,8),%rcx
1800f684e:	44 0f b7 01          	movzwl (%rcx),%r8d
1800f6852:	41 d1 e8             	shr    $1,%r8d
1800f6855:	41 83 f8 01          	cmp    $0x1,%r8d
1800f6859:	72 0e                	jb     0x1800f6869
1800f685b:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
1800f6860:	e8 3f fe ff ff       	call   0x1800f66a4
1800f6865:	8b d8                	mov    %eax,%ebx
1800f6867:	eb 05                	jmp    0x1800f686e
1800f6869:	bb 0d 00 00 c0       	mov    $0xc000000d,%ebx
1800f686e:	85 db                	test   %ebx,%ebx
1800f6870:	0f 88 82 00 00 00    	js     0x1800f68f8
1800f6876:	4d 03 ff             	add    %r15,%r15
1800f6879:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
1800f687e:	4a 8d 14 fe          	lea    (%rsi,%r15,8),%rdx
1800f6882:	e8 71 e4 ff ff       	call   0x1800f4cf8
1800f6887:	8b d8                	mov    %eax,%ebx
1800f6889:	85 c0                	test   %eax,%eax
1800f688b:	78 6b                	js     0x1800f68f8
1800f688d:	ff c5                	inc    %ebp
1800f688f:	3b ef                	cmp    %edi,%ebp
1800f6891:	72 a1                	jb     0x1800f6834
1800f6893:	4c 8b bc 24 c0 00 00 	mov    0xc0(%rsp),%r15
1800f689a:	00
1800f689b:	4d 85 ff             	test   %r15,%r15
1800f689e:	74 2b                	je     0x1800f68cb
1800f68a0:	48 85 f6             	test   %rsi,%rsi
1800f68a3:	75 21                	jne    0x1800f68c6
1800f68a5:	48 8b c7             	mov    %rdi,%rax
1800f68a8:	48 c1 e0 04          	shl    $0x4,%rax
1800f68ac:	49 3b c5             	cmp    %r13,%rax
1800f68af:	77 39                	ja     0x1800f68ea
1800f68b1:	8b c8                	mov    %eax,%ecx
1800f68b3:	33 db                	xor    %ebx,%ebx
1800f68b5:	e8 8a 45 f9 ff       	call   0x18008ae44
1800f68ba:	48 8b f0             	mov    %rax,%rsi
1800f68bd:	48 85 c0             	test   %rax,%rax
1800f68c0:	0f 84 05 ff ff ff    	je     0x1800f67cb
1800f68c6:	49 89 37             	mov    %rsi,(%r15)
1800f68c9:	33 f6                	xor    %esi,%esi
1800f68cb:	48 8b 84 24 b8 00 00 	mov    0xb8(%rsp),%rax
1800f68d2:	00
1800f68d3:	48 85 c0             	test   %rax,%rax
1800f68d6:	74 06                	je     0x1800f68de
1800f68d8:	4c 89 30             	mov    %r14,(%rax)
1800f68db:	45 33 f6             	xor    %r14d,%r14d
1800f68de:	48 8b 84 24 c8 00 00 	mov    0xc8(%rsp),%rax
1800f68e5:	00
1800f68e6:	89 38                	mov    %edi,(%rax)
1800f68e8:	eb 0e                	jmp    0x1800f68f8
1800f68ea:	bb 95 00 00 c0       	mov    $0xc0000095,%ebx
1800f68ef:	eb 07                	jmp    0x1800f68f8
1800f68f1:	8b bc 24 98 00 00 00 	mov    0x98(%rsp),%edi
1800f68f8:	8b d7                	mov    %edi,%edx
1800f68fa:	33 c9                	xor    %ecx,%ecx
1800f68fc:	e8 8f f4 ff ff       	call   0x1800f5d90
1800f6901:	48 85 f6             	test   %rsi,%rsi
1800f6904:	74 08                	je     0x1800f690e
1800f6906:	48 8b ce             	mov    %rsi,%rcx
1800f6909:	e8 ee 36 fa ff       	call   0x180099ffc
1800f690e:	4d 85 f6             	test   %r14,%r14
1800f6911:	74 12                	je     0x1800f6925
1800f6913:	8b d7                	mov    %edi,%edx
1800f6915:	49 8b ce             	mov    %r14,%rcx
1800f6918:	e8 c3 f4 ff ff       	call   0x1800f5de0
1800f691d:	49 8b ce             	mov    %r14,%rcx
1800f6920:	e8 d7 36 fa ff       	call   0x180099ffc
1800f6925:	81 fb 34 00 00 c0    	cmp    $0xc0000034,%ebx
1800f692b:	4c 8d 5c 24 50       	lea    0x50(%rsp),%r11
1800f6930:	49 8b 6b 38          	mov    0x38(%r11),%rbp
1800f6934:	b8 25 02 00 c0       	mov    $0xc0000225,%eax
1800f6939:	0f 44 d8             	cmove  %eax,%ebx
1800f693c:	8b c3                	mov    %ebx,%eax
1800f693e:	49 8b 5b 30          	mov    0x30(%r11),%rbx
1800f6942:	49 8b e3             	mov    %r11,%rsp
1800f6945:	41 5f                	pop    %r15
1800f6947:	41 5e                	pop    %r14
1800f6949:	41 5d                	pop    %r13
1800f694b:	5f                   	pop    %rdi
1800f694c:	5e                   	pop    %rsi
1800f694d:	c3                   	ret
1800f694e:	cc                   	int3
1800f694f:	cc                   	int3
1800f6950:	4c 8b dc             	mov    %rsp,%r11
1800f6953:	49 89 5b 08          	mov    %rbx,0x8(%r11)
1800f6957:	49 89 73 10          	mov    %rsi,0x10(%r11)
1800f695b:	49 89 7b 20          	mov    %rdi,0x20(%r11)
1800f695f:	45 89 43 18          	mov    %r8d,0x18(%r11)
1800f6963:	55                   	push   %rbp
1800f6964:	41 56                	push   %r14
1800f6966:	41 57                	push   %r15
1800f6968:	48 8b ec             	mov    %rsp,%rbp
1800f696b:	48 83 ec 40          	sub    $0x40,%rsp
1800f696f:	8b 75 48             	mov    0x48(%rbp),%esi
1800f6972:	48 8d 45 30          	lea    0x30(%rbp),%rax
1800f6976:	48 8b 7d 40          	mov    0x40(%rbp),%rdi
1800f697a:	44 8b f2             	mov    %edx,%r14d
1800f697d:	83 65 30 00          	andl   $0x0,0x30(%rbp)
1800f6981:	33 d2                	xor    %edx,%edx
1800f6983:	49 89 43 d8          	mov    %rax,-0x28(%r11)
1800f6987:	44 8b f9             	mov    %ecx,%r15d
1800f698a:	89 74 24 28          	mov    %esi,0x28(%rsp)
1800f698e:	49 89 7b c8          	mov    %rdi,-0x38(%r11)
1800f6992:	e8 01 05 00 00       	call   0x1800f6e98
1800f6997:	8b d0                	mov    %eax,%edx
1800f6999:	85 c0                	test   %eax,%eax
1800f699b:	0f 88 93 01 00 00    	js     0x1800f6b34
1800f69a1:	8b 5d 30             	mov    0x30(%rbp),%ebx
1800f69a4:	48 85 ff             	test   %rdi,%rdi
1800f69a7:	74 0e                	je     0x1800f69b7
1800f69a9:	3b de                	cmp    %esi,%ebx
1800f69ab:	76 0a                	jbe    0x1800f69b7
1800f69ad:	ba 23 00 00 c0       	mov    $0xc0000023,%edx
1800f69b2:	e9 7d 01 00 00       	jmp    0x1800f6b34
1800f69b7:	41 83 fe ff          	cmp    $0xffffffff,%r14d
1800f69bb:	74 6a                	je     0x1800f6a27
1800f69bd:	83 65 30 00          	andl   $0x0,0x30(%rbp)
1800f69c1:	8b ce                	mov    %esi,%ecx
1800f69c3:	2b cb                	sub    %ebx,%ecx
1800f69c5:	48 8b c7             	mov    %rdi,%rax
1800f69c8:	48 f7 d8             	neg    %rax
1800f69cb:	48 8b d7             	mov    %rdi,%rdx
1800f69ce:	45 1b c0             	sbb    %r8d,%r8d
1800f69d1:	44 23 c1             	and    %ecx,%r8d
1800f69d4:	48 8d 0c 5b          	lea    (%rbx,%rbx,2),%rcx
1800f69d8:	48 8d 04 cf          	lea    (%rdi,%rcx,8),%rax
1800f69dc:	48 f7 da             	neg    %rdx
1800f69df:	b2 01                	mov    $0x1,%dl
1800f69e1:	48 1b c9             	sbb    %rcx,%rcx
1800f69e4:	48 23 c8             	and    %rax,%rcx
1800f69e7:	48 8d 45 30          	lea    0x30(%rbp),%rax
1800f69eb:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
1800f69f0:	44 89 44 24 28       	mov    %r8d,0x28(%rsp)
1800f69f5:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
1800f69fa:	41 8b ce             	mov    %r14d,%ecx
1800f69fd:	e8 96 04 00 00       	call   0x1800f6e98
1800f6a02:	b9 00 00 00 80       	mov    $0x80000000,%ecx
1800f6a07:	8b d0                	mov    %eax,%edx
1800f6a09:	03 c1                	add    %ecx,%eax
1800f6a0b:	85 c1                	test   %eax,%ecx
1800f6a0d:	75 0c                	jne    0x1800f6a1b
1800f6a0f:	81 fa 25 02 00 c0    	cmp    $0xc0000225,%edx
1800f6a15:	0f 85 19 01 00 00    	jne    0x1800f6b34
1800f6a1b:	03 5d 30             	add    0x30(%rbp),%ebx
1800f6a1e:	48 85 ff             	test   %rdi,%rdi
1800f6a21:	74 04                	je     0x1800f6a27
1800f6a23:	3b de                	cmp    %esi,%ebx
1800f6a25:	77 86                	ja     0x1800f69ad
1800f6a27:	83 65 30 00          	andl   $0x0,0x30(%rbp)
1800f6a2b:	8b ce                	mov    %esi,%ecx
1800f6a2d:	2b cb                	sub    %ebx,%ecx
1800f6a2f:	48 8b c7             	mov    %rdi,%rax
1800f6a32:	48 f7 d8             	neg    %rax
1800f6a35:	48 8b d7             	mov    %rdi,%rdx
1800f6a38:	45 1b c0             	sbb    %r8d,%r8d
1800f6a3b:	44 23 c1             	and    %ecx,%r8d
1800f6a3e:	48 8d 0c 5b          	lea    (%rbx,%rbx,2),%rcx
1800f6a42:	48 8d 04 cf          	lea    (%rdi,%rcx,8),%rax
1800f6a46:	48 f7 da             	neg    %rdx
1800f6a49:	48 1b c9             	sbb    %rcx,%rcx
1800f6a4c:	33 d2                	xor    %edx,%edx
1800f6a4e:	48 23 c8             	and    %rax,%rcx
1800f6a51:	48 8d 45 30          	lea    0x30(%rbp),%rax
1800f6a55:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
1800f6a5a:	44 89 44 24 28       	mov    %r8d,0x28(%rsp)
1800f6a5f:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
1800f6a64:	41 8b cf             	mov    %r15d,%ecx
1800f6a67:	e8 9c 05 00 00       	call   0x1800f7008
1800f6a6c:	41 bf 00 00 00 80    	mov    $0x80000000,%r15d
1800f6a72:	8b d0                	mov    %eax,%edx
1800f6a74:	41 03 c7             	add    %r15d,%eax
1800f6a77:	41 85 c7             	test   %eax,%r15d
1800f6a7a:	75 0c                	jne    0x1800f6a88
1800f6a7c:	81 fa 25 02 00 c0    	cmp    $0xc0000225,%edx
1800f6a82:	0f 85 ac 00 00 00    	jne    0x1800f6b34
1800f6a88:	03 5d 30             	add    0x30(%rbp),%ebx
1800f6a8b:	48 85 ff             	test   %rdi,%rdi
1800f6a8e:	74 08                	je     0x1800f6a98
1800f6a90:	3b de                	cmp    %esi,%ebx
1800f6a92:	0f 87 15 ff ff ff    	ja     0x1800f69ad
1800f6a98:	41 83 fe ff          	cmp    $0xffffffff,%r14d
1800f6a9c:	74 67                	je     0x1800f6b05
1800f6a9e:	83 65 30 00          	andl   $0x0,0x30(%rbp)
1800f6aa2:	8b ce                	mov    %esi,%ecx
1800f6aa4:	2b cb                	sub    %ebx,%ecx
1800f6aa6:	48 8b c7             	mov    %rdi,%rax
1800f6aa9:	48 f7 d8             	neg    %rax
1800f6aac:	4c 8b c7             	mov    %rdi,%r8
1800f6aaf:	b2 01                	mov    $0x1,%dl
1800f6ab1:	45 1b c9             	sbb    %r9d,%r9d
1800f6ab4:	44 23 c9             	and    %ecx,%r9d
1800f6ab7:	48 8d 0c 5b          	lea    (%rbx,%rbx,2),%rcx
1800f6abb:	48 8d 04 cf          	lea    (%rdi,%rcx,8),%rax
1800f6abf:	49 f7 d8             	neg    %r8
1800f6ac2:	48 1b c9             	sbb    %rcx,%rcx
1800f6ac5:	48 23 c8             	and    %rax,%rcx
1800f6ac8:	48 8d 45 30          	lea    0x30(%rbp),%rax
1800f6acc:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
1800f6ad1:	44 89 4c 24 28       	mov    %r9d,0x28(%rsp)