18002e9f9:	33 c9                	xor    %ecx,%ecx
18002e9fb:	89 8c 24 e8 00 00 00 	mov    %ecx,0xe8(%rsp)
18002ea02:	45 85 e4             	test   %r12d,%r12d
18002ea05:	0f 84 50 01 00 00    	je     0x18002eb5b
18002ea0b:	4c 8b 54 24 48       	mov    0x48(%rsp),%r10
18002ea10:	49 83 c2 18          	add    $0x18,%r10
18002ea14:	4c 89 94 24 f8 00 00 	mov    %r10,0xf8(%rsp)
18002ea1b:	00
18002ea1c:	48 8b 54 24 58       	mov    0x58(%rsp),%rdx
18002ea21:	49 83 c8 ff          	or     $0xffffffffffffffff,%r8
18002ea25:	49 8b 02             	mov    (%r10),%rax
18002ea28:	44 8b c9             	mov    %ecx,%r9d
18002ea2b:	49 03 d1             	add    %r9,%rdx
18002ea2e:	4c 89 4c 24 70       	mov    %r9,0x70(%rsp)
18002ea33:	48 89 94 24 f0 00 00 	mov    %rdx,0xf0(%rsp)
18002ea3a:	00
18002ea3b:	48 8b ca             	mov    %rdx,%rcx
18002ea3e:	4c 3b d0             	cmp    %rax,%r10
18002ea41:	74 28                	je     0x18002ea6b
18002ea43:	48 3b 48 18          	cmp    0x18(%rax),%rcx
18002ea47:	73 0d                	jae    0x18002ea56
18002ea49:	48 8b 50 10          	mov    0x10(%rax),%rdx
18002ea4d:	48 3b ca             	cmp    %rdx,%rcx
18002ea50:	72 0e                	jb     0x18002ea60
18002ea52:	48 8b 48 18          	mov    0x18(%rax),%rcx
18002ea56:	48 8b 00             	mov    (%rax),%rax
18002ea59:	4c 3b d0             	cmp    %rax,%r10
18002ea5c:	74 05                	je     0x18002ea63
18002ea5e:	eb e3                	jmp    0x18002ea43
18002ea60:	4c 8b c2             	mov    %rdx,%r8
18002ea63:	48 8b 94 24 f0 00 00 	mov    0xf0(%rsp),%rdx
18002ea6a:	00
18002ea6b:	4c 3b c1             	cmp    %rcx,%r8
18002ea6e:	0f 84 c9 00 00 00    	je     0x18002eb3d
18002ea74:	48 3b ca             	cmp    %rdx,%rcx
18002ea77:	0f 85 c0 00 00 00    	jne    0x18002eb3d
18002ea7d:	83 64 24 28 00       	andl   $0x0,0x28(%rsp)
18002ea82:	49 8d 3c 29          	lea    (%r9,%rbp,1),%rdi
18002ea86:	45 8b 87 c8 00 00 00 	mov    0xc8(%r15),%r8d
18002ea8d:	4c 8b cf             	mov    %rdi,%r9
18002ea90:	41 8b 4f 6c          	mov    0x6c(%r15),%ecx
18002ea94:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
18002ea9a:	e8 7d 84 ff ff       	call   0x180026f1c
18002ea9f:	85 c0                	test   %eax,%eax
18002eaa1:	0f 88 8c 00 00 00    	js     0x18002eb33
18002eaa7:	41 8b 8f c8 00 00 00 	mov    0xc8(%r15),%ecx
18002eaae:	33 d2                	xor    %edx,%edx
18002eab0:	8b 84 24 e8 00 00 00 	mov    0xe8(%rsp),%eax
18002eab7:	4c 8b 4c 24 60       	mov    0x60(%rsp),%r9
18002eabc:	f7 f1                	div    %ecx
18002eabe:	48 8d 94 24 e0 00 00 	lea    0xe0(%rsp),%rdx
18002eac5:	00
18002eac6:	48 89 54 24 38       	mov    %rdx,0x38(%rsp)
18002eacb:	49 8b 57 18          	mov    0x18(%r15),%rdx
18002eacf:	48 89 7c 24 30       	mov    %rdi,0x30(%rsp)
18002ead4:	89 4c 24 28          	mov    %ecx,0x28(%rsp)
18002ead8:	89 44 24 20          	mov    %eax,0x20(%rsp)
18002eadc:	48 8b 44 24 68       	mov    0x68(%rsp),%rax
18002eae1:	48 8b c8             	mov    %rax,%rcx
18002eae4:	44 8b 40 1e          	mov    0x1e(%rax),%r8d
18002eae8:	e8 8b 44 08 00       	call   0x1800b2f78
18002eaed:	8b f8                	mov    %eax,%edi
18002eaef:	85 c0                	test   %eax,%eax
18002eaf1:	0f 88 39 01 00 00    	js     0x18002ec30
18002eaf7:	f6 84 24 e0 00 00 00 	testb  $0x1,0xe0(%rsp)
18002eafe:	01
18002eaff:	74 34                	je     0x18002eb35
18002eb01:	4c 8b 4c 24 70       	mov    0x70(%rsp),%r9
18002eb06:	45 8b 87 c8 00 00 00 	mov    0xc8(%r15),%r8d
18002eb0d:	4c 03 cd             	add    %rbp,%r9
18002eb10:	48 8b 94 24 f0 00 00 	mov    0xf0(%rsp),%rdx
18002eb17:	00
18002eb18:	41 8b 4f 6c          	mov    0x6c(%r15),%ecx
18002eb1c:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
18002eb22:	e8 c1 84 ff ff       	call   0x180026fe8
18002eb27:	8b f8                	mov    %eax,%edi
18002eb29:	85 c0                	test   %eax,%eax
18002eb2b:	0f 88 ff 00 00 00    	js     0x18002ec30
18002eb31:	eb 02                	jmp    0x18002eb35
18002eb33:	33 ff                	xor    %edi,%edi
18002eb35:	4c 8b 94 24 f8 00 00 	mov    0xf8(%rsp),%r10
18002eb3c:	00
18002eb3d:	8b 8c 24 e8 00 00 00 	mov    0xe8(%rsp),%ecx
18002eb44:	41 03 8f c8 00 00 00 	add    0xc8(%r15),%ecx
18002eb4b:	89 8c 24 e8 00 00 00 	mov    %ecx,0xe8(%rsp)
18002eb52:	41 3b cc             	cmp    %r12d,%ecx
18002eb55:	0f 82 c1 fe ff ff    	jb     0x18002ea1c
18002eb5b:	40 84 f6             	test   %sil,%sil
18002eb5e:	74 6f                	je     0x18002ebcf
18002eb60:	4c 8b 64 24 78       	mov    0x78(%rsp),%r12
18002eb65:	41 b8 01 00 00 00    	mov    $0x1,%r8d
18002eb6b:	41 8b d4             	mov    %r12d,%edx
18002eb6e:	49 8b ce             	mov    %r14,%rcx
18002eb71:	e8 be 0d 00 00       	call   0x18002f934
18002eb76:	49 8d 4e 10          	lea    0x10(%r14),%rcx
18002eb7a:	41 b8 01 00 00 00    	mov    $0x1,%r8d
18002eb80:	41 8b d4             	mov    %r12d,%edx
18002eb83:	e8 ac 0d 00 00       	call   0x18002f934
18002eb88:	4c 8b 64 24 48       	mov    0x48(%rsp),%r12
18002eb8d:	33 d2                	xor    %edx,%edx
18002eb8f:	41 8b 4c 24 14       	mov    0x14(%r12),%ecx
18002eb94:	49 8b 44 cc 30       	mov    0x30(%r12,%rcx,8),%rax
18002eb99:	48 c1 e1 04          	shl    $0x4,%rcx
18002eb9d:	49 03 ce             	add    %r14,%rcx
18002eba0:	44 8b 40 10          	mov    0x10(%rax),%r8d
18002eba4:	e8 7f 10 00 00       	call   0x18002fc28
18002eba9:	41 8b 4c 24 14       	mov    0x14(%r12),%ecx
18002ebae:	33 d2                	xor    %edx,%edx
18002ebb0:	41 88 44 24 0c       	mov    %al,0xc(%r12)
18002ebb5:	49 8b 44 cc 30       	mov    0x30(%r12,%rcx,8),%rax
18002ebba:	48 c1 e1 04          	shl    $0x4,%rcx
18002ebbe:	49 03 ce             	add    %r14,%rcx
18002ebc1:	44 8b 40 10          	mov    0x10(%rax),%r8d
18002ebc5:	e8 a6 0f 00 00       	call   0x18002fb70
18002ebca:	41 88 44 24 0d       	mov    %al,0xd(%r12)
18002ebcf:	49 8b 4e 50          	mov    0x50(%r14),%rcx
18002ebd3:	e8 24 b4 06 00       	call   0x180099ffc
18002ebd8:	48 8b 54 24 50       	mov    0x50(%rsp),%rdx
18002ebdd:	45 33 c0             	xor    %r8d,%r8d
18002ebe0:	49 83 66 50 00       	andq   $0x0,0x50(%r14)
18002ebe5:	48 8b cd             	mov    %rbp,%rcx
18002ebe8:	e8 7f bc 06 00       	call   0x18009a86c
18002ebed:	48 8b cb             	mov    %rbx,%rcx
18002ebf0:	e8 67 8f 06 00       	call   0x180097b5c
18002ebf5:	4c 8b 8c 24 80 00 00 	mov    0x80(%rsp),%r9
18002ebfc:	00
18002ebfd:	33 db                	xor    %ebx,%ebx
18002ebff:	48 89 9c 24 e8 00 00 	mov    %rbx,0xe8(%rsp)
18002ec06:	00
18002ec07:	41 ba ff ff ff ff    	mov    $0xffffffff,%r10d
18002ec0d:	48 8b 84 24 88 00 00 	mov    0x88(%rsp),%rax
18002ec14:	00
18002ec15:	41 ff c5             	inc    %r13d
18002ec18:	44 3b a8 a0 00 00 00 	cmp    0xa0(%rax),%r13d
18002ec1f:	73 3a                	jae    0x18002ec5b
18002ec21:	e9 d1 fc ff ff       	jmp    0x18002e8f7
18002ec26:	33 ed                	xor    %ebp,%ebp
18002ec28:	48 8b cb             	mov    %rbx,%rcx
18002ec2b:	e8 2c 8f 06 00       	call   0x180097b5c
18002ec30:	48 85 ed             	test   %rbp,%rbp
18002ec33:	74 26                	je     0x18002ec5b
18002ec35:	48 8b 54 24 50       	mov    0x50(%rsp),%rdx
18002ec3a:	45 33 c0             	xor    %r8d,%r8d
18002ec3d:	48 8b cd             	mov    %rbp,%rcx
18002ec40:	e8 27 bc 06 00       	call   0x18009a86c
18002ec45:	48 8b cb             	mov    %rbx,%rcx
18002ec48:	e8 0f 8f 06 00       	call   0x180097b5c
18002ec4d:	eb 0c                	jmp    0x18002ec5b
18002ec4f:	bf 01 00 00 c0       	mov    $0xc0000001,%edi
18002ec54:	eb 05                	jmp    0x18002ec5b
18002ec56:	bf 95 00 00 c0       	mov    $0xc0000095,%edi
18002ec5b:	8b c7                	mov    %edi,%eax
18002ec5d:	48 81 c4 98 00 00 00 	add    $0x98,%rsp
18002ec64:	41 5f                	pop    %r15
18002ec66:	41 5e                	pop    %r14
18002ec68:	41 5d                	pop    %r13
18002ec6a:	41 5c                	pop    %r12
18002ec6c:	5f                   	pop    %rdi
18002ec6d:	5e                   	pop    %rsi
18002ec6e:	5d                   	pop    %rbp
18002ec6f:	5b                   	pop    %rbx
18002ec70:	c3                   	ret
18002ec71:	cc                   	int3
18002ec72:	cc                   	int3
18002ec73:	cc                   	int3
18002ec74:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18002ec79:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
18002ec7e:	57                   	push   %rdi
18002ec7f:	48 83 ec 20          	sub    $0x20,%rsp
18002ec83:	48 8b 3a             	mov    (%rdx),%rdi
18002ec86:	48 8b f2             	mov    %rdx,%rsi
18002ec89:	33 db                	xor    %ebx,%ebx
18002ec8b:	48 89 57 20          	mov    %rdx,0x20(%rdi)
18002ec8f:	4c 8d 46 30          	lea    0x30(%rsi),%r8
18002ec93:	48 8b d7             	mov    %rdi,%rdx
18002ec96:	44 8d 4b 02          	lea    0x2(%rbx),%r9d
18002ec9a:	49 8b 08             	mov    (%r8),%rcx
18002ec9d:	4d 8d 40 08          	lea    0x8(%r8),%r8
18002eca1:	8b 41 10             	mov    0x10(%rcx),%eax
18002eca4:	89 02                	mov    %eax,(%rdx)
18002eca6:	48 8d 41 24          	lea    0x24(%rcx),%rax
18002ecaa:	48 89 42 08          	mov    %rax,0x8(%rdx)
18002ecae:	48 8d 52 10          	lea    0x10(%rdx),%rdx
18002ecb2:	49 83 e9 01          	sub    $0x1,%r9
18002ecb6:	75 e2                	jne    0x18002ec9a
18002ecb8:	0f 57 c0             	xorps  %xmm0,%xmm0
18002ecbb:	41 8d 49 32          	lea    0x32(%r9),%ecx
18002ecbf:	0f 11 47 28          	movups %xmm0,0x28(%rdi)
18002ecc3:	0f 11 47 38          	movups %xmm0,0x38(%rdi)
18002ecc7:	0f 11 47 48          	movups %xmm0,0x48(%rdi)
18002eccb:	e8 80 b1 06 00       	call   0x180099e50
18002ecd0:	48 89 47 28          	mov    %rax,0x28(%rdi)
18002ecd4:	48 85 c0             	test   %rax,%rax
18002ecd7:	75 0d                	jne    0x18002ece6
18002ecd9:	bb 17 00 00 c0       	mov    $0xc0000017,%ebx
18002ecde:	48 8b ce             	mov    %rsi,%rcx
18002ece1:	e8 16 00 00 00       	call   0x18002ecfc
18002ece6:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
18002eceb:	8b c3                	mov    %ebx,%eax
18002eced:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18002ecf2:	48 83 c4 20          	add    $0x20,%rsp
18002ecf6:	5f                   	pop    %rdi
18002ecf7:	c3                   	ret
18002ecf8:	cc                   	int3
18002ecf9:	cc                   	int3
18002ecfa:	cc                   	int3
18002ecfb:	cc                   	int3
18002ecfc:	40 53                	rex push %rbx
18002ecfe:	48 83 ec 20          	sub    $0x20,%rsp
18002ed02:	48 8b 19             	mov    (%rcx),%rbx
18002ed05:	48 8b 4b 28          	mov    0x28(%rbx),%rcx
18002ed09:	48 85 c9             	test   %rcx,%rcx
18002ed0c:	74 0a                	je     0x18002ed18
18002ed0e:	e8 e9 b2 06 00       	call   0x180099ffc
18002ed13:	48 83 63 28 00       	andq   $0x0,0x28(%rbx)
18002ed18:	48 8b 4b 50          	mov    0x50(%rbx),%rcx
18002ed1c:	48 85 c9             	test   %rcx,%rcx
18002ed1f:	74 05                	je     0x18002ed26
18002ed21:	e8 d6 b2 06 00       	call   0x180099ffc
18002ed26:	0f 57 c0             	xorps  %xmm0,%xmm0
18002ed29:	0f 11 43 28          	movups %xmm0,0x28(%rbx)
18002ed2d:	0f 11 43 38          	movups %xmm0,0x38(%rbx)
18002ed31:	0f 11 43 48          	movups %xmm0,0x48(%rbx)
18002ed35:	48 83 c4 20          	add    $0x20,%rsp
18002ed39:	5b                   	pop    %rbx
18002ed3a:	c3                   	ret
18002ed3b:	cc                   	int3
18002ed3c:	8b c2                	mov    %edx,%eax
18002ed3e:	45 8b d0             	mov    %r8d,%r10d
18002ed41:	48 c1 e0 04          	shl    $0x4,%rax
18002ed45:	4d 8b c1             	mov    %r9,%r8
18002ed48:	48 03 01             	add    (%rcx),%rax
18002ed4b:	41 8b d2             	mov    %r10d,%edx
18002ed4e:	48 8b c8             	mov    %rax,%rcx
18002ed51:	e9 92 0f 00 00       	jmp    0x18002fce8
18002ed56:	cc                   	int3
18002ed57:	cc                   	int3
18002ed58:	48 8b c4             	mov    %rsp,%rax
18002ed5b:	48 89 58 08          	mov    %rbx,0x8(%rax)
18002ed5f:	48 89 68 10          	mov    %rbp,0x10(%rax)
18002ed63:	48 89 70 18          	mov    %rsi,0x18(%rax)
18002ed67:	48 89 78 20          	mov    %rdi,0x20(%rax)
18002ed6b:	41 56                	push   %r14
18002ed6d:	48 83 ec 20          	sub    $0x20,%rsp
18002ed71:	33 db                	xor    %ebx,%ebx
18002ed73:	8b e9                	mov    %ecx,%ebp
18002ed75:	48 8b f2             	mov    %rdx,%rsi
18002ed78:	85 c9                	test   %ecx,%ecx
18002ed7a:	75 07                	jne    0x18002ed83
18002ed7c:	bb 0d 00 00 c0       	mov    $0xc000000d,%ebx
18002ed81:	eb 6d                	jmp    0x18002edf0
18002ed83:	f6 42 0c 01          	testb  $0x1,0xc(%rdx)
18002ed87:	74 f3                	je     0x18002ed7c
18002ed89:	39 6a 08             	cmp    %ebp,0x8(%rdx)
18002ed8c:	72 15                	jb     0x18002eda3
18002ed8e:	f6 42 0c 02          	testb  $0x2,0xc(%rdx)
18002ed92:	74 5c                	je     0x18002edf0
18002ed94:	48 8b 0e             	mov    (%rsi),%rcx
18002ed97:	4c 8b c5             	mov    %rbp,%r8
18002ed9a:	33 d2                	xor    %edx,%edx
18002ed9c:	e8 df 6e 10 00       	call   0x180135c80
18002eda1:	eb 4d                	jmp    0x18002edf0
18002eda3:	48 8b cd             	mov    %rbp,%rcx
18002eda6:	e8 a5 b0 06 00       	call   0x180099e50
18002edab:	4c 8b f0             	mov    %rax,%r14
18002edae:	48 85 c0             	test   %rax,%rax
18002edb1:	75 07                	jne    0x18002edba
18002edb3:	bb 17 00 00 c0       	mov    $0xc0000017,%ebx
18002edb8:	eb 36                	jmp    0x18002edf0
18002edba:	f6 46 0c 02          	testb  $0x2,0xc(%rsi)
18002edbe:	74 0d                	je     0x18002edcd
18002edc0:	4c 8b c5             	mov    %rbp,%r8
18002edc3:	33 d2                	xor    %edx,%edx
18002edc5:	49 8b ce             	mov    %r14,%rcx
18002edc8:	e8 b3 6e 10 00       	call   0x180135c80
18002edcd:	48 39 1e             	cmp    %rbx,(%rsi)
18002edd0:	74 18                	je     0x18002edea
18002edd2:	f6 46 0c 04          	testb  $0x4,0xc(%rsi)
18002edd6:	74 0a                	je     0x18002ede2
18002edd8:	8b 4e 08             	mov    0x8(%rsi),%ecx
18002eddb:	33 c0                	xor    %eax,%eax
18002eddd:	48 8b 3e             	mov    (%rsi),%rdi
18002ede0:	f3 aa                	rep stos %al,%es:(%rdi)
18002ede2:	48 8b 0e             	mov    (%rsi),%rcx
18002ede5:	e8 12 b2 06 00       	call   0x180099ffc
18002edea:	4c 89 36             	mov    %r14,(%rsi)
18002eded:	89 6e 08             	mov    %ebp,0x8(%rsi)
18002edf0:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
18002edf5:	8b c3                	mov    %ebx,%eax
18002edf7:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18002edfc:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
18002ee01:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
18002ee06:	48 83 c4 20          	add    $0x20,%rsp
18002ee0a:	41 5e                	pop    %r14
18002ee0c:	c3                   	ret
18002ee0d:	cc                   	int3
18002ee0e:	cc                   	int3
18002ee0f:	cc                   	int3
18002ee10:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18002ee15:	55                   	push   %rbp
18002ee16:	57                   	push   %rdi
18002ee17:	41 56                	push   %r14
18002ee19:	48 8b ec             	mov    %rsp,%rbp
18002ee1c:	48 83 ec 40          	sub    $0x40,%rsp
18002ee20:	45 33 f6             	xor    %r14d,%r14d
18002ee23:	48 8d 45 30          	lea    0x30(%rbp),%rax
18002ee27:	45 33 c9             	xor    %r9d,%r9d
18002ee2a:	4c 89 75 38          	mov    %r14,0x38(%rbp)
18002ee2e:	48 8b f9             	mov    %rcx,%rdi
18002ee31:	4c 89 75 f0          	mov    %r14,-0x10(%rbp)
18002ee35:	66 44 89 75 28       	mov    %r14w,0x28(%rbp)
18002ee3a:	41 8d 56 09          	lea    0x9(%r14),%edx
18002ee3e:	44 89 75 30          	mov    %r14d,0x30(%rbp)
18002ee42:	45 8d 46 0e          	lea    0xe(%r14),%r8d
18002ee46:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
18002ee4b:	e8 40 2a 08 00       	call   0x1800b1890
18002ee50:	8b d8                	mov    %eax,%ebx
18002ee52:	3d 25 02 00 c0       	cmp    $0xc0000225,%eax
18002ee57:	75 08                	jne    0x18002ee61
18002ee59:	41 8b de             	mov    %r14d,%ebx
18002ee5c:	e9 ab 00 00 00       	jmp    0x18002ef0c
18002ee61:	85 c0                	test   %eax,%eax
18002ee63:	0f 88 a3 00 00 00    	js     0x18002ef0c
18002ee69:	8b 55 30             	mov    0x30(%rbp),%edx
18002ee6c:	4c 8d 45 38          	lea    0x38(%rbp),%r8
18002ee70:	48 8b cf             	mov    %rdi,%rcx
18002ee73:	e8 f8 2a 08 00       	call   0x1800b1970
18002ee78:	8b d8                	mov    %eax,%ebx
18002ee7a:	85 c0                	test   %eax,%eax
18002ee7c:	78 7f                	js     0x18002eefd
18002ee7e:	48 8b 4d 38          	mov    0x38(%rbp),%rcx
18002ee82:	4c 8d 45 28          	lea    0x28(%rbp),%r8
18002ee86:	48 8d 55 f0          	lea    -0x10(%rbp),%rdx
18002ee8a:	e8 c1 04 08 00       	call   0x1800af350
18002ee8f:	8b d8                	mov    %eax,%ebx
18002ee91:	85 c0                	test   %eax,%eax
18002ee93:	78 68                	js     0x18002eefd
18002ee95:	0f b7 45 28          	movzwl 0x28(%rbp),%eax
18002ee99:	41 b8 08 00 00 00    	mov    $0x8,%r8d
18002ee9f:	66 41 3b c0          	cmp    %r8w,%ax
18002eea3:	72 53                	jb     0x18002eef8
18002eea5:	48 8b 7d f0          	mov    -0x10(%rbp),%rdi
18002eea9:	81 3f 10 81 30 f4    	cmpl   $0xf4308110,(%rdi)
18002eeaf:	75 6c                	jne    0x18002ef1d
18002eeb1:	83 f8 18             	cmp    $0x18,%eax
18002eeb4:	72 42                	jb     0x18002eef8
18002eeb6:	f6 47 06 01          	testb  $0x1,0x6(%rdi)
18002eeba:	41 8b de             	mov    %r14d,%ebx
18002eebd:	4c 89 75 28          	mov    %r14,0x28(%rbp)
18002eec1:	75 3a                	jne    0x18002eefd