1400109f4:	4d 85 c9             	test   %r9,%r9
1400109f7:	74 07                	je     0x140010a00
1400109f9:	48 8d 41 10          	lea    0x10(%rcx),%rax
1400109fd:	49 89 01             	mov    %rax,(%r9)
140010a00:	33 c0                	xor    %eax,%eax
140010a02:	48 83 c4 28          	add    $0x28,%rsp
140010a06:	c3                   	ret
140010a07:	cc                   	int3
140010a08:	48 83 c1 30          	add    $0x30,%rcx
140010a0c:	48 ff 25 bd b6 01 00 	rex.W jmp *0x1b6bd(%rip)        # 0x14002c0d0
140010a13:	cc                   	int3
140010a14:	48 83 c1 30          	add    $0x30,%rcx
140010a18:	48 ff 25 b9 b6 01 00 	rex.W jmp *0x1b6b9(%rip)        # 0x14002c0d8
140010a1f:	cc                   	int3
140010a20:	48 83 ec 28          	sub    $0x28,%rsp
140010a24:	e8 17 a8 00 00       	call   0x14001b240
140010a29:	48 8b 40 18          	mov    0x18(%rax),%rax
140010a2d:	48 85 c0             	test   %rax,%rax
140010a30:	74 08                	je     0x140010a3a
140010a32:	ff 15 e0 b8 01 00    	call   *0x1b8e0(%rip)        # 0x14002c318
140010a38:	eb 00                	jmp    0x140010a3a
140010a3a:	e8 9d 3e 00 00       	call   0x1400148dc
140010a3f:	90                   	nop
140010a40:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140010a45:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
140010a4a:	57                   	push   %rdi
140010a4b:	48 83 ec 20          	sub    $0x20,%rsp
140010a4f:	49 8b d9             	mov    %r9,%rbx
140010a52:	49 8b f8             	mov    %r8,%rdi
140010a55:	48 8b 0a             	mov    (%rdx),%rcx
140010a58:	e8 ab ff ff ff       	call   0x140010a08
140010a5d:	90                   	nop
140010a5e:	48 8b cf             	mov    %rdi,%rcx
140010a61:	e8 1a 00 00 00       	call   0x140010a80
140010a66:	8b f8                	mov    %eax,%edi
140010a68:	48 8b 0b             	mov    (%rbx),%rcx
140010a6b:	e8 a4 ff ff ff       	call   0x140010a14
140010a70:	8b c7                	mov    %edi,%eax
140010a72:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140010a77:	48 83 c4 20          	add    $0x20,%rsp
140010a7b:	5f                   	pop    %rdi
140010a7c:	c3                   	ret
140010a7d:	cc                   	int3
140010a7e:	cc                   	int3
140010a7f:	cc                   	int3
140010a80:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140010a85:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140010a8a:	57                   	push   %rdi
140010a8b:	48 83 ec 20          	sub    $0x20,%rsp
140010a8f:	48 8b 01             	mov    (%rcx),%rax
140010a92:	48 8b d9             	mov    %rcx,%rbx
140010a95:	48 8b 49 08          	mov    0x8(%rcx),%rcx
140010a99:	48 8b 30             	mov    (%rax),%rsi
140010a9c:	48 8b 09             	mov    (%rcx),%rcx
140010a9f:	48 83 e6 fe          	and    $0xfffffffffffffffe,%rsi
140010aa3:	e8 e4 1c 00 00       	call   0x14001278c
140010aa8:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
140010aac:	48 8b 09             	mov    (%rcx),%rcx
140010aaf:	e8 f8 b4 00 00       	call   0x14001bfac
140010ab4:	48 8b 43 08          	mov    0x8(%rbx),%rax
140010ab8:	48 8b 10             	mov    (%rax),%rdx
140010abb:	f0 81 62 14 1f f8 ff 	lock andl $0xfffff81f,0x14(%rdx)
140010ac2:	ff
140010ac3:	48 8b 43 10          	mov    0x10(%rbx),%rax
140010ac7:	f6 00 04             	testb  $0x4,(%rax)
140010aca:	74 1c                	je     0x140010ae8
140010acc:	48 8b 43 08          	mov    0x8(%rbx),%rax
140010ad0:	48 8b 00             	mov    (%rax),%rax
140010ad3:	48 8d 48 1c          	lea    0x1c(%rax),%rcx
140010ad7:	f0 81 48 14 00 04 00 	lock orl $0x400,0x14(%rax)
140010ade:	00
140010adf:	c7 40 20 02 00 00 00 	movl   $0x2,0x20(%rax)
140010ae6:	eb 5b                	jmp    0x140010b43
140010ae8:	48 8b 43 18          	mov    0x18(%rbx),%rax
140010aec:	48 8b 08             	mov    (%rax),%rcx
140010aef:	48 85 c9             	test   %rcx,%rcx
140010af2:	75 3d                	jne    0x140010b31
140010af4:	48 8b ce             	mov    %rsi,%rcx
140010af7:	e8 68 b7 00 00       	call   0x14001c264
140010afc:	33 c9                	xor    %ecx,%ecx
140010afe:	48 8b f8             	mov    %rax,%rdi
140010b01:	e8 82 a3 00 00       	call   0x14001ae88
140010b06:	48 85 ff             	test   %rdi,%rdi
140010b09:	75 0b                	jne    0x140010b16
140010b0b:	ff 05 d7 5b 03 00    	incl   0x35bd7(%rip)        # 0x1400466e8
140010b11:	83 c8 ff             	or     $0xffffffff,%eax
140010b14:	eb 3a                	jmp    0x140010b50
140010b16:	48 8b 43 08          	mov    0x8(%rbx),%rax
140010b1a:	48 8b 00             	mov    (%rax),%rax
140010b1d:	f0 81 48 14 40 01 00 	lock orl $0x140,0x14(%rax)
140010b24:	00
140010b25:	89 70 20             	mov    %esi,0x20(%rax)
140010b28:	48 89 38             	mov    %rdi,(%rax)
140010b2b:	48 89 78 08          	mov    %rdi,0x8(%rax)
140010b2f:	eb 19                	jmp    0x140010b4a
140010b31:	48 8b 43 08          	mov    0x8(%rbx),%rax
140010b35:	48 8b 00             	mov    (%rax),%rax
140010b38:	f0 81 48 14 80 01 00 	lock orl $0x180,0x14(%rax)
140010b3f:	00
140010b40:	89 70 20             	mov    %esi,0x20(%rax)
140010b43:	48 89 08             	mov    %rcx,(%rax)
140010b46:	48 89 48 08          	mov    %rcx,0x8(%rax)
140010b4a:	83 60 10 00          	andl   $0x0,0x10(%rax)
140010b4e:	33 c0                	xor    %eax,%eax
140010b50:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140010b55:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140010b5a:	48 83 c4 20          	add    $0x20,%rsp
140010b5e:	5f                   	pop    %rdi
140010b5f:	c3                   	ret
140010b60:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
140010b65:	44 89 44 24 18       	mov    %r8d,0x18(%rsp)
140010b6a:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
140010b6f:	55                   	push   %rbp
140010b70:	48 8b ec             	mov    %rsp,%rbp
140010b73:	48 83 ec 60          	sub    $0x60,%rsp
140010b77:	48 89 4d c0          	mov    %rcx,-0x40(%rbp)
140010b7b:	48 85 c9             	test   %rcx,%rcx
140010b7e:	74 63                	je     0x140010be3
140010b80:	41 f7 c0 bb ff ff ff 	test   $0xffffffbb,%r8d
140010b87:	75 5a                	jne    0x140010be3
140010b89:	41 83 f8 44          	cmp    $0x44,%r8d
140010b8d:	74 54                	je     0x140010be3
140010b8f:	41 f7 c0 bf ff ff ff 	test   $0xffffffbf,%r8d
140010b96:	75 0c                	jne    0x140010ba4
140010b98:	49 8d 41 fe          	lea    -0x2(%r9),%rax
140010b9c:	48 3d fd ff ff 7f    	cmp    $0x7ffffffd,%rax
140010ba2:	77 3f                	ja     0x140010be3
140010ba4:	48 8d 45 28          	lea    0x28(%rbp),%rax
140010ba8:	48 89 4d c8          	mov    %rcx,-0x38(%rbp)
140010bac:	48 89 45 d8          	mov    %rax,-0x28(%rbp)
140010bb0:	4c 8d 4d c8          	lea    -0x38(%rbp),%r9
140010bb4:	48 8d 45 c0          	lea    -0x40(%rbp),%rax
140010bb8:	48 89 4d d0          	mov    %rcx,-0x30(%rbp)
140010bbc:	48 89 45 e0          	mov    %rax,-0x20(%rbp)
140010bc0:	4c 8d 45 d8          	lea    -0x28(%rbp),%r8
140010bc4:	48 8d 45 20          	lea    0x20(%rbp),%rax
140010bc8:	48 89 45 e8          	mov    %rax,-0x18(%rbp)
140010bcc:	48 8d 55 d0          	lea    -0x30(%rbp),%rdx
140010bd0:	48 8d 45 18          	lea    0x18(%rbp),%rax
140010bd4:	48 8d 4d 10          	lea    0x10(%rbp),%rcx
140010bd8:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
140010bdc:	e8 5f fe ff ff       	call   0x140010a40
140010be1:	eb 13                	jmp    0x140010bf6
140010be3:	e8 04 3e 00 00       	call   0x1400149ec
140010be8:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
140010bee:	e8 a5 fb ff ff       	call   0x140010798
140010bf3:	83 c8 ff             	or     $0xffffffff,%eax
140010bf6:	48 83 c4 60          	add    $0x60,%rsp
140010bfa:	5d                   	pop    %rbp
140010bfb:	c3                   	ret
140010bfc:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140010c01:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
140010c06:	56                   	push   %rsi
140010c07:	57                   	push   %rdi
140010c08:	41 56                	push   %r14
140010c0a:	48 83 ec 20          	sub    $0x20,%rsp
140010c0e:	49 8b d9             	mov    %r9,%rbx
140010c11:	4d 8b f0             	mov    %r8,%r14
140010c14:	48 8b fa             	mov    %rdx,%rdi
140010c17:	48 8b f1             	mov    %rcx,%rsi
140010c1a:	48 85 c9             	test   %rcx,%rcx
140010c1d:	75 21                	jne    0x140010c40
140010c1f:	e8 c8 3d 00 00       	call   0x1400149ec
140010c24:	bb 16 00 00 00       	mov    $0x16,%ebx
140010c29:	89 18                	mov    %ebx,(%rax)
140010c2b:	e8 68 fb ff ff       	call   0x140010798
140010c30:	8b c3                	mov    %ebx,%eax
140010c32:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
140010c37:	48 83 c4 20          	add    $0x20,%rsp
140010c3b:	41 5e                	pop    %r14
140010c3d:	5f                   	pop    %rdi
140010c3e:	5e                   	pop    %rsi
140010c3f:	c3                   	ret
140010c40:	48 83 21 00          	andq   $0x0,(%rcx)
140010c44:	48 85 ff             	test   %rdi,%rdi
140010c47:	75 0e                	jne    0x140010c57
140010c49:	e8 9e 3d 00 00       	call   0x1400149ec
140010c4e:	8d 4f 09             	lea    0x9(%rdi),%ecx
140010c51:	89 08                	mov    %ecx,(%rax)
140010c53:	8b c1                	mov    %ecx,%eax
140010c55:	eb db                	jmp    0x140010c32
140010c57:	4d 85 f6             	test   %r14,%r14
140010c5a:	74 c3                	je     0x140010c1f
140010c5c:	48 85 db             	test   %rbx,%rbx
140010c5f:	74 be                	je     0x140010c1f
140010c61:	80 3a 00             	cmpb   $0x0,(%rdx)
140010c64:	75 0e                	jne    0x140010c74
140010c66:	e8 81 3d 00 00       	call   0x1400149ec
140010c6b:	bb 16 00 00 00       	mov    $0x16,%ebx
140010c70:	89 18                	mov    %ebx,(%rax)
140010c72:	eb bc                	jmp    0x140010c30
140010c74:	83 64 24 40 00       	andl   $0x0,0x40(%rsp)
140010c79:	48 8b cb             	mov    %rbx,%rcx
140010c7c:	e8 87 fd ff ff       	call   0x140010a08
140010c81:	90                   	nop
140010c82:	8b 43 14             	mov    0x14(%rbx),%eax
140010c85:	c1 e8 0d             	shr    $0xd,%eax
140010c88:	a8 01                	test   $0x1,%al
140010c8a:	74 08                	je     0x140010c94
140010c8c:	48 8b cb             	mov    %rbx,%rcx
140010c8f:	e8 f4 17 00 00       	call   0x140012488
140010c94:	48 83 23 00          	andq   $0x0,(%rbx)
140010c98:	48 83 63 08 00       	andq   $0x0,0x8(%rbx)
140010c9d:	83 63 10 00          	andl   $0x0,0x10(%rbx)
140010ca1:	f0 83 63 14 00       	lock andl $0x0,0x14(%rbx)
140010ca6:	f0 81 4b 14 00 20 00 	lock orl $0x2000,0x14(%rbx)
140010cad:	00
140010cae:	4c 8b cb             	mov    %rbx,%r9
140010cb1:	44 8b 44 24 60       	mov    0x60(%rsp),%r8d
140010cb6:	49 8b d6             	mov    %r14,%rdx
140010cb9:	48 8b cf             	mov    %rdi,%rcx
140010cbc:	e8 c7 b8 00 00       	call   0x14001c588
140010cc1:	48 89 06             	mov    %rax,(%rsi)
140010cc4:	48 85 c0             	test   %rax,%rax
140010cc7:	75 13                	jne    0x140010cdc
140010cc9:	f0 81 63 14 ff df ff 	lock andl $0xffffdfff,0x14(%rbx)
140010cd0:	ff
140010cd1:	e8 16 3d 00 00       	call   0x1400149ec
140010cd6:	8b 08                	mov    (%rax),%ecx
140010cd8:	89 4c 24 40          	mov    %ecx,0x40(%rsp)
140010cdc:	48 8b cb             	mov    %rbx,%rcx
140010cdf:	e8 30 fd ff ff       	call   0x140010a14
140010ce4:	8b 44 24 40          	mov    0x40(%rsp),%eax
140010ce8:	e9 45 ff ff ff       	jmp    0x140010c32
140010ced:	cc                   	int3
140010cee:	cc                   	int3
140010cef:	cc                   	int3
140010cf0:	48 83 ec 38          	sub    $0x38,%rsp
140010cf4:	c7 44 24 20 80 00 00 	movl   $0x80,0x20(%rsp)
140010cfb:	00
140010cfc:	e8 fb fe ff ff       	call   0x140010bfc
140010d01:	48 83 c4 38          	add    $0x38,%rsp
140010d05:	c3                   	ret
140010d06:	cc                   	int3
140010d07:	cc                   	int3
140010d08:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140010d0d:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
140010d12:	57                   	push   %rdi
140010d13:	48 83 ec 20          	sub    $0x20,%rsp
140010d17:	49 8b d9             	mov    %r9,%rbx
140010d1a:	49 8b f8             	mov    %r8,%rdi
140010d1d:	48 8b 0a             	mov    (%rdx),%rcx
140010d20:	e8 e3 fc ff ff       	call   0x140010a08
140010d25:	90                   	nop
140010d26:	48 8b cf             	mov    %rdi,%rcx
140010d29:	e8 22 03 00 00       	call   0x140011050
140010d2e:	8b f8                	mov    %eax,%edi
140010d30:	48 8b 0b             	mov    (%rbx),%rcx
140010d33:	e8 dc fc ff ff       	call   0x140010a14
140010d38:	8b c7                	mov    %edi,%eax
140010d3a:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140010d3f:	48 83 c4 20          	add    $0x20,%rsp
140010d43:	5f                   	pop    %rdi
140010d44:	c3                   	ret
140010d45:	cc                   	int3
140010d46:	cc                   	int3
140010d47:	cc                   	int3
140010d48:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140010d4d:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140010d52:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140010d57:	57                   	push   %rdi
140010d58:	48 83 ec 20          	sub    $0x20,%rsp
140010d5c:	48 b8 ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rax
140010d63:	ff ff 7f
140010d66:	48 8b f9             	mov    %rcx,%rdi
140010d69:	48 3b d0             	cmp    %rax,%rdx
140010d6c:	76 0f                	jbe    0x140010d7d
140010d6e:	e8 79 3c 00 00       	call   0x1400149ec
140010d73:	c7 00 0c 00 00 00    	movl   $0xc,(%rax)
140010d79:	32 c0                	xor    %al,%al
140010d7b:	eb 5c                	jmp    0x140010dd9
140010d7d:	33 f6                	xor    %esi,%esi
140010d7f:	48 8d 2c 12          	lea    (%rdx,%rdx,1),%rbp
140010d83:	48 39 b1 08 04 00 00 	cmp    %rsi,0x408(%rcx)
140010d8a:	75 09                	jne    0x140010d95
140010d8c:	48 81 fd 00 04 00 00 	cmp    $0x400,%rbp
140010d93:	76 09                	jbe    0x140010d9e
140010d95:	48 3b a9 00 04 00 00 	cmp    0x400(%rcx),%rbp
140010d9c:	77 04                	ja     0x140010da2
140010d9e:	b0 01                	mov    $0x1,%al
140010da0:	eb 37                	jmp    0x140010dd9
140010da2:	48 8b cd             	mov    %rbp,%rcx
140010da5:	e8 ba b4 00 00       	call   0x14001c264
140010daa:	48 8b d8             	mov    %rax,%rbx
140010dad:	48 85 c0             	test   %rax,%rax
140010db0:	74 1d                	je     0x140010dcf
140010db2:	48 8b 8f 08 04 00 00 	mov    0x408(%rdi),%rcx
140010db9:	e8 ca a0 00 00       	call   0x14001ae88
140010dbe:	48 89 9f 08 04 00 00 	mov    %rbx,0x408(%rdi)
140010dc5:	40 b6 01             	mov    $0x1,%sil
140010dc8:	48 89 af 00 04 00 00 	mov    %rbp,0x400(%rdi)
140010dcf:	33 c9                	xor    %ecx,%ecx
140010dd1:	e8 b2 a0 00 00       	call   0x14001ae88
140010dd6:	40 8a c6             	mov    %sil,%al
140010dd9:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140010dde:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140010de3:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
140010de8:	48 83 c4 20          	add    $0x20,%rsp
140010dec:	5f                   	pop    %rdi
140010ded:	c3                   	ret
140010dee:	cc                   	int3
140010def:	cc                   	int3
140010df0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140010df5:	4c 8d 51 58          	lea    0x58(%rcx),%r10
140010df9:	41 8b d8             	mov    %r8d,%ebx
140010dfc:	49 8b 82 08 04 00 00 	mov    0x408(%r10),%rax
140010e03:	44 8b da             	mov    %edx,%r11d
140010e06:	48 85 c0             	test   %rax,%rax
140010e09:	75 07                	jne    0x140010e12
140010e0b:	b8 00 02 00 00       	mov    $0x200,%eax
140010e10:	eb 0d                	jmp    0x140010e1f
140010e12:	4c 8b d0             	mov    %rax,%r10
140010e15:	48 8b 81 58 04 00 00 	mov    0x458(%rcx),%rax
140010e1c:	48 d1 e8             	shr    $1,%rax
140010e1f:	4d 8d 42 ff          	lea    -0x1(%r10),%r8
140010e23:	4c 03 c0             	add    %rax,%r8
140010e26:	4c 89 41 48          	mov    %r8,0x48(%rcx)
140010e2a:	41 8b c0             	mov    %r8d,%eax
140010e2d:	8b 51 38             	mov    0x38(%rcx),%edx
140010e30:	85 d2                	test   %edx,%edx
140010e32:	7f 05                	jg     0x140010e39
140010e34:	45 85 db             	test   %r11d,%r11d
140010e37:	74 34                	je     0x140010e6d
140010e39:	8d 42 ff             	lea    -0x1(%rdx),%eax
140010e3c:	33 d2                	xor    %edx,%edx
140010e3e:	89 41 38             	mov    %eax,0x38(%rcx)
140010e41:	41 8b c3             	mov    %r11d,%eax
140010e44:	f7 f3                	div    %ebx
140010e46:	80 c2 30             	add    $0x30,%dl
140010e49:	44 8b d8             	mov    %eax,%r11d
140010e4c:	80 fa 39             	cmp    $0x39,%dl
140010e4f:	7e 0c                	jle    0x140010e5d
140010e51:	41 8a c1             	mov    %r9b,%al
140010e54:	34 01                	xor    $0x1,%al
140010e56:	c0 e0 05             	shl    $0x5,%al
140010e59:	04 07                	add    $0x7,%al
140010e5b:	02 d0                	add    %al,%dl
140010e5d:	48 8b 41 48          	mov    0x48(%rcx),%rax
140010e61:	88 10                	mov    %dl,(%rax)
140010e63:	48 ff 49 48          	decq   0x48(%rcx)
140010e67:	48 8b 41 48          	mov    0x48(%rcx),%rax
140010e6b:	eb c0                	jmp    0x140010e2d
140010e6d:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
140010e72:	44 2b c0             	sub    %eax,%r8d
140010e75:	44 89 41 50          	mov    %r8d,0x50(%rcx)
140010e79:	48 ff 41 48          	incq   0x48(%rcx)
140010e7d:	c3                   	ret
140010e7e:	cc                   	int3
140010e7f:	cc                   	int3
140010e80:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)