18009bc3a:	89 75 18             	mov    %esi,0x18(%rbp)
18009bc3d:	3b ca                	cmp    %edx,%ecx
18009bc3f:	75 19                	jne    0x18009bc5a
18009bc41:	48 8b d5             	mov    %rbp,%rdx
18009bc44:	48 8b cf             	mov    %rdi,%rcx
18009bc47:	e8 44 02 00 00       	call   0x18009be90
18009bc4c:	eb 0c                	jmp    0x18009bc5a
18009bc4e:	bb 25 02 00 c0       	mov    $0xc0000225,%ebx
18009bc53:	eb 05                	jmp    0x18009bc5a
18009bc55:	bb 0d 00 00 c0       	mov    $0xc000000d,%ebx
18009bc5a:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
18009bc5f:	8b c3                	mov    %ebx,%eax
18009bc61:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18009bc66:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
18009bc6b:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
18009bc70:	48 83 c4 20          	add    $0x20,%rsp
18009bc74:	41 5e                	pop    %r14
18009bc76:	c3                   	ret
18009bc77:	cc                   	int3
18009bc78:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18009bc7d:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
18009bc82:	56                   	push   %rsi
18009bc83:	57                   	push   %rdi
18009bc84:	41 55                	push   %r13
18009bc86:	41 56                	push   %r14
18009bc88:	41 57                	push   %r15
18009bc8a:	48 83 ec 40          	sub    $0x40,%rsp
18009bc8e:	41 8d 58 1f          	lea    0x1f(%r8),%ebx
18009bc92:	41 8b e8             	mov    %r8d,%ebp
18009bc95:	83 e3 e0             	and    $0xffffffe0,%ebx
18009bc98:	48 8b f2             	mov    %rdx,%rsi
18009bc9b:	4c 8b e9             	mov    %rcx,%r13
18009bc9e:	41 3b d8             	cmp    %r8d,%ebx
18009bca1:	73 0a                	jae    0x18009bcad
18009bca3:	bf 95 00 00 c0       	mov    $0xc0000095,%edi
18009bca8:	e9 bc 00 00 00       	jmp    0x18009bd69
18009bcad:	44 8b f3             	mov    %ebx,%r14d
18009bcb0:	49 c1 ee 03          	shr    $0x3,%r14
18009bcb4:	49 8b ce             	mov    %r14,%rcx
18009bcb7:	e8 94 e1 ff ff       	call   0x180099e50
18009bcbc:	4c 8b f8             	mov    %rax,%r15
18009bcbf:	48 85 c0             	test   %rax,%rax
18009bcc2:	75 0a                	jne    0x18009bcce
18009bcc4:	bf 17 00 00 c0       	mov    $0xc0000017,%edi
18009bcc9:	e9 9b 00 00 00       	jmp    0x18009bd69
18009bcce:	83 64 24 30 00       	andl   $0x0,0x30(%rsp)
18009bcd3:	48 8d 8c 24 88 00 00 	lea    0x88(%rsp),%rcx
18009bcda:	00
18009bcdb:	8b 56 50             	mov    0x50(%rsi),%edx
18009bcde:	48 83 64 24 28 00    	andq   $0x0,0x28(%rsp)
18009bce4:	48 83 a4 24 88 00 00 	andq   $0x0,0x88(%rsp)
18009bceb:	00 00
18009bced:	8b 46 44             	mov    0x44(%rsi),%eax
18009bcf0:	44 8b 4e 40          	mov    0x40(%rsi),%r9d
18009bcf4:	44 8b 46 3c          	mov    0x3c(%rsi),%r8d
18009bcf8:	0f af d5             	imul   %ebp,%edx
18009bcfb:	89 44 24 20          	mov    %eax,0x20(%rsp)
18009bcff:	48 81 c2 ff 0f 00 00 	add    $0xfff,%rdx
18009bd06:	48 c1 ea 0c          	shr    $0xc,%rdx
18009bd0a:	83 7e 38 00          	cmpl   $0x0,0x38(%rsi)
18009bd0e:	75 15                	jne    0x18009bd25
18009bd10:	e8 d7 bb ff ff       	call   0x1800978ec
18009bd15:	48 8b 8c 24 88 00 00 	mov    0x88(%rsp),%rcx
18009bd1c:	00
18009bd1d:	8b f8                	mov    %eax,%edi
18009bd1f:	49 89 4d 30          	mov    %rcx,0x30(%r13)
18009bd23:	eb 13                	jmp    0x18009bd38
18009bd25:	e8 ca ba ff ff       	call   0x1800977f4
18009bd2a:	8b f8                	mov    %eax,%edi
18009bd2c:	48 8b 84 24 88 00 00 	mov    0x88(%rsp),%rax
18009bd33:	00
18009bd34:	49 89 45 30          	mov    %rax,0x30(%r13)
18009bd38:	49 8b cf             	mov    %r15,%rcx
18009bd3b:	85 ff                	test   %edi,%edi
18009bd3d:	78 22                	js     0x18009bd61
18009bd3f:	4d 8b c6             	mov    %r14,%r8
18009bd42:	33 d2                	xor    %edx,%edx
18009bd44:	e8 37 9f 09 00       	call   0x180135c80
18009bd49:	49 8d 4d 20          	lea    0x20(%r13),%rcx
18009bd4d:	8b d5                	mov    %ebp,%edx
18009bd4f:	89 19                	mov    %ebx,(%rcx)
18009bd51:	2b dd                	sub    %ebp,%ebx
18009bd53:	44 8b c3             	mov    %ebx,%r8d
18009bd56:	4c 89 79 08          	mov    %r15,0x8(%rcx)
18009bd5a:	e8 d5 3b f9 ff       	call   0x18002f934
18009bd5f:	eb 08                	jmp    0x18009bd69
18009bd61:	e8 96 e2 ff ff       	call   0x180099ffc
18009bd66:	ff 46 5c             	incl   0x5c(%rsi)
18009bd69:	48 8b 5c 24 70       	mov    0x70(%rsp),%rbx
18009bd6e:	8b c7                	mov    %edi,%eax
18009bd70:	48 8b 6c 24 78       	mov    0x78(%rsp),%rbp
18009bd75:	48 83 c4 40          	add    $0x40,%rsp
18009bd79:	41 5f                	pop    %r15
18009bd7b:	41 5e                	pop    %r14
18009bd7d:	41 5d                	pop    %r13
18009bd7f:	5f                   	pop    %rdi
18009bd80:	5e                   	pop    %rsi
18009bd81:	c3                   	ret
18009bd82:	cc                   	int3
18009bd83:	cc                   	int3
18009bd84:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18009bd89:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
18009bd8e:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
18009bd93:	57                   	push   %rdi
18009bd94:	41 56                	push   %r14
18009bd96:	41 57                	push   %r15
18009bd98:	48 83 ec 20          	sub    $0x20,%rsp
18009bd9c:	4c 8b f9             	mov    %rcx,%r15
18009bd9f:	45 8b f0             	mov    %r8d,%r14d
18009bda2:	b9 38 00 00 00       	mov    $0x38,%ecx
18009bda7:	48 8b fa             	mov    %rdx,%rdi
18009bdaa:	e8 a1 e0 ff ff       	call   0x180099e50
18009bdaf:	48 8b d8             	mov    %rax,%rbx
18009bdb2:	48 85 c0             	test   %rax,%rax
18009bdb5:	75 0a                	jne    0x18009bdc1
18009bdb7:	bd 17 00 00 c0       	mov    $0xc0000017,%ebp
18009bdbc:	e9 b2 00 00 00       	jmp    0x18009be73
18009bdc1:	0f 57 c0             	xorps  %xmm0,%xmm0
18009bdc4:	33 c0                	xor    %eax,%eax
18009bdc6:	0f 11 03             	movups %xmm0,(%rbx)
18009bdc9:	0f 11 43 10          	movups %xmm0,0x10(%rbx)
18009bdcd:	0f 11 43 20          	movups %xmm0,0x20(%rbx)
18009bdd1:	48 89 43 30          	mov    %rax,0x30(%rbx)
18009bdd5:	48 39 3f             	cmp    %rdi,(%rdi)
18009bdd8:	75 08                	jne    0x18009bde2
18009bdda:	8b 77 48             	mov    0x48(%rdi),%esi
18009bddd:	41 3b f6             	cmp    %r14d,%esi
18009bde0:	77 0b                	ja     0x18009bded
18009bde2:	44 39 77 4c          	cmp    %r14d,0x4c(%rdi)
18009bde6:	41 8b f6             	mov    %r14d,%esi
18009bde9:	0f 47 77 4c          	cmova  0x4c(%rdi),%esi
18009bded:	44 8b c6             	mov    %esi,%r8d
18009bdf0:	48 8b d7             	mov    %rdi,%rdx
18009bdf3:	48 8b cb             	mov    %rbx,%rcx
18009bdf6:	e8 7d fe ff ff       	call   0x18009bc78
18009bdfb:	8b e8                	mov    %eax,%ebp
18009bdfd:	85 c0                	test   %eax,%eax
18009bdff:	79 48                	jns    0x18009be49
18009be01:	3b 77 4c             	cmp    0x4c(%rdi),%esi
18009be04:	76 1d                	jbe    0x18009be23
18009be06:	44 39 77 4c          	cmp    %r14d,0x4c(%rdi)
18009be0a:	76 17                	jbe    0x18009be23
18009be0c:	8b 77 4c             	mov    0x4c(%rdi),%esi
18009be0f:	48 8b d7             	mov    %rdi,%rdx
18009be12:	44 8b c6             	mov    %esi,%r8d
18009be15:	48 8b cb             	mov    %rbx,%rcx
18009be18:	e8 5b fe ff ff       	call   0x18009bc78
18009be1d:	8b e8                	mov    %eax,%ebp
18009be1f:	85 c0                	test   %eax,%eax
18009be21:	79 26                	jns    0x18009be49
18009be23:	41 3b f6             	cmp    %r14d,%esi
18009be26:	76 13                	jbe    0x18009be3b
18009be28:	45 8b c6             	mov    %r14d,%r8d
18009be2b:	48 8b d7             	mov    %rdi,%rdx
18009be2e:	48 8b cb             	mov    %rbx,%rcx
18009be31:	41 8b f6             	mov    %r14d,%esi
18009be34:	e8 3f fe ff ff       	call   0x18009bc78
18009be39:	8b e8                	mov    %eax,%ebp
18009be3b:	85 ed                	test   %ebp,%ebp
18009be3d:	79 0a                	jns    0x18009be49
18009be3f:	48 8b cb             	mov    %rbx,%rcx
18009be42:	e8 b5 e1 ff ff       	call   0x180099ffc
18009be47:	eb 2a                	jmp    0x18009be73
18009be49:	89 73 10             	mov    %esi,0x10(%rbx)
18009be4c:	89 73 14             	mov    %esi,0x14(%rbx)
18009be4f:	48 8b 07             	mov    (%rdi),%rax
18009be52:	48 39 78 08          	cmp    %rdi,0x8(%rax)
18009be56:	74 07                	je     0x18009be5f
18009be58:	b9 03 00 00 00       	mov    $0x3,%ecx
18009be5d:	cd 29                	int    $0x29
18009be5f:	48 89 03             	mov    %rax,(%rbx)
18009be62:	48 89 7b 08          	mov    %rdi,0x8(%rbx)
18009be66:	48 89 58 08          	mov    %rbx,0x8(%rax)
18009be6a:	48 89 1f             	mov    %rbx,(%rdi)
18009be6d:	ff 47 58             	incl   0x58(%rdi)
18009be70:	49 89 1f             	mov    %rbx,(%r15)
18009be73:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
18009be78:	8b c5                	mov    %ebp,%eax
18009be7a:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
18009be7f:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
18009be84:	48 83 c4 20          	add    $0x20,%rsp
18009be88:	41 5f                	pop    %r15
18009be8a:	41 5e                	pop    %r14
18009be8c:	5f                   	pop    %rdi
18009be8d:	c3                   	ret
18009be8e:	cc                   	int3
18009be8f:	cc                   	int3
18009be90:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18009be95:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
18009be9a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
18009be9f:	57                   	push   %rdi
18009bea0:	48 83 ec 20          	sub    $0x20,%rsp
18009bea4:	33 ed                	xor    %ebp,%ebp
18009bea6:	48 8b da             	mov    %rdx,%rbx
18009bea9:	48 8b f1             	mov    %rcx,%rsi
18009beac:	39 69 38             	cmp    %ebp,0x38(%rcx)
18009beaf:	75 32                	jne    0x18009bee3
18009beb1:	8b 51 50             	mov    0x50(%rcx),%edx
18009beb4:	8b 43 10             	mov    0x10(%rbx),%eax
18009beb7:	48 0f af d0          	imul   %rax,%rdx
18009bebb:	48 81 c2 ff 0f 00 00 	add    $0xfff,%rdx
18009bec2:	48 c1 ea 0c          	shr    $0xc,%rdx
18009bec6:	48 85 d2             	test   %rdx,%rdx
18009bec9:	75 07                	jne    0x18009bed2
18009becb:	bf 0d 00 00 c0       	mov    $0xc000000d,%edi
18009bed0:	eb 1c                	jmp    0x18009beee
18009bed2:	48 8b 4b 30          	mov    0x30(%rbx),%rcx
18009bed6:	41 b8 04 00 00 00    	mov    $0x4,%r8d
18009bedc:	e8 73 d7 ff ff       	call   0x180099654
18009bee1:	eb 09                	jmp    0x18009beec
18009bee3:	48 8b 4a 30          	mov    0x30(%rdx),%rcx
18009bee7:	e8 44 bc ff ff       	call   0x180097b30
18009beec:	8b f8                	mov    %eax,%edi
18009beee:	48 8b 4b 28          	mov    0x28(%rbx),%rcx
18009bef2:	85 ff                	test   %edi,%edi
18009bef4:	0f 49 fd             	cmovns %ebp,%edi
18009bef7:	e8 00 e1 ff ff       	call   0x180099ffc
18009befc:	48 8b 0b             	mov    (%rbx),%rcx
18009beff:	85 c0                	test   %eax,%eax
18009bf01:	0f 48 f8             	cmovs  %eax,%edi
18009bf04:	48 39 59 08          	cmp    %rbx,0x8(%rcx)
18009bf08:	75 38                	jne    0x18009bf42
18009bf0a:	48 8b 43 08          	mov    0x8(%rbx),%rax
18009bf0e:	48 39 18             	cmp    %rbx,(%rax)
18009bf11:	75 2f                	jne    0x18009bf42
18009bf13:	48 89 08             	mov    %rcx,(%rax)
18009bf16:	48 89 41 08          	mov    %rax,0x8(%rcx)
18009bf1a:	48 8b cb             	mov    %rbx,%rcx
18009bf1d:	ff 4e 58             	decl   0x58(%rsi)
18009bf20:	e8 d7 e0 ff ff       	call   0x180099ffc
18009bf25:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18009bf2a:	85 c0                	test   %eax,%eax
18009bf2c:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
18009bf31:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
18009bf36:	0f 48 f8             	cmovs  %eax,%edi
18009bf39:	8b c7                	mov    %edi,%eax
18009bf3b:	48 83 c4 20          	add    $0x20,%rsp
18009bf3f:	5f                   	pop    %rdi
18009bf40:	c3                   	ret
18009bf41:	cc                   	int3
18009bf42:	b9 03 00 00 00       	mov    $0x3,%ecx
18009bf47:	cd 29                	int    $0x29
18009bf49:	cc                   	int3
18009bf4a:	cc                   	int3
18009bf4b:	cc                   	int3
18009bf4c:	39 51 54             	cmp    %edx,0x54(%rcx)
18009bf4f:	0f 94 c0             	sete   %al
18009bf52:	c3                   	ret
18009bf53:	cc                   	int3
18009bf54:	4c 8b dc             	mov    %rsp,%r11
18009bf57:	48 83 ec 48          	sub    $0x48,%rsp
18009bf5b:	8b 15 1f 6d 10 00    	mov    0x106d1f(%rip),%edx        # 0x1801a2c80
18009bf61:	4c 8d 0d e4 ff ff ff 	lea    -0x1c(%rip),%r9        # 0x18009bf4c
18009bf68:	8b c1                	mov    %ecx,%eax
18009bf6a:	4d 8d 43 08          	lea    0x8(%r11),%r8
18009bf6e:	33 c9                	xor    %ecx,%ecx
18009bf70:	49 89 4b f0          	mov    %rcx,-0x10(%r11)
18009bf74:	49 89 4b e8          	mov    %rcx,-0x18(%r11)
18009bf78:	49 89 4b e0          	mov    %rcx,-0x20(%r11)
18009bf7c:	48 8b 0d 05 6d 10 00 	mov    0x106d05(%rip),%rcx        # 0x1801a2c88
18009bf83:	49 89 43 d8          	mov    %rax,-0x28(%r11)
18009bf87:	e8 bc 47 ff ff       	call   0x180090748
18009bf8c:	48 83 c4 48          	add    $0x48,%rsp
18009bf90:	c3                   	ret
18009bf91:	cc                   	int3
18009bf92:	cc                   	int3
18009bf93:	cc                   	int3
18009bf94:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18009bf99:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
18009bf9e:	57                   	push   %rdi
18009bf9f:	48 83 ec 20          	sub    $0x20,%rsp
18009bfa3:	33 db                	xor    %ebx,%ebx
18009bfa5:	8b f2                	mov    %edx,%esi
18009bfa7:	83 79 58 01          	cmpl   $0x1,0x58(%rcx)
18009bfab:	48 8b f9             	mov    %rcx,%rdi
18009bfae:	76 0d                	jbe    0x18009bfbd
18009bfb0:	8b 49 54             	mov    0x54(%rcx),%ecx
18009bfb3:	e8 3c fb ff ff       	call   0x18009baf4
18009bfb8:	85 c0                	test   %eax,%eax
18009bfba:	0f 48 d8             	cmovs  %eax,%ebx
18009bfbd:	48 8b cf             	mov    %rdi,%rcx
18009bfc0:	e8 37 e0 ff ff       	call   0x180099ffc
18009bfc5:	48 8b 0d bc 6c 10 00 	mov    0x106cbc(%rip),%rcx        # 0x1801a2c88
18009bfcc:	85 c0                	test   %eax,%eax
18009bfce:	0f 48 d8             	cmovs  %eax,%ebx
18009bfd1:	8b c3                	mov    %ebx,%eax
18009bfd3:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18009bfd8:	48 83 24 f1 00       	andq   $0x0,(%rcx,%rsi,8)
18009bfdd:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
18009bfe2:	48 83 c4 20          	add    $0x20,%rsp
18009bfe6:	5f                   	pop    %rdi
18009bfe7:	c3                   	ret
18009bfe8:	cc                   	int3
18009bfe9:	cc                   	int3
18009bfea:	cc                   	int3
18009bfeb:	cc                   	int3
18009bfec:	83 79 58 00          	cmpl   $0x0,0x58(%rcx)
18009bff0:	74 07                	je     0x18009bff9
18009bff2:	b8 01 00 00 c0       	mov    $0xc0000001,%eax
18009bff7:	c3                   	ret
18009bff8:	cc                   	int3
18009bff9:	8b 51 54             	mov    0x54(%rcx),%edx
18009bffc:	e9 93 ff ff ff       	jmp    0x18009bf94
18009c001:	cc                   	int3
18009c002:	cc                   	int3
18009c003:	cc                   	int3
18009c004:	40 53                	rex push %rbx
18009c006:	48 83 ec 20          	sub    $0x20,%rsp
18009c00a:	48 8b 1d 3f 0c 10 00 	mov    0x100c3f(%rip),%rbx        # 0x18019cc50
18009c011:	48 39 1d 50 6c 10 00 	cmp    %rbx,0x106c50(%rip)        # 0x1801a2c68
18009c018:	74 04                	je     0x18009c01e
18009c01a:	33 c0                	xor    %eax,%eax
18009c01c:	eb 6d                	jmp    0x18009c08b
18009c01e:	83 3d 53 6c 10 00 00 	cmpl   $0x0,0x106c53(%rip)        # 0x1801a2c78
18009c025:	74 0c                	je     0x18009c033
18009c027:	e8 70 02 00 00       	call   0x18009c29c
18009c02c:	48 8b 1d 1d 0c 10 00 	mov    0x100c1d(%rip),%rbx        # 0x18019cc50
18009c033:	48 8d 0d 26 0c 10 00 	lea    0x100c26(%rip),%rcx        # 0x18019cc60
18009c03a:	c7 05 30 6c 10 00 00 	movl   $0x200,0x106c30(%rip)        # 0x1801a2c74
18009c041:	02 00 00
18009c044:	33 d2                	xor    %edx,%edx
18009c046:	48 89 0d 1b 6c 10 00 	mov    %rcx,0x106c1b(%rip)        # 0x1801a2c68
18009c04d:	41 b8 00 60 00 00    	mov    $0x6000,%r8d
18009c053:	e8 28 9c 09 00       	call   0x180135c80
18009c058:	83 25 19 6c 10 00 00 	andl   $0x0,0x106c19(%rip)        # 0x1801a2c78
18009c05f:	48 8d 05 1a 09 0d 00 	lea    0xd091a(%rip),%rax        # 0x18016c980
18009c066:	48 8b cb             	mov    %rbx,%rcx
18009c069:	48 89 05 18 09 0d 00 	mov    %rax,0xd0918(%rip)        # 0x18016c988
18009c070:	48 89 05 09 09 0d 00 	mov    %rax,0xd0909(%rip)        # 0x18016c980
18009c077:	e8 80 df ff ff       	call   0x180099ffc
18009c07c:	48 83 25 cc 0b 10 00 	andq   $0x0,0x100bcc(%rip)        # 0x18019cc50
18009c083:	00
18009c084:	83 25 d5 6b 10 00 00 	andl   $0x0,0x106bd5(%rip)        # 0x1801a2c60
18009c08b:	48 83 c4 20          	add    $0x20,%rsp
18009c08f:	5b                   	pop    %rbx
18009c090:	c3                   	ret
18009c091:	cc                   	int3
18009c092:	cc                   	int3
18009c093:	cc                   	int3
18009c094:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18009c099:	57                   	push   %rdi
18009c09a:	48 83 ec 20          	sub    $0x20,%rsp
18009c09e:	48 8b 41 10          	mov    0x10(%rcx),%rax
18009c0a2:	48 8b f9             	mov    %rcx,%rdi
18009c0a5:	48 8b 18             	mov    (%rax),%rbx
18009c0a8:	48 3b d8             	cmp    %rax,%rbx
18009c0ab:	74 1f                	je     0x18009c0cc
18009c0ad:	4c 8b d3             	mov    %rbx,%r10
18009c0b0:	48 8b cf             	mov    %rdi,%rcx
18009c0b3:	48 8b 1b             	mov    (%rbx),%rbx