140035b33:	48 8b 44 24 40       	mov    0x40(%rsp),%rax
140035b38:	48 89 43 10          	mov    %rax,0x10(%rbx)
140035b3c:	48 89 4b 18          	mov    %rcx,0x18(%rbx)
140035b40:	48 8b 7c 24 68       	mov    0x68(%rsp),%rdi
140035b45:	48 8b c3             	mov    %rbx,%rax
140035b48:	4c 8b 7c 24 60       	mov    0x60(%rsp),%r15
140035b4d:	48 8b 4c 24 50       	mov    0x50(%rsp),%rcx
140035b52:	48 33 cc             	xor    %rsp,%rcx
140035b55:	e8 46 38 fd ff       	call   0x1400093a0
140035b5a:	48 83 c4 70          	add    $0x70,%rsp
140035b5e:	41 5e                	pop    %r14
140035b60:	5e                   	pop    %rsi
140035b61:	5b                   	pop    %rbx
140035b62:	c3                   	ret
140035b63:	cc                   	int3
140035b64:	cc                   	int3
140035b65:	cc                   	int3
140035b66:	cc                   	int3
140035b67:	cc                   	int3
140035b68:	cc                   	int3
140035b69:	cc                   	int3
140035b6a:	cc                   	int3
140035b6b:	cc                   	int3
140035b6c:	cc                   	int3
140035b6d:	cc                   	int3
140035b6e:	cc                   	int3
140035b6f:	cc                   	int3
140035b70:	40 53                	rex push %rbx
140035b72:	56                   	push   %rsi
140035b73:	41 54                	push   %r12
140035b75:	41 56                	push   %r14
140035b77:	48 81 ec 88 00 00 00 	sub    $0x88,%rsp
140035b7e:	48 8b 05 3b 86 01 00 	mov    0x1863b(%rip),%rax        # 0x14004e1c0
140035b85:	48 33 c4             	xor    %rsp,%rax
140035b88:	48 89 44 24 60       	mov    %rax,0x60(%rsp)
140035b8d:	48 83 7a 10 00       	cmpq   $0x0,0x10(%rdx)
140035b92:	45 8b e0             	mov    %r8d,%r12d
140035b95:	4c 8b f2             	mov    %rdx,%r14
140035b98:	48 8b d9             	mov    %rcx,%rbx
140035b9b:	75 19                	jne    0x140035bb6
140035b9d:	33 f6                	xor    %esi,%esi
140035b9f:	48 c7 41 18 0f 00 00 	movq   $0xf,0x18(%rcx)
140035ba6:	00
140035ba7:	48 89 71 10          	mov    %rsi,0x10(%rcx)
140035bab:	48 8b c1             	mov    %rcx,%rax
140035bae:	40 88 31             	mov    %sil,(%rcx)
140035bb1:	e9 3f 01 00 00       	jmp    0x140035cf5
140035bb6:	48 83 7a 18 08       	cmpq   $0x8,0x18(%rdx)
140035bbb:	48 89 7c 24 78       	mov    %rdi,0x78(%rsp)
140035bc0:	4c 89 7c 24 70       	mov    %r15,0x70(%rsp)
140035bc5:	72 05                	jb     0x140035bcc
140035bc7:	4c 8b 02             	mov    (%rdx),%r8
140035bca:	eb 03                	jmp    0x140035bcf
140035bcc:	4c 8b c2             	mov    %rdx,%r8
140035bcf:	33 f6                	xor    %esi,%esi
140035bd1:	48 83 cf ff          	or     $0xffffffffffffffff,%rdi
140035bd5:	48 89 74 24 38       	mov    %rsi,0x38(%rsp)
140035bda:	44 8b cf             	mov    %edi,%r9d
140035bdd:	48 89 74 24 30       	mov    %rsi,0x30(%rsp)
140035be2:	33 d2                	xor    %edx,%edx
140035be4:	89 74 24 28          	mov    %esi,0x28(%rsp)
140035be8:	41 8b cc             	mov    %r12d,%ecx
140035beb:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
140035bf0:	ff 15 ba 64 00 00    	call   *0x64ba(%rip)        # 0x14003c0b0
140035bf6:	4c 63 f8             	movslq %eax,%r15
140035bf9:	85 c0                	test   %eax,%eax
140035bfb:	75 14                	jne    0x140035c11
140035bfd:	48 c7 43 18 0f 00 00 	movq   $0xf,0x18(%rbx)
140035c04:	00
140035c05:	48 89 73 10          	mov    %rsi,0x10(%rbx)
140035c09:	40 88 33             	mov    %sil,(%rbx)
140035c0c:	e9 d7 00 00 00       	jmp    0x140035ce8
140035c11:	49 8b cf             	mov    %r15,%rcx
140035c14:	48 89 ac 24 80 00 00 	mov    %rbp,0x80(%rsp)
140035c1b:	00
140035c1c:	e8 3f b6 fc ff       	call   0x140001260
140035c21:	49 83 7e 18 08       	cmpq   $0x8,0x18(%r14)
140035c26:	48 8b e8             	mov    %rax,%rbp
140035c29:	72 03                	jb     0x140035c2e
140035c2b:	4d 8b 36             	mov    (%r14),%r14
140035c2e:	48 89 74 24 38       	mov    %rsi,0x38(%rsp)
140035c33:	44 8b cf             	mov    %edi,%r9d
140035c36:	48 89 74 24 30       	mov    %rsi,0x30(%rsp)
140035c3b:	4d 8b c6             	mov    %r14,%r8
140035c3e:	44 89 7c 24 28       	mov    %r15d,0x28(%rsp)
140035c43:	33 d2                	xor    %edx,%edx
140035c45:	41 8b cc             	mov    %r12d,%ecx
140035c48:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140035c4d:	ff 15 5d 64 00 00    	call   *0x645d(%rip)        # 0x14003c0b0
140035c53:	48 c7 44 24 58 0f 00 	movq   $0xf,0x58(%rsp)
140035c5a:	00 00
140035c5c:	48 89 74 24 50       	mov    %rsi,0x50(%rsp)
140035c61:	40 88 74 24 40       	mov    %sil,0x40(%rsp)
140035c66:	40 38 75 00          	cmp    %sil,0x0(%rbp)
140035c6a:	75 05                	jne    0x140035c71
140035c6c:	48 8b fe             	mov    %rsi,%rdi
140035c6f:	eb 09                	jmp    0x140035c7a
140035c71:	48 ff c7             	inc    %rdi
140035c74:	40 38 34 2f          	cmp    %sil,(%rdi,%rbp,1)
140035c78:	75 f7                	jne    0x140035c71
140035c7a:	4c 8b c7             	mov    %rdi,%r8
140035c7d:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
140035c82:	48 8b d5             	mov    %rbp,%rdx
140035c85:	e8 36 0e 00 00       	call   0x140036ac0
140035c8a:	48 8b cd             	mov    %rbp,%rcx
140035c8d:	e8 1e b6 fc ff       	call   0x1400012b0
140035c92:	48 8b ac 24 80 00 00 	mov    0x80(%rsp),%rbp
140035c99:	00
140035c9a:	48 c7 43 18 0f 00 00 	movq   $0xf,0x18(%rbx)
140035ca1:	00
140035ca2:	48 89 73 10          	mov    %rsi,0x10(%rbx)
140035ca6:	40 88 33             	mov    %sil,(%rbx)
140035ca9:	48 8b 4c 24 58       	mov    0x58(%rsp),%rcx
140035cae:	48 83 f9 10          	cmp    $0x10,%rcx
140035cb2:	73 1f                	jae    0x140035cd3
140035cb4:	4c 8b 44 24 50       	mov    0x50(%rsp),%r8
140035cb9:	49 83 c0 01          	add    $0x1,%r8
140035cbd:	74 1c                	je     0x140035cdb
140035cbf:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
140035cc4:	48 8b cb             	mov    %rbx,%rcx
140035cc7:	e8 44 4b 00 00       	call   0x14003a810
140035ccc:	48 8b 4c 24 58       	mov    0x58(%rsp),%rcx
140035cd1:	eb 08                	jmp    0x140035cdb
140035cd3:	48 8b 44 24 40       	mov    0x40(%rsp),%rax
140035cd8:	48 89 03             	mov    %rax,(%rbx)
140035cdb:	48 8b 44 24 50       	mov    0x50(%rsp),%rax
140035ce0:	48 89 43 10          	mov    %rax,0x10(%rbx)
140035ce4:	48 89 4b 18          	mov    %rcx,0x18(%rbx)
140035ce8:	48 8b 7c 24 78       	mov    0x78(%rsp),%rdi
140035ced:	48 8b c3             	mov    %rbx,%rax
140035cf0:	4c 8b 7c 24 70       	mov    0x70(%rsp),%r15
140035cf5:	48 8b 4c 24 60       	mov    0x60(%rsp),%rcx
140035cfa:	48 33 cc             	xor    %rsp,%rcx
140035cfd:	e8 9e 36 fd ff       	call   0x1400093a0
140035d02:	48 81 c4 88 00 00 00 	add    $0x88,%rsp
140035d09:	41 5e                	pop    %r14
140035d0b:	41 5c                	pop    %r12
140035d0d:	5e                   	pop    %rsi
140035d0e:	5b                   	pop    %rbx
140035d0f:	c3                   	ret
140035d10:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140035d15:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140035d1a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140035d1f:	57                   	push   %rdi
140035d20:	48 83 ec 20          	sub    $0x20,%rsp
140035d24:	48 8b fa             	mov    %rdx,%rdi
140035d27:	49 8b f0             	mov    %r8,%rsi
140035d2a:	48 83 cf 0f          	or     $0xf,%rdi
140035d2e:	48 8b d9             	mov    %rcx,%rbx
140035d31:	48 83 ff fe          	cmp    $0xfffffffffffffffe,%rdi
140035d35:	76 05                	jbe    0x140035d3c
140035d37:	48 8b fa             	mov    %rdx,%rdi
140035d3a:	eb 35                	jmp    0x140035d71
140035d3c:	4c 8b 41 18          	mov    0x18(%rcx),%r8
140035d40:	48 b8 ab aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaab,%rax
140035d47:	aa aa aa
140035d4a:	48 f7 e7             	mul    %rdi
140035d4d:	49 8b c8             	mov    %r8,%rcx
140035d50:	48 d1 ea             	shr    $1,%rdx
140035d53:	48 d1 e9             	shr    $1,%rcx
140035d56:	48 3b ca             	cmp    %rdx,%rcx
140035d59:	76 16                	jbe    0x140035d71
140035d5b:	48 c7 c7 fe ff ff ff 	mov    $0xfffffffffffffffe,%rdi
140035d62:	48 8b c7             	mov    %rdi,%rax
140035d65:	48 2b c1             	sub    %rcx,%rax
140035d68:	4c 3b c0             	cmp    %rax,%r8
140035d6b:	77 04                	ja     0x140035d71
140035d6d:	4a 8d 3c 01          	lea    (%rcx,%r8,1),%rdi
140035d71:	48 8d 57 01          	lea    0x1(%rdi),%rdx
140035d75:	48 8b cb             	mov    %rbx,%rcx
140035d78:	e8 73 14 fd ff       	call   0x1400071f0
140035d7d:	48 8b e8             	mov    %rax,%rbp
140035d80:	48 85 f6             	test   %rsi,%rsi
140035d83:	74 1f                	je     0x140035da4
140035d85:	48 83 7b 18 10       	cmpq   $0x10,0x18(%rbx)
140035d8a:	72 05                	jb     0x140035d91
140035d8c:	48 8b 13             	mov    (%rbx),%rdx
140035d8f:	eb 03                	jmp    0x140035d94
140035d91:	48 8b d3             	mov    %rbx,%rdx
140035d94:	48 85 f6             	test   %rsi,%rsi
140035d97:	74 0b                	je     0x140035da4
140035d99:	4c 8b c6             	mov    %rsi,%r8
140035d9c:	48 8b c8             	mov    %rax,%rcx
140035d9f:	e8 6c 4a 00 00       	call   0x14003a810
140035da4:	4c 8b 43 18          	mov    0x18(%rbx),%r8
140035da8:	49 83 f8 10          	cmp    $0x10,%r8
140035dac:	72 0e                	jb     0x140035dbc
140035dae:	48 8b 13             	mov    (%rbx),%rdx
140035db1:	49 ff c0             	inc    %r8
140035db4:	48 8b cb             	mov    %rbx,%rcx
140035db7:	e8 a4 11 00 00       	call   0x140036f60
140035dbc:	c6 03 00             	movb   $0x0,(%rbx)
140035dbf:	48 89 2b             	mov    %rbp,(%rbx)
140035dc2:	48 89 7b 18          	mov    %rdi,0x18(%rbx)
140035dc6:	48 89 73 10          	mov    %rsi,0x10(%rbx)
140035dca:	48 83 ff 10          	cmp    $0x10,%rdi
140035dce:	72 07                	jb     0x140035dd7
140035dd0:	c6 44 35 00 00       	movb   $0x0,0x0(%rbp,%rsi,1)
140035dd5:	eb 04                	jmp    0x140035ddb
140035dd7:	c6 04 33 00          	movb   $0x0,(%rbx,%rsi,1)
140035ddb:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140035de0:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140035de5:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
140035dea:	48 83 c4 20          	add    $0x20,%rsp
140035dee:	5f                   	pop    %rdi
140035def:	c3                   	ret
140035df0:	83 ca ff             	or     $0xffffffff,%edx
140035df3:	f0 0f c1 51 08       	lock xadd %edx,0x8(%rcx)
140035df8:	33 c0                	xor    %eax,%eax
140035dfa:	83 fa 01             	cmp    $0x1,%edx
140035dfd:	48 0f 44 c1          	cmove  %rcx,%rax
140035e01:	c3                   	ret
140035e02:	cc                   	int3
140035e03:	cc                   	int3
140035e04:	cc                   	int3
140035e05:	cc                   	int3
140035e06:	cc                   	int3
140035e07:	cc                   	int3
140035e08:	cc                   	int3
140035e09:	cc                   	int3
140035e0a:	cc                   	int3
140035e0b:	cc                   	int3
140035e0c:	cc                   	int3
140035e0d:	cc                   	int3
140035e0e:	cc                   	int3
140035e0f:	cc                   	int3
140035e10:	40 55                	rex push %rbp
140035e12:	57                   	push   %rdi
140035e13:	48 8b ec             	mov    %rsp,%rbp
140035e16:	48 83 ec 68          	sub    $0x68,%rsp
140035e1a:	48 8b 05 9f 83 01 00 	mov    0x1839f(%rip),%rax        # 0x14004e1c0
140035e21:	48 33 c4             	xor    %rsp,%rax
140035e24:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
140035e28:	48 83 79 68 00       	cmpq   $0x0,0x68(%rcx)
140035e2d:	48 8b f9             	mov    %rcx,%rdi
140035e30:	0f 84 ed 01 00 00    	je     0x140036023
140035e36:	80 79 71 00          	cmpb   $0x0,0x71(%rcx)
140035e3a:	0f 84 e3 01 00 00    	je     0x140036023
140035e40:	48 8b 01             	mov    (%rcx),%rax
140035e43:	83 ca ff             	or     $0xffffffff,%edx
140035e46:	ff 50 18             	call   *0x18(%rax)
140035e49:	83 f8 ff             	cmp    $0xffffffff,%eax
140035e4c:	75 07                	jne    0x140035e55
140035e4e:	32 c0                	xor    %al,%al
140035e50:	e9 bb 01 00 00       	jmp    0x140036010
140035e55:	33 c9                	xor    %ecx,%ecx
140035e57:	48 89 b4 24 90 00 00 	mov    %rsi,0x90(%rsp)
140035e5e:	00
140035e5f:	ba 0f 00 00 00       	mov    $0xf,%edx
140035e64:	c6 45 d0 00          	movb   $0x0,-0x30(%rbp)
140035e68:	48 83 fa 10          	cmp    $0x10,%rdx
140035e6c:	4c 89 74 24 60       	mov    %r14,0x60(%rsp)
140035e71:	48 8d 45 d0          	lea    -0x30(%rbp),%rax
140035e75:	48 89 55 e8          	mov    %rdx,-0x18(%rbp)
140035e79:	48 0f 43 c1          	cmovae %rcx,%rax
140035e7d:	48 89 4d d0          	mov    %rcx,-0x30(%rbp)
140035e81:	48 c7 45 e0 08 00 00 	movq   $0x8,-0x20(%rbp)
140035e88:	00
140035e89:	45 33 f6             	xor    %r14d,%r14d
140035e8c:	48 89 9c 24 88 00 00 	mov    %rbx,0x88(%rsp)
140035e93:	00
140035e94:	88 48 08             	mov    %cl,0x8(%rax)
140035e97:	4c 8b 4d e8          	mov    -0x18(%rbp),%r9
140035e9b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140035ea0:	48 8b 4f 68          	mov    0x68(%rdi),%rcx
140035ea4:	48 8d 45 c8          	lea    -0x38(%rbp),%rax
140035ea8:	49 83 f9 10          	cmp    $0x10,%r9
140035eac:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140035eb1:	4c 8b 4d e0          	mov    -0x20(%rbp),%r9
140035eb5:	48 8d 55 d0          	lea    -0x30(%rbp),%rdx
140035eb9:	48 0f 43 55 d0       	cmovae -0x30(%rbp),%rdx
140035ebe:	4c 8d 45 d0          	lea    -0x30(%rbp),%r8
140035ec2:	4c 0f 43 45 d0       	cmovae -0x30(%rbp),%r8
140035ec7:	4c 03 ca             	add    %rdx,%r9
140035eca:	4c 8b 11             	mov    (%rcx),%r10
140035ecd:	48 8d 57 74          	lea    0x74(%rdi),%rdx
140035ed1:	41 ff 52 40          	call   *0x40(%r10)
140035ed5:	85 c0                	test   %eax,%eax
140035ed7:	74 19                	je     0x140035ef2
140035ed9:	83 e8 01             	sub    $0x1,%eax
140035edc:	74 18                	je     0x140035ef6
140035ede:	4c 8b 4d e8          	mov    -0x18(%rbp),%r9
140035ee2:	83 e8 02             	sub    $0x2,%eax
140035ee5:	0f 84 f4 00 00 00    	je     0x140035fdf
140035eeb:	32 db                	xor    %bl,%bl
140035eed:	e9 ef 00 00 00       	jmp    0x140035fe1
140035ef2:	44 88 77 71          	mov    %r14b,0x71(%rdi)
140035ef6:	4c 8b 4d e8          	mov    -0x18(%rbp),%r9
140035efa:	48 8d 45 d0          	lea    -0x30(%rbp),%rax
140035efe:	4c 8b 55 d0          	mov    -0x30(%rbp),%r10
140035f02:	49 83 f9 10          	cmp    $0x10,%r9
140035f06:	48 8b 5d c8          	mov    -0x38(%rbp),%rbx
140035f0a:	49 0f 43 c2          	cmovae %r10,%rax
140035f0e:	48 2b d8             	sub    %rax,%rbx
140035f11:	74 29                	je     0x140035f3c
140035f13:	49 83 f9 10          	cmp    $0x10,%r9
140035f17:	48 8d 4d d0          	lea    -0x30(%rbp),%rcx
140035f1b:	4c 8b 8f 80 00 00 00 	mov    0x80(%rdi),%r9
140035f22:	4c 8b c3             	mov    %rbx,%r8
140035f25:	49 0f 43 ca          	cmovae %r10,%rcx
140035f29:	ba 01 00 00 00       	mov    $0x1,%edx
140035f2e:	e8 21 fe fe ff       	call   0x140025d54
140035f33:	4c 8b 4d e8          	mov    -0x18(%rbp),%r9
140035f37:	48 3b d8             	cmp    %rax,%rbx
140035f3a:	75 af                	jne    0x140035eeb
140035f3c:	44 38 77 71          	cmp    %r14b,0x71(%rdi)
140035f40:	0f 84 99 00 00 00    	je     0x140035fdf
140035f46:	48 85 db             	test   %rbx,%rbx
140035f49:	0f 85 51 ff ff ff    	jne    0x140035ea0
140035f4f:	4c 8b 45 e0          	mov    -0x20(%rbp),%r8
140035f53:	48 83 c8 ff          	or     $0xffffffffffffffff,%rax
140035f57:	49 2b c0             	sub    %r8,%rax
140035f5a:	48 83 f8 08          	cmp    $0x8,%rax
140035f5e:	0f 86 d0 00 00 00    	jbe    0x140036034
140035f64:	49 8d 58 08          	lea    0x8(%r8),%rbx
140035f68:	48 83 fb fe          	cmp    $0xfffffffffffffffe,%rbx
140035f6c:	0f 87 b5 00 00 00    	ja     0x140036027
140035f72:	4c 3b cb             	cmp    %rbx,%r9
140035f75:	73 4a                	jae    0x140035fc1
140035f77:	48 8b d3             	mov    %rbx,%rdx
140035f7a:	48 8d 4d d0          	lea    -0x30(%rbp),%rcx
140035f7e:	e8 8d fd ff ff       	call   0x140035d10
140035f83:	4c 8b 4d e8          	mov    -0x18(%rbp),%r9
140035f87:	48 85 db             	test   %rbx,%rbx
140035f8a:	0f 84 10 ff ff ff    	je     0x140035ea0
140035f90:	48 8b 45 e0          	mov    -0x20(%rbp),%rax
140035f94:	48 8d 4d d0          	lea    -0x30(%rbp),%rcx
140035f98:	49 83 f9 10          	cmp    $0x10,%r9
140035f9c:	48 0f 43 4d d0       	cmovae -0x30(%rbp),%rcx
140035fa1:	33 d2                	xor    %edx,%edx
140035fa3:	48 89 14 01          	mov    %rdx,(%rcx,%rax,1)
140035fa7:	48 8d 45 d0          	lea    -0x30(%rbp),%rax
140035fab:	48 83 7d e8 10       	cmpq   $0x10,-0x18(%rbp)
140035fb0:	48 89 5d e0          	mov    %rbx,-0x20(%rbp)
140035fb4:	48 0f 43 45 d0       	cmovae -0x30(%rbp),%rax
140035fb9:	88 14 18             	mov    %dl,(%rax,%rbx,1)
140035fbc:	e9 d6 fe ff ff       	jmp    0x140035e97
140035fc1:	48 85 db             	test   %rbx,%rbx
140035fc4:	75 ca                	jne    0x140035f90
140035fc6:	49 83 f9 10          	cmp    $0x10,%r9
140035fca:	4c 89 75 e0          	mov    %r14,-0x20(%rbp)
140035fce:	48 8d 45 d0          	lea    -0x30(%rbp),%rax
140035fd2:	48 0f 43 45 d0       	cmovae -0x30(%rbp),%rax
140035fd7:	44 88 30             	mov    %r14b,(%rax)
140035fda:	e9 b8 fe ff ff       	jmp    0x140035e97
140035fdf:	b3 01                	mov    $0x1,%bl
140035fe1:	49 83 f9 10          	cmp    $0x10,%r9
140035fe5:	72 11                	jb     0x140035ff8
140035fe7:	48 8b 55 d0          	mov    -0x30(%rbp),%rdx
140035feb:	4d 8d 41 01          	lea    0x1(%r9),%r8