18004ebf5:	48 85 c0             	test   %rax,%rax
18004ebf8:	75 0a                	jne    0x18004ec04
18004ebfa:	bf 9a 00 00 c0       	mov    $0xc000009a,%edi
18004ebff:	e9 b8 00 00 00       	jmp    0x18004ecbc
18004ec04:	44 8b be 48 0e 00 00 	mov    0xe48(%rsi),%r15d
18004ec0b:	41 8b cf             	mov    %r15d,%ecx
18004ec0e:	e8 01 7d ff ff       	call   0x180046914
18004ec13:	48 8b e8             	mov    %rax,%rbp
18004ec16:	48 85 c0             	test   %rax,%rax
18004ec19:	75 07                	jne    0x18004ec22
18004ec1b:	bf 9a 00 00 c0       	mov    $0xc000009a,%edi
18004ec20:	eb 7e                	jmp    0x18004eca0
18004ec22:	48 89 5c 24 50       	mov    %rbx,0x50(%rsp)
18004ec27:	48 8d 44 24 50       	lea    0x50(%rsp),%rax
18004ec2c:	4d 8b ce             	mov    %r14,%r9
18004ec2f:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
18004ec34:	4c 8b c3             	mov    %rbx,%r8
18004ec37:	c6 44 24 40 00       	movb   $0x0,0x40(%rsp)
18004ec3c:	48 8d 44 24 58       	lea    0x58(%rsp),%rax
18004ec41:	44 89 7c 24 38       	mov    %r15d,0x38(%rsp)
18004ec46:	49 8b d5             	mov    %r13,%rdx
18004ec49:	48 89 6c 24 30       	mov    %rbp,0x30(%rsp)
18004ec4e:	48 8b ce             	mov    %rsi,%rcx
18004ec51:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
18004ec56:	c7 44 24 20 00 00 10 	movl   $0x100000,0x20(%rsp)
18004ec5d:	00
18004ec5e:	e8 21 b6 00 00       	call   0x18005a284
18004ec63:	8b f8                	mov    %eax,%edi
18004ec65:	3d 05 01 00 00       	cmp    $0x105,%eax
18004ec6a:	74 27                	je     0x18004ec93
18004ec6c:	3d 1f 00 e7 c0       	cmp    $0xc0e7001f,%eax
18004ec71:	74 27                	je     0x18004ec9a
18004ec73:	85 c0                	test   %eax,%eax
18004ec75:	78 29                	js     0x18004eca0
18004ec77:	4c 8b 8c 24 c0 00 00 	mov    0xc0(%rsp),%r9
18004ec7e:	00
18004ec7f:	45 8b c7             	mov    %r15d,%r8d
18004ec82:	48 8b d5             	mov    %rbp,%rdx
18004ec85:	48 8b cb             	mov    %rbx,%rcx
18004ec88:	e8 9f f6 ff ff       	call   0x18004e32c
18004ec8d:	8b f8                	mov    %eax,%edi
18004ec8f:	85 c0                	test   %eax,%eax
18004ec91:	78 0d                	js     0x18004eca0
18004ec93:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
18004ec98:	eb 8d                	jmp    0x18004ec27
18004ec9a:	33 ff                	xor    %edi,%edi
18004ec9c:	49 89 1c 24          	mov    %rbx,(%r12)
18004eca0:	49 8b ce             	mov    %r14,%rcx
18004eca3:	e8 b4 7c ff ff       	call   0x18004695c
18004eca8:	48 85 ed             	test   %rbp,%rbp
18004ecab:	74 0f                	je     0x18004ecbc
18004ecad:	48 8b cd             	mov    %rbp,%rcx
18004ecb0:	e8 a7 7c ff ff       	call   0x18004695c
18004ecb5:	eb 05                	jmp    0x18004ecbc
18004ecb7:	bf 0d 00 00 c0       	mov    $0xc000000d,%edi
18004ecbc:	8b c7                	mov    %edi,%eax
18004ecbe:	48 8b 4c 24 68       	mov    0x68(%rsp),%rcx
18004ecc3:	48 33 cc             	xor    %rsp,%rcx
18004ecc6:	e8 61 6e fc ff       	call   0x180015b2c
18004eccb:	4c 8d 5c 24 70       	lea    0x70(%rsp),%r11
18004ecd0:	49 8b 5b 30          	mov    0x30(%r11),%rbx
18004ecd4:	49 8b 6b 38          	mov    0x38(%r11),%rbp
18004ecd8:	49 8b 73 40          	mov    0x40(%r11),%rsi
18004ecdc:	49 8b e3             	mov    %r11,%rsp
18004ecdf:	41 5f                	pop    %r15
18004ece1:	41 5e                	pop    %r14
18004ece3:	41 5d                	pop    %r13
18004ece5:	41 5c                	pop    %r12
18004ece7:	5f                   	pop    %rdi
18004ece8:	c3                   	ret
18004ece9:	cc                   	int3
18004ecea:	cc                   	int3
18004eceb:	cc                   	int3
18004ecec:	48 83 ec 58          	sub    $0x58,%rsp
18004ecf0:	4c 8b 94 24 a8 00 00 	mov    0xa8(%rsp),%r10
18004ecf7:	00
18004ecf8:	4d 85 d2             	test   %r10,%r10
18004ecfb:	74 0a                	je     0x18004ed07
18004ecfd:	48 8b 05 4c ff 0f 00 	mov    0xfff4c(%rip),%rax        # 0x18014ec50
18004ed04:	49 89 02             	mov    %rax,(%r10)
18004ed07:	44 3b 81 58 0e 00 00 	cmp    0xe58(%rcx),%r8d
18004ed0e:	73 69                	jae    0x18004ed79
18004ed10:	44 3b 81 4c 0e 00 00 	cmp    0xe4c(%rcx),%r8d
18004ed17:	72 60                	jb     0x18004ed79
18004ed19:	8b 81 40 0e 00 00    	mov    0xe40(%rcx),%eax
18004ed1f:	83 e8 04             	sub    $0x4,%eax
18004ed22:	83 f8 02             	cmp    $0x2,%eax
18004ed25:	76 07                	jbe    0x18004ed2e
18004ed27:	b8 84 01 00 c0       	mov    $0xc0000184,%eax
18004ed2c:	eb 50                	jmp    0x18004ed7e
18004ed2e:	4c 3b 41 18          	cmp    0x18(%rcx),%r8
18004ed32:	73 07                	jae    0x18004ed3b
18004ed34:	b8 11 00 00 c0       	mov    $0xc0000011,%eax
18004ed39:	eb 43                	jmp    0x18004ed7e
18004ed3b:	48 8b 84 24 90 00 00 	mov    0x90(%rsp),%rax
18004ed42:	00
18004ed43:	4c 89 54 24 48       	mov    %r10,0x48(%rsp)
18004ed48:	c6 44 24 40 01       	movb   $0x1,0x40(%rsp)
18004ed4d:	c7 44 24 38 00 00 10 	movl   $0x100000,0x38(%rsp)
18004ed54:	00
18004ed55:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
18004ed5a:	48 8b 84 24 88 00 00 	mov    0x88(%rsp),%rax
18004ed61:	00
18004ed62:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
18004ed67:	8b 84 24 80 00 00 00 	mov    0x80(%rsp),%eax
18004ed6e:	89 44 24 20          	mov    %eax,0x20(%rsp)
18004ed72:	e8 0d b5 00 00       	call   0x18005a284
18004ed77:	eb 05                	jmp    0x18004ed7e
18004ed79:	b8 0d 00 00 c0       	mov    $0xc000000d,%eax
18004ed7e:	48 83 c4 58          	add    $0x58,%rsp
18004ed82:	c3                   	ret
18004ed83:	cc                   	int3
18004ed84:	44 8b 91 48 0e 00 00 	mov    0xe48(%rcx),%r10d
18004ed8b:	44 8b ca             	mov    %edx,%r9d
18004ed8e:	33 d2                	xor    %edx,%edx
18004ed90:	41 8b c0             	mov    %r8d,%eax
18004ed93:	41 f7 f2             	div    %r10d
18004ed96:	33 d2                	xor    %edx,%edx
18004ed98:	83 c0 48             	add    $0x48,%eax
18004ed9b:	41 8d 0c 41          	lea    (%r9,%rax,2),%ecx
18004ed9f:	8b c1                	mov    %ecx,%eax
18004eda1:	41 f7 f2             	div    %r10d
18004eda4:	8d 0c 41             	lea    (%rcx,%rax,2),%ecx
18004eda7:	41 8d 42 01          	lea    0x1(%r10),%eax
18004edab:	41 f7 da             	neg    %r10d
18004edae:	03 c1                	add    %ecx,%eax
18004edb0:	41 23 c2             	and    %r10d,%eax
18004edb3:	c3                   	ret
18004edb4:	cc                   	int3
18004edb5:	cc                   	int3
18004edb6:	cc                   	int3
18004edb7:	cc                   	int3
18004edb8:	45 33 c0             	xor    %r8d,%r8d
18004edbb:	48 8b c1             	mov    %rcx,%rax
18004edbe:	83 b9 40 0e 00 00 06 	cmpl   $0x6,0xe40(%rcx)
18004edc5:	74 08                	je     0x18004edcf
18004edc7:	41 b8 84 01 00 c0    	mov    $0xc0000184,%r8d
18004edcd:	eb 61                	jmp    0x18004ee30
18004edcf:	3b 91 58 0e 00 00    	cmp    0xe58(%rcx),%edx
18004edd5:	73 59                	jae    0x18004ee30
18004edd7:	3b 91 4c 0e 00 00    	cmp    0xe4c(%rcx),%edx
18004eddd:	72 51                	jb     0x18004ee30
18004eddf:	4c 8b 89 80 0e 00 00 	mov    0xe80(%rcx),%r9
18004ede6:	8b 89 88 0e 00 00    	mov    0xe88(%rcx),%ecx
18004edec:	49 3b d1             	cmp    %r9,%rdx
18004edef:	73 0a                	jae    0x18004edfb
18004edf1:	ff c9                	dec    %ecx
18004edf3:	89 88 88 0e 00 00    	mov    %ecx,0xe88(%rax)
18004edf9:	eb 06                	jmp    0x18004ee01
18004edfb:	ff 88 8c 0e 00 00    	decl   0xe8c(%rax)
18004ee01:	85 c9                	test   %ecx,%ecx
18004ee03:	75 2b                	jne    0x18004ee30
18004ee05:	8b 88 8c 0e 00 00    	mov    0xe8c(%rax),%ecx
18004ee0b:	85 c9                	test   %ecx,%ecx
18004ee0d:	48 8b 50 20          	mov    0x20(%rax),%rdx
18004ee11:	4c 0f 44 ca          	cmove  %rdx,%r9
18004ee15:	48 89 90 80 0e 00 00 	mov    %rdx,0xe80(%rax)
18004ee1c:	4c 89 88 78 0e 00 00 	mov    %r9,0xe78(%rax)
18004ee23:	89 88 88 0e 00 00    	mov    %ecx,0xe88(%rax)
18004ee29:	44 89 80 8c 0e 00 00 	mov    %r8d,0xe8c(%rax)
18004ee30:	41 8b c0             	mov    %r8d,%eax
18004ee33:	c3                   	ret
18004ee34:	cc                   	int3
18004ee35:	cc                   	int3
18004ee36:	cc                   	int3
18004ee37:	cc                   	int3
18004ee38:	33 d2                	xor    %edx,%edx
18004ee3a:	39 51 1c             	cmp    %edx,0x1c(%rcx)
18004ee3d:	75 0b                	jne    0x18004ee4a
18004ee3f:	8b 81 4c 0e 00 00    	mov    0xe4c(%rcx),%eax
18004ee45:	39 41 18             	cmp    %eax,0x18(%rcx)
18004ee48:	76 02                	jbe    0x18004ee4c
18004ee4a:	b2 01                	mov    $0x1,%dl
18004ee4c:	8a c2                	mov    %dl,%al
18004ee4e:	c3                   	ret
18004ee4f:	cc                   	int3
18004ee50:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18004ee55:	57                   	push   %rdi
18004ee56:	48 83 ec 20          	sub    $0x20,%rsp
18004ee5a:	48 8b fa             	mov    %rdx,%rdi
18004ee5d:	48 8b d9             	mov    %rcx,%rbx
18004ee60:	44 3b 81 58 0e 00 00 	cmp    0xe58(%rcx),%r8d
18004ee67:	73 56                	jae    0x18004eebf
18004ee69:	44 3b 81 4c 0e 00 00 	cmp    0xe4c(%rcx),%r8d
18004ee70:	72 4d                	jb     0x18004eebf
18004ee72:	83 b9 40 0e 00 00 06 	cmpl   $0x6,0xe40(%rcx)
18004ee79:	74 07                	je     0x18004ee82
18004ee7b:	b8 84 01 00 c0       	mov    $0xc0000184,%eax
18004ee80:	eb 42                	jmp    0x18004eec4
18004ee82:	4c 89 41 18          	mov    %r8,0x18(%rcx)
18004ee86:	4c 3b 81 60 0e 00 00 	cmp    0xe60(%rcx),%r8
18004ee8d:	76 0e                	jbe    0x18004ee9d
18004ee8f:	48 8b 05 ba fd 0f 00 	mov    0xffdba(%rip),%rax        # 0x18014ec50
18004ee96:	48 89 81 60 0e 00 00 	mov    %rax,0xe60(%rcx)
18004ee9d:	48 81 c1 90 1e 00 00 	add    $0x1e90,%rcx
18004eea4:	48 8b d3             	mov    %rbx,%rdx
18004eea7:	41 b8 40 0e 00 00    	mov    $0xe40,%r8d
18004eead:	e8 0e 6b 0e 00       	call   0x1801359c0
18004eeb2:	48 8b d7             	mov    %rdi,%rdx
18004eeb5:	48 8b cb             	mov    %rbx,%rcx
18004eeb8:	e8 7b b2 00 00       	call   0x18005a138
18004eebd:	eb 05                	jmp    0x18004eec4
18004eebf:	b8 0d 00 00 c0       	mov    $0xc000000d,%eax
18004eec4:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18004eec9:	48 83 c4 20          	add    $0x20,%rsp
18004eecd:	5f                   	pop    %rdi
18004eece:	c3                   	ret
18004eecf:	cc                   	int3
18004eed0:	8b 81 40 0e 00 00    	mov    0xe40(%rcx),%eax
18004eed6:	45 33 c0             	xor    %r8d,%r8d
18004eed9:	83 e8 04             	sub    $0x4,%eax
18004eedc:	83 f8 02             	cmp    $0x2,%eax
18004eedf:	76 08                	jbe    0x18004eee9
18004eee1:	41 b8 84 01 00 c0    	mov    $0xc0000184,%r8d
18004eee7:	eb 7e                	jmp    0x18004ef67
18004eee9:	44 8b 89 58 0e 00 00 	mov    0xe58(%rcx),%r9d
18004eef0:	41 3b d1             	cmp    %r9d,%edx
18004eef3:	77 6c                	ja     0x18004ef61
18004eef5:	3b 91 4c 0e 00 00    	cmp    0xe4c(%rcx),%edx
18004eefb:	72 64                	jb     0x18004ef61
18004eefd:	44 8b 51 1c          	mov    0x1c(%rcx),%r10d
18004ef01:	48 89 51 20          	mov    %rdx,0x20(%rcx)
18004ef05:	44 3b 51 24          	cmp    0x24(%rcx),%r10d
18004ef09:	75 10                	jne    0x18004ef1b
18004ef0b:	48 8b 05 3e fd 0f 00 	mov    0xffd3e(%rip),%rax        # 0x18014ec50
18004ef12:	48 89 81 60 0e 00 00 	mov    %rax,0xe60(%rcx)
18004ef19:	eb 1e                	jmp    0x18004ef39
18004ef1b:	48 8b 81 60 0e 00 00 	mov    0xe60(%rcx),%rax
18004ef22:	48 39 05 27 fd 0f 00 	cmp    %rax,0xffd27(%rip)        # 0x18014ec50
18004ef29:	75 0e                	jne    0x18004ef39
18004ef2b:	44 89 91 64 0e 00 00 	mov    %r10d,0xe64(%rcx)
18004ef32:	44 89 89 60 0e 00 00 	mov    %r9d,0xe60(%rcx)
18004ef39:	48 89 91 70 0e 00 00 	mov    %rdx,0xe70(%rcx)
18004ef40:	48 89 91 78 0e 00 00 	mov    %rdx,0xe78(%rcx)
18004ef47:	48 89 91 80 0e 00 00 	mov    %rdx,0xe80(%rcx)
18004ef4e:	4c 89 81 88 0e 00 00 	mov    %r8,0xe88(%rcx)
18004ef55:	c7 81 40 0e 00 00 06 	movl   $0x6,0xe40(%rcx)
18004ef5c:	00 00 00
18004ef5f:	eb 06                	jmp    0x18004ef67
18004ef61:	41 b8 0d 00 00 c0    	mov    $0xc000000d,%r8d
18004ef67:	41 8b c0             	mov    %r8d,%eax
18004ef6a:	c3                   	ret
18004ef6b:	cc                   	int3
18004ef6c:	4c 8b d1             	mov    %rcx,%r10
18004ef6f:	48 85 d2             	test   %rdx,%rdx
18004ef72:	74 07                	je     0x18004ef7b
18004ef74:	48 8b 41 18          	mov    0x18(%rcx),%rax
18004ef78:	48 89 02             	mov    %rax,(%rdx)
18004ef7b:	4d 85 c0             	test   %r8,%r8
18004ef7e:	74 07                	je     0x18004ef87
18004ef80:	48 8b 41 20          	mov    0x20(%rcx),%rax
18004ef84:	49 89 00             	mov    %rax,(%r8)
18004ef87:	4d 85 c9             	test   %r9,%r9
18004ef8a:	74 0a                	je     0x18004ef96
18004ef8c:	48 8b 81 70 0e 00 00 	mov    0xe70(%rcx),%rax
18004ef93:	49 89 01             	mov    %rax,(%r9)
18004ef96:	4c 8b 44 24 28       	mov    0x28(%rsp),%r8
18004ef9b:	4d 85 c0             	test   %r8,%r8
18004ef9e:	74 4b                	je     0x18004efeb
18004efa0:	48 8b 81 60 0e 00 00 	mov    0xe60(%rcx),%rax
18004efa7:	48 39 05 a2 fc 0f 00 	cmp    %rax,0xffca2(%rip)        # 0x18014ec50
18004efae:	75 15                	jne    0x18004efc5
18004efb0:	8b 51 20             	mov    0x20(%rcx),%edx
18004efb3:	2b 51 18             	sub    0x18(%rcx),%edx
18004efb6:	49 89 10             	mov    %rdx,(%r8)
18004efb9:	8b 81 48 0e 00 00    	mov    0xe48(%rcx),%eax
18004efbf:	48 0f af c2          	imul   %rdx,%rax
18004efc3:	eb 23                	jmp    0x18004efe8
18004efc5:	8b d0                	mov    %eax,%edx
18004efc7:	2b 51 18             	sub    0x18(%rcx),%edx
18004efca:	49 89 10             	mov    %rdx,(%r8)
18004efcd:	8b 49 20             	mov    0x20(%rcx),%ecx
18004efd0:	41 2b 8a 4c 0e 00 00 	sub    0xe4c(%r10),%ecx
18004efd7:	48 03 ca             	add    %rdx,%rcx
18004efda:	49 89 08             	mov    %rcx,(%r8)
18004efdd:	41 8b 82 48 0e 00 00 	mov    0xe48(%r10),%eax
18004efe4:	48 0f af c1          	imul   %rcx,%rax
18004efe8:	49 89 00             	mov    %rax,(%r8)
18004efeb:	33 c0                	xor    %eax,%eax
18004efed:	c3                   	ret
18004efee:	cc                   	int3
18004efef:	cc                   	int3
18004eff0:	45 8b 50 04          	mov    0x4(%r8),%r10d
18004eff4:	4c 8b d9             	mov    %rcx,%r11
18004eff7:	45 8b 08             	mov    (%r8),%r9d
18004effa:	44 2b 52 04          	sub    0x4(%rdx),%r10d
18004effe:	75 08                	jne    0x18004f008
18004f000:	44 2b 0a             	sub    (%rdx),%r9d
18004f003:	41 8b d1             	mov    %r9d,%edx
18004f006:	eb 2f                	jmp    0x18004f037
18004f008:	44 8b 81 4c 0e 00 00 	mov    0xe4c(%rcx),%r8d
18004f00f:	45 2b c8             	sub    %r8d,%r9d
18004f012:	8b 89 58 0e 00 00    	mov    0xe58(%rcx),%ecx
18004f018:	8b c1                	mov    %ecx,%eax
18004f01a:	2b 02                	sub    (%rdx),%eax
18004f01c:	8b d0                	mov    %eax,%edx
18004f01e:	41 8b c1             	mov    %r9d,%eax
18004f021:	48 03 d0             	add    %rax,%rdx
18004f024:	41 83 fa 01          	cmp    $0x1,%r10d
18004f028:	76 0d                	jbe    0x18004f037
18004f02a:	41 2b c8             	sub    %r8d,%ecx
18004f02d:	41 8d 42 ff          	lea    -0x1(%r10),%eax
18004f031:	0f af c1             	imul   %ecx,%eax
18004f034:	48 03 d0             	add    %rax,%rdx
18004f037:	41 8b 83 48 0e 00 00 	mov    0xe48(%r11),%eax
18004f03e:	48 0f af c2          	imul   %rdx,%rax
18004f042:	c3                   	ret
18004f043:	cc                   	int3
18004f044:	0f 10 41 40          	movups 0x40(%rcx),%xmm0
18004f048:	0f 11 02             	movups %xmm0,(%rdx)
18004f04b:	0f 10 49 50          	movups 0x50(%rcx),%xmm1
18004f04f:	0f 11 4a 10          	movups %xmm1,0x10(%rdx)
18004f053:	f2 0f 10 41 60       	movsd  0x60(%rcx),%xmm0
18004f058:	f2 0f 11 42 20       	movsd  %xmm0,0x20(%rdx)
18004f05d:	33 c0                	xor    %eax,%eax
18004f05f:	c3                   	ret
18004f060:	cc                   	int3
18004f061:	cc                   	int3
18004f062:	cc                   	int3
18004f063:	cc                   	int3
18004f064:	40 53                	rex push %rbx
18004f066:	48 83 ec 20          	sub    $0x20,%rsp
18004f06a:	48 8b d9             	mov    %rcx,%rbx
18004f06d:	48 8b 89 60 2e 00 00 	mov    0x2e60(%rcx),%rcx
18004f074:	48 85 c9             	test   %rcx,%rcx
18004f077:	74 05                	je     0x18004f07e
18004f079:	e8 de 78 ff ff       	call   0x18004695c
18004f07e:	48 8b cb             	mov    %rbx,%rcx
18004f081:	e8 d6 78 ff ff       	call   0x18004695c
18004f086:	48 83 c4 20          	add    $0x20,%rsp
18004f08a:	5b                   	pop    %rbx
18004f08b:	c3                   	ret
18004f08c:	cc                   	int3
18004f08d:	cc                   	int3
18004f08e:	cc                   	int3
18004f08f:	cc                   	int3
18004f090:	48 8b c4             	mov    %rsp,%rax
18004f093:	48 89 58 08          	mov    %rbx,0x8(%rax)
18004f097:	48 89 68 10          	mov    %rbp,0x10(%rax)
18004f09b:	48 89 70 18          	mov    %rsi,0x18(%rax)
18004f09f:	48 89 78 20          	mov    %rdi,0x20(%rax)
18004f0a3:	41 56                	push   %r14
18004f0a5:	48 83 ec 30          	sub    $0x30,%rsp
18004f0a9:	48 8d b1 90 0e 00 00 	lea    0xe90(%rcx),%rsi
18004f0b0:	49 8b d8             	mov    %r8,%rbx
18004f0b3:	48 8b fa             	mov    %rdx,%rdi
18004f0b6:	48 8b e9             	mov    %rcx,%rbp
18004f0b9:	48 8b ce             	mov    %rsi,%rcx
18004f0bc:	33 d2                	xor    %edx,%edx
18004f0be:	41 b8 00 10 00 00    	mov    $0x1000,%r8d