18000aa73:	75 69                	jne    0x18000aade
18000aa75:	48 8d 15 4c b3 13 00 	lea    0x13b34c(%rip),%rdx        # 0x180145dc8
18000aa7c:	48 8b cf             	mov    %rdi,%rcx
18000aa7f:	e8 60 0d 12 00       	call   0x18012b7e4
18000aa84:	48 85 c0             	test   %rax,%rax
18000aa87:	75 55                	jne    0x18000aade
18000aa89:	40 84 ed             	test   %bpl,%bpl
18000aa8c:	74 55                	je     0x18000aae3
18000aa8e:	48 8d 15 4b b3 13 00 	lea    0x13b34b(%rip),%rdx        # 0x180145de0
18000aa95:	48 8b cf             	mov    %rdi,%rcx
18000aa98:	e8 47 0d 12 00       	call   0x18012b7e4
18000aa9d:	48 85 c0             	test   %rax,%rax
18000aaa0:	75 3c                	jne    0x18000aade
18000aaa2:	48 8d 15 43 b3 13 00 	lea    0x13b343(%rip),%rdx        # 0x180145dec
18000aaa9:	48 8b cf             	mov    %rdi,%rcx
18000aaac:	e8 33 0d 12 00       	call   0x18012b7e4
18000aab1:	48 85 c0             	test   %rax,%rax
18000aab4:	75 28                	jne    0x18000aade
18000aab6:	48 8d 15 3b b3 13 00 	lea    0x13b33b(%rip),%rdx        # 0x180145df8
18000aabd:	48 8b cf             	mov    %rdi,%rcx
18000aac0:	e8 1f 0d 12 00       	call   0x18012b7e4
18000aac5:	48 85 c0             	test   %rax,%rax
18000aac8:	75 14                	jne    0x18000aade
18000aaca:	48 8d 15 2f b3 13 00 	lea    0x13b32f(%rip),%rdx        # 0x180145e00
18000aad1:	48 8b cf             	mov    %rdi,%rcx
18000aad4:	e8 0b 0d 12 00       	call   0x18012b7e4
18000aad9:	48 85 c0             	test   %rax,%rax
18000aadc:	74 05                	je     0x18000aae3
18000aade:	bb 0d 00 00 c0       	mov    $0xc000000d,%ebx
18000aae3:	48 8b cf             	mov    %rdi,%rcx
18000aae6:	e8 11 f5 08 00       	call   0x180099ffc
18000aaeb:	8b c3                	mov    %ebx,%eax
18000aaed:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18000aaf2:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
18000aaf7:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
18000aafc:	48 83 c4 20          	add    $0x20,%rsp
18000ab00:	5f                   	pop    %rdi
18000ab01:	c3                   	ret
18000ab02:	cc                   	int3
18000ab03:	cc                   	int3
18000ab04:	40 53                	rex push %rbx
18000ab06:	48 83 ec 20          	sub    $0x20,%rsp
18000ab0a:	48 8b d9             	mov    %rcx,%rbx
18000ab0d:	84 d2                	test   %dl,%dl
18000ab0f:	74 30                	je     0x18000ab41
18000ab11:	48 8b 0d 10 a8 19 00 	mov    0x19a810(%rip),%rcx        # 0x1801a5328
18000ab18:	48 85 c9             	test   %rcx,%rcx
18000ab1b:	74 0d                	je     0x18000ab2a
18000ab1d:	e8 da f4 08 00       	call   0x180099ffc
18000ab22:	48 83 25 fe a7 19 00 	andq   $0x0,0x19a7fe(%rip)        # 0x1801a5328
18000ab29:	00
18000ab2a:	48 8b 0d a7 9e 19 00 	mov    0x199ea7(%rip),%rcx        # 0x1801a49d8
18000ab31:	48 8d 15 f0 a7 19 00 	lea    0x19a7f0(%rip),%rdx        # 0x1801a5328
18000ab38:	e8 bb b3 06 00       	call   0x180075ef8
18000ab3d:	85 c0                	test   %eax,%eax
18000ab3f:	78 7b                	js     0x18000abbc
18000ab41:	48 85 db             	test   %rbx,%rbx
18000ab44:	74 74                	je     0x18000abba
18000ab46:	48 8b 0d db a7 19 00 	mov    0x19a7db(%rip),%rcx        # 0x1801a5328
18000ab4d:	48 85 c9             	test   %rcx,%rcx
18000ab50:	74 48                	je     0x18000ab9a
18000ab52:	e8 7d 01 12 00       	call   0x18012acd4
18000ab57:	48 8b 05 ca a7 19 00 	mov    0x19a7ca(%rip),%rax        # 0x1801a5328
18000ab5e:	48 83 c9 ff          	or     $0xffffffffffffffff,%rcx
18000ab62:	48 ff c1             	inc    %rcx
18000ab65:	80 3c 08 00          	cmpb   $0x0,(%rax,%rcx,1)
18000ab69:	75 f7                	jne    0x18000ab62
18000ab6b:	45 33 c0             	xor    %r8d,%r8d
18000ab6e:	48 85 c9             	test   %rcx,%rcx
18000ab71:	74 1e                	je     0x18000ab91
18000ab73:	33 d2                	xor    %edx,%edx
18000ab75:	80 3c 02 2f          	cmpb   $0x2f,(%rdx,%rax,1)
18000ab79:	75 0b                	jne    0x18000ab86
18000ab7b:	c6 04 02 20          	movb   $0x20,(%rdx,%rax,1)
18000ab7f:	48 8b 05 a2 a7 19 00 	mov    0x19a7a2(%rip),%rax        # 0x1801a5328
18000ab86:	41 ff c0             	inc    %r8d
18000ab89:	41 8b d0             	mov    %r8d,%edx
18000ab8c:	48 3b d1             	cmp    %rcx,%rdx
18000ab8f:	72 e4                	jb     0x18000ab75
18000ab91:	48 89 83 d8 00 00 00 	mov    %rax,0xd8(%rbx)
18000ab98:	eb 20                	jmp    0x18000abba
18000ab9a:	b9 01 00 00 00       	mov    $0x1,%ecx
18000ab9f:	e8 ac f2 08 00       	call   0x180099e50
18000aba4:	48 89 83 d8 00 00 00 	mov    %rax,0xd8(%rbx)
18000abab:	48 85 c0             	test   %rax,%rax
18000abae:	75 07                	jne    0x18000abb7
18000abb0:	b8 17 00 00 c0       	mov    $0xc0000017,%eax
18000abb5:	eb 05                	jmp    0x18000abbc
18000abb7:	c6 00 00             	movb   $0x0,(%rax)
18000abba:	33 c0                	xor    %eax,%eax
18000abbc:	48 83 c4 20          	add    $0x20,%rsp
18000abc0:	5b                   	pop    %rbx
18000abc1:	c3                   	ret
18000abc2:	cc                   	int3
18000abc3:	cc                   	int3
18000abc4:	48 8b c4             	mov    %rsp,%rax
18000abc7:	48 89 58 08          	mov    %rbx,0x8(%rax)
18000abcb:	48 89 68 18          	mov    %rbp,0x18(%rax)
18000abcf:	56                   	push   %rsi
18000abd0:	57                   	push   %rdi
18000abd1:	41 54                	push   %r12
18000abd3:	41 56                	push   %r14
18000abd5:	41 57                	push   %r15
18000abd7:	48 83 ec 50          	sub    $0x50,%rsp
18000abdb:	44 8b 3a             	mov    (%rdx),%r15d
18000abde:	48 8b f2             	mov    %rdx,%rsi
18000abe1:	83 60 b8 00          	andl   $0x0,-0x48(%rax)
18000abe5:	45 03 f9             	add    %r9d,%r15d
18000abe8:	48 83 60 b0 00       	andq   $0x0,-0x50(%rax)
18000abed:	49 8b f8             	mov    %r8,%rdi
18000abf0:	83 60 a8 00          	andl   $0x0,-0x58(%rax)
18000abf4:	4c 8b f1             	mov    %rcx,%r14
18000abf7:	45 8b e1             	mov    %r9d,%r12d
18000abfa:	48 8d 48 10          	lea    0x10(%rax),%rcx
18000abfe:	41 8d 97 ff 0f 00 00 	lea    0xfff(%r15),%edx
18000ac05:	45 33 c9             	xor    %r9d,%r9d
18000ac08:	48 c1 ea 0c          	shr    $0xc,%rdx
18000ac0c:	41 b8 1c 00 00 e0    	mov    $0xe000001c,%r8d
18000ac12:	e8 d5 cc 08 00       	call   0x1800978ec
18000ac17:	85 c0                	test   %eax,%eax
18000ac19:	0f 88 e1 00 00 00    	js     0x18000ad00
18000ac1f:	48 8b 9c 24 88 00 00 	mov    0x88(%rsp),%rbx
18000ac26:	00
18000ac27:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
18000ac2c:	83 64 24 20 00       	andl   $0x0,0x20(%rsp)
18000ac31:	48 8b d3             	mov    %rbx,%rdx
18000ac34:	45 8b c7             	mov    %r15d,%r8d
18000ac37:	45 33 c9             	xor    %r9d,%r9d
18000ac3a:	e8 e1 f8 08 00       	call   0x18009a520
18000ac3f:	8b e8                	mov    %eax,%ebp
18000ac41:	85 c0                	test   %eax,%eax
18000ac43:	79 0f                	jns    0x18000ac54
18000ac45:	48 8b cb             	mov    %rbx,%rcx
18000ac48:	e8 0f cf 08 00       	call   0x180097b5c
18000ac4d:	8b c5                	mov    %ebp,%eax
18000ac4f:	e9 ac 00 00 00       	jmp    0x18000ad00
18000ac54:	48 8b 6c 24 40       	mov    0x40(%rsp),%rbp
18000ac59:	44 8b 06             	mov    (%rsi),%r8d
18000ac5c:	48 8b cd             	mov    %rbp,%rcx
18000ac5f:	49 8b 16             	mov    (%r14),%rdx
18000ac62:	e8 59 ad 12 00       	call   0x1801359c0
18000ac67:	8b 0e                	mov    (%rsi),%ecx
18000ac69:	4d 8b c4             	mov    %r12,%r8
18000ac6c:	48 03 cd             	add    %rbp,%rcx
18000ac6f:	48 8b d7             	mov    %rdi,%rdx
18000ac72:	e8 49 ad 12 00       	call   0x1801359c0
18000ac77:	49 8b 0e             	mov    (%r14),%rcx
18000ac7a:	48 85 c9             	test   %rcx,%rcx
18000ac7d:	74 1d                	je     0x18000ac9c
18000ac7f:	45 33 c9             	xor    %r9d,%r9d
18000ac82:	48 8d 94 24 88 00 00 	lea    0x88(%rsp),%rdx
18000ac89:	00
18000ac8a:	45 33 c0             	xor    %r8d,%r8d
18000ac8d:	e8 fa 28 09 00       	call   0x18009d58c
18000ac92:	48 8b 9c 24 88 00 00 	mov    0x88(%rsp),%rbx
18000ac99:	00
18000ac9a:	eb 02                	jmp    0x18000ac9e
18000ac9c:	32 c0                	xor    %al,%al
18000ac9e:	84 c0                	test   %al,%al
18000aca0:	74 15                	je     0x18000acb7
18000aca2:	8b 16                	mov    (%rsi),%edx
18000aca4:	45 33 c0             	xor    %r8d,%r8d
18000aca7:	49 8b 0e             	mov    (%r14),%rcx
18000acaa:	e8 bd fb 08 00       	call   0x18009a86c
18000acaf:	48 8b cb             	mov    %rbx,%rcx
18000acb2:	e8 a5 ce 08 00       	call   0x180097b5c
18000acb7:	49 89 2e             	mov    %rbp,(%r14)
18000acba:	44 89 3e             	mov    %r15d,(%rsi)
18000acbd:	48 85 ff             	test   %rdi,%rdi
18000acc0:	74 20                	je     0x18000ace2
18000acc2:	45 33 c9             	xor    %r9d,%r9d
18000acc5:	48 8d 94 24 88 00 00 	lea    0x88(%rsp),%rdx
18000accc:	00
18000accd:	45 33 c0             	xor    %r8d,%r8d
18000acd0:	48 8b cf             	mov    %rdi,%rcx
18000acd3:	e8 b4 28 09 00       	call   0x18009d58c
18000acd8:	48 8b 9c 24 88 00 00 	mov    0x88(%rsp),%rbx
18000acdf:	00
18000ace0:	eb 02                	jmp    0x18000ace4
18000ace2:	32 c0                	xor    %al,%al
18000ace4:	84 c0                	test   %al,%al
18000ace6:	74 16                	je     0x18000acfe
18000ace8:	45 33 c0             	xor    %r8d,%r8d
18000aceb:	49 8b d4             	mov    %r12,%rdx
18000acee:	48 8b cf             	mov    %rdi,%rcx
18000acf1:	e8 76 fb 08 00       	call   0x18009a86c
18000acf6:	48 8b cb             	mov    %rbx,%rcx
18000acf9:	e8 5e ce 08 00       	call   0x180097b5c
18000acfe:	33 c0                	xor    %eax,%eax
18000ad00:	4c 8d 5c 24 50       	lea    0x50(%rsp),%r11
18000ad05:	49 8b 5b 30          	mov    0x30(%r11),%rbx
18000ad09:	49 8b 6b 40          	mov    0x40(%r11),%rbp
18000ad0d:	49 8b e3             	mov    %r11,%rsp
18000ad10:	41 5f                	pop    %r15
18000ad12:	41 5e                	pop    %r14
18000ad14:	41 5c                	pop    %r12
18000ad16:	5f                   	pop    %rdi
18000ad17:	5e                   	pop    %rsi
18000ad18:	c3                   	ret
18000ad19:	cc                   	int3
18000ad1a:	cc                   	int3
18000ad1b:	cc                   	int3
18000ad1c:	89 54 24 10          	mov    %edx,0x10(%rsp)
18000ad20:	89 4c 24 08          	mov    %ecx,0x8(%rsp)
18000ad24:	55                   	push   %rbp
18000ad25:	53                   	push   %rbx
18000ad26:	56                   	push   %rsi
18000ad27:	57                   	push   %rdi
18000ad28:	41 56                	push   %r14
18000ad2a:	48 8b ec             	mov    %rsp,%rbp
18000ad2d:	48 83 ec 30          	sub    $0x30,%rsp
18000ad31:	8b 0d 71 17 16 00    	mov    0x161771(%rip),%ecx        # 0x18016c4a8
18000ad37:	49 8b f0             	mov    %r8,%rsi
18000ad3a:	44 8b 35 93 17 16 00 	mov    0x161793(%rip),%r14d        # 0x18016c4d4
18000ad41:	83 f9 ff             	cmp    $0xffffffff,%ecx
18000ad44:	74 42                	je     0x18000ad88
18000ad46:	80 3d f3 a5 19 00 00 	cmpb   $0x0,0x19a5f3(%rip)        # 0x1801a5340
18000ad4d:	74 39                	je     0x18000ad88
18000ad4f:	48 8d 45 38          	lea    0x38(%rbp),%rax
18000ad53:	b2 01                	mov    $0x1,%dl
18000ad55:	4c 8d 4d 48          	lea    0x48(%rbp),%r9
18000ad59:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
18000ad5e:	4c 8d 45 30          	lea    0x30(%rbp),%r8
18000ad62:	e8 91 7d ff ff       	call   0x180002af8
18000ad67:	84 c0                	test   %al,%al
18000ad69:	74 1d                	je     0x18000ad88
18000ad6b:	8b 4d 38             	mov    0x38(%rbp),%ecx
18000ad6e:	48 8b 86 f0 00 00 00 	mov    0xf0(%rsi),%rax
18000ad75:	f7 d1                	not    %ecx
18000ad77:	23 4d 30             	and    0x30(%rbp),%ecx
18000ad7a:	0b 4d 48             	or     0x48(%rbp),%ecx
18000ad7d:	89 88 84 0d 00 00    	mov    %ecx,0xd84(%rax)
18000ad83:	e9 9c 00 00 00       	jmp    0x18000ae24
18000ad88:	48 8d 45 38          	lea    0x38(%rbp),%rax
18000ad8c:	33 d2                	xor    %edx,%edx
18000ad8e:	4c 8d 4d 48          	lea    0x48(%rbp),%r9
18000ad92:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
18000ad97:	4c 8d 45 30          	lea    0x30(%rbp),%r8
18000ad9b:	41 8b ce             	mov    %r14d,%ecx
18000ad9e:	e8 55 7d ff ff       	call   0x180002af8
18000ada3:	84 c0                	test   %al,%al
18000ada5:	74 7d                	je     0x18000ae24
18000ada7:	8b 5d 38             	mov    0x38(%rbp),%ebx
18000adaa:	f7 d3                	not    %ebx
18000adac:	23 5d 30             	and    0x30(%rbp),%ebx
18000adaf:	0b 5d 48             	or     0x48(%rbp),%ebx
18000adb2:	8b c3                	mov    %ebx,%eax
18000adb4:	8b fb                	mov    %ebx,%edi
18000adb6:	25 00 20 08 00       	and    $0x82000,%eax
18000adbb:	3d 00 00 08 00       	cmp    $0x80000,%eax
18000adc0:	75 26                	jne    0x18000ade8
18000adc2:	48 8b 86 f0 00 00 00 	mov    0xf0(%rsi),%rax
18000adc9:	8b 88 84 00 00 00    	mov    0x84(%rax),%ecx
18000adcf:	80 e1 01             	and    $0x1,%cl
18000add2:	f6 d9                	neg    %cl
18000add4:	1b c0                	sbb    %eax,%eax
18000add6:	25 00 00 f4 ff       	and    $0xfff40000,%eax
18000addb:	05 00 00 10 00       	add    $0x100000,%eax
18000ade0:	0b d8                	or     %eax,%ebx
18000ade2:	0f ba f3 13          	btr    $0x13,%ebx
18000ade6:	8b fb                	mov    %ebx,%edi
18000ade8:	b8 00 20 00 00       	mov    $0x2000,%eax
18000aded:	0f ba e7 12          	bt     $0x12,%edi
18000adf1:	73 06                	jae    0x18000adf9
18000adf3:	8b df                	mov    %edi,%ebx
18000adf5:	0b d8                	or     %eax,%ebx
18000adf7:	8b fb                	mov    %ebx,%edi
18000adf9:	85 f8                	test   %edi,%eax
18000adfb:	74 1a                	je     0x18000ae17
18000adfd:	e8 aa 9a 01 00       	call   0x1800248ac
18000ae02:	83 f8 02             	cmp    $0x2,%eax
18000ae05:	74 10                	je     0x18000ae17
18000ae07:	e8 a0 9a 01 00       	call   0x1800248ac
18000ae0c:	83 f8 01             	cmp    $0x1,%eax
18000ae0f:	74 06                	je     0x18000ae17
18000ae11:	8b df                	mov    %edi,%ebx
18000ae13:	0f ba f3 0d          	btr    $0xd,%ebx
18000ae17:	48 8b 86 f0 00 00 00 	mov    0xf0(%rsi),%rax
18000ae1e:	89 98 84 0d 00 00    	mov    %ebx,0xd84(%rax)
18000ae24:	48 8b 05 2d a5 19 00 	mov    0x19a52d(%rip),%rax        # 0x1801a5358
18000ae2b:	4a 8b 0c f0          	mov    (%rax,%r14,8),%rcx
18000ae2f:	8b 91 f8 12 00 00    	mov    0x12f8(%rcx),%edx
18000ae35:	83 fa ff             	cmp    $0xffffffff,%edx
18000ae38:	74 3b                	je     0x18000ae75
18000ae3a:	48 83 c1 10          	add    $0x10,%rcx
18000ae3e:	c6 44 24 20 00       	movb   $0x0,0x20(%rsp)
18000ae43:	4c 8d 4d 38          	lea    0x38(%rbp),%r9
18000ae47:	4c 8d 05 92 13 15 00 	lea    0x151392(%rip),%r8        # 0x18015c1e0
18000ae4e:	e8 5d 34 0f 00       	call   0x1800fe2b0
18000ae53:	84 c0                	test   %al,%al
18000ae55:	74 1e                	je     0x18000ae75
18000ae57:	48 8b 8e f0 00 00 00 	mov    0xf0(%rsi),%rcx
18000ae5e:	8b 45 38             	mov    0x38(%rbp),%eax
18000ae61:	c1 e0 15             	shl    $0x15,%eax
18000ae64:	33 81 84 00 00 00    	xor    0x84(%rcx),%eax
18000ae6a:	25 00 00 e0 07       	and    $0x7e00000,%eax
18000ae6f:	31 81 84 00 00 00    	xor    %eax,0x84(%rcx)
18000ae75:	48 83 c4 30          	add    $0x30,%rsp
18000ae79:	41 5e                	pop    %r14
18000ae7b:	5f                   	pop    %rdi
18000ae7c:	5e                   	pop    %rsi
18000ae7d:	5b                   	pop    %rbx
18000ae7e:	5d                   	pop    %rbp
18000ae7f:	c3                   	ret
18000ae80:	cc                   	int3
18000ae81:	cc                   	int3
18000ae82:	cc                   	int3
18000ae83:	cc                   	int3
18000ae84:	48 8b c4             	mov    %rsp,%rax
18000ae87:	48 89 58 08          	mov    %rbx,0x8(%rax)
18000ae8b:	48 89 70 18          	mov    %rsi,0x18(%rax)
18000ae8f:	48 89 78 20          	mov    %rdi,0x20(%rax)
18000ae93:	55                   	push   %rbp
18000ae94:	41 54                	push   %r12
18000ae96:	41 55                	push   %r13
18000ae98:	41 56                	push   %r14
18000ae9a:	41 57                	push   %r15
18000ae9c:	48 8d 68 a1          	lea    -0x5f(%rax),%rbp
18000aea0:	48 81 ec f0 00 00 00 	sub    $0xf0,%rsp
18000aea7:	45 33 ff             	xor    %r15d,%r15d
18000aeaa:	45 8b f7             	mov    %r15d,%r14d
18000aead:	45 8d 47 08          	lea    0x8(%r15),%r8d
18000aeb1:	41 8d 57 02          	lea    0x2(%r15),%edx
18000aeb5:	41 3b c8             	cmp    %r8d,%ecx
18000aeb8:	0f 87 e8 00 00 00    	ja     0x18000afa6
18000aebe:	0f 84 d5 00 00 00    	je     0x18000af99
18000aec4:	3b ca                	cmp    %edx,%ecx
18000aec6:	76 61                	jbe    0x18000af29
18000aec8:	8d 5a 02             	lea    0x2(%rdx),%ebx
18000aecb:	3b cb                	cmp    %ebx,%ecx
18000aecd:	74 4d                	je     0x18000af1c
18000aecf:	8d 5a 03             	lea    0x3(%rdx),%ebx
18000aed2:	3b cb                	cmp    %ebx,%ecx
18000aed4:	74 39                	je     0x18000af0f
18000aed6:	83 f9 06             	cmp    $0x6,%ecx
18000aed9:	74 27                	je     0x18000af02
18000aedb:	83 f9 07             	cmp    $0x7,%ecx
18000aede:	0f 85 d5 00 00 00    	jne    0x18000afb9
18000aee4:	4c 89 7c 24 28       	mov    %r15,0x28(%rsp)
18000aee9:	8d 7a ff             	lea    -0x1(%rdx),%edi
18000aeec:	89 54 24 28          	mov    %edx,0x28(%rsp)
18000aef0:	c7 44 24 20 80 00 00 	movl   $0x25000080,0x20(%rsp)
18000aef7:	25
18000aef8:	44 89 44 24 24       	mov    %r8d,0x24(%rsp)
18000aefd:	e9 f0 00 00 00       	jmp    0x18000aff2
18000af02:	c7 44 24 20 25 00 00 	movl   $0x26000025,0x20(%rsp)
18000af09:	26
18000af0a:	e9 d5 00 00 00       	jmp    0x18000afe4
18000af0f:	c7 44 24 20 40 00 00 	movl   $0x26000040,0x20(%rsp)
18000af16:	26