140003ab2:	48 89 7c 24 18       	mov    %rdi,0x18(%rsp)
140003ab7:	33 f6                	xor    %esi,%esi
140003ab9:	48 8d 42 ff          	lea    -0x1(%rdx),%rax
140003abd:	48 3d fe ff ff 7f    	cmp    $0x7ffffffe,%rax
140003ac3:	49 8b f8             	mov    %r8,%rdi
140003ac6:	44 8b d6             	mov    %esi,%r10d
140003ac9:	41 b8 57 00 07 80    	mov    $0x80070057,%r8d
140003acf:	45 0f 47 d0          	cmova  %r8d,%r10d
140003ad3:	49 8b d9             	mov    %r9,%rbx
140003ad6:	45 85 d2             	test   %r10d,%r10d
140003ad9:	0f 88 d2 00 00 00    	js     0x140003bb1
140003adf:	45 8d 58 23          	lea    0x23(%r8),%r11d
140003ae3:	48 81 fb ff ff ff 7f 	cmp    $0x7fffffff,%rbx
140003aea:	72 14                	jb     0x140003b00
140003aec:	45 8b d0             	mov    %r8d,%r10d
140003aef:	48 85 d2             	test   %rdx,%rdx
140003af2:	0f 84 89 00 00 00    	je     0x140003b81
140003af8:	66 89 31             	mov    %si,(%rcx)
140003afb:	e9 81 00 00 00       	jmp    0x140003b81
140003b00:	44 8b d6             	mov    %esi,%r10d
140003b03:	48 85 d2             	test   %rdx,%rdx
140003b06:	75 20                	jne    0x140003b28
140003b08:	48 85 db             	test   %rbx,%rbx
140003b0b:	0f 84 84 00 00 00    	je     0x140003b95
140003b11:	66 39 37             	cmp    %si,(%rdi)
140003b14:	74 7f                	je     0x140003b95
140003b16:	48 85 c9             	test   %rcx,%rcx
140003b19:	75 08                	jne    0x140003b23
140003b1b:	45 8b d0             	mov    %r8d,%r10d
140003b1e:	e9 96 00 00 00       	jmp    0x140003bb9
140003b23:	45 8b d3             	mov    %r11d,%r10d
140003b26:	eb 6d                	jmp    0x140003b95
140003b28:	48 2b da             	sub    %rdx,%rbx
140003b2b:	4c 8b c2             	mov    %rdx,%r8
140003b2e:	48 2b f9             	sub    %rcx,%rdi
140003b31:	4c 8b c9             	mov    %rcx,%r9
140003b34:	4a 8d 04 03          	lea    (%rbx,%r8,1),%rax
140003b38:	48 85 c0             	test   %rax,%rax
140003b3b:	74 1b                	je     0x140003b58
140003b3d:	42 0f b7 04 0f       	movzwl (%rdi,%r9,1),%eax
140003b42:	66 85 c0             	test   %ax,%ax
140003b45:	74 11                	je     0x140003b58
140003b47:	66 41 89 01          	mov    %ax,(%r9)
140003b4b:	49 ff c2             	inc    %r10
140003b4e:	49 83 c1 02          	add    $0x2,%r9
140003b52:	49 83 e8 01          	sub    $0x1,%r8
140003b56:	75 dc                	jne    0x140003b34
140003b58:	4d 85 c0             	test   %r8,%r8
140003b5b:	49 8d 41 fe          	lea    -0x2(%r9),%rax
140003b5f:	49 0f 45 c1          	cmovne %r9,%rax
140003b63:	66 89 30             	mov    %si,(%rax)
140003b66:	49 8d 42 ff          	lea    -0x1(%r10),%rax
140003b6a:	49 0f 45 c2          	cmovne %r10,%rax
140003b6e:	49 f7 d8             	neg    %r8
140003b71:	45 1b d2             	sbb    %r10d,%r10d
140003b74:	41 f7 d2             	not    %r10d
140003b77:	45 23 d3             	and    %r11d,%r10d
140003b7a:	48 8d 0c 41          	lea    (%rcx,%rax,2),%rcx
140003b7e:	48 2b d0             	sub    %rax,%rdx
140003b81:	41 b8 00 00 00 80    	mov    $0x80000000,%r8d
140003b87:	43 8d 04 02          	lea    (%r10,%r8,1),%eax
140003b8b:	41 85 c0             	test   %eax,%r8d
140003b8e:	75 05                	jne    0x140003b95
140003b90:	45 3b d3             	cmp    %r11d,%r10d
140003b93:	75 24                	jne    0x140003bb9
140003b95:	48 8b 44 24 28       	mov    0x28(%rsp),%rax
140003b9a:	48 85 c0             	test   %rax,%rax
140003b9d:	74 03                	je     0x140003ba2
140003b9f:	48 89 08             	mov    %rcx,(%rax)
140003ba2:	48 8b 44 24 30       	mov    0x30(%rsp),%rax
140003ba7:	48 85 c0             	test   %rax,%rax
140003baa:	74 0d                	je     0x140003bb9
140003bac:	48 89 10             	mov    %rdx,(%rax)
140003baf:	eb 08                	jmp    0x140003bb9
140003bb1:	48 85 d2             	test   %rdx,%rdx
140003bb4:	74 03                	je     0x140003bb9
140003bb6:	66 89 31             	mov    %si,(%rcx)
140003bb9:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
140003bbe:	41 8b c2             	mov    %r10d,%eax
140003bc1:	48 8b 74 24 10       	mov    0x10(%rsp),%rsi
140003bc6:	48 8b 7c 24 18       	mov    0x18(%rsp),%rdi
140003bcb:	c3                   	ret
140003bcc:	cc                   	int3
140003bcd:	cc                   	int3
140003bce:	cc                   	int3
140003bcf:	cc                   	int3
140003bd0:	cc                   	int3
140003bd1:	cc                   	int3
140003bd2:	cc                   	int3
140003bd3:	cc                   	int3
140003bd4:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140003bd9:	55                   	push   %rbp
140003bda:	56                   	push   %rsi
140003bdb:	57                   	push   %rdi
140003bdc:	41 54                	push   %r12
140003bde:	41 55                	push   %r13
140003be0:	41 56                	push   %r14
140003be2:	41 57                	push   %r15
140003be4:	48 83 ec 40          	sub    $0x40,%rsp
140003be8:	45 33 ed             	xor    %r13d,%r13d
140003beb:	48 8b f2             	mov    %rdx,%rsi
140003bee:	4c 8b f9             	mov    %rcx,%r15
140003bf1:	45 8b f5             	mov    %r13d,%r14d
140003bf4:	48 85 c9             	test   %rcx,%rcx
140003bf7:	0f 84 7e 01 00 00    	je     0x140003d7b
140003bfd:	48 85 d2             	test   %rdx,%rdx
140003c00:	0f 84 75 01 00 00    	je     0x140003d7b
140003c06:	48 83 cb ff          	or     $0xffffffffffffffff,%rbx
140003c0a:	48 8b fb             	mov    %rbx,%rdi
140003c0d:	48 ff c7             	inc    %rdi
140003c10:	66 44 39 2c 79       	cmp    %r13w,(%rcx,%rdi,2)
140003c15:	75 f6                	jne    0x140003c0d
140003c17:	48 ff c3             	inc    %rbx
140003c1a:	66 44 39 2c 5a       	cmp    %r13w,(%rdx,%rbx,2)
140003c1f:	75 f6                	jne    0x140003c17
140003c21:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140003c27:	85 ff                	test   %edi,%edi
140003c29:	74 2c                	je     0x140003c57
140003c2b:	8d 47 ff             	lea    -0x1(%rdi),%eax
140003c2e:	41 8d 50 5b          	lea    0x5b(%r8),%edx
140003c32:	66 3b 14 41          	cmp    (%rcx,%rax,2),%dx
140003c36:	75 18                	jne    0x140003c50
140003c38:	66 3b 16             	cmp    (%rsi),%dx
140003c3b:	8d 43 ff             	lea    -0x1(%rbx),%eax
140003c3e:	0f 45 c3             	cmovne %ebx,%eax
140003c41:	8b d8                	mov    %eax,%ebx
140003c43:	48 8d 46 02          	lea    0x2(%rsi),%rax
140003c47:	48 0f 45 c6          	cmovne %rsi,%rax
140003c4b:	48 8b f0             	mov    %rax,%rsi
140003c4e:	eb 07                	jmp    0x140003c57
140003c50:	66 3b 16             	cmp    (%rsi),%dx
140003c53:	45 0f 45 f0          	cmovne %r8d,%r14d
140003c57:	8d 4b 01             	lea    0x1(%rbx),%ecx
140003c5a:	ba 08 00 00 00       	mov    $0x8,%edx
140003c5f:	41 03 ce             	add    %r14d,%ecx
140003c62:	03 cf                	add    %edi,%ecx
140003c64:	44 8b e1             	mov    %ecx,%r12d
140003c67:	4c 8d 04 09          	lea    (%rcx,%rcx,1),%r8
140003c6b:	65 48 8b 0c 25 60 00 	mov    %gs:0x60,%rcx
140003c72:	00 00
140003c74:	48 8b 49 30          	mov    0x30(%rcx),%rcx
140003c78:	48 ff 15 d9 17 00 00 	rex.W call *0x17d9(%rip)        # 0x140005458
140003c7f:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140003c84:	48 8b e8             	mov    %rax,%rbp
140003c87:	48 85 c0             	test   %rax,%rax
140003c8a:	75 15                	jne    0x140003ca1
140003c8c:	65 48 8b 04 25 30 00 	mov    %gs:0x30,%rax
140003c93:	00 00
140003c95:	c7 40 68 08 00 00 00 	movl   $0x8,0x68(%rax)
140003c9c:	e9 ea 00 00 00       	jmp    0x140003d8b
140003ca1:	48 8d 84 24 80 00 00 	lea    0x80(%rsp),%rax
140003ca8:	00
140003ca9:	44 8b cf             	mov    %edi,%r9d
140003cac:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140003cb1:	4d 8b c7             	mov    %r15,%r8
140003cb4:	48 8d 84 24 90 00 00 	lea    0x90(%rsp),%rax
140003cbb:	00
140003cbc:	49 8b d4             	mov    %r12,%rdx
140003cbf:	48 8b cd             	mov    %rbp,%rcx
140003cc2:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140003cc7:	e8 dc fd ff ff       	call   0x140003aa8
140003ccc:	8b f8                	mov    %eax,%edi
140003cce:	85 c0                	test   %eax,%eax
140003cd0:	78 7a                	js     0x140003d4c
140003cd2:	45 85 f6             	test   %r14d,%r14d
140003cd5:	74 3e                	je     0x140003d15
140003cd7:	48 8b 94 24 80 00 00 	mov    0x80(%rsp),%rdx
140003cde:	00
140003cdf:	48 8d 84 24 80 00 00 	lea    0x80(%rsp),%rax
140003ce6:	00
140003ce7:	48 8b 8c 24 90 00 00 	mov    0x90(%rsp),%rcx
140003cee:	00
140003cef:	4c 8d 05 ba 18 00 00 	lea    0x18ba(%rip),%r8        # 0x1400055b0
140003cf6:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140003cfb:	41 b9 01 00 00 00    	mov    $0x1,%r9d
140003d01:	48 8d 84 24 90 00 00 	lea    0x90(%rsp),%rax
140003d08:	00
140003d09:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140003d0e:	e8 95 fd ff ff       	call   0x140003aa8
140003d13:	8b f8                	mov    %eax,%edi
140003d15:	85 ff                	test   %edi,%edi
140003d17:	78 33                	js     0x140003d4c
140003d19:	48 8b 94 24 80 00 00 	mov    0x80(%rsp),%rdx
140003d20:	00
140003d21:	4c 8b c6             	mov    %rsi,%r8
140003d24:	48 8b 8c 24 90 00 00 	mov    0x90(%rsp),%rcx
140003d2b:	00
140003d2c:	44 8b cb             	mov    %ebx,%r9d
140003d2f:	e8 34 e9 ff ff       	call   0x140002668
140003d34:	8b f8                	mov    %eax,%edi
140003d36:	85 c0                	test   %eax,%eax
140003d38:	78 12                	js     0x140003d4c
140003d3a:	65 48 8b 04 25 30 00 	mov    %gs:0x30,%rax
140003d41:	00 00
140003d43:	44 89 68 68          	mov    %r13d,0x68(%rax)
140003d47:	48 8b c5             	mov    %rbp,%rax
140003d4a:	eb 41                	jmp    0x140003d8d
140003d4c:	65 48 8b 0c 25 60 00 	mov    %gs:0x60,%rcx
140003d53:	00 00
140003d55:	4c 8b c5             	mov    %rbp,%r8
140003d58:	33 d2                	xor    %edx,%edx
140003d5a:	48 8b 49 30          	mov    0x30(%rcx),%rcx
140003d5e:	48 ff 15 eb 16 00 00 	rex.W call *0x16eb(%rip)        # 0x140005450
140003d65:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140003d6a:	65 48 8b 04 25 30 00 	mov    %gs:0x30,%rax
140003d71:	00 00
140003d73:	0f b7 cf             	movzwl %di,%ecx
140003d76:	89 48 68             	mov    %ecx,0x68(%rax)
140003d79:	eb 10                	jmp    0x140003d8b
140003d7b:	65 48 8b 04 25 30 00 	mov    %gs:0x30,%rax
140003d82:	00 00
140003d84:	c7 40 68 57 00 00 00 	movl   $0x57,0x68(%rax)
140003d8b:	33 c0                	xor    %eax,%eax
140003d8d:	48 8b 9c 24 88 00 00 	mov    0x88(%rsp),%rbx
140003d94:	00
140003d95:	48 83 c4 40          	add    $0x40,%rsp
140003d99:	41 5f                	pop    %r15
140003d9b:	41 5e                	pop    %r14
140003d9d:	41 5d                	pop    %r13
140003d9f:	41 5c                	pop    %r12
140003da1:	5f                   	pop    %rdi
140003da2:	5e                   	pop    %rsi
140003da3:	5d                   	pop    %rbp
140003da4:	c3                   	ret
140003da5:	cc                   	int3
140003da6:	cc                   	int3
140003da7:	cc                   	int3
140003da8:	cc                   	int3
140003da9:	cc                   	int3
140003daa:	cc                   	int3
140003dab:	cc                   	int3
140003dac:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140003db1:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140003db6:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140003dbb:	57                   	push   %rdi
140003dbc:	48 83 ec 20          	sub    $0x20,%rsp
140003dc0:	33 ed                	xor    %ebp,%ebp
140003dc2:	48 8b f9             	mov    %rcx,%rdi
140003dc5:	48 85 c9             	test   %rcx,%rcx
140003dc8:	75 17                	jne    0x140003de1
140003dca:	65 48 8b 04 25 30 00 	mov    %gs:0x30,%rax
140003dd1:	00 00
140003dd3:	c7 40 68 57 00 00 00 	movl   $0x57,0x68(%rax)
140003dda:	33 c0                	xor    %eax,%eax
140003ddc:	e9 81 00 00 00       	jmp    0x140003e62
140003de1:	48 83 cb ff          	or     $0xffffffffffffffff,%rbx
140003de5:	48 ff c3             	inc    %rbx
140003de8:	66 39 2c 59          	cmp    %bp,(%rcx,%rbx,2)
140003dec:	75 f7                	jne    0x140003de5
140003dee:	65 48 8b 0c 25 60 00 	mov    %gs:0x60,%rcx
140003df5:	00 00
140003df7:	48 ff c3             	inc    %rbx
140003dfa:	ba 08 00 00 00       	mov    $0x8,%edx
140003dff:	48 8b 49 30          	mov    0x30(%rcx),%rcx
140003e03:	4c 8d 04 1b          	lea    (%rbx,%rbx,1),%r8
140003e07:	48 ff 15 4a 16 00 00 	rex.W call *0x164a(%rip)        # 0x140005458
140003e0e:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140003e13:	48 8b f0             	mov    %rax,%rsi
140003e16:	48 85 c0             	test   %rax,%rax
140003e19:	74 44                	je     0x140003e5f
140003e1b:	4c 8b c7             	mov    %rdi,%r8
140003e1e:	48 8b d3             	mov    %rbx,%rdx
140003e21:	48 8b c8             	mov    %rax,%rcx
140003e24:	e8 2f ea ff ff       	call   0x140002858
140003e29:	8b d8                	mov    %eax,%ebx
140003e2b:	85 c0                	test   %eax,%eax
140003e2d:	79 30                	jns    0x140003e5f
140003e2f:	65 48 8b 0c 25 60 00 	mov    %gs:0x60,%rcx
140003e36:	00 00
140003e38:	4c 8b c6             	mov    %rsi,%r8
140003e3b:	33 d2                	xor    %edx,%edx
140003e3d:	48 8b 49 30          	mov    0x30(%rcx),%rcx
140003e41:	48 ff 15 08 16 00 00 	rex.W call *0x1608(%rip)        # 0x140005450
140003e48:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140003e4d:	65 48 8b 04 25 30 00 	mov    %gs:0x30,%rax
140003e54:	00 00
140003e56:	48 8b f5             	mov    %rbp,%rsi
140003e59:	0f b7 cb             	movzwl %bx,%ecx
140003e5c:	89 48 68             	mov    %ecx,0x68(%rax)
140003e5f:	48 8b c6             	mov    %rsi,%rax
140003e62:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140003e67:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140003e6c:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
140003e71:	48 83 c4 20          	add    $0x20,%rsp
140003e75:	5f                   	pop    %rdi
140003e76:	c3                   	ret
140003e77:	cc                   	int3
140003e78:	cc                   	int3
140003e79:	cc                   	int3
140003e7a:	cc                   	int3
140003e7b:	cc                   	int3
140003e7c:	cc                   	int3
140003e7d:	cc                   	int3
140003e7e:	cc                   	int3
140003e7f:	cc                   	int3
140003e80:	40 53                	rex push %rbx
140003e82:	48 83 ec 20          	sub    $0x20,%rsp
140003e86:	33 db                	xor    %ebx,%ebx
140003e88:	4c 8b c9             	mov    %rcx,%r9
140003e8b:	48 85 c9             	test   %rcx,%rcx
140003e8e:	74 3c                	je     0x140003ecc
140003e90:	48 83 c8 ff          	or     $0xffffffffffffffff,%rax
140003e94:	48 ff c0             	inc    %rax
140003e97:	66 39 1c 41          	cmp    %bx,(%rcx,%rax,2)
140003e9b:	75 f7                	jne    0x140003e94
140003e9d:	41 b8 02 00 00 00    	mov    $0x2,%r8d
140003ea3:	8b cb                	mov    %ebx,%ecx
140003ea5:	49 3b c0             	cmp    %r8,%rax
140003ea8:	0f 93 c1             	setae  %cl
140003eab:	72 31                	jb     0x140003ede
140003ead:	48 8d 15 b4 2b 00 00 	lea    0x2bb4(%rip),%rdx        # 0x140006a68
140003eb4:	49 8b c9             	mov    %r9,%rcx
140003eb7:	48 ff 15 7a 15 00 00 	rex.W call *0x157a(%rip)        # 0x140005438
140003ebe:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140003ec3:	85 c0                	test   %eax,%eax
140003ec5:	8b cb                	mov    %ebx,%ecx
140003ec7:	0f 94 c1             	sete   %cl
140003eca:	eb 12                	jmp    0x140003ede
140003ecc:	65 48 8b 04 25 30 00 	mov    %gs:0x30,%rax
140003ed3:	00 00
140003ed5:	8b cb                	mov    %ebx,%ecx
140003ed7:	c7 40 68 57 00 00 00 	movl   $0x57,0x68(%rax)
140003ede:	8b c1                	mov    %ecx,%eax
140003ee0:	48 83 c4 20          	add    $0x20,%rsp
140003ee4:	5b                   	pop    %rbx
140003ee5:	c3                   	ret
140003ee6:	cc                   	int3
140003ee7:	cc                   	int3
140003ee8:	cc                   	int3
140003ee9:	cc                   	int3
140003eea:	cc                   	int3
140003eeb:	cc                   	int3
140003eec:	cc                   	int3
140003eed:	cc                   	int3
140003eee:	cc                   	int3
140003eef:	cc                   	int3
140003ef0:	e9 97 03 00 00       	jmp    0x14000428c
140003ef5:	cc                   	int3
140003ef6:	cc                   	int3
140003ef7:	cc                   	int3
140003ef8:	cc                   	int3
140003ef9:	cc                   	int3
140003efa:	cc                   	int3
140003efb:	cc                   	int3
140003efc:	cc                   	int3
140003efd:	cc                   	int3
140003efe:	cc                   	int3
140003eff:	cc                   	int3
140003f00:	48 83 ec 28          	sub    $0x28,%rsp
140003f04:	b8 4d 5a 00 00       	mov    $0x5a4d,%eax